/* Tessellate Solar Co. — DEMO template 01 · "Clay & Slate"
   Papery, editorial, domestic. Motion: slow and settled. */

:root {
  --clay: #C2613F;
  --clay-deep: #8F3F28;
  --clay-btn: #A9532F;          /* darkened clay for white-on-clay buttons (≥4.5:1) */
  --sand: #E8D5C0;
  --sand-2: #F2E6D8;
  --slate: #2B3A42;
  --slate-soft: #4A5C66;
  --sage: #7E8F7C;
  --paper: #FBF7F2;
  --paper-2: #F6EFE6;
  --white: #FFFFFF;

  --f-head: "Fraunces", Georgia, "Times New Roman", serif;
  --f-body: "Public Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;

  --ease: cubic-bezier(0.22, 0.61, 0.36, 1);
  --dur: 420ms;
  --wrap: 1240px;
  --gutter: clamp(20px, 4vw, 48px);
  --radius: 4px;
  --shadow: 2px 2px 0 rgba(43, 58, 66, 0.06);
  --shadow-lift: 4px 6px 0 rgba(43, 58, 66, 0.10);
  --grain: url("data:image/png;base64,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");
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; scroll-padding-top: 80px; }
body {
  margin: 0;
  font-family: var(--f-body);
  font-size: 17px;
  line-height: 1.65;
  color: var(--slate);
  background-color: var(--paper);
  padding-bottom: calc(56px + env(safe-area-inset-bottom));
}
body::before {               /* paper grain, 4% */
  content: "";
  position: fixed; inset: 0;
  background-image: var(--grain);
  opacity: 0.04;
  pointer-events: none;
  z-index: 0;
}
main, .site-footer { position: relative; z-index: 1; }
img { max-width: 100%; height: auto; display: block; }
a { color: var(--clay-deep); text-underline-offset: 3px; }
a:hover { color: var(--slate); }
:focus-visible { outline: 3px solid var(--clay-deep); outline-offset: 3px; border-radius: 2px; }
h1, h2, h3 { font-family: var(--f-head); font-weight: 600; letter-spacing: -0.01em; line-height: 1.15; color: var(--slate); margin: 0 0 0.5em; }
h1 { font-size: clamp(2.2rem, 1.4rem + 3.2vw, 3.9rem); font-variation-settings: "opsz" 144; }
h2 { font-size: clamp(1.7rem, 1.25rem + 1.6vw, 2.5rem); font-variation-settings: "opsz" 96; }
h3 { font-size: 1.3rem; font-variation-settings: "opsz" 36; }
p { margin: 0 0 1em; }
.visually-hidden { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

.wrap { width: 100%; max-width: var(--wrap); margin: 0 auto; padding: 0 var(--gutter); }
.narrow { max-width: 820px; }
.center { text-align: center; }
.small { font-size: 0.94rem; color: var(--slate-soft); }
.eyebrow {
  font-family: var(--f-body); font-weight: 600; font-size: 13px; letter-spacing: 0.08em; text-transform: uppercase;
  color: var(--clay-deep); margin: 0 0 0.9em;
}
.lede { font-size: 1.12rem; color: var(--slate-soft); max-width: 62ch; }
.confirm { font-size: 0.94rem; color: var(--clay-deep); font-weight: 500; }

/* Skip link */
.skip { position: absolute; left: 12px; top: -60px; z-index: 100; background: var(--slate); color: var(--paper); padding: 12px 16px; border-radius: var(--radius); transition: top 200ms var(--ease); }
.skip:focus { top: 12px; color: var(--paper); }

/* Buttons */
.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  min-height: 48px; padding: 12px 22px;
  font: 600 1rem/1.2 var(--f-body); text-decoration: none; border-radius: var(--radius);
  border: 1px solid transparent; cursor: pointer;
  transition: transform 200ms var(--ease), box-shadow 200ms var(--ease), background-color 200ms var(--ease), color 200ms var(--ease);
}
.btn-primary { background: linear-gradient(135deg, var(--clay-btn) 0%, var(--clay-deep) 100%); color: var(--white); box-shadow: var(--shadow); }
.btn-primary:hover { color: var(--white); }
.btn-ghost { background: transparent; color: var(--slate); border-color: var(--slate-soft); }
.btn-ghost:hover { background: var(--slate); color: var(--paper); }
.btn-paper { background: var(--paper); color: var(--clay-deep); }
.btn-paper:hover { background: var(--white); color: var(--slate); }
.btn-sm { min-height: 44px; padding: 10px 16px; font-size: 0.95rem; }
.btn.is-soft { background: var(--sand); color: var(--slate); }
.btn-row { display: flex; flex-wrap: wrap; gap: 12px; margin: 1.6rem 0 1rem; }
.text-link { font-weight: 600; display: inline-flex; align-items: center; min-height: 44px; }
.text-link::after { content: "→"; margin-left: 6px; transition: transform 200ms var(--ease); }
.text-link:hover::after { transform: translateX(3px); }

