/* ═══ sections.css — OWNER: A3. About, why, process, serve, team+modal, stats, faq, book, offices, footer. ═══ */

/* v3 (B4): section fills translucent so the B1 aurora refracts through.
   Alphas verified against the LIGHTEST aurora state #211D17: surface-alt@0.84
   composites to ≈rgb(27,25,21) → --text-muted 6.4:1; primary@0.84 → ≈rgb(21,19,17)
   → --text-muted 6.8:1. Gold stats-band stays fully opaque. */
.about{background:rgba(var(--surface-alt-rgb),0.84);}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start;}
.about-text .definition-block{border-left:2px solid var(--gold);padding:20px 24px;background:rgba(var(--accent-rgb),0.04);margin:28px 0;}
.about-text .definition-block p{font-family:'Cormorant Garamond',serif;font-size:1.15rem;font-style:italic;color:var(--white);line-height:1.7;}
.about-text .definition-term{font-size:0.72rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--gold);margin-bottom:6px;}
.about-text p{font-size:0.95rem;color:var(--muted);line-height:1.8;margin-bottom:16px;}
.audit-score-cta{background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border-gold);border-left:3px solid var(--gold);box-shadow:var(--glass-shadow);padding:var(--s-4);margin-top:var(--s-4);position:relative;}
.audit-score-cta::after{content:'';position:absolute;inset:0;background:var(--glass-highlight);pointer-events:none;}
.audit-score-cta .as-cta-eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:0.7rem;letter-spacing:0.22em;text-transform:uppercase;color:var(--gold);margin-bottom:12px;font-weight:500;}
.audit-score-cta .as-cta-eyebrow::before{content:'';display:block;width:24px;height:1px;background:var(--gold);}
.audit-score-cta h3{font-family:'Cormorant Garamond',serif;font-size:1.5rem;color:var(--white);font-weight:600;line-height:1.25;margin-bottom:10px;letter-spacing:-0.2px;}
.audit-score-cta h3 em{font-style:italic;color:var(--gold);}
.audit-score-cta p.as-cta-body{font-family:'DM Sans',sans-serif;font-size:0.92rem;color:var(--muted);line-height:1.7;margin-bottom:22px;}
.audit-score-cta a.btn-gold{padding:12px 26px;font-size:0.74rem;}
.about-feature{display:flex;gap:20px;padding:24px 0;border-bottom:1px solid var(--border-subtle);}
.about-feature:last-child{border-bottom:none;}
.feature-icon{width:40px;height:40px;flex-shrink:0;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:1rem;margin-top:2px;}
.about-feature h4{font-size:0.92rem;font-weight:600;color:var(--white);margin-bottom:6px;}
.about-feature p{font-size:0.85rem;color:var(--muted);line-height:1.7;}
.why{background:rgba(var(--ink-rgb),0.84);}
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-3);}
.why-card{padding:var(--s-5) 36px;background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);transition:transform var(--dur-micro) var(--ease-out),box-shadow var(--dur-micro) var(--ease-out),border-color var(--dur-fast);position:relative;overflow:hidden;}
.why-card::before{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform 0.3s;z-index:2;}
.why-card::after{content:'';position:absolute;inset:0;background:var(--glass-highlight);pointer-events:none;}
.why-card:hover::before{transform:scaleX(1);}
.why-card:hover{transform:translateY(var(--lift));box-shadow:var(--glass-shadow-lift);border-color:var(--glass-border-gold);}
.why-num{font-family:'Cormorant Garamond',serif;font-size:3rem;color:rgba(var(--accent-rgb),0.1);line-height:1;margin-bottom:16px;font-weight:700;}
.why-card h3{font-size:0.9rem;font-weight:600;color:var(--white);margin-bottom:10px;}
.why-card p{font-size:0.85rem;color:var(--muted);line-height:1.75;}
.process{background:rgba(var(--surface-alt-rgb),0.84);}
.process-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s-3);margin-top:56px;}
.step{padding:var(--s-5) var(--s-4);background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);position:relative;transition:transform var(--dur-micro) var(--ease-out),box-shadow var(--dur-micro) var(--ease-out),border-color var(--dur-fast);}
.step::after{content:'';position:absolute;inset:0;background:var(--glass-highlight);pointer-events:none;}
.step:hover{transform:translateY(var(--lift));box-shadow:var(--glass-shadow-lift);border-color:var(--glass-border-gold);}
.step-num{font-family:'Cormorant Garamond',serif;font-size:3.5rem;color:rgba(var(--accent-rgb),0.08);line-height:1;margin-bottom:20px;font-weight:700;}
.step-bar{width:28px;height:2px;background:var(--gold);margin-bottom:18px;}
.step h3{font-size:0.92rem;font-weight:600;color:var(--white);margin-bottom:10px;}
.step p{font-size:0.83rem;color:var(--muted);line-height:1.7;}
.step-arr{position:absolute;right:-25px;top:44px;width:26px;height:26px;background:var(--surface-solid);/* v3: solid composite-equivalent of surface-alt over aurora — chip must stay opaque */border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:0.75rem;z-index:2;}
.step:last-child .step-arr{display:none;}
.serve{background:rgba(var(--ink-rgb),0.84);}
.serve-tabs{display:flex;border-bottom:1px solid var(--border);}
.serve-tab{padding:16px 32px;font-size:0.78rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;transition:color 0.2s,border-color 0.2s;margin-bottom:-1px;user-select:none;}
.serve-tab.active{color:var(--gold);border-color:var(--gold);}
.serve-panel{display:none;padding:56px 0;}
.serve-panel.active{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;animation:wa-panelfade .45s var(--ease-out);}
@keyframes wa-panelfade{from{opacity:0;translate:0 12px;}to{opacity:1;translate:0 0;}}
.serve-panel-text h3{font-family:'Cormorant Garamond',serif;font-size:2rem;color:var(--white);margin-bottom:16px;line-height:1.2;}
.serve-panel-text h3 em{color:var(--gold);font-style:italic;}
.serve-panel-text p{font-size:0.92rem;color:var(--muted);line-height:1.8;margin-bottom:20px;}
.serve-checklist{list-style:none;margin:24px 0 32px;}
.serve-checklist li{display:flex;align-items:baseline;gap:12px;font-size:0.88rem;color:var(--text);padding:10px 0;border-bottom:1px solid var(--border-subtle);}
.serve-checklist li::before{content:'--';color:var(--gold);flex-shrink:0;}
.serve-visual{border:1px solid var(--glass-border);background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));box-shadow:var(--glass-shadow);overflow:hidden;position:relative;}
.serve-visual::after{content:'';position:absolute;inset:0;background:var(--glass-highlight);pointer-events:none;}
.serve-visual-content{padding:var(--s-4);}
.serve-visual-num{font-family:'Cormorant Garamond',serif;font-size:5rem;color:rgba(var(--accent-rgb),0.08);font-weight:700;line-height:1;margin-bottom:20px;}
.serve-visual h4{font-size:1rem;font-weight:600;color:var(--white);margin-bottom:12px;}
.serve-visual p{font-size:0.85rem;color:var(--muted);line-height:1.75;}
.serve-stat{display:flex;align-items:baseline;gap:10px;margin-top:28px;padding-top:24px;border-top:1px solid var(--border);}
.serve-stat-n{font-family:'Cormorant Garamond',serif;font-size:2.5rem;color:var(--gold);font-weight:600;}
.serve-stat-l{font-size:0.8rem;color:var(--muted);}
.team{background:rgba(var(--surface-alt-rgb),0.84);}
.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
.team-card{background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);transition:border-color var(--dur-fast),transform var(--dur-micro) var(--ease-out),box-shadow var(--dur-micro) var(--ease-out);cursor:pointer;overflow:hidden;}
.team-card:hover{border-color:var(--glass-border-gold);transform:translateY(var(--lift));box-shadow:var(--glass-shadow-lift);}
.team-card:focus-visible{border-color:var(--glass-border-gold);transform:translateY(var(--lift));box-shadow:var(--glass-shadow-lift);}
.team-photo{width:100%;aspect-ratio:1/1;background:var(--navy-light);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;}
.team-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform .55s var(--ease-out);}
.team-card:hover .team-photo img{transform:scale(1.06);}
.team-photo::after{content:'';position:absolute;bottom:0;left:0;right:0;height:40%;background:linear-gradient(to bottom,transparent,rgba(var(--surface-rgb),0.85));z-index:1;pointer-events:none;}
.team-initials{font-family:'Cormorant Garamond',serif;font-size:3rem;color:rgba(var(--accent-rgb),0.25);font-weight:600;}
.team-photo-line{position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform 0.35s;z-index:2;}
.team-card:hover .team-photo-line{transform:scaleX(1);}
.team-info{padding:20px 22px 24px;}
.team-name{font-size:0.95rem;font-weight:600;color:var(--white);margin-bottom:4px;}
.team-title{font-size:0.75rem;color:var(--gold);letter-spacing:0.06em;margin-bottom:14px;}
.team-contacts{display:flex;flex-direction:column;gap:4px;}
.team-contact-link{font-size:0.75rem;color:var(--muted);text-decoration:none;transition:color 0.2s;}
.team-contact-link:hover{color:var(--gold);}
.team-modal-overlay{position:fixed;inset:0;background:rgba(var(--shadow-rgb),0.92);z-index:var(--z-modal);display:none;align-items:center;justify-content:center;padding:32px;backdrop-filter:blur(6px);}
.team-modal-overlay.open{display:flex;}
.team-modal{background:var(--glass-bg-strong);-webkit-backdrop-filter:blur(var(--glass-blur-strong));backdrop-filter:blur(var(--glass-blur-strong));border:1px solid var(--glass-border-gold);box-shadow:var(--glass-shadow-lift);max-width:700px;width:100%;padding:var(--s-6);position:relative;max-height:85vh;overflow-y:auto;}
.team-modal::before{content:'';position:absolute;top:0;left:0;right:0;height:120px;background:var(--glass-highlight);pointer-events:none;}
.modal-close{position:absolute;top:20px;right:20px;background:none;border:none;color:var(--muted);font-size:1.4rem;cursor:pointer;transition:color 0.2s;}
.modal-close:hover{color:var(--gold);}
.modal-header{display:flex;gap:28px;align-items:flex-start;margin-bottom:28px;}
.modal-photo{width:90px;height:90px;flex-shrink:0;background:var(--navy-light);border:1px solid var(--border);overflow:hidden;display:flex;align-items:center;justify-content:center;}
.modal-photo img{width:100%;height:100%;object-fit:cover;object-position:center top;}
.modal-photo span{font-family:'Cormorant Garamond',serif;font-size:2rem;color:rgba(var(--accent-rgb),0.4);}
.modal-name{font-family:'Cormorant Garamond',serif;font-size:1.8rem;color:var(--white);margin-bottom:4px;}
.modal-role{font-size:0.75rem;color:var(--gold);letter-spacing:0.1em;text-transform:uppercase;margin-bottom:14px;}
.modal-contacts{display:flex;flex-direction:column;gap:5px;}
.modal-contact{font-size:0.82rem;color:var(--muted);text-decoration:none;transition:color 0.2s;}
.modal-contact:hover{color:var(--gold);}
.modal-bio{font-size:0.92rem;color:var(--text);line-height:1.8;margin-top:20px;padding-top:20px;border-top:1px solid var(--border);}
.modal-book{display:inline-block;margin-top:24px;background:var(--gold);color:var(--navy);padding:12px 28px;font-size:0.75rem;font-weight:700;letter-spacing:0.13em;text-transform:uppercase;text-decoration:none;}
.modal-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px;align-items:center;}
.modal-save{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;background:transparent;color:var(--gold);border:1px solid var(--gold);font-family:'DM Sans',sans-serif;font-size:0.75rem;font-weight:700;letter-spacing:0.13em;text-transform:uppercase;cursor:pointer;transition:background 0.2s,color 0.2s;}
.modal-save:hover{background:var(--gold);color:var(--navy);}
.modal-save svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
.modal-ctas .modal-book{margin-top:0;}
.stats-band{background:var(--gold);padding:var(--s-7);}
.stats-inner{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid rgba(var(--ink-rgb),0.12);}
.stat{padding:36px;text-align:center;border-right:1px solid rgba(var(--ink-rgb),0.12);}
.stat:last-child{border-right:none;}
.stat-n{font-family:'Cormorant Garamond',serif;font-size:3rem;color:var(--navy);font-weight:700;line-height:1;margin-bottom:6px;}
.stat-l{font-size:0.72rem;letter-spacing:0.13em;text-transform:uppercase;color:rgba(var(--ink-rgb),0.55);font-weight:500;}
.faq{background:rgba(var(--ink-rgb),0.84);}
.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start;}
.faq-item{border-bottom:1px solid var(--border);cursor:pointer;}
.faq-q{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;font-size:0.95rem;font-weight:500;color:var(--white);user-select:none;}
.faq-toggle{width:26px;height:26px;flex-shrink:0;background:var(--glass-bg-light);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border-gold);display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:1rem;transition:transform 0.3s;}
.faq-a{max-height:0;overflow:hidden;font-size:0.88rem;color:var(--muted);line-height:1.8;transition:max-height 0.4s ease,padding 0.3s;}
.faq-item.open .faq-a{max-height:280px;padding-bottom:20px;}
.faq-item.open .faq-toggle{transform:rotate(45deg);}
.book-section{background:rgba(var(--surface-alt-rgb),0.84);padding:100px 64px;}
.book-inner{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start;}
.book-cta h2{font-family:'Cormorant Garamond',serif;font-size:clamp(2rem,3.2vw,2.8rem);color:var(--white);line-height:1.15;margin-bottom:16px;}
.book-cta h2 em{font-style:italic;color:var(--gold);}
.book-cta p{font-size:0.92rem;color:var(--muted);line-height:1.8;margin-bottom:36px;}
.book-options{display:flex;flex-direction:column;gap:14px;margin-bottom:40px;}
.book-option{display:flex;align-items:center;gap:var(--s-2);padding:20px var(--s-3);border:1px solid var(--glass-border);text-decoration:none;background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));box-shadow:var(--glass-shadow);transition:border-color var(--dur-fast),transform var(--dur-micro) var(--ease-out),box-shadow var(--dur-micro) var(--ease-out);}
.book-option:hover{border-color:var(--gold);transform:translateY(var(--lift));box-shadow:var(--glass-shadow-lift);}
.book-option-icon{width:44px;height:44px;flex-shrink:0;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:1.1rem;}
.book-option-text h3,.book-option-text h4{font-size:0.88rem;font-weight:600;color:var(--white);margin-bottom:2px;}
.book-option-text p{font-size:0.78rem;color:var(--muted);}
.book-option-arr{margin-left:auto;color:var(--gold);transition:transform .25s ease;}
.book-option:hover .book-option-arr{transform:translateX(5px);}
.book-form{background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border-gold);box-shadow:var(--glass-shadow);padding:var(--s-5);position:relative;}
.book-form::before{content:'';position:absolute;top:0;left:0;right:0;height:120px;background:var(--glass-highlight);pointer-events:none;}
.book-form h3{font-family:'Cormorant Garamond',serif;font-size:1.5rem;color:var(--white);margin-bottom:28px;}
.f-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.fg{display:flex;flex-direction:column;gap:6px;margin-bottom:14px;}
.fg label{font-size:0.68rem;letter-spacing:0.15em;text-transform:uppercase;color:var(--muted);}
.fg input,.fg textarea,.fg select{background:rgba(var(--white-rgb),0.04);border:1px solid var(--border-subtle);color:var(--white);padding:11px 14px;font-family:'DM Sans',sans-serif;font-size:0.88rem;outline:none;transition:border-color 0.2s;}
.fg input:focus,.fg textarea:focus{border-color:var(--gold);}
.fg input::placeholder,.fg textarea::placeholder{color:var(--muted);}
.fg textarea{resize:vertical;min-height:72px;}
.fg select{color:var(--muted);cursor:pointer;}
.fg select option{background:var(--navy-card);}
.form-submit{width:100%;background:var(--gold);color:var(--navy);border:none;padding:15px;font-family:'DM Sans',sans-serif;font-size:0.78rem;font-weight:700;letter-spacing:0.13em;text-transform:uppercase;cursor:pointer;margin-top:4px;}
.form-submit:hover{background:var(--gold-light);}
.offices{background:rgba(var(--ink-rgb),0.84);padding:70px 64px;}
.offices-inner{max-width:1240px;margin:0 auto;}
.offices-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 14px;margin-top:48px;}
.office{padding:14px 26px;background:var(--glass-bg-light);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);transition:border-color var(--dur-fast),box-shadow var(--dur-micro) var(--ease-out),transform var(--dur-micro) var(--ease-out);}
.office:hover{border-color:var(--gold);box-shadow:var(--glass-shadow-lift);transform:translateY(var(--lift));}
.office-link:focus-visible{border-color:var(--gold);box-shadow:var(--glass-shadow-lift);transform:translateY(var(--lift));}
.office-city{font-size:0.78rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--gold);margin:0;font-weight:500;}
.office-link{text-decoration:none;display:block;}
.office-addr{display:none;}
footer{background:rgba(var(--surface-alt-rgb),0.84);border-top:1px solid var(--border);padding:var(--s-7);}
.f-brand-logo{height:80px;width:auto;object-fit:contain;margin-bottom:18px;display:block;filter:drop-shadow(0 0 14px rgba(var(--accent-rgb),0.3));}
.footer-top{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:2.2fr 1fr 1fr;gap:var(--s-7);margin-bottom:var(--s-6);}
.f-brand h2,.f-brand h4{font-family:'Cormorant Garamond',serif;font-size:1.4rem;color:var(--white);margin-bottom:14px;}
.f-brand h2 span,.f-brand h4 span{color:var(--gold);}
.f-brand p{font-size:0.82rem;color:var(--muted);line-height:1.75;max-width:340px;}
.f-social{display:flex;gap:10px;margin-top:22px;}
.f-social a{width:34px;height:34px;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--muted);text-decoration:none;font-size:0.8rem;font-weight:600;transition:color .2s,border-color .2s,transform .2s;}
.f-social a:hover{color:var(--gold);border-color:var(--gold);transform:translateY(-2px);}
.f-col h3,.f-col h5{font-size:0.68rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);margin-bottom:18px;}
.f-col ul{list-style:none;}
.f-col li{margin-bottom:9px;}
.f-col a{font-size:0.84rem;color:var(--muted);text-decoration:none;transition:color 0.2s;}
.f-col a:hover{color:var(--white);}
.footer-bottom{max-width:1240px;margin:0 auto;padding-top:28px;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:flex-start;gap:24px;}
.footer-disc{font-size:0.72rem;color:var(--muted);line-height:1.6;max-width:740px;}
.footer-disc a{color:var(--gold);text-decoration:underline;text-underline-offset:2px;}
.footer-copy{font-size:0.72rem;color:var(--muted);white-space:nowrap;}

