/* ============================================
   Justine Bevilacqua - personal brand site
   Rebuilt 25 Sep 2026 ("A+ Ink and rust, revised").
   Type: Schibsted Grotesk (display, 800) + Figtree (body)
   Palette: ink #12343b · off-white #f5f4f0 · white bands · rust #b0482a
            · rust-tint highlight #f6d2c1
   Contrast measured, not eyeballed:
     ink on off-white 12.1:1 · ink on white 13.3:1
     rust on off-white 5.0:1 · rust on white 5.5:1 · white on rust 5.5:1
     ink on highlight 9.4:1 · rust tint #e89b7c on ink 6.0:1
   Variable names kept from the old system so the Workshops and legal
   pages restyle without markup changes.
   ============================================ */

:root{
  --ink:#12343b;             /* deep ink - text and dark ground */
  --ink-soft:#4d5f63;        /* secondary text */
  --paper:#f5f4f0;           /* off-white page ground */
  --sand:#ffffff;            /* white bands */
  --blush:#f6d2c1;           /* rust tint - highlighter, soft blocks */
  --terracotta:#b0482a;      /* rust - accent and buttons */
  --terracotta-deep:#933b22; /* rust darkened - hover */
  --petrol:#12343b;          /* feature cards on the Workshops page */
  --petrol-deep:#0c2429;
  --camel:#b0482a;
  --ochre:#b0482a;
  --accent-on-dark:#e89b7c;  /* rust tint - full rust is too dark on ink */
  --line:rgba(18,52,59,0.14);
  --r-sm:10px;
  --r-md:14px;
  --r-lg:18px;
  --shadow-sm:0 1px 2px rgba(18,52,59,.04), 0 4px 12px rgba(18,52,59,.05);
  --shadow-md:0 1px 2px rgba(18,52,59,.04), 0 10px 30px rgba(18,52,59,.07);
  --shadow-lg:0 4px 10px rgba(18,52,59,.06), 0 24px 60px rgba(18,52,59,.12);
  --display:'Schibsted Grotesk','Helvetica Neue',Arial,sans-serif;
  --body:'Figtree',system-ui,-apple-system,sans-serif;
}

*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  font-family:var(--body);
  font-size:1.06rem;line-height:1.65;
  color:var(--ink);background:var(--paper);
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
h1,h2,h3{font-family:var(--display);font-weight:800;line-height:1.04;letter-spacing:-.02em;text-wrap:pretty;}
p{text-wrap:pretty;}

.container{max-width:1160px;margin:0 auto;padding:0 2rem;}
.container.narrow{max-width:780px;}

.accent{color:var(--terracotta);}
.mark{background:var(--terracotta);color:#fff;padding:.02em .28em;border-radius:2px;
  box-decoration-break:clone;-webkit-box-decoration-break:clone;}

/* ---------- Buttons ---------- */
.btn{display:inline-block;text-decoration:none;font-family:var(--body);
  font-weight:600;font-size:.98rem;padding:.9rem 1.9rem;border-radius:var(--r-sm);
  box-shadow:var(--shadow-sm);
  transition:background .2s,color .2s,border-color .2s,transform .18s,box-shadow .18s;}
.btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-md);}
.btn-primary{background:var(--terracotta);color:#fff;}
.btn-primary:hover{background:var(--terracotta-deep);}
.btn-ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line);}
.btn-ghost:hover{border-color:var(--terracotta);color:var(--terracotta);}

/* ---------- Nav ---------- */
.nav{position:sticky;top:0;z-index:100;background:rgba(245,244,240,0.92);
  backdrop-filter:blur(8px);border-bottom:1px solid var(--line);}
.nav-inner{max-width:1160px;margin:0 auto;padding:1.1rem 2rem;
  display:flex;align-items:center;justify-content:space-between;}
.nav-name{font-family:var(--display);font-size:1.3rem;font-weight:800;
  color:var(--ink);text-decoration:none;letter-spacing:-.02em;}
