/* Garden State Trade Systems — navy, steel & safety orange. Mobile-first. */
:root{
  --navy:#0F1E33; --navy-2:#162A45; --navy-3:#1E3557; --steel:#5B6B80; --slate:#44546A; --line:#D9DFE7; --tint:#F3F5F8; --white:#fff;
  --ink:#0F1E33; --muted:#44546A; --orange:#F26B1D; --orange-hi:#FF7F33; --orange-ink:#B8420B;
  --on-dark:#E8EDF4; --on-dark-muted:#B4C1D2; --radius:14px; --maxw:1160px;
  --safe-b:env(safe-area-inset-bottom,0px); --safe-l:env(safe-area-inset-left,0px); --safe-r:env(safe-area-inset-right,0px);
  --barh:0px; --shadow:0 1px 2px rgba(15,30,51,.06),0 8px 24px rgba(15,30,51,.07);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:80px}
body{margin:0;background:var(--white);color:var(--ink);font:400 1.0625rem/1.6 Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;overflow-x:hidden;padding-bottom:calc(var(--barh) + var(--safe-b))}
img{max-width:100%;height:auto;display:block}
a{color:var(--orange-ink)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:3px;border-radius:6px}
h1,h2,h3{font-family:"Barlow Semi Condensed","Arial Narrow",sans-serif;font-weight:700;letter-spacing:.005em;line-height:1.05;margin:0 0 .5em;color:inherit}
h2{font-size:clamp(2rem,6.4vw,3rem);text-transform:uppercase;font-weight:800}
h3{font-size:1.4rem;font-weight:700}
p{margin:0 0 1em}
.accent{color:var(--orange-ink)}
.dark .accent,.hero .accent{color:var(--orange)}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 calc(20px + var(--safe-r)) 0 calc(20px + var(--safe-l))}
.section{padding:72px 0;position:relative}
.section.alt{background:var(--tint);border-block:1px solid #E6EAF0}
.dark{background:var(--navy);color:var(--on-dark)}
.blueprint{background-color:var(--navy);background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.02) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);
  background-size:96px 96px,96px 96px,24px 24px,24px 24px}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font:700 .78rem/1 Inter,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--orange-ink);margin-bottom:14px}
