/* =============================================================================
   Quincer static site: Daylight design system (Cloudflare Pages build)
   Shared by every page. Locked palette matches apps/widget-webapp daylight.css
   and the v1-blog static posts. Page-specific styles live in each page's
   own <style> block.
   ============================================================================= */

:root{
  --canvas:#fbf7ef; --surface:#ffffff; --surface-2:#f4eee2; --surface-3:#eae1cf;
  --fg:#211b13; --fg-muted:#5c5245; --fg-caption:#8a7e6c; --fg-disabled:#bcb1a0;
  --brand:#dd7714; --brand-light:#ee9433; --brand-dark:#b85f0c; --on-brand:#fff8f1;
  --brand-soft:rgba(221,119,20,.12); --brand-ring:rgba(221,119,20,.26); --brand-glow:rgba(221,119,20,.22);
  --border-brand:rgba(221,119,20,.42);
  --success:#1d9d63; --warning:#c98a16; --danger:#d2452f; --info:#2f74d0;
  --border:rgba(33,27,19,.10); --border-strong:rgba(33,27,19,.16);
  --nav-bg:rgba(251,247,239,.85);
  --shadow-ambient:0 1px 2px rgba(60,40,15,.05),0 8px 24px rgba(60,40,15,.08);
  --shadow-ambient-lg:0 10px 20px rgba(60,40,15,.08),0 28px 64px rgba(60,40,15,.12);
  --shadow-brand:0 8px 30px rgba(221,119,20,.22);
  --font-display:'Plus Jakarta Sans',system-ui,sans-serif;
  --font-sans:'Plus Jakarta Sans',system-ui,sans-serif;
}

/* Night-shift / dark band surface */
.night, [data-surface="night"]{
  --canvas:#17151e; --surface:#201d27; --surface-2:#2a2631; --surface-3:#3a3541;
  --fg:#ebe7e1; --fg-muted:#b3a99a; --fg-caption:#a69d90;
  --brand:#eb8424; --brand-light:#f5a447; --brand-dark:#f5a447; --on-brand:#1a0f04;
  --brand-soft:rgba(235,132,36,.14); --brand-ring:rgba(235,132,36,.30); --brand-glow:rgba(235,132,36,.40);
  --border:rgba(255,245,235,.09); --border-strong:rgba(255,245,235,.15);
  background:#17151e; color:var(--fg);
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--canvas);color:var(--fg);font-family:var(--font-sans);line-height:1.6;font-size:16.5px;-webkit-font-smoothing:antialiased}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
.wrap{max-width:1140px;margin:0 auto;padding:0 24px}

/* ---- type ------------------------------------------------------------- */
.display{font-family:var(--font-display);font-weight:800;font-size:clamp(38px,5.6vw,62px);line-height:1.06;letter-spacing:-.03em}
.display .accent{color:var(--brand)}
h2.title{font-family:var(--font-display);font-weight:800;font-size:clamp(28px,3.6vw,42px);line-height:1.12;letter-spacing:-.02em}
h3{font-family:var(--font-display);font-weight:700;font-size:19px}
.lead{font-size:19px;color:var(--fg-muted);line-height:1.65;max-width:640px}
.eyebrow{font-family:var(--font-display);font-weight:700;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--brand-dark);margin-bottom:14px}
.night .eyebrow{color:var(--brand-light)}

