/* Intellilabs — base.css */

*,*::before,*::after{box-sizing:border-box}
html,body,h1,h2,h3,h4,p,ul,ol,figure,blockquote,dl,dd{margin:0;padding:0}
ul[role=list],ol[role=list]{list-style:none}
img,picture,svg,video{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button{font:inherit;background:none;border:0;cursor:pointer;color:inherit}
input,textarea,select{font:inherit;color:inherit}
html:focus-within{scroll-behavior:smooth}
html{scroll-padding-top:90px}

:root{
  --bg:#F4EFE3;
  --bg-deeper:#EBE3D2;
  --surface:#FBF8F1;
  --ink:#0B0B0B;
  --ink-soft:#3B3833;
  --ink-mute:#6B655B;
  --line:#DDD2BC;

  --violet:#7C5CFF;
  --violet-strong:#5C3FF0;
  --violet-soft:#E6DFFF;
  --violet-deep:#3B25B5;
  --coral:#F25C3A;
  --coral-soft:#FFE2D8;
  --leaf:#1F6A4A;
  --leaf-soft:#D2E7DC;
  --sky:#1FA9D6;
  --sky-soft:#D4ECF6;
  --amber:#E8A23B;

  --serif:'Fraunces','Iowan Old Style','Apple Garamond',Georgia,serif;
  --sans:'Inter','Helvetica Neue',system-ui,-apple-system,sans-serif;
  --mono:'JetBrains Mono',ui-monospace,'SF Mono',Menlo,monospace;

  --max:1240px;
  --gutter:clamp(20px,5vw,80px);
  --gutter-tight:clamp(16px,4vw,40px);
  --radius-lg:32px;
  --radius:18px;
  --radius-sm:10px;
  --shadow-card:0 1px 0 rgba(11,11,11,.04),0 18px 40px -22px rgba(11,11,11,.18);
  --shadow:0 1px 0 rgba(11,11,11,.06),0 10px 30px -10px rgba(11,11,11,.10);
}

html{font-size:17px;-webkit-text-size-adjust:100%}
@media (min-width:900px){html{font-size:18px}}
body{font-family:var(--sans);background:var(--bg);color:var(--ink);line-height:1.55;font-feature-settings:"ss01","cv11";-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}

.container{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}
.container-tight{width:100%;max-width:880px;margin-inline:auto;padding-inline:var(--gutter)}
.edge{width:100%;max-width:1440px;margin-inline:auto;padding-inline:var(--gutter-tight)}

.lede{font-size:clamp(1.05rem,1.6vw,1.25rem);color:var(--ink-soft);line-height:1.55;max-width:62ch}
.eyebrow{font-family:var(--sans);font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-mute);font-weight:600;display:inline-block}
.section{padding:clamp(70px,9vw,140px) 0}
.divider{border:0;height:1px;background:var(--line);margin:0}

h1,h2,h3{font-family:var(--serif);color:var(--ink);letter-spacing:-.02em;line-height:1.02;font-weight:500}
h1{font-size:clamp(3rem,8.5vw,6rem);line-height:1.02}
h2{font-size:clamp(2.2rem,5.6vw,4rem);line-height:1.04}
h3{font-size:clamp(1.5rem,2.6vw,2.1rem);line-height:1.15}
.italic,h1 em,h2 em,h3 em{font-style:italic}