/* Header — condenses 88 → 60px */
.site-header {
  position: sticky; top: 0; z-index: 50;
  background: var(--paper);
  border-bottom: 1px solid transparent;
  transition: border-color 220ms var(--ease);
}
.header-inner { display: flex; align-items: center; gap: 16px; height: 72px; transition: height 220ms var(--ease); }
.site-header.is-condensed { border-bottom-color: var(--sand); }
.site-header.is-condensed .header-inner { height: 60px; }
.brand { display: inline-flex; align-items: center; gap: 10px; text-decoration: none; color: var(--slate); margin-right: auto; min-height: 44px; }
.mark { width: 32px; height: 32px; flex: none; transition: width 220ms var(--ease), height 220ms var(--ease); }
.is-condensed .mark { width: 26px; height: 26px; }
.brand-text { font-family: var(--f-head); font-size: 1.3rem; line-height: 1; letter-spacing: -0.01em; }
.brand-sub { color: var(--clay-deep); }
.nav { display: none; }
.nav ul { list-style: none; margin: 0; padding: 0; }
.nav a { display: flex; align-items: center; min-height: 44px; padding: 0 12px; text-decoration: none; color: var(--slate); font-weight: 500; border-radius: var(--radius); }
.nav a:hover, .nav a[aria-current="page"] { color: var(--clay-deep); }
.nav a[aria-current="page"] { box-shadow: inset 0 -2px 0 var(--clay); }
.hdr-licence { display: none; margin: 0; font-size: 13px; color: var(--slate-soft); }
.hdr-cta { display: none; }
.nav-toggle { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; min-width: 44px; padding: 0 12px; background: none; border: 1px solid var(--sand); border-radius: var(--radius); font: 600 0.95rem var(--f-body); color: var(--slate); cursor: pointer; }
.nav-toggle-bars, .nav-toggle-bars::before, .nav-toggle-bars::after { display: block; width: 18px; height: 1.5px; background: currentColor; position: relative; transition: transform 220ms var(--ease); }
.nav-toggle-bars::before, .nav-toggle-bars::after { content: ""; position: absolute; left: 0; }
.nav-toggle-bars::before { top: -6px; } .nav-toggle-bars::after { top: 6px; }
.nav.is-open { display: block; position: absolute; left: 0; right: 0; top: 100%; background: var(--paper); border-bottom: 1px solid var(--sand); padding: 8px var(--gutter) 16px; }
.nav.is-open ul { display: grid; }
.nav-toggle[aria-expanded="true"] .nav-toggle-bars { background: transparent; }
.nav-toggle[aria-expanded="true"] .nav-toggle-bars::before { transform: translateY(6px) rotate(45deg); }
.nav-toggle[aria-expanded="true"] .nav-toggle-bars::after { transform: translateY(-6px) rotate(-45deg); }

@media (min-width: 1100px) {
  .header-inner { height: 88px; }
  .nav, .nav.is-open { display: block; position: static; padding: 0; border: 0; background: none; }
  .nav ul, .nav.is-open ul { display: flex; gap: 2px; }
  .nav-toggle { display: none; }
  .hdr-cta { display: inline-flex; }
}
@media (min-width: 1360px) { .hdr-licence { display: block; max-width: 26ch; line-height: 1.35; } }