.nav-links{display:flex;align-items:center;gap:1.8rem;}
.nav-links a{color:var(--ink);text-decoration:none;font-size:.94rem;font-weight:600;}
.nav-links a:hover{color:var(--terracotta);}
.nav-cta{color:var(--terracotta) !important;}

/* ---------- Kicker / labels ---------- */
.section-label{font-weight:600;font-size:.74rem;text-transform:uppercase;
  letter-spacing:.2em;color:var(--terracotta);display:inline-block;margin-bottom:.9rem;}
.section-label.light{color:var(--terracotta);}
.section-num{font-family:var(--display);font-size:.95rem;font-weight:700;
  color:var(--terracotta);letter-spacing:.05em;}

/* ---------- Sections ---------- */
.section{padding:6rem 0;}
.section h2{font-size:clamp(2rem,4.4vw,3.1rem);margin-bottom:1.3rem;}
.lede{font-size:1.14rem;}
.section-intro{max-width:44ch;margin-bottom:2.2rem;color:var(--ink-soft);}
.section-dark{background:var(--ink);color:var(--paper);}
.section-dark h2,.section-dark h3{color:#fff;}
.section-dark .section-label{color:var(--terracotta);}
.section-dark .lede,.section-dark p{color:rgba(245,239,230,.85);}

/* ---------- Hero ---------- */
.hero{padding-block:2.5rem 6rem;}
.hero-grid{display:grid;grid-template-columns:.82fr 1.18fr;align-items:center;}
.hero-media{position:relative;padding:1.4rem;max-width:430px;}
.hero-media::after{content:'';position:absolute;left:0;top:0;right:0;bottom:0;
  background:var(--sand);z-index:0;border-radius:calc(var(--r-lg) + 8px);}
.hero-img{position:relative;z-index:1;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;
  object-position:center;border-radius:var(--r-lg);display:block;}
.hero-copy{position:relative;z-index:2;background:var(--paper);margin-left:-3.5rem;
  padding:2rem 0 2rem 3.5rem;}
.hero h1{font-size:clamp(2.6rem,5.6vw,4.7rem);margin:1.1rem 0 1.4rem;}
.hero-sub{font-size:1.16rem;color:var(--ink-soft);max-width:36ch;margin-bottom:2rem;}
.hero-ctas{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;}
.hero-cred{margin-top:2.3rem;padding-top:1.3rem;border-top:1px solid var(--line);
  font-size:.82rem;letter-spacing:.03em;color:var(--ink-soft);}

/* ---------- Trust strip ---------- */
.trust{background:var(--ink);color:var(--paper);text-align:center;
  font-family:var(--display);font-weight:600;font-size:1.35rem;line-height:1.35;padding:2rem;}
.trust p{max-width:56ch;margin:0 auto;}

/* ---------- Problem ---------- */
.problem-list{display:flex;flex-direction:column;gap:1.05rem;max-width:720px;margin:0 0 2rem;}
.problem-item{font-size:1.12rem;color:var(--ink);padding-left:1.1rem;
  border-left:3px solid var(--terracotta);}
.reassure{font-size:1.2rem;color:var(--ink);max-width:660px;
  border-top:1px solid var(--line);padding-top:1.4rem;}
.section-dark .reassure{color:rgba(245,239,230,.9);border-top-color:rgba(245,239,230,.2);}

/* ---------- What I do ---------- */
.what-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:0;align-items:center;margin-top:2rem;}
.what-copy{max-width:46ch;}
.what-copy h2{margin:.6rem 0 1.4rem;max-width:15ch;}
.what-copy p{font-size:1.1rem;color:var(--ink-soft);margin-bottom:1.1rem;}
.what-copy p.plain{color:var(--ink);}
.what-media{position:relative;padding-left:2.4rem;}
.what-media::before{content:'';position:absolute;right:-1.1rem;top:-1.1rem;
  width:58%;height:58%;background:var(--blush);z-index:0;}
