@font-face{font-family:Public Sans;src:url('/assets/fonts/public-sans-latin-400-normal.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Public Sans;src:url('/assets/fonts/public-sans-latin-500-normal.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:Public Sans;src:url('/assets/fonts/public-sans-latin-600-normal.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:Public Sans;src:url('/assets/fonts/public-sans-latin-700-normal.woff2') format('woff2');font-weight:700;font-display:swap}
:root{--ink:#081d4a;--text:#243a4e;--muted:#576b79;--blue:#1e84cc;--line:#d3dbe2;--paper:#f5f8fb;--warm:#e8f1f8;--orange:#0e94dc;--pale:#e7f0f8;--error:#9a3030;--font:'Public Sans',Arial,sans-serif;--text-display:clamp(2.75rem,4.6vw,4rem);--text-section:clamp(1.875rem,2.7vw,2.375rem);--text-step:1.625rem;--text-subheading:1.125rem;--text-body:1rem;--text-control:.9375rem;--text-lead:1.125rem;--text-small:.875rem;--text-label:.75rem}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:108px;font-size:100%}
body{margin:0;color:var(--text);background:var(--paper);font-family:var(--font);font-size:var(--text-body);line-height:1.75;-webkit-font-smoothing:antialiased}
body.modal-open{overflow:hidden}
button,input,select,textarea{font:inherit}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
button{color:inherit}
button:disabled{cursor:wait;opacity:.65}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:5px}
input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
[hidden]{display:none!important}
h1,h2,h3,p{margin:0}
h1,h2,h3{color:var(--ink);font-weight:500}
h2{font-size:var(--text-section);line-height:1.22;letter-spacing:-1.2px}
h3{font-size:var(--text-subheading);line-height:1.3}
img{display:block;max-width:100%;height:auto}
.container{width:min(1184px,calc(100% - 96px));margin-inline:auto}
.icon{display:inline-block;width:22px;height:22px;flex:0 0 auto;vertical-align:middle}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;top:8px;left:8px;transform:translateY(-180%);z-index:100;background:var(--ink);color:white;padding:10px 18px}
.skip-link:focus{transform:none}
.site-header{background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:92px;gap:30px}
.brand{display:flex;align-items:center;flex-shrink:0;color:var(--ink)}
.brand .brand-logo{width:210px;height:auto;object-fit:contain}
.brand .brand-program{margin-left:4px;font-size:var(--text-small);font-weight:500;letter-spacing:.35px;line-height:1.2}
.header-inner nav{display:flex;align-items:center;gap:24px;font-size:var(--text-control)}
.header-inner nav>a{transition:color .15s}
.header-inner nav>a:hover{color:var(--blue)}
.nav-chat-btn{display:inline-flex;align-items:center;gap:7px;background:rgba(8,29,74,0.05);border:1px solid rgba(8,29,74,0.12);border-radius:20px;padding:6px 14px;color:var(--ink);font-size:var(--text-small);font-weight:600;transition:all .15s}
.nav-chat-btn:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.nav-chat-btn .icon{width:16px;height:16px;color:var(--blue);transition:color .15s}
.nav-chat-btn:hover .icon{color:#fff}
.header-inner nav .nav-enroll{display:flex;gap:20px;align-items:center;color:var(--ink);border-left:1px solid var(--line);padding:9px 0 9px 24px;font-weight:600}
.icon-button{display:grid;place-items:center;width:40px;height:40px;background:transparent;border:0;border-radius:3px}
.icon-button:hover{background:rgba(8,29,74,0.06)}
.header-mobile-actions{display:none}
.mobile-menu{display:none}
.hero{padding-top:56px;background:var(--paper)}
.hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:58px;align-items:center}
.eyebrow{font-size:var(--text-label);font-weight:600;letter-spacing:1.25px;text-transform:uppercase;display:flex;align-items:center;gap:12px;margin-bottom:27px}
.small-line{display:block;width:22px;height:2px;background:var(--orange)}
.hero h1{font-size:var(--text-display);font-weight:500;line-height:1.1;letter-spacing:-.045em;margin-bottom:24px}
.hero h1 span{color:var(--blue)}
.hero-copy>p{max-width:455px;font-size:var(--text-lead);line-height:1.7}
.hero-copy .hero-audience{font-size:var(--text-small);color:var(--muted);line-height:1.75;max-width:480px;margin-top:16px}
.hero-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:26px}
.mobile-only-actions{display:none}
.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:15px 22px;min-height:52px;line-height:1.25;border:1px solid transparent;font-size:var(--text-control);font-weight:500;border-radius:2px;transition:background .15s,color .15s}
.button-primary{background:var(--ink);color:#fff}
.button-primary:hover{background:#113278}
.button-light{background:var(--paper);color:var(--ink)}
.button-light:hover{background:#e3ebf4}
.text-button,.inline-link{display:inline-flex;align-items:center;justify-content:flex-start;gap:11px;border:0;padding:8px 0;background:transparent;color:var(--ink);font-size:var(--text-control);font-weight:500;line-height:1.35;min-height:44px}
.text-button:hover,.inline-link:hover{color:var(--blue)}
.text-button .icon,.inline-link .icon{width:18px;height:18px}
.hero-art{background:#f6f8f4;padding:20px 24px 0;align-self:stretch;display:flex;flex-direction:column;justify-content:center;border:1px solid #d9dfd7;position:relative}
.hero-art:before{content:'';position:absolute;top:-1px;right:-1px;width:43px;height:3px;background:var(--orange)}
.art-heading{display:flex;align-items:center;justify-content:space-between;color:var(--ink);font-size:var(--text-small);font-weight:600;letter-spacing:.4px}
.art-index{font-size:var(--text-label);font-weight:600;color:var(--blue);background:rgba(50,107,135,0.08);padding:3px 10px;border-radius:12px}
.hero-art picture,.art-picture{display:block;width:100%;margin:16px 0 16px}
.hero-art picture img,.routine-scene-img{width:100%;height:auto;display:block;object-fit:contain;border-radius:2px}
.hero-art>img{width:100%;margin:18px 0 0;flex:1;object-fit:contain}
.art-caption{display:block;padding:15px 0;border-top:1px solid #c7d0c6;font-size:var(--text-small);color:var(--ink);line-height:1.5}
.hero-bottom{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;border-block:1px solid var(--line);padding-block:21px;margin-top:54px;font-size:var(--text-small);align-items:center}
.hero-bottom a,.hero-bottom button{display:flex;align-items:center;justify-content:center;color:var(--ink);font-weight:500;text-align:center;transition:color .15s}
.hero-bottom a:hover,.hero-bottom button:hover{color:var(--blue)}
.hero-bottom button{border:0;padding:0;background:transparent;font-size:var(--text-small);cursor:pointer}
.section{padding-block:85px}
.section-number{font-size:var(--text-label);font-weight:600;letter-spacing:1.25px;text-transform:uppercase;margin-bottom:15px;color:var(--muted)}
.section-header{display:flex;align-items:flex-end;justify-content:space-between;gap:25px}
.section-lead-note{max-width:440px;font-size:var(--text-body);color:var(--muted);line-height:1.75;text-align:right}

/* Diabetes Pillars Section (Option B) */
.diabetes-section{background:#fff;border-bottom:1px solid var(--line)}
.diabetes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px}
.diabetes-card{background:var(--paper);border:1px solid var(--line);border-radius:2px;padding:32px 28px;display:flex;flex-direction:column;transition:border-color .15s}
.diabetes-card:hover{border-color:var(--blue)}
.card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}
.card-num{font-size:var(--text-label);font-weight:700;color:var(--muted);letter-spacing:.6px}
.card-icon{display:grid;place-items:center;width:44px;height:44px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:2px}
.diabetes-card:nth-child(2) .card-icon{background:#fdf6ed;border-color:#f1ded0}
.diabetes-card:nth-child(3) .card-icon{background:#edf4ee;border-color:#dae6db}
.card-icon .icon{width:24px;height:24px}
.diabetes-card h3{font-size:var(--text-subheading);font-weight:600;letter-spacing:-.4px;line-height:1.35;margin-bottom:6px}
.card-subhead{font-size:var(--text-small);font-weight:600;color:var(--blue);margin-bottom:14px}
.diabetes-card>p:last-child{font-size:var(--text-body);line-height:1.75;color:var(--text);margin-top:auto}
.diabetes-disclaimer{display:flex;align-items:flex-start;gap:12px;font-size:var(--text-small);color:var(--muted);margin-top:28px;padding:14px 18px;background:var(--paper);border:1px solid var(--line);border-radius:2px;line-height:1.65}
.diabetes-disclaimer .icon{width:18px;height:18px;color:var(--blue);flex-shrink:0;margin-top:2px}

.routine-section{background:var(--paper);border-bottom:1px solid var(--line)}
.routine-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:40px;border-block:1px solid var(--line)}
.routine-step{padding:30px 32px 32px}
.routine-step:first-child{padding-left:0}
.routine-step:last-child{padding-right:0}
.routine-step+.routine-step{border-left:1px solid var(--line)}
.step-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:23px}
.step-number{font-size:var(--text-label);letter-spacing:.6px;color:var(--muted)}
.step-icon{display:grid;place-items:center;width:49px;height:49px;color:var(--ink);background:var(--pale)}
.routine-step:nth-child(2) .step-icon{background:#f4e6d6}
.routine-step:nth-child(3) .step-icon{background:#e8eddf}
.step-icon .icon{width:27px;height:27px}
.routine-step h3{font-size:var(--text-step);letter-spacing:-.7px}
.step-label{font-size:var(--text-small);font-weight:600;color:var(--blue);margin:9px 0 15px}
.routine-step>p:last-child{font-size:var(--text-body);line-height:1.8;max-width:305px}
.routine-note{display:flex;align-items:center;gap:11px;font-size:var(--text-small);color:var(--muted);margin-top:22px}
.routine-note .icon{width:17px;height:17px}
.tips-section{background:#fff;border-bottom:1px solid var(--line)}
.tips-layout{display:grid;grid-template-columns:.78fr 1.22fr;gap:0 84px}
.tips-intro{padding-top:5px}
.tips-intro>p:not(.section-number){margin-top:21px;font-size:var(--text-body);max-width:345px;line-height:1.9}
.tips-intro .tips-context{font-size:var(--text-small)!important;color:var(--muted);margin-top:13px!important}
.tips-intro .text-button{margin-top:20px}
.tips-list{display:grid;grid-template-columns:1fr 1fr;gap:0 28px;border-top:1px solid var(--line)}
.tip{display:grid;grid-template-columns:22px 27px 1fr;gap:12px;align-items:start;padding:24px 0;border-bottom:1px solid var(--line)}
.tip-index{font-size:var(--text-label);color:var(--muted);padding-top:5px}
.tip>.icon{width:23px;height:23px;color:var(--blue)}
.tip h3{font-size:var(--text-subheading);font-weight:600;line-height:1.4}
.tip p{font-size:var(--text-body);line-height:1.75;margin-top:6px;color:var(--muted)}
.tip:last-child{grid-column:1/-1;grid-template-columns:22px 27px 1fr}
.doctor-note{grid-column:1/-1;display:flex;align-items:center;gap:15px;margin-top:36px;padding:14px 18px;border-left:2px solid var(--orange);background:#f0ebe1;font-size:var(--text-small);color:var(--ink)}
.note-mark{font-weight:600;display:grid;place-items:center;border:1px solid var(--orange);width:19px;height:19px;line-height:1;font-size:var(--text-small);flex-shrink:0}
.guide-section{background:#edf2f3;border-block:1px solid #dde4e4;padding-block:64px}
.guide-layout{display:grid;grid-template-columns:320px 1fr;gap:100px;align-items:center;max-width:1020px}
.guide-cover{position:relative;display:block;width:220px;justify-self:center;padding:0;border:1px solid #bdced7;background:#fff;transform:rotate(-3deg);box-shadow:8px 8px 0 #d6e1e3;transition:transform .2s}
.guide-cover:hover{transform:rotate(0)}
.guide-cover img{width:100%}
.guide-cover span{display:flex;justify-content:space-between;align-items:center;padding:11px 13px;background:var(--ink);color:white;font-size:var(--text-small);text-align:left}
.guide-cover .icon{width:15px;height:15px}
.guide-copy>p:not(.section-number){margin-top:20px;font-size:var(--text-body);max-width:460px}
.document-meta{display:flex;gap:14px;align-items:center;font-size:var(--text-small);color:var(--muted);margin-top:18px}
.document-meta span+span{border-left:1px solid #adbfc5;padding-left:14px}
.document-meta span:first-child{font-weight:600;color:var(--ink)}
.guide-actions{display:flex;align-items:flex-start;flex-direction:column;gap:12px;margin-top:27px}
.guide-copy .source-note{font-size:var(--text-small)!important;line-height:1.8;color:var(--muted);max-width:420px}
.enrollment-section{background:var(--paper);border-top:1px solid var(--line)}
.enrollment-layout{display:grid;grid-template-columns:1fr 1.12fr;gap:72px;align-items:start}
.enrollment-intro>p:not(.section-number){font-size:var(--text-body);line-height:1.75;color:var(--text);margin-top:18px;max-width:480px}
.enrollment-outline{list-style:none;margin:28px 0 0;padding:0;border-top:1px solid var(--line);max-width:480px}
.enrollment-outline li{border-bottom:1px solid var(--line);padding:16px 0;display:flex;gap:16px;align-items:flex-start}
.enrollment-outline .step-num{display:grid;place-items:center;width:28px;height:28px;border-radius:2px;background:rgba(23,62,84,0.06);font-size:var(--text-label);font-weight:700;color:var(--ink);flex-shrink:0;margin-top:2px}
.enrollment-outline strong{display:block;font-size:var(--text-subheading);font-weight:600;color:var(--ink);line-height:1.3}
.enrollment-outline p{font-size:var(--text-small);color:var(--muted);line-height:1.5;margin-top:3px}
.enrollment-cta-card{background:#fff;border:1px solid var(--line);border-radius:2px;padding:38px 36px;display:flex;flex-direction:column;justify-content:space-between}
.cta-card-header h3{font-size:var(--text-section);letter-spacing:-.8px;margin-bottom:12px}
.cta-card-header p{font-size:var(--text-body);color:var(--text);line-height:1.7}
.cta-card-features{margin:28px 0 32px;display:flex;flex-direction:column;gap:14px;border-top:1px solid var(--line);padding-top:22px}
.cta-feature{display:flex;align-items:center;gap:12px;font-size:var(--text-control);color:var(--ink);font-weight:500}
.cta-feature .icon{width:18px;height:18px;color:var(--blue);background:rgba(30,132,204,0.08);padding:3px;border-radius:2px}
.cta-enroll-btn{width:100%;justify-content:space-between}

/* Enrollment Dialog Modal */
.enrollment-dialog{width:540px;max-width:calc(100vw - 32px);padding:0;border:1px solid var(--line);border-radius:3px;background:#fff;box-shadow:0 24px 80px rgba(8,29,74,0.18)}
.enrollment-modal-window{display:flex;flex-direction:column}
.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:24px 28px 18px;border-bottom:1px solid var(--line);background:var(--paper)}
.modal-header .section-number{margin-bottom:6px}
.modal-header h2{font-size:var(--text-subheading);font-weight:600;letter-spacing:-.3px}
.modal-body{padding:26px 28px 32px}
.step-intro-text{font-size:var(--text-small);color:var(--muted);line-height:1.6;margin-bottom:16px}
.modal-actions{margin-top:28px}
.modal-actions .button{width:100%;justify-content:space-between}
.modal-actions-split{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:28px}
.modal-actions-split .form-submit{width:auto;flex:1;justify-content:space-between;margin-top:0}
.success-actions{margin-top:24px;display:flex;flex-direction:column;gap:10px}
.success-actions .button{width:100%;justify-content:space-between}
.success-actions .text-button{justify-content:center}

.form-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}
.form-header h3{font-size:var(--text-subheading);font-weight:600}
.form-header>span{font-size:var(--text-small);color:var(--muted)}
.field{margin-bottom:17px}
.field>label,.field label{font-size:var(--text-small);font-weight:600;color:var(--ink);display:block}
.field label>span{font-size:var(--text-small);font-weight:400}
.field input,.field select,.field textarea{width:100%;display:block;background:white;border:1px solid #b9c7ca;color:var(--ink);padding:13px 14px;font-size:var(--text-body);line-height:1.4;border-radius:2px;margin-top:7px;min-height:48px}
.field input::placeholder,.field textarea::placeholder{color:var(--muted);font-size:var(--text-body)}
.field input[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:var(--error)}
.phone-field{display:flex;align-items:center;background:white;border:1px solid #b9c7ca;border-radius:2px;margin-top:7px}
.phone-field>span{padding:0 13px;border-right:1px solid var(--line);font-size:var(--text-body)}
.phone-field>input{margin:0;border:0;flex:1;min-width:0}
.phone-field:has(input[aria-invalid=true]){border-color:var(--error)}
.field-error{color:var(--error);font-size:var(--text-small);line-height:1.5;margin-top:5px}
.field-error:empty{display:none}
.checkbox-row{display:flex;gap:12px;align-items:flex-start;font-size:var(--text-body);line-height:1.65;margin-top:14px;cursor:pointer}
.checkbox-row input{appearance:none;flex:0 0 auto;width:20px;height:20px;border:1px solid #8a9fa7;background:white;margin:3px 0 0;border-radius:2px;cursor:pointer;position:relative}
.checkbox-row input:checked{background:var(--ink);border-color:var(--ink)}
.checkbox-row input:checked:after{content:'';position:absolute;width:8px;height:4px;border-left:1.5px solid white;border-bottom:1.5px solid white;transform:rotate(-45deg);top:5px;left:4px}
.checkbox-row span{flex:1}
.checkbox-row small{display:block;font-size:var(--text-small);color:var(--muted);margin-top:3px}
.form-error{font-size:var(--text-small);color:var(--error);line-height:1.7;margin-top:14px}
.form-error:empty{display:none}
.registration-success{text-align:left;padding-block:10px;outline:none}
.success-mark{width:46px;height:46px;display:grid;place-items:center;background:#e0ebe1;color:#416b50;margin-bottom:20px}
.registration-success h3{font-size:var(--text-section);letter-spacing:-1px}
.registration-success>p:not(.section-number){font-size:var(--text-body);line-height:1.75;margin-top:14px}
.support-section{background:var(--ink);color:#d8e5e8;padding-block:45px}
.support-layout{display:grid;grid-template-columns:64px 1fr auto;gap:27px;align-items:center}
.support-icon{width:56px;height:56px;background:#ffffff0d;border:1px solid #6d87924d;display:grid;place-items:center}
.support-icon .icon{width:27px;height:27px}
.support-section h2{color:white;font-size:var(--text-section);letter-spacing:-.8px}
.support-section .section-number{color:#b6cbd0;margin-bottom:10px}
.support-section p:not(.section-number){font-size:var(--text-body);margin-top:12px}
.review-resources{background:#fff;border-bottom:1px solid var(--line);padding-block:10px}
.review-resources summary{display:flex;justify-content:space-between;align-items:center;padding-block:19px;font-size:var(--text-small);color:var(--muted);cursor:pointer;list-style:none}
summary::-webkit-details-marker{display:none}
.review-resources summary>span{display:flex;align-items:center;gap:10px}
.review-resources summary .icon{width:16px;height:16px}
details[open] summary>.icon{transform:rotate(180deg)}
.review-files{display:grid;grid-template-columns:1fr 1fr;gap:40px;border-top:1px solid var(--line);padding-top:22px;padding-bottom:12px;font-size:var(--text-body)}
.review-files strong{font-weight:500;color:var(--ink)}
.review-files p{font-size:var(--text-small);margin-top:5px;color:var(--muted)}
.review-resources .source-note{font-size:var(--text-small);color:var(--muted);padding-bottom:15px}
.site-footer{background:#fff;border-top:1px solid var(--line);padding-top:30px}
.footer-top{display:flex;justify-content:space-between;gap:40px;align-items:center;padding-bottom:25px}
.footer-top .brand-logo{width:210px}
.footer-top>p{font-size:var(--text-small);line-height:1.9;color:var(--muted)}
.footer-top .footer-links{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.footer-top .inline-link{font-size:var(--text-control);min-height:36px;white-space:nowrap}
.mobile-actions{display:none}
dialog{padding:0;border:1px solid var(--line);color:var(--text);background:var(--paper);max-width:calc(100vw - 40px);border-radius:4px;box-shadow:0 20px 90px #152a3433}
dialog::backdrop{background:#132b3c66}
.chat-dialog{width:480px;height:min(790px,calc(100dvh - 48px));max-height:calc(100dvh - 48px)}
.chat-window{height:100%;display:flex;flex-direction:column;position:relative}
.chat-header{display:flex;align-items:center;gap:11px;background:#173e43;color:white;padding:13px 14px;flex-shrink:0}
.chat-avatar{width:42px;height:42px;background:#fff;display:grid;place-items:center;border-radius:50%;flex-shrink:0}
.chat-avatar img{width:32px;height:32px;object-fit:contain}
.chat-header>div:nth-child(2){flex:1;min-width:0}
.chat-header h2{color:white;font-size:var(--text-body);font-weight:500;letter-spacing:-.1px;line-height:1.4}
.chat-header p{font-size:var(--text-label);color:#c1d9d7}
.chat-header .icon-button{width:40px;height:42px;color:white;flex-shrink:0}
.chat-header .icon-button:hover{background:#ffffff13}
.chat-header .icon-button .icon{width:18px;height:18px}
.chat-preview-label{text-align:center;font-size:var(--text-label);color:#506363;background:#edf2ee;padding:5px 10px;border-bottom:1px solid #cfdcd3;flex-shrink:0}
.chat-messages{overflow-y:auto;overscroll-behavior:contain;flex:1;padding:18px 16px;background:#e8ece3;scroll-behavior:smooth}
.chat-date{font-size:var(--text-label);color:#577067;display:table;margin:0 auto 18px;background:#f3f5ef;padding:4px 11px;border-radius:4px}
.chat-bubble{max-width:91%;background:#fff;border:1px solid #dce0d6;border-radius:0 6px 6px;padding:12px 13px 6px;margin-bottom:10px;font-size:var(--text-body);line-height:1.65;white-space:pre-line;overflow-wrap:anywhere;box-shadow:0 1px 0 #cdd8c54d}
.chat-bubble.user{background:#deedcf;border-color:#c8dcc4;margin-left:auto;border-radius:6px 0 6px 6px;max-width:80%;padding-top:8px}
.bubble-time{text-align:right;font-size:var(--text-label);color:#5b7568;display:block;line-height:1.4;margin-top:5px;white-space:normal}
.chat-bubble.menu-bubble{padding-bottom:0}
.menu-caption{font-size:var(--text-body);font-weight:500}
.menu-open-button{width:calc(100% + 26px);margin:7px -13px 0;display:flex;align-items:center;justify-content:center;gap:8px;background:transparent;border:0;border-top:1px solid #dde4d9;padding:11px;color:#286456;font-size:var(--text-control);font-weight:500;white-space:normal}
.menu-open-button .icon{width:16px;height:16px}
.chat-actions{display:flex;gap:6px;flex-wrap:wrap;max-width:91%;margin:0 0 15px}
.chat-action{border:1px solid #cddace;background:#fafdf7;color:#315d51;font-size:var(--text-small);padding:9px 12px;border-radius:3px;min-height:44px}
.chat-action:hover{background:#eff6e9}
.document-bubble{white-space:normal;padding:10px 10px 6px}
.chat-document-link{display:flex;align-items:center;gap:12px;padding:12px 10px;background:#edf1e9;border:1px solid #dae1d3;border-radius:3px;width:100%;text-align:left}
.pdf-mark{background:#cc7862;color:#fff;display:flex;align-items:center;justify-content:center;font-size:var(--text-label);width:31px;height:39px;position:relative;font-weight:600;flex-shrink:0}
.pdf-mark:after{content:'';position:absolute;top:0;right:0;border-bottom:8px solid #f0bba6;border-right:8px solid #edf1e9}
.chat-document-link>span:nth-child(2){display:block;flex:1;min-width:0}
.chat-document-link strong{display:block;color:#2b4637;font-size:var(--text-control);font-weight:500;line-height:1.5;overflow-wrap:anywhere}
.chat-document-link small{font-size:var(--text-label);color:#536958}
.chat-document-link .icon{width:18px;height:18px;color:#52745b}
.document-bubble>p{font-size:var(--text-small);margin-top:9px;line-height:1.7}
.chat-document-footer{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:3px}
.chat-document-footer a{font-size:var(--text-small);color:#2c6957;text-decoration:underline}
.chat-composer{display:flex;align-items:center;gap:7px;background:#f5f6f2;padding:9px 10px;flex-shrink:0;border-top:1px solid #dbe2d8}
.chat-composer input{min-width:0;flex:1;border:1px solid #cdd8cf;background:#fff;border-radius:3px;padding:10px 11px;font-size:var(--text-body);min-height:48px;color:var(--ink)}
.chat-composer input::placeholder{font-size:var(--text-small);color:var(--muted)}
.chat-composer .icon-button{width:40px;height:44px;color:#446f61;flex-shrink:0}
.chat-composer .chat-send{background:#235b4c;color:white;width:44px;border-radius:3px}
.chat-composer .icon{width:20px;height:20px}
.chat-bottom-note{text-align:center;font-size:var(--text-label);color:#62776b;background:#f5f6f2;padding:0 8px 8px;flex-shrink:0}
.chat-network-error{font-size:var(--text-small);background:#fff3ef;border-top:1px solid #e8c7b8;color:var(--error);padding:9px 15px;flex-shrink:0}
.chat-network-error button{border:0;background:transparent;text-decoration:underline;color:var(--error);font-size:var(--text-small);margin-left:10px}
.chat-picker{position:absolute;inset:auto 0 0;background:#fff;z-index:2;border-top:1px solid #b9cbc2;box-shadow:0 -6px 30px #16372213;padding:0 18px 17px;border-radius:9px 9px 0 0;max-height:calc(100% - 20px);overflow-y:auto}
.picker-header{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #d9e3dc;font-size:var(--text-body);font-weight:500;color:#24574b}
.picker-header .icon-button{width:31px;height:31px}
.picker-option{display:flex;align-items:center;justify-content:space-between;gap:15px;text-align:left;padding:17px 2px;border:0;border-bottom:1px solid #e0e7e1;width:100%;background:transparent;color:#2c483b}
.picker-option:last-child{border-bottom:0}
.picker-option:hover{background:#f5f8f2}
.picker-option strong{display:block;font-size:var(--text-body);font-weight:500}
.picker-option small{display:block;font-size:var(--text-small);color:#566f63;margin-top:3px}
.picker-option .icon{width:17px;height:17px}
.chat-enroll-action{margin-top:9px;font-size:var(--text-control);min-height:39px;background:#245b4d}
.chat-support-form{background:#fff;border:1px solid #dce0d6;padding:16px;border-radius:0 6px 6px;margin-bottom:14px;max-width:97%;white-space:normal}
.chat-support-form h3{font-size:var(--text-subheading);font-weight:600}
.support-preview-copy{font-size:var(--text-small);color:var(--muted);margin:6px 0 15px}
.chat-support-form .field{margin-bottom:12px}
.chat-support-form .field label{font-size:var(--text-small)}
.chat-support-form input,.chat-support-form select,.chat-support-form textarea{font-size:var(--text-body);min-height:46px;padding:9px 10px;margin-top:5px}
.chat-support-form .checkbox-row{font-size:var(--text-body);gap:9px;margin-top:13px}
.chat-support-form .checkbox-row input{padding:0;width:20px;height:20px;min-height:0;margin-top:3px}
.chat-support-form .checkbox-row input:checked:after{top:5px;left:4px}
.chat-support-form .button{width:100%;min-height:48px;font-size:var(--text-control);padding:12px 13px;justify-content:space-between;margin-top:16px}
.chat-support-form .optional{font-size:var(--text-small)}
.chat-support-form .field-error{font-size:var(--text-small)}
.document-dialog{width:820px;max-height:calc(100dvh - 52px);overflow-y:auto}
.document-header,.terms-header{padding:21px 26px;display:flex;gap:20px;justify-content:space-between;align-items:center;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:2}
.document-header .section-number,.terms-header .section-number{font-size:var(--text-label);margin-bottom:5px}
.document-header h2,.terms-header h2{font-size:1.5rem;letter-spacing:-.02em}
.document-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 26px;background:var(--paper);border-bottom:1px solid var(--line);flex-wrap:wrap}
.document-tabs{display:flex;gap:5px}
.document-tabs button{border:1px solid var(--line);padding:7px 12px;background:#fff;font-size:var(--text-small);border-radius:2px;min-height:44px}
.document-tabs button[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}
.document-toolbar .inline-link{font-size:var(--text-small)}
.document-toolbar .icon{width:15px;height:15px}
.document-page{padding:26px;background:#e8edef;min-height:250px}
.document-page img{margin:auto;max-width:100%;max-height:900px;width:auto;background:#fff;border:1px solid #d0dbe0}
.document-caption{font-size:var(--text-small);color:var(--muted);padding:12px 26px;background:#fff}
.terms-dialog{width:660px;max-height:calc(100dvh - 52px);overflow-y:auto}
.terms-content{padding:26px;line-height:1.9;font-size:var(--text-body)}
.terms-content h3{font-size:var(--text-subheading);font-weight:600;margin:23px 0 7px}
.terms-preview{padding:12px 15px;border-left:2px solid var(--orange);background:#f0e8dc;font-size:var(--text-small)}
.terms-content .button{margin-top:25px}
@media(min-width:1500px){
  .container{width:min(1230px,calc(100% - 140px))}
  .hero{padding-top:76px}
  .hero-grid{gap:80px}
  .hero-bottom{margin-top:65px}
}
@media(max-width:1100px){
  .container{width:calc(100% - 64px)}
  .hero-grid{gap:35px;grid-template-columns:1fr 1fr}
  .hero-actions{gap:14px}
  .hero-actions>.button{padding-inline:16px;gap:16px}
  .hero-art{padding-inline:17px}
  .tips-layout{gap:0 45px}
  .tips-list{gap:0 18px}
  .tip{grid-template-columns:13px 21px 1fr;gap:8px}
  .enrollment-layout{gap:60px}
  .guide-layout{gap:65px}
  .support-layout{gap:20px}
  .support-layout>.button{padding-inline:15px;gap:16px}
  .hero-bottom{gap:20px}
  .header-inner nav{gap:22px}
}
@media(max-width:800px){
  .container{width:calc(100% - 48px)}
  .header-inner{min-height:72px}
  .brand .brand-logo{width:155px}
  .header-inner nav{gap:17px}
  .header-inner nav .nav-enroll{gap:12px;padding-left:17px}
  .hero{padding-top:36px}
  .eyebrow{gap:8px;letter-spacing:.6px;margin-bottom:22px}
  .hero-bottom{grid-template-columns:1fr;gap:14px;margin-top:36px}
  .section-lead-note{text-align:left;max-width:100%;margin-top:6px}
  .diabetes-grid{grid-template-columns:1fr;gap:16px;margin-top:28px}
  .diabetes-card{padding:24px 20px}
  .routine-step{padding-inline:20px}
  .tips-layout{grid-template-columns:1fr;gap:30px}
  .tips-intro>p:not(.section-number){max-width:530px}
  .tips-intro h2 br{display:none}
  .tips-list{gap:0 35px}
  .tip{grid-template-columns:17px 25px 1fr;gap:12px}
  .doctor-note{margin-top:0}
  .guide-layout{grid-template-columns:220px 1fr;gap:45px}
  .guide-cover{width:180px}
  .enrollment-layout{gap:35px;grid-template-columns:.82fr 1.18fr}
  .enrollment-panel{padding:25px}
  .support-layout{grid-template-columns:46px 1fr;gap:22px}
  .support-icon{width:46px;height:46px}
  .support-layout>.button{grid-column:2;justify-self:start;gap:16px}
  .footer-top{gap:25px}
}
@media(max-width:600px){
  html{scroll-padding-top:76px}
  .container{width:calc(100% - 36px)}
  .header-inner{min-height:64px}
  .brand .brand-logo{width:145px}
  .hero{padding-top:24px}
  .hero-grid{display:flex;flex-direction:column;gap:18px}
  .eyebrow{letter-spacing:.85px;margin-bottom:14px}
  .hero h1{margin-bottom:14px}
  .hero-copy>p{max-width:100%;font-size:var(--text-body);line-height:1.6}
  .hero-copy .hero-audience{max-width:100%;margin-top:10px}
  .hero-art{padding:14px 14px 0;min-height:0}
  .art-picture{margin:10px 0 10px}
  .hero-art>img{max-height:265px;margin:10px auto 2px}
  .art-caption{display:block;padding:12px 0;font-size:var(--text-small);line-height:1.4}
  .hero-copy .hero-actions{display:none}
  .mobile-only-actions{display:flex;margin-top:14px;width:100%}
  .mobile-only-actions>.button{width:100%;min-height:50px;padding:14px 18px;justify-content:space-between}
  .hero-bottom{margin-top:22px;grid-template-columns:1fr;gap:0;padding:4px 0}
  .hero-bottom>a,.hero-bottom>button{padding-block:11px}
  .hero-bottom>*+*{border-top:1px solid var(--line)}
  .section{padding-block:48px}
  .section-number{margin-bottom:13px}
  .section-header{align-items:flex-start;flex-direction:column;gap:13px}
  .section-lead-note{text-align:left}
  .diabetes-grid{margin-top:20px}
  .routine-grid{grid-template-columns:1fr;margin-top:24px}
  .routine-step,.routine-step:first-child,.routine-step:last-child{padding:22px 0 25px;display:grid;grid-template-columns:1fr 48px;gap:0 15px}
  .routine-step+.routine-step{border-left:0;border-top:1px solid var(--line)}
  .step-top{display:contents}
  .step-number{grid-column:1;margin-bottom:8px}
  .step-icon{grid-column:2;grid-row:1/4;width:43px;height:43px;align-self:center}
  .step-icon .icon{width:24px;height:24px}
  .routine-step .step-label{margin:8px 0 12px}
  .routine-step>p:last-child{grid-column:1/-1;max-width:100%}
  .routine-note{align-items:flex-start;margin-top:19px}
  .routine-note .icon{margin-top:2px}
  .tips-layout{gap:24px}
  .tips-intro>p:not(.section-number){margin-top:18px}
  .tips-list{grid-template-columns:1fr;gap:0}
  .tip{padding:18px 0;grid-template-columns:19px 25px 1fr;gap:12px}
  .tip p{margin-top:4px}
  .tip:last-child{grid-template-columns:19px 25px 1fr}
  .doctor-note{padding:13px;gap:12px}
  .guide-layout{grid-template-columns:1fr;gap:32px}
  .guide-cover{width:170px;justify-self:start;margin-left:9px}
  .guide-section{padding-block:45px}
  .guide-actions{gap:10px}
  .enrollment-layout{grid-template-columns:1fr;gap:29px}
  .enrollment-intro h2 br{display:none}
  .enrollment-intro>p:not(.section-number){max-width:100%;margin-top:18px}
  .enrollment-outline{display:none}
  .preview-note{max-width:100%;margin-top:19px}
  .enrollment-panel{padding:23px 20px}
  .field input{min-height:48px}
  .consent-header{margin-top:23px}
  .checkbox-row{gap:10px}
  .form-submit{min-height:50px}
  .support-section{padding-block:35px}
  .support-layout{grid-template-columns:1fr;gap:18px}
  .support-icon{display:none}
  .support-layout>.button{grid-column:1;gap:16px}
  .support-section p:not(.section-number){margin-top:10px}
  .review-resources summary{padding-block:15px}
  .review-files{grid-template-columns:1fr;gap:18px}
  .site-footer{padding-top:25px;padding-bottom:28px}
  .footer-top{flex-wrap:wrap;align-items:flex-start;gap:20px;padding-bottom:10px}
  .footer-top .brand-logo{width:160px}
  .footer-top .brand{width:100%}
  .footer-top>p{flex:1}
  .chat-dialog{width:100%;height:100dvh;max-width:100%;max-height:100dvh;border:0;border-radius:0;margin:0}
  .chat-header{padding:13px 12px;padding-top:max(13px,env(safe-area-inset-top))}
  .chat-bottom-note{padding-bottom:max(8px,env(safe-area-inset-bottom))}
  .chat-messages{padding:17px 13px}
  .chat-bubble{max-width:93%}
  .document-dialog,.terms-dialog{width:calc(100% - 20px);max-width:calc(100% - 20px);max-height:calc(100dvh - 24px)}
  .document-header,.terms-header{padding:17px}
  .document-toolbar{padding:11px 15px;gap:9px}
  .document-toolbar .inline-link{gap:7px}
  .document-tabs{gap:4px}
  .document-tabs button{padding:7px 9px}
  .document-page{padding:15px}
  .document-caption{padding:11px 15px}
  .terms-content{padding:20px}
  .enrollment-cta-card{padding:28px 22px}
  .cta-card-header h3{font-size:var(--text-subheading)}
  .enrollment-dialog{width:calc(100% - 24px);max-width:calc(100% - 24px)}
  .modal-header{padding:18px 20px 14px}
  .modal-body{padding:20px 20px 26px}
  .modal-actions-split{flex-direction:column-reverse;gap:12px}
  .modal-actions-split .form-submit,.modal-actions-split .text-button{width:100%;justify-content:center}
}

.art-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:8px 0 14px}
.art-step-chip{display:flex;align-items:center;justify-content:center;gap:6px;padding:7px 6px;background:rgba(23,62,84,0.04);border:1px solid rgba(23,62,84,0.08);border-radius:2px;font-size:var(--text-small);font-weight:600;color:var(--ink);transition:all .15s}
.art-step-chip:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.art-step-chip span{color:var(--orange);font-size:var(--text-label);font-weight:700}
.art-step-chip:hover span{color:#fff}
@media(max-width:800px){
  .header-mobile-actions{display:flex;align-items:center;gap:10px}
  .header-mobile-enroll{display:inline-flex;align-items:center;gap:7px;background:var(--ink);color:#fff;padding:8px 14px;font-size:var(--text-small);font-weight:600;border-radius:2px;line-height:1.2;transition:background .15s}
  .header-mobile-enroll:hover{background:#113278}
  .header-mobile-enroll .icon{width:14px;height:14px}
  .mobile-menu{display:grid}
  .header-inner nav{display:none;position:absolute;top:100%;left:0;right:0;padding:6px 20px 14px;background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0;box-shadow:0 8px 24px rgba(8,29,74,0.08)}
  .header-inner nav.open{display:flex}
  .header-inner nav a{padding:14px 0;font-size:var(--text-control);font-weight:500;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}
  .header-inner nav .nav-chat-btn{display:flex;flex-direction:row-reverse;align-items:center;justify-content:space-between;padding:14px 0;border:0;border-radius:0;background:transparent;width:100%;font-size:var(--text-control);font-weight:500;color:var(--ink);border-bottom:1px solid var(--line)}
  .header-inner nav .nav-chat-btn .icon{width:18px;height:18px}
  .header-inner nav .nav-enroll{padding:14px 0;border-left:0;border-bottom:0;justify-content:space-between}
  .enrollment-layout{grid-template-columns:1fr;gap:32px}
  .enrollment-intro>p:not(.section-number){max-width:560px}
  .enrollment-outline{display:none}
  .enrollment-panel{max-width:620px;width:100%}
}
@media(max-width:600px){
  .hero-actions{display:grid;grid-template-columns:1fr;gap:8px}
  .hero-actions>.button{width:100%;justify-content:space-between;min-height:52px;padding:15px 18px}
  .hero-actions>.text-button{min-height:44px;gap:10px}
  .tip,.tip:last-child{grid-template-columns:22px 25px 1fr}
  .hero-art>img{max-height:none}
  .art-steps{padding:12px 0 16px}
  .guide-cover{width:200px}
  .guide-actions{align-items:stretch}
  .guide-actions .button{justify-content:space-between}
  .form-header{gap:12px}
  .phone-field>span{padding-inline:10px}
  .footer-top>p{flex-basis:100%}
  .chat-header{gap:8px}
  .chat-header h2{font-size:var(--text-body)}
  .chat-support-form{max-width:100%}
  .document-header,.terms-header{gap:12px}
}

@media(prefers-reduced-motion:reduce){
  html,.chat-messages{scroll-behavior:auto}
  *,*:before,*:after{transition:none!important;animation:none!important}
}
@media print{
  .site-header nav,.mobile-actions,.hero-actions,dialog,.support-section,.enrollment-section,.review-resources{display:none!important}
  .site-header{position:static}
  .container{width:100%}
  .section{padding-block:28px}
  .hero{padding-top:24px}
  .hero h1{font-size:42px}
  .hero-art{max-height:280px}
  .hero-bottom{margin-top:20px}
  .guide-section{break-inside:avoid}
  .site-footer{padding-bottom:0}
}
