/* SECTIONS */
.section-eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:1.5rem;}
.section-label{font-size:0.7rem;font-weight:400;letter-spacing:2.5px;text-transform:uppercase;color:var(--olive);}
h2.serif{font-family:'DM Serif Display',serif;font-size:clamp(1.9rem,3.5vw,2.8rem);font-weight:400;line-height:1.15;color:var(--text);margin-bottom:1.25rem;letter-spacing:-0.3px;}
h2.serif em{font-style:italic;color:var(--olive);}
.section-body{font-size:1rem;color:var(--text2);max-width:560px;line-height:1.85;font-weight:300;}

/* ABOUT */
.about{background:var(--surface);border-top:1px solid var(--border);}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start;}
.about-text .section-body{margin-top:1.25rem;}
.about-text .section-body+.section-body{margin-top:1rem;}
.about-pillars{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border);border:1px solid var(--border);}
.pillar{background:var(--surface);padding:1.5rem;transition:background 0.2s;}
.pillar:hover{background:var(--surface2);}
.pillar i{font-size:1.2rem;color:var(--olive);display:block;margin-bottom:0.75rem;}
.pillar-title{font-size:0.85rem;font-weight:500;color:var(--text);margin-bottom:0.3rem;}
.pillar-desc{font-size:0.8rem;color:var(--text3);line-height:1.6;}

/* SERVE */
.serve{border-top:1px solid var(--border);background:var(--bg);}
.serve-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1px;background:var(--border);border:1px solid var(--border);margin-top:3.5rem;}
.serve-card{background:var(--surface);padding:2rem 1.5rem;transition:background 0.25s;}
.serve-card:hover{background:var(--surface2);}
.serve-card i{font-size:1.3rem;color:var(--olive);display:block;margin-bottom:1.25rem;}
.serve-card h3{font-size:0.9rem;font-weight:500;color:var(--text);margin-bottom:0.5rem;}
.serve-card p{font-size:0.8rem;color:var(--text3);line-height:1.65;}

/* SOLUTIONS */
.solutions{background:var(--surface);border-top:1px solid var(--border);}
.solutions-header{display:grid;grid-template-columns:1fr 1fr;gap:4rem;margin-bottom:3.5rem;align-items:end;}
.solutions-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border);border:1px solid var(--border);}
.sol-card{background:var(--surface2);padding:1.75rem 2rem;display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;cursor:pointer;transition:background 0.2s;}
.sol-card:hover{background:var(--surface3);}
.sol-card:hover .sol-arrow{color:var(--olive);transform:translateX(3px);}
.sol-card h3{font-size:0.9rem;font-weight:500;color:var(--text);margin-bottom:0.4rem;}
.sol-card p{font-size:0.8rem;color:var(--text3);line-height:1.6;}
.sol-arrow{font-size:1rem;color:var(--text3);flex-shrink:0;margin-top:2px;transition:color 0.2s,transform 0.2s;}

/* PROCESS */
.process{border-top:1px solid var(--border);background:var(--bg);}
.process-header{margin-bottom:4rem;}
.process-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--border);background:var(--border);}
.step{padding:2.5rem 1.75rem;background:var(--surface);transition:background 0.2s;}
.step:hover{background:var(--surface2);}
.step-num{font-family:'DM Serif Display',serif;font-size:3rem;font-weight:400;color:var(--border2);line-height:1;margin-bottom:1.5rem;}
.step h3{font-size:0.9rem;font-weight:500;color:var(--text);margin-bottom:0.6rem;}
.step p{font-size:0.8rem;color:var(--text3);line-height:1.7;}
.step-accent{width:24px;height:2px;background:var(--olive);margin-bottom:1.25rem;}

/* ENGAGE / FORM */
.engage{background:var(--surface);border-top:1px solid var(--border);}
.engage-inner{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;}
.engage-form{background:var(--surface2);border:1px solid var(--border);padding:2.5rem;}
.form-row{margin-bottom:1.25rem;}
.form-row label{display:block;font-size:0.7rem;font-weight:400;letter-spacing:1.5px;text-transform:uppercase;color:var(--text3);margin-bottom:0.5rem;}
.form-row input,.form-row textarea,.form-row select{width:100%;background:var(--surface);border:1px solid var(--border);padding:10px 12px;color:var(--text);font-family:'DM Sans',sans-serif;font-size:0.875rem;font-weight:300;outline:none;border-radius:0;transition:border-color 0.2s;-webkit-appearance:none;}
.form-row input:focus,.form-row textarea:focus,.form-row select:focus{border-color:var(--olive);}
.form-row textarea{min-height:90px;resize:vertical;}
/* Honeypot — hidden from real users */
.hp-field{position:absolute;left:-9999px;top:-9999px;opacity:0;height:0;width:0;z-index:-1;}
/* Turnstile widget container */
.turnstile-wrap{margin-bottom:1.25rem;}
.cf-turnstile{transform:scale(0.95);transform-origin:left;}
/* Form states */
.form-submit{width:100%;background:var(--olive);color:#fff;font-family:'DM Sans',sans-serif;font-size:0.8rem;font-weight:500;letter-spacing:1px;text-transform:uppercase;padding:13px;border:none;cursor:pointer;transition:background 0.2s,opacity 0.2s;margin-top:0.5rem;border-radius:0;}
.form-submit:hover{background:var(--olive-light);}
.form-submit:disabled{opacity:0.6;cursor:not-allowed;}
.form-msg{display:none;padding:12px 14px;border-radius:2px;font-size:0.85rem;margin-top:1rem;text-align:center;}
.form-msg.success{background:rgba(92,107,56,0.1);border:1px solid var(--olive-border);color:var(--olive);}
.form-msg.error{background:rgba(200,60,60,0.07);border:1px solid rgba(200,60,60,0.25);color:#a03030;}

/* FOOTER */
footer{border-top:none;padding:3.5rem 2.5rem 2rem;background:#e8e4de;}
.footer-inner{max-width:1120px;margin:0 auto;}
.footer-top{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:2.5rem;padding-bottom:2.5rem;border-bottom:1px solid var(--border);align-items:start;}
.footer-brand{}
.footer-logo img{height:78px;width:auto;display:block;margin-bottom:1rem;}
.footer-logo-text{font-family:'DM Serif Display',serif;font-size:1.1rem;color:var(--text);margin-bottom:0.75rem;}
.footer-logo-text em{font-style:italic;color:var(--olive);}
.footer-tagline{font-size:0.8rem;color:var(--text3);font-style:italic;line-height:1.6;margin-bottom:1.25rem;}
.footer-offices{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-top:0.25rem;}
.footer-office h5{font-size:0.65rem;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--olive);margin-bottom:0.5rem;display:flex;align-items:center;gap:5px;}
.footer-office p{font-size:0.78rem;color:var(--text3);line-height:1.75;}
.footer-col h4{font-size:0.65rem;font-weight:400;letter-spacing:2px;text-transform:uppercase;color:var(--text3);margin-bottom:1rem;}
.footer-col a{display:block;font-size:0.8rem;color:var(--text3);margin-bottom:0.5rem;transition:color 0.2s;}
.footer-col a:hover{color:var(--text);}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:1.5rem;flex-wrap:wrap;gap:1rem;border-top:1px solid #ccc8c0;}
.footer-bottom p{font-size:0.75rem;color:var(--text3);}