.btn{display:inline-flex;align-items:center;gap:.6rem;padding:1rem 1.6rem;border-radius:999px;font-weight:500;font-size:1.02rem;transition:transform .15s ease,background .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease;white-space:nowrap}
.btn-primary{background:var(--coral);color:#fff}.btn-primary:hover{background:#D94A2A;transform:translateY(-1px);box-shadow:0 10px 24px -10px rgba(242,92,58,.5)}
.btn-ink{background:var(--ink);color:var(--bg)}.btn-ink:hover{background:var(--coral);color:#fff;transform:translateY(-1px)}
.btn-ghost{background:transparent;color:var(--ink);border:1px solid var(--ink)}
.btn-ghost:hover{background:var(--ink);color:var(--bg)}
.btn-violet{background:var(--coral);color:#fff}.btn-violet:hover{background:#D94A2A;transform:translateY(-1px)}
.btn-white{background:#fff;color:var(--ink)}
.btn-white:hover{background:var(--coral);color:#fff}

/* HEADER */
.site-header{position:sticky;top:0;z-index:50;background:rgba(244,239,227,.85);backdrop-filter:saturate(160%) blur(10px);-webkit-backdrop-filter:saturate(160%) blur(10px);border-bottom:1px solid transparent;transition:border-color .2s ease}
.site-header.scrolled{border-bottom-color:var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;padding:18px var(--gutter-tight);max-width:1440px;margin-inline:auto;gap:24px}
.brand{display:inline-flex;align-items:center;gap:.65rem;font-family:var(--serif);font-style:italic;font-size:1.7rem;letter-spacing:-.02em;font-weight:500}
.brand-mark{width:38px;height:38px;background:transparent;flex:none;display:inline-block}
.brand-mark img{width:100%;height:100%;display:block}
.nav-links{display:none;gap:34px;font-size:1rem;color:var(--ink)}
.nav-links a{position:relative;padding:6px 0}
.nav-links a:hover{color:var(--coral)}
.nav-links a.active::after{content:;position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--coral)}
.nav-cta{display:none}
@media (min-width:920px){.nav-links{display:inline-flex}.nav-cta{display:inline-flex}}
.nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:999px;border:1px solid var(--ink)}
.nav-toggle span{width:18px;height:1.5px;background:var(--ink);position:relative;display:block}
.nav-toggle span::before,.nav-toggle span::after{content:"";position:absolute;left:0;right:0;height:1.5px;background:var(--ink)}
.nav-toggle span::before{top:-6px}.nav-toggle span::after{top:6px}
@media (min-width:920px){.nav-toggle{display:none}}
.mobile-nav{display:none;background:var(--bg);border-bottom:1px solid var(--line);padding:8px var(--gutter-tight) 24px}
.mobile-nav.open{display:block}
.mobile-nav a{display:block;padding:12px 0;font-size:1.1rem;border-bottom:1px solid var(--line);font-family:var(--serif);font-style:italic}
.mobile-nav a:last-child{border-bottom:0}

/* FOOTER */
.site-footer{background:var(--ink);color:#E8E4DA;padding:80px 0 40px}
.site-footer .container{max-width:1440px;padding-inline:var(--gutter-tight)}
.footer-top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:48px}
@media (max-width:780px){.footer-top{grid-template-columns:1fr 1fr;gap:32px}}
@media (max-width:480px){.footer-top{grid-template-columns:1fr}}
.footer-brand{font-family:var(--serif);font-style:italic;font-size:2rem;color:#fff;margin-bottom:14px;display:inline-flex;align-items:center;gap:10px}
.footer-brand .brand-mark{width:36px;height:36px}
.footer-blurb{color:#B8B3A6;font-size:.95rem;max-width:32ch;margin-bottom:18px}
.footer-col h4{font-family:var(--sans);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:#B8B3A6;margin-bottom:18px;font-weight:600}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:10px}
.footer-col a{color:#E8E4DA;font-size:.96rem}
.footer-col a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
.footer-bottom{margin-top:60px;padding-top:24px;border-top:1px solid #2A2A2A;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;color:#7C786E;font-size:.85rem}

.reveal{opacity:0;transform:translateY(14px);transition:opacity .7s ease,transform .7s ease}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}

.skip{position:absolute;left:-9999px}
.skip:focus{left:16px;top:16px;background:var(--ink);color:var(--bg);padding:10px 14px;border-radius:8px;z-index:99}
:focus-visible{outline:2px solid var(--coral);outline-offset:3px;border-radius:4px}

.page-hero{padding:60px 0 50px;background:var(--bg)}
.page-hero .container{max-width:1080px}
.page-hero h1{margin-top:18px;font-size:clamp(2.6rem,6.8vw,5rem);letter-spacing:-.025em;max-width:16ch}
.page-hero .lede{margin-top:28px;max-width:62ch}
.page-hero .hero-actions{margin-top:34px;display:flex;gap:14px;flex-wrap:wrap}
.page-hero .hero-actions .btn{padding:1.05rem 1.8rem;font-size:1.02rem}
.page-hero .hero-meta{margin-top:28px;display:flex;gap:22px;flex-wrap:wrap;color:var(--ink-mute);font-size:.95rem;font-family:var(--sans)}
.page-hero .hero-meta span{display:inline-flex;align-items:center;gap:9px}
.page-hero .hero-meta .dot{width:7px;height:7px;border-radius:50%;background:var(--coral);display:inline-block;flex:none}

.chip{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .8rem;border-radius:999px;background:var(--surface);border:1px solid var(--line);font-size:.82rem;color:var(--ink-soft)}

::selection{background:var(--coral);color:#fff}

/* SHARED big colored card style (used by case-studies, services, blogs) */
.bleed-card{border-radius:var(--radius-lg);padding:clamp(36px,5vw,64px);position:relative;overflow:hidden;color:#fff}
.bleed-card.violet{background:var(--violet)}
.bleed-card.violet-strong{background:var(--violet-strong)}
.bleed-card.coral{background:var(--coral)}
.bleed-card.ink{background:#1A1818}
.bleed-card.leaf{background:var(--leaf)}
.bleed-card.sky{background:var(--sky)}
.bleed-card.amber{background:var(--amber)}
.bleed-card.cream{background:var(--bg-deeper);color:var(--ink)}
.bleed-card .card-label{display:inline-flex;align-items:center;gap:14px;font-family:var(--sans);font-weight:700;font-size:clamp(1.2rem,2vw,1.7rem);letter-spacing:-.01em}
.bleed-card .card-mark{width:42px;height:42px;background:#fff;border-radius:8px;flex:none;display:inline-flex;align-items:center;justify-content:center;color:var(--ink);font-size:.95rem;font-weight:800;letter-spacing:.02em}
.bleed-card.cream .card-mark{background:var(--ink);color:#fff}
.bleed-card .card-figure{font-family:var(--serif);font-style:italic;font-weight:400;font-size:clamp(2.6rem,7vw,5.4rem);line-height:1;letter-spacing:-.02em;max-width:14ch}
.bleed-card .card-sub{font-family:var(--sans);font-style:normal;display:block;font-size:clamp(1rem,1.4vw,1.15rem);font-weight:400;opacity:.85;margin-top:14px;letter-spacing:0;line-height:1.45}
.bleed-card .card-link{display:inline-flex;align-items:center;gap:.6rem;font-size:1.05rem;color:inherit;font-weight:400;transition:gap .2s ease}
.bleed-card .card-link:hover{gap:.95rem}
.bleed-card .card-link .arrow{width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,.18);display:inline-flex;align-items:center;justify-content:center;flex:none}
.bleed-card.cream .card-link .arrow{background:rgba(11,11,11,.10)}


/* === No italics anywhere (user preference) === */
*, *::before, *::after { font-style: normal !important; }



/* === Expandable pill labels === */
.pills-wrap{display:flex;flex-direction:column;gap:14px;width:100%}
button.svc-pill,button.sd-pill{font:inherit;border:0;text-align:left}
.svc-pill,.sd-pill{cursor:pointer;transition:background .15s ease,color .15s ease,transform .1s ease}
.svc-pill:hover,.sd-pill:hover{transform:translateY(-1px)}
.svc-pill:active,.sd-pill:active{transform:translateY(0)}
.svc-pill.active,.sd-pill.active{background:var(--coral);color:#fff}
.svc-pill.active::before,.sd-pill.active::before{background-color:rgba(255,255,255,.28);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='5 12 10 17 19 8'/%3E%3C/svg%3E")}
/* per-service-card accent (homepage) */
.svc-card.workflow .svc-pill.active{background:var(--violet)}
.svc-card.workflow .pill-explainer{background:rgba(124,92,255,.08);border-left-color:var(--violet)}
.svc-card.ai .svc-pill.active{background:var(--coral)}
.svc-card.ai .pill-explainer{background:rgba(242,92,58,.08);border-left-color:var(--coral)}
.svc-card.tools .svc-pill.active{background:#1A1818;color:#fff}
.svc-card.tools .pill-explainer{background:rgba(11,11,11,.06);border-left-color:var(--ink)}
.svc-card.integrations .svc-pill.active{background:var(--leaf)}
.svc-card.integrations .pill-explainer{background:rgba(31,106,74,.08);border-left-color:var(--leaf)}
.svc-card.audit .svc-pill.active{background:var(--sky)}
.svc-card.audit .pill-explainer{background:rgba(31,169,214,.08);border-left-color:var(--sky)}
/* Explainer panel */
.pill-explainer{max-height:0;overflow:hidden;transition:max-height .35s ease,padding .3s ease,opacity .25s ease;opacity:0;background:rgba(242,92,58,.08);border-left:3px solid var(--coral);border-radius:0 12px 12px 0;padding:0 18px}
.pill-explainer.open{max-height:340px;opacity:1;padding:16px 18px}
.pill-explainer p{font-size:.96rem;color:var(--ink);line-height:1.6;margin:0;max-width:60ch}


/* === Free-audit CTA strip (reusable across pages) === */
.audit-cta-strip{padding:clamp(50px,7vw,80px) 0;background:var(--bg-deeper);border-block:1px solid var(--line)}
.audit-cta-strip .container{max-width:1080px}
.audit-cta-strip-inner{display:grid;gap:28px;align-items:center;padding:clamp(30px,4vw,46px);background:#FBF8F1;border:1px solid var(--line);border-radius:18px}
@media (min-width:820px){.audit-cta-strip-inner{grid-template-columns:1.5fr auto;gap:40px}}
.audit-cta-strip .eyebrow{color:var(--coral)}
.audit-cta-strip h3{font-family:var(--serif);font-size:clamp(1.5rem,2.6vw,2rem);line-height:1.15;color:var(--ink);margin-top:12px;letter-spacing:-.01em;max-width:22ch}
.audit-cta-strip p{margin-top:14px;color:var(--ink-soft);font-size:.98rem;line-height:1.55;max-width:54ch;margin-bottom:0}
.audit-cta-strip .audit-cta-buttons{display:flex;flex-direction:column;gap:10px;align-items:flex-start}
@media (min-width:820px){.audit-cta-strip .audit-cta-buttons{align-items:flex-end}}
.audit-cta-strip-meta{font-family:var(--mono);font-size:.78rem;color:var(--ink-mute);letter-spacing:.04em}

/* Compact variant (lighter visual weight for dense pages) */
.audit-cta-strip.compact{padding:clamp(34px,5vw,56px) 0;background:var(--bg)}
.audit-cta-strip.compact .audit-cta-strip-inner{background:transparent;border:1.5px dashed #C9BFA6;padding:clamp(24px,3.5vw,36px)}