/* ── Glass fallback (no backdrop-filter support) ── */
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .why-card,.step,.team-card,.serve-visual,.audit-score-cta,.book-option,.book-form{background:rgba(var(--surface-rgb),0.92);}
  .team-modal{background:rgba(var(--glass-strong-rgb),0.96);}
  .office,.faq-toggle{background:rgba(var(--surface-rgb),0.85);}
}

/* ── Micro-interactions (shared hover/press treatments; keep after base rules) ── */
.serve-visual img{transition:transform .6s var(--ease-out);}
.serve-visual:hover img{transform:scale(1.05);}
.about-img{overflow:hidden;}
.about-img img{transition:transform .6s var(--ease-out);}
.about-img:hover img{transform:scale(1.05);}
.btn-gold:hover,.nav-cta:hover,.form-submit:hover,.banner-btn:hover,.modal-book:hover{box-shadow:0 10px 30px rgba(var(--accent-rgb),0.32);}
.form-submit,.banner-btn,.modal-book{transition:background .2s,box-shadow .2s,transform .2s;}
.form-submit:hover,.banner-btn:hover,.modal-book:hover{transform:translateY(-2px);}
.feature-icon{transition:border-color .25s,color .25s;}
.about-feature{transition:transform .25s ease;}
.about-feature:hover{transform:translateX(4px);}
.about-feature:hover .feature-icon{border-color:var(--gold);color:var(--gold-light);}

/* Small screens: stack serve tabs full-width (module-local; desktop untouched) */
@media (max-width:600px){
  .serve-tabs{flex-direction:column;border-bottom:none;}
  .serve-tab{width:100%;min-height:44px;display:flex;align-items:center;padding:12px 16px;margin-bottom:0;border-bottom:none;border-left:2px solid transparent;transition:color 0.2s,border-color 0.2s,background-color 0.2s;}
  .serve-tab.active{border-color:var(--gold);border-left-color:var(--gold);background:var(--gold-dim);}
}
