:root{--teal:#0d7181;--teal-dark:#07515f;--teal-pale:#dff2f2;--ink:#15323a;--muted:#5c7177;--white:#fff;--cream:#f7faf8;--gold:#e8a85f;--line:#d4e2df;--shadow:0 28px 70px rgba(8,67,76,.16)}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:var(--cream);font-family:"DM Sans",sans-serif;font-size:17px;line-height:1.65}
a{color:inherit}
h1,h2,h3,p{margin-top:0}
h1,h2{font-family:"Playfair Display",serif;line-height:1.08;letter-spacing:-.025em}
h1{font-size:clamp(3rem,6.6vw,6.2rem);margin-bottom:1.6rem}
h1 em{color:var(--teal);font-weight:600}
h2{font-size:clamp(2.25rem,4vw,4rem);margin-bottom:1.2rem}
h3{font-size:1.35rem;line-height:1.25}
.site-header{height:92px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1.25rem,5vw,5.5rem);background:rgba(247,250,248,.92);backdrop-filter:blur(16px);position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(13,113,129,.09)}
.brand{display:flex;align-items:center;gap:1rem;text-decoration:none;line-height:1.1}
.header-logo{display:block;width:210px;height:auto;object-fit:contain}
.brand small{display:block;max-width:190px;color:var(--teal-dark);font-size:.68rem;line-height:1.35;letter-spacing:.08em;text-transform:uppercase}
nav{display:flex;align-items:center;gap:2rem}
nav a{text-decoration:none;font-size:.93rem;font-weight:600}
.nav-cta{color:white;background:var(--teal);padding:.72rem 1.15rem;border-radius:999px}
.menu-button{display:none}
.hero{min-height:calc(100vh - 92px);display:grid;grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);gap:clamp(2rem,5vw,5rem);align-items:center;padding:clamp(4rem,8vw,8rem) clamp(1.25rem,7vw,8rem);overflow:hidden}
.hero-copy{max-width:900px}
.eyebrow{color:var(--teal);font-size:.79rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;margin-bottom:1.15rem}
.lead{font-size:clamp(1.1rem,1.6vw,1.34rem);max-width:760px;color:#3d5961;line-height:1.65}
.hero-actions{display:flex;align-items:center;gap:1.5rem;margin:2.2rem 0}
.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:.95rem 1.4rem;font:inherit;font-weight:700;text-decoration:none;cursor:pointer}
.primary{background:var(--teal);color:white;box-shadow:0 12px 28px rgba(13,113,129,.22)}
.primary:hover{background:var(--teal-dark)}
.text-link{font-weight:700;text-decoration:none;color:var(--teal-dark)}
.trust-line{display:flex;flex-wrap:wrap;gap:.55rem}
.trust-line span{font-size:.78rem;font-weight:700;border:1px solid var(--line);padding:.45rem .75rem;border-radius:999px;background:white}
.hero-card{background:linear-gradient(145deg,#e7f8f8 0%,#bfecee 100%);color:var(--ink);border:1px solid rgba(13,113,129,.15);border-radius:36px;padding:clamp(2rem,4vw,3.5rem);box-shadow:0 28px 70px rgba(123,22,107,.14);transform:rotate(1.8deg);position:relative}
.hero-card:before{content:"";position:absolute;width:90px;height:90px;background:#b01478;border-radius:50%;top:-22px;right:-20px;z-index:-1}
.hero-card h2{font-size:clamp(2rem,3.5vw,3.4rem);color:#7a176f}
.hero-card p:last-child{color:#294f58}
.card-kicker{color:#9b176f;font-weight:700}
.curve{margin:-1rem -1rem 1.7rem}
.curve svg{width:100%;height:auto}
.gridline{fill:none;stroke:rgba(13,113,129,.16);stroke-width:1}
.glucose-line{fill:none;stroke:#b01478;stroke-width:8;stroke-linecap:round}
.reframe{display:flex;justify-content:center;align-items:center;gap:1.3rem;padding:1.25rem;background:var(--teal);color:white;font-weight:700}
.reframe p{margin:0}
.section{padding:clamp(5rem,9vw,9rem) clamp(1.25rem,7vw,8rem)}
.welcome-carousel-section{display:grid;grid-template-columns:minmax(0,.82fr) minmax(320px,.58fr);gap:clamp(3rem,8vw,8rem);align-items:center;background:white}
.carousel-intro>p{color:var(--muted);font-size:1.08rem}
.carousel-transcript{margin-top:1.8rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:1rem 0}
.carousel-transcript summary{cursor:pointer;color:var(--teal-dark);font-weight:700}
.carousel-transcript ol{padding-left:1.3rem;margin:1rem 0 .25rem;color:var(--muted)}
.carousel-transcript li{padding:.35rem 0}
.carousel{width:min(100%,540px);justify-self:center}
.carousel-viewport{overflow:hidden;border-radius:28px;box-shadow:0 24px 65px rgba(8,67,76,.16);background:white;border:1px solid var(--line);touch-action:pan-y}
.carousel-track{display:flex;transition:transform .42s ease}
.carousel-slide{flex:0 0 100%;margin:0}
.carousel-slide img{display:block;width:100%;height:auto}
.carousel-controls{display:flex;align-items:center;justify-content:center;gap:1.2rem;margin-top:1.25rem}
.carousel-button{width:48px;height:48px;border:1px solid var(--line);border-radius:50%;background:white;color:var(--teal-dark);font:inherit;font-size:1.25rem;font-weight:700;cursor:pointer}
.carousel-button:hover,.carousel-button:focus-visible{background:var(--teal);color:white;border-color:var(--teal)}
.carousel-status{margin:0;min-width:52px;text-align:center;color:var(--muted);font-size:.9rem;font-weight:700}
.carousel-dots{display:flex;justify-content:center;gap:.55rem;margin-top:1rem}
.carousel-dots button{width:10px;height:10px;padding:0;border:0;border-radius:50%;background:#bad4d5;cursor:pointer}
.carousel-dots button.is-active{background:#b01478;transform:scale(1.2)}
.section-heading{max-width:760px;margin-bottom:3rem}
.section-heading>p:last-child,.about-copy>p,.connect>div>p{color:var(--muted);font-size:1.08rem}
.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.service-grid article{padding:2rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:white;min-height:280px}
.number{display:block;color:var(--teal);font-weight:700;margin-bottom:3rem}
.service-grid p{color:var(--muted)}
.learn{background:var(--teal-pale)}
.topic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.topic-grid article{background:white;border:1px solid rgba(13,113,129,.14);border-radius:22px;padding:1.6rem;box-shadow:0 12px 28px rgba(8,67,76,.06)}
.topic-grid h3{color:var(--teal-dark);margin-bottom:.75rem}
.topic-grid p{color:var(--muted);margin:0}
.about{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(3rem,8vw,8rem);align-items:center;background:white}
.about-visual{background:var(--teal-pale);padding:1rem 1rem 2.25rem;border-radius:32px}
.primary-logo{min-height:280px;border-radius:22px;background:white url('sugar-savvy-nurse-logo.png') center center/contain no-repeat}
.about blockquote{font-family:"Playfair Display",serif;font-size:clamp(1.45rem,2.3vw,2.1rem);line-height:1.35;margin:2rem 1.25rem 0;color:var(--teal-dark)}
.check-list{padding:0;list-style:none;margin:2rem 0 0}
.check-list li{padding:.75rem 0 .75rem 2rem;border-bottom:1px solid var(--line);position:relative;font-weight:600}
.check-list li:before{content:"✓";position:absolute;left:0;color:var(--teal)}
.community{padding:clamp(4rem,8vw,7rem) clamp(1.25rem,7vw,8rem);display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,8vw,8rem);background:var(--teal-dark);color:white}
.community h2{margin:0}
.community>div:last-child p{color:#d2e5e5;font-size:1.1rem}
.light{color:#8dd1d5}
.light-button{background:white;color:var(--teal-dark);margin-top:1rem}
.connect{display:grid;grid-template-columns:1fr minmax(330px,.8fr);gap:clamp(3rem,8vw,8rem)}
.interest-form{background:white;border:1px solid var(--line);border-radius:28px;padding:clamp(1.5rem,4vw,3rem);box-shadow:0 18px 50px rgba(21,50,58,.08)}
label{display:block;font-weight:700;font-size:.9rem;margin:.75rem 0 .35rem}
input,select{width:100%;min-height:50px;border:1px solid #b7cbc7;border-radius:10px;background:white;padding:.75rem;font:inherit;color:var(--ink)}
select{margin-bottom:1.4rem}
.interest-form .button{width:100%}
.form-note{font-size:.8rem;color:var(--muted);text-align:center;margin:1rem 0 0}
footer{display:grid;grid-template-columns:1fr 2fr auto;gap:2rem;align-items:start;padding:2.5rem clamp(1.25rem,5vw,5.5rem);background:#0d2b32;color:#bcd0d2;font-size:.8rem}
.footer-brand{font-family:"Playfair Display",serif;font-size:1.15rem;color:white;text-decoration:none}
footer p{margin:0}

@media(max-width:980px){nav{display:none;position:absolute;top:92px;left:0;right:0;background:white;padding:1.5rem;flex-direction:column;box-shadow:0 20px 30px rgba(0,0,0,.08)}
nav.open{display:flex}
.menu-button{display:block;border:1px solid var(--line);border-radius:999px;background:white;padding:.6rem .9rem;font-weight:700}
.hero{grid-template-columns:1fr;min-height:auto}
.hero-card{transform:none;max-width:680px}
.service-grid{grid-template-columns:1fr 1fr}
.welcome-carousel-section,.about,.community,.connect{grid-template-columns:1fr}
.about-visual{max-width:650px}
.carousel{width:min(100%,520px)}
.topic-grid{grid-template-columns:1fr 1fr}
footer{grid-template-columns:1fr}
}

@media(max-width:620px){body{font-size:16px}
.site-header{height:78px}
.header-logo{width:175px;height:auto}
.brand small{display:none}
nav{top:78px}
.hero{padding-top:3.5rem}
.hero-actions{align-items:flex-start;flex-direction:column}
.reframe{justify-content:flex-start;overflow-x:auto}
.reframe p{white-space:nowrap}
.service-grid{grid-template-columns:1fr}
.topic-grid{grid-template-columns:1fr}
.service-grid article{min-height:220px}
.number{margin-bottom:2rem}
.primary-logo{min-height:220px;background-size:contain}
.community{gap:1.5rem}
footer{padding-bottom:4rem}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
.carousel-track{transition:none}
}