.eyebrow::before{content:"";width:22px;height:3px;background:var(--orange);border-radius:2px}
.dark .eyebrow,.hero .eyebrow{color:var(--orange)}
.lead{font-size:1.15rem;color:var(--muted);max-width:62ch}
.dark .lead{color:var(--on-dark-muted)}
.skip{position:absolute;left:-999px;top:8px;background:var(--orange);color:var(--navy);padding:10px 14px;z-index:100;border-radius:8px}
.skip:focus{left:8px}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55em;min-height:52px;padding:14px 24px;border-radius:10px;font:700 1rem/1.1 Inter,sans-serif;text-decoration:none;border:2px solid transparent;cursor:pointer;transition:background .15s,transform .15s,border-color .15s,color .15s;text-align:center}
.btn svg{width:20px;height:20px;flex:none}
.btn-primary{background:var(--orange);color:var(--navy)}
.btn-primary:hover{background:var(--orange-hi);transform:translateY(-1px)}
.btn-ghost{background:transparent;color:var(--navy);border-color:#B9C3D0}
.btn-ghost:hover{border-color:var(--navy)}
.dark .btn-ghost,.hero .btn-ghost{color:#fff;border-color:rgba(255,255,255,.35)}
.dark .btn-ghost:hover,.hero .btn-ghost:hover{border-color:#fff}
.btn-navy{background:var(--navy);color:#fff}
.btn-navy:hover{background:var(--navy-3)}

/* Header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:saturate(160%) blur(10px);-webkit-backdrop-filter:saturate(160%) blur(10px);border-bottom:1px solid var(--line);padding-top:env(safe-area-inset-top,0px)}
.header-in{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:68px}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--navy);min-height:48px}
.brand img{width:40px;height:40px}
.wm{font-family:"Barlow Semi Condensed",sans-serif;text-transform:uppercase;line-height:1}
.wm span{display:block}
.wm .t1{font-weight:800;font-size:1.18rem;letter-spacing:.02em}
.wm .t2{font-weight:600;font-size:.8rem;letter-spacing:.24em;color:var(--steel);margin-top:3px}
.dark .wm .t2,.site-footer .wm .t2{color:var(--on-dark-muted)}
.nav{display:none}
.nav a{color:var(--navy);text-decoration:none;font-weight:600;font-size:.95rem;padding:12px 10px;border-radius:8px}
.nav a:hover{color:var(--orange-ink)}
.header-cta{display:none}
.menu-btn{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;background:#fff;border:1.5px solid var(--line);border-radius:10px;color:var(--navy);cursor:pointer}
.menu-btn svg{width:24px;height:24px}
.mobile-nav{display:none;border-top:1px solid var(--line);padding-top:6px;padding-bottom:14px}
.mobile-nav.open{display:block}
.mobile-nav a{display:flex;align-items:center;min-height:52px;padding:0 4px;color:var(--navy);text-decoration:none;font-weight:600;border-bottom:1px solid #EDF0F4}
@media (min-width:1000px){.nav{display:flex;gap:2px}.header-cta{display:inline-flex;min-height:48px;padding:12px 18px}.menu-btn,.mobile-nav,.mobile-nav.open{display:none}}

/* Hero */
.hero{position:relative;padding:52px 0 64px;overflow:hidden;color:#fff}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:var(--orange)}
.hero-grid{display:grid;gap:40px;align-items:center}
.hero h1{font-size:clamp(2.2rem,9.4vw,4.25rem);font-weight:800;text-transform:uppercase;margin-bottom:.35em;line-height:.98}
.hero h1 span{display:block}
.hero .sub{font-size:1.15rem;color:var(--on-dark-muted);max-width:56ch}
.hero-ctas{display:flex;flex-direction:column;gap:12px;margin:26px 0 18px}
.hero-note{font-size:.95rem;color:var(--on-dark-muted)}
.hero-note strong{color:#fff}
.hero-art{position:relative;display:flex;justify-content:center;align-items:center}
.hero-art .nj{display:none}
.phone{position:relative;z-index:1;width:min(300px,84vw);background:#fff;border-radius:30px;padding:16px 14px 20px;box-shadow:0 30px 60px rgba(0,0,0,.35),0 0 0 8px rgba(255,255,255,.06);color:var(--ink)}
.phone .notch{width:84px;height:6px;border-radius:6px;background:#D5DBE3;margin:0 auto 14px}
.phone .meta{font-size:.78rem;color:var(--steel);text-align:center;margin-bottom:10px}
.missed{display:flex;align-items:center;gap:8px;white-space:nowrap;background:#FFF1EA;border:1px solid #FBD3BD;color:#9A3508;border-radius:10px;padding:10px 12px;font-size:.8rem;font-weight:600;margin-bottom:12px}
.missed svg{width:18px;height:18px;flex:none}
.bubble{max-width:88%;padding:10px 14px;border-radius:18px;font-size:.95rem;line-height:1.4;margin:8px 0}
.bubble.out{margin-left:auto;background:var(--navy);color:#fff;border-bottom-right-radius:5px}
.bubble.in{background:#EEF1F5;color:var(--ink);border-bottom-left-radius:5px}
.bubble small{display:block;font-size:.72rem;opacity:.75;margin-top:3px}
@media (min-width:640px){.hero-ctas{flex-direction:row;flex-wrap:wrap}}
@media (min-width:900px){
  .hero{padding:84px 0 100px}
  .hero-grid{grid-template-columns:1.15fr .85fr}
  .hero-art{min-height:480px}
  .hero-art{justify-content:flex-start}
  .hero-art .nj{display:block;position:absolute;right:0;top:50%;transform:translateY(-50%);height:430px;width:auto;opacity:.95}
  .hero-art .phone{margin-left:0}
}

/* Cards */
.grid{display:grid;gap:20px}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px 22px;box-shadow:var(--shadow)}
.card .ico{width:44px;height:44px;color:var(--orange-ink);margin-bottom:14px}
.card h3{color:var(--navy)}
@media (min-width:960px){.grid.three{grid-template-columns:repeat(3,1fr)}}

/* Problem */
.pain-list{display:grid;gap:14px;margin:28px 0 0;padding:0;list-style:none}
.pain-list li{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-left:4px solid var(--orange);border-radius:10px;padding:18px;box-shadow:var(--shadow)}
.pain-list svg{width:26px;height:26px;color:var(--orange-ink);flex:none;margin-top:2px}
.pain-list strong{display:block;font-size:1.06rem;color:var(--navy)}
.pain-list span{color:var(--muted)}
@media (min-width:760px){.pain-list{grid-template-columns:repeat(2,1fr)}}

/* Services */
.svc{display:flex;flex-direction:column;border-top:4px solid var(--navy)}
.svc p{color:var(--muted)}
.sample{margin-top:auto;background:var(--tint);border:1px solid var(--line);border-radius:12px;padding:12px}
.sample .label{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--slate);font-weight:700;margin-bottom:4px}
@media (min-width:640px) and (max-width:959px){.svc .sample{max-width:420px}}
.checklist{list-style:none;padding:0;margin:0 0 1em}
.checklist li{position:relative;padding-left:26px;margin:.45em 0;color:var(--muted)}
.checklist li::before{content:"";position:absolute;left:2px;top:.42em;width:13px;height:7px;border-left:2.5px solid var(--orange-ink);border-bottom:2.5px solid var(--orange-ink);transform:rotate(-45deg)}
.checklist strong{color:var(--navy)}

/* Steps */
.steps{counter-reset:s;display:grid;gap:18px;list-style:none;padding:0;margin:30px 0 0}
.steps li{counter-increment:s;position:relative;padding:24px 22px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.steps li::before{content:counter(s,decimal-leading-zero);display:block;font:800 2.4rem/1 "Barlow Semi Condensed",sans-serif;color:var(--orange-ink);margin-bottom:10px}
.steps h3{font-size:1.35rem;color:var(--navy);text-transform:uppercase}
.steps p{color:var(--muted);margin:0}
@media (min-width:960px){.steps{grid-template-columns:repeat(3,1fr)}}

/* Trades */
.grid.trades{grid-template-columns:repeat(2,1fr);gap:14px}
@media (min-width:1000px){.grid.trades{grid-template-columns:repeat(4,1fr);gap:20px}}
.trade{text-align:center;padding:28px 16px}
.trade .ico-wrap{width:72px;height:72px;margin:0 auto 14px;border-radius:50%;background:#FFF1EA;display:flex;align-items:center;justify-content:center}
.trade .ico{width:40px;height:40px;margin:0;color:var(--orange-ink)}
.trade h3{text-transform:uppercase;font-size:1.3rem}
.trade p{color:var(--muted);font-size:.97rem;margin:0}
@media (max-width:420px){.trade{padding:22px 12px}.trade h3{font-size:1.15rem}}

/* Pricing */
.plans{display:grid;gap:22px;margin-top:34px;align-items:stretch}
@media (min-width:1000px){.plans{grid-template-columns:repeat(3,1fr)}}
@media (min-width:700px) and (max-width:999px){.plans{grid-template-columns:repeat(2,1fr)}.plan.popular{grid-column:1/-1;order:-1}}
.plan{display:flex;flex-direction:column;position:relative}
.plan h3{text-transform:uppercase}
.plan .price{font:800 3.2rem/1 "Barlow Semi Condensed",sans-serif;margin:6px 0 2px;color:var(--navy)}
.plan .price small{font:500 1rem Inter,sans-serif;color:var(--muted)}
.plan .per{color:var(--muted);font-size:.92rem;margin-bottom:16px}
.plan .btn{margin-top:auto;width:100%}
.plan.popular{background:var(--navy);border-color:var(--navy);color:var(--on-dark);box-shadow:0 20px 50px rgba(15,30,51,.25)}
.plan.popular h3,.plan.popular .price,.plan.popular .checklist strong{color:#fff}
.plan.popular .per,.plan.popular .price small,.plan.popular .checklist li{color:var(--on-dark-muted)}
.plan.popular .checklist li::before{border-color:var(--orange)}
.badge{position:absolute;top:-13px;left:22px;background:var(--orange);color:var(--navy);font:800 .74rem/1 Inter,sans-serif;letter-spacing:.12em;text-transform:uppercase;padding:8px 12px;border-radius:999px}
.addon{margin-top:22px;display:grid;gap:14px;align-items:center;border-left:4px solid var(--orange)}
@media (min-width:760px){.addon{grid-template-columns:1fr auto}}
.addon h3{text-transform:uppercase}
.addon .price-tag{font:800 1.25rem "Barlow Semi Condensed",sans-serif;color:var(--orange-ink);text-transform:uppercase}
.fine{font-size:.92rem;color:var(--muted);margin-top:18px;text-align:center}

/* About */
.about{display:grid;gap:30px;align-items:center}
@media (min-width:820px){.about{grid-template-columns:300px 1fr;gap:52px}}
.photo-ph{aspect-ratio:4/5;width:100%;max-width:300px;margin:0 auto;border-radius:16px;border:2px dashed #AEB9C7;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--muted);text-align:center;padding:20px;background:var(--tint)}
.photo-ph svg{width:72px;height:72px;color:var(--steel)}
.photo-ph strong{color:var(--navy)}
.towns{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:14px 0 0}
.towns li{border:1px solid var(--line);background:#fff;color:var(--navy);padding:7px 12px;border-radius:999px;font-size:.92rem;font-weight:500}
.about h3{text-transform:uppercase}

/* FAQ */
.faq{max-width:860px;margin:28px auto 0}
.faq details{border:1px solid var(--line);border-radius:12px;background:#fff;margin-bottom:12px;box-shadow:0 1px 2px rgba(15,30,51,.04)}
.faq summary{list-style:none;cursor:pointer;padding:18px 56px 18px 20px;min-height:56px;font-weight:700;font-size:1.05rem;position:relative;color:var(--navy)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:16px;top:50%;transform:translateY(-50%);width:30px;height:30px;border-radius:50%;background:var(--tint);display:flex;align-items:center;justify-content:center;font:700 1.3rem/1 Inter,sans-serif;color:var(--orange-ink)}
.faq details[open] summary::after{content:"–"}
.faq details[open]{border-color:#BFC8D4}
.faq .a{padding:0 20px 18px;color:var(--muted)}

/* CTA band */
.cta-band{text-align:center}
.cta-band h2{color:#fff}
.cta-band p{font-size:1.12rem;max-width:56ch;margin:0 auto 24px;color:var(--on-dark-muted)}
.cta-band .btns{display:flex;flex-direction:column;gap:12px;justify-content:center}
@media (min-width:640px){.cta-band .btns{flex-direction:row}}

/* Form */
.form-wrap{display:grid;gap:30px}
@media (min-width:900px){.form-wrap{grid-template-columns:.8fr 1.2fr;gap:52px}}
form .row{display:grid;gap:0 16px}
@media (min-width:640px){form .row.two{grid-template-columns:1fr 1fr}}
.field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}
label{font-weight:600;font-size:.95rem;color:var(--navy)}
input,select,textarea{font:inherit;font-size:16px;color:var(--ink);background:#fff;border:1.5px solid #C5CED9;border-radius:10px;padding:13px 14px;min-height:52px;width:100%}
textarea{min-height:120px;resize:vertical}
input:focus,select:focus,textarea:focus{border-color:var(--navy);outline:none;box-shadow:0 0 0 3px rgba(242,107,29,.35)}
select{appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--navy) 50%),linear-gradient(135deg,var(--navy) 50%,transparent 50%);background-position:calc(100% - 22px) 50%,calc(100% - 16px) 50%;background-size:6px 6px;background-repeat:no-repeat;padding-right:40px}
.consent{display:flex;gap:12px;align-items:flex-start;font-weight:400;font-size:.9rem;color:var(--muted);line-height:1.5;margin:6px 0 18px;cursor:pointer}
.consent input{width:24px;height:24px;min-height:24px;flex:none;margin:2px 0 0;accent-color:var(--orange-ink)}
.form-note{font-size:.88rem;color:var(--muted);margin-top:12px}
.req{color:var(--orange-ink)}
.contact-list{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:12px}
.contact-list a{display:flex;align-items:center;gap:12px;min-height:56px;padding:12px 16px;border:1px solid var(--line);border-radius:12px;text-decoration:none;color:var(--navy);font-weight:700;background:#fff;box-shadow:var(--shadow)}
.contact-list svg{width:22px;height:22px;color:var(--orange-ink);flex:none}

/* Footer */
.site-footer{padding:52px 0 28px;color:var(--on-dark-muted);font-size:.95rem;background:var(--navy);border-top:4px solid var(--orange)}
.site-footer .brand{color:#fff}
.foot-grid{display:grid;gap:28px}
@media (min-width:760px){.foot-grid{grid-template-columns:1.3fr 1fr 1fr}}
.site-footer h3{font-size:1.05rem;color:#fff;margin-bottom:8px;text-transform:uppercase;letter-spacing:.06em}
.site-footer a{color:#fff;text-decoration:none;display:inline-flex;align-items:center;min-height:44px}
.site-footer a:hover{color:var(--orange)}
.site-footer ul{list-style:none;padding:0;margin:0}
.copy{border-top:1px solid var(--navy-3);margin-top:28px;padding-top:18px;display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between}

/* Mobile bottom action bar */
.action-bar{position:fixed;left:0;right:0;bottom:0;z-index:60;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:8px calc(10px + var(--safe-r)) calc(8px + var(--safe-b)) calc(10px + var(--safe-l));background:var(--navy);border-top:1px solid var(--navy-3);box-shadow:0 -6px 20px rgba(15,30,51,.18)}
.action-bar a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:56px;border-radius:10px;text-decoration:none;font:700 .85rem/1 Inter,sans-serif;color:#fff;background:var(--navy-2);border:1px solid var(--navy-3)}
.action-bar a svg{width:22px;height:22px;color:var(--orange)}
.action-bar a.book{background:var(--orange);color:var(--navy);border-color:var(--orange)}
.action-bar a.book svg{color:var(--navy)}
body{--barh:72px}
@media (min-width:1000px){.action-bar{display:none}body{--barh:0px}}

.install-btn{display:none}
.install-btn.show{display:inline-flex}

/* Legal pages */
.legal{max-width:820px;margin:0 auto;padding:48px 20px 80px}
.legal h1{font-size:clamp(2.4rem,8vw,3.4rem);text-transform:uppercase;font-weight:800;color:var(--navy)}
.legal h2{font-size:1.45rem;margin-top:1.8em;color:var(--navy);text-transform:none;font-weight:700}
.legal p,.legal li{color:#2E3C50}
.legal .updated{color:var(--muted);font-size:.95rem}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.site-footer .brand img{box-shadow:0 0 0 1px #34507A;border-radius:9px}

/* Featured: scheduling */
.feature{margin-top:22px;display:grid;gap:26px;border-top:4px solid var(--orange);align-items:center}
@media (min-width:900px){.feature{grid-template-columns:1.35fr .65fr;padding:32px}}
.feature .tag{display:inline-block;background:#FFF1EA;color:#9A3508;font:700 .74rem/1 Inter,sans-serif;letter-spacing:.08em;text-transform:uppercase;padding:7px 10px;border-radius:999px;margin-bottom:14px}
.feature p{color:var(--muted)}
.checklist.two-col{display:grid;gap:0 20px}
@media (min-width:640px){.checklist.two-col{grid-template-columns:1fr 1fr}}
.text-link{display:inline-flex;align-items:center;min-height:48px;font-weight:700;color:var(--orange-ink);text-decoration:none}
.text-link:hover{text-decoration:underline}
.mini-cal{background:var(--navy);border-radius:14px;padding:16px;color:#fff;box-shadow:0 16px 40px rgba(15,30,51,.2)}
.mc-head{display:flex;justify-content:space-between;align-items:center;font:700 1.1rem "Barlow Semi Condensed",sans-serif;text-transform:uppercase;margin-bottom:10px}
.chip-sync{font:700 .7rem Inter,sans-serif;letter-spacing:.08em;background:rgba(242,107,29,.18);color:var(--orange);padding:5px 8px;border-radius:999px}
.mc-row{display:grid;grid-template-columns:48px 1fr;gap:8px;align-items:center;margin:6px 0;font-size:.85rem;color:var(--on-dark-muted)}
.mc-row i{font-style:normal;border-radius:8px;padding:9px 10px;font-weight:600}
.mc-row .busy{background:var(--navy-3);color:#DDE5EF}
.mc-row .new{background:var(--orange);color:var(--navy)}
.mc-row .open{border:1.5px dashed #3B5578;color:#8FA3BC}

/* Demos */
.btn-sm{min-height:48px;padding:10px 16px;font-size:.92rem}
.demo-flag{display:inline-flex;align-items:center;gap:8px;background:rgba(242,107,29,.14);color:#FFC6A3;border:1px solid rgba(242,107,29,.4);padding:8px 12px;border-radius:999px;font-size:.85rem;font-weight:600;margin:6px 0 0}
.demo-flag svg{width:18px;height:18px;color:var(--orange)}
.demo{background:var(--navy-2);border:1px solid var(--navy-3);border-radius:18px;padding:20px;margin-top:24px}
.demo h3{color:#fff;margin-bottom:.25em}
.demo-bar{display:flex;flex-wrap:wrap;gap:12px 20px;justify-content:space-between;align-items:flex-start;margin-bottom:18px}
.demo-bar p{color:var(--on-dark-muted);margin:0;font-size:.97rem;max-width:60ch}
.demo-ctl{display:flex;gap:8px}
.demo-ctl .btn-ghost{color:#fff;border-color:rgba(255,255,255,.3)}
.demo-text{margin-top:16px;color:var(--on-dark-muted);font-size:.93rem}
.demo-text summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:600;color:#fff}
.demo-text p{margin:.4em 0 0}
/* reveal mechanics */
.demo [data-at]{opacity:0;transform:translateY(8px);transition:opacity .35s ease,transform .35s ease}
.demo [data-at].on{opacity:1;transform:none}
.demo [data-root]{display:none}
.typing::after{content:"";display:inline-block;width:2px;height:1em;background:currentColor;margin-left:2px;vertical-align:-2px;animation:blink 1s steps(1) infinite}
@keyframes blink{50%{opacity:0}}

/* A: call */
.call-grid{display:grid;gap:20px;align-items:start}
@media (min-width:860px){.call-grid{grid-template-columns:320px 1fr;gap:28px}}
.demo-phone{margin:0 auto;min-height:520px;display:flex;flex-direction:column}
.scr{flex:1;display:flex;flex-direction:column}
.scr-ring{align-items:center;justify-content:center;text-align:center;gap:8px;padding:10px 0 20px}
.scr-talk{display:none}
.on-call .scr-ring{display:none}
.on-call .scr-talk{display:flex}
.caller-av{position:relative;width:84px;height:84px;border-radius:50%;background:#E8EDF4;display:flex;align-items:center;justify-content:center;margin-bottom:8px}
.caller-av svg{width:46px;height:46px;color:var(--slate)}
.ring{position:absolute;inset:0;border-radius:50%;border:2px solid var(--orange);opacity:0}
.playing .ring{animation:ring 1.6s ease-out infinite}
.playing .r2{animation-delay:.8s}
@keyframes ring{0%{transform:scale(1);opacity:.7}100%{transform:scale(1.7);opacity:0}}
.caller-num{font:800 1.6rem "Barlow Semi Condensed",sans-serif;color:var(--navy)}
.caller-sub{font-size:.85rem;color:var(--steel)}
.caller-status{margin-top:10px;font-size:.85rem;font-weight:600;padding:8px 12px;border-radius:999px;background:#FFF1EA;color:#9A3508}
.caller-status.ai{background:var(--navy);color:#fff}
.talk-head{display:flex;align-items:center;gap:8px;font-size:.8rem;font-weight:700;color:var(--navy);padding:4px 2px 10px;border-bottom:1px solid #E6EAF0;margin-bottom:8px}
.live-dot{width:9px;height:9px;border-radius:50%;background:#16A34A;box-shadow:0 0 0 3px rgba(22,163,74,.2)}
.timer{margin-left:auto;font-weight:600;color:#16A34A;text-transform:uppercase;font-size:.7rem;letter-spacing:.1em}
.transcript{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:.88rem;line-height:1.4}
.transcript li{padding:8px 11px;border-radius:14px;max-width:92%}
.transcript .ai{background:var(--navy);color:#fff;border-bottom-left-radius:4px}
.transcript .cu{background:#EEF1F5;color:var(--ink);margin-left:auto;border-bottom-right-radius:4px}
.transcript .ai::before{content:"AI assistant";display:block;font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--orange);font-weight:700;margin-bottom:2px}
.transcript .cu::before{content:"Caller";display:block;font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--steel);font-weight:700;margin-bottom:2px}
.call-side{display:grid;gap:16px}
.art{background:#fff;color:var(--ink);border-radius:14px;padding:16px;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.art-head{display:flex;align-items:center;gap:8px;font:700 1rem "Barlow Semi Condensed",sans-serif;text-transform:uppercase;letter-spacing:.02em;color:var(--navy);margin-bottom:10px}
.art-head svg{width:20px;height:20px;color:var(--orange-ink);flex:none}
.art-tag{margin-left:auto;font:600 .72rem Inter,sans-serif;text-transform:none;letter-spacing:0;color:var(--steel);background:var(--tint);padding:4px 8px;border-radius:999px}
.ticket dl{margin:0;display:grid;gap:8px}
.ticket dl div{display:grid;grid-template-columns:90px 1fr;gap:8px;font-size:.92rem}
.ticket dt{color:var(--steel);font-weight:600}
.ticket dd{margin:0;color:var(--navy);font-weight:600}
.pill{display:inline-block;margin-top:12px;font-size:.75rem;font-weight:700;padding:6px 10px;border-radius:999px}
.pill.urgent{background:#FFF1EA;color:#9A3508}
.art .bubble{max-width:100%}

/* B: calendar */
.cal-grid{display:grid;gap:20px}
@media (min-width:960px){.cal-grid{grid-template-columns:1.5fr 1fr}}
.week{background:#fff;color:var(--ink);border-radius:14px;padding:14px;box-shadow:0 10px 30px rgba(0,0,0,.25);overflow:hidden}
.week-top{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;align-items:center;margin-bottom:10px;font-size:.9rem;color:var(--navy)}
.sync-labels{display:flex;flex-wrap:wrap;gap:6px}
.sync-labels span{font-size:.7rem;font-weight:700;color:var(--slate);border:1px solid var(--line);padding:4px 7px;border-radius:6px}
.week-body{display:grid;grid-template-columns:40px repeat(5,minmax(0,1fr));gap:4px}
.wk-times{display:grid;grid-template-rows:24px repeat(5,52px);font-size:.66rem;color:var(--steel)}
.wk-times span:nth-child(1){grid-row:2}.wk-times span:nth-child(2){grid-row:3}.wk-times span:nth-child(3){grid-row:4}.wk-times span:nth-child(4){grid-row:5}.wk-times span:nth-child(5){grid-row:6}
.wk-day{position:relative;display:grid;grid-template-rows:24px repeat(5,52px);background:repeating-linear-gradient(180deg,transparent 0 51px,#EEF1F5 51px 52px);background-position:0 24px;background-repeat:no-repeat;border-radius:8px}
.wk-day.today{background-color:#FBF7F4}
.wk-day b{font-size:.75rem;text-align:center;color:var(--navy);align-self:center}
.ev{font-style:normal;font-size:.66rem;line-height:1.2;font-weight:600;background:#E4EAF2;color:var(--navy);border-left:3px solid var(--slate);border-radius:5px;padding:4px;margin:2px 1px;overflow:hidden}
.ev.s0{grid-row:2}.ev.s1{grid-row:3}.ev.s2{grid-row:4}.ev.s3{grid-row:5}.ev.s4{grid-row:6}
.ev.h1{grid-row-end:span 1}.ev.h2{grid-row-end:span 1}.ev.h3{grid-row-end:span 2}
.ev.s0.h3{grid-row:2/span 2}.ev.s2.h3{grid-row:4/span 2}
.slot-open{grid-row:3;grid-column:1;margin:2px 1px;border:1.5px dashed #C5CED9;border-radius:5px;font-size:.62rem;color:var(--steel);display:flex;align-items:center;justify-content:center}
.wk-day > *{grid-column:1}
.ev.new{background:var(--orange);color:var(--navy);border-left-color:var(--navy);z-index:1;box-shadow:0 6px 16px rgba(242,107,29,.35)}
.demo .ev.new[data-at]{transform:translateY(-40px) scale(.9)}
.demo .ev.new[data-at].on{transform:none;transition:transform .55s cubic-bezier(.2,1.4,.4,1),opacity .3s}
.cal-status{margin-top:10px;font-size:.85rem;font-weight:600;color:var(--slate);display:flex;align-items:center;gap:8px}
.cal-status.ok{color:#15803D}
.spin{width:14px;height:14px;border:2px solid #C5CED9;border-top-color:var(--orange-ink);border-radius:50%;animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.cal-texts{display:grid;gap:14px;align-content:start}
.cal-texts .bubble.out,.demo-mini .bubble.out,.timeline .bubble.out{background:var(--navy);color:#fff}
@media (max-width:420px){.ev{font-size:.58rem;padding:3px}.week-body{grid-template-columns:32px repeat(5,minmax(0,1fr))}}

/* C/D/E minis */
.demo-row{display:grid;gap:0 20px}
@media (min-width:1000px){.demo-row{grid-template-columns:repeat(3,1fr)}.demo-row .demo{display:flex;flex-direction:column}}
.demo-mini .demo-bar{flex-direction:column}
.mini-phone{background:#fff;border-radius:18px;padding:14px;min-height:330px}
.mini-phone .bubble{font-size:.88rem}
.mini-phone .bubble.in,.timeline .bubble.in{background:#EEF1F5;color:var(--ink)}
.timeline{list-style:none;margin:0;padding:14px;background:#fff;border-radius:18px;color:var(--ink);display:grid;gap:12px;min-height:330px;align-content:start}
.timeline li{display:grid;grid-template-columns:52px 1fr;gap:10px;align-items:start;position:relative}
.tl-day{font:800 .82rem/1.2 "Barlow Semi Condensed",sans-serif;text-transform:uppercase;color:var(--orange-ink);background:#FFF1EA;border-radius:8px;padding:6px;text-align:center}
.timeline strong{color:var(--navy);font-size:.92rem}
.timeline p{margin:0;color:var(--muted);font-size:.85rem}
.timeline .bubble{font-size:.85rem;margin:4px 0 0}
.dash{background:#fff;border-radius:18px;padding:14px;color:var(--ink);min-height:330px}
.dash-head{display:flex;align-items:center;gap:8px;margin-bottom:10px;color:var(--navy)}
.dash-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.kpi{background:var(--tint);border-radius:12px;padding:12px}
.kpi b{display:block;font:800 2rem/1 "Barlow Semi Condensed",sans-serif;color:var(--navy)}
.kpi span{font-size:.8rem;color:var(--muted);font-weight:600}
.dash-list{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:6px;font-size:.85rem}
.dash-list li{display:flex;gap:10px;align-items:center;border:1px solid var(--line);border-radius:10px;padding:8px 10px;color:var(--navy)}
.dash-list span{font-weight:700;color:var(--orange-ink);width:40px}
.dash-list em{margin-left:auto;font-style:normal;font-size:.7rem;font-weight:700;background:var(--orange);color:var(--navy);padding:3px 7px;border-radius:999px}
@media (prefers-reduced-motion:reduce){.demo [data-at]{opacity:1;transform:none}.ring,.spin{animation:none!important}}

[hidden]{display:none!important}
.headshot{display:block;max-width:300px;margin:0 auto}.headshot img{border-radius:16px;box-shadow:var(--shadow);aspect-ratio:4/5;object-fit:cover;width:100%}