/* ---- buttons ----------------------------------------------------------- */
.btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-display);font-weight:700;border-radius:999px;cursor:pointer;transition:transform .15s ease, box-shadow .2s ease, background .2s ease;border:0;text-decoration:none}
.btn-primary{background:var(--brand);color:#fff;box-shadow:var(--shadow-brand)}
.btn-primary:hover{background:var(--brand-dark);transform:translateY(-1px)}
.btn-secondary{background:var(--surface);color:var(--fg);border:1px solid var(--border-strong)}
.btn-secondary:hover{border-color:var(--border-brand);transform:translateY(-1px)}
.btn-lg{padding:15px 28px;font-size:16px}
.btn-md{padding:11px 20px;font-size:14.5px}
.btn-sm{padding:8px 16px;font-size:13.5px}

/* ---- pill -------------------------------------------------------------- */
.pill{display:inline-flex;align-items:center;gap:8px;background:var(--brand-soft);border:1px solid var(--border-brand);color:var(--brand-dark);font-family:var(--font-display);font-weight:700;font-size:13.5px;padding:7px 15px;border-radius:999px}
.pill .dot{width:7px;height:7px;border-radius:50%;background:var(--brand);animation:pulse 2.4s ease-in-out infinite}

/* ---- nav ---------------------------------------------------------------- */
.topnav{position:sticky;top:0;z-index:100;background:var(--nav-bg);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border)}
.topnav .wrap{display:flex;align-items:center;justify-content:space-between;height:68px;gap:18px}
.logo{font-family:var(--font-display);font-weight:800;font-size:21px;letter-spacing:-.02em;display:flex;align-items:center;gap:9px}
.logo .dot{width:11px;height:11px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 4px var(--brand-soft);animation:pulse 2.4s ease-in-out infinite}
.nav-links{display:flex;align-items:center;gap:4px}
.nav-links>a, .nav-drop>button{font-family:var(--font-display);font-weight:600;font-size:14.5px;color:var(--fg-muted);padding:9px 13px;border-radius:10px;background:none;border:0;cursor:pointer;display:flex;align-items:center;gap:5px}
.nav-links>a:hover, .nav-drop>button:hover, .nav-links>a.active{color:var(--fg);background:var(--surface-2)}
.nav-drop{position:relative}
.nav-drop .menu{position:absolute;top:calc(100% + 8px);left:0;min-width:280px;background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-ambient-lg);padding:8px;opacity:0;visibility:hidden;transform:translateY(6px);transition:all .18s ease}
.nav-drop:hover .menu, .nav-drop:focus-within .menu{opacity:1;visibility:visible;transform:translateY(0)}
.menu a{display:flex;gap:11px;align-items:flex-start;padding:10px 12px;border-radius:11px}
.menu a:hover{background:var(--surface-2)}
.menu .mi{width:34px;height:34px;border-radius:9px;background:var(--brand-soft);color:var(--brand-dark);display:grid;place-items:center;flex:none;font-size:15px}
.menu .mt{font-family:var(--font-display);font-weight:700;font-size:14px}
.menu .md{font-size:12.5px;color:var(--fg-caption);margin-top:1px}
.nav-right{display:flex;align-items:center;gap:10px}
.nav-signin{font-family:var(--font-display);font-weight:600;font-size:14.5px;color:var(--fg-muted);padding:9px 10px}
.nav-signin:hover{color:var(--fg)}
.nav-burger{display:none;background:none;border:0;cursor:pointer;color:var(--fg);padding:6px}
@media (max-width:920px){
  .nav-links,.nav-signin{display:none}
  .nav-burger{display:block}
  .topnav.open .nav-links{display:flex;flex-direction:column;align-items:stretch;position:absolute;top:68px;left:0;right:0;background:var(--surface);border-bottom:1px solid var(--border);padding:12px;box-shadow:var(--shadow-ambient-lg)}
  .topnav.open .nav-drop .menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;padding:0 0 0 12px}
}

/* ---- sections ------------------------------------------------------------ */
section.blk{padding:88px 0}
section.blk-tight{padding:64px 0}
.sec-head{max-width:720px;margin-bottom:48px}
.sec-head.center{margin-left:auto;margin-right:auto;text-align:center}
.sec-head .lead{margin-top:14px}
.sec-head.center .lead{margin-left:auto;margin-right:auto}

