/* HoldAlarms design C "Calm" (2026-10-23). Loaded after styles.css. Self-hosted fonts (OFL, see fonts/LICENSE.txt). */
@font-face{font-family:"HA Inter";src:url(/fonts/inter-var.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"HA Serif";src:url(/fonts/sourceserif-400.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"HA Serif";src:url(/fonts/sourceserif-600.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"HA Mono";src:url(/fonts/plexmono-400.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"HA Mono";src:url(/fonts/plexmono-600.woff2) format("woff2");font-weight:600;font-display:swap}
:root{
  --bg:#f4f1ec;--bg-elevated:#ffffff;--bg-card:#ffffff;--border:#d5dbd3;--text:#1f2a24;--muted:#5d6a62;
  --accent:#1f4d3a;--accent-dim:rgba(31,77,58,.10);--accent-strong:#163a2b;--ok:#2f7a5a;
  --warn:#a8741a;--warn-soft:rgba(168,116,26,.10);--danger-soft:rgba(168,67,43,.08);--ok-soft:rgba(47,122,90,.08);--retry:#a8741a;
  --radius:22px;--shadow:0 30px 60px -30px rgba(31,77,58,.35);
  --font:"HA Inter",ui-sans-serif,system-ui,sans-serif;--serif:"HA Serif",Georgia,serif;--mono:"HA Mono",ui-monospace,monospace;
  --glass-bg:#ffffff;--glass-bg-strong:rgba(244,241,236,.92);--glass-sheen:none;--glass-border:#d5dbd3;--glass-hl:none;--glass-blur:none;
}
body,body.home-terminal{background:var(--bg)!important;color:var(--text)}
body::before{display:none!important}
h1,h2{font-family:var(--serif)!important;font-weight:600;letter-spacing:-.015em;color:var(--text)}
h3,strong{color:var(--text)}
a{color:var(--accent)}
.site-header{background:rgba(244,241,236,.92)!important;border-bottom:1px solid var(--border)}
.logo{color:var(--text)!important;font-weight:650}
.logo-mark{width:1.6rem;height:1.6rem;border-radius:0;box-shadow:none;background:url(/logo-mark.svg) center/contain no-repeat}
.nav-link{color:var(--muted)}
.btn{border-radius:999px!important}
.btn-primary{background:var(--accent)!important;color:#f4f1ec!important;border-color:var(--accent)!important;box-shadow:none!important}
.btn-primary:hover{background:var(--accent-strong)!important}
.btn-outline{background:transparent!important;color:var(--text)!important;border:1px solid var(--border)!important}
/* hero: centred, log panel underneath */
.hero,.dir-c{background:transparent!important}
.hero-split{display:flex!important;flex-direction:column;align-items:center;text-align:center;gap:3rem}
.hero-copy{max-width:780px;margin:0 auto}
.hero .lede{margin-left:auto;margin-right:auto;color:var(--muted)}
.hero-badges,.hero-cta{justify-content:center}
.dir-c h1{font-family:var(--serif)!important;font-size:clamp(2.4rem,5vw,3.8rem);line-height:1.06}
.dir-c .hero-em{font-family:var(--serif)!important;font-style:italic;font-size:1em;color:var(--ok)}
.dir-c .eyebrow{font-family:var(--mono);background:#e3eee7!important;color:var(--accent)!important;border:0!important;border-radius:999px!important;padding:.45rem 1rem;letter-spacing:.06em;text-transform:uppercase;font-size:.75rem}
.pill,.dir-c .pill{background:#fff!important;color:var(--muted)!important;border:1px solid var(--border)!important;border-radius:999px!important;font-family:var(--font)}
.term{width:100%;max-width:820px;text-align:left;background:#fff!important;border:1px solid var(--border)!important;border-radius:22px!important;box-shadow:var(--shadow)!important}
.term::after{display:none}
.term-bar{background:#fff!important;border-bottom:1px solid var(--border)!important}
.term-bar span{background:#d5dbd3!important}
.term-body{color:var(--text)!important;font-family:var(--mono)!important}
.term-body .ok{color:var(--ok)!important}.term-body .bad{color:#a8432b!important}.term-body .p{color:var(--muted)!important}.cur{color:var(--accent)!important}
/* sections */
.section{background:transparent!important}
.how-strip,.setup{background:#e8ece6!important}
.section h2{text-align:center}.section-intro{text-align:center;margin-left:auto;margin-right:auto;color:var(--muted)}
.section h2::before{display:none!important}
.price-card,.strip-step,.faq-item,.card,.constraint,.setup-step,article,details{background:#fff!important;border:1px solid var(--border)!important;border-radius:22px!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;color:var(--text)}
.price-card:nth-child(2){border:2px solid var(--accent)!important;box-shadow:var(--shadow)!important}
.price{font-family:var(--serif);color:var(--text)!important}
.strip-num,.strip-step::before{background:#e3eee7!important;color:var(--ok)!important;font-family:var(--mono)}
.strip-step{--tile:#2f7a5a}.strip-step:nth-child(n){--tile:#2f7a5a}
.bill-toggle{background:#fff!important;border:1px solid var(--border)!important;border-radius:999px!important}
#bill-yearly:checked ~ .bill-toggle .bill-opt-y,#bill-monthly:checked ~ .bill-toggle .bill-opt-m{background:#e3eee7!important;color:var(--accent)!important}
.bill-save{color:var(--ok)!important}
code,pre{background:#f1f4ef!important;color:var(--text)!important;border-color:var(--border)!important}
.site-footer{background:var(--accent)!important;color:#e8ece6!important;border:0!important}
.site-footer a,.site-footer p,.site-footer strong{color:#e8ece6!important}
.disclaimer{color:#cfd8d2!important}
.nav-menu-panel{background:#fff!important;border:1px solid var(--border)!important}
.nav-menu-panel a{color:var(--text)!important}
.section h2{border-image:none!important;border-bottom:0!important}
.pricing,.how-strip,.constraints,.setup,.faq,.setup #heartbeat,.setup .delivery-h{--sec:#2f7a5a}
.strip-step:nth-child(1),.strip-step:nth-child(2),.strip-step:nth-child(3){--tile:#2f7a5a}
/* Billing toggle: two equal segments, yearly note on its own line (fits 360-430px) */
.bill-toggle{display:grid!important;grid-template-columns:1fr 1fr;width:min(100%,26rem)!important;max-width:100%;box-sizing:border-box;flex-direction:row!important;gap:4px}
.bill-opt{flex-direction:column;white-space:normal!important;text-align:center;line-height:1.2;min-width:0;padding:.45rem .6rem!important;border-radius:999px!important}
.bill-save{display:block;margin-left:0!important;font-size:.75rem!important;line-height:1.2}
@media (max-width:480px){.bill-toggle{width:100%!important;border-radius:22px!important}.bill-opt{border-radius:18px!important}}
/* Mobile header fit (360-440px): logo, Sign in, Start free and the icon-only Menu stay inside even side padding */
.nav-menu{background:none!important;border:0!important;border-radius:0!important;padding:0!important}
@media (max-width:440px){
.header-inner{gap:.5rem}
.logo{font-size:1rem;gap:.4rem;white-space:nowrap;flex-shrink:0}
.nav{gap:.35rem!important;flex-shrink:0}
.nav .nav-link.nav-login{padding:0 .35rem!important;font-size:.88rem}
.nav .btn-sm{padding:0 .8rem!important;font-size:.88rem;white-space:nowrap}
.nav-menu>summary{width:44px;padding:0!important;justify-content:center}
.nav-menu-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
}
@media (max-width:370px){.logo{font-size:.92rem}.logo-mark{width:24px!important;height:24px!important}}
/* Page ends at the footer on iOS: no text autosizing, no horizontal spill widening the layout viewport */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
html,body{overflow-x:clip;min-height:0}
body>footer:last-of-type,.site-footer{margin-bottom:0!important}
/* iOS overscroll below the footer: no bounce, and the canvas behind the page matches the footer colour */
html{overscroll-behavior-y:none;background:var(--accent)}
