:root{--ink:#101318;--ink2:#171c23;--paper:#f2f0eb;--paper2:#f9f8f4;--gold:#c7a86b;--gold2:#e0cc9d;--white:#f7f4ee;--muted:#9ca1a8;--darkmuted:#656761;--line:#ffffff1c;--darkline:#171a1f24;--sans:"Manrope",sans-serif;--display:"Onest",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--ink);color:var(--white);font:400 14px/1.55 var(--sans);letter-spacing:-.015em}body,button,input,textarea{font-family:var(--sans)}a{color:inherit;text-decoration:none}button,input,textarea{border:0}img{display:block;max-width:100%}em{font-style:normal;color:#8c713f}.glow{position:fixed;z-index:30;width:460px;height:460px;pointer-events:none;transform:translate(-50%,-50%);background:radial-gradient(circle,#c7a86b13,transparent 67%)}
.site-header{position:absolute;z-index:20;inset:0 0 auto;height:88px;padding:0 clamp(22px,4.5vw,72px);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--line);transition:.35s}.site-header.scrolled{position:fixed;height:70px;background:#101318e8;backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;gap:10px;width:max-content}.brand img{width:47px;height:47px;object-fit:contain}.brand span{display:flex;flex-direction:column}.brand strong{font-size:14px;line-height:1.15;letter-spacing:.035em}.brand small{font-size:7px;letter-spacing:.19em;text-transform:uppercase;color:#9a9da3}.site-header nav{display:flex;gap:34px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.site-header nav a{position:relative}.site-header nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:var(--gold);transition:.25s}.site-header nav a:hover:after{right:0}.call{justify-self:end;font-size:10px;font-weight:700;letter-spacing:.02em}.call b{display:inline-grid;place-items:center;width:34px;height:34px;margin-left:10px;border:1px solid #ffffff35;border-radius:10px;color:var(--gold2)}
.hero{position:relative;min-height:820px;height:100svh;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);padding-top:88px;overflow:hidden}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(#ffffff09 1px,transparent 1px),linear-gradient(90deg,#ffffff09 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(#000 30%,transparent 92%)}.crumb{position:absolute;z-index:3;top:122px;left:clamp(24px,5vw,80px);display:flex;gap:12px;color:#858b92;font-size:8px;text-transform:uppercase;letter-spacing:.12em}.crumb a:hover{color:var(--white)}.crumb b{color:var(--gold);font-weight:600}.hero-copy{position:relative;z-index:2;align-self:center;padding:110px clamp(28px,5vw,80px) 45px}.eyebrow{margin:0;color:var(--gold);font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.17em}.hero h1{max-width:990px;margin:28px 0 30px;font:600 clamp(53px,6.1vw,98px)/.93 var(--display);letter-spacing:-.068em}.hero h1 em{color:var(--gold2)}.hero-lead{max-width:610px;margin:0;color:#adb1b7;font-size:14px;line-height:1.75}.hero-actions{display:flex;gap:10px;margin-top:38px}.button{min-height:54px;padding:0 18px;display:inline-flex;justify-content:space-between;align-items:center;gap:30px;border-radius:12px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;transition:.25s}.button:hover{transform:translateY(-2px)}.button--gold{min-width:245px;background:var(--gold);color:#171a1f}.button--line{border:1px solid #ffffff38}.button--dark{margin-top:34px;background:#171a1f;color:var(--white)}.hero-proof{display:flex;gap:30px;margin-top:55px;padding-top:24px;border-top:1px solid var(--line);color:#b4b7bc;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.hero-proof span{display:flex;gap:9px}.hero-proof b{color:var(--gold);font-weight:500}.portrait{position:relative;min-width:0;border-left:1px solid var(--line);background:#0d1014;overflow:hidden}.portrait>img{width:100%;height:100%;object-fit:cover;object-position:48% center;filter:saturate(.72) contrast(1.05)}.portrait-shade{position:absolute;inset:0;background:linear-gradient(180deg,#0d10141f 35%,#0d1014e8 100%),linear-gradient(90deg,#10131842,transparent 30%)}.portrait-caption{position:absolute;z-index:2;left:42px;right:30px;bottom:42px;display:flex;flex-direction:column}.portrait-caption span{margin-bottom:8px;color:var(--gold);font-size:8px;text-transform:uppercase;letter-spacing:.15em}.portrait-caption b{font:600 24px var(--display)}.portrait-caption small{margin-top:7px;color:#aaaeb4;font-size:9px}
.statement{min-height:98px;padding:18px 5%;display:flex;align-items:center;justify-content:center;gap:45px;background:var(--gold);color:#171a1f}.statement p{margin:0;font:600 clamp(18px,2.1vw,30px) var(--display);letter-spacing:-.035em}.statement span{font-size:10px}
.help,.process,.principles,.faq{padding:125px clamp(24px,6vw,96px)}.help{background:var(--paper);color:#171a1f}.section-head{display:grid;grid-template-columns:.48fr 1.25fr .62fr;gap:5vw;align-items:end;margin-bottom:72px}.section-head>span,.documents-copy>span,.principles-head>span,.faq-title>span{align-self:start;color:#8a7040;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.14em}.section-head h2,.result h2,.documents h2,.principles h2,.faq h2,.contact h2{margin:0;font:600 clamp(48px,6vw,92px)/.92 var(--display);letter-spacing:-.065em}.section-head>p{margin:0;color:var(--darkmuted);font-size:12px;line-height:1.75}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.cards article{min-height:325px;padding:28px;display:flex;flex-direction:column;border:1px solid var(--darkline);border-radius:16px;background:var(--paper2);transition:.3s}.cards article:hover{transform:translateY(-5px);border-color:#96774370;box-shadow:0 18px 45px #171a1f0c}.cards span{color:#8a7040;font-size:9px}.cards h3{margin:auto 0 14px;font:600 clamp(22px,2vw,32px)/1.08 var(--display);letter-spacing:-.04em}.cards p{margin:0;color:#6d6e68;font-size:12px;line-height:1.72}.cards a{width:max-content;margin-top:23px;padding-bottom:3px;border-bottom:1px solid #97794460;color:#765d31;font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.1em}
.result{min-height:720px;padding:110px clamp(24px,7vw,115px);display:grid;grid-template-columns:.62fr 1.38fr;align-items:center;gap:8vw;background:#171c23}.result-mark{color:#c7a86b10;font:600 min(35vw,520px)/.7 var(--display)}.result>div:last-child>span{color:var(--gold);font-size:9px;text-transform:uppercase;letter-spacing:.15em}.result h2{max-width:860px;margin-top:35px;font-size:clamp(43px,5.4vw,80px)}.result p{max-width:650px;margin:30px 0;color:var(--muted);line-height:1.8}.result ul{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:35px 0 30px;padding:0;list-style:none;border-top:1px solid var(--line)}.result li{padding:18px 20px 18px 0;border-bottom:1px solid var(--line);color:#d5d7da;font-size:11px}.result li:before{content:"✓";margin-right:12px;color:var(--gold)}.result a{display:inline-block;padding:17px 0;border-bottom:1px solid var(--gold);font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.1em}
.process{background:var(--ink)}.process .section-head{grid-template-columns:.48fr 1.2fr .65fr}.process .section-head>p{color:var(--muted)}.process-list{border-top:1px solid var(--line)}.process-list article{display:grid;grid-template-columns:100px 1fr auto;align-items:center;min-height:132px;border-bottom:1px solid var(--line)}.process-list span{color:var(--gold);font-size:9px}.process-list h3{max-width:900px;margin:0;font:500 clamp(20px,2.1vw,31px) var(--display);letter-spacing:-.035em}.process-list b{font-size:18px;color:var(--gold)}.notice{display:grid;grid-template-columns:160px 1fr;max-width:920px;margin:70px 0 0 auto;padding:30px;border:1px solid #c7a86b55;border-radius:16px;background:#c7a86b08}.notice span{color:var(--gold);font-size:9px;text-transform:uppercase;letter-spacing:.13em}.notice p{margin:0;color:#d0d2d5;font:500 19px/1.5 var(--display)}
.documents{padding:125px clamp(24px,7vw,110px);display:grid;grid-template-columns:.9fr 1.1fr;gap:9vw;background:var(--gold);color:#171a1f}.documents-copy>span{color:#5e4c2d}.documents h2{margin-top:38px}.documents h2 em{color:#68522b}.documents-copy>p{max-width:500px;margin-top:32px;color:#574d3c;line-height:1.75}.document-list{align-self:end}.document-list>p{margin:0 0 20px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.15em}.document-list>div{display:grid;grid-template-columns:55px 1fr auto;align-items:center;min-height:78px;border-top:1px solid #171a1f3d}.document-list>div:last-of-type{border-bottom:1px solid #171a1f3d}.document-list span{font-size:9px}.document-list b{font:500 clamp(16px,1.7vw,23px) var(--display)}.document-list i{font-style:normal;font-size:18px}.document-list small{display:block;margin-top:22px;color:#5f543f;font-size:10px}
.principles{background:var(--paper);color:#171a1f}.principles-head{display:grid;grid-template-columns:.48fr 1.87fr;gap:5vw;margin-bottom:70px}.principles-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--darkline);border-bottom:1px solid var(--darkline)}.principles-grid article{min-height:320px;padding:30px;border-right:1px solid var(--darkline)}.principles-grid article:last-child{border-right:0}.principles-grid span{color:#8a7040;font-size:9px}.principles-grid h3{margin:130px 0 15px;font:600 28px var(--display);letter-spacing:-.04em}.principles-grid p{max-width:360px;margin:0;color:#6d6e68;font-size:12px;line-height:1.7}
.faq{display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw;background:#171c23}.faq-title h2{margin-top:40px;font-size:clamp(46px,5.3vw,78px)}.faq-title>span{color:var(--gold)}.faq-title>p{max-width:440px;margin-top:30px;color:var(--muted)}.faq-list{border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line)}.faq summary{min-height:92px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:20px;cursor:pointer;list-style:none;font:500 clamp(17px,1.5vw,22px) var(--display)}.faq summary::-webkit-details-marker{display:none}.faq summary b{color:var(--gold);font-size:20px;font-weight:400;transition:.25s}.faq details[open] summary b{transform:rotate(45deg)}.faq details p{max-width:700px;margin:0;padding:0 45px 28px 0;color:var(--muted);line-height:1.75}
.contact{padding:125px clamp(24px,6vw,96px);display:grid;grid-template-columns:1.05fr .95fr;gap:8vw;background:#0b0e12}.contact-copy>span{color:var(--gold);font-size:9px;text-transform:uppercase;letter-spacing:.15em}.contact h2{margin-top:42px}.contact-copy>p{max-width:500px;margin:35px 0;color:var(--muted);line-height:1.75}.contact-links{display:flex;flex-direction:column;align-items:flex-start;gap:7px}.contact-links a{font:500 clamp(18px,2vw,28px) var(--display)}.contact-links address{margin-top:10px;color:#858b92;font-style:normal;font-size:10px}.practice-form{align-self:end;display:grid;grid-template-columns:1fr 1fr;gap:12px}.practice-form label{padding:14px;border:1px solid var(--line);border-radius:12px;color:var(--gold);font-size:8px;text-transform:uppercase;letter-spacing:.13em}.practice-form .wide{grid-column:1/-1}.practice-form input,.practice-form textarea{display:block;width:100%;margin-top:7px;padding:5px 0;outline:0;resize:vertical;background:transparent;color:#fff;font:13px/1.5 var(--sans);text-transform:none;letter-spacing:0}.practice-form textarea{min-height:95px}.practice-form button{grid-column:1/-1;height:60px;padding:0 20px;display:flex;justify-content:space-between;align-items:center;border-radius:12px;background:var(--gold);color:#171a1f;font:700 9px var(--sans);text-transform:uppercase;letter-spacing:.1em;cursor:pointer}.practice-form small,.practice-form .status{grid-column:1/-1;margin:0;color:#737981;font-size:8px}.practice-form .status{min-height:12px;color:var(--gold2)}
.other-practices{padding:75px clamp(24px,6vw,96px);background:var(--paper);color:#171a1f}.other-practices>span{color:#8a7040;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.14em}.other-practices>div{display:grid;grid-template-columns:repeat(4,1fr);margin-top:28px;border-top:1px solid var(--darkline);border-bottom:1px solid var(--darkline)}.other-practices a{min-height:145px;padding:22px;display:flex;flex-direction:column;border-right:1px solid var(--darkline);transition:.25s}.other-practices a:last-child{border:0}.other-practices a:hover{background:#e9e5dc}.other-practices small{color:#7a746a;font-size:8px;text-transform:uppercase}.other-practices b{margin-top:auto;font:600 20px var(--display)}.other-practices i{align-self:flex-end;color:#8a7040;font-style:normal}
footer{min-height:210px;padding:45px clamp(24px,6vw,96px);display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;align-items:end;border-top:1px solid var(--line);color:#7d838b;font-size:8px;text-transform:uppercase;letter-spacing:.12em}footer p{margin:0;line-height:1.8}.mobile-call{display:none}.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s,transform .8s}.reveal.visible{opacity:1;transform:none}
@media(max-width:1050px){.hero h1{font-size:clamp(48px,6vw,70px)}.cards{grid-template-columns:repeat(2,1fr)}.other-practices>div{grid-template-columns:repeat(2,1fr)}.other-practices a:nth-child(2){border-right:0}.other-practices a:nth-child(-n+2){border-bottom:1px solid var(--darkline)}}
@media(max-width:760px){body{padding-bottom:68px}.glow,.site-header nav{display:none}.site-header,.site-header.scrolled{height:72px;padding:0 18px;grid-template-columns:1fr auto}.site-header.scrolled{position:fixed}.brand img{width:42px;height:42px}.call{font-size:0}.call b{margin:0;font-size:14px}.hero{height:auto;min-height:0;display:flex;flex-direction:column;padding-top:72px}.crumb{top:100px;left:20px;max-width:90%;white-space:nowrap;overflow:hidden}.hero-copy{min-height:680px;padding:145px 20px 55px}.hero h1{margin-top:24px;font-size:13.5vw}.hero-lead{font-size:13px}.hero-actions{display:block}.hero-actions .button{width:100%;margin-bottom:9px}.hero-proof{gap:0;justify-content:space-between;margin-top:40px}.hero-proof span{display:block;max-width:30%;font-size:7px}.hero-proof b{display:block;margin-bottom:4px}.portrait{height:570px;border-left:0;border-top:1px solid var(--line)}.portrait-caption{left:24px;bottom:25px}.statement{min-height:90px;padding:20px}.statement span{display:none}.statement p{text-align:center}.help,.process,.principles,.faq{padding:82px 20px}.section-head,.process .section-head{display:block;margin-bottom:50px}.section-head h2{margin:38px 0 25px;font-size:49px}.cards{grid-template-columns:1fr}.cards article{min-height:270px}.result{min-height:0;padding:82px 20px;display:block}.result-mark{display:none}.result h2{font-size:46px}.result ul{grid-template-columns:1fr}.process-list article{grid-template-columns:42px 1fr auto;min-height:115px;gap:8px}.process-list h3{font-size:19px}.notice{grid-template-columns:1fr;gap:18px;margin-top:50px}.notice p{font-size:17px}.documents{padding:82px 20px;grid-template-columns:1fr}.documents h2{font-size:50px}.document-list{margin-top:25px}.document-list>div{grid-template-columns:40px 1fr auto;gap:8px}.document-list b{font-size:17px}.principles-head{display:block;margin-bottom:50px}.principles h2{margin-top:38px;font-size:48px}.principles-grid{grid-template-columns:1fr}.principles-grid article{min-height:250px;border-right:0;border-bottom:1px solid var(--darkline)}.principles-grid article:last-child{border-bottom:0}.principles-grid h3{margin-top:85px}.faq{grid-template-columns:1fr}.faq-title h2{font-size:48px}.faq-list{margin-top:15px}.faq summary{min-height:84px;font-size:17px}.contact{padding:82px 20px;grid-template-columns:1fr}.contact h2{font-size:49px}.practice-form{grid-template-columns:1fr;margin-top:28px}.practice-form label{grid-column:1/-1}.other-practices{padding:65px 20px}.other-practices>div{grid-template-columns:1fr}.other-practices a{min-height:120px;border-right:0!important;border-bottom:1px solid var(--darkline)!important}.other-practices a:last-child{border-bottom:0!important}footer{grid-template-columns:1fr 1fr;padding:40px 20px}footer .brand{grid-column:1/-1}.mobile-call{position:fixed;z-index:50;left:10px;right:10px;bottom:10px;height:50px;padding:0 16px;display:flex;justify-content:space-between;align-items:center;border-radius:12px;background:var(--gold);color:#171a1f;box-shadow:0 10px 30px #0008;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.1em}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}

/* Narrow-screen safeguards for long, practice-specific copy. */
html,body{overflow-x:hidden}
@media(max-width:760px){
  .crumb{right:20px;max-width:none;text-overflow:ellipsis}
  .hero h1{font-size:clamp(40px,11.8vw,54px);overflow-wrap:anywhere}
  .hero-actions .button{min-width:0}
  .section-head h2,.result h2,.documents h2,.principles h2,.faq-title h2,.contact h2{font-size:clamp(40px,11.5vw,49px);overflow-wrap:anywhere}
}

/* Prominent consultation action on mobile practice pages. */
@media (max-width: 760px) {
  body { padding-bottom: calc(96px + env(safe-area-inset-bottom, 0px)); }
  .mobile-call {
    min-height: 68px;
    height: auto;
    bottom: calc(10px + env(safe-area-inset-bottom, 0px));
    padding: 20px 16px;
    gap: 12px;
    font-size: 15px;
    line-height: 1.4;
    letter-spacing: .025em;
    border: 1px solid #e5cb91;
    box-shadow: 0 8px 30px #0009, 0 0 20px #c7a86b30;
  }
  .mobile-call b { flex-shrink: 0; font-size: 22px; line-height: 1; }
  .mobile-call:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
}

/* Notice aligned with the process section */
.process .notice{max-width:none;margin:28px 0 0;padding:26px 30px;grid-template-columns:170px minmax(0,1fr);gap:24px;align-items:center;border:1px solid #c7a86b30;border-left:3px solid var(--gold);border-radius:10px;background:linear-gradient(90deg,#c7a86b0d,#c7a86b03)}.process .notice span{line-height:1.7}.process .notice p{font-size:18px;line-height:1.6;max-width:1000px}@media(max-width:760px){.process .notice{margin-top:22px;padding:22px;grid-template-columns:minmax(0,1fr);gap:12px}.process .notice p{font-size:16px}}