/* Hero — full-bleed photo under a paper-to-sand gradient */
.hero { position: relative; isolation: isolate; overflow: hidden; display: flex; align-items: center; min-height: clamp(580px, 82vh, 780px); padding: clamp(64px, 9vw, 120px) 0; background: var(--sand); }
.hero-bg { position: absolute; inset: 0; z-index: -2; }
.hero-bg img { width: 100%; height: 100%; object-fit: cover; object-position: 72% 55%; animation: heroFade 1400ms var(--ease) both; }
.hero::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(251,247,242,0) 0%, rgba(251,247,242,0.9) 36%, rgba(242,230,216,0.97) 100%); }
@media (max-width: 899px) { .hero { align-items: flex-end; padding-top: 240px; } .hero-bg img { object-position: 60% 0%; height: 62%; -webkit-mask-image: linear-gradient(to bottom, #000 55%, transparent 100%); mask-image: linear-gradient(to bottom, #000 55%, transparent 100%); } .hero-bg { background: var(--paper); } }
.hero::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 120px; z-index: -1; background: linear-gradient(to top, var(--paper) 0%, rgba(251,247,242,0) 100%); }
@media (min-width: 900px) {
  .hero::before { background: linear-gradient(100deg, rgba(251,247,242,0.97) 0%, rgba(251,247,242,0.88) 44%, rgba(232,213,192,0) 80%); }
}
.hero-copy { max-width: 640px; }
.hero-sub { font-size: 1.15rem; color: var(--slate-soft); max-width: 52ch; }
.hero-licence { font-size: 0.94rem; color: var(--slate-soft); margin: 0; }
@keyframes heroFade { from { opacity: 0; } to { opacity: 1; } }

/* Photos — warm grade, lifted blacks */
.photo { filter: sepia(0.14) saturate(0.86) contrast(0.94) brightness(1.03); }
.media-frame { margin: 0; position: relative; overflow: hidden; border: 1px solid var(--sand); background: var(--sand); box-shadow: var(--shadow); }
.media-frame img { width: 100%; height: 100%; object-fit: cover; }
.media-frame figcaption { padding: 10px 12px; background: var(--paper); }
.r-16x9 img { aspect-ratio: 16 / 9; } .r-3x2 img { aspect-ratio: 3 / 2; } .r-1x1 img { aspect-ratio: 1 / 1; } .r-4x3 img { aspect-ratio: 4 / 3; }

/* Sections */
.section { padding: clamp(56px, 8vw, 112px) 0; }
.band-sand { background: linear-gradient(180deg, var(--sand-2) 0%, var(--paper) 100%); }
.band-paper-2 { background: var(--paper-2); }
.section-head { max-width: 760px; margin-bottom: clamp(28px, 4vw, 48px); }
.grid-2, .grid-3, .grid-4 { display: grid; gap: 20px; }
@media (min-width: 700px) { .grid-2, .grid-4 { grid-template-columns: repeat(2, 1fr); } .grid-3 { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 1100px) { .grid-4 { grid-template-columns: repeat(4, 1fr); } }
.split { display: grid; gap: 40px; align-items: center; }
@media (min-width: 900px) { .split { grid-template-columns: 1fr 1fr; gap: 72px; } .split-rev > :first-child { order: 2; } }
.stack { display: grid; gap: 16px; }

/* Cards — printed feel */
.card {
  background: var(--white); border: 1px solid var(--sand); border-radius: var(--radius);
  padding: 28px 24px; box-shadow: var(--shadow);
  transition: transform 200ms var(--ease), box-shadow 200ms var(--ease);
}
@media (hover: hover) and (pointer: fine) { .card:hover, .fin-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-lift); } }
.pillar .icon { width: 40px; height: 40px; color: var(--slate); margin-bottom: 16px; }
.pillar h3 { font-size: 1.25rem; }
.pillar p:last-child { margin-bottom: 0; }

/* Five-step strip */
.steps { list-style: none; margin: 0 0 24px; padding: 0; display: grid; gap: 0; position: relative; }
.step { display: flex; align-items: center; gap: 16px; padding: 14px 0; position: relative; }
.step::before { content: ""; position: absolute; left: 11px; top: 0; bottom: 0; width: 1px; background: var(--sand); z-index: 0; }
.step:first-child::before { top: 50%; } .step:last-child::before { bottom: 50%; }
.node { width: 24px; height: 24px; border-radius: 50%; border: 1.5px solid var(--clay); background: var(--paper); flex: none; position: relative; z-index: 1; transition: background-color 420ms var(--ease); }
.step-label { font-family: var(--f-head); font-size: 1.2rem; }
[data-rail].is-live .node { background: var(--clay); }
[data-rail].is-live .step:nth-child(2) .node { transition-delay: 180ms; }
[data-rail].is-live .step:nth-child(3) .node { transition-delay: 360ms; }
[data-rail].is-live .step:nth-child(4) .node { transition-delay: 540ms; }
[data-rail].is-live .step:nth-child(5) .node { transition-delay: 720ms; }
@media (min-width: 900px) {
  .steps { grid-template-columns: repeat(5, 1fr); }
  .step { flex-direction: column; align-items: flex-start; padding: 0 16px 0 0; }
  .step::before { left: 0; right: 0; top: 11px; bottom: auto; width: auto; height: 1px; }
  .step:first-child::before { top: 11px; left: 12px; } .step:last-child::before { bottom: auto; right: auto; width: 12px; }
}

/* Lists */
.spec-list, .tick-list, .ask-list, .diff-list, .equip-list, .footer-list { list-style: none; padding: 0; margin: 0 0 1em; }
.spec-list li { padding: 12px 0; border-top: 1px solid var(--sand); }
.spec-list li:last-child { border-bottom: 1px solid var(--sand); }
.tick-list li { position: relative; padding-left: 26px; margin-bottom: 8px; }
.tick-list li::before { content: ""; position: absolute; left: 2px; top: 0.55em; width: 12px; height: 7px; border-left: 2px solid var(--sage); border-bottom: 2px solid var(--sage); transform: rotate(-45deg); }
.equip-list li { display: grid; gap: 2px; padding: 14px 0; border-top: 1px solid var(--sand); }
.equip-name { font-family: var(--f-head); font-size: 1.2rem; }
.equip-spec { font-size: 0.94rem; color: var(--slate-soft); }
.mini-h { font-family: var(--f-body); font-size: 13px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--slate-soft); margin: 1.2em 0 0.6em; }