.quote-card{position:relative;z-index:2;background:var(--petrol);color:var(--paper);
  padding:2.6rem;border-radius:var(--r-md);box-shadow:var(--shadow-md);}
.quote-card .big{font-family:var(--display);font-size:1.85rem;line-height:1.22;font-style:italic;}
.quote-card .big em{color:var(--accent-on-dark);font-style:italic;}
.quote-card .who{margin-top:1.4rem;font-size:.76rem;letter-spacing:.14em;
  text-transform:uppercase;color:rgba(245,239,230,.65);}

/* ---------- Signature band ---------- */
.signature{background:var(--ink);color:var(--paper);padding:6.5rem 0;text-align:center;}
.signature h2{font-size:clamp(2.9rem,8vw,6rem);color:var(--paper);line-height:1.0;margin:1.6rem 0 0;}
.signature h2 em{color:var(--terracotta);}

/* ---------- What I won't do ---------- */
.wont{background:var(--sand);}
.wont-head{display:flex;justify-content:space-between;align-items:baseline;
  margin-bottom:2.4rem;flex-wrap:wrap;gap:1rem;}
.wont-ghost{font-family:var(--display);font-weight:800;
  font-size:clamp(2.4rem,6vw,4.4rem);color:rgba(18,52,59,.12);line-height:1;}
.wont-item{display:grid;grid-template-columns:auto 1fr;gap:2rem;
  padding:1.7rem 0;border-top:1px solid var(--line);align-items:baseline;}
.wont-item:last-child{border-bottom:1px solid var(--line);}
.wont-item .n{font-family:var(--display);font-size:2rem;font-weight:500;color:var(--terracotta);}
.wont-item h3{font-size:1.35rem;margin-bottom:.3rem;}
.wont-item p{color:var(--ink-soft);max-width:62ch;}

/* ---------- DIY callout ---------- */
.diy{background:var(--sand);
  border-radius:var(--r-md);padding:2.4rem 2.6rem;max-width:860px;box-shadow:var(--shadow-sm);}
.diy h2{margin-bottom:1.1rem;}
.diy p{margin-bottom:1rem;color:var(--ink-soft);}
.diy p:last-child{margin-bottom:0;color:var(--ink);}

/* ---------- Origin ---------- */
.about-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:3.4rem;align-items:center;margin-top:2rem;}
.origin-photo{position:relative;padding:1.2rem;justify-self:center;width:100%;max-width:360px;}
.origin-photo::after{content:'';position:absolute;left:0;top:0;right:0;bottom:0;background:var(--sand);z-index:0;border-radius:calc(var(--r-lg) + 8px);}
.origin-photo img{position:relative;z-index:1;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;object-position:center;border-radius:var(--r-lg);display:block;}
.about-body{margin-top:1rem;color:var(--ink-soft);}

/* ---------- Automation vs AI ---------- */
.honest{margin-top:3.2rem;background:var(--sand);border-radius:var(--r-md);
  box-shadow:var(--shadow-sm);padding:2.4rem 2.6rem;}
.honest-cols{display:grid;grid-template-columns:1fr 1fr;gap:2.2rem;margin:1.4rem 0 1.6rem;}
.honest h3{font-family:var(--display);font-size:1.28rem;margin-bottom:.5rem;color:var(--ink);}
.honest p{color:var(--ink-soft);font-size:1rem;}
.honest-close{padding-top:1.4rem;border-top:1px solid var(--line);color:var(--ink)!important;}

/* ---------- Pricing ---------- */
.offers-head{text-align:center;max-width:42ch;margin:0 auto 3rem;}
.offers{display:grid;grid-template-columns:1fr 1fr;gap:1.6rem;align-items:start;}
.offer{background:var(--paper);border:1px solid var(--line);padding:2.4rem;border-radius:var(--r-lg);
  box-shadow:var(--shadow-md);
  display:flex;flex-direction:column;}
.offer.feature{background:var(--petrol);border-color:var(--petrol);color:var(--paper);box-shadow:var(--shadow-lg);}
.offer-tier{font-size:.74rem;text-transform:uppercase;letter-spacing:.16em;
  font-weight:600;color:var(--terracotta);}