/* ---- cards + grids -------------------------------------------------------- */
.card{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:26px;transition:transform .2s ease, box-shadow .25s ease, border-color .2s ease}
.card:hover{transform:translateY(-3px);box-shadow:var(--shadow-ambient);border-color:var(--border-brand)}
.night .card{background:var(--surface)}
.grid{display:grid;gap:18px}
.grid-2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}
.grid-3{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.grid-4{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.icon-sq{width:42px;height:42px;border-radius:12px;background:var(--brand-soft);color:var(--brand-dark);display:grid;place-items:center;margin-bottom:16px}
.night .icon-sq{color:var(--brand-light)}

/* ---- avatars (AI employee identity system) ------------------------------- */
.avatar{border-radius:11px;display:grid;place-items:center;font-family:var(--font-display);font-weight:800;color:#fff;flex:none}
.av-receptionist{background:#dd7714}
.av-sales{background:#b85f0c}
.av-support{background:#ee9433;color:#2a1606}
.av-appointment{background:#a3540a}
.av-social{background:#e9a13b;color:#2a1606}
.av-qualifier{background:#8a4a10}
.status-live{display:inline-flex;align-items:center;gap:5px;color:var(--success);font-family:var(--font-display);font-weight:700;font-size:12px}
.status-live::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--success);animation:pulse-s 2s ease-in-out infinite}

/* ---- chips ---------------------------------------------------------------- */
.chip{display:inline-flex;align-items:center;gap:5px;font-family:var(--font-display);font-weight:600;font-size:12px;color:var(--fg-muted);background:var(--surface-2);padding:4px 10px;border-radius:999px}
.chip.live{color:var(--success)}

/* ---- footer ---------------------------------------------------------------- */
footer.site{border-top:1px solid var(--border);padding:64px 0 40px;background:var(--surface)}
.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:32px}
@media (max-width:860px){.foot-grid{grid-template-columns:1fr 1fr}}
.foot-col h4{font-family:var(--font-display);font-weight:700;font-size:13.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--fg-caption);margin-bottom:14px}
.foot-col a{display:block;font-size:14.5px;color:var(--fg-muted);padding:5px 0}
.foot-col a:hover{color:var(--brand-dark)}
.foot-note{margin-top:44px;padding-top:24px;border-top:1px solid var(--border);display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;color:var(--fg-caption);font-size:13.5px}

/* ---- CTA band --------------------------------------------------------------- */
.cta-band{background:linear-gradient(135deg,#dd7714,#b85f0c);border-radius:26px;padding:64px 48px;text-align:center;color:#fff;position:relative;overflow:hidden}
.cta-band h2{font-family:var(--font-display);font-weight:800;font-size:clamp(26px,3.4vw,40px);letter-spacing:-.02em}
.cta-band p{margin:14px auto 28px;max-width:560px;color:rgba(255,248,241,.92);font-size:17px}
.cta-band .btn-primary{background:#fff;color:#b85f0c;box-shadow:0 8px 30px rgba(0,0,0,.18)}
.cta-band .btn-primary:hover{background:#fff3e6}
.cta-band .btn-secondary{background:transparent;color:#fff;border-color:rgba(255,255,255,.45)}

/* ---- motion ------------------------------------------------------------------ */
@keyframes pulse{0%,100%{box-shadow:0 0 0 3px var(--brand-soft)}50%{box-shadow:0 0 0 9px rgba(221,119,20,0)}}
@keyframes pulse-s{0%,100%{opacity:1}50%{opacity:.35}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes floatr{0%,100%{transform:translateY(0) rotate(var(--r,0deg))}50%{transform:translateY(-8px) rotate(var(--r,0deg))}}
@keyframes typing{0%,60%,100%{transform:translateY(0);opacity:.4}30%{transform:translateY(-4px);opacity:1}}
@keyframes dashflow{to{stroke-dashoffset:-24}}
@keyframes ticker{0%{opacity:0;transform:translateY(8px)}8%,92%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-8px)}}
.typing{display:inline-flex;gap:4px;padding:8px 12px}
.typing span{width:6px;height:6px;border-radius:50%;background:var(--fg-caption);animation:typing 1.2s infinite}
.typing span:nth-child(2){animation-delay:.15s}
.typing span:nth-child(3){animation-delay:.3s}
.float{animation:float 6s ease-in-out infinite}
.floatr{animation:floatr 6s ease-in-out infinite}

/* reveal on scroll (site.js flips .rv → .rv.on) */
.rv{opacity:0;transform:translateY(22px);transition:opacity .6s ease, transform .6s ease}
.rv.on{opacity:1;transform:none}
.rv-d1{transition-delay:.08s}.rv-d2{transition-delay:.16s}.rv-d3{transition-delay:.24s}
.rv-d4{transition-delay:.32s}.rv-d5{transition-delay:.4s}.rv-d6{transition-delay:.48s}

/* ---- email + social-comment mock components (home, features, solutions) --- */
.inbox-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:stretch}
@media (max-width:900px){.inbox-grid{grid-template-columns:1fr}}
.mock-win{background:var(--surface);border:1px solid var(--border);border-radius:20px;box-shadow:var(--shadow-ambient);overflow:hidden;display:flex;flex-direction:column}
.mock-bar{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--border);background:var(--surface-2)}
.mock-bar .wdot{width:10px;height:10px;border-radius:50%;background:var(--surface-3)}
.mock-bar span.addr{font-family:var(--font-display);font-weight:700;font-size:12.5px;color:var(--fg-muted);margin-left:6px}
.mock-body{padding:18px;flex:1}
.em{border:1px solid var(--border);border-radius:14px;padding:14px 16px;margin-bottom:12px;opacity:0;transform:translateY(10px);transition:opacity .5s ease,transform .5s ease}
.em.on{opacity:1;transform:none}
.em-head{display:flex;align-items:center;gap:10px}
.em-head .who{flex:1;min-width:0}
.em-head .who b{font-family:var(--font-display);font-weight:700;font-size:13.5px;display:block}
.em-head .who i{font-style:normal;font-size:11.5px;color:var(--fg-caption)}
.em-time{font-size:11px;color:var(--fg-caption);white-space:nowrap}
.em-sub{font-family:var(--font-display);font-weight:700;font-size:13px;margin-top:10px}
.em-body{font-size:13px;color:var(--fg-muted);margin-top:6px;line-height:1.55}
.em.reply{background:var(--brand-soft);border-color:var(--border-brand)}
.badge-ai{display:inline-flex;align-items:center;gap:5px;background:var(--brand);color:#fff;font-family:var(--font-display);font-weight:700;font-size:10px;padding:2px 8px;border-radius:999px;letter-spacing:.04em}
.em-sig{font-size:12.5px;color:var(--fg-muted);margin-top:10px;padding-top:8px;border-top:1px dashed var(--border-strong)}
.mock-foot{display:flex;gap:8px;flex-wrap:wrap;padding:0 18px 18px}
.mock-foot .chip{opacity:0;transition:opacity .5s ease}
.mock-foot.on .chip{opacity:1}
.post{border:1px solid var(--border);border-radius:14px;overflow:hidden;margin-bottom:12px}
.post-cover{height:64px;background:linear-gradient(120deg,var(--brand-light),var(--brand-dark))}
.post-head{display:flex;align-items:center;gap:10px;padding:12px 16px 0}
.post-head .who b{font-family:var(--font-display);font-weight:700;font-size:13.5px;display:block}
.post-head .who i{font-style:normal;font-size:11.5px;color:var(--fg-caption)}
.post-text{font-size:13px;padding:10px 16px 12px;color:var(--fg)}
.post-meta{display:flex;gap:18px;padding:10px 16px;border-top:1px solid var(--border);font-family:var(--font-display);font-weight:600;font-size:12px;color:var(--fg-caption)}
.cmt{display:flex;gap:10px;padding:4px 0;opacity:0;transform:translateY(10px);transition:opacity .5s ease,transform .5s ease}
.cmt.on{opacity:1;transform:none}
.cmt-bubble{background:var(--surface-2);border-radius:14px;padding:10px 14px;font-size:13px;flex:1}
.cmt-bubble b{font-family:var(--font-display);font-weight:700;font-size:12.5px;display:block;margin-bottom:2px}
.cmt.brand .cmt-bubble{background:var(--brand-soft);border:1px solid var(--border-brand)}
.cmt.brand{margin-left:34px}
.cmt-actions{font-size:11px;color:var(--fg-caption);margin:4px 0 0 14px}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}
  .rv{opacity:1;transform:none}
}
