:root{--teal:#087f80;--teal-dark:#056667;--navy:#102d3c;--coral:#ef6f61;--cream:#f5f1e9;--mist:#e8f4f2;--white:#fff;--text:#314650;--shadow:0 18px 50px rgba(16,45,60,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);background:#fff;font:17px/1.7 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:var(--teal);text-underline-offset:3px}img{display:block;max-width:100%;height:auto}.container{width:min(1160px,calc(100% - 2.5rem));margin:auto}.narrow{max-width:850px}.skip{position:fixed;left:-9999px}.skip:focus{left:1rem;top:1rem;background:#fff;padding:.7rem 1rem;z-index:100}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-header{background:rgba(255,255,255,.97);position:sticky;top:0;z-index:20;border-bottom:1px solid #102d3c10;backdrop-filter:blur(12px)}.nav-wrap{min-height:88px;display:flex;align-items:center;justify-content:space-between}.brand img{width:170px}.site-header ul{display:flex;align-items:center;gap:1.65rem;list-style:none;margin:0;padding:0}.site-header a{text-decoration:none;color:var(--navy);font-size:.94rem;font-weight:750}.site-header a:hover{color:var(--teal)}.site-header .login{border:2px solid var(--teal);border-radius:999px;padding:.45rem 1rem}.menu-button{display:none;border:0;background:none;font-size:1.8rem;color:var(--navy);cursor:pointer}h1,h2,h3,h4{color:var(--navy);font-weight:800;line-height:1.1;letter-spacing:-.025em}h1{font-size:clamp(3rem,7vw,6rem);line-height:.96;text-wrap:balance;margin:.15em 0 .35em}h2{font-size:clamp(2rem,4.5vw,3.6rem)}h3{font-size:1.35rem}.lead{font-size:clamp(1.15rem,2vw,1.4rem)}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;font-weight:850;color:var(--coral)}.hero{position:relative;overflow:hidden;padding:clamp(5rem,10vw,9rem) 0;background:linear-gradient(135deg,var(--cream),#fff)}.hero:after{content:"";position:absolute;width:360px;height:360px;border-radius:50%;right:-120px;top:-100px;background:var(--mist)}.hero-grid,.split{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2rem,7vw,6rem);align-items:center}.hero h2{font-size:clamp(1.3rem,2.4vw,2rem);max-width:720px;font-weight:600}.hero-art{position:relative;z-index:1;aspect-ratio:1;border-radius:50% 50% 45% 55%;background:var(--teal);color:#fff;display:grid;place-content:center;text-align:center;box-shadow:var(--shadow);transform:rotate(3deg)}.hero-art span{font-size:clamp(5rem,11vw,9rem);line-height:.9;font-weight:900}.hero-art small{max-width:200px;font-weight:700}.hero-business{background:linear-gradient(130deg,var(--navy),#174d5b);text-align:center}.hero-business h1,.hero-business .lead{color:#fff}.hero-partners{text-align:center;background:linear-gradient(140deg,var(--mist),#fff)}.section{padding:clamp(4.5rem,9vw,8rem) 0}.section-teal{background:var(--teal);color:#fff}.section-teal h2{color:#fff}.section-heading{text-align:center;max-width:760px;margin:0 auto 3rem}.section-heading h2{margin-top:.2rem}.actions{display:flex;gap:1rem;align-items:center;margin-top:2rem}.actions.center,.center{text-align:center;justify-content:center}.button{display:inline-block;background:var(--coral);color:#fff!important;border:2px solid var(--coral);border-radius:999px;padding:.75rem 1.35rem;text-decoration:none;font-weight:800;box-shadow:0 8px 18px #ef6f6133}.button:hover{transform:translateY(-2px)}.button-outline{background:transparent;color:var(--teal)!important;border-color:var(--teal);box-shadow:none}.button-light{background:#fff;color:var(--teal)!important;border-color:#fff}.text-link{font-weight:800}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.feature-grid.four{grid-template-columns:repeat(2,1fr)}.feature-card,.signup-grid article,.partner-card{background:#fff;border:1px solid #102d3c12;border-radius:20px;padding:2rem;box-shadow:var(--shadow)}.feature-icon,.partner-mark{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:var(--mist);color:var(--teal);font-size:1.25rem;font-weight:900}.feature-card strong{color:var(--teal)}.stat{font-size:clamp(5rem,12vw,9rem);font-weight:900;line-height:.9;color:#fff}.stat small{display:block;font-size:1rem;line-height:1.5;max-width:330px;margin-top:1rem}.video-load{position:relative;overflow:hidden;border-radius:22px;box-shadow:var(--shadow);background:#000;aspect-ratio:16/9}.video-load img,.video-load iframe{width:100%;height:100%;object-fit:cover;border:0}.video-load button{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:74px;height:74px;border:0;border-radius:50%;background:var(--coral);color:#fff;font-size:1.8rem;cursor:pointer}.join{background:var(--cream)}.signup-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.hours{text-align:center;max-width:850px;margin:5rem auto 0}.hours h2{font-size:clamp(1.7rem,3vw,2.5rem)}.partner-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.35rem}.partner-card{display:flex;flex-direction:column}.partner-card h2{font-size:1.35rem}.partner-card p{flex:1}.partner-card a{font-weight:800}.production-note{max-width:850px;margin:3rem auto;padding:1.25rem;border-left:4px solid var(--coral);background:var(--cream)}.referral-hero{background:linear-gradient(125deg,var(--navy),var(--teal));color:#fff}.referral-hero h1,.referral-hero h2{color:#fff}.referral-image{border-radius:24px;box-shadow:var(--shadow)}.legal{max-width:900px;padding:clamp(4rem,8vw,7rem) 1.25rem}.legal h1:first-child,.legal h2:first-child{font-size:clamp(2.5rem,6vw,4.5rem);padding-bottom:1rem;border-bottom:5px solid var(--coral)}.legal h2{font-size:1.65rem;margin-top:2.5rem}.legal p{margin:0 0 1.25rem}.testimonials{background:var(--teal);color:#fff;padding:5rem 0}.testimonials h2{color:#fff;text-align:center}.review-track{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.review-track blockquote{background:#fff;color:var(--navy);margin:0;padding:1.7rem;border-radius:18px}.review-track cite{font-weight:800;color:var(--teal)}footer{background:var(--navy);color:#fff;padding:4.5rem 0 1rem}footer h2{color:#fff;font-size:1rem;letter-spacing:.12em}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:3rem}.footer-grid a{display:block;color:#fff;margin:.4rem 0}.copyright{text-align:center;border-top:1px solid #ffffff33;padding-top:1rem;margin-top:3rem}@media(max-width:850px){.menu-button{display:block}.site-header nav{display:none;position:absolute;top:88px;left:0;right:0;background:#fff;padding:1rem 1.25rem 1.5rem;box-shadow:var(--shadow)}.site-header nav.open{display:block}.site-header ul{display:block}.site-header li{margin:1rem 0}.hero-grid,.split{grid-template-columns:1fr}.hero-art{max-width:420px;margin:auto}.feature-grid,.feature-grid.four,.partner-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.container{width:min(100% - 1.5rem,1160px)}.hero{padding:4rem 0}.feature-grid,.feature-grid.four,.signup-grid,.partner-grid,.review-track,.footer-grid{grid-template-columns:1fr}.actions{align-items:stretch;flex-direction:column;text-align:center}.feature-card,.partner-card{padding:1.5rem}}:focus-visible{outline:3px solid var(--coral);outline-offset:3px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button:hover{transform:none}}

/* Intentional interactive states */
:root{--link-hover:#056667;--link-active:#102d3c;--coral-hover:#d9574d;--coral-active:#bd463e;--focus-ring:#f39a50;--motion-fast:160ms;--motion-standard:220ms}
a,button{transition:color var(--motion-fast) ease,background-color var(--motion-fast) ease,border-color var(--motion-fast) ease,box-shadow var(--motion-standard) ease,transform var(--motion-fast) ease,text-decoration-color var(--motion-fast) ease,opacity var(--motion-fast) ease}
a:hover{color:var(--link-hover);text-decoration-color:currentColor}a:active{color:var(--link-active)}a:focus-visible,button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:4px}.site-header a:hover{color:var(--teal);text-decoration:underline;text-decoration-thickness:2px}.site-header a:active{color:var(--navy);transform:translateY(1px)}.site-header .login:hover{color:#fff;background:var(--teal);text-decoration:none;box-shadow:0 6px 16px rgba(8,127,128,.2)}.site-header .login:active{background:var(--teal-dark);border-color:var(--teal-dark);transform:translateY(1px)}.button:hover{color:#fff!important;background:var(--coral-hover);border-color:var(--coral-hover);box-shadow:0 10px 22px rgba(217,87,77,.28);transform:translateY(-2px)}.button:active{background:var(--coral-active);border-color:var(--coral-active);box-shadow:0 4px 10px rgba(189,70,62,.22);transform:translateY(1px) scale(.99)}.button-outline:hover{color:#fff!important;background:var(--teal);border-color:var(--teal);box-shadow:0 8px 18px rgba(8,127,128,.2)}.button-outline:active{background:var(--teal-dark);border-color:var(--teal-dark)}.button-light:hover{color:var(--navy)!important;background:var(--mist);border-color:var(--mist)}.button-light:active{background:#d8eae7;border-color:#d8eae7}.text-link,.partner-card a,.footer-grid a{font-weight:800;text-decoration-color:transparent}.text-link:hover,.partner-card a:hover{text-decoration-color:currentColor}.text-link:active,.partner-card a:active{transform:translateY(1px)}.footer-grid a:hover{color:#8fdddd;text-decoration-color:currentColor}.footer-grid a:active{color:#fff;opacity:.78}.menu-button:hover{color:var(--teal);background:var(--mist)}.menu-button:active{color:var(--teal-dark);transform:scale(.96)}.video-load button:hover{background:var(--coral-hover);box-shadow:0 8px 24px rgba(16,45,60,.32);transform:translate(-50%,-50%) scale(1.06)}.video-load button:active{background:var(--coral-active);transform:translate(-50%,-50%) scale(.98)}
@media(prefers-reduced-motion:reduce){a,button{transition:none}.button:hover,.button:active,.site-header a:active,.text-link:active,.partner-card a:active,.menu-button:active,.video-load button:hover,.video-load button:active{transform:none}.video-load button:hover,.video-load button:active{transform:translate(-50%,-50%)}}

/* Directional link motion */
.arrow-link{display:inline-flex;align-items:center;gap:.38em}.link-arrow{display:inline-block;transition:transform var(--motion-standard) cubic-bezier(.22,1,.36,1),opacity var(--motion-fast) ease}.arrow-link:hover .link-arrow,.arrow-link:focus-visible .link-arrow{transform:translateX(.28em)}.arrow-link:active .link-arrow{transform:translateX(.4em);opacity:.72}@media(prefers-reduced-motion:reduce){.link-arrow{transition:none}.arrow-link:hover .link-arrow,.arrow-link:focus-visible .link-arrow,.arrow-link:active .link-arrow{transform:none}}
.arrow-link:hover,.arrow-link:focus-visible{text-decoration:none}.arrow-link .link-label{text-decoration:underline;text-decoration-color:transparent;text-underline-offset:3px;transition:text-decoration-color var(--motion-fast) ease}.arrow-link:hover .link-label,.arrow-link:focus-visible .link-label{text-decoration-color:currentColor}.arrow-link .link-arrow{text-decoration:none}

/* Social proof links */
.social-links{display:flex;flex-wrap:wrap;justify-content:center;gap:.7rem;margin:-1.25rem auto 2.5rem}.social-links a{display:inline-flex;align-items:center;gap:.55rem;padding:.48rem .82rem .48rem .5rem;border:1px solid rgba(255,255,255,.38);border-radius:999px;color:#fff;text-decoration:none;font-size:.88rem;font-weight:750;background:rgba(255,255,255,.07)}.social-mark{display:grid;place-items:center;width:1.8rem;height:1.8rem;border-radius:50%;background:#fff;color:var(--teal);font-size:.82rem;font-weight:900;line-height:1}.social-links a:hover{color:var(--navy);background:#fff;border-color:#fff;box-shadow:0 8px 20px rgba(16,45,60,.2);transform:translateY(-2px)}.social-links a:active{color:var(--navy);background:var(--mist);border-color:var(--mist);transform:translateY(0)}@media(max-width:600px){.social-links{gap:.55rem}.social-links a{padding:.45rem}.social-links a>span:last-child{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.social-mark{width:2rem;height:2rem}}
.social-mark img{width:1.05rem;height:1.05rem;object-fit:contain}

/* Direction-aware sticky header */
.site-header{will-change:transform;transition:transform 280ms cubic-bezier(.22,1,.36,1),box-shadow 220ms ease,border-color 220ms ease}.site-header.header-scrolled{border-bottom-color:transparent;box-shadow:0 10px 30px rgba(16,45,60,.12)}.site-header.header-hidden{transform:translateY(calc(-100% - 1px));box-shadow:none}@media(prefers-reduced-motion:reduce){.site-header{transition:none}}

/* Full-screen mobile navigation */
.menu-icon{position:relative;display:block;width:24px;height:20px}.menu-icon i{position:absolute;left:2px;display:block;height:2px;border-radius:2px;background:currentColor;transition:top 240ms ease,transform 240ms ease,opacity 180ms ease,width 240ms ease}.menu-icon i:nth-child(1){top:2px;width:20px}.menu-icon i:nth-child(2){top:9px;width:15px}.menu-icon i:nth-child(3){top:16px;width:20px}.menu-button[aria-expanded="true"] .menu-icon i:nth-child(1){top:9px;transform:rotate(45deg)}.menu-button[aria-expanded="true"] .menu-icon i:nth-child(2){opacity:0}.menu-button[aria-expanded="true"] .menu-icon i:nth-child(3){top:9px;transform:rotate(-45deg)}
@media(max-width:850px){body.menu-open{overflow:hidden}.menu-button{position:relative;z-index:2;display:grid;place-items:center;width:48px;height:48px;padding:0;border-radius:50%}.site-header.menu-expanded{position:fixed;inset:0;height:100dvh;color:#fff;background:var(--teal);border:0;box-shadow:none;transform:none}.site-header.menu-expanded .nav-wrap{height:100%;align-content:start;display:grid;grid-template-columns:1fr auto;grid-template-rows:88px 1fr}.site-header.menu-expanded .brand{width:max-content;padding:.3rem .55rem;border-radius:10px;background:#fff}.site-header.menu-expanded .menu-button{color:#fff}.site-header.menu-expanded .menu-button:hover{color:#fff;background:rgba(255,255,255,.1)}.site-header.menu-expanded nav{position:static;grid-column:1/-1;align-self:stretch;display:block;padding:clamp(1.5rem,8vh,4.5rem) 0 2rem;background:transparent;box-shadow:none;overflow-y:auto}.site-header.menu-expanded ul{display:block}.site-header.menu-expanded li{margin:0}.site-header.menu-expanded nav a{display:block;padding:1rem 0;border-bottom:1px solid rgba(255,255,255,.22);color:#fff;font-size:clamp(1.35rem,6vw,2rem);font-weight:650;line-height:1.2;text-decoration:none}.site-header.menu-expanded nav a:hover,.site-header.menu-expanded nav a:focus-visible{padding-left:.35rem;color:#fff;text-decoration:none}.site-header.menu-expanded nav a:active{color:var(--mist)}.site-header.menu-expanded nav .login{margin-top:1.5rem;padding:.75rem 1.2rem;width:max-content;border-color:#fff;font-size:1rem}.site-header.menu-expanded nav .login:hover{padding-left:1.2rem;background:#fff;color:var(--teal)}}
@media(prefers-reduced-motion:reduce){.menu-icon i,.site-header.menu-expanded nav a{transition:none}}

/* Refined mobile menu interactions and social footer */
.mobile-social{display:none}@media(max-width:850px){.site-header.menu-expanded nav{display:flex;flex-direction:column}.site-header.menu-expanded nav>ul{flex:0 0 auto}.site-header.menu-expanded nav>ul a{padding:1rem .25rem;transition:color var(--motion-fast) ease,background-color var(--motion-fast) ease}.site-header.menu-expanded nav>ul a:hover,.site-header.menu-expanded nav>ul a:focus-visible{padding-left:.25rem;background:rgba(255,255,255,.065);color:#fff}.site-header.menu-expanded nav>ul .login:hover{padding-left:1.2rem}.mobile-social{display:flex;align-items:center;gap:.65rem;margin-top:auto;padding-top:2rem}.site-header.menu-expanded nav .mobile-social a{display:grid;place-items:center;width:2.6rem;height:2.6rem;padding:0;border:0;border-radius:50%;background:#fff}.site-header.menu-expanded nav .mobile-social a:hover,.site-header.menu-expanded nav .mobile-social a:focus-visible{padding:0;background:var(--mist);box-shadow:0 6px 16px rgba(16,45,60,.16);transform:translateY(-1px)}.site-header.menu-expanded nav .mobile-social a:active{padding:0;transform:translateY(0)}.mobile-social img{width:1.1rem;height:1.1rem;object-fit:contain}}

/* Smooth mobile navigation drift */
@media(max-width:850px){.site-header.menu-expanded nav>ul a{transition:color var(--motion-fast) ease,background-color var(--motion-fast) ease,transform 260ms cubic-bezier(.22,1,.36,1)}.site-header.menu-expanded nav>ul a:hover,.site-header.menu-expanded nav>ul a:focus-visible{transform:translateX(.35rem)}.site-header.menu-expanded nav>ul a:active{transform:translateX(.2rem)}}@media(prefers-reduced-motion:reduce){.site-header.menu-expanded nav>ul a:hover,.site-header.menu-expanded nav>ul a:focus-visible,.site-header.menu-expanded nav>ul a:active{transform:none}}

/* Full-bleed mobile menu rows with aligned labels */
@media(max-width:850px){.site-header.menu-expanded nav{overflow-x:hidden}.site-header.menu-expanded nav>ul li:not(:last-child) a{position:relative;z-index:0;border-bottom:0;background:transparent;transform:none}.site-header.menu-expanded nav>ul li:not(:last-child) a::before{content:"";position:absolute;z-index:-1;top:0;bottom:0;left:50%;width:100vw;border-bottom:1px solid rgba(255,255,255,.22);background:transparent;transform:translateX(-50%);transition:background-color var(--motion-fast) ease}.site-header.menu-expanded nav>ul li:not(:last-child) a:hover,.site-header.menu-expanded nav>ul li:not(:last-child) a:focus-visible,.site-header.menu-expanded nav>ul li:not(:last-child) a:active{background:transparent;transform:none}.site-header.menu-expanded nav>ul li:not(:last-child) a:hover::before,.site-header.menu-expanded nav>ul li:not(:last-child) a:focus-visible::before{background:rgba(255,255,255,.065)}.site-header.menu-expanded .nav-label{display:inline-block;transition:transform 260ms cubic-bezier(.22,1,.36,1)}.site-header.menu-expanded nav>ul a:hover .nav-label,.site-header.menu-expanded nav>ul a:focus-visible .nav-label{transform:translateX(.35rem)}.site-header.menu-expanded nav>ul a:active .nav-label{transform:translateX(.2rem)}}@media(prefers-reduced-motion:reduce){.site-header.menu-expanded .nav-label,.site-header.menu-expanded nav>ul li:not(:last-child) a::before{transition:none}.site-header.menu-expanded nav>ul a:hover .nav-label,.site-header.menu-expanded nav>ul a:focus-visible .nav-label,.site-header.menu-expanded nav>ul a:active .nav-label{transform:none}}

/* Footer brand medallion */
.footer-brand{display:grid;place-items:center;width:clamp(9rem,15vw,11rem);aspect-ratio:1;border-radius:50%;background:#fff;box-shadow:0 14px 32px rgba(0,0,0,.18)}.footer-brand img{width:78%;height:auto}@media(max-width:600px){.footer-brand{margin-bottom:1rem}}
footer address{margin-top:.8rem;font-style:normal;line-height:1.5}

/* Edge-to-edge mobile navigation hit areas */
@media(max-width:850px){.site-header.menu-expanded nav{width:100vw;margin-left:calc(50% - 50vw)}.site-header.menu-expanded nav>ul li:not(:last-child) a{width:100%;padding:1rem 1.25rem;border-bottom:1px solid rgba(255,255,255,.22);background:transparent}.site-header.menu-expanded nav>ul li:not(:last-child) a::before{display:none}.site-header.menu-expanded nav>ul li:not(:last-child) a:hover,.site-header.menu-expanded nav>ul li:not(:last-child) a:focus-visible{padding-left:1.25rem;background:rgba(255,255,255,.065)}.site-header.menu-expanded nav>ul li:last-child{padding-left:1.25rem;padding-right:1.25rem}.site-header.menu-expanded .mobile-social{padding-left:1.25rem;padding-right:1.25rem}}@media(max-width:600px){.site-header.menu-expanded nav>ul li:not(:last-child) a,.site-header.menu-expanded nav>ul li:not(:last-child) a:hover,.site-header.menu-expanded nav>ul li:not(:last-child) a:focus-visible{padding-left:.75rem;padding-right:.75rem}.site-header.menu-expanded nav>ul li:last-child,.site-header.menu-expanded .mobile-social{padding-left:.75rem;padding-right:.75rem}}

/* Primary navigation current states */
.site-header nav a.current{color:var(--teal);font-weight:850}.site-header nav a.current .nav-label{text-decoration:underline;text-decoration-thickness:2px;text-decoration-color:var(--teal);text-underline-offset:5px}@media(max-width:850px){.site-header.menu-expanded nav>ul a.current{color:#fff;background:rgba(255,255,255,.1);box-shadow:inset 4px 0 0 var(--coral)}.site-header.menu-expanded nav>ul a.current .nav-label{text-decoration-color:rgba(255,255,255,.8);text-decoration-thickness:1px;text-underline-offset:6px}.site-header.menu-expanded nav>ul a.current:hover,.site-header.menu-expanded nav>ul a.current:focus-visible{background:rgba(255,255,255,.14)}}