.offer.feature .offer-tier{color:var(--accent-on-dark);}
.offer-name{font-size:1.7rem;margin:.5rem 0 .2rem;color:var(--ink);}
.offer.feature .offer-name{color:#fff;}
.price{font-family:var(--display);font-size:clamp(2.8rem,5.5vw,4rem);font-weight:500;
  line-height:1;margin:.7rem 0 .2rem;color:var(--terracotta);}
.offer.feature .price{color:#fff;}
.price small{font-size:1rem;font-family:var(--body);color:var(--ink-soft);letter-spacing:.04em;}
.offer.feature .price small{color:rgba(245,239,230,.65);}
.offer-note{font-size:.84rem;color:var(--ink-soft);margin-bottom:1.1rem;}
.offer.feature .offer-note{color:rgba(245,239,230,.6);}
.offer-desc{font-size:.98rem;color:var(--ink-soft);margin-bottom:1.2rem;}
.offer.feature .offer-desc{color:rgba(245,239,230,.85);}
.offer-credit{font-size:.94rem;color:var(--ink);margin-top:auto;padding-top:.9rem;
  border-top:1px solid var(--line);}
.offer-alt{margin-top:1.6rem;padding:1.5rem 1.8rem;border:1px dashed var(--line);
  border-radius:var(--r-md);text-align:center;}
.offer-alt p{font-size:.98rem;color:var(--ink-soft);margin:0 auto;max-width:62ch;}
.offer-alt strong{color:var(--ink);font-weight:600;}
.ladder-cta{margin-top:2rem;text-align:center;}
.ladder-cta-note{margin:.9rem auto 0;font-size:.92rem;color:var(--ink-soft);max-width:46ch;}

/* ---------- Speaking page ---------- */
.page-hero{max-width:820px;padding:1.5rem 0 1rem;}
.page-hero h1{font-size:clamp(2.4rem,5vw,4.1rem);margin:1.1rem 0 1.4rem;}
.hero-sub.wide{max-width:62ch;}
.nav-links a.is-current{color:var(--terracotta);}

.formats{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;align-items:stretch;}
.format{background:var(--paper);border:1px solid var(--line);padding:2.1rem;
  border-radius:var(--r-lg);box-shadow:var(--shadow-md);display:flex;flex-direction:column;}
.format.feature{background:var(--petrol);border-color:var(--petrol);color:var(--paper);
  box-shadow:var(--shadow-lg);}
.format.feature .offer-tier{color:var(--accent-on-dark);}
.format.feature .offer-name{color:#fff;}
.format.feature .offer-desc{color:rgba(245,239,230,.85);}
.format-meta{font-size:.86rem;color:var(--ink-soft);margin:.35rem 0 1rem;
  padding-bottom:.9rem;border-bottom:1px solid var(--line);}
.format.feature .format-meta{color:rgba(245,239,230,.7);border-bottom-color:rgba(245,239,230,.22);}

.build-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));
  gap:1.4rem;margin-top:2.2rem;}
.build-item{background:var(--paper);border-radius:var(--r-md);box-shadow:var(--shadow-md);padding:1.9rem;}

.build-item h3{font-family:var(--display);font-size:1.4rem;margin-bottom:.55rem;color:var(--ink);}
.build-item p{font-size:.97rem;color:var(--ink-soft);}

/* ---------- Process ---------- */
.steps{list-style:none;margin:2.2rem 0;display:flex;flex-direction:column;gap:1.7rem;}
.steps li{display:flex;gap:1.4rem;align-items:flex-start;}
.step-num{font-family:var(--display);font-size:1.7rem;color:var(--terracotta);min-width:2.6rem;line-height:1.1;}
.steps h3{font-size:1.25rem;margin-bottom:.25rem;}
.steps p{font-size:.99rem;color:var(--ink-soft);}

