@font-face{font-family:MedCoachHand;src:url('/assets/caveat.ttf') format('truetype');font-weight:550;font-display:swap}
:root{--ink:#164e78;--blue:#12699e;--orange:#ed7c31;--paper:#fbfcfd;--header:104px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--header)}body{margin:0;background:var(--paper);color:var(--ink);font-family:Aptos,'Segoe UI',Arial,sans-serif;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;border:0;background:none;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:2px solid var(--blue);outline-offset:6px}button:disabled{cursor:default;opacity:.55}.skip-link{position:fixed;left:20px;top:-100px;z-index:30;background:white;padding:12px}.skip-link:focus{top:12px}
.header{position:fixed;top:0;left:0;right:0;height:var(--header);z-index:10;display:flex;align-items:center;justify-content:space-between;padding:10px max(6%,calc((100% - 1300px)/2));isolation:isolate}.header::before{content:'';position:absolute;inset:0 0 -55px;z-index:-1;pointer-events:none;background:linear-gradient(to bottom,#fbfcfdfa 0%,#fbfcfdf5 48%,#fbfcfd80 75%,transparent)}.brand img{width:124px;height:auto;display:block;mix-blend-mode:multiply}#main-nav{display:flex;align-items:center;gap:clamp(18px,2.5vw,38px)}#main-nav a,#main-nav button{font-size:15px;white-space:nowrap;padding:12px 0}#main-nav a:hover{color:var(--orange)}.menu-toggle{display:none}
.page{position:relative;isolation:isolate;overflow:hidden}.waves{position:absolute;left:0;right:0;bottom:0;height:clamp(125px,17vh,185px);z-index:-1;pointer-events:none;background:url('/assets/watercolor.jpg') center bottom/100% 100% no-repeat;filter:saturate(1.2) brightness(.94);mask-image:linear-gradient(to bottom,transparent 0%,#000 38%)}.page::before{content:'';position:absolute;left:-10%;top:0;width:45%;height:180px;z-index:-2;opacity:.35;background:radial-gradient(ellipse at 10% 0%,#bedfeb,transparent 70%);pointer-events:none}
.hero{padding:calc(var(--header) + 20px) max(6%,calc((100% - 1280px)/2)) 95px;min-height:min(850px,100svh);display:flex;align-items:center}.hero-inner{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:35px;align-items:end;width:100%;margin:auto}.portrait{display:block;width:100%;height:auto;max-height:580px;object-fit:contain;object-position:bottom;transform:scaleX(-1);mask-image:linear-gradient(to left,transparent 0%,#000 15%),linear-gradient(to bottom,#000 0%,#000 95%,transparent 100%);mask-composite:intersect}.hero-copy{padding-bottom:5px}.benefits{display:grid;gap:22px;margin:0;font-size:clamp(25px,2.55vw,37px);font-weight:600;line-height:1.35;letter-spacing:-.025em}.benefits>span{display:flex;align-items:baseline;gap:15px}.benefits [data-text]{overflow-wrap:break-word}.dolphin{width:21px;height:21px;flex-shrink:0;align-self:flex-start;margin-top:.24em;fill:white;stroke:#1675aa;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}.offer{display:block;font-size:clamp(21px,1.9vw,27px);line-height:1.45;font-weight:450;margin:33px 0 0 36px;white-space:pre-line}.offer:hover{color:var(--orange)}.next{position:absolute;bottom:22px;left:calc(50% - 21px);display:grid;place-items:center;width:42px;height:42px;border:1px solid #164e783d;border-radius:50%;background:#ffffffc4}.next svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}.next:hover{transform:translateY(3px)}
.people{min-height:650px;padding:135px 8% 170px;display:flex;align-items:flex-start;justify-content:center}.people-inner{max-width:1160px;text-align:center}.intro{font-size:clamp(24px,2.2vw,32px);line-height:1.6;font-weight:400;margin:0;white-space:pre-line}.people h2{font-family:MedCoachHand,cursive;font-size:clamp(43px,4.6vw,66px);line-height:1.15;font-weight:550;letter-spacing:0;margin:35px 0 0;white-space:pre-line}footer{display:flex;align-items:center;gap:24px;padding:14px 6%;font-size:11px;background:#fbfcfd}footer button{font-size:11px;padding:6px 0}footer>a{margin-left:auto;font-size:22px}.page-nav{position:fixed;right:2.5%;top:50%;display:grid;gap:17px;z-index:5}.page-nav a{display:flex;align-items:center;gap:10px;padding:5px}.page-nav span{font-size:10px;opacity:0}.page-nav i{width:6px;height:6px;border-radius:50%;background:#8ca9bb}.page-nav a[aria-current] i{background:var(--blue);transform:scale(1.4)}.page-nav a[aria-current] span,.page-nav a:hover span{opacity:1}dialog{width:min(540px,90vw);padding:42px;border:1px solid #d2e1eb;border-radius:16px;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#1539536b;backdrop-filter:blur(5px)}dialog h2{font-size:28px;margin:0 0 20px}dialog p{font-size:18px;line-height:1.5}.close{position:absolute;right:12px;top:6px;font-size:30px}
@media(max-width:1050px){#main-nav{gap:18px}#main-nav a,#main-nav button{font-size:13px}.hero-inner{gap:20px;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}.benefits{font-size:clamp(23px,2.8vw,30px)}.offer{font-size:22px}.hero{min-height:650px}}
@media(max-width:700px){:root{--header:84px}.header{padding:8px 6%}.brand img{width:99px}.menu-toggle{display:flex;flex-direction:column;gap:6px;padding:14px}.menu-toggle span{height:1.5px;width:25px;background:var(--ink)}#main-nav{display:none;position:absolute;top:var(--header);left:0;right:0;padding:20px 8% 28px;background:#fbfcfdf5;align-items:flex-start;gap:10px}#main-nav.open{display:flex;flex-direction:column}#main-nav a,#main-nav button{font-size:18px}.hero{padding:calc(var(--header) + 10px) 8% 95px;min-height:0}.hero-inner{grid-template-columns:1fr;gap:16px}.portrait{width:min(86%,340px);justify-self:start;max-height:none}.benefits{font-size:clamp(21px,5.7vw,28px);gap:16px}.benefits>span{gap:11px}.dolphin{width:18px;height:18px}.offer{font-size:20px;margin:25px 0 0 29px}.people{padding:110px 8% 150px;min-height:560px}.intro{font-size:22px;white-space:normal}.people h2{font-size:43px;margin-top:29px}.waves{height:125px}.page-nav{right:8px}.page-nav span{display:none}.page-nav i{width:5px;height:5px}dialog{padding:38px 24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.next:hover{transform:none}}

/* Reference composition: full-size mirrored portrait left, logo at the far right. */
.header{padding:10px 3.5% 10px 46%;justify-content:flex-end;gap:38px;height:112px}
.brand{order:3;flex-shrink:0}.brand img{width:150px}
#main-nav{order:1;gap:clamp(17px,1.8vw,30px)}
.header::before{background:linear-gradient(to bottom,#fbfcfdd9,#fbfcfd80 52%,transparent);inset:0 0 -35px}
.hero{display:block;min-height:760px;height:100svh;max-height:1100px;padding:0}
.hero-inner{display:block;height:100%;position:relative;width:100%;margin:0}
.portrait-frame{position:absolute;left:0;top:0;bottom:0;width:49%;overflow:hidden}
.portrait-frame .portrait{position:absolute;top:0;left:50%;width:auto;height:100%;max-width:none;max-height:none;object-fit:contain;transform:translateX(-50%) scaleX(-1);mask-image:linear-gradient(to bottom,#000 0%,#000 99%,transparent 100%);mask-composite:add;}
.hero-copy{position:absolute;left:48%;right:5%;top:34%;padding:0}
.benefits{font-size:clamp(28px,3vw,48px);gap:24px;line-height:1.3}.benefits>span{gap:14px}.benefits .dolphin{width:23px;height:23px}
.offer{margin:clamp(45px,10vh,110px) 0 0 37px;font-size:clamp(22px,2vw,31px);color:var(--orange)}
.waves{inset:0;width:100%;height:100%;background-position:center;background-size:100% 100%;filter:none;mask-image:none;opacity:1}
.waves::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 65% 48% at 36% 37%,#fbfcfdf5 0%,#fbfcfde8 48%,#fbfcfd94 72%,transparent 100%)}
.page::before{display:none}.people .waves{opacity:.75}.people .waves::after{background:radial-gradient(ellipse 70% 56% at 45% 25%,#fbfcfdf5 0%,#fbfcfdbd 65%,transparent 100%)}
@media(max-width:1150px) and (min-width:801px){.header{padding-left:41%;gap:20px}.brand img{width:125px}#main-nav{gap:15px}#main-nav a,#main-nav button{font-size:12px}.hero-copy{left:47%;right:5%}.benefits{font-size:clamp(27px,3vw,35px)}.portrait-frame{width:48%}.hero{min-height:690px}.offer{font-size:23px;margin-left:32px}}
@media(max-width:800px){.header{height:92px;padding:8px 5%;justify-content:space-between;gap:10px}.brand{order:3}.brand img{width:110px}.menu-toggle{display:flex;order:1;flex-direction:column;gap:6px;padding:14px}.menu-toggle span{height:1.5px;width:25px;background:var(--ink)}#main-nav{order:2;display:none;position:absolute;top:92px;left:0;right:0;padding:20px 8% 28px;background:#fbfcfdf5;align-items:flex-start;gap:10px}#main-nav.open{display:flex;flex-direction:column}#main-nav a,#main-nav button{font-size:18px}.hero{height:auto;min-height:0;max-height:none;padding:0 0 100px}.hero-inner{height:auto;display:flex;flex-direction:column}.portrait-frame{position:relative;left:auto;top:auto;bottom:auto;width:100%;height:clamp(390px,74svh,620px);overflow:hidden}.portrait-frame .portrait{left:36%;width:auto;height:100%;max-width:none;transform:translateX(-50%) scaleX(-1)}.hero-copy{position:relative;left:auto;right:auto;top:auto;padding:0 8%;margin-top:22px}.benefits{font-size:clamp(21px,4.7vw,33px);gap:16px}.benefits>span{gap:11px}.benefits .dolphin{width:18px;height:18px}.offer{font-size:21px;margin:27px 0 0 29px}.waves{height:100%;background-size:auto 100%;background-position:center}.waves::after{background:radial-gradient(ellipse 70% 50% at 40% 40%,#fbfcfde8,transparent 100%)}.people .waves{background-size:100% 100%}.page-nav{right:8px}}

.handwriting{font-family:MedCoachHand,cursive;font-synthesis:none;font-weight:550;font-style:normal;transform:none}

.page-nav{transform:translateY(-50%);gap:12px}@media(max-width:700px){.page-nav{gap:8px}}

footer>a:not(:last-child){font-size:11px;margin-left:0}footer>a:last-child{margin-left:auto}

/* Direct contact: shared provider fields, local icons and no external services. */
.header{padding-left:5%}
#contact-open:hover{color:var(--orange)}
.contact-dialog{width:min(640px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:48px 42px 36px;border:1px solid #cbdde8;border-radius:24px;box-shadow:0 24px 90px #123f7833;background:linear-gradient(145deg,#fff 65%,#edf6fa);overflow:auto}
.contact-dialog h2{font-family:MedCoachHand,cursive;font-synthesis:none;font-weight:550;font-size:clamp(34px,5vw,44px);line-height:1.15;margin:0 0 24px;padding-right:8px}
.contact-close{position:absolute;right:14px;top:10px;width:40px;height:40px;font-size:30px;line-height:1;border-radius:50%}
.contact-close:hover{background:#e6f1f7}
.contact-dialog .contact-name{font-size:21px;font-weight:600;margin:0 0 4px}
.contact-dialog .contact-business{font-size:15px;line-height:1.5;margin:0 0 26px}
.contact-details{font-style:normal;display:grid;gap:4px}
.contact-row{display:grid;grid-template-columns:48px minmax(0,1fr);gap:16px;align-items:start;padding:15px 0;font-size:19px;line-height:1.5;border-top:1px solid #164e781c;overflow-wrap:anywhere}
.contact-icon{display:grid;place-items:center;width:46px;height:46px;background:#ed7c3110;border-radius:14px;color:var(--orange)}
.contact-icon svg{width:25px;height:25px}
.contact-label{display:block;font-size:13px;font-weight:600;letter-spacing:.035em;margin-bottom:3px}
a.contact-row:hover{color:var(--blue)}
a.contact-row:hover [data-text]{text-decoration:underline;text-underline-offset:4px}
.contact-address{white-space:pre-line}
@media(max-width:480px){.contact-dialog{padding:48px 24px 26px;border-radius:18px}.contact-row{grid-template-columns:38px minmax(0,1fr);gap:12px;font-size:17px}.contact-icon{width:38px;height:42px}.contact-dialog .contact-business{font-size:14px}}
