:root{--paper:#f4efe6;--paper-deep:#ede8df;--paper-darker:#e8e2d8;--ink:#1a1a18;--ink-soft:#6b6660;--cobalt:#1b5fd4;--cobalt-wash:#1b5fd42e;--black:#0d0d0b;--hairline:#1a1a181f;--serif:"Cormorant Garamond", "Times New Roman", serif;--sans:"Instrument Sans", system-ui, -apple-system, sans-serif;--mono:"DM Mono", ui-monospace, monospace;--pad-x:clamp(24px, 6vw, 96px);--label-size:10px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:17px;line-height:1.75;position:relative;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:1;opacity:.55;mix-blend-mode:multiply;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.05  0 0 0 0 0.05  0 0 0 0 0.05  0 0 0 0.10 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");position:fixed;inset:0}::selection{background:var(--cobalt-wash);color:var(--ink)}.label{font-family:var(--mono);font-size:var(--label-size);letter-spacing:.15em;text-transform:uppercase;color:var(--ink-soft);font-weight:400}.mark{font-family:var(--serif);color:var(--cobalt);background-image:linear-gradient(transparent 62%, var(--cobalt-wash) 62%, var(--cobalt-wash) 92%, transparent 92%);background-position:0;background-repeat:no-repeat;background-size:0% 100%;padding:0 .08em;font-style:italic;font-weight:400;transition:background-size .9s cubic-bezier(.22,1,.36,1);display:inline-block}.mark.swept{background-size:100% 100%}.reveal{opacity:0;transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1);transform:translateY(24px)}.reveal.in{opacity:1;transform:translateY(0)}.reveal.d1{transition-delay:.12s}.reveal.d2{transition-delay:.24s}.reveal.d3{transition-delay:.36s}.reveal.d4{transition-delay:.48s}header.site{z-index:50;padding:22px var(--pad-x);border-bottom:1px solid #0000;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;transition:background .3s,border-color .3s,padding .3s;display:grid;position:fixed;top:0;left:0;right:0}header.site.scrolled{-webkit-backdrop-filter:blur(8px);border-bottom-color:var(--hairline);padding:14px var(--pad-x);background:#f4efe6eb}.logo{font-family:var(--serif);letter-spacing:-.005em;color:var(--ink);align-items:center;gap:10px;font-size:22px;font-weight:400;text-decoration:none;display:inline-flex}.logo--img{gap:0}.logo--img img{width:auto;height:30px;display:block}nav.primary{justify-self:center;gap:32px;display:flex}nav.primary a{font-family:var(--sans);color:var(--ink);padding:4px 0;font-size:14px;font-weight:500;text-decoration:none;position:relative}nav.primary a:after{content:"";background:var(--cobalt);width:0;height:1px;transition:width .3s;position:absolute;bottom:0;left:0}nav.primary a:hover:after{width:100%}.pill{font-family:var(--sans);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:10px 18px;font-size:13px;font-weight:500;text-decoration:none;transition:transform .2s,background .2s,color .2s,border-color .2s;display:inline-flex}.pill.dark{background:var(--ink);color:var(--paper);border:1px solid var(--ink)}.pill.dark:hover{background:var(--cobalt);border-color:var(--cobalt);transform:translateY(-1px)}.pill.outline{color:var(--ink);border:1px solid var(--ink);background:0 0}.pill.outline:hover{background:var(--ink);color:var(--paper)}header .cta{justify-self:end}.mobile-toggle{display:none}.hero{min-height:100vh;padding:0 var(--pad-x);flex-direction:column;padding-top:96px;padding-bottom:80px;display:flex;position:relative}.hero .corner-labels{top:110px;left:var(--pad-x);right:var(--pad-x);pointer-events:none;justify-content:space-between;display:flex;position:absolute}.hero .ghost-num{font-family:var(--serif);color:var(--paper-darker);letter-spacing:-.04em;-webkit-user-select:none;user-select:none;pointer-events:none;z-index:0;font-size:clamp(220px,32vw,420px);font-weight:400;line-height:.85;position:absolute;top:38%;right:clamp(16px,4vw,80px)}.hero-content{z-index:2;max-width:1200px;margin-top:auto;margin-bottom:60px;position:relative}.hero h1{font-family:var(--serif);letter-spacing:-.015em;max-width:14ch;margin-bottom:36px;font-size:clamp(52px,8vw,96px);font-weight:300;line-height:1.02}.hero p.lede{font-family:var(--sans);color:var(--ink-soft);max-width:480px;margin-bottom:36px;margin-left:clamp(0px,8vw,80px);font-size:17px;line-height:1.75}.hero .ctas{flex-wrap:wrap;align-items:center;gap:24px;margin-left:clamp(0px,8vw,80px);display:flex}.text-link{font-family:var(--sans);color:var(--ink);border-bottom:1px solid var(--ink);align-items:center;gap:6px;padding-bottom:4px;font-size:14px;font-weight:500;text-decoration:none;transition:color .2s,border-color .2s;display:inline-flex}.text-link:hover{color:var(--cobalt);border-color:var(--cobalt)}.text-link:hover .arr{transform:translate(4px)}.arr{transition:transform .2s;display:inline-block}.hero-line{left:var(--pad-x);right:var(--pad-x);z-index:2;height:1px;position:absolute;bottom:32px;overflow:visible}.hero-line svg{width:100%;height:1px;display:block;overflow:visible}.hero-line line{stroke:var(--cobalt);stroke-width:1px;stroke-dasharray:var(--len,2000);stroke-dashoffset:var(--len,2000);transition:stroke-dashoffset 1.5s cubic-bezier(.22,1,.36,1) .3s}.hero-line.in line{stroke-dashoffset:0}section.section{padding:clamp(96px, 14vh, 160px) var(--pad-x);position:relative}.section-divider{height:1px;margin:0 var(--pad-x);overflow:visible}.section-divider svg{width:100%;height:1px;display:block;overflow:visible}.section-divider line{stroke:var(--cobalt);stroke-opacity:.45;stroke-width:1px;stroke-dasharray:var(--len,2000);stroke-dashoffset:var(--len,2000);transition:stroke-dashoffset 1.2s cubic-bezier(.22,1,.36,1)}.section-divider.in line{stroke-dashoffset:0}.section-label{top:clamp(96px,14vh,160px);right:var(--pad-x);text-align:right;position:absolute}.section-label .label-line{background:var(--ink-soft);vertical-align:middle;width:24px;height:1px;margin-right:10px;display:inline-block}h2.section-title{font-family:var(--serif);letter-spacing:-.01em;max-width:18ch;margin-bottom:80px;font-size:clamp(36px,5vw,64px);font-weight:300;line-height:1.05}h2.section-title .mark{font-weight:400}.sub-headline{font-family:var(--sans);color:var(--ink-soft);max-width:560px;margin-top:-56px;margin-bottom:80px;font-size:17px;line-height:1.75}.problem-grid{grid-template-columns:repeat(3,1fr);gap:48px;margin-left:clamp(0px,4vw,60px);display:grid}.problem-card{border-top:1px solid var(--hairline);padding-top:28px}.roman{font-family:var(--serif);color:var(--cobalt);margin-bottom:16px;font-size:22px;font-style:italic;font-weight:400;display:block}.problem-card h3{font-family:var(--serif);margin-bottom:18px;font-size:24px;font-weight:400;line-height:1.25;display:inline-block;position:relative}.problem-card h3:after{content:"";background:var(--cobalt-wash);width:0;height:5px;transition:width .7s cubic-bezier(.22,1,.36,1);position:absolute;bottom:-2px;left:0}.problem-card.in h3:after{width:100%}.problem-card p{color:var(--ink-soft);font-size:15px;line-height:1.7}.service-rows{margin-top:0}.service-row{border-top:1px solid var(--hairline);color:inherit;grid-template-columns:80px 1.2fr 2fr auto;align-items:start;gap:40px;padding:36px 24px 36px clamp(20px,4vw,48px);text-decoration:none;transition:background .25s;display:grid;position:relative}.service-row:last-child{border-bottom:1px solid var(--hairline)}.service-row:before{content:"";background:var(--cobalt);width:0;transition:width .25s;position:absolute;top:0;bottom:0;left:0}.service-row:hover{background:var(--paper-deep)}.service-row:hover:before{width:4px}.service-row:hover .svc-num{color:var(--cobalt)}.svc-num{font-family:var(--serif);color:var(--ink-soft);padding-top:4px;font-size:32px;font-weight:400;line-height:1;transition:color .25s}.svc-title{font-family:var(--serif);letter-spacing:-.005em;font-size:28px;font-weight:400;line-height:1.15}.svc-desc{color:var(--ink-soft);max-width:60ch;font-size:16px;line-height:1.7}.svc-link{font-family:var(--sans);color:var(--ink);white-space:nowrap;align-self:center;align-items:center;gap:6px;font-size:13px;font-weight:500;display:inline-flex}.service-row:hover .svc-link{color:var(--cobalt)}.service-row:hover .svc-link .arr{transform:translate(4px)}.steps-grid{grid-template-columns:repeat(2,1fr);gap:80px;margin-left:clamp(0px,4vw,60px);margin-right:clamp(0px,4vw,60px);display:grid}.step{padding-top:32px;padding-left:40px;position:relative}.step .ghost{font-family:var(--serif);color:var(--paper-darker);z-index:0;-webkit-user-select:none;user-select:none;font-size:160px;font-weight:400;line-height:1;position:absolute;top:-40px;left:-10px}.step-content{z-index:1;position:relative}.step-name{font-family:var(--serif);margin-bottom:16px;font-size:28px;font-weight:400;line-height:1.2}.step-name .num{color:var(--cobalt);margin-right:.4em;font-style:italic}.step p{color:var(--ink-soft);max-width:44ch;font-size:16px;line-height:1.7}.plans{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.plan{background:var(--paper-deep);border:1px solid var(--hairline);flex-direction:column;gap:20px;padding:40px 36px 36px;transition:transform .3s,box-shadow .3s;display:flex;position:relative}.plan:hover{transform:translateY(-4px);box-shadow:0 24px 60px -30px #0d0d0b4d}.plan.featured{background:var(--black);color:var(--paper);border-color:var(--black)}.plan.featured .plan-name,.plan.featured .plan-desc,.plan.featured ul li{color:var(--paper)}.plan.featured .plan-desc{color:#f4efe6b3}.plan.featured ul li:before{color:var(--cobalt)}.plan-tag{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);border-bottom:1px solid var(--hairline);align-self:flex-start;width:100%;padding-bottom:8px;font-size:10px}.plan.featured .plan-tag{color:#f4efe68c;border-bottom-color:#f4efe62e}.plan-name{font-family:var(--serif);font-size:32px;font-weight:400;line-height:1.05}.plan-desc{color:var(--ink-soft);min-height:4.6em;font-size:15px;line-height:1.7}.plan ul{flex-direction:column;flex-grow:1;gap:12px;list-style:none;display:flex}.plan ul li{color:var(--ink);padding-left:24px;font-size:15px;line-height:1.55;position:relative}.plan ul li:before{content:"✓";color:var(--cobalt);font-size:13px;font-weight:600;position:absolute;top:1px;left:0}.plan .plan-cta{font-family:var(--sans);color:inherit;border-bottom:1px solid;align-self:flex-start;align-items:center;gap:6px;margin-top:8px;padding-bottom:4px;font-size:13px;font-weight:500;text-decoration:none;transition:color .2s;display:inline-flex}.plan .plan-cta:hover{color:var(--cobalt);border-color:var(--cobalt)}.plan .plan-cta:hover .arr{transform:translate(4px)}.plans-note{text-align:center;color:var(--ink-soft);max-width:50ch;margin-top:56px;margin-left:auto;margin-right:auto;font-size:14px;line-height:1.7}.reasons{grid-template-columns:repeat(2,1fr);gap:64px 80px;margin-left:clamp(0px,4vw,60px);display:grid}.reason{border-top:1px solid var(--hairline);padding-top:28px}.reason .roman{margin-bottom:12px}.reason h3{font-family:var(--serif);margin-bottom:14px;font-size:22px;font-weight:400;line-height:1.25}.reason p{color:var(--ink-soft);max-width:44ch;font-size:15px;line-height:1.7}.faq-list{max-width:920px;margin-left:clamp(0px,4vw,60px)}.faq-item{border-top:1px solid var(--hairline);border-left:2px solid #0000;padding-left:0;transition:border-left-color .3s,padding-left .3s}.faq-item:last-child{border-bottom:1px solid var(--hairline)}.faq-item.open{border-left-color:var(--cobalt);padding-left:24px}.faq-q{text-align:left;cursor:pointer;width:100%;font-family:var(--serif);color:var(--ink);background:0 0;border:0;justify-content:space-between;align-items:center;gap:24px;padding:28px 0;font-size:clamp(20px,2.2vw,26px);font-weight:400;line-height:1.3;display:flex}.faq-q .roman{flex-shrink:0;width:36px;margin:0;font-size:18px}.faq-q .q-text{flex-grow:1}.faq-icon{flex-shrink:0;width:18px;height:18px;transition:transform .3s;position:relative}.faq-icon:before,.faq-icon:after{content:"";background:var(--ink);transition:background .3s;position:absolute}.faq-icon:before{width:1px;top:0;bottom:0;left:50%;transform:translate(-50%)}.faq-icon:after{height:1px;top:50%;left:0;right:0;transform:translateY(-50%)}.faq-item.open .faq-icon{transform:rotate(45deg)}.faq-item.open .faq-icon:before,.faq-item.open .faq-icon:after{background:var(--cobalt)}.faq-a{max-height:0;transition:max-height .4s cubic-bezier(.22,1,.36,1);overflow:hidden}.faq-a-inner{color:var(--ink-soft);max-width:64ch;padding:0 36px 32px;font-size:16px;line-height:1.75}.cta-final{background:var(--black);color:var(--paper);padding:clamp(96px, 14vh, 160px) var(--pad-x);position:relative;overflow:hidden}.cta-final:before{content:"";opacity:.5;pointer-events:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 0.05 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");position:absolute;inset:0}.cta-section-label{top:clamp(96px,14vh,160px);right:var(--pad-x);color:#f4efe680;position:absolute}.cta-section-label .label-line{background:#f4efe666}.cta-section-label .label{color:#f4efe68c}.cta-grid{grid-template-columns:1fr 1fr;align-items:start;gap:clamp(48px,8vw,120px);max-width:1280px;margin:0 auto;display:grid;position:relative}.cta-left{padding-top:8px;position:relative}.cta-final h2{font-family:var(--serif);letter-spacing:-.015em;color:var(--paper);margin-bottom:32px;font-size:clamp(44px,6vw,80px);font-weight:300;line-height:1.05}.cta-final h2 .mark{color:#6fa0f0;background-image:linear-gradient(#0000 62%,#6fa0f047 62% 92%,#0000 92%)}.cta-lede{color:#f4efe6b3;max-width:44ch;margin-bottom:48px;font-size:16px;line-height:1.7}.cta-checks{border-top:1px solid #f4efe624;flex-direction:column;gap:14px;padding-top:32px;list-style:none;display:flex}.cta-checks li{font-family:var(--sans);color:#f4efe6d9;padding-left:28px;font-size:14px;line-height:1.5;position:relative}.cta-checks li:before{content:"✓";color:#6fa0f0;font-size:13px;font-weight:600;position:absolute;top:0;left:0}.booking-form{-webkit-backdrop-filter:blur(2px);background:#f4efe60a;border:1px solid #f4efe624;flex-direction:column;gap:22px;padding:clamp(28px,4vw,44px);display:flex}.booking-form .form-head{border-bottom:1px solid #f4efe624;margin-bottom:6px;padding-bottom:20px}.booking-form .form-head .label{color:#f4efe680;margin-bottom:8px;display:block}.booking-form .form-head h3{font-family:var(--serif);color:var(--paper);font-size:26px;font-weight:400;line-height:1.2}.form-row{flex-direction:column;gap:10px;display:flex}.form-row.split{grid-template-columns:1fr 1fr;gap:18px;display:grid}.field-label{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:#f4efe68c;font-size:10px}.field-label .opt{color:#f4efe659;text-transform:none;letter-spacing:.05em;margin-left:8px;font-size:10px}.input,.textarea,.select{width:100%;color:var(--paper);font-family:var(--sans);background:0 0;border:0;border-bottom:1px solid #f4efe638;border-radius:0;outline:none;padding:8px 0 12px;font-size:16px;line-height:1.5;transition:border-color .2s}.input::placeholder,.textarea::placeholder{color:#f4efe652;font-style:italic;font-family:var(--serif);font-size:16px}.input:focus,.textarea:focus,.select:focus{border-bottom-color:#6fa0f0}.textarea{resize:vertical;min-height:88px;font-family:var(--sans)}.select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' stroke='%236FA0F0' stroke-width='1.5' fill='none' stroke-linecap='round'/></svg>");background-position:right 4px center;background-repeat:no-repeat;padding-right:24px}.select option{background:var(--black);color:var(--paper)}.slots{flex-wrap:wrap;gap:8px;display:flex}.slot-chip{color:var(--paper);font-family:var(--sans);cursor:pointer;background:0 0;border:1px solid #f4efe638;border-radius:999px;padding:9px 14px;font-size:13px;transition:background .2s,border-color .2s,color .2s}.slot-chip:hover{border-color:#6fa0f0}.slot-chip.active{background:var(--cobalt);border-color:var(--cobalt);color:#fff}.form-submit-row{border-top:1px solid #f4efe624;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:6px;padding-top:20px;display:flex}.form-fineprint{color:#f4efe680;max-width:30ch;font-size:12px;line-height:1.55}.submit-btn{background:var(--cobalt);color:#fff;border:1px solid var(--cobalt);font-family:var(--sans);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:14px 26px;font-size:14px;font-weight:500;transition:transform .2s,box-shadow .2s;display:inline-flex}.submit-btn:hover{transform:scale(1.02);box-shadow:0 0 0 4px #1b5fd447}.submit-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.form-success{text-align:center;padding:40px 20px;display:none}.form-success.on{display:block}.form-success .qmark{font-family:var(--serif);color:#6fa0f0;margin-bottom:16px;font-size:56px;font-style:italic;line-height:1;display:block}.form-success h4{font-family:var(--serif);color:var(--paper);margin-bottom:12px;font-size:28px;font-weight:400}.form-success p{color:#f4efe6b3;max-width:36ch;margin:0 auto;font-size:15px;line-height:1.7}footer{background:var(--paper);border-top:1px solid var(--hairline);padding:80px var(--pad-x) 32px}.foot-grid{grid-template-columns:1.5fr 1fr 1fr 1fr;gap:56px;margin-bottom:64px;display:grid}.foot-col h4{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:20px;font-size:10px;font-weight:400}.foot-col a,.foot-col p{color:var(--ink);font-size:14px;line-height:2;text-decoration:none;transition:color .2s;display:block}.foot-col a:hover{color:var(--cobalt)}.foot-tagline{font-family:var(--serif);color:var(--ink-soft);max-width:28ch;margin-top:12px;font-size:18px;font-style:italic;font-weight:400;line-height:1.45}.foot-bottom{border-top:1px solid var(--hairline);font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);justify-content:space-between;align-items:center;padding-top:24px;font-size:11px;display:flex}@media (max-width:960px){nav.primary{display:none}header.site{grid-template-columns:1fr auto}.mobile-toggle{border:1px solid var(--ink);cursor:pointer;background:0 0;border-radius:999px;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.mobile-toggle span{background:var(--ink);width:14px;height:1px;position:relative}.mobile-toggle span:before,.mobile-toggle span:after{content:"";background:var(--ink);width:14px;height:1px;position:absolute;left:0}.mobile-toggle span:before{top:-5px}.mobile-toggle span:after{top:5px}.problem-grid{grid-template-columns:1fr;gap:40px}.service-row{grid-template-columns:60px 1fr;grid-template-areas:"num title""num desc""num link";gap:12px 24px}.svc-num{grid-area:num;font-size:24px}.svc-title{grid-area:title;font-size:22px}.svc-desc{grid-area:desc;font-size:15px}.svc-link{grid-area:link;align-self:start;padding-top:8px}.steps-grid{grid-template-columns:1fr;gap:64px}.plans{grid-template-columns:1fr}.reasons{grid-template-columns:1fr;gap:40px}.foot-grid{grid-template-columns:1fr 1fr;gap:40px}.hero .ghost-num{opacity:.7;font-size:200px;top:18%}.section-label{text-align:left;margin-bottom:24px;position:static}.hero .corner-labels{margin-bottom:48px;padding-top:80px;position:static}.foot-bottom{flex-direction:column;align-items:flex-start;gap:12px}.cta-grid{grid-template-columns:1fr;gap:56px}.cta-section-label{text-align:left;margin-bottom:32px;position:static}.form-row.split{grid-template-columns:1fr;gap:22px}.form-submit-row{flex-direction:column;align-items:stretch}.submit-btn{justify-content:center}}@media (max-width:560px){.foot-grid{grid-template-columns:1fr}.hero h1{max-width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}.mark{background-size:100% 100%!important}.reveal{opacity:1!important;transform:none!important}}
