:root{--ink:#142420;--ink-soft:#3d524b;--paper:#fbfaf6;--panel:#f1efe7;--sea:#0e7c66;--sea-deep:#0a5948;--sea-tint:#e2f0eb;--line:#ddd9cc;--max:1180px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:Hanken Grotesk,system-ui,sans-serif;font-size:17px;line-height:1.6}.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--sea);margin-bottom:16px;font-family:Spline Sans Mono,monospace;font-size:12px;display:block}h1,h2,h3{letter-spacing:-.01em;font-family:Newsreader,serif;font-weight:400;line-height:1.08}a{color:inherit}.btn{background:var(--sea);color:#fff;border-radius:999px;padding:14px 28px;font-size:15px;font-weight:600;text-decoration:none;transition:background .2s,transform .2s;display:inline-block}.btn:hover{background:var(--sea-deep);transform:translateY(-1px)}.btn:focus-visible{outline:3px solid var(--sea);outline-offset:3px}.btn-ghost{color:var(--ink);border:1.5px solid var(--ink);background:0 0}.btn-ghost:hover{background:var(--ink);color:var(--paper)}header{z-index:50;backdrop-filter:blur(10px);border-bottom:1px solid var(--line);background:#fbfaf6eb;position:sticky;top:0}nav{max-width:var(--max);justify-content:space-between;align-items:center;margin:0 auto;padding:18px 24px;display:flex}.logo{letter-spacing:-.01em;font-family:Newsreader,serif;font-size:21px;text-decoration:none}.logo span{color:var(--sea);font-style:italic}.nav-links{align-items:center;gap:32px;list-style:none;display:flex}.nav-links a{color:var(--ink-soft);font-size:15px;font-weight:500;text-decoration:none;transition:color .15s}.nav-links a:hover{color:var(--sea)}.nav-links .btn{color:#fff;padding:10px 22px}.nav-toggle{display:none}.hero{padding:88px 0 96px}.hero-grid{grid-template-columns:1.15fr .85fr;align-items:center;gap:64px;display:grid}.hero h1{margin-bottom:28px;font-size:clamp(42px,5.4vw,68px)}.hero h1 em{color:var(--sea);font-style:italic}.hero p.lede{color:var(--ink-soft);max-width:52ch;margin-bottom:36px;font-size:19px}.hero-ctas{flex-wrap:wrap;gap:16px;display:flex}.hero-photo{position:relative}.hero-photo .frame{aspect-ratio:4/5;border-radius:200px 200px 24px 24px;overflow:hidden}.hero-photo img{object-fit:cover;width:100%;height:100%;display:block}.cred{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--panel)}.cred-grid{max-width:var(--max);grid-template-columns:repeat(4,1fr);margin:0 auto;padding:0 24px;display:grid}.cred-item{border-left:1px solid var(--line);padding:28px 24px}.cred-item:first-child{border-left:none;padding-left:0}.cred-item strong{margin-bottom:4px;font-family:Newsreader,serif;font-size:22px;font-weight:500;display:block}.cred-item span{color:var(--ink-soft);font-size:14px}.intro{padding:110px 0}.intro-grid{grid-template-columns:.9fr 1.1fr;gap:72px;display:grid}.intro h2{font-size:clamp(30px,3.4vw,44px)}.intro h2 em{color:var(--sea);font-style:italic}.intro-copy p{color:var(--ink-soft);margin-bottom:20px;font-size:18px}.intro-copy p strong{color:var(--ink);font-weight:600}.practice{padding:0 0 110px}.practice-head{max-width:640px;margin-bottom:56px}.practice-head h2{margin-bottom:18px;font-size:clamp(30px,3.4vw,44px)}.practice-head p{color:var(--ink-soft);font-size:18px}.practice-grid{background:var(--line);border:1px solid var(--line);border-radius:20px;grid-template-columns:repeat(3,1fr);gap:1px;display:grid;overflow:hidden}.pcard{background:var(--paper);padding:40px 32px;transition:background .2s}.pcard:hover{background:var(--sea-tint)}.pcard .num{color:var(--sea);letter-spacing:.12em;margin-bottom:22px;font-family:Spline Sans Mono,monospace;font-size:12px;display:block}.pcard h3{margin-bottom:12px;font-size:24px;font-weight:500}.pcard p{color:var(--ink-soft);font-size:15.5px}.diff{background:var(--ink);color:var(--paper);padding:110px 0}.diff .eyebrow{color:#6fc5af}.diff h2{max-width:600px;margin-bottom:64px;font-size:clamp(30px,3.4vw,44px)}.diff h2 em{color:#6fc5af;font-style:italic}.diff-grid{grid-template-columns:repeat(3,1fr);gap:48px;display:grid}.diff-item h3{color:#fff;margin-bottom:12px;font-size:22px;font-weight:500}.diff-item p{color:#b8c8c2;font-size:15.5px}.diff-item .rule{background:#6fc5af;width:40px;height:2px;margin-bottom:20px}.ai-note{padding:110px 0 0}.ai-inner{background:var(--panel);border:1px solid var(--line);border-radius:24px;grid-template-columns:.8fr 1.2fr;align-items:start;gap:56px;padding:64px;display:grid}.ai-inner h2{font-size:clamp(28px,3vw,40px)}.ai-inner h2 em{color:var(--sea);font-style:italic}.ai-inner p{color:var(--ink-soft);margin-bottom:18px;font-size:17.5px}.ai-inner p:last-child{margin-bottom:0}.ai-inner p strong{color:var(--ink);font-weight:600}.quotes{padding:110px 0}.quotes .eyebrow{text-align:center}.reviews-head{text-align:center;max-width:640px;margin:0 auto 48px}.reviews-head h2{font-size:clamp(30px,3.4vw,44px)}.reviews-head h2 em{color:var(--sea);font-style:italic}.carousel{scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;gap:24px;padding-bottom:4px;display:flex;overflow-x:auto}.carousel::-webkit-scrollbar{display:none}.carousel .rcard{scroll-snap-align:start;flex:0 0 calc(33.3333% - 16px)}.carousel-controls{justify-content:center;gap:14px;margin-top:28px;display:flex}.c-arrow{border:1.5px solid var(--ink);width:44px;height:44px;color:var(--ink);cursor:pointer;background:0 0;border-radius:50%;font-size:17px;transition:background .15s,color .15s}.c-arrow:hover{background:var(--ink);color:var(--paper)}.c-arrow:focus-visible{outline:3px solid var(--sea);outline-offset:2px}.rcard{border:1px solid var(--line);background:#fff;border-radius:20px;flex-direction:column;padding:32px 28px;display:flex}.stars{color:#e2a33c;letter-spacing:3px;margin-bottom:16px;font-size:18px}.rcard blockquote{color:var(--ink-soft);flex:1;font-size:15.5px}.rcard cite{margin-top:20px;font-size:15px;font-style:normal;font-weight:600;display:block}.rcard cite span{color:var(--ink-soft);margin-top:2px;font-family:Spline Sans Mono,monospace;font-size:13px;font-weight:400;display:block}.form-status{text-align:center;min-height:20px;margin-top:14px;font-size:14.5px}.form-status.ok{color:var(--sea);font-weight:600}.form-status.err{color:#b4232a;font-weight:600}.reviews-link{text-align:center;margin-top:24px;font-size:15px}.reviews-link a{color:var(--sea);font-weight:600;text-decoration:none}.reviews-link a:hover{text-decoration:underline}.meet{padding:0 0 110px}.meet-inner{grid-template-columns:.62fr 1.38fr;align-items:center;gap:64px;display:grid}.meet-photo img{aspect-ratio:3/4;object-fit:cover;border-radius:160px 160px 20px 20px;width:100%;display:block}.meet h2{margin-bottom:18px;font-size:clamp(30px,3.4vw,44px)}.meet h2 em{color:var(--sea);font-style:italic}.meet p{color:var(--ink-soft);max-width:54ch;margin-bottom:28px;font-size:18px}.contact{background:var(--sea-tint);border-top:1px solid var(--line);padding:110px 0}.contact-grid{grid-template-columns:1fr 1fr;align-items:start;gap:72px;display:grid}.contact h2{margin-bottom:20px;font-size:clamp(34px,4vw,52px)}.contact h2 em{color:var(--sea);font-style:italic}.contact p{color:var(--ink-soft);max-width:46ch;margin-bottom:32px;font-size:18px}.contact-details{margin-top:40px;font-size:16px}.contact-details div{margin-bottom:10px}.contact-details a{color:var(--sea);font-weight:600;text-decoration:none}.contact-details a:hover{text-decoration:underline}.form-shell{border:1px solid var(--line);background:#fff;border-radius:20px;padding:36px;box-shadow:0 12px 40px #1424200f}.form-shell .placeholder{border:1.5px dashed var(--line);text-align:center;color:var(--ink-soft);border-radius:12px;padding:60px 24px;font-family:Spline Sans Mono,monospace;font-size:14px}.form-shell .field{margin-bottom:18px}.form-shell label{margin-bottom:6px;font-size:14px;font-weight:600;display:block}.form-shell .opt{color:var(--ink-soft);font-weight:400}.form-shell input,.form-shell textarea{width:100%;color:var(--ink);background:var(--paper);border:1.5px solid var(--line);border-radius:10px;padding:12px 14px;font-family:Hanken Grotesk,system-ui,sans-serif;font-size:16px;transition:border-color .15s}.form-shell input:focus,.form-shell textarea:focus{border-color:var(--sea);outline:none}.form-shell textarea{resize:vertical}.form-btn{cursor:pointer;border:none;width:100%;font-family:inherit}.hidden-field{display:none}footer{background:var(--ink);color:#8fa39c;padding:64px 0 40px;font-size:13.5px}.foot-top{border-bottom:1px solid #2b3d37;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;margin-bottom:36px;padding-bottom:36px;display:flex}.foot-top .logo{color:#fff;font-size:19px}.foot-links{gap:28px;list-style:none;display:flex}.foot-links a{color:#b8c8c2;text-decoration:none}.foot-links a:hover{color:#fff}.disclaimer{max-width:880px;margin-bottom:24px;line-height:1.7}.foot-bottom{flex-wrap:wrap;justify-content:space-between;gap:12px;display:flex}.foot-bottom a{color:#b8c8c2}@media (width<=900px){.hero{padding:56px 0 72px}.hero-grid{grid-template-columns:1fr;gap:48px}.hero-photo{max-width:420px}.cred-grid{grid-template-columns:repeat(2,1fr)}.cred-item:nth-child(odd){border-left:none;padding-left:0}.intro-grid,.contact-grid{grid-template-columns:1fr;gap:40px}.practice-grid{grid-template-columns:1fr}.diff-grid{grid-template-columns:1fr;gap:40px}.intro,.practice,.diff,.quotes,.contact{padding:72px 0}.ai-note{padding:72px 0 0}.ai-inner{grid-template-columns:1fr;gap:24px;padding:36px 28px}.carousel .rcard{flex:0 0 100%}.meet{padding-bottom:72px}.meet-inner{grid-template-columns:1fr;gap:36px}.meet-photo{max-width:340px}.practice{padding-top:0}.nav-links{display:none}.nav-links.open{background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:20px;padding:24px;display:flex;position:absolute;top:100%;left:0;right:0}.nav-toggle{cursor:pointer;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);background:0 0;border:none;font-family:Spline Sans Mono,monospace;font-size:13px;display:block}}