/* ---------- Proof ---------- */
.numbers-section{background:var(--ink);color:var(--paper);padding:3.4rem 0;}
.numbers{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;text-align:center;}
.number-item{display:flex;flex-direction:column;gap:.3rem;}
.number{font-family:var(--display);font-size:3rem;color:var(--terracotta);line-height:1;}
.number-label{font-size:.88rem;color:rgba(245,239,230,.7);}
.stack{margin:1.6rem 0 2.4rem;}
.stack-list{list-style:none;display:flex;flex-wrap:wrap;gap:.6rem;}
.stack-list li{background:var(--sand);border:1px solid var(--line);padding:.35rem 1rem;
  border-radius:999px;font-size:.86rem;font-weight:600;}
.filters{display:flex;gap:.6rem;flex-wrap:wrap;margin-bottom:2rem;}
.filter-btn{font-family:var(--body);font-weight:600;font-size:.84rem;padding:.45rem 1.1rem;
  border-radius:999px;border:1.5px solid var(--line);background:transparent;color:var(--ink);
  cursor:pointer;transition:all .2s;}
.filter-btn:hover{border-color:var(--terracotta);color:var(--terracotta);}
.filter-btn.active{background:var(--ink);border-color:var(--ink);color:var(--paper);}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.4rem;}
.card{background:var(--paper);border:1px solid var(--line);border-top:3px solid var(--terracotta);
  border-radius:var(--r-md);box-shadow:var(--shadow-sm);padding:1.7rem;display:flex;flex-direction:column;gap:.8rem;
  transition:transform .2s,box-shadow .2s;}
.card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);}
.card[data-category="Automation & Workflows"]{border-top-color:var(--petrol);}
.card-category{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--terracotta);}
.card[data-category="Automation & Workflows"] .card-category{color:var(--petrol);}
.card h3{font-size:1.3rem;}
.card-desc{font-size:.95rem;color:var(--ink-soft);flex-grow:1;}
.card-tags{display:flex;flex-wrap:wrap;gap:.4rem;}
.tag{font-size:.72rem;font-weight:600;padding:.22rem .7rem;border-radius:999px;background:var(--sand);color:var(--ink);}
.card-toggle{font-family:var(--body);font-weight:600;font-size:.86rem;color:var(--terracotta);
  background:none;border:none;cursor:pointer;text-align:left;padding:0;}
.card-toggle:hover{color:var(--terracotta-deep);text-decoration:underline;}
.card-details{display:none;font-size:.93rem;color:var(--ink);border-top:1px solid var(--line);padding-top:.9rem;}
.card.open .card-details{display:block;}
.card-link{display:inline-block;margin-top:.6rem;font-weight:600;color:var(--terracotta);text-decoration:none;}
.card-link:hover{text-decoration:underline;}
.build-item .card-link{margin-top:1rem;margin-right:1.2rem;}
.card-link-soft{color:var(--ink-soft);}
.contact-plain{margin-top:2rem;color:var(--ink-soft);}
.contact-plain a{color:var(--terracotta);font-weight:600;}

