@font-face{font-family:Atkinson;src:url('/assets/AtkinsonHyperlegibleNext_400Regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Atkinson;src:url('/assets/AtkinsonHyperlegibleNext_600SemiBold.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Atkinson;src:url('/assets/AtkinsonHyperlegibleNext_700Bold.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:AtkinsonMono;src:url('/assets/AtkinsonHyperlegibleMono_400Regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@layer od-layout{
:where(.od-stack,.od-row,.od-row-top,.od-cluster,.od-grid,.od-field,.od-stat,.od-cell,.od-tile)>:where(*){min-width:0}
.od-stack{display:flex;flex-direction:column;gap:var(--od-gap,8px)}
.od-row{display:flex;align-items:center;gap:var(--od-gap,8px)}
.od-row-top{display:flex;align-items:flex-start;gap:var(--od-gap,8px)}
.od-cluster{display:flex;flex-wrap:wrap;align-items:center;gap:var(--od-gap,8px)}
.od-fill{flex:1 1 0;min-width:0}
.od-fixed{flex:none}
.od-grid{display:grid;gap:var(--od-gap,12px);grid-template-columns:repeat(var(--od-cols,3),minmax(0,1fr))}
.od-stat,.od-field,.od-cell{display:grid;gap:var(--od-gap,2px)}
:where(.od-stat,.od-field,.od-cell)>:where(*){display:block}
.od-tile{display:grid;grid-template-rows:auto 1fr}
:where(.od-tile)>:where(*){display:block}
.od-media{display:block;width:100%;height:auto;aspect-ratio:var(--od-ratio,auto)}
.od-media-cover{object-fit:cover}
.od-truncate{display:block;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.od-clamp-2,.od-clamp-3{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.od-clamp-2{-webkit-line-clamp:2}
.od-clamp-3{-webkit-line-clamp:3}
.od-lines-2{min-height:calc(2 * 1.4em)}
.od-nowrap{white-space:nowrap}
.od-keep{word-break:keep-all;overflow-wrap:anywhere}
.od-screen{display:grid;grid-template-rows:auto minmax(0,1fr) auto;height:100%}
.od-scroll{overflow-y:auto;overscroll-behavior:contain;min-height:0}
.od-rail{display:flex;gap:var(--od-gap,8px);overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;padding-inline:var(--od-rail-pad,16px);scroll-padding-inline:var(--od-rail-pad,16px)}
.od-rail::-webkit-scrollbar{display:none}
:where(.od-rail)>:where(*){flex:none;scroll-snap-align:start}
:where(.od-rail)>:where(:last-child){margin-inline-end:var(--od-rail-pad,16px)}
.od-spacer{flex:none;visibility:hidden;pointer-events:none}
.od-touch{min-width:44px;min-height:44px}
}
:root{color-scheme:light;--canvas:#f6faf8;--surface:#fff;--soft:#e5efe9;--ink:#172421;--muted:#475b53;--accent:#17685f;--accent-hover:#0c4d46;--on-accent:#fff;--line:#bdd2c7;--deep:#103c35;--deep-ink:#f7fbf8;--lime:#c4e8bc;--focus:#0c655a;--radius-stage:24px;--radius-card:16px;--radius-control:14px;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--space-5:48px;--space-6:64px;--space-7:96px;--space-8:128px;--motion-fast:180ms;--motion-main:300ms}
html[data-theme="dark"]{color-scheme:dark;--canvas:#0f1714;--surface:#18241e;--soft:#20362b;--ink:#edf2ef;--muted:#b3c6b8;--accent:#71c8ba;--accent-hover:#a1e1d5;--on-accent:#06120f;--line:#3b5147;--deep:#123d36;--deep-ink:#f7fbf8;--lime:#b7ddb6;--focus:#a1e1d5}
@media(prefers-color-scheme:dark){html:not([data-theme="light"]){color-scheme:dark;--canvas:#0f1714;--surface:#18241e;--soft:#20362b;--ink:#edf2ef;--muted:#b3c6b8;--accent:#71c8ba;--accent-hover:#a1e1d5;--on-accent:#06120f;--line:#3b5147;--deep:#123d36;--deep-ink:#f7fbf8;--lime:#b7ddb6;--focus:#a1e1d5}}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:88px}
body{margin:0;background:var(--canvas);color:var(--ink);font:400 17px/1.62 Atkinson,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
img{max-width:100%}
a{color:var(--accent);text-underline-offset:3px}
@media(hover:hover){a:hover{color:var(--accent-hover)}}
button,input{font:inherit}
button{cursor:pointer}
:focus-visible{outline:3px solid var(--focus);outline-offset:4px}
::selection{background:var(--accent);color:var(--on-accent)}
[hidden]{display:none!important}
.skip-link{position:absolute;z-index:100;top:-100px;left:16px;padding:8px 16px;background:var(--accent);color:var(--on-accent);border-radius:var(--radius-control)}
.skip-link:focus{top:16px;color:var(--on-accent)}
.container{width:min(100% - 48px,1248px);margin-inline:auto}
.container-narrow{width:min(100% - 48px,800px);margin-inline:auto}
.site-main{overflow:clip}
.site-header{position:sticky;top:0;z-index:30;background:var(--canvas);border-bottom:1px solid var(--line)}
.header-inner{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);font-size:20px;font-weight:700;letter-spacing:-.04em;text-decoration:none;white-space:nowrap}
@media(hover:hover){.brand:hover{color:var(--ink)}}
.brand-mark{display:block;width:42px;height:auto;border-radius:11px}
.brand-mark--dark{display:none}
html[data-theme="dark"] .brand-mark--light{display:none}
html[data-theme="dark"] .brand-mark--dark{display:block}
@media(prefers-color-scheme:dark){html:not([data-theme="light"]) .brand-mark--light{display:none}html:not([data-theme="light"]) .brand-mark--dark{display:block}}
.site-nav{display:flex;align-items:center;gap:clamp(16px,2vw,32px)}
.site-nav a{color:var(--ink);font-size:15px;font-weight:600;text-decoration:none;white-space:nowrap;transition:color var(--motion-fast) ease}
.site-nav a[aria-current=page]{color:var(--accent)}
@media(hover:hover){.site-nav a:hover{color:var(--accent)}}
.site-nav .nav-cta{padding:8px 16px;border:1px solid var(--accent);border-radius:var(--radius-control);color:var(--accent)}
@media(hover:hover){.site-nav .nav-cta:hover{background:var(--accent);color:var(--on-accent)}}
.menu-toggle{display:none;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);font-size:15px;font-weight:700}
.theme-toggle{display:inline-flex;align-items:center;flex:none;min-height:44px;margin-left:auto;padding:0;border:0;background:none;color:var(--ink);font-size:15px;font-weight:600;white-space:nowrap;transition:color var(--motion-fast) ease}
@media(hover:hover){.theme-toggle:hover{color:var(--accent)}}
h1,h2,h3,p,figure{margin-top:0}
h1,h2,h3{font-weight:700;letter-spacing:-.05em}
p{overflow-wrap:break-word}
.eyebrow{margin:0 0 24px;color:var(--accent);font:400 13px/1.4 AtkinsonMono,monospace;letter-spacing:.08em;text-transform:uppercase}
.button-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:12px 22px;border:1px solid var(--accent);border-radius:var(--radius-control);background:var(--accent);color:var(--on-accent);font-size:16px;font-weight:700;line-height:1.25;text-align:center;text-decoration:none;white-space:nowrap;transition:transform var(--motion-fast) ease-out,background var(--motion-fast) ease-out,color var(--motion-fast) ease-out}
@media(hover:hover){.button:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--on-accent);transform:translateY(-2px)}}
.button:active{transform:translateY(0)}
.button-text{padding-inline:8px;border-color:transparent;background:transparent;color:var(--accent)}
@media(hover:hover){.button-text:hover{border-color:transparent;background:transparent;color:var(--accent-hover)}}
.small-link{font-weight:700}
/* Homepage */
.hero{padding:clamp(64px,8vw,112px) 0;background:var(--deep);color:var(--deep-ink)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);align-items:center;gap:clamp(40px,6vw,96px)}
.hero .eyebrow{color:var(--lime)}
.hero h1{max-width:11ch;margin:0 0 28px;font-size:clamp(3.5rem,6vw,6.8rem);line-height:.99;letter-spacing:-.068em;text-wrap:balance}
.hero-lead{max-width:42ch;margin:0 0 32px;color:#e5f0e9;font-size:clamp(18px,1.6vw,22px);line-height:1.55}
.hero .button{background:#f7fbf8;border-color:#f7fbf8;color:#103c35}
@media(hover:hover){.hero .button:hover{background:var(--lime);border-color:var(--lime);color:#103c35}}
.hero .button-text{background:transparent;border-color:transparent;color:#f7fbf8;text-decoration:underline;text-underline-offset:5px}
@media(hover:hover){.hero .button-text:hover{background:transparent;color:var(--lime)}}
.hero-visual{display:grid;place-items:center;margin:0;padding:clamp(24px,4vw,48px);border-radius:var(--radius-stage);background:#e5efe9}
.hero-visual img{display:block;width:min(100%,460px);height:auto;filter:drop-shadow(0 20px 24px rgba(18,60,53,.16))}
.hero-visual figcaption{justify-self:start;margin-top:8px;color:#24463d;font:400 14px/1.4 AtkinsonMono,monospace}
.process-section{padding:var(--space-8) 0;background:var(--canvas)}
.process-intro{display:grid;grid-template-columns:minmax(0,.3fr) minmax(0,.7fr);gap:clamp(32px,6vw,96px);align-items:start;padding-bottom:var(--space-7)}
.process-intro .eyebrow{margin-top:8px}
.process-intro h2{max-width:13ch;margin-bottom:24px;font-size:clamp(3rem,5.3vw,5.8rem);line-height:1.04;text-wrap:balance}
.process-intro p:last-child{grid-column:2;max-width:48ch;margin:0;color:var(--muted);font-size:19px}
.process-chapter{display:grid;grid-template-areas:'copy visual';grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:clamp(40px,7vw,104px);align-items:center;padding:var(--space-7) 0;border-top:1px solid var(--line)}
.process-chapter:last-child{padding-bottom:0}
.process-chapter--reverse{grid-template-areas:'visual copy';grid-template-columns:minmax(0,1.22fr) minmax(0,.78fr)}
.chapter-copy{grid-area:copy}
.chapter-kicker{margin:0 0 24px;color:var(--accent);font:400 14px/1.4 AtkinsonMono,monospace;letter-spacing:.05em;text-transform:uppercase}
.chapter-copy h3{max-width:13ch;margin:0 0 20px;font-size:clamp(2.8rem,4.3vw,5.2rem);line-height:1.04;text-wrap:balance}
.chapter-copy p:not(.chapter-kicker){max-width:40ch;margin:0 0 24px;color:var(--muted);font-size:18px}
.chapter-copy .chapter-detail{padding-top:20px;border-top:1px solid var(--line);font-size:16px!important}
.chapter-detail strong{color:var(--ink)}
.chapter-visual{grid-area:visual;color-scheme:light;display:grid;grid-template-rows:auto 1fr;gap:16px;min-height:520px;padding:clamp(20px,3vw,32px);border:1px solid var(--art-border);border-radius:var(--radius-stage);background:var(--art-stage);--art-border:#cbd9cf;--art-stage:#e4ece6;--art-paper:#fdfefc;--art-ink:#183b2f;--art-muted:#50665c;--art-rule:#cad8cf;--art-accent:#17685f;--art-shadow:rgba(18,60,53,.12);--scan-ink:#08786a;--scan-trail:rgba(8,120,106,.24)}
.scene-head{display:flex;align-items:center;gap:10px;color:var(--art-accent);font:700 13px/1.4 AtkinsonMono,monospace;letter-spacing:.04em}
.scene-head svg,.scene-confirmed svg,.scene-connection svg,.notification-title svg{display:block;width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.scene-composition{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-width:0;min-height:408px;padding:8px 0 16px}
.scene-media{position:relative;display:block;width:min(100%,248px);flex:none}
.scene-media--prescription{width:min(100%,232px)}
.scene-media img{display:block;width:100%;height:auto;filter:drop-shadow(0 8px 12px var(--art-shadow))}
.scan-window{position:absolute;top:38%;left:25%;display:block;width:50%;height:46%;overflow:hidden;pointer-events:none;color:var(--scan-ink)}
.scene-media--prescription .scan-window{top:18%;left:18%;width:64%;height:68%}
.scan-corner{position:absolute;display:block;width:16px;height:16px;border:2px solid transparent}
.scan-corner--tl{top:0;left:0;border-top-color:currentColor;border-left-color:currentColor}
.scan-corner--tr{top:0;right:0;border-top-color:currentColor;border-right-color:currentColor}
.scan-corner--bl{bottom:0;left:0;border-bottom-color:currentColor;border-left-color:currentColor}
.scan-corner--br{bottom:0;right:0;border-bottom-color:currentColor;border-right-color:currentColor}
.scan-beam{position:absolute;inset:0;display:block;border-bottom:2px solid currentColor;opacity:0;transform:translateY(-100%)}
.scan-beam::after{content:"";position:absolute;right:0;bottom:2px;left:0;height:16px;background:var(--scan-trail)}
.capture-slip{display:grid;gap:6px;width:min(100%,272px);padding:12px 16px;border-bottom:2px dotted var(--art-rule);border-radius:var(--radius-card);background:var(--art-paper);box-shadow:0 8px 20px var(--art-shadow);color:var(--art-ink)}
.capture-slip--prescription{gap:8px}
.slip-overline{display:block;color:var(--art-muted);font-size:12px;font-weight:600;line-height:1.4;letter-spacing:.02em}
.slip-name{display:block;font-size:18px;font-weight:700;line-height:1.25}
.slip-row{display:flex;align-items:center;gap:12px;font-size:16px;line-height:1.3}
.slip-row span{display:block}
.slip-row span+span{padding-left:12px;border-left:1px solid var(--art-rule);font-weight:700}
.slip-entry{display:grid;gap:2px}
.slip-entry strong,.slip-entry span{display:block;line-height:1.35}
.slip-entry strong{font-size:16px}
.slip-entry span{color:var(--art-muted);font-size:14px}
.slip-entry+.slip-entry{padding-top:8px;border-top:1px solid var(--art-rule)}
.schedule-card{display:grid;gap:8px;width:min(100%,248px);padding:16px 20px 12px;border-top:8px solid var(--art-accent);border-radius:var(--radius-card);background:var(--art-paper);box-shadow:0 8px 20px var(--art-shadow);color:var(--art-ink)}
.schedule-overline{display:block;color:var(--art-muted);font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}
.schedule-time{display:block;font:400 44px/1.1 AtkinsonMono,monospace;letter-spacing:-.055em;white-space:nowrap}
.schedule-time small{font-size:18px;letter-spacing:0}
.schedule-medicine{display:grid;gap:0;font-size:16px;line-height:1.35}
.schedule-medicine strong,.schedule-medicine span{display:block}
.schedule-medicine span{color:var(--art-muted)}
.scene-confirmed{display:flex;align-items:center;gap:6px;padding-top:8px;border-top:1px solid var(--art-rule);color:var(--art-accent);font-size:13px;line-height:1.35}
.scene-confirmed svg{width:16px;height:16px}
.scene-connection{display:block;color:var(--art-muted);transform:rotate(90deg)}
.notification-card{display:grid;gap:12px;width:min(100%,280px);padding:16px;border:1px solid var(--art-rule);border-radius:var(--radius-card);background:var(--art-paper);box-shadow:0 8px 20px var(--art-shadow);color:var(--art-ink)}
.notification-head{display:flex;align-items:center;gap:8px;font-size:13px;line-height:1.3}
.notification-head img{display:block;width:24px;height:auto;border-radius:6px}
.notification-head strong{flex:1;min-width:0}
.notification-head time{color:var(--art-muted);font-size:12px;white-space:nowrap}
.notification-title{display:flex;align-items:center;gap:6px;font-size:16px;font-weight:600;line-height:1.25}
.notification-title svg{width:18px;height:18px;color:var(--art-accent)}
.notification-detail{display:block;color:var(--art-muted);font-size:14px;line-height:1.4}
.feature-section{padding:var(--space-8) 0;background:var(--surface);border-top:1px solid var(--line)}
.feature-top{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.7fr);gap:clamp(40px,8vw,120px);align-items:end}
.feature-heading h2{max-width:15ch;margin:0 0 20px;font-size:clamp(3rem,5vw,5.6rem);line-height:1.05;text-wrap:balance}
.feature-heading p{max-width:43ch;margin:0;color:var(--muted);font-size:19px}
.feature-side{max-width:34ch;margin:0;padding-top:24px;border-top:1px solid var(--line);color:var(--muted);font-size:17px}
.feature-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin-top:var(--space-7);border-top:1px solid var(--line)}
.feature-item{padding:32px 32px 40px 0;border-bottom:1px solid var(--line)}
.feature-item:nth-child(even){padding-left:32px;border-left:1px solid var(--line)}
.feature-item h3{margin:0 0 12px;font-size:clamp(26px,2.4vw,36px);line-height:1.17}
.feature-item p{max-width:43ch;margin:0;color:var(--muted)}
.privacy-band{padding:var(--space-7) 0;background:var(--soft)}
.privacy-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:clamp(40px,7vw,112px);align-items:center}
.privacy-band h2{max-width:14ch;margin:0 0 20px;font-size:clamp(3rem,5vw,5.5rem);line-height:1.04}
.privacy-band p{max-width:50ch;margin:0;color:var(--muted);font-size:18px}
.privacy-details{padding-top:24px;border-top:1px solid var(--line)}
.privacy-details p{font-size:17px}
.privacy-details a{display:inline-block;margin-top:20px;font-weight:700}
.pricing-section{padding:var(--space-8) 0;border-top:1px solid var(--line)}
.pricing-intro{max-width:760px;margin-bottom:var(--space-5)}
.pricing-intro h2{margin:0 0 20px;font-size:clamp(3rem,5vw,5.5rem);line-height:1.06}
.pricing-intro p{max-width:54ch;margin:0;color:var(--muted);font-size:18px}
.pricing-kicker{display:block;margin:0 0 20px;color:var(--accent);font:400 13px/1.4 AtkinsonMono,monospace;letter-spacing:.08em;text-transform:uppercase}
.pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.plan{display:flex;flex-direction:column;gap:16px;min-height:330px;padding:32px 32px 40px 0}
.plan+.plan{padding-left:32px;border-left:1px solid var(--line)}
.plan h3{margin:0;font-size:29px}
.plan-price{margin:0;font-size:clamp(3.2rem,4.5vw,5rem);font-weight:700;line-height:1.1;letter-spacing:-.06em;white-space:nowrap}
.plan-price small{font-size:16px;font-weight:400;letter-spacing:0}
.plan p:not(.plan-price){margin:0;color:var(--muted);font-size:16px}
.plan .plan-foot{margin-top:auto!important;color:var(--ink)!important;font-weight:600}
.pricing-note{max-width:76ch;margin:24px 0 0;color:var(--muted);font-size:16px}
.faq-section{padding:var(--space-8) 0;background:var(--surface);border-top:1px solid var(--line)}
.faq-layout{display:grid;grid-template-columns:minmax(220px,.38fr) minmax(0,.62fr);gap:clamp(32px,6vw,96px)}
.faq-layout h2{margin:0 0 16px;font-size:clamp(3rem,4vw,4.8rem);line-height:1.08}
.faq-layout>div>p{color:var(--muted)}
.faq-list{border-top:1px solid var(--line)}
.faq-list details{border-bottom:1px solid var(--line)}
.faq-list summary{position:relative;padding:24px 44px 24px 0;list-style:none;cursor:pointer;font-size:19px;font-weight:600;line-height:1.35}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:'+';position:absolute;right:0;top:20px;color:var(--accent);font-size:28px;font-weight:400;line-height:1}
.faq-list details[open] summary::after{content:'−'}
.faq-list details p{max-width:65ch;margin:0 0 24px;color:var(--muted)}
.download-section{padding:var(--space-7) 0;background:#0b2924;color:#f7fbf8}
.download-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:clamp(40px,7vw,104px);align-items:center}
.download-section .eyebrow{color:#c4e8bc}
.download-section h2{max-width:12ch;margin:0 0 20px;font-size:clamp(3rem,5vw,5.6rem);line-height:1.05}
.download-section p{max-width:44ch;color:#e3eee7;font-size:18px}
.download-section .button-text{color:#d0efd0}
@media(hover:hover){.download-section .button-text:hover{color:#f7fbf8}}
.store-grid{display:flex;flex-wrap:wrap;align-items:start;gap:24px}
.store-option{display:grid;justify-items:start;gap:12px}
.store-badge{display:inline-block;--store-badge-width:188px;border-radius:5px;line-height:0;text-decoration:none}
.store-badge-art{display:flex;align-items:center;width:var(--store-badge-width);height:64px;overflow:hidden}
.store-badge img{display:block;flex:none;height:auto;max-width:none}
.store-option--apple .store-badge img{width:var(--store-badge-width)}
/* Google artwork has a 564 x 168 visible mark inside a 646 x 250 transparent canvas. */
.store-option--google .store-badge img{width:215.333px;transform:translateX(-13.667px)}
.store-badge:focus-visible{outline-color:#c4e8bc}
.store-state{display:block;color:#d1e2d7;font:400 15px/1.4 AtkinsonMono,monospace}
.site-footer{padding:56px 0 32px;border-top:1px solid var(--line)}
.footer-grid{display:grid;grid-template-columns:minmax(0,1.2fr) repeat(3,minmax(0,.55fr));gap:32px}
.footer-intro{max-width:34ch;margin:16px 0 0;color:var(--muted);font-size:16px}
.footer-col h3{margin:0 0 14px;font-size:16px;letter-spacing:0}
.footer-col a{display:block;margin:8px 0;color:var(--muted);font-size:16px;text-decoration:none}
@media(hover:hover){.footer-col a:hover{color:var(--accent)}}
.footer-bottom{display:flex;justify-content:space-between;gap:24px;margin-top:56px;padding-top:24px;border-top:1px solid var(--line);color:var(--muted);font-size:14px}
.footer-bottom p{margin:0}
/* Guide, support, and legal pages */
.inner-hero{padding:clamp(64px,8vw,112px) 0 48px;border-bottom:1px solid var(--line)}
.inner-hero h1{max-width:15ch;margin:0 0 20px;font-size:clamp(3rem,5vw,5rem);line-height:1.06;text-wrap:balance}
.inner-hero p{max-width:65ch;margin:0;color:var(--muted);font-size:19px}
.inner-hero .legal-meta{margin-top:20px;font-size:14px}
.content-section{padding:48px 0 112px}
.content-section h2{margin:48px 0 16px;font-size:clamp(27px,2.5vw,36px);line-height:1.16}
.content-section h2:first-child{margin-top:0}
.content-section h3{margin:28px 0 8px;font-size:22px}
.content-section p,.content-section li{max-width:72ch}
.content-section p,.content-section ul,.content-section ol{margin-bottom:20px}
.content-section li+li{margin-top:8px}
.content-section ul,.content-section ol{padding-left:24px}
.content-section a{font-weight:600}
.guide-steps{display:grid;margin:40px 0 64px;border-top:1px solid var(--line)}
.guide-step{padding:32px 0;border-bottom:1px solid var(--line)}
.guide-step h2{margin:0 0 8px;font-size:29px}
.guide-step p{margin:0;color:var(--muted)}
.callout{padding:24px;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--soft)}
.callout strong{display:block;margin-bottom:8px}
.callout p:last-child{margin-bottom:0}
.support-card{padding:32px;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface)}
.support-card h2{margin-top:0}
.support-card .button{margin-top:8px}
.legal-page .content-section h2{scroll-margin-top:96px}
.legal-meta{font:400 14px/1.5 AtkinsonMono,monospace;color:var(--muted)}
dialog{width:min(calc(100% - 32px),480px);padding:32px;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);color:var(--ink);box-shadow:0 30px 100px rgba(0,0,0,.24)}
dialog::backdrop{background:rgba(6,18,15,.66)}
dialog h2{margin:0 0 12px;font-size:30px}
dialog p{margin-bottom:24px;color:var(--muted)}
.motion-ready [data-reveal]{opacity:0;transform:translateY(24px)}
.motion-ready [data-reveal].is-visible{animation:page-rise 400ms cubic-bezier(.22,1,.36,1) var(--reveal-delay,0ms) both}
.process-chapter{position:relative;border-top:0}
.process-chapter::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--line);transform:scaleX(1);transform-origin:left}
.motion-ready .process-chapter::before{transform:scaleX(0)}
.motion-ready .process-chapter.is-visible::before{animation:line-draw 400ms ease-out both}
.motion-ready [data-scene] .scene-media{opacity:0;transform:translateY(12px) rotate(-3deg)}
.motion-ready [data-scene='prescription'] .scene-media{transform:translateY(12px) rotate(3deg)}
.motion-ready [data-scene].is-playing .scene-media{animation:scene-arrive 400ms ease-out both}
.motion-ready [data-scene] .scan-window{opacity:0}
.motion-ready [data-scene].is-playing .scan-window{animation:scan-focus 120ms linear 280ms both}
.motion-ready [data-scene='label'].is-playing .scan-beam{animation:scan-sweep 888ms linear 448ms both}
.motion-ready [data-scene='prescription'].is-playing .scan-beam{animation:scan-sweep 1110ms linear 490ms both}
.motion-ready [data-scene] .capture-slip{opacity:0;transform:translateY(-12px) scale(.96)}
.motion-ready [data-scene='label'].is-playing .capture-slip{animation:slip-arrive 360ms ease-out 1480ms both}
.motion-ready [data-scene='prescription'].is-playing .capture-slip{animation:slip-arrive 360ms ease-out 1780ms both}
.motion-ready [data-scene='routine'] .schedule-card,.motion-ready [data-scene='routine'] .scene-confirmed,.motion-ready [data-scene='routine'] .scene-connection,.motion-ready [data-scene='routine'] .notification-card{opacity:0}
.motion-ready [data-scene='routine'].is-playing .schedule-card{animation:scene-arrive 400ms ease-out both}
.motion-ready [data-scene='routine'].is-playing .scene-confirmed{animation:page-rise 240ms ease-out 640ms both}
.motion-ready [data-scene='routine'].is-playing .scene-connection{animation:connection-arrive 240ms ease-out 1000ms both}
.motion-ready [data-scene='routine'].is-playing .notification-card{animation:notification-arrive 360ms ease-out 1280ms both}
@keyframes page-rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
@keyframes line-draw{to{transform:scaleX(1)}}
@keyframes scene-arrive{from{opacity:0;transform:translateY(12px) rotate(-3deg)}to{opacity:1;transform:translateY(0) rotate(0)}}
@keyframes scan-focus{to{opacity:1}}
@keyframes scan-sweep{0%{opacity:0;transform:translateY(-100%)}10%{opacity:1}90%{opacity:1}100%{opacity:0;transform:translateY(0)}}
@keyframes slip-arrive{to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes connection-arrive{from{opacity:0;transform:rotate(90deg) translateX(-6px)}to{opacity:1;transform:rotate(90deg) translateX(0)}}
@keyframes notification-arrive{from{opacity:0;transform:translateY(-12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:1024px){.hero-grid{gap:40px}.hero h1{font-size:clamp(3.5rem,6vw,6rem)}.process-chapter,.process-chapter--reverse{gap:48px}.chapter-visual{min-height:480px}.site-nav{gap:14px}.site-nav a{font-size:14px}.footer-grid{grid-template-columns:1.3fr repeat(3,.7fr)}}
@media(max-width:767px){.container,.container-narrow{width:min(100% - 32px,640px)}.header-inner{min-height:64px;gap:8px}.brand{margin-right:auto}.theme-toggle{margin-left:0}.menu-toggle{display:inline-flex}.site-nav{position:absolute;top:64px;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;padding:12px 16px 20px;background:var(--canvas);border-bottom:1px solid var(--line)}.site-nav.is-open{display:flex}.site-nav a{padding:13px 12px;font-size:16px}.site-nav .nav-cta{margin-top:6px;text-align:center}.hero-grid,.feature-top,.privacy-layout,.download-layout,.faq-layout{grid-template-columns:1fr}.hero{padding:64px 0 80px}.hero h1{font-size:clamp(3.5rem,10vw,5rem)}.hero-visual{padding:24px}.process-section,.feature-section,.pricing-section,.faq-section{padding:80px 0}.process-intro{grid-template-columns:1fr;gap:16px;padding-bottom:56px}.process-intro p:last-child{grid-column:1}.process-chapter,.process-chapter--reverse{grid-template-areas:'copy' 'visual';grid-template-columns:1fr;gap:36px;padding:72px 0}.chapter-visual{min-height:0}.feature-list{margin-top:64px}.pricing-grid{grid-template-columns:1fr}.plan,.plan+.plan{min-height:0;padding:28px 0;border-left:0;border-bottom:1px solid var(--line)}.plan:last-child{border-bottom:0}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-brand{grid-column:1/-1}.footer-bottom{flex-direction:column}.inner-hero{padding-top:64px}}
@media(max-width:520px){body{font-size:16px}.hero h1{font-size:clamp(3.2rem,13vw,4.5rem)}.hero-lead,.process-intro p:last-child,.chapter-copy p:not(.chapter-kicker),.feature-heading p,.pricing-intro p,.download-section p,.privacy-band p{font-size:17px}.button-row{align-items:stretch}.button-row .button{width:100%}.process-intro h2,.feature-heading h2,.pricing-intro h2,.faq-layout h2,.download-section h2{font-size:clamp(2.7rem,10vw,3.6rem)}.chapter-copy h3{font-size:clamp(2.7rem,10vw,3.7rem)}.chapter-visual{padding:20px}.scene-composition{min-height:388px}.feature-list{grid-template-columns:1fr}.feature-item,.feature-item:nth-child(even){padding:28px 0;border-left:0}.privacy-band h2{font-size:clamp(2.8rem,11vw,4rem)}.store-grid{gap:24px}.support-card{padding:24px}.footer-grid{gap:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}.motion-ready [data-reveal],.motion-ready [data-reveal].is-visible,.motion-ready [data-scene] .scene-media,.motion-ready [data-scene] .capture-slip,.motion-ready [data-scene='routine'] .schedule-card,.motion-ready [data-scene='routine'] .scene-confirmed,.motion-ready [data-scene='routine'] .scene-connection,.motion-ready [data-scene='routine'] .notification-card{opacity:1;transform:none}.motion-ready .process-chapter::before{transform:scaleX(1)}.scan-window{display:none}}