/* Placeholder slots */
.slot-block { border: 1.5px dashed var(--clay); border-radius: var(--radius); padding: 18px 20px; background: var(--white); margin: 1.2em 0; }
.slot-block p { margin: 0; font-weight: 600; color: var(--clay-deep); }
.slot-label { display: block; font-size: 13px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--slate-soft); margin-bottom: 6px; }
.slot-inline { display: inline-block; font-weight: 600; color: var(--clay-deep); border: 1.5px dashed var(--clay); padding: 10px 14px; border-radius: var(--radius); background: rgba(255,255,255,0.6); }

/* Incentives strip */
.incentive-strip { background: linear-gradient(180deg, var(--sand) 0%, #F2E6D8 100%); padding: clamp(40px, 6vw, 72px) 0; border-top: 1px solid rgba(143,63,40,0.15); border-bottom: 1px solid rgba(143,63,40,0.15); }
.incentive-inner { display: grid; gap: 24px; align-items: center; }
.incentive-inner h2 { margin-bottom: 0.4em; }
@media (min-width: 900px) { .incentive-inner { grid-template-columns: 1fr auto; gap: 48px; } }

/* Crew — labelled empty frames */
.crew-frame { margin: 0; }
.frame-empty { aspect-ratio: 4 / 5; background: var(--sand); border: 2px dashed var(--slate-soft); border-radius: var(--radius); display: grid; place-items: center; text-align: center; padding: 20px; }
.frame-empty span { font-weight: 600; font-size: 0.95rem; color: var(--slate); }
.crew-frame figcaption { display: grid; padding-top: 12px; }
.crew-frame figcaption span { color: var(--slate-soft); font-size: 0.95rem; }

/* Warranty terms */
.terms { margin: 0 0 1em; }
.terms div { display: flex; justify-content: space-between; gap: 12px; padding: 8px 0; border-bottom: 1px solid var(--sand); }
.terms dt { font-weight: 600; } .terms dd { margin: 0; color: var(--clay-deep); font-weight: 500; }

/* FAQ */
.faq { border-top: 1px solid var(--sand); }
.faq-item { border-bottom: 1px solid var(--sand); }
.faq-item h3 { margin: 0; font-size: 1.12rem; }
.faq-q { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 64px; padding: 16px 0; background: none; border: 0; text-align: left; font: 600 1.12rem/1.35 var(--f-head); color: var(--slate); cursor: pointer; }
.faq-q:hover { color: var(--clay-deep); }
.chev { width: 22px; height: 22px; flex: none; transition: transform 420ms var(--ease); }
.faq-q[aria-expanded="true"] .chev { transform: rotate(180deg); }
.faq-a { display: grid; grid-template-rows: 1fr; transition: grid-template-rows 420ms var(--ease); }
.js .faq-a { grid-template-rows: 0fr; }
.js .faq-a.is-open { grid-template-rows: 1fr; }
.faq-a-inner { overflow: hidden; }
.js .faq-a:not(.is-open) .faq-a-inner { visibility: hidden; transition: visibility 0s linear 420ms; }
.faq-a-inner > :last-child { margin-bottom: 20px; }

/* Lead form */
.form-section { background: linear-gradient(160deg, var(--paper-2) 0%, var(--paper) 70%); }
.form-wrap { display: grid; gap: 40px; }
@media (min-width: 1000px) { .form-wrap { grid-template-columns: 0.8fr 1.2fr; gap: 64px; align-items: start; } .form-intro { position: sticky; top: 100px; } }
.form-card { background: var(--white); border: 1px solid var(--sand); border-radius: var(--radius); padding: clamp(20px, 4vw, 40px); box-shadow: var(--shadow); }
.progress { list-style: none; display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; padding: 0; margin: 0 0 28px; counter-reset: p; }
.progress li { counter-increment: p; font-size: 13px; font-weight: 600; letter-spacing: 0.04em; color: var(--slate-soft); border-top: 3px solid var(--sand); padding-top: 8px; transition: border-color 420ms var(--ease), color 420ms var(--ease); }
.progress li::before { content: counter(p) " · "; }
.progress li.is-current, .progress li.is-done { border-top-color: var(--clay); color: var(--slate); }
.step-title { font-size: 1.4rem; }
.js .form-step:not(.is-active) { display: none; }
.field { border: 0; padding: 0; margin: 0 0 22px; min-width: 0; }
.field legend, .field > label { display: block; font-weight: 600; margin-bottom: 8px; padding: 0; color: var(--slate); }
.field-hint { display: block; font-size: 0.94rem; color: var(--slate-soft); margin: -4px 0 8px; }
.req { color: var(--clay-deep); }
.chips { display: flex; flex-wrap: wrap; gap: 8px; }
.chip { position: relative; }
.chip input { position: absolute; opacity: 0; inset: 0; width: 100%; height: 100%; margin: 0; cursor: pointer; }
.chip span { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 16px; border: 1px solid var(--slate-soft); border-radius: 999px; background: var(--white); font-size: 0.97rem; transition: background-color 200ms var(--ease), color 200ms var(--ease), border-color 200ms var(--ease); }
.chip input:checked + span { background: var(--slate); border-color: var(--slate); color: var(--paper); }
.chip input:focus-visible + span { outline: 3px solid var(--clay-deep); outline-offset: 2px; }
.chip:hover span { border-color: var(--clay-deep); }
.field input[type="text"], .field input[type="email"], .field input[type="tel"] {
  width: 100%; min-height: 48px; padding: 10px 14px; font: 400 1rem var(--f-body); color: var(--slate);
  background: var(--paper); border: 1px solid var(--slate-soft); border-radius: var(--radius);
}
.field input:focus-visible { outline: 3px solid var(--clay-deep); outline-offset: 1px; }
.field [aria-invalid="true"], fieldset[aria-invalid="true"] .chip span { border-color: #A3261B; }
.field-row { display: grid; gap: 0 16px; }
@media (min-width: 640px) { .field-row { grid-template-columns: 1fr 1fr; } }
.check { display: flex; gap: 12px; align-items: flex-start; font-size: 0.97rem; cursor: pointer; }
.check input { width: 22px; height: 22px; margin-top: 2px; flex: none; accent-color: var(--clay-deep); }
.soft-note { background: var(--sand-2); border-left: 3px solid var(--sage); padding: 12px 16px; margin: -8px 0 22px; font-size: 0.97rem; }
.form-nav { display: flex; gap: 12px; justify-content: flex-end; margin-top: 8px; flex-wrap: wrap; }
.form-error { color: #A3261B; font-weight: 600; margin: 12px 0 0; }
.form-disclaimer { font-size: 0.94rem; color: var(--slate-soft); border-top: 1px solid var(--sand); padding-top: 16px; margin: 24px 0 0; }
.form-success { background: var(--sand-2); border-left: 4px solid var(--sage); padding: 24px; margin-top: 16px; }
.form-success:focus { outline: none; }

/* Page hero / CTA band */
.page-hero { background: linear-gradient(160deg, var(--sand) 0%, var(--paper) 70%); padding: clamp(48px, 7vw, 96px) 0 clamp(40px, 5vw, 64px); }
.page-hero .lede { margin-bottom: 0; }
.page-hero-slate { background: linear-gradient(160deg, var(--slate) 0%, #22303A 100%); }
.page-hero-slate h1 { color: var(--paper); margin: 0; }
.page-hero-slate .eyebrow { color: var(--sand); }
.cta-band { background: linear-gradient(135deg, var(--clay) 0%, var(--clay-deep) 100%); color: var(--white); padding: clamp(48px, 7vw, 88px) 0; }
.cta-inner { display: grid; gap: 12px; justify-items: start; }
.cta-band h2 { color: var(--white); margin: 0; }
.cta-sub { font-size: 1.2rem; font-weight: 600; margin: 0 0 12px; }  /* ≥18.66px bold: large-text contrast */

/* Services */
.toc ul { list-style: none; padding: 0; margin: 32px auto 0; display: flex; flex-wrap: wrap; gap: 8px; }
.toc a { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 14px; border: 1px solid var(--sand); border-radius: 999px; text-decoration: none; background: var(--white); font-size: 0.95rem; }
.toc a:hover { border-color: var(--clay); }
.services { display: grid; gap: clamp(56px, 8vw, 104px); padding-top: clamp(48px, 6vw, 80px); padding-bottom: clamp(56px, 8vw, 112px); }
.service-block { display: grid; gap: 28px; align-items: center; scroll-margin-top: 90px; }
@media (min-width: 900px) { .service-block { grid-template-columns: 1.1fr 1fr; gap: 64px; } .service-block.rev > :first-child { order: 2; } }
.pointer-note { background: var(--sand-2); border-left: 3px solid var(--clay); padding: 16px 18px; }

/* Timeline — alternating desktop, left rail mobile */
.timeline { list-style: none; margin: 0; padding: 0; position: relative; }
.timeline::before { content: ""; position: absolute; left: 11px; top: 0; bottom: 0; width: 1px; background: var(--sand); }
.tl-item { position: relative; padding-left: 48px; margin-bottom: 40px; }
.tl-node { position: absolute; left: 0; top: 28px; width: 24px; height: 24px; border-radius: 50%; border: 1.5px solid var(--clay); background: var(--paper); transition: background-color 420ms var(--ease); }
.timeline.is-live .tl-node { background: var(--clay); }
.timeline.is-live .tl-item:nth-child(2) .tl-node { transition-delay: 200ms; }
.timeline.is-live .tl-item:nth-child(3) .tl-node { transition-delay: 400ms; }
.timeline.is-live .tl-item:nth-child(4) .tl-node { transition-delay: 600ms; }
.timeline.is-live .tl-item:nth-child(5) .tl-node { transition-delay: 800ms; }
.tl-card { position: relative; background: var(--white); border: 1px solid var(--sand); padding: 28px 24px; box-shadow: var(--shadow); overflow: hidden; }
.tl-num { position: absolute; right: 16px; top: -6px; font-family: var(--f-head); font-size: 64px; line-height: 1; color: var(--sand); font-variation-settings: "opsz" 144; pointer-events: none; }
.tl-h { font-size: 1.45rem; position: relative; max-width: 22ch; }
.tl-dur { font-weight: 600; color: var(--clay-deep); font-size: 0.95rem; }
.tl-cols { display: grid; gap: 8px 24px; }
@media (min-width: 640px) { .tl-cols { grid-template-columns: 1fr 1fr; } }
@media (min-width: 1000px) {
  .timeline::before { left: 50%; }
  .tl-item { width: 50%; padding: 0 56px 0 0; }
  .tl-item:nth-child(even) { margin-left: 50%; padding: 0 0 0 56px; }
  .tl-node { left: auto; right: -12px; }
  .tl-item:nth-child(even) .tl-node { right: auto; left: -12px; }
}

/* Tables */
.table-wrap { overflow-x: auto; border: 1px solid var(--sand); background: var(--white); }
.who-table { width: 100%; border-collapse: collapse; min-width: 620px; }
.who-table th, .who-table td { text-align: left; padding: 14px 16px; border-bottom: 1px solid var(--sand); vertical-align: top; }
.who-table thead th { font-size: 13px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--slate-soft); background: var(--paper-2); }
.who-table tbody tr:nth-child(even) { background: rgba(232, 213, 192, 0.35); }
.who-table tbody th { font-weight: 600; }

/* Incentives page */
.notice { border: 2px solid var(--slate); border-radius: var(--radius); padding: 24px; background: var(--white); margin-bottom: 32px; box-shadow: 4px 4px 0 rgba(43,58,66,0.08); }
.notice-h { font-size: 1.25rem; }
.notice p:last-child { margin-bottom: 0; }
.inc-card h3 { margin-bottom: 12px; }
.own-rows { display: grid; gap: 0; border-top: 1px solid var(--sand); margin-bottom: 16px; }
.own-row { padding: 24px 0; border-bottom: 1px solid var(--sand); }
.own-note { font-weight: 600; color: var(--clay-deep); margin: 0; }
.ask-list li { padding: 14px 0; border-bottom: 1px solid var(--sand); }
.strong-note { font-weight: 600; margin-top: 20px; }

/* Financing */
.fin-grid { margin-bottom: 20px; }
.fin-card h2 { font-size: 1.6rem; }
.terms-block { margin: 16px 0 0; border: 1.5px solid var(--slate-soft); border-radius: var(--radius); padding: 4px 16px; background: var(--paper); }
.fld { display: flex; justify-content: space-between; gap: 16px; padding: 12px 0; border-bottom: 1px solid var(--sand); }
.fld:last-child { border-bottom: 0; }
.fld dt { font-weight: 600; }
.fld dd { margin: 0; text-align: right; font-weight: 500; color: var(--slate-soft); }
.fld-escalator { background: rgba(194, 97, 63, 0.08); margin: 0 -16px; padding: 12px 16px; border-left: 4px solid var(--clay); }
.fld-escalator dt, .fld-escalator dd { color: var(--clay-deep); }
.fld-def { display: block; font-weight: 400; font-size: 0.94rem; margin-top: 2px; }
.diff-list li { padding: 20px 0; border-bottom: 1px solid var(--sand); }
.diff-list h3 { font-size: 1.2rem; }

/* Contact */
.contact-grid { display: grid; gap: 32px; }
@media (min-width: 1000px) { .contact-grid { grid-template-columns: 1.4fr 1fr; gap: 48px; align-items: start; } .contact-card { position: sticky; top: 90px; } }
.contact-card { background: var(--white); border: 1px solid var(--sand); padding: 28px 24px; box-shadow: var(--shadow); }
.contact-dl { margin: 0 0 20px; }
.contact-dl div { padding: 10px 0; border-bottom: 1px solid var(--sand); }
.contact-dl dt { font-size: 13px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--slate-soft); }
.contact-dl dd { margin: 2px 0 0; }

/* Disclosures */
.prose { max-width: 720px; font-size: 16px; }
.disc-sec { padding: 24px 0; border-bottom: 1px solid var(--sand); }
.disc-sec h2 { font-size: 1.45rem; }

/* Footer */
.site-footer { background: linear-gradient(180deg, var(--slate) 0%, #22303A 100%); color: #E9E2D8; padding: 64px 0 24px; }
.site-footer a { color: #F3E7DA; }
.site-footer a:hover { color: var(--white); }
.footer-grid { display: grid; gap: 32px; }
@media (min-width: 800px) { .footer-grid { grid-template-columns: 1.3fr 1.3fr 0.8fr 1fr; } }
.brand-footer { color: var(--paper); }
.brand-footer .brand-sub { color: var(--sand); }
.footer-h { font-family: var(--f-body); font-size: 13px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--sand); }
.footer-list li { padding: 4px 0; }
.footer-list a { display: inline-flex; align-items: center; min-height: 44px; }
.footer-base { border-top: 1px solid rgba(232,213,192,0.2); margin-top: 40px; padding-top: 20px; font-size: 0.94rem; display: grid; gap: 4px; }
.footer-base p { margin: 0; }

/* Sticky mobile CTA */
.mobile-cta { position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; display: grid; grid-template-columns: 1fr 2fr; height: calc(56px + env(safe-area-inset-bottom)); padding-bottom: env(safe-area-inset-bottom); background: var(--slate); }
.mobile-cta a { display: flex; align-items: center; justify-content: center; font-weight: 600; text-decoration: none; color: var(--paper); min-height: 56px; }
.mobile-cta-main { background: linear-gradient(135deg, var(--clay-btn) 0%, var(--clay-deep) 100%); }
@media (min-width: 1100px) { .mobile-cta { display: none; } body { padding-bottom: 0; } }

/* Demo marker — fixed, non-dismissible */
.demo-marker {
  position: fixed; left: 12px; bottom: calc(56px + env(safe-area-inset-bottom) + 10px); z-index: 70;
  background: var(--slate); color: var(--paper); font: 600 12px/1.2 var(--f-body); letter-spacing: 0.04em;
  padding: 8px 12px; border-radius: 3px; border: 1px solid var(--clay); pointer-events: none;
  box-shadow: 2px 2px 0 rgba(0,0,0,0.15);
}
@media (min-width: 1100px) { .demo-marker { bottom: 16px; left: 16px; } }

/* Reveal — translate up 16px, never scale */
.js .reveal { opacity: 0; transform: translateY(16px); transition: opacity var(--dur) var(--ease), transform var(--dur) var(--ease); }
.js .reveal.is-in { opacity: 1; transform: none; }

/* ---------- Motion & gradient layer ---------- */
/* Header: a clay-to-sand rule draws in as the header condenses */
.site-header::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 2px; background: linear-gradient(90deg, var(--clay) 0%, var(--sand) 70%, rgba(232,213,192,0) 100%); transform: scaleX(0); transform-origin: left; transition: transform var(--dur) var(--ease); }
.site-header.is-condensed::after { transform: scaleX(1); }

/* Buttons: the clay gradient slides on hover */
.btn-primary { background-image: linear-gradient(135deg, var(--clay-btn) 0%, var(--clay-deep) 50%, var(--clay-btn) 100%); background-size: 220% 100%; background-position: 0 0; transition: background-position var(--dur) var(--ease), transform 200ms var(--ease), box-shadow 200ms var(--ease); }
.btn-primary:hover { background-position: 100% 0; }
@media (hover: hover) and (pointer: fine) { .btn:hover { transform: translateY(-2px); } }

/* Pillar icons sit on a sand gradient tile */
.pillar .icon { width: 56px; height: 56px; padding: 10px; border-radius: 4px; background: linear-gradient(135deg, var(--sand) 0%, var(--paper) 100%); transition: transform var(--dur) var(--ease); }
@media (hover: hover) and (pointer: fine) { .pillar:hover .icon { transform: translateY(-3px); } }

/* Cards: a clay edge draws across the top on hover */
.card { position: relative; overflow: hidden; }
.card::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: linear-gradient(90deg, var(--clay) 0%, var(--clay-deep) 100%); transform: scaleX(0); transform-origin: left; transition: transform var(--dur) var(--ease); }
@media (hover: hover) and (pointer: fine) { .card:hover::before { transform: scaleX(1); } }

/* Five-step strip: a clay line draws through the nodes as it enters view */
.steps::after { content: ""; position: absolute; z-index: 0; left: 11px; top: 26px; bottom: 26px; width: 2px; background: linear-gradient(180deg, var(--clay) 0%, var(--clay-deep) 100%); transform: scaleY(0); transform-origin: top; transition: transform 1100ms var(--ease); }
.steps.is-live::after { transform: scaleY(1); }
.step { z-index: 1; }
@media (min-width: 900px) {
  .steps::after { left: 12px; right: 20%; top: 11px; bottom: auto; width: auto; height: 2px; background: linear-gradient(90deg, var(--clay) 0%, var(--clay-deep) 100%); transform: scaleX(0); transform-origin: left; }
  .steps.is-live::after { transform: scaleX(1); }
}

/* Process timeline: the rail fills with clay top to bottom */
.timeline::after { content: ""; position: absolute; left: 11px; top: 0; bottom: 0; width: 2px; background: linear-gradient(180deg, var(--clay) 0%, var(--clay-deep) 100%); transform: scaleY(0); transform-origin: top; transition: transform 1400ms var(--ease); }
.timeline.is-live::after { transform: scaleY(1); }
.tl-node { z-index: 1; }
@media (min-width: 1000px) { .timeline::after { left: calc(50% - 0.5px); } }

/* Photos: warm grade, slow settle on hover */
.media-frame img { transition: transform 700ms var(--ease); }
@media (hover: hover) and (pointer: fine) { .media-frame:hover img { transform: scale(1.03); } }

/* Bands and frames pick up palette gradients */
.band-paper-2 { background: linear-gradient(180deg, var(--paper-2) 0%, var(--paper) 100%); }
.frame-empty { background: linear-gradient(160deg, var(--sand) 0%, var(--sand-2) 100%); }
.faq-q { border-radius: 4px; transition: background-color var(--dur) var(--ease), color var(--dur) var(--ease); }
.faq-q:hover { background: linear-gradient(90deg, rgba(232,213,192,0.4) 0%, rgba(232,213,192,0) 100%); }
.site-footer { border-top: 3px solid transparent; border-image: linear-gradient(90deg, var(--clay) 0%, var(--clay-deep) 100%) 1; }

/* CTA bands: the clay gradient drifts slowly */
.cta-band { background-size: 180% 180%; animation: clayDrift 16s ease-in-out infinite alternate; }
@keyframes clayDrift { from { background-position: 0% 0%; } to { background-position: 100% 100%; } }

@media print { .mobile-cta, .nav-toggle { display: none; } .demo-marker { position: static; } }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; transition-delay: 0ms !important; scroll-behavior: auto !important; }
  .js .reveal { opacity: 1; transform: none; }
}
