:root{--navy:#29275D;--cyan:#10C5D7;--white:#fff;--ice:#EAFBFD;--paper:#F7F9FB;--content:1440px;--header-h:104px;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--paper)}
body{margin:0;color:var(--navy);background:var(--paper);font-family:'Nunito',Manrope,Arial,sans-serif;overflow-x:hidden}
a,button{font:inherit}
a:focus-visible,button:focus-visible{outline:3px solid #ffbf3c;outline-offset:4px}
.loader{position:fixed;z-index:100;inset:0;display:grid;place-content:center;gap:20px;text-align:center;background:var(--paper);transition:opacity .65s var(--ease),visibility .65s}
.loader.is-hidden{opacity:0;visibility:hidden}
.loader__mark img{width:220px}.loader p{margin:0;font-size:14px;font-weight:700;letter-spacing:.03em}.loader__track{width:min(320px,70vw);height:3px;background:rgba(41,39,93,.12);overflow:hidden}.loader__track i{display:block;width:0;height:100%;background:var(--cyan);transition:width .2s}.loader__open{margin-top:.4rem}.loader small{display:block;max-width:20rem;margin-top:.9rem;color:var(--ink);font-size:.72rem;line-height:1.45;text-align:center}
.scene-stage{position:fixed;z-index:0;inset:0;overflow:hidden;background:var(--paper)}
.scene-canvas{position:absolute;inset:0;width:100%;height:100%;opacity:0}
.scene-canvas.is-active{opacity:1}
.scene-stage__veil{position:absolute;inset:0;background:linear-gradient(90deg,rgba(247,249,251,.62) 0%,rgba(247,249,251,.48) 25%,rgba(247,249,251,.24) 48%,rgba(247,249,251,.06) 72%,rgba(247,249,251,.1) 100%);pointer-events:none}
.site-header{position:fixed;z-index:50;top:0;left:0;width:100%;height:var(--header-h);padding:22px max(clamp(24px,4vw,68px),calc((100% - var(--content))/2));display:flex;align-items:center;gap:42px;background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(255,255,255,.7) 58%,rgba(255,255,255,0));transition:height .3s,background .3s,box-shadow .3s,backdrop-filter .3s}
.site-header.is-scrolled{height:78px;background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(255,255,255,.68) 58%,rgba(255,255,255,0));backdrop-filter:blur(12px);box-shadow:none}
.brand img{display:block;width:200px}.nav{display:flex;gap:42px;margin-left:auto}.nav a{color:var(--navy);font-size:16px;font-weight:700;text-decoration:none;transition:color .2s}.nav a:hover{color:var(--cyan)}
.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:54px;padding:15px 25px;border:0;border-radius:16px;appearance:none;font-family:inherit;color:#fff;background:var(--cyan);box-shadow:0 12px 28px rgba(16,197,215,.25);font-size:15px;font-weight:800;text-decoration:none;cursor:pointer;transition:transform .25s var(--ease),box-shadow .25s}
.button:hover{transform:translateY(-3px);box-shadow:0 18px 34px rgba(16,197,215,.38)}.button span{font-size:22px;font-weight:400}.button--header{margin-left:18px;padding-inline:28px}.menu-toggle{display:none}
main{position:relative;z-index:2}.scene-section{position:relative;min-height:155svh}.scene-content{position:sticky;z-index:2;top:0;min-height:100svh;padding:calc(var(--header-h) + 52px) max(clamp(42px,7vw,108px),calc((100% - var(--content))/2)) 64px;display:flex;align-items:center}
.ocean-decor{position:absolute;z-index:1;inset:0;overflow:hidden;pointer-events:none}.ocean-creature{position:absolute;opacity:.46;will-change:transform;filter:drop-shadow(0 10px 20px rgba(16,197,215,.18))}.ocean-creature svg,.ocean-creature__asset{display:block;width:100%;height:100%;object-fit:contain;overflow:visible;animation:oceanBob 5.8s ease-in-out infinite}.ocean-creature__asset{filter:saturate(.92) brightness(1.06)}.ocean-creature svg path{fill:rgba(16,197,215,.3);stroke:rgba(41,39,93,.48);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.ocean-creature svg circle{fill:var(--navy)}.ocean-creature--bubbles{right:8%;top:21%;width:94px;height:145px}.ocean-creature--bubbles i{position:absolute;display:block;border:1.5px solid rgba(16,197,215,.62);border-radius:50%;background:radial-gradient(circle at 34% 30%,rgba(255,255,255,.65),rgba(16,197,215,.09) 44%,transparent 47%);box-shadow:inset -4px -5px 10px rgba(16,197,215,.08)}.ocean-creature--bubbles i:nth-child(1){width:37px;height:37px;top:0;right:4px}.ocean-creature--bubbles i:nth-child(2){width:22px;height:22px;top:45px;left:7px}.ocean-creature--bubbles i:nth-child(3){width:46px;height:46px;top:72px;right:17px}.ocean-creature--bubbles i:nth-child(4){width:14px;height:14px;bottom:0;left:33px}.ocean-creature--fish{right:9%;top:54%;width:205px;height:155px}.ocean-creature--fish .ocean-creature__asset{animation-duration:6.5s}.ocean-creature--jelly{right:9%;top:22%;width:142px;height:205px}.ocean-creature--bubbles-small{right:20%;top:58%;width:66px;height:94px}.ocean-creature--bubbles-small i:nth-child(1){width:25px;height:25px}.ocean-creature--bubbles-small i:nth-child(2){width:16px;height:16px;top:32px}.ocean-creature--bubbles-small i:nth-child(3){width:33px;height:33px;top:54px;right:5px}.ocean-creature--school{left:5%;top:18%;width:255px;height:185px}.ocean-creature--school .ocean-creature__asset{animation:none}.ocean-creature--dolphin{right:5%;top:24%;width:300px;height:190px}.ocean-creature--dolphin .ocean-creature__asset{animation-duration:6.8s}.ocean-creature--bubbles-care{right:19%;top:55%;width:72px;height:108px}@keyframes oceanBob{50%{transform:translateY(-10px) rotate(2deg)}}
.section-kicker{margin:0 0 18px;color:var(--cyan);font-size:13px;font-weight:800;letter-spacing:.09em}.reveal-copy>*{opacity:0;transform:translateY(30px);transition:opacity .58s var(--ease),transform .58s var(--ease);will-change:opacity,transform}.scene-section.is-revealed .reveal-copy>*{opacity:1;transform:none}.scene-section.is-revealed .reveal-copy>*:nth-child(2){transition-delay:.055s}.scene-section.is-revealed .reveal-copy>*:nth-child(3){transition-delay:.11s}.scene-section.is-revealed .reveal-copy>*:nth-child(4){transition-delay:.165s}
.hero-content{align-items:flex-start}.hero-copy{position:relative;z-index:4;width:min(760px,57vw)}.hero-copy h1{margin:0;font-size:clamp(80px,8.35vw,150px);line-height:.87;letter-spacing:-.09em;font-weight:800}.hero-copy h1 span{display:block}.hero-copy .outline{color:transparent;-webkit-text-stroke:2px var(--cyan)}.hero-lead{margin:28px 0 30px;font-size:clamp(17px,1.35vw,22px);line-height:1.4}.vertical-label{position:absolute;left:max(34px,calc((100% - var(--content))/2 - 55px));top:36%;margin:0;writing-mode:vertical-rl;transform:rotate(180deg);font-size:12px;letter-spacing:.04em}.vertical-label::before{content:'✦';color:var(--cyan);font-size:20px;margin-bottom:25px}
.hero-logo-mark{position:absolute;z-index:5;right:7.5%;bottom:5%;width:clamp(235px,22vw,390px);aspect-ratio:.77;filter:drop-shadow(0 28px 38px rgba(7,115,160,.3));animation:logoFloat 6.5s ease-in-out infinite;perspective:900px}.hero-logo-mark__glow{position:absolute;inset:18% -12% 2% -18%;border-radius:50%;background:radial-gradient(circle,rgba(16,197,215,.4),rgba(16,197,215,.14) 40%,transparent 72%);filter:blur(22px)}.hero-logo-mark__boy,.hero-logo-mark__boy::after,.hero-logo-mark__star{position:absolute;background:linear-gradient(145deg,#fff 0%,#7be7ef 18%,#10C5D7 48%,#137db4 72%,#29275D 100%);-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain;mask-repeat:no-repeat;mask-position:center;mask-size:contain}.hero-logo-mark__boy{inset:15% 3% 0 29%;-webkit-mask-image:url('../assets/images/logo-boy-mask.png?v=20260911-1');mask-image:url('../assets/images/logo-boy-mask.png?v=20260911-1');filter:drop-shadow(-10px 12px 16px rgba(16,197,215,.28)) drop-shadow(12px 18px 24px rgba(41,39,93,.2));transform-style:preserve-3d;will-change:transform}.hero-logo-mark__boy::after{content:'';inset:0;-webkit-mask-image:url('../assets/images/logo-boy-mask.png?v=20260911-1');mask-image:url('../assets/images/logo-boy-mask.png?v=20260911-1');background:linear-gradient(105deg,transparent 20%,rgba(255,255,255,.75) 43%,transparent 62%);opacity:.7}.hero-logo-mark__star{display:block;will-change:transform,opacity;filter:drop-shadow(0 0 10px rgba(16,197,215,.7));animation:brandTwinkle 2.8s ease-in-out infinite}.hero-logo-mark__star--large{left:1%;top:2%;width:39%;height:30%;-webkit-mask-image:url('../assets/images/logo-star-large-mask.png');mask-image:url('../assets/images/logo-star-large-mask.png')}.hero-logo-mark__star--left{left:0;top:33%;width:29%;height:23%;-webkit-mask-image:url('../assets/images/logo-star-bottom-mask.png');mask-image:url('../assets/images/logo-star-bottom-mask.png');animation-delay:-.7s}.hero-logo-mark__star--bottom{left:-3%;bottom:0;width:25%;height:20%;-webkit-mask-image:url('../assets/images/logo-star-left-mask.png');mask-image:url('../assets/images/logo-star-left-mask.png');animation-delay:-1.4s}.hero-logo-mark__star--top{right:8%;top:0;width:24%;height:19%;-webkit-mask-image:url('../assets/images/logo-star-top-mask.png');mask-image:url('../assets/images/logo-star-top-mask.png');animation-delay:-2s}.hero-logo-mark__star--small{left:27%;top:55%;width:18%;height:14%;-webkit-mask-image:url('../assets/images/logo-star-small-mask.png');mask-image:url('../assets/images/logo-star-small-mask.png');animation-delay:-2.4s}.spark{position:absolute;width:28px;filter:drop-shadow(0 0 8px rgba(16,197,215,.65));animation:twinkle 2.5s ease-in-out infinite}.spark--hero-a{right:20%;top:47%}.spark--hero-b{left:8%;bottom:15%;width:20px}
.trust-content{display:block;padding-top:20vh;background:linear-gradient(90deg, rgba(247,249,251,.94), rgba(247,249,251,.5) 72%, rgba(247,249,251,.02) 100%);}.trust-content .section-kicker{text-transform:uppercase}.trust-content h2{max-width:980px;font-weight:500}.trust-content h2 em{color:var(--cyan);font-style:normal}.trust-statement{display:flex;align-items:center;gap:32px;max-width:1320px}.trust-statement strong{font-size:clamp(150px,18vw,300px);line-height:.8;font-weight:500;letter-spacing:-.08em}.trust-statement span{font-size:clamp(44px,5.4vw,86px);line-height:.98;letter-spacing:-.07em}.trust-statement em{color:var(--cyan);font-style:normal}.trust-note{max-width:840px;margin:36px 0 52px;font-size:18px;line-height:1.55}.section-rule{height:1px;background:rgba(41,39,93,.25);position:relative}
.services-content{display:grid;grid-template-columns:minmax(360px,.9fr) 1.1fr;gap:clamp(48px,7vw,120px);background:linear-gradient(90deg,rgba(247,249,251,.14),rgba(247,249,251,.06) 52%,rgba(247,249,251,0))}
.services-panel{grid-column:2;padding:clamp(28px,4vw,64px);border:1px solid rgba(255,255,255,.72);border-radius:32px;background:rgba(247,249,251,.83);backdrop-filter:blur(16px);box-shadow:0 30px 80px rgba(41,39,93,.1)}.services-panel h2,.care-content h2,.contact-card h2,.trust-content h2{margin:0;font-size:clamp(44px,4.1vw,70px);line-height:.98;letter-spacing:-.075em}.section-description{max-width:590px;margin:25px 0 50px;font-size:17px;line-height:1.55}.section-description strong{color:var(--cyan)}
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:34px}.steps li{position:relative}.steps li:not(:last-child)::after{content:'';position:absolute;top:27px;right:-27px;width:56px;height:12px;background:url('../assets/icons/arrow.svg') center/contain no-repeat}.step-number{display:flex;align-items:flex-start;gap:7px;color:var(--cyan);font-size:clamp(46px,4vw,64px);font-weight:400;line-height:.9;letter-spacing:-.06em}.step-number img{width:.38em;margin-top:.1em}.steps h3{margin:13px 0 9px;font-size:14px}.steps p{margin:0;font-size:12px;line-height:1.5}
.care-content{display:block;padding-top:26vh;background:linear-gradient(90deg,rgba(247,249,251,.8),rgba(247,249,251,.56) 52%,rgba(247,249,251,.05))}.care-content h2{max-width:820px;font-size:clamp(58px,6.3vw,104px)}.care-content>p:not(.section-kicker){max-width:560px;margin:28px 0;font-size:19px;line-height:1.55}.text-link{display:inline-flex;gap:15px;color:var(--navy);font-weight:800;text-decoration:none;border-bottom:1px solid var(--cyan);padding-bottom:5px}.text-link span{color:var(--cyan)}
.lagoon-footer{position:relative;z-index:3;isolation:isolate;min-height:100svh;padding:clamp(90px,12vh,154px) max(clamp(34px,5vw,82px),calc((100% - var(--content))/2));overflow:hidden;background:#eafbfd url('../assets/images/marine/footer-water-caustics.png') center/cover no-repeat}.lagoon-footer::before{content:'';position:absolute;z-index:-1;inset:0;background:rgba(234,251,253,.27)}.lagoon-footer__word{position:absolute;z-index:1;right:clamp(22px,5vw,92px);top:8%;margin:0;color:transparent;-webkit-text-stroke:1.5px var(--cyan);font-size:clamp(110px,14vw,240px);font-weight:500;line-height:.75;letter-spacing:-.08em;writing-mode:vertical-rl}.lagoon-footer__lead{position:relative;z-index:3;width:min(430px,38vw)}.lagoon-footer__lead h2{margin:0;color:var(--navy);font-size:clamp(54px,5.8vw,102px);font-weight:500;line-height:.94;letter-spacing:-.075em}.lagoon-footer__lead h2 span{color:var(--cyan)}.lagoon-footer__lead>p:not(.section-kicker){max-width:270px;margin:26px 0 0;font-size:16px;line-height:1.6}.lagoon-footer__jelly{z-index:2;left:43%;top:7%;right:auto;width:clamp(260px,27vw,430px);height:clamp(370px,40vw,590px);opacity:.4}.lagoon-footer__fish{z-index:2;right:20%;top:4%;width:clamp(160px,16vw,250px);height:clamp(120px,13vw,210px);opacity:.33}.lagoon-footer__orbit{position:absolute;z-index:4;left:50%;bottom:12%;width:min(880px,67vw);min-height:180px;transform:translateX(-50%);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:clamp(18px,3vw,48px);padding:48px 68px 38px;border-top:1px solid rgba(16,197,215,.44);border-bottom:1px solid rgba(16,197,215,.3);border-radius:50%;text-align:center}.lagoon-footer__detail{display:grid;gap:8px;font-size:13px;line-height:1.45}.lagoon-footer__detail b{font-size:14px;color:var(--navy)}.lagoon-footer__detail span{color:rgba(41,39,93,.75)}.lagoon-footer__cta{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:56px;padding:15px 25px;border:1px solid rgba(255,255,255,.92);border-radius:999px;background:var(--cyan);box-shadow:0 12px 25px rgba(16,197,215,.32);color:#fff;font-size:15px;font-weight:800;text-decoration:none;transition:transform .25s var(--ease),box-shadow .25s}.lagoon-footer__cta:hover{transform:translateY(-3px);box-shadow:0 18px 34px rgba(16,197,215,.4)}.lagoon-footer__cta span{font-size:22px;font-weight:400}.lagoon-footer__phone{grid-column:2;color:var(--navy);font-size:13px;font-weight:800;text-decoration:none}.lagoon-footer__base{position:absolute;z-index:4;left:max(clamp(34px,5vw,82px),calc((100% - var(--content))/2));bottom:34px;display:flex;align-items:flex-end;gap:28px}.lagoon-footer__base img{width:158px;height:auto}.lagoon-footer__base small{color:rgba(41,39,93,.64);font-size:11px}.noscript{position:fixed;z-index:200;left:20px;right:20px;bottom:20px;padding:16px;background:white;border:1px solid var(--navy)}
@keyframes logoFloat{50%{transform:translateY(-16px) rotate(1.5deg)}}@keyframes brandTwinkle{50%{opacity:.48;filter:drop-shadow(0 0 20px rgba(16,197,215,.95)) brightness(1.18)}}@keyframes twinkle{50%{opacity:.4;transform:scale(.7)}}
@media(max-width:900px){:root{--header-h:78px}.site-header{height:78px;padding:15px 22px}.brand img{width:155px}.nav{position:absolute;top:78px;left:0;width:100%;display:none;flex-direction:column;gap:20px;padding:26px;background:rgba(255,255,255,.96);box-shadow:0 16px 30px rgba(41,39,93,.12)}.nav.is-open{display:flex}.button--header{display:none}.menu-toggle{display:grid;gap:6px;margin-left:auto;padding:10px;border:0;background:transparent}.menu-toggle span{display:block;width:27px;height:2px;background:var(--navy)}.scene-content{padding:120px 28px 46px}.hero-copy{width:100%}.hero-copy h1{font-size:clamp(58px,15vw,102px)}.vertical-label{display:none}.hero-logo-mark{right:auto;left:36%;bottom:4%;width:250px}.spark--hero-a{right:8%;top:52%}.trust-content{padding-top:18vh}.trust-statement{display:block}.trust-statement strong{display:block;font-size:150px}.trust-statement span{font-size:clamp(40px,9vw,62px)}.services-content{display:block}.services-panel{padding:28px}.steps{gap:14px}.steps li:not(:last-child)::after{display:none}.care-content{padding-top:22vh}.ocean-creature{opacity:.38;transform:scale(.78)}.ocean-creature--school{left:4%;top:12%}.ocean-creature--jelly{right:4%;top:20%}.ocean-creature--dolphin{right:3%;top:16%}.lagoon-footer{min-height:920px;padding-top:110px}.lagoon-footer__jelly{left:40%;top:9%;width:300px;height:430px}.lagoon-footer__fish{right:11%;top:6%}.lagoon-footer__orbit{bottom:14%;width:86%;padding:44px 34px 34px;gap:16px}.lagoon-footer__word{right:25px}.scene-stage__veil{background:linear-gradient(180deg,rgba(247,249,251,.38),rgba(247,249,251,.6) 54%,rgba(247,249,251,.76))}}
@media(max-width:560px){.scene-section{min-height:145svh}.hero-content{align-items:flex-start}.hero-copy{z-index:5}.hero-copy h1{font-size:16.4vw}.hero-lead{font-size:16px}.hero-logo-mark{z-index:3;right:5%;left:auto;width:158px;bottom:3%}.trust-content{padding-top:22vh}.trust-statement strong{font-size:125px}.trust-note{font-size:16px}.services-content{padding-top:100px}.services-panel h2{font-size:40px}.steps{grid-template-columns:1fr;gap:24px}.steps li{padding-left:76px}.step-number{position:absolute;left:0;top:0;font-size:43px}.steps h3{margin-top:0}.steps p{font-size:12px}.care-content h2{font-size:52px}.lagoon-footer{min-height:760px;padding:96px 24px 44px}.lagoon-footer__lead{width:75%;z-index:5}.lagoon-footer__lead h2{font-size:54px}.lagoon-footer__jelly{left:38%;top:4%;width:190px;height:280px;opacity:.27}.lagoon-footer__fish{right:-6%;top:26%;width:145px;height:110px}.lagoon-footer__word{right:10px;top:9%;font-size:90px}.lagoon-footer__orbit{left:24px;right:24px;bottom:94px;width:auto;min-height:260px;transform:none;grid-template-columns:1fr;padding:28px 16px;border:0;border-radius:0}.lagoon-footer__phone{grid-column:auto;order:4}.lagoon-footer__cta{order:2}.lagoon-footer__base{left:24px;right:24px;bottom:22px;justify-content:space-between;gap:12px}.lagoon-footer__base img{width:126px}.lagoon-footer__base small{max-width:130px;text-align:right;font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.loader{display:none}.scene-stage{display:none}.scene-section,.contact-section{min-height:100svh;background-image:linear-gradient(90deg,rgba(247,249,251,.78),rgba(247,249,251,.28)),var(--fallback-image);background-size:cover;background-position:center}.reveal-copy>*{opacity:1;transform:none;transition:none}.hero-logo-mark,.hero-logo-mark__star,.spark,.ocean-creature svg{animation:none}.scene-canvas{display:none}}
/* Footer focal point refinement: the medusa is the central glass object. */
.lagoon-footer__jelly{left:41%;top:1%;width:clamp(320px,32vw,460px);height:clamp(420px,43vw,640px);opacity:.49}
@media(max-width:900px){.lagoon-footer__jelly{left:40%;top:7%;width:300px;height:430px;opacity:.42}}
@media(max-width:560px){.lagoon-footer__jelly{left:38%;top:4%;width:190px;height:280px;opacity:.27}}
/* Final positional refinements for the live site. */
#section-hero .ocean-creature--bubbles{right:32%;top:21%}
#section-hero .ocean-creature--fish{right:31%;top:62%}
.lagoon-footer__lead{width:min(540px,44vw)}
.lagoon-footer__base{flex-direction:column;align-items:flex-start;gap:6px}
.lagoon-footer__base small{text-align:left}
@media(max-width:900px){#section-hero .ocean-creature--bubbles{right:10%;top:26%}#section-hero .ocean-creature--fish{right:4%;top:56%}}
@media(max-width:560px){.lagoon-footer__lead{width:75%}.lagoon-footer__base{align-items:flex-start;gap:4px}.lagoon-footer__base small{max-width:none;text-align:left}}

/* Desktop scale and routes for the marine layer. */
@media(min-width:901px){
  #section-hero .ocean-creature--fish{left:-390px;right:auto;top:54%;width:390px;height:296px}
  #section-hero .ocean-creature--bubbles{right:29%;width:156px;height:226px}
  #section-trust .ocean-creature--jelly{width:284px;height:410px}
  #section-services .ocean-creature--school{width:510px;height:370px}
  #section-care .ocean-creature--dolphin{width:440px;height:279px}
}

.steps h3 a,.about-service-list a{color:inherit;text-decoration:none}.steps h3 a:hover,.about-service-list a:hover{color:var(--cyan);text-decoration:underline;text-underline-offset:4px}


/* Primary navigation and services dropdown. */
.nav{gap:clamp(14px,1.45vw,28px)}.nav>a,.nav-dropdown summary{color:var(--navy);font-size:14px;font-weight:700;text-decoration:none;white-space:nowrap;transition:color .2s}.nav>a:hover,.nav-dropdown summary:hover{color:var(--cyan)}.nav-dropdown{position:relative}.nav-dropdown summary{display:flex;align-items:center;gap:5px;cursor:pointer;list-style:none}.nav-dropdown summary::-webkit-details-marker{display:none}.nav-dropdown__chevron{display:inline-block;width:7px;height:7px;margin:-3px 0 0 2px;border-right:1.5px solid var(--cyan);border-bottom:1.5px solid var(--cyan);transform:rotate(45deg);transform-origin:center;transition:transform .2s ease}.nav-dropdown[open] .nav-dropdown__chevron{transform:rotate(225deg);margin-top:3px}.nav-dropdown__menu{position:absolute;top:calc(100% + 14px);left:-18px;z-index:60;display:none;width:260px;padding:12px;border:1px solid rgba(16,197,215,.2);border-radius:16px;background:rgba(255,255,255,.98);box-shadow:0 18px 38px rgba(41,39,93,.16)}.nav-dropdown[open] .nav-dropdown__menu,.nav-dropdown:hover .nav-dropdown__menu{display:grid;gap:2px}.nav-dropdown__menu a{display:block;padding:10px 12px;border-radius:9px;color:var(--navy);font-size:13px;font-weight:700;line-height:1.3;text-decoration:none}.nav-dropdown__menu a:hover{color:var(--navy);background:var(--ice)}
@media(max-width:900px){.nav{gap:20px}.nav>a,.nav-dropdown summary{font-size:16px}.nav-dropdown{width:100%}.nav-dropdown summary{justify-content:space-between}.nav-dropdown__menu{position:static;width:100%;margin-top:10px;padding:8px;box-shadow:none;background:var(--ice)}.nav-dropdown:hover .nav-dropdown__menu{display:none}.nav-dropdown[open] .nav-dropdown__menu{display:grid}.nav-dropdown__menu a{font-size:14px}}

/* Keep hero small star above the animated boy. */
.hero-logo-mark__star--small{z-index:3}

/* Remove the clipped small star from the hero animation. */
.hero-logo-mark__star--small{display:none}

/* Correct hero star visibility: retain small, hide clipped adjacent star. */
.hero-logo-mark__star--small{display:block}
.hero-logo-mark__star--left{display:none}

/* Final hero star correction: hide the overlapping small star. */
.hero-logo-mark__star--small{display:none}
.hero-logo-mark__star--left{display:block}

/* Remove both hero stars that intersect the boy silhouette. */
.hero-logo-mark__star--small,.hero-logo-mark__star--left{display:none}

/* Restore all intended hero stars after mask correction. */
.hero-logo-mark__star--large,.hero-logo-mark__star--left,.hero-logo-mark__star--bottom,.hero-logo-mark__star--top,.hero-logo-mark__star--small{display:block}

/* SCF footer contacts: each row is controlled by footer_phones. */
.lagoon-footer__phones{grid-column:2;display:grid;justify-items:center;gap:8px}
.lagoon-footer__phones .lagoon-footer__phone{grid-column:auto;display:inline-flex;align-items:center;gap:8px;color:var(--navy);font-size:13px;font-weight:800;line-height:1.2;text-decoration:none}
.lagoon-footer__phone-icon{display:grid;width:15px;height:15px;place-items:center;color:var(--navy)}
.lagoon-footer__phone-icon svg{display:block;width:100%;height:100%;fill:currentColor}
@media(max-width:560px){.lagoon-footer__phones{grid-column:auto;order:4}}


/* Home services: mirrors every item in the header services menu. */
.steps--services{gap:28px 34px}
.steps--services li{padding-top:18px;border-top:1px solid rgba(41,39,93,.2)}
.steps--services li::after{display:none}
.steps--services h3{display:flex;align-items:center;gap:10px;margin:0;font-size:16px;line-height:1.25}
.steps--services h3 .service-card__icon{width:22px;height:22px;flex:0 0 22px}
@media(max-width:560px){.steps--services li{padding-left:0}}

.section-description>:first-child{margin-top:0}.section-description>:last-child{margin-bottom:0}


/* Home team section: one reusable card treatment for all clinic specialists. */
.scene-section--team{min-height:175svh}
.team-content{display:block;padding-top:15vh;background:linear-gradient(90deg, rgba(247,249,251,.94), rgba(247,249,251,.5) 72%, rgba(247,249,251,.02) 100%)}
.team-heading{max-width:760px}
.team-heading h2{margin:0;font-size:clamp(52px,5vw,82px);font-weight:500;line-height:.98;letter-spacing:-.075em}
.team-heading h2 em{color:var(--cyan);font-style:normal}
.team-heading>p:not(.section-kicker){max-width:680px;margin:22px 0 0;font-size:18px;line-height:1.55}
.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2vw,32px);max-width:1260px;margin-top:clamp(34px,5vh,64px)}
.team-card{padding:clamp(18px,2vw,28px);border:1px solid rgba(255,255,255,.82);border-radius:28px;background:rgba(255,255,255,.7);box-shadow:0 20px 52px rgba(41,39,93,.1);backdrop-filter:blur(15px)}
.team-card__photo{width:min(100%,240px);aspect-ratio:1;margin:0 auto 24px;overflow:hidden;border:1px solid rgba(16,197,215,.32);border-radius:50%;background:var(--ice)}
.team-card__photo img{display:block;width:100%;height:100%;object-fit:cover}
.team-card__role{margin:0 0 10px;color:var(--cyan);font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.team-card h3{margin:0;font-size:clamp(21px,1.7vw,28px);line-height:1.08;letter-spacing:-.045em}
.team-card__text{margin:18px 0 0;font-size:14px;line-height:1.55}
@media(max-width:900px){.scene-section--team{min-height:auto}.team-content{position:relative;min-height:auto;padding:124px 28px 64px}.team-grid{gap:18px}.team-card{padding:18px}.team-card__photo{margin-bottom:18px}.team-card__text{font-size:13px}}
@media(max-width:680px){.team-content{padding:108px 24px 54px}.team-grid{grid-template-columns:1fr}.team-card{display:grid;grid-template-columns:104px 1fr;column-gap:18px;align-items:start}.team-card__photo{grid-row:span 3;width:104px;margin:0}.team-card__role{margin-top:4px}.team-card h3{font-size:24px}.team-card__text{grid-column:1/-1;margin-top:20px;font-size:14px}}

.team-heading .section-kicker{text-transform:uppercase}

.team-card__link{margin-top:16px}


/* Home FAQ: native details keeps the long medical answers accessible and fast. */
.faq-section{position:relative;z-index:3;padding:clamp(96px,14vh,180px) max(clamp(34px,5vw,82px),calc((100% - var(--content))/2));background:linear-gradient(90deg,rgba(247,249,251,.6) 0%,rgba(247,249,251,.36) 54%,rgba(247,249,251,.08) 78%,rgba(247,249,251,.03) 100%);}
.faq-section__inner{position:relative;z-index:2;max-width:1040px;margin:0 auto;}
.faq-heading{text-align:center;max-width:780px;margin:0 auto clamp(34px,5vh,64px);}
.faq-heading h2{margin:0;color:var(--navy);font-size:clamp(42px,5vw,76px);font-weight:500;line-height:.98;letter-spacing:-.065em;}
.faq-heading>p:not(.section-kicker){margin:22px auto 0;font-size:18px;line-height:1.55;font-weight:600;}
.faq-list{display:grid;gap:12px;}
.faq-item{border:1px solid rgba(41,39,93,.13);border-radius:18px;background:rgba(255,255,255,.72);overflow:hidden;transition:background .25s var(--ease),box-shadow .25s var(--ease),border-color .25s var(--ease);}
.faq-item[open]{background:rgba(255,255,255,.92);border-color:rgba(16,197,215,.42);box-shadow:0 18px 42px rgba(41,39,93,.09);}
.faq-item summary{display:flex;align-items:center;gap:16px;padding:20px 24px;cursor:pointer;list-style:none;color:var(--navy);font-size:17px;font-weight:800;line-height:1.35;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item__icon{position:relative;flex:0 0 22px;width:22px;height:22px;border:1px solid rgba(16,197,215,.55);border-radius:50%;}
.faq-item__icon::before,.faq-item__icon::after{content:"";position:absolute;top:50%;left:50%;background:var(--cyan);transform:translate(-50%,-50%);transition:transform .22s var(--ease);}
.faq-item__icon::before{width:10px;height:2px;}
.faq-item__icon::after{width:2px;height:10px;}
.faq-item[open] .faq-item__icon::after{transform:translate(-50%,-50%) rotate(90deg);}
.faq-item__answer{max-width:880px;padding:0 62px 26px;color:rgba(41,39,93,.84);font-size:16px;line-height:1.65;}
.faq-item__answer>*:first-child{margin-top:0;}
.faq-item__answer>*:last-child{margin-bottom:0;}
.faq-item__answer p{margin:0 0 16px;}
.faq-item__answer ul{margin:0 0 16px;padding-left:22px;}
.faq-item__answer li+li{margin-top:7px;}
@media(max-width:680px){.faq-section{padding:94px 24px 72px;}.faq-heading h2{font-size:42px;}.faq-heading>p:not(.section-kicker){font-size:16px;}.faq-item summary{padding:17px 16px;font-size:15px;gap:12px;}.faq-item__answer{padding:0 16px 22px 50px;font-size:14px;line-height:1.58;}}


/* FAQ uses the left editorial column; the clinic-interior scene stays visible at right. */
@media (min-width: 901px){
  .faq-section__inner{max-width:min(900px,62vw);margin-left:0;margin-right:0;}
  .faq-heading{max-width:760px;margin-left:0;margin-right:0;text-align:left;}
  .faq-heading h2{max-width:690px;}
  .faq-heading>p:not(.section-kicker){max-width:650px;margin-left:0;margin-right:0;}
  .faq-item__answer{max-width:none;padding-right:28px;}
}


/* Reuse the marine motion system in the Team and FAQ scenes. */
#section-team .ocean-creature--jelly{right:8%;top:14%;width:220px;height:318px;opacity:.38;}
#section-team .ocean-creature--bubbles{right:29%;top:66%;opacity:.42;}
#section-faq .ocean-creature--school{left:auto;right:6%;top:14%;width:310px;height:225px;opacity:.35;}
#section-faq .ocean-creature--bubbles{right:34%;top:65%;opacity:.38;}
#section-team .ocean-creature--bubbles i,#section-faq .ocean-creature--bubbles i{animation:bubbleRise 6.4s ease-in-out infinite;}
#section-team .ocean-creature--bubbles i:nth-child(2),#section-faq .ocean-creature--bubbles i:nth-child(2){animation-delay:-1.5s;}
#section-team .ocean-creature--bubbles i:nth-child(3),#section-faq .ocean-creature--bubbles i:nth-child(3){animation-delay:-3.1s;}
#section-team .ocean-creature--bubbles i:nth-child(4),#section-faq .ocean-creature--bubbles i:nth-child(4){animation-delay:-4.4s;}
@keyframes bubbleRise{0%,100%{transform:translateY(0);opacity:.62;}50%{transform:translateY(-34px);opacity:1;}}
@media(max-width:900px){#section-team .ocean-creature--jelly{right:2%;top:10%;width:150px;height:218px;}#section-team .ocean-creature--bubbles{right:22%;top:70%;}#section-faq .ocean-creature--school{right:-5%;top:8%;width:200px;height:145px;}#section-faq .ocean-creature--bubbles{right:14%;top:66%;}}

/* Display typeface: rounded, calm and close to the letterforms of the logo. */
h1, h2, h3, h4, h5, h6,
.entry-title,
.wp-block-heading {
  font-family: 'Nunito', 'Manrope', sans-serif;
}

/* Keep the home hero inside the narrow mobile viewport. */
@media(max-width:560px){
  html,body{max-width:100%;overflow-x:clip;}
  .scene-stage,.scene-section,.scene-content,.hero-copy{max-width:100%;min-width:0;overflow-x:clip;}
  .hero-copy h1{max-width:100%;font-size:clamp(46px,13.5vw,54px);line-height:.94;letter-spacing:-.045em;overflow-wrap:anywhere;}
}

/* Mobile footer: contact information flows in one column rather than sharing the orbital desktop layout. */
@media (max-width:560px){
  .lagoon-footer{min-height:0;padding:82px 20px 48px;}
  .lagoon-footer__lead{width:calc(100% - 54px);}
  .lagoon-footer__lead h2{font-size:clamp(42px,15vw,54px);line-height:1.02;}
  .lagoon-footer__orbit{position:relative;left:auto;right:auto;bottom:auto;width:100%;min-height:0;margin-top:42px;padding:20px 0 0;transform:none;display:flex;flex-direction:column;align-items:flex-start;gap:15px;border:0;text-align:left;}
  .lagoon-footer__detail{width:100%;gap:4px;font-size:12px;}
  .lagoon-footer__detail b{font-size:13px;}
  .lagoon-footer__cta{order:0;width:100%;margin:3px 0;}
  .lagoon-footer__phones{order:0;width:100%;justify-items:start;gap:8px;}
  .lagoon-footer__phones .lagoon-footer__phone{font-size:12px;}
  .lagoon-footer__phone{order:0;width:100%;}
  .lagoon-footer__base{position:relative;left:auto;right:auto;bottom:auto;margin-top:28px;}
}

/* Home title: preserve the intended three lines and never split a word. */
@media(max-width:560px){
  .hero-copy h1{font-size:clamp(46px,12.8vw,52px)!important;line-height:.93!important;letter-spacing:-.055em!important;overflow-wrap:normal!important;word-break:keep-all!important;}
  .hero-copy h1 span{white-space:nowrap;}
  .scene-section--hero .hero-content{align-items:center!important;}
}
