@font-face{font-family:Playfair Display Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/assets/playfair-display-cyrillic-wght-normal-5WvUvBgz.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Playfair Display Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/assets/playfair-display-vietnamese-wght-normal-Cabi7G8-.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/assets/playfair-display-latin-ext-wght-normal-CT1r92Rl.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/assets/playfair-display-latin-wght-normal-BOwq7MWX.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display Variable;font-style:italic;font-display:swap;font-weight:400 900;src:url(/assets/playfair-display-cyrillic-wght-italic-D5dBZ3aJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Playfair Display Variable;font-style:italic;font-display:swap;font-weight:400 900;src:url(/assets/playfair-display-vietnamese-wght-italic-DUEcMSM3.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display Variable;font-style:italic;font-display:swap;font-weight:400 900;src:url(/assets/playfair-display-latin-ext-wght-italic-ze_cPdSg.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display Variable;font-style:italic;font-display:swap;font-weight:400 900;src:url(/assets/playfair-display-latin-wght-italic-DmbndNpe.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-vietnamese-wght-normal-qRpaaN48.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-ext-wght-normal-DmpS2jIq.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-wght-normal-eXO_dkmS.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-vietnamese-wght-italic-CPBsCcxN.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-ext-wght-italic-DJWiFoht.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-wght-italic-DnD1KgkH.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--cream:#f7f4ee;--cream-2:#efe9df;--paper:#fff;--forest:#12303b;--forest-deep:#0b1f27;--forest-700:#1c4a57;--ink:#12252d;--ink-soft:#4f6168;--sage:#d9eee6;--peach:#fde3d9;--sky:#e1ebef;--blush:#f1e7da;--sand-line:#e4d9c6;--hairline:#0b1f271f;--on-forest:#f7f4ee;--on-forest-soft:#b8c7cb;--accent-on-dark:#ff7a59;--line-dark:#f7f4ee24;--focus:#12303b;--coral-bright:#ff7a59;--coral-ink:#c2451f;--harbour-deep:var(--forest-deep);--harbour:var(--forest-700);--harbour-ink:var(--ink);--cloud:var(--cream);--seafoam-tint:var(--cream-2);--seafoam:var(--on-forest-soft);--seafoam-tile:var(--sage);--sand:var(--sand-line);--coral:var(--coral-bright);--coral-deep:var(--coral-ink);--line:var(--hairline);--line-light:var(--line-dark);--serif:"Playfair Display Variable", Georgia, "Times New Roman", serif;--sans:"Plus Jakarta Sans Variable", system-ui, -apple-system, "Segoe UI", sans-serif;--display:var(--serif);--container:1240px;--gutter:clamp(1.25rem, 4vw, 3rem);--radius:20px;--radius-sm:14px;--radius-lg:28px;--radius-pill:999px;--radius-arch:48% 48% 0 0 / 20% 20% 0 0;--sp-1:.5rem;--sp-2:.75rem;--sp-3:1rem;--sp-4:1.5rem;--sp-5:2rem;--sp-6:3rem;--sp-7:4rem;--sp-8:6rem;--space-cta:clamp(1.75rem, 3vw, 2.5rem);--space-cta-hero:clamp(2rem, 3.5vw, 3rem);--shadow-sm:0 1px 2px #0b1f270d;--shadow-card:0 18px 40px -28px #0b1f2738;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur:.7s}*,:before,:after{box-sizing:border-box}html{scroll-behavior:auto;-webkit-text-size-adjust:100%}html.menu-open{overflow:hidden}body{font-family:var(--sans);color:var(--ink);background:var(--cream);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:1.0625rem;line-height:1.6;overflow-x:clip}img,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}ul,ol{margin:0;padding:0;list-style:none}p{margin:0}p,li,dd,dt,figcaption,blockquote,address{text-wrap:pretty}h1,h2,h3,h4{text-wrap:balance;font-family:var(--serif);font-synthesis:none;letter-spacing:-.01em;margin:0;font-style:normal;font-weight:500;line-height:1.15}h1 em,h2 em,h3 em,.em{font-synthesis:none;color:var(--coral-ink);font-style:italic;font-weight:500}.cta em,.cta .em,.footer em,.footer .em,.footer-statement em,.menu-overlay em,.on-dark em,.on-dark .em{color:var(--accent-on-dark)}::selection{color:var(--forest-deep);background:#9fe1cb}:focus-visible{outline:2px solid var(--focus);outline-offset:4px;border-radius:4px}@keyframes reveal-mount{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.reveal-mount{animation:reveal-mount .4s var(--ease-out) both}.container{width:min(100% - var(--gutter) * 2, var(--container));margin-inline:auto}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.skip-link{z-index:200;background:var(--forest-deep);color:var(--on-forest);border-radius:999px;padding:.75rem 1rem;position:fixed;top:-100px;left:1rem}.skip-link:focus{top:1rem}.eyebrow{font-family:var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--forest);align-items:center;gap:.6rem;font-size:.75rem;font-weight:600;display:inline-flex}.eyebrow:before{content:"";background:var(--coral);width:22px;height:1px}.eyebrow.on-dark{color:var(--on-forest-soft)}.eyebrow.on-dark:before{background:var(--on-forest-soft)}.display{font-size:clamp(2.6rem,5.6vw,6rem)}.h2{font-size:clamp(2rem,3.8vw,3.6rem)}.h3{font-size:clamp(1.4rem,2.2vw,2rem)}.lead{color:var(--ink-soft);max-width:34em;font-size:clamp(1.1rem,1.5vw,1.3rem);line-height:1.5}.section,.section.tight{padding-block:clamp(3.5rem,7vw,6rem)}.on-dark{color:var(--on-forest)}.on-dark .lead,.on-dark .muted{color:var(--on-forest-soft)}.grid-2{grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));align-items:center;gap:clamp(2rem,5vw,5rem);display:grid}.btn-row{flex-wrap:wrap;align-items:center;gap:.875rem 1rem;display:flex}.btn{--bg:var(--forest);--fg:var(--on-forest);background:var(--bg);color:var(--fg);letter-spacing:.01em;isolation:isolate;transition:transform .4s var(--ease-out), background .4s var(--ease-out), color .4s var(--ease-out);border-radius:999px;align-items:center;gap:.9rem;padding:1rem 1.25rem 1rem 1.5rem;font-size:.95rem;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.btn:after{content:"";z-index:-1;border-radius:inherit;background:var(--forest-deep);transition:transform .55s var(--ease-out);position:absolute;inset:0;transform:translateY(101%)}.btn:hover:after,.btn:focus-visible:after{transform:translateY(0)}.btn:hover{color:var(--on-forest)}.btn .icon{border-radius:var(--radius-pill);width:30px;height:30px;color:inherit;transition:transform .15s var(--ease-out), background .4s var(--ease-out);background:#ffffff2e;place-items:center;display:grid}.btn:hover .icon,.btn:focus-visible .icon{transform:rotate(8deg)}.btn.glass .icon,.btn.ghost .icon{background:var(--forest);color:var(--on-forest)}.btn.coral{--bg:var(--coral-bright);--fg:var(--forest-deep)}.btn.coral .icon{background:#0b1f271f}.btn.coral:after{background:var(--forest-deep)}.btn.coral:hover,.btn.coral:focus-visible{color:var(--on-forest)}.btn.glass{--bg:var(--sage);--fg:var(--forest)}.btn.glass:after{background:var(--forest)}.btn.glass:hover,.btn.glass:focus-visible{color:var(--on-forest)}.btn.ghost{--bg:transparent;--fg:var(--forest);box-shadow:inset 0 0 0 1px var(--forest)}.btn.ghost:after{background:var(--forest)}.btn.ghost:hover{color:var(--on-forest);box-shadow:inset 0 0 0 1px #0000}.btn.block{justify-content:space-between;width:100%}.link-arrow{transition:background-size .5s var(--ease-out), gap .4s var(--ease-out);background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:100% 1px;align-items:center;gap:.6rem;padding-bottom:.2rem;font-size:.95rem;font-weight:600;display:inline-flex}.link-arrow:hover{background-size:0 1px;gap:1rem}.header{z-index:100;color:var(--ink);transition:padding .5s var(--ease-out), background .5s var(--ease-out), backdrop-filter .5s;mix-blend-mode:normal;padding-block:1.1rem;position:fixed;top:0;left:0;right:0}.header.scrolled{background:color-mix(in srgb, var(--cream) 82%, transparent);-webkit-backdrop-filter:blur(16px)saturate(140%);border-bottom:1px solid var(--hairline);padding-block:.7rem}.header-inner{justify-content:space-between;align-items:center;gap:2rem;display:flex}.brand{align-items:center;gap:.75rem;line-height:1;display:flex}.brand-mark{width:52px;height:52px;transition:transform .6s var(--ease-out);flex:none;place-items:center;display:grid}.brand-mark img{object-fit:contain;width:100%;height:100%}.brand:hover .brand-mark{transform:rotate(-12deg)}.brand-text{flex-direction:column;gap:.2rem;display:flex}.brand-name{font-family:var(--serif);letter-spacing:-.01em;color:var(--ink);font-size:1.5rem;font-weight:500}.brand-sub{letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);font-size:.72rem}@media (width<=600px){.brand{gap:.6rem}.brand-mark{width:40px;height:40px}.brand-name{font-size:1.25rem}.brand-sub{letter-spacing:.12em;font-size:.62rem}.menu-btn{gap:.5rem;padding:.5rem .7rem .5rem .85rem;font-size:.68rem}}.nav-desktop{flex:1;justify-content:center;align-items:center;gap:2rem;display:none}.nav-desktop a{color:var(--ink);padding:.4rem 0;font-size:.92rem;font-weight:500;position:relative}.nav-desktop a:after{content:"";background:var(--forest);transform-origin:100%;height:1px;transition:transform .45s var(--ease-out);position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.nav-desktop a:hover,.nav-desktop a.active{color:var(--forest)}.nav-desktop a:hover:after,.nav-desktop a.active:after{transform-origin:0;transform:scaleX(1)}.nav-desktop .btn{padding:.7rem .8rem .7rem 1.2rem;font-size:.85rem}.nav-desktop .btn:after{display:block}.nav-desktop .btn .icon{width:26px;height:26px}.header-cta{padding:.7rem .8rem .7rem 1.2rem;font-size:.85rem;display:none}.header-cta .icon{width:26px;height:26px}.header-right{align-items:center;gap:1rem;display:flex}.header-clock{letter-spacing:.14em;text-transform:uppercase;opacity:.7;font-variant-numeric:tabular-nums;font-size:.72rem;display:none}.header-clock b{font-weight:600}.menu-btn{letter-spacing:.12em;text-transform:uppercase;border-radius:999px;align-items:center;gap:.75rem;padding:.6rem .9rem .6rem 1.1rem;font-size:.8rem;font-weight:600;transition:background .4s,color .4s;display:inline-flex;box-shadow:inset 0 0 0 1px}.menu-btn:hover{background:var(--forest);color:var(--on-forest);box-shadow:inset 0 0 0 1px #0000}.menu-btn .bars{width:18px;height:10px;position:relative}.menu-btn .bars span{width:100%;height:1.5px;transition:transform .4s var(--ease-out), top .4s var(--ease-out);background:currentColor;position:absolute;left:0}.menu-btn .bars span:first-child{top:0}.menu-btn .bars span:last-child{top:8.5px}@media (width>=980px){.nav-desktop{display:flex}.header-clock{display:inline}.header-cta{display:inline-flex}.menu-btn{display:none}}.menu-overlay{z-index:150;background:var(--forest-deep);color:var(--on-forest);flex-direction:column;padding:1.1rem 0 2rem;display:flex;position:fixed;inset:0;overflow:hidden}.menu-overlay .header-inner{width:min(100% - var(--gutter) * 2, var(--container));margin-inline:auto}.menu-links{width:min(100% - var(--gutter) * 2, var(--container));flex-direction:column;flex:1;justify-content:center;gap:.2rem;margin-inline:auto;display:flex}.menu-links a{font-family:var(--serif);letter-spacing:-.01em;align-items:baseline;gap:1rem;padding:.35rem 0;font-size:clamp(1.3rem,5vw,2.6rem);font-weight:500;line-height:1.1;transition:color .3s;display:flex}.menu-links a small{font-family:var(--sans);letter-spacing:.16em;color:var(--on-forest-soft);font-size:.75rem}.menu-links a:hover{color:var(--on-forest-soft)}.menu-meta{width:min(100% - var(--gutter) * 2, var(--container));color:var(--on-forest-soft);border-top:1px solid var(--line-dark);grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1rem;margin-inline:auto;padding-top:1.5rem;font-size:.9rem;display:grid}.menu-meta a{color:var(--on-forest)}.marquee{border-block:1px solid var(--hairline);background:var(--cream);color:var(--ink);padding-block:1.1rem;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 4% 96%,#0000);mask-image:linear-gradient(90deg,#0000,#000 4% 96%,#0000)}.marquee.dark{background:var(--forest-deep);color:var(--on-forest);border-color:var(--line-dark)}.marquee-track{width:max-content;animation:85s linear infinite marquee;display:flex}.marquee:hover .marquee-track{animation-play-state:paused}.marquee-group{font-family:var(--serif);white-space:nowrap;align-items:center;gap:2.5rem;padding-right:2.5rem;font-size:clamp(.95rem,2vw,1.7rem);display:flex}.marquee-group i{background:var(--forest);border-radius:50%;width:6px;height:6px}.marquee.dark .marquee-group i{background:var(--on-forest-soft)}.marquee-label{font-family:var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--forest);font-size:.7em;font-weight:600}.marquee.dark .marquee-label{color:var(--on-forest-soft)}@keyframes marquee{to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.marquee-track{animation:none}}.chapter{grid-template-columns:1fr;gap:2rem;display:grid}@media (width>=900px){.chapter{grid-template-columns:220px 1fr;gap:4rem}}.chapter-label{align-self:start}@media (width>=900px){.chapter-label{position:sticky;top:6rem}}.chapter-label .num{font-family:var(--serif);color:var(--forest);margin-bottom:.5rem;font-size:3rem;line-height:1;display:block}.statement{font-family:var(--serif);letter-spacing:-.01em;max-width:24em;font-size:clamp(1.55rem,2.8vw,2.6rem);font-weight:500;line-height:1.22}.prose{max-width:62ch;color:var(--ink-soft);gap:1.1rem;font-size:1.05rem;display:grid}.on-dark .prose{color:var(--on-forest-soft)}.services{border-top:1px solid var(--line);display:grid}.service{border-bottom:1px solid var(--line);transition:padding .5s var(--ease-out);grid-template-columns:1fr;gap:1rem;padding:2rem 0;display:grid;position:relative}@media (width>=900px){.service{grid-template-columns:70px 1.2fr 1.5fr auto;align-items:start;gap:2.5rem;padding:2.6rem 0}}.service:before{content:"";border-radius:var(--radius-sm);background:var(--seafoam-tint);opacity:0;transition:opacity .4s, transform .5s var(--ease-out);z-index:-1;position:absolute;inset:0 -1.5rem;transform:scaleY(.92)}.service:hover:before{opacity:1;transform:scaleY(1)}.service-index{font-family:var(--display);color:var(--coral-deep);font-size:1rem}.service h3{font-size:clamp(1.9rem,3vw,2.9rem)}.service-body p{color:var(--ink-soft);max-width:48ch}.tags{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.tags li{border:1px solid var(--line);color:var(--harbour);border-radius:999px;padding:.35rem .75rem;font-size:.78rem;font-weight:600}.service-extras{flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin-top:1.1rem;display:flex}.service-extras .label{letter-spacing:.14em;text-transform:uppercase;color:var(--coral-deep);font-size:.68rem;font-weight:600}.service-extras ul{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.service-extras li{background:var(--coral-bright);color:var(--forest-deep);border:1px solid var(--coral-bright);border-radius:999px;padding:.35rem .8rem;font-size:.78rem;font-weight:600}.service-cta{align-self:center}.service-cta .circle{border:1px solid var(--line);width:60px;height:60px;transition:background .4s, color .4s, transform .5s var(--ease-out);border-radius:50%;place-items:center;display:grid}.service:hover .service-cta .circle{background:var(--harbour-deep);color:var(--cloud);transform:rotate(-45deg)}.steps{counter-reset:step;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:1.5rem;display:grid}.step{border-radius:var(--radius);background:var(--harbour);border:1px solid var(--line-light);transition:transform .6s var(--ease-out), border-color .4s;padding:2rem 1.75rem 1.75rem;position:relative;overflow:hidden}.step:hover{border-color:#9fe1cb66;transform:translateY(-6px)}.step .num{font-family:var(--serif);color:var(--on-forest-soft);letter-spacing:-.01em;font-size:3rem;font-weight:500;line-height:1}.step h3{margin-top:1.25rem;font-size:1.6rem}.step p{color:var(--on-forest-soft);margin-top:.75rem;font-size:.98rem}.step .glow{aspect-ratio:1;filter:blur(30px);opacity:0;background:radial-gradient(circle,#12303b40,#0000 65%);border-radius:50%;width:90%;transition:opacity .6s;position:absolute;bottom:-60%;right:-40%}.step:hover .glow{opacity:1}.steps.light .step{background:var(--paper);border-color:var(--sand-line)}.steps.light .step .num{color:var(--forest)}.steps.light .step p{color:var(--ink-soft)}.portrait{aspect-ratio:4/5;border-radius:var(--radius);background:linear-gradient(160deg, var(--harbour), var(--harbour-deep) 60%);color:var(--cloud);isolation:isolate;place-items:center;display:grid;position:relative;overflow:hidden}.portrait:before{content:"";background:radial-gradient(circle at 20% 20%,#9fe1cb59,#0000 45%),radial-gradient(circle at 80% 90%,#ff7a5973,#0000 50%);position:absolute;inset:0}.portrait img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.bio-portrait{float:right;width:280px;max-width:40%;margin:.5rem 0 1.25rem 2.25rem}@media (width<=640px){.bio-portrait{float:none;width:240px;max-width:100%;margin:0 auto 1.5rem}}.portrait .mark{font-family:var(--display);letter-spacing:-.05em;font-size:clamp(5rem,12vw,10rem);font-weight:300;line-height:1;position:relative}.portrait .tag{z-index:1;border:1px solid var(--line-light);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);letter-spacing:.08em;background:#f7f4ee1f;border-radius:999px;align-items:center;gap:.5rem;padding:.5rem .9rem;font-size:.78rem;display:inline-flex;position:absolute;bottom:1.5rem;left:1.5rem}.portrait .ring{border:1px solid #f7f4ee24;border-radius:50%;animation:40s linear infinite spin;position:absolute;inset:12%}.portrait .ring:after{content:"";background:var(--coral);border-radius:50%;width:10px;height:10px;position:absolute;top:-5px;left:50%}@keyframes spin{to{transform:rotate(360deg)}}.creds{gap:.6rem;margin-top:2rem;display:grid}.creds li{border-radius:var(--radius-sm);border:1px solid var(--line);background:#fff;align-items:center;gap:.8rem;padding:.85rem 1rem;font-size:.95rem;font-weight:500;display:flex}.creds li i{background:var(--seafoam-tile);width:22px;height:22px;color:var(--harbour-deep);border-radius:50%;flex:none;place-items:center;display:grid}.quotes{grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));gap:1.5rem;display:grid}.quote{border-radius:var(--radius);border:1px solid var(--line);background:#fff;margin:0;padding:2.25rem 2rem 2rem;position:relative}.quote:before{content:"“";font-family:var(--display);color:var(--coral-deep);opacity:.6;font-size:5rem;line-height:1;position:absolute;top:.4rem;left:1.4rem}.quote p{font-family:var(--display);letter-spacing:-.01em;font-size:clamp(1.25rem,1.8vw,1.6rem);line-height:1.35;position:relative}.quote figcaption{color:var(--ink-soft);align-items:center;gap:.6rem;margin-top:1.5rem;font-size:.85rem;display:flex}.quote figcaption:before{content:"";background:var(--coral);width:18px;height:1px}.stars{color:var(--coral-deep);gap:.2rem;margin-bottom:1rem;display:flex}.info{grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));gap:1.5rem;display:grid}.info-card{border-radius:var(--radius);border:1px solid var(--line);background:#fff;align-content:start;gap:1rem;padding:1.75rem;display:grid}.info-card address{font-style:normal;line-height:1.55}.hours{gap:.5rem;margin:0;display:grid}.hours div{border-bottom:1px dashed var(--line);justify-content:space-between;gap:1rem;padding-bottom:.5rem;font-size:.95rem;display:flex}.hours dt{color:var(--ink-soft)}.hours dd{font-variant-numeric:tabular-nums;margin:0}.price-row{border-bottom:1px dashed var(--line);justify-content:space-between;align-items:baseline;gap:1rem;padding-bottom:.5rem;display:flex}.price-row strong{font-family:var(--display);letter-spacing:-.02em;font-size:1.5rem;font-weight:600}.price-row strong small{font-family:var(--sans);color:var(--ink-soft);margin-left:.35rem;font-size:.75rem}.note{color:var(--ink-soft);font-size:.85rem}.cta{background:var(--forest-deep);color:var(--on-forest);padding-block:clamp(6rem,12vw,11rem);position:relative;overflow:hidden}.cta-inner{z-index:1;align-items:end;gap:3rem;display:grid;position:relative}@media (width>=900px){.cta-inner{grid-template-columns:1.4fr 1fr}}.cta h2{letter-spacing:-.01em;font-size:clamp(2.5rem,6vw,6.2rem);line-height:1.07}.cta-aside{color:var(--on-forest-soft);gap:1.5rem;display:grid}.cta-aside>p{text-wrap:balance}.cta-aside>p+div{margin-top:calc(var(--space-cta) - 1.5rem)}.cta-aside .phone{font-family:var(--serif);color:var(--on-forest);font-size:1.6rem}.footer{background:var(--forest-deep);color:var(--on-forest);border-top:1px solid var(--line-dark);padding-top:clamp(3rem,6vw,5rem);overflow:hidden}.footer-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:2.5rem;display:grid}.footer h4{font-family:var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--on-forest-soft);margin-bottom:1rem;font-size:.72rem}.footer-logo{width:64px;height:auto;margin-bottom:1.5rem;display:block}.footer-statement{font-family:var(--serif);letter-spacing:-.01em;max-width:18em;font-size:clamp(1.4rem,2vw,1.9rem);font-weight:500;line-height:1.2}.footer ul{color:var(--on-forest-soft);gap:.5rem;font-size:.95rem;display:grid}.footer ul a{transition:color .3s}.footer ul a:hover{color:var(--on-forest)}.accreds{flex-wrap:wrap;gap:.6rem;margin-top:1.5rem;display:flex}.accred{border-radius:var(--radius-sm);border:1px solid var(--line-dark);letter-spacing:.06em;color:var(--on-forest-soft);flex-direction:column;padding:.6rem .9rem;font-size:.68rem;display:inline-flex}.accred strong{color:var(--on-forest);letter-spacing:.04em;font-size:.85rem}.accred-logo{background:var(--paper);border-color:#0000;flex-direction:row;align-items:center;padding:.5rem .8rem;transition:transform .3s,box-shadow .3s}.accred-logo img{width:auto;height:2.6rem;display:block}.accred-logo-plain{background:0 0;padding:0}.accred-logo-plain img{height:3.2rem}.accred-logo:hover,.accred-logo:focus-visible{transform:translateY(-2px);box-shadow:0 8px 24px #00000040}.footer-wordmark{font-family:var(--serif);letter-spacing:-.02em;text-align:center;color:#0000;-webkit-text-stroke:1px var(--line-dark);-webkit-user-select:none;user-select:none;white-space:nowrap;margin-top:4rem;margin-bottom:-.15em;font-size:clamp(3rem,13vw,13rem);font-weight:500;line-height:.9}.footer-bottom{border-top:1px solid var(--line-dark);color:var(--on-forest-soft);flex-wrap:wrap;justify-content:space-between;gap:1rem;padding-block:1.5rem;font-size:.8rem;display:flex}.footer-bottom p{margin:0}.footer-legal-identity{text-align:right;gap:.25rem;max-width:32em;display:grid}@media (width<=640px){.footer-legal-identity{text-align:left}}.page-hero{background:var(--cream-2);color:var(--ink);padding-top:clamp(6rem,8vw,7.25rem);padding-bottom:clamp(2rem,3vw,2.75rem);position:relative;overflow:hidden}.page-hero-inner{z-index:1;align-items:end;gap:1.25rem;display:grid;position:relative}@media (width>=900px){.page-hero-inner{grid-template-columns:1.5fr 1fr;gap:2rem}}.page-hero h1{letter-spacing:-.01em;font-size:clamp(2.5rem,6.2vw,6.4rem);line-height:1.07}.page-hero .lead{color:var(--ink-soft);text-wrap:balance}.page-hero-aside{justify-items:start;gap:1.5rem;display:grid}.page-hero-aside>.lead+:is(.btn,.btn-row){margin-top:calc(var(--space-cta-hero) - 1.5rem)}@media (width>=900px){.page-hero-aside{text-align:right;justify-items:end}.page-hero-aside .btn-row{justify-content:flex-end}}.page-hero--compact .page-hero-inner{align-items:start}.page-hero--compact h1{font-size:clamp(2rem,4vw,3.5rem);line-height:1.1}.features{grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:1.25rem;display:grid}.feature{border-radius:var(--radius-lg);background:var(--paper);border:1px solid var(--sand-line);transition:transform .6s var(--ease-out), box-shadow .6s var(--ease-out);padding:2rem 1.75rem 1.75rem;position:relative;overflow:hidden}.feature:hover{box-shadow:var(--shadow-card);transform:translateY(-6px)}.feature .icon{background:var(--paper);width:46px;height:46px;box-shadow:var(--shadow-sm);color:var(--forest);border-radius:50%;place-items:center;margin-bottom:1.5rem;display:grid}.feature h3{font-size:1.5rem}.feature p{color:var(--ink-soft);margin-top:.75rem;font-size:.98rem}.feature .idx{font-family:var(--serif);color:var(--forest);font-size:.95rem;position:absolute;top:1.5rem;right:1.75rem}.feature--sage{background:var(--sage)}.feature--peach{background:var(--peach)}.feature--sky{background:var(--sky)}.feature--blush{background:var(--blush)}.feature-cta{margin-top:1.5rem}.feature-cta .circle{border:1px solid var(--forest);width:44px;height:44px;color:var(--forest);transition:background .4s, color .4s, transform .5s var(--ease-out);border-radius:50%;place-items:center;display:grid}.feature:hover .feature-cta .circle{background:var(--forest);color:var(--on-forest);transform:rotate(-45deg)}.col-list{border-top:1px solid var(--line);grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:0 2.5rem;margin-top:2rem;display:grid}.col-list li{border-bottom:1px solid var(--line);align-items:flex-start;gap:1rem;min-width:0;padding:.9rem 0;font-size:.98rem;display:flex}.col-list li:before{content:"";background:var(--coral);border-radius:50%;flex:none;width:8px;height:8px;margin-top:.5rem}.split{align-items:start;gap:3rem;display:grid}@media (width>=900px){.split{grid-template-columns:1fr 1fr;gap:5rem}.split .sticky{position:sticky;top:6rem}}.pricing{grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));gap:1.5rem;display:grid}.price-card{border-radius:var(--radius-lg);background:var(--paper);border:1px solid var(--sand-line);transition:transform .6s var(--ease-out);align-content:start;gap:1.25rem;padding:2.25rem 2rem 2rem;display:grid;position:relative;overflow:hidden}.price-card:hover{transform:translateY(-6px)}.price-card.featured{background:var(--forest-deep);color:var(--on-forest);border-color:#0000}.price-card.featured .muted,.price-card.featured .ticks li{color:var(--on-forest-soft)}.price-card .badge{background:var(--on-forest);color:var(--forest-deep);letter-spacing:.12em;text-transform:uppercase;border-radius:999px;padding:.35rem .75rem;font-size:.7rem;font-weight:700;position:absolute;top:1.25rem;right:1.25rem}.price-card h3{font-size:1.7rem}.price-card>.btn{margin-top:calc(var(--space-cta) - 1.25rem)}.price{font-family:var(--display);letter-spacing:-.04em;align-items:baseline;gap:.5rem;font-size:clamp(3rem,5.2vw,4.6rem);font-weight:600;line-height:1;display:flex}.price small{font-family:var(--sans);letter-spacing:.02em;color:var(--ink-soft);font-size:.85rem}.price-card.featured .price small{color:var(--on-forest-soft)}.ticks{color:var(--ink-soft);gap:.7rem;font-size:.98rem;display:grid}.ticks li{align-items:flex-start;gap:.75rem;display:flex}.ticks li svg{color:var(--forest);flex:none;margin-top:.25rem}.faq{border-top:1px solid var(--line);display:grid}.faq-item{border-bottom:1px solid var(--line)}.faq-q{text-align:left;width:100%;font-family:var(--display);letter-spacing:-.015em;justify-content:space-between;align-items:center;gap:2rem;padding:1.5rem 0;font-size:clamp(1.15rem,1.7vw,1.45rem);font-weight:600;display:flex}.faq-q .plus{border:1px solid var(--line);width:34px;height:34px;transition:background .4s, color .4s, transform .5s var(--ease-out);border-radius:50%;flex:none;position:relative}.faq-q .plus:before,.faq-q .plus:after{content:"";background:currentColor;width:12px;height:1.5px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.faq-q .plus:after{transform:translate(-50%,-50%)rotate(90deg)}.faq-q[aria-expanded=true] .plus{background:var(--harbour-deep);color:var(--cloud);transform:rotate(45deg)}.faq-a{overflow:hidden}.faq-a p{color:var(--ink-soft);max-width:60ch;padding-bottom:1.5rem}.form{border-radius:var(--radius);border:1px solid var(--line);background:#fff;gap:1.25rem;padding:clamp(1.5rem,3vw,2.5rem);display:grid}.form-row{grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:1.25rem;display:grid}.field{gap:.5rem;display:grid}.field label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);font-size:.8rem;font-weight:600}.field label span{text-transform:none;letter-spacing:0;font-weight:400}.field input,.field select,.field textarea{width:100%;font:inherit;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--cloud);color:var(--harbour-ink);padding:.95rem 1.1rem;transition:border-color .3s,box-shadow .3s,background .3s}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--harbour-deep);background:#fff;outline:none;box-shadow:0 0 0 4px #9fe1cb59}.field textarea{resize:vertical;min-height:130px}.field .error{color:#c0392b;min-height:1em;font-size:.82rem}.field.invalid input,.field.invalid textarea{border-color:#c0392b}.form-status{color:var(--harbour);font-size:.95rem}.choice-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,9rem),1fr));gap:.6rem;display:grid}.choice{position:relative}.choice input{opacity:0;cursor:pointer;position:absolute;inset:0}.choice span{border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--cloud);text-align:center;padding:.85rem 1rem;font-size:.9rem;font-weight:500;transition:all .3s;display:block}.choice input:checked+span{background:var(--harbour-deep);color:var(--cloud);border-color:var(--harbour-deep)}.choice input:focus-visible+span{box-shadow:0 0 0 4px #9fe1cb80}.success{border-radius:var(--radius);background:var(--forest-deep);color:var(--on-forest);justify-items:start;gap:1rem;padding:clamp(2rem,4vw,3rem);display:grid}.success h3{font-size:2rem}.success>.btn{margin-top:calc(var(--space-cta) - 1rem)}.success p{color:var(--on-forest-soft)}.email-template{background:var(--line-dark);border:1px solid var(--line-dark);width:100%;color:var(--on-forest-soft);font-family:var(--sans);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:14px;margin:0;padding:1rem 1.1rem;font-size:.9rem;line-height:1.6}.contact-list{gap:.9rem;margin-top:2rem;display:grid}.contact-list li{border-radius:var(--radius-sm);border:1px solid var(--line);background:#fff;align-items:flex-start;gap:1rem;padding:1rem 1.15rem;display:flex}.contact-list .ico{background:var(--sage);width:36px;height:36px;color:var(--forest);border-radius:10px;flex:none;place-items:center;display:grid}.contact-list small{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:.15rem;font-size:.72rem;display:block}.numbers{border-top:1px solid var(--line);grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));gap:1.5rem;padding-top:2.5rem;display:grid}.number strong{font-family:var(--display);letter-spacing:-.04em;font-size:clamp(2.4rem,4.4vw,3.8rem);font-weight:600;line-height:1;display:block}.number strong em{color:var(--forest)}.number span{color:var(--ink-soft);margin-top:.6rem;font-size:.9rem;display:block}.mobile-action-bar{z-index:90;padding:.75rem var(--gutter);padding-bottom:calc(.75rem + env(safe-area-inset-bottom));background:color-mix(in srgb, var(--cream) 92%, transparent);-webkit-backdrop-filter:blur(16px)saturate(140%);border-top:1px solid var(--hairline);gap:.75rem;display:none;position:fixed;bottom:0;left:0;right:0}.mobile-action-bar[aria-hidden=true]{display:none!important}.mobile-action-bar .btn{justify-content:center;padding:.85rem 1rem;font-size:.88rem}@media (width<=767px){.mobile-action-bar{display:flex}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.status{background:var(--sage);color:var(--forest);border-radius:999px;align-items:center;gap:.5rem;margin-top:.75rem;padding:.35rem .75rem .35rem .5rem;font-size:.78rem;display:inline-flex}.info-card .status{background:var(--sage);color:var(--forest)}.status i{background:var(--forest);border-radius:50%;width:8px;height:8px;animation:2s infinite pulse;box-shadow:0 0 #12303b80}.info-card .status i{background:var(--forest)}.status.closed i{background:var(--ink-soft);animation:none}@keyframes pulse{0%{box-shadow:0 0 #12303b80}to{box-shadow:0 0 0 10px #12303b00}}.certified-band{background:var(--cream-2);color:var(--forest);padding-block:1.5rem}.certified-band-inner{letter-spacing:.01em;text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem 0;font-size:.92rem;font-weight:500;display:flex}.certified-claim{align-items:center;gap:.9rem;display:inline-flex}.certified-claim i{background:var(--forest);opacity:.4;border-radius:50%;flex:none;align-self:center;width:4px;height:4px;margin-right:.9rem}.niamh-photo img,img.niamh-photo{object-position:50% 12%}.insurer-badges{border-top:1px solid var(--hairline);flex-wrap:wrap;gap:.6rem;margin-top:1.5rem;padding-top:1.5rem;display:flex}.insurer-badge{letter-spacing:.06em;border:1px solid var(--sand-line);color:var(--ink-soft);border-radius:999px;padding:.4rem .85rem;font-size:.72rem;font-weight:600}.location-hours-band .info-card{background:var(--paper)}.faq-teaser{gap:1rem;display:grid}.icon-tile{background:var(--paper);width:56px;height:56px;box-shadow:var(--shadow-sm);color:var(--forest);border-radius:50%;place-items:center;margin-bottom:1.5rem;display:grid}.feature h3{color:var(--ink)}.photo-collage{grid-template-rows:auto auto;grid-template-columns:1.3fr 1fr;gap:1rem;margin:.5rem 0 2rem;display:grid;position:relative}.photo-collage-item{border-radius:var(--radius);background:var(--seafoam-tile);overflow:hidden}.photo-collage-item img{object-fit:cover;width:100%;height:100%;display:block}.photo-collage-main{aspect-ratio:4/5;grid-row:1/3}.photo-collage-detail{aspect-ratio:1}.photo-collage-detail img{object-position:55% 50%}.photo-collage-wide{aspect-ratio:16/9}@media (width<=640px){.photo-collage{grid-template-rows:auto;grid-template-columns:1fr}.photo-collage-main{aspect-ratio:4/5;grid-row:auto}}.section-photo{border-radius:var(--radius);aspect-ratio:4/3;background:var(--seafoam-tile);margin:2rem 0 0;overflow:hidden}.section-photo img{object-fit:cover;object-position:60% 40%;width:100%;height:100%;display:block}.photo-ph{aspect-ratio:4/5;border-radius:var(--radius-lg);background:var(--sage);color:var(--forest);text-align:center;place-content:center;justify-items:center;gap:.75rem;padding:1.5rem;display:grid}.photo-ph[data-tint=peach]{background:var(--peach)}.photo-ph[data-tint=sky]{background:var(--sky)}.photo-ph[data-tint=blush]{background:var(--blush)}.photo-ph svg{opacity:.85}.photo-ph span{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);font-size:.78rem}.wave-divider{width:100%;height:clamp(40px,6vw,80px);display:block}.prose-page-header{background:var(--cream);padding:7rem 0 2.5rem}.prose-page-header h1{font-size:clamp(1.9rem,3.8vw,3.6rem)}.prose-page-header .note{margin-top:.75rem}.prose ul{gap:.6rem;padding-left:1.25rem;list-style:outside;display:grid}.prose ul li{padding-left:.25rem}.legal-gaps-callout{border:1px solid var(--sand-line);border-radius:var(--radius-sm);background:var(--sage);margin-top:2.5rem;padding:1.5rem 1.75rem}.legal-gaps-callout p+p{color:var(--ink-soft);margin-top:.5rem}.photo-band{--fig-h:118%;isolation:isolate;background:var(--cloud);align-items:center;min-height:clamp(560px,78vh,860px);display:flex;position:relative;overflow:hidden}.photo-band__bg{z-index:-3;object-fit:cover;object-position:70% 40%;width:100%;height:100%;position:absolute;inset:0}.photo-band__scrim{z-index:-2;background:linear-gradient(100deg, var(--cloud) 0%, var(--cloud) 30%, #f7f4eed9 42%, #f7f4ee4d 56%, #f7f4ee00 68%);position:absolute;inset:0}.photo-band__figure{z-index:-1;right:clamp(-6rem,-4vw,0rem);bottom:calc(var(--fig-h) * -.19);height:var(--fig-h);pointer-events:none;-webkit-user-select:none;user-select:none;width:auto;max-width:none;position:absolute}.photo-band__inner{padding-block:clamp(4rem,8vw,7rem)}.photo-band__inner>div{max-width:34rem}.photo-band__title{letter-spacing:-.01em;color:var(--ink);margin-block:1.25rem 1.5rem;font-size:clamp(2.4rem,5.2vw,4.8rem);line-height:1.07}.photo-band .lead{color:var(--ink-soft);max-width:26em}.photo-band__actions{margin-top:var(--space-cta);flex-wrap:wrap;align-items:center;gap:.875rem 1.75rem;display:flex}@media (width<=767px){.photo-band{--fig-h:64%;align-items:flex-start;min-height:920px}.photo-band__bg{object-position:75% 60%}.photo-band__scrim{background:linear-gradient(180deg, var(--cloud) 0%, var(--cloud) 36%, #f7f4eeb3 48%, #f7f4ee00 62%)}.photo-band__figure{right:50%;transform:translate(50%)}.photo-band__inner{padding-block:3.5rem 0}}.hero{background:var(--cream);color:var(--ink);padding-top:clamp(7.5rem,13vw,11rem);position:relative;overflow:hidden}@media (width>=900px){.hero{flex-direction:column;justify-content:center;height:100svh;min-height:720px;padding-top:6rem;display:flex}}.hero-media{z-index:0;position:absolute;inset:0;overflow:hidden}@media (width>=900px){.hero-media{left:40%}}.hero-media__img{object-fit:cover;object-position:62% 30%;transform-origin:62% 30%;width:100%;height:100%;position:absolute;inset:0}.hero-media:after{content:"";background:linear-gradient(90deg, var(--cream) 0%, #f7f4ee99 14%, #f7f4ee00 34%);position:absolute;inset:0}.hero-media__fade{background:linear-gradient(to bottom, #f7f4ee00, var(--cream));height:28%;position:absolute;bottom:0;left:0;right:0}@media (width<=899px){.hero{flex-direction:column;display:flex}.hero-media{aspect-ratio:4/5;order:2;margin-top:-2rem;position:relative}.hero-media__img{object-position:60% 40%}.hero-media:after{background:linear-gradient(to bottom, var(--cream) 0%, #f7f4ee00 22%)}}@media (prefers-reduced-motion:no-preference){.hero-media__img{animation:hero-img-in 1.2s var(--ease-out) both}}@keyframes hero-img-in{0%{opacity:0;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}.hero-inner{z-index:1;gap:clamp(2.5rem,5vw,4rem);padding-bottom:clamp(3rem,6vw,5rem);display:grid;position:relative}@media (width>=900px){.hero{padding-bottom:0}.hero-inner{grid-template-columns:1.05fr .95fr;align-items:center;padding-bottom:0}}.hero-copy{gap:1.5rem;max-width:42rem;display:grid}@media (width>=900px){.hero-copy{gap:1.25rem}.hero .hero-title{font-size:clamp(2.8rem,5vw,4.6rem)}}.hero-eyebrow{line-height:1.6}.hero-title{letter-spacing:-.01em;margin:0;font-size:clamp(2.8rem,6vw,6rem);line-height:1.07}.hero-title .line{overflow-clip-margin:.22em;display:block;overflow:clip}.hero-title .line>span{padding-block:.04em .14em;display:inline-block}.hero-lead{max-width:36ch}.hero-actions{margin-top:var(--space-cta-hero);flex-wrap:wrap;align-items:center;gap:.875rem 1rem;display:flex}.section-photo-tall{aspect-ratio:4/5}.section-photo-tall img{object-position:50% 45%}.section-photo img[src*=acupuncture-needle-placement-back]{object-position:35% 55%}.section-photo img[src*=acupuncture-two-hand-technique]{object-position:50% 30%}.section-photo img[src*=acupuncture-session-overview]{object-position:50% 50%}.section-photo-ph{margin:2rem 0 0}.photo-collage-2up{grid-template-rows:auto}.photo-collage-2up .photo-collage-main{grid-row:auto}.photo-collage-2up .photo-collage-wide{aspect-ratio:4/5}@media (width<=640px){.photo-collage-2up{grid-template-columns:1fr}}
