/* SciR (omeletteinc.com/SciR): SciRead's ivory, ink and green; Newsreader display over Onest. */
:root{
  --ivory:#F7F5EF; --paper:#FFFFFF; --ink:#14233A; --ink-2:#3B4A5C; --ink-3:#5A6878; --line:#E2DDD0;
  --green:#237A6B; --green-d:#1D6A5C; --mint:#9CCFC2; --mint-bg:#E4F0EC; --amber:#8A4B12; --amber-bg:#FBEBD7;
  --rose:#7A2222; --rose-bg:#F1E3E3; --night:#0F1D31;
  --display:'Newsreader',Georgia,serif; --sans:'Onest',system-ui,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{font-family:var(--sans);font-size:1.0625rem;line-height:1.6;color:var(--ink);background:var(--ivory);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block;height:auto}
a{color:var(--green-d)}a:hover{color:var(--ink)}
:focus-visible{outline:3px solid var(--mint);outline-offset:3px;border-radius:6px}
.wrap{width:min(1180px,100% - 2rem);margin-inline:auto}
.narrow{width:min(760px,100% - 2rem)}
.skip{position:absolute;left:1rem;top:-80px;z-index:50;background:var(--ink);color:#fff;padding:.6rem 1rem;border-radius:10px}
.skip:focus{top:1rem}

h1,h2,h3{font-family:var(--display);font-weight:500;letter-spacing:-.015em;line-height:1.06;text-wrap:balance}
h1{font-size:clamp(2.8rem,6vw,5.2rem)}
h1 em{font-style:italic;color:var(--green)}
h2{font-size:clamp(2rem,3.6vw,3.1rem);margin-bottom:1.2rem}
h3{font-size:1.35rem;margin-bottom:.4rem}
.kicker{font-size:.8rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--green-d);margin-bottom:.9rem}
.kicker-light{color:var(--mint)}
.lead{font-size:clamp(1.08rem,1.5vw,1.25rem);color:var(--ink-2);max-width:36em}
.lead-light{color:#C9D3DD}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px;padding:0 1.4rem;border-radius:12px;font:inherit;font-weight:600;text-decoration:none;border:0;cursor:pointer;transition:transform .15s,background .15s}
.btn:hover{transform:translateY(-1px)}
.btn-dark{background:var(--ink);color:var(--ivory)}.btn-dark:hover{background:#22395A;color:#fff}
.btn-green{background:var(--green);color:#fff}.btn-green:hover{background:var(--green-d);color:#fff}
.btn-light{background:var(--ivory);color:var(--ink)}.btn-light:hover{background:#fff;color:var(--ink)}
.btn-ghost{border:1.5px solid var(--ink);color:var(--ink);min-height:42px;padding:0 1rem;font-size:.95rem}
.btn-ghost:hover{background:var(--ink);color:var(--ivory)}

/* Header */
.top{position:sticky;top:0;z-index:20;background:rgba(247,245,239,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.top-in{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem 1.6rem;padding:.75rem 0}
.brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--ink)}
.brand img{border-radius:9px}
.brand-name{font-family:var(--display);font-size:1.7rem;font-weight:600;letter-spacing:-.02em}
.brand-by{font-size:.8rem;color:var(--ink-3)}
.nav{display:flex;flex-wrap:wrap;gap:.3rem 1.3rem;margin-left:auto;font-size:.98rem}
.nav a{color:var(--ink);text-decoration:none;padding:.3rem 0;border-bottom:2px solid transparent}
.nav a:hover{border-color:var(--green)}
.nav .nav-labs{font-weight:700;color:var(--green-d)}
@media (max-width:760px){.nav{margin-left:0;order:3;width:100%;overflow-x:auto}.admin-link{margin-left:auto}}

/* Hero */
.hero{position:relative;overflow:hidden;padding:clamp(3rem,7vw,6rem) 0 5.5rem}
.hero-in{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:3rem;align-items:center}
.hero-copy{display:flex;flex-direction:column;gap:1.3rem}
.hero-cta{display:flex;flex-wrap:wrap;gap:.7rem}
.hero-labs{font-size:1rem;color:var(--ink-2)}
.hero-labs a{font-weight:600}
.hero-phones{position:relative;height:clamp(420px,46vw,560px)}
.ph{position:absolute;width:clamp(190px,21vw,260px);border-radius:22px;box-shadow:0 30px 60px -30px rgba(20,35,58,.55)}
.ph-front{left:42%;top:4%;transform:rotate(3deg)}
.ph-back{left:8%;top:12%;transform:rotate(-6deg);opacity:.95}
@media (max-width:700px){.hero-phones{height:400px}.ph-front{left:40%}.ph-back{left:2%}}
.wave{position:absolute;left:0;right:0;bottom:1.4rem;display:flex;justify-content:center;gap:6px;opacity:.5}
.wave span{width:5px;border-radius:3px;background:var(--green);height:12px;animation:wave 1.6s ease-in-out infinite}
.wave span:nth-child(3n){height:26px;animation-delay:.2s}.wave span:nth-child(4n){height:18px;animation-delay:.4s}
.wave span:nth-child(5n){height:32px;animation-delay:.6s}.wave span:nth-child(7n){height:22px;animation-delay:.8s}
@keyframes wave{50%{transform:scaleY(.45)}}

/* Bands */
.band{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:clamp(3.5rem,7vw,5.5rem) 0}
.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin:1rem 0 2.6rem}
.feature{background:var(--ivory);border-radius:18px;padding:1.4rem}
.feature p{color:var(--ink-2);font-size:1rem}
.shots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.6rem,2vw,1.6rem);max-width:820px;margin-inline:auto}
.shots img{border-radius:18px;box-shadow:0 24px 50px -30px rgba(20,35,58,.5)}
.shots img:nth-child(2){transform:translateY(-1.4rem)}

/* Labs */
.labs{background:var(--night);color:#E9EEF3;padding:clamp(3.5rem,8vw,6.5rem) 0;position:relative;overflow:hidden}
.labs::before{content:"";position:absolute;inset:auto -10% -40% auto;width:560px;height:560px;border-radius:50%;background:radial-gradient(circle,rgba(35,122,107,.35),transparent 65%)}
.labs-in{position:relative;display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:3rem;align-items:center}
.labs h2{color:#fff}
.steps{list-style:none;counter-reset:s;display:flex;flex-direction:column;gap:1rem;margin:1.8rem 0}
.steps li{counter-increment:s;position:relative;padding-left:3.2rem;color:#C9D3DD}
.steps li b{color:#fff;font-weight:600}
.steps li::before{content:counter(s);position:absolute;left:0;top:-.1rem;width:2.2rem;height:2.2rem;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#fff;font-weight:700;font-size:.95rem}
.privacy-line{font-size:.95rem;color:var(--mint);border-left:3px solid var(--green);padding-left:.9rem}
.lab-card{background:var(--paper);color:var(--ink);border-radius:24px;padding:1.4rem;display:flex;flex-direction:column;gap:.75rem;box-shadow:0 40px 80px -40px rgba(0,0,0,.6)}
.lab-card-top{display:flex;justify-content:space-between;align-items:baseline}
.lab-card-top span,.lab-card-foot{font-size:.82rem;color:var(--ink-3)}
.paper{display:flex;gap:.8rem;align-items:center;padding:.7rem;border-radius:14px;background:var(--ivory)}
.paper div{flex:1;min-width:0;display:flex;flex-direction:column}
.paper b{font-weight:600;font-size:.98rem;line-height:1.3}
.paper small{font-size:.82rem;color:var(--ink-3)}
.play{width:40px;height:40px;border-radius:11px;background:var(--green);flex:none;position:relative}
.play::after{content:"";position:absolute;left:15px;top:12px;border-left:12px solid #fff;border-top:8px solid transparent;border-bottom:8px solid transparent}
.count{font-size:.85rem;font-weight:700}.count.good{color:var(--green-d)}.count.warn{color:var(--amber)}
.bar{height:8px;border-radius:99px;background:#EAE6DC;overflow:hidden}.bar i{display:block;height:100%;background:var(--green)}
.chips{display:flex;flex-wrap:wrap;gap:.4rem;font-size:.8rem}
.chips span{padding:.2rem .65rem;border-radius:99px}
.chips .ok{background:var(--mint-bg);color:#1D5C50}.chips .mid{background:var(--amber-bg);color:#7A3E0C}.chips .no{background:var(--rose-bg);color:var(--rose)}

/* Price */
.price-in{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:3rem;align-items:start}
.ticks{list-style:none;display:flex;flex-direction:column;gap:.7rem}
.ticks li{position:relative;padding-left:1.8rem}
.ticks li::before{content:"";position:absolute;left:0;top:.45rem;width:.95rem;height:.55rem;border-left:3px solid var(--green);border-bottom:3px solid var(--green);transform:rotate(-45deg)}
.price-card{background:var(--ink);color:#fff;border-radius:26px;padding:2rem;display:flex;flex-direction:column;gap:.9rem}
.price-name{font-size:.82rem;font-weight:700;letter-spacing:.14em;color:var(--mint)}
.price-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:.6rem 1.2rem}
.amount{font-family:var(--display);font-size:3.6rem;font-weight:600;letter-spacing:-.02em}
.amount-sm{font-size:2.3rem}
.per{margin-left:.35rem;color:#C9D3DD}
.or{color:#C9D3DD}
.price-who{font-size:1.1rem}
.price-small{font-size:.9rem;color:#C9D3DD}
.price-small a{color:var(--mint)}

/* Start form */
.start{padding:clamp(3.5rem,7vw,5.5rem) 0}
.form{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;margin-top:1.8rem;background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:clamp(1.2rem,3vw,2rem)}
.form .full{grid-column:1/-1}
.form label{display:flex;flex-direction:column;gap:.35rem;font-size:.92rem;font-weight:600}
.form small{font-weight:400;color:var(--ink-3)}
.form input[type=text],.form input[type=email],.form input[type=password]{min-height:48px;padding:0 .9rem;border:1px solid #CFC8B8;border-radius:11px;font:inherit;font-weight:400;background:#fff;color:var(--ink)}
.form fieldset{border:1px solid var(--line);border-radius:14px;padding:.9rem 1rem;display:flex;flex-wrap:wrap;gap:.4rem 1.8rem}
.form legend{font-size:.92rem;font-weight:600;padding:0 .4rem}
.form .choice{flex-direction:row;align-items:center;gap:.55rem;font-weight:400;font-size:1rem;min-height:40px}
.form .choice em{font-style:normal;font-size:.8rem;font-weight:600;color:var(--green-d);background:var(--mint-bg);padding:.1rem .5rem;border-radius:99px}
.form input[type=radio],.form input[type=checkbox]{width:20px;height:20px;accent-color:var(--green);flex:none}
.form .agree{flex-direction:row;align-items:flex-start;gap:.6rem;font-weight:400;line-height:1.5}
.form-status{font-size:.95rem;min-height:1.4em}
.form-status.err{color:var(--rose)}
.after{margin-top:1rem;font-size:.95rem;color:var(--ink-3)}

/* Questions */
details{border-bottom:1px solid var(--line);padding:1.1rem 0}
summary{cursor:pointer;font-weight:600;font-size:1.1rem;list-style:none;display:flex;justify-content:space-between;gap:1rem}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";color:var(--green);font-size:1.4rem;line-height:1}
details[open] summary::after{content:"–"}
details p{margin-top:.6rem;color:var(--ink-2)}

/* Footer */
.foot{padding:2rem 0;border-top:1px solid var(--line)}
.foot-in{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;font-size:.92rem;color:var(--ink-3)}
.foot-brand{display:flex;align-items:center;gap:.6rem}
.foot-brand img{border-radius:7px}
.foot nav{display:flex;flex-wrap:wrap;gap:1.2rem}

/* Terms and other text pages */
.doc{padding:clamp(2.5rem,6vw,4.5rem) 0;background:var(--paper)}
.doc-title{font-size:clamp(2.2rem,4.4vw,3.4rem);margin-bottom:.6rem}
.doc-date{font-size:.9rem;color:var(--ink-3);margin-bottom:1.4rem}
.doc h2{font-size:1.6rem;margin:2.2rem 0 .7rem}
.doc p,.doc li{color:var(--ink-2)}
.doc ul{padding-left:1.2rem;display:flex;flex-direction:column;gap:.45rem}

/* Store buttons (same look as the omeletteinc.com app pages): Apple and Google Play logos */
.store{display:inline-flex;align-items:center;gap:.7rem;min-height:56px;padding:.45rem 1.2rem .45rem 1rem;border-radius:13px;background:#000;color:#fff;text-decoration:none;transition:transform .15s}
.store:hover{transform:translateY(-1px);color:#fff}
.store svg{width:26px;height:26px;flex:none}
.store span{display:flex;flex-direction:column;line-height:1.1}
.store small{font-size:.72rem;opacity:.85}
.store b{font-size:1.15rem;font-weight:600;letter-spacing:-.01em}

/* Two plans (SciR Labs, SciR Labs + PassB) */
.plans2{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.4rem;margin-top:1.8rem;align-items:stretch}
.plans2 .price-card .ticks{margin:.4rem 0 .6rem}
.plans2 .btn{margin-top:auto}
.plan-light{background:var(--ivory);color:var(--ink);border:1px solid var(--line)}
.plan-light .price-name{color:var(--green-d)}
.plan-light .per,.plan-light .or{color:var(--ink-3)}
.ticks-light li{color:#E9EEF3}
.ticks-light li::before{border-color:var(--mint)}
.best{display:inline-block;margin-left:.4rem;font-size:.7rem;letter-spacing:.06em;padding:.15rem .55rem;border-radius:99px;background:var(--mint);color:var(--ink);vertical-align:middle}
.center-note{text-align:center;margin-top:1.2rem;color:var(--ink-3)}
.center-note a{color:var(--green-d)}
