@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Newsreader:opsz,wght@6..72,400;6..72,500&display=swap";:root{--canvas:#f8f3e8;--paper:#fffdf8;--mist:#e9e0d1;--ink:#20241f;--muted:#62675f;--forest:#263f32;--accent:#b45432;--accent-hover:#934126;--line:#20241f2e;--serif:"Newsreader", Georgia, serif;--sans:"DM Sans", system-ui, sans-serif;--max:1240px;--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--canvas);font-family:var(--sans);margin:0;font-size:17px;line-height:1.65;overflow-x:clip}img{object-fit:cover;max-width:100%;display:block}a{color:inherit;text-underline-offset:.2em}h1,h2,h3{font-family:var(--serif);letter-spacing:-.035em;text-wrap:balance;margin:0;font-weight:400;line-height:.98}h1{font-size:clamp(3.5rem,8vw,7.5rem)}h2{font-size:clamp(2.5rem,5vw,5rem)}h3{font-size:clamp(1.6rem,2.4vw,2.25rem);line-height:1.08}p{text-wrap:pretty}.skip-link{z-index:100;background:var(--ink);color:#fff;padding:10px 16px;position:fixed;top:8px;left:8px;transform:translateY(-150%)}.skip-link:focus{transform:none}.site-header{min-height:84px;padding:16px max(24px, calc((100vw - var(--max)) / 2));border-bottom:1px solid var(--line);z-index:50;backdrop-filter:blur(14px);background:#f8f3e8f0;align-items:center;gap:36px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:10px;margin-right:auto;line-height:1.05;text-decoration:none;display:flex}.brand-mark{flex:none;width:42px;height:42px}.brand strong,.brand small{display:block}.brand small{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-top:4px;font-size:10px}.site-header>nav{gap:26px;font-size:14px;display:flex}.site-header>nav a{white-space:nowrap;text-decoration:none}.site-header>nav a:hover,.site-header>nav a[aria-current=page]{color:var(--accent)}.button{background:var(--accent);color:#fffaf4;font:600 15px var(--sans);cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:12px;padding:14px 24px;text-decoration:none;transition:background .2s,transform .2s;display:inline-flex}.button:hover{background:var(--accent-hover);transform:translateY(-1px)}.button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #1677c8}.button-small{padding:11px 18px;font-size:13px}.button-light{background:var(--canvas);color:var(--forest)}.button-light:hover{background:#fff}.button-secondary{color:var(--ink);border:1px solid var(--ink);background:0 0}.eyebrow{letter-spacing:.14em;text-transform:uppercase;margin:0 0 24px;font-size:12px;font-weight:600}.lead{max-width:720px;color:var(--muted);font-size:clamp(1.15rem,2vw,1.45rem);line-height:1.55}.page-hero{max-width:var(--max);margin:0 auto;padding:clamp(80px,12vw,160px) 24px 96px}.page-hero h1{max-width:1000px;margin-bottom:32px}.page-hero-with-image{grid-template-columns:1.2fr .7fr;align-items:end;gap:72px;display:grid}.page-hero figure{border-radius:180px 180px 16px 16px;height:620px;margin:0;overflow:hidden}.page-hero figure img{width:100%;height:100%}.prose{max-width:850px;margin:0 auto;padding:80px 24px 120px}.prose h2{margin:72px 0 24px;font-size:clamp(2.3rem,4vw,4rem)}.prose h3{margin:48px 0 16px}.prose p,.prose li{color:#454a43}.prose a{color:var(--accent-hover)}.content-wide{max-width:var(--max);margin:0 auto;padding:96px 24px}.split{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(48px,8vw,110px);display:grid}.split img{aspect-ratio:4/5;border-radius:var(--radius);width:100%}.label-list{border-top:1px solid var(--line);margin:36px 0 0;padding:0;list-style:none}.label-list li{border-bottom:1px solid var(--line);grid-template-columns:40px 1fr;gap:16px;padding:18px 0;display:grid}.label-list span{color:var(--accent);font-size:13px}.booking-cta{text-align:center;background:var(--forest);color:#f9f3e8;padding:clamp(80px,10vw,140px) max(24px,50vw - 475px)}.booking-cta h2{margin-bottom:28px}.booking-cta>p:not(.eyebrow){color:#d8dfd8;max-width:650px;margin:0 auto 34px}.booking-cta-compact{border-radius:var(--radius);padding:72px 36px}.site-footer{color:#f8f3e8;background:#17251e}.footer-main,.footer-bottom{max-width:var(--max);grid-template-columns:1.5fr .5fr;gap:80px;margin:0 auto;padding:96px 24px;display:grid}.footer-main h2{max-width:800px;margin-bottom:36px}.footer-contact{flex-direction:column;justify-content:flex-end;align-items:flex-start;display:flex}.footer-contact p,.footer-contact a{color:#cfd7d0;margin:4px 0}.footer-bottom{border-top:1px solid #ffffff26;padding-top:24px;padding-bottom:24px;font-size:13px}.footer-bottom p{margin:0}.footer-bottom nav{justify-content:flex-end;gap:22px;display:flex}.mobile-menu{display:none}.home-hero{min-height:calc(100vh - 84px);max-width:var(--max);grid-template-rows:1fr auto;grid-template-columns:minmax(0,1.1fr) minmax(320px,.7fr);gap:28px 72px;margin:0 auto;padding:clamp(64px,9vw,130px) 24px 28px;display:grid}.home-hero>*,.split>*,.intro-grid>*{min-width:0}.hero-copy{align-self:center}.hero-copy h1{max-width:860px}.hero-copy h1 em{color:var(--accent);font-weight:400;display:block}.hero-copy .lead{max-width:650px;margin:34px 0}.hero-actions{flex-wrap:wrap;align-items:center;gap:24px;display:flex}.text-link{align-items:center;gap:10px;font-weight:600;text-decoration-thickness:1px;display:inline-flex}.hero-image{border-radius:220px 220px 16px 16px;grid-area:1/2/span 2;align-self:stretch;min-height:580px;margin:0;overflow:hidden}.hero-image img{width:100%;height:100%}.hero-note{border-top:1px solid var(--line);align-items:end;gap:14px;padding-top:24px;display:flex}.hero-note span{color:var(--accent);font-size:12px}.hero-note p{margin:0;font-size:13px;line-height:1.45}.trust-strip{background:var(--line);border-block:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.trust-strip p{padding:28px max(24px, calc((100vw - var(--max)) / 6));background:var(--paper);flex-direction:column;margin:0;display:flex}.trust-strip strong{font:400 21px var(--serif)}.trust-strip span{color:var(--muted);font-size:12px}.intro-section{padding-block:140px}.intro-grid{grid-template-columns:1.3fr .7fr;align-items:start;gap:clamp(56px,10vw,150px);display:grid}.intro-grid .lead{color:var(--ink);margin-top:0}.concerns-section,.values-band,.approach-band{background:var(--mist)}.section-heading{justify-content:space-between;align-items:end;gap:40px;margin-bottom:64px;display:flex}.section-heading h2{max-width:820px}.concern-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.concern-card{border-right:1px solid var(--line);border-bottom:1px solid var(--line);flex-direction:column;min-height:320px;padding:26px;text-decoration:none;transition:background .25s,color .25s;display:flex}.concern-card>span,.values-grid span{color:var(--accent);font-size:12px}.concern-card h3{margin:auto 0 18px}.concern-card p{color:var(--muted);font-size:14px}.concern-card b{align-self:flex-end;font-weight:400}.concern-card:hover{background:var(--forest);color:var(--canvas)}.concern-card:hover p{color:#ccd4cc}.process-image{height:740px;margin:0}.process-image img{border-radius:200px 200px 16px 16px;height:100%}.process-list{margin:48px 0 0;padding:0;list-style:none}.process-list li{border-top:1px solid var(--line);grid-template-columns:42px 1fr;gap:14px;padding:25px 0;display:grid}.process-list li>span{color:var(--accent);font-size:12px}.process-list h3{font-size:1.6rem}.process-list p{color:var(--muted);margin-bottom:0}.quote-section{text-align:center;background:var(--paper);padding:clamp(90px,14vw,190px) max(24px,50vw - 520px)}.quote-section blockquote{font:400 clamp(2.7rem, 5.3vw, 5.5rem)/1.02 var(--serif);letter-spacing:-.035em;margin:0}.quote-section p{color:var(--muted);margin-top:32px}.service-cards{grid-template-columns:1fr 1fr;gap:20px;display:grid}.service-cards a{border-radius:var(--radius);background:var(--paper);flex-direction:column;min-height:340px;padding:36px;text-decoration:none;display:flex}.service-cards span{color:var(--accent);text-transform:uppercase;letter-spacing:.12em;font-size:12px}.service-cards p{max-width:520px;font:400 clamp(1.7rem, 3vw, 3rem)/1.08 var(--serif);margin:auto 0 24px}.service-cards b{font-size:14px}.story-split{align-items:start}.values-grid{grid-template-columns:repeat(3,1fr);gap:64px;margin-top:64px;display:grid}.values-grid h3{margin:52px 0 16px}.detail-grid{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:1px;margin-top:56px;display:grid}.detail-grid article{background:var(--paper);padding:34px}.detail-grid span,.test-list article:before{color:var(--accent);text-transform:uppercase;letter-spacing:.12em;font-size:12px}.detail-grid h3{margin:90px 0 20px}.fees{margin:0}.fees>div{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:24px;padding:26px 0;display:grid}.fees dd{flex-direction:column;margin:0;display:flex}.fees strong{font:400 36px var(--serif)}.fees span{color:var(--muted);font-size:13px}.testing-grid{grid-template-columns:.7fr 1.3fr;gap:90px;display:grid}.test-list{background:var(--line);border:1px solid var(--line);grid-template-columns:1fr 1fr;gap:1px;display:grid}.test-list article{background:var(--paper);padding:28px}.test-list article:before{content:"Laboratory"}.test-list h3{margin:54px 0 16px}.notice{border-block:1px solid var(--line);grid-template-columns:180px 1fr;gap:32px;padding-block:34px;display:grid}.notice p{color:var(--muted);margin:0}.support-index>a{border-top:1px solid var(--line);grid-template-columns:60px 1fr 30px;align-items:center;gap:24px;padding:34px 0;text-decoration:none;display:grid}.support-index>a:last-child{border-bottom:1px solid var(--line)}.support-index>a>span{color:var(--accent);font-size:12px}.support-index h2{font-size:clamp(2rem,4vw,4rem)}.support-index p{color:var(--muted);margin-bottom:0}.support-body{grid-template-columns:1fr 1fr;gap:100px;display:grid}.support-concerns{margin:0;padding:0;list-style:none}.support-concerns li{border-top:1px solid var(--line);font:400 21px var(--serif);grid-template-columns:38px 1fr;gap:16px;padding:22px 0;display:grid}.support-concerns span{color:var(--accent);font:400 12px var(--sans)}.faq-section>h2{max-width:850px;margin-bottom:48px}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;font:400 21px var(--serif);justify-content:space-between;gap:30px;padding:24px 0;list-style:none;display:flex}.faq-list summary span{color:var(--accent)}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{max-width:760px;color:var(--muted);margin:0 0 28px}.reviewed{color:var(--muted);margin-top:32px;font-size:12px}.contact-grid{grid-template-columns:.65fr 1.35fr;align-items:start;gap:100px;display:grid}.contact-details{flex-direction:column;align-items:flex-start;gap:14px;display:flex}.contact-details>a:not(.button){font:400 22px var(--serif)}.contact-form{border-radius:var(--radius);background:var(--paper);grid-template-columns:1fr 1fr;gap:22px;padding:54px;display:grid}.form-heading,.contact-form .form-wide,.contact-form .consent,.contact-form .button,.form-status{grid-column:1/-1}.form-heading h2{margin-bottom:16px}.form-heading p{color:var(--muted)}.contact-form label{flex-direction:column;gap:8px;font-size:13px;font-weight:600;display:flex}.contact-form label>span{color:var(--muted);font-weight:400}.contact-form input,.contact-form textarea{width:100%;color:var(--ink);font:400 16px var(--sans);background:#fff;border:1px solid #9c9f99;border-radius:10px;padding:13px 15px}.contact-form textarea{resize:vertical}.contact-form .consent{flex-direction:row;align-items:start;font-weight:400}.contact-form .consent input{width:18px;height:18px;margin-top:4px}.contact-form .button{justify-self:start}.contact-form .button:disabled{opacity:.6;cursor:wait}.honeypot{position:absolute;left:-10000px}.form-status{min-height:26px;margin:0}code{background:var(--mist);border-radius:4px;padding:2px 5px}.treatment-list{border-top:1px solid var(--line);margin:0}.treatment-list>div{border-bottom:1px solid var(--line);grid-template-columns:300px 1fr;gap:32px;padding:26px 0;display:grid}.treatment-list dt{font:400 26px var(--serif)}.treatment-list dd{color:var(--muted);align-self:center;margin:0}.test-list ul{color:var(--muted);margin:18px 0 0;padding-left:18px;font-size:14px}.test-list ul li{margin-bottom:6px}.test-list article p{margin:18px 0 0}.label-list li>div p{color:var(--muted);margin:6px 0 0;font-size:14px}@media (width<=1000px){.site-header{min-height:72px;padding:12px 20px}.site-header>nav,.site-header>.button{display:none}.mobile-menu{display:block}.mobile-menu summary{cursor:pointer;align-content:center;gap:7px;width:42px;height:42px;list-style:none;display:grid}.mobile-menu summary span{background:var(--ink);width:25px;height:1px}.mobile-menu nav{background:var(--canvas);border-bottom:1px solid var(--line);padding:36px 24px;display:grid;position:fixed;inset:72px 0 auto}.mobile-menu nav a{font:400 26px var(--serif);padding:12px 0;text-decoration:none}}@media (width<=860px){.page-hero-with-image,.split,.footer-main{grid-template-columns:1fr}.page-hero figure{height:440px}.footer-main{gap:36px}.footer-bottom{grid-template-columns:1fr;gap:8px}.footer-bottom nav{flex-wrap:wrap;justify-content:flex-start}.home-hero{width:100%;max-width:100vw;min-height:auto;padding-top:72px;display:block}.hero-copy{width:100%;max-width:100%;overflow:hidden}.hero-note{margin-top:32px}.hero-image{grid-area:auto;min-height:500px}.trust-strip,.intro-grid,.support-body,.contact-grid,.testing-grid{grid-template-columns:1fr}.concern-grid,.values-grid,.detail-grid{grid-template-columns:1fr 1fr}.process-image{height:520px}.section-heading{flex-direction:column;align-items:flex-start}.contact-form{padding:30px}}@media (width<=560px){body{font-size:16px}.brand small{display:none}.hero-image{border-radius:150px 150px 12px 12px;width:100%;min-height:420px;margin-top:48px}h1{overflow-wrap:anywhere;font-size:clamp(3rem,14vw,4rem)}.trust-strip,.concern-grid,.values-grid,.detail-grid,.test-list,.service-cards{grid-template-columns:1fr}.intro-section,.content-wide{padding-block:72px}.page-hero{padding-top:72px;padding-bottom:56px}.page-hero figure{border-radius:140px 140px 12px 12px;height:400px}.notice,.fees>div,.treatment-list>div{grid-template-columns:1fr}.support-index>a{grid-template-columns:36px 1fr 18px}.support-index p{display:none}.contact-form{grid-template-columns:1fr;padding:26px 20px}.contact-form label{grid-column:1}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