/* ---------- Final CTA ---------- */
.contact-section{background:var(--ink);color:var(--paper);text-align:center;padding:7rem 0;}
.contact-section h2{color:#fff;font-size:clamp(2.3rem,5vw,3.8rem);max-width:20ch;margin:0 auto 1.3rem;}
.contact-section h2 em{color:var(--accent-on-dark);font-style:normal;}
.contact-section .section-label{color:var(--accent-on-dark);}
.contact-section .btn-primary{background:var(--terracotta);}
.cta-outcome{font-family:var(--body);font-weight:500;font-size:clamp(1.3rem,3vw,1.6rem);line-height:1.3;
  color:#fff;max-width:38ch;margin:0 auto 1.6rem;}
.contact-section .lede{color:rgba(245,239,230,.8);max-width:46ch;margin:0 auto 2.2rem;}
.contact-links{display:flex;align-items:center;justify-content:center;gap:1.6rem;flex-wrap:wrap;}
.contact-link{color:var(--accent-on-dark);text-decoration:none;font-weight:600;}
.contact-link:hover{text-decoration:underline;}

/* ---------- Footer ---------- */
.footer{background:var(--ink);color:rgba(245,239,230,.55);padding:1.7rem 0;
  font-size:.85rem;border-top:1px solid rgba(245,239,230,.12);}
.footer a{color:rgba(245,239,230,.78);text-decoration:none;}
.footer a:hover{color:var(--terracotta);}
.footer-note{margin-top:.45rem;font-size:.8rem;color:rgba(245,239,230,.5);}

/* ---------- Legal pages ---------- */
.legal h1{font-size:clamp(2rem,4.5vw,2.7rem);margin-bottom:.3rem;}
.legal h2{font-size:1.3rem;margin:2.2rem 0 .6rem;}
.legal p,.legal li{color:var(--ink-soft);}
.legal ul{margin:.5rem 0 .5rem 1.3rem;}
.legal a{color:var(--terracotta);}
.legal-meta{font-size:.9rem;color:var(--ink-soft);margin-bottom:1.4rem;}

/* ---------- Responsive ---------- */
@media(max-width:860px){
  .hero-grid,.what-grid,.offers,.about-grid,.honest-cols,.formats{grid-template-columns:1fr;}
  .hero-copy{margin-left:0;padding:2rem 0 0;}
  .hero-media{padding:0;max-width:320px;}
  .hero-media::after{display:none;}
  .what-media{padding-left:0;margin-top:2rem;}
  .what-media::before{display:none;}
  .origin-photo{max-width:280px;order:-1;}
  .origin-photo::after{display:none;}
  .numbers{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:640px){
  .section{padding:4rem 0;}
  .nav-links a:not(.nav-cta){display:none;}
  .numbers{gap:1.4rem;}
  .number{font-size:2.3rem;}
}

/* ---------- Homepage (A+ rebuild, 25 Sep 2026) ---------- */
.band{background:var(--sand);}
.home-hero h1 .l1{position:relative;z-index:1;}
.hl{background:var(--blush);padding:0 .12em;box-decoration-break:clone;-webkit-box-decoration-break:clone;}
.num{display:block;font-family:var(--display);font-size:.95rem;font-weight:700;color:var(--terracotta);letter-spacing:.04em;margin-bottom:.8rem;}
.home-hero{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,.45fr);gap:3rem;align-items:center;padding-block:5.5rem 6rem;}
.home-hero h1{font-size:clamp(2.6rem,5.4vw,4.75rem);letter-spacing:-.04em;line-height:1.1;margin:1.2rem 0 1.6rem;}
.home-hero .hero-sub{font-size:1.35rem;max-width:30ch;line-height:1.45;margin-bottom:2rem;}
.home-hero .hero-cred{margin-top:2.2rem;}
.portrait{width:100%;height:auto;max-width:300px;aspect-ratio:1/1;object-fit:cover;border-radius:50%;
  box-shadow:var(--shadow-lg);display:block;justify-self:center;}
.split{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:4.5rem;}
.split h2{font-size:clamp(2rem,4vw,3.5rem);}
.rows p{font-size:1.2rem;line-height:1.5;padding:1.35rem 0;border-top:1px solid var(--line);margin:0;}
.rows .closer{font-family:var(--display);font-weight:700;font-size:1.65rem;line-height:1.3;color:var(--terracotta);padding-top:1.7rem;}
.cards{display:grid;gap:1.4rem;margin-top:2.8rem;}
.cards-3{grid-template-columns:repeat(3,minmax(0,1fr));}
.cards-4{grid-template-columns:repeat(4,minmax(0,1fr));}
.card-plain{background:var(--paper);border-radius:var(--r-md);box-shadow:var(--shadow-md);padding:2rem;
  display:flex;flex-direction:column;gap:.8rem;}
.card-plain h3{font-size:1.75rem;}
.card-plain p{color:var(--ink-soft);font-size:1rem;line-height:1.6;flex-grow:1;}
.card-plain a{color:var(--terracotta);font-weight:700;text-decoration:none;}
.card-plain a:hover{text-decoration:underline;}
.card-plain a.soft{color:var(--ink-soft);font-weight:600;}
.cards-4 .card-plain{padding:1.7rem;}
.cards-4 .card-plain h3{font-size:1.4rem;}
.cards-4 .card-plain a{font-size:.95rem;}
.about-split{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:4.5rem;align-items:center;}
.about-split .lede{font-size:1.3rem;line-height:1.55;margin:1.2rem 0 1rem;}
.about-split .about-body{font-size:1.1rem;}
.work-offer{max-width:760px;margin:1.6rem 0 3.2rem;}
.work-offer-list{margin:0 0 1.2rem;padding-left:1.15rem;color:rgba(245,244,240,.88);font-size:.98rem;line-height:1.6;}
.work-offer-list li{margin-bottom:.55rem;}
.work-offer .btn{margin-top:.4rem;}
.work-offer-after{margin:.9rem 0 0;}
.work-also{font-size:1.5rem;margin:0 0 .6rem;}
.contact-intro{max-width:46ch;color:var(--ink-soft);font-size:1.15rem;}
@media(max-width:1000px){
  .cards-4{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:860px){
  .home-hero,.split,.about-split,.cards-3{grid-template-columns:1fr;}
  .home-hero{gap:2rem;padding-block:3rem 4rem;}
  .home-hero .portrait-wrap{order:-1;}
  .portrait{max-width:200px;justify-self:start;}
  .split,.about-split{gap:2rem;}
  .about-split .portrait{max-width:220px;order:-1;}
}

/* ---------- Sign-up form (Kit, "Before you use AI at work") ----------
   Shared by /before-you-use-ai and the homepage. Single opt-in, so the
   consent line sits above the button, never after it. */
.signup-card{background:var(--sand);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);
  padding:2.2rem;}
.signup-card h2,.signup-card h3{font-size:1.5rem;margin-bottom:1.3rem;}
.field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1rem;}
.field label{font-weight:600;font-size:.9rem;}
.field input{font:inherit;font-size:1rem;padding:.85rem 1rem;border-radius:var(--r-sm);
  border:1.5px solid var(--line);background:var(--paper);color:var(--ink);width:100%;}
.field input:focus{outline:none;border-color:var(--terracotta);
  box-shadow:0 0 0 3px rgba(176,72,42,.15);}
.signup-consent{font-size:.92rem;color:var(--ink);line-height:1.55;margin:.3rem 0 1rem;}
.signup-consent a{color:var(--terracotta);font-weight:600;}
.signup-card .btn{width:100%;border:0;cursor:pointer;font-size:1.02rem;}
.signup-legal{font-size:.82rem;color:var(--ink-soft);margin-top:1.1rem;padding-top:.9rem;
  border-top:1px solid var(--line);}
.form-status{font-size:.9rem;margin-top:.8rem;color:var(--terracotta);font-weight:600;}
/* spam honeypot: off-screen for people, still in the DOM for bots */
.hp{position:absolute !important;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden;}

/* Homepage sign-up band */
.home-signup{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:4rem;align-items:center;}
.home-signup h2{font-size:clamp(2rem,4.4vw,3.1rem);margin-bottom:1.3rem;}
.home-signup .hero-sub{font-size:1.25rem;line-height:1.45;color:var(--ink);max-width:34ch;margin-bottom:1.1rem;}
.home-signup .plain{color:var(--ink-soft);max-width:44ch;}
.band .signup-card{background:var(--paper);}
@media(max-width:860px){
  .home-signup{grid-template-columns:1fr;gap:2.2rem;}
}
@media(max-width:560px){
  .signup-card{padding:1.6rem 1.4rem;}
}

@media(max-width:560px){
  .cards-4{grid-template-columns:1fr;}
  .nav-name{font-size:1.1rem;white-space:nowrap;}
  .nav-inner{padding:1rem 1.25rem;gap:1rem;}
}
