/* ============================================================
   Resital İnşaat — Design System
   Archetype : Warm Print / Editorial Narrative
   Palette   : Concrete & Safety Yellow (light, warm grey)
   Surface   : Flat Hairline — NO shadows, 1px rules only
   Shape     : Sharp (0–4px)
   Fonts     : Bodoni Moda (display) + Zilla Slab (body)
   ============================================================ */

/* ── RESET ── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{min-height:100svh;line-height:1.6;-webkit-font-smoothing:antialiased}

/* ── TOKENS ── */
:root{
  --base:        #EDEBE6;
  --surface:     #F5F3EF;
  --surface-alt: #E3E0D9;
  --hairline:    #CFCBC2;
  --ink:         #1B1B1D;
  --ink-muted:   #55534E;
  --ink-faint:   #85827B;
  --accent:      #E0B000;   /* safety yellow — fills only, graphite text on top */
  --accent-text: #8A6D00;   /* darker yellow for small accent text on light */
  --accent-dim:  #F3E8BC;   /* accent tint for chips / active rows */
  --white:       #FBFAF7;

  --font-display:'Bodoni Moda',Georgia,serif;
  --font-body:   'Zilla Slab','Georgia',serif;

  --text-xs:   .75rem;
  --text-sm:   .875rem;
  --text-base: 1rem;
  --text-lg:   1.125rem;
  --text-xl:   1.25rem;
  --text-2xl:  1.5rem;
  --text-3xl:  1.875rem;
  --text-4xl:  clamp(1.875rem,3.5vw,2.5rem);
  --text-5xl:  clamp(2.25rem,5vw,3.75rem);
  --text-hero: clamp(2.75rem,6.5vw,5rem);

  --space-1:  .25rem;
  --space-2:  .5rem;
  --space-3:  .75rem;
  --space-4:  1rem;
  --space-5:  1.25rem;
  --space-6:  1.5rem;
  --space-8:  2rem;
  --space-10: 2.5rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --space-20: 5rem;
  --space-24: 6rem;

  --radius-sm: 2px;
  --radius:    4px;

  --ease-out: cubic-bezier(0.23,1,0.32,1);
  --dur-fast: 160ms;
  --dur-base: 260ms;
  --dur-slow: 400ms;

  --section-pad: clamp(var(--space-12),8vw,var(--space-24));
  --container:   1160px;
  --container-sm: 760px;
}

/* ── BASE ── */
body{
  background:var(--base);
  color:var(--ink);
  font-family:var(--font-body);
  font-size:var(--text-base);
}

/* Scroll-progress bar */
#scroll-bar{
  position:fixed;top:0;left:0;height:2px;width:0%;
  background:var(--accent);
  z-index:2000;
  pointer-events:none;
  transition:width .1s linear;
}

/* Skip link */
.skip{
  position:absolute;left:-9999px;top:auto;
  width:1px;height:1px;overflow:hidden;
}
.skip:focus{
  left:var(--space-4);top:var(--space-4);
  width:auto;height:auto;
  padding:var(--space-2) var(--space-4);
  background:var(--accent);color:var(--ink);
  font-family:var(--font-body);
  border:1px solid var(--hairline);
  border-radius:var(--radius);
  z-index:9999;text-decoration:none;
}

/* ── CONTAINER ── */
.container{
  width:100%;max-width:var(--container);
  margin-inline:auto;
  padding-inline:clamp(var(--space-4),4vw,var(--space-10));
}
.container-sm{max-width:var(--container-sm)}

/* ── TYPOGRAPHY ── */
h1,h2,h3,h4,h5{
  font-family:var(--font-display);
  line-height:1.12;
  letter-spacing:-.02em;
  text-wrap:balance;
  color:var(--ink);
}
h1{font-size:var(--text-hero)}
h2{font-size:var(--text-5xl)}
h3{font-size:var(--text-4xl)}
h4{font-size:var(--text-2xl)}
h5{font-size:var(--text-xl)}

p{
  max-width:65ch;
  line-height:1.65;
  color:var(--ink-muted);
}
p.wide{max-width:none}

a{color:var(--accent-text);text-underline-offset:3px}
a:focus-visible{
  outline:2px solid var(--accent-text);
  outline-offset:3px;
  border-radius:var(--radius-sm);
}

/* Inline icon guard */
li>svg,p>svg,a>svg,button>svg,span>svg,td>svg,label>svg{
  width:1.1em;height:1.1em;flex:none
}

/* ── RULE LINES ── */
hr,.rule{
  border:none;
  border-top:1px solid var(--hairline);
  margin-block:var(--space-6);
}

/* ── NAV ── */
.topnav{
  position:sticky;top:0;left:0;right:0;
  z-index:900;
  background:var(--base);
  border-bottom:1px solid var(--hairline);
  transition:border-color var(--dur-base) var(--ease-out),
             background var(--dur-base) var(--ease-out);
}
.topnav.scrolled{
  background:var(--surface);
  border-color:var(--hairline);
}
.topnav-inner{
  display:flex;align-items:center;gap:var(--space-6);
  max-width:var(--container);
  margin-inline:auto;
  padding-inline:clamp(var(--space-4),4vw,var(--space-10));
  height:64px;
}
.brand{
  display:flex;align-items:center;gap:var(--space-3);
  text-decoration:none;flex-shrink:0;
}
.brand-mark{display:block;flex:none}
.wordmark{
  font-family:var(--font-display);
  font-size:1.15rem;
  font-weight:400;
  letter-spacing:-.01em;
  color:var(--ink);
  line-height:1;
}
.wordmark em{
  font-style:normal;
  color:var(--accent-text);
}
.nav-links{
  display:flex;align-items:center;gap:var(--space-6);
  margin-left:auto;
}
.nav-links a{
  font-family:var(--font-body);
  font-size:var(--text-sm);
  color:var(--ink-muted);
  text-decoration:none;
  letter-spacing:.01em;
  position:relative;
  padding-bottom:2px;
  transition:color var(--dur-fast) var(--ease-out);
}
.nav-links a::after{
  content:'';
  position:absolute;left:0;bottom:0;
  width:0;height:1px;
  background:var(--accent);
  transition:width var(--dur-base) var(--ease-out);
}
.nav-links a:hover{color:var(--ink)}
.nav-links a:hover::after{width:100%}
.nav-links a[aria-current="page"]{
  color:var(--ink);
}
.nav-links a[aria-current="page"]::after{width:100%}

.topnav-actions{margin-left:var(--space-8)}
.nav-toggle{
  display:none;
  background:none;border:none;cursor:pointer;
  color:var(--ink);padding:var(--space-2);
  border-radius:var(--radius);
  margin-left:auto;
}
.nav-toggle .i-close{display:none}
.nav-toggle[aria-expanded="true"] .i-open{display:none}
.nav-toggle[aria-expanded="true"] .i-close{display:block}
.nav-toggle:focus-visible{
  outline:2px solid var(--accent-text);outline-offset:3px;
}

/* Mobile overlay */
.nav-overlay{
  display:none;
  position:fixed;inset:0;
  background:var(--surface);
  z-index:890;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  padding:var(--space-16) clamp(var(--space-8),6vw,var(--space-16));
}
.nav-overlay[aria-hidden="false"]{display:flex}
.nav-overlay .nav-menu-links{
  display:flex;flex-direction:column;gap:var(--space-6);
}
.nav-overlay .nav-menu-links a{
  font-family:var(--font-display);
  font-size:var(--text-4xl);
  color:var(--ink);
  text-decoration:none;
  letter-spacing:-.02em;
  border-bottom:1px solid var(--hairline);
  padding-bottom:var(--space-4);
  width:100%;
  transition:color var(--dur-fast) var(--ease-out),
             padding-left var(--dur-base) var(--ease-out);
}
.nav-overlay .nav-menu-links a:hover{
  color:var(--accent-text);
  padding-left:var(--space-4);
}
.nav-overlay .menu-cta{
  margin-top:var(--space-10);
}
.menu-close{
  position:absolute;top:var(--space-6);right:clamp(var(--space-4),4vw,var(--space-10));
  background:none;border:none;cursor:pointer;
  color:var(--ink);padding:var(--space-2);
  border-radius:var(--radius);
}
.menu-close:focus-visible{
  outline:2px solid var(--accent-text);outline-offset:3px;
}

/* ── BUTTONS ── */
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  gap:var(--space-2);
  font-family:var(--font-body);
  font-size:var(--text-sm);
  font-weight:600;
  letter-spacing:.03em;
  text-decoration:none;
  border-radius:var(--radius);
  cursor:pointer;
  border:1px solid transparent;
  transition:background var(--dur-fast) var(--ease-out),
             color var(--dur-fast) var(--ease-out),
             border-color var(--dur-fast) var(--ease-out),
             transform var(--dur-fast) var(--ease-out);
  position:relative;overflow:hidden;
  white-space:nowrap;
}
.btn::before{
  content:'';
  position:absolute;inset:0;
  background:linear-gradient(120deg,transparent 40%,rgba(255,255,255,.18) 50%,transparent 60%);
  transform:translateX(-100%);
  transition:transform .5s var(--ease-out);
}
.btn:hover::before{transform:translateX(100%)}
.btn:active{transform:scale(.97)}

.btn-primary{
  background:var(--accent);
  color:var(--ink);
  border-color:var(--accent);
  padding:.625rem 1.5rem;
}
.btn-primary:hover{
  background:#C99D00;
  border-color:#C99D00;
  color:var(--ink);
}
.btn-primary:focus-visible{
  outline:2px solid var(--ink);
  outline-offset:3px;
}

.btn-secondary{
  background:transparent;
  color:var(--ink);
  border-color:var(--hairline);
  padding:.625rem 1.5rem;
}
.btn-secondary:hover{
  background:var(--surface-alt);
  border-color:var(--ink-faint);
  color:var(--ink);
}
.btn-secondary:focus-visible{
  outline:2px solid var(--accent-text);
  outline-offset:3px;
}

.btn-sm{padding:.4rem 1rem;font-size:var(--text-xs)}
.btn-lg{padding:.875rem 2rem;font-size:var(--text-base)}
.btn-full{width:100%;justify-content:center}

/* Click ripple */
.ripple{
  position:absolute;border-radius:50%;
  background:rgba(255,255,255,.25);
  transform:scale(0);
  animation:ripple-anim .5s var(--ease-out);
  pointer-events:none;
}
@keyframes ripple-anim{to{transform:scale(4);opacity:0}}

/* ── FORM CONTROLS ── */
input,textarea,select{
  appearance:none;-webkit-appearance:none;
  display:block;width:100%;
  font-family:var(--font-body);
  font-size:var(--text-base);
  color:var(--ink);
  background:var(--surface);
  border:1px solid var(--hairline);
  border-radius:var(--radius);
  padding:.625rem var(--space-4);
  line-height:1.5;
  transition:border-color var(--dur-fast) var(--ease-out),
             background var(--dur-fast) var(--ease-out);
  caret-color:var(--accent);
}
input:hover,textarea:hover,select:hover{
  border-color:var(--ink-faint);
}
input:focus,textarea:focus,select:focus{
  outline:none;
  border-color:var(--accent-text);
  background:var(--white);
}
input:focus-visible,textarea:focus-visible,select:focus-visible{
  outline:2px solid var(--accent-text);
  outline-offset:2px;
}
input::placeholder,textarea::placeholder{
  color:var(--ink-faint);
}
select{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%2355534E' stroke-width='1.5'%3E%3Cpath d='M4 6l4 4 4-4'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right .75rem center;
  background-size:1rem;
  padding-right:2.5rem;
}
textarea{resize:vertical;min-height:120px}

label{
  display:block;
  font-size:var(--text-sm);
  font-weight:600;
  color:var(--ink);
  margin-bottom:var(--space-2);
  letter-spacing:.01em;
}
.form-group{margin-bottom:var(--space-6)}
.form-error{
  font-size:var(--text-xs);
  color:#C0392B;
  margin-top:var(--space-1);
}
.form-success{display:none}
.form-success.show{display:block}

/* ── CHIP / TAG ── */
.chip{
  display:inline-flex;align-items:center;gap:var(--space-2);
  padding:.25rem .625rem;
  background:var(--accent-dim);
  color:var(--accent-text);
  font-family:var(--font-body);
  font-size:var(--text-xs);
  font-weight:600;
  letter-spacing:.04em;
  border-radius:var(--radius-sm);
  border:1px solid rgba(224,176,0,.35);
  text-transform:uppercase;
}
.chip-lemon{
  background:var(--accent);
  color:var(--ink);
  border-color:var(--accent);
}

/* ── SECTIONS ── */
.section{
  padding-block:var(--section-pad);
}
.section + .section{
  border-top:1px solid var(--hairline);
}
.section-label{
  font-family:var(--font-body);
  font-size:var(--text-xs);
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--accent-text);
  margin-bottom:var(--space-6);
  display:flex;align-items:center;gap:var(--space-3);
}
.section-label::after{
  content:'';flex:1;
  height:1px;background:var(--hairline);
}

/* ── HERO ── */
.hero{
  padding-top:var(--space-16);
  padding-bottom:var(--space-20);
  border-bottom:1px solid var(--hairline);
  position:relative;overflow:hidden;
}
.hero-inner{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:var(--space-12);
  align-items:start;
  max-width:var(--container);
  margin-inline:auto;
  padding-inline:clamp(var(--space-4),4vw,var(--space-10));
}
.hero-copy{
  padding-top:var(--space-6);
}
.hero-eyebrow{
  display:flex;align-items:center;gap:var(--space-3);
  margin-bottom:var(--space-6);
}
.hero-h1{
  font-size:var(--text-hero);
  line-height:1.05;
  letter-spacing:-.03em;
  margin-bottom:var(--space-6);
}
.hero-sub{
  font-size:var(--text-lg);
  line-height:1.6;
  color:var(--ink-muted);
  margin-bottom:var(--space-8);
  max-width:44ch;
}
.hero-actions{
  display:flex;align-items:center;gap:var(--space-4);
  flex-wrap:wrap;
}

/* Tabbed Console mock */
.hero-console{
  position:relative;
  background:var(--surface);
  border:1px solid var(--hairline);
  border-radius:var(--radius);
}
.console-tabs{
  display:flex;
  border-bottom:1px solid var(--hairline);
  background:var(--base);
  border-radius:var(--radius) var(--radius) 0 0;
  padding:0 var(--space-4);
  gap:0;
}
.console-tab{
  font-family:var(--font-body);
  font-size:var(--text-xs);
  font-weight:600;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:var(--ink-faint);
  background:none;border:none;
  padding:var(--space-3) var(--space-4);
  cursor:pointer;
  border-bottom:2px solid transparent;
  margin-bottom:-1px;
  transition:color var(--dur-fast) var(--ease-out),
             border-color var(--dur-fast) var(--ease-out);
  white-space:nowrap;
}
.console-tab[aria-selected="true"]{
  color:var(--ink);
  border-bottom-color:var(--accent);
}
.console-tab:hover:not([aria-selected="true"]){color:var(--ink)}
.console-tab:focus-visible{
  outline:2px solid var(--accent-text);outline-offset:2px;
}

.console-body{
  display:grid;
  grid-template-columns:1fr 1fr;
  min-height:320px;
}
.console-list{
  border-right:1px solid var(--hairline);
  padding:var(--space-4) 0;
  overflow:hidden;
}
.console-list-item{
  display:flex;align-items:flex-start;gap:var(--space-3);
  padding:var(--space-3) var(--space-4);
  cursor:pointer;
  border-left:2px solid transparent;
  transition:background var(--dur-fast) var(--ease-out),
             border-color var(--dur-fast) var(--ease-out);
}
.console-list-item:hover{background:var(--surface-alt)}
.console-list-item.active{
  background:var(--accent-dim);
  border-left-color:var(--accent);
}
.console-list-item:focus-visible{
  outline:2px solid var(--accent-text);outline-offset:-2px;
}
.cli-dot{
  width:8px;height:8px;border-radius:50%;flex-shrink:0;
  margin-top:5px;
}
.cli-dot.green{background:#3BAF6B}
.cli-dot.amber{background:#D4870A}
.cli-dot.blue{background:#4A7FD6}
.cli-dot.grey{background:var(--ink-faint)}
.cli-name{
  font-family:var(--font-body);
  font-size:var(--text-xs);
  font-weight:600;
  color:var(--ink);
  line-height:1.3;
}
.cli-sub{
  font-size:10px;
  color:var(--ink-faint);
  margin-top:1px;
  line-height:1.3;
}

.console-detail{
  padding:var(--space-6);
  min-width:0;
  display:flex;flex-direction:column;gap:var(--space-4);
}
.console-detail[data-panel]{display:none}
.console-detail[data-panel].panel-active{display:flex}

.detail-label{
  font-size:var(--text-xs);
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--ink-faint);
  margin-bottom:var(--space-1);
}
.detail-value{
  font-family:var(--font-display);
  font-size:var(--text-lg);
  color:var(--ink);
  line-height:1.25;
}
.detail-row{
  display:flex;align-items:center;gap:var(--space-3);
  font-size:var(--text-sm);
  color:var(--ink-muted);
  padding:var(--space-2) 0;
  border-bottom:1px solid var(--hairline);
}
.detail-row:last-child{border-bottom:none}
.detail-row strong{color:var(--ink);font-weight:600}
.detail-badge{
  display:inline-flex;align-items:center;
  padding:.15rem .5rem;
  border-radius:var(--radius-sm);
  font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;
}
.badge-green{background:#D4EDDB;color:#1D6B35}
.badge-amber{background:#FDF0D5;color:#7A4A08}
.badge-blue{background:#D8E8FA;color:#1B4F8A}

/* Float chips */
.float-chip{
  position:absolute;
  background:var(--white);
  border:1px solid var(--hairline);
  border-radius:var(--radius);
  padding:var(--space-2) var(--space-3);
  font-size:var(--text-xs);
  color:var(--ink);
  font-family:var(--font-body);
  font-weight:600;
  white-space:nowrap;
  pointer-events:none;
  z-index:10;
}
.float-chip .fc-dot{
  display:inline-block;width:6px;height:6px;
  border-radius:50%;background:var(--accent);
  margin-right:var(--space-2);
  vertical-align:middle;
  animation:chip-pulse 2.5s ease-in-out infinite;
}
.float-chip-1{top:-14px;right:var(--space-6)}
.float-chip-2{bottom:-14px;left:var(--space-6)}

@keyframes chip-pulse{
  0%,100%{opacity:1;transform:scale(1)}
  50%{opacity:.55;transform:scale(.7)}
}

/* ── MANIFESTO ── */
.manifesto{
  padding-block:var(--section-pad);
  border-bottom:1px solid var(--hairline);
}
.manifesto-inner{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:var(--space-16);
  align-items:start;
  max-width:var(--container);
  margin-inline:auto;
  padding-inline:clamp(var(--space-4),4vw,var(--space-10));
}
.manifesto-text{}
.manifesto-text h2{
  margin-bottom:var(--space-6);
  line-height:1.1;
}
.manifesto-text p{
  font-size:var(--text-lg);
  line-height:1.7;
  max-width:52ch;
  margin-bottom:var(--space-4);
}
.manifesto-img{
  position:relative;
}
.manifesto-img img{
  width:100%;height:auto;
  display:block;
  border-radius:var(--radius);
  border:1px solid var(--hairline);
  aspect-ratio:3/2;
  object-fit:cover;
}
/* Pull-quote gesture */
.pull-quote{
  border-left:3px solid var(--accent);
  padding:var(--space-4) var(--space-6);
  margin-block:var(--space-8);
  font-family:var(--font-display);
  font-style:italic;
  font-size:var(--text-xl);
  line-height:1.45;
  color:var(--ink);
  background:var(--surface);
  border-radius:0 var(--radius) var(--radius) 0;
}

/* ── FEATURE ROWS (ZIG-ZAG) ── */
.feature-rows{
  padding-block:var(--section-pad);
  border-bottom:1px solid var(--hairline);
}
.feature-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:var(--space-12);
  align-items:center;
  max-width:var(--container);
  margin-inline:auto;
  padding-inline:clamp(var(--space-4),4vw,var(--space-10));
  padding-block:var(--space-12);
  border-bottom:1px solid var(--hairline);
}
.feature-row:last-child{border-bottom:none}
.feature-row:nth-child(even) .feature-row-visual{order:-1}

.feature-row-copy{}
.feature-row-icon{
  display:inline-flex;
  width:40px;height:40px;
  align-items:center;justify-content:center;
  background:var(--accent-dim);
  border:1px solid rgba(224,176,0,.35);
  border-radius:var(--radius);
  color:var(--accent-text);
  margin-bottom:var(--space-4);
  flex-shrink:0;
}
.feature-row-icon svg{width:20px;height:20px;flex:none}
.feature-row-copy h3{
  font-size:var(--text-4xl);
  margin-bottom:var(--space-4);
}
.feature-row-copy p{
  font-size:var(--text-base);
  margin-bottom:var(--space-6);
}
.feature-row-visual img{
  width:100%;display:block;
  border-radius:var(--radius);
  border:1px solid var(--hairline);
  aspect-ratio:4/3;
  object-fit:cover;
  transition:transform var(--dur-slow) var(--ease-out);
}
.feature-row-visual:hover img{transform:scale(1.025)}

/* ── HOW IT WORKS ── */
.how-it-works{
  padding-block:var(--section-pad);
  border-bottom:1px solid var(--hairline);
  background:var(--surface);
}
.how-inner{
  max-width:var(--container);
  margin-inline:auto;
  padding-inline:clamp(var(--space-4),4vw,var(--space-10));
}
.how-header{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:var(--space-12);
  align-items:end;
  margin-bottom:var(--space-12);
}
.how-header h2{margin-bottom:0}
.how-header p{
  font-size:var(--text-lg);
  margin-bottom:0;
}
.how-steps{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:0;
  position:relative;
}
.how-steps::before{
  content:'';
  position:absolute;
  top:24px;left:0;right:0;
  height:1px;
  background:var(--hairline);
  z-index:0;
}
.how-step{
  position:relative;z-index:1;
  padding:var(--space-6) var(--space-6) var(--space-6) 0;
  padding-right:var(--space-6);
}
.step-num{
  display:flex;align-items:center;justify-content:center;
  width:48px;height:48px;
  background:var(--base);
  border:1px solid var(--hairline);
  border-radius:var(--radius);
  font-family:var(--font-display);
  font-size:var(--text-xl);
  color:var(--accent-text);
  margin-bottom:var(--space-4);
  flex-shrink:0;
}
.how-step h4{
  font-size:var(--text-lg);
  margin-bottom:var(--space-2);
}
.how-step p{
  font-size:var(--text-sm);
  line-height:1.6;
  max-width:22ch;
}

/* ── CTA BAND ── */
.cta-band{
  padding-block:var(--section-pad);
  border-bottom:1px solid var(--hairline);
  background:var(--ink);
  text-align:center;
}
.cta-band-inner{
  max-width:680px;
  margin-inline:auto;
  padding-inline:clamp(var(--space-4),4vw,var(--space-10));
}
.cta-band h2{
  color:var(--white);
  margin-bottom:var(--space-4);
  font-size:var(--text-5xl);
}
.cta-band p{
  color:rgba(251,250,247,.65);
  font-size:var(--text-lg);
  margin-inline:auto;
  margin-bottom:var(--space-8);
}
.cta-band .btn-primary{
  font-size:var(--text-base);
  padding:.875rem 2.5rem;
}
.cta-band .btn-primary:focus-visible{
  outline-color:var(--white);
}

/* ── FOOTER ── */
footer{
  background:var(--ink);
  border-top:1px solid rgba(255,255,255,.08);
  padding-block:var(--space-12);
}
.footer-inner{
  max-width:var(--container);
  margin-inline:auto;
  padding-inline:clamp(var(--space-4),4vw,var(--space-10));
  display:grid;
  grid-template-columns:1fr auto;
  gap:var(--space-8);
  align-items:start;
}
.footer-brand{margin-bottom:var(--space-4)}
.footer-brand .wordmark{color:var(--white)}
.footer-brand .wordmark em{color:var(--accent)}
.footer-tagline{
  font-size:var(--text-sm);
  color:rgba(251,250,247,.45);
  margin-top:var(--space-2);
}
.footer-nav{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:var(--space-3);
}
.footer-nav a{
  font-size:var(--text-sm);
  color:rgba(251,250,247,.55);
  text-decoration:none;
  transition:color var(--dur-fast) var(--ease-out);
}
.footer-nav a:hover{color:var(--white)}
.footer-nav a:focus-visible{
  outline:2px solid var(--accent);outline-offset:3px;
}
.footer-bottom{
  max-width:var(--container);
  margin-inline:auto;
  padding-inline:clamp(var(--space-4),4vw,var(--space-10));
  padding-top:var(--space-6);
  border-top:1px solid rgba(255,255,255,.08);
  margin-top:var(--space-8);
  display:flex;align-items:center;justify-content:space-between;
  gap:var(--space-4);
  flex-wrap:wrap;
}
.footer-copy{
  font-size:var(--text-xs);
  color:rgba(251,250,247,.3);
}

/* ── SLIDER / CAROUSEL ── */
.slider{position:relative}
.slider-header{
  display:flex;align-items:center;justify-content:space-between;
  margin-bottom:var(--space-6);
  gap:var(--space-4);
}
.slider-controls{
  display:flex;gap:var(--space-2);flex-shrink:0;
}
.slider-btn{
  display:flex;align-items:center;justify-content:center;
  width:36px;height:36px;
  background:var(--surface);
  border:1px solid var(--hairline);
  border-radius:var(--radius);
  color:var(--ink-muted);
  cursor:pointer;
  transition:background var(--dur-fast) var(--ease-out),
             color var(--dur-fast) var(--ease-out);
}
.slider-btn:hover:not(:disabled){
  background:var(--accent-dim);
  color:var(--accent-text);
}
.slider-btn:disabled{opacity:.35;cursor:default}
.slider-btn:focus-visible{
  outline:2px solid var(--accent-text);outline-offset:3px;
}
[data-slider-track]{
  display:flex;
  gap:var(--space-6);
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
  -ms-overflow-style:none;
  align-items:stretch;
}
[data-slider-track]::-webkit-scrollbar{display:none}
[data-slider-track]>*{
  scroll-snap-align:start;
  flex:0 0 320px;
  grid-column:auto!important;
  height:100%;
}

/* ── PAGE HERO (inner pages) ── */
.page-hero{
  padding-block:var(--space-16) var(--space-12);
  border-bottom:1px solid var(--hairline);
  background:var(--surface);
}
.page-hero-inner{
  max-width:var(--container);
  margin-inline:auto;
  padding-inline:clamp(var(--space-4),4vw,var(--space-10));
}
.page-hero h1{
  font-size:var(--text-5xl);
  margin-bottom:var(--space-4);
}
.page-hero p{
  font-size:var(--text-lg);
  max-width:58ch;
}

/* ── VALUES GRID ── */
.values-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:var(--space-1);
}
.value-card{
  padding:var(--space-8);
  border:1px solid var(--hairline);
  border-radius:var(--radius);
  background:var(--surface);
  display:flex;flex-direction:column;
  gap:var(--space-4);
  transition:border-color var(--dur-base) var(--ease-out);
}
.value-card:hover{border-color:var(--accent)}
.value-icon{
  display:inline-flex;
  width:44px;height:44px;
  align-items:center;justify-content:center;
  background:var(--accent-dim);
  border:1px solid rgba(224,176,0,.35);
  border-radius:var(--radius);
  color:var(--accent-text);
  flex-shrink:0;
}
.value-icon svg{width:22px;height:22px;flex:none}
.value-card h4{
  font-size:var(--text-xl);
  margin-bottom:0;
}
.value-card p{
  font-size:var(--text-sm);
  margin-bottom:0;
}

/* ── PROJECT CARDS ── */
.project-card{
  border:1px solid var(--hairline);
  border-radius:var(--radius);
  background:var(--surface);
  overflow:hidden;
  display:flex;flex-direction:column;
  height:100%;
  transition:border-color var(--dur-base) var(--ease-out);
}
.project-card:hover{border-color:var(--ink-faint)}
.project-card img{
  width:100%;
  aspect-ratio:16/9;
  object-fit:cover;
  display:block;
  border-bottom:1px solid var(--hairline);
  transition:transform var(--dur-slow) var(--ease-out);
}
.project-card:hover img{transform:scale(1.04)}
.project-card-body{
  padding:var(--space-5) var(--space-5) var(--space-5);
  flex:1;display:flex;flex-direction:column;
  gap:var(--space-2);
}
.project-card h4{
  font-size:var(--text-xl);
  margin-bottom:0;
}
.project-card p{
  font-size:var(--text-sm);
  flex:1;
  margin-bottom:0;
}
.project-card-footer{
  margin-top:auto;
  padding-top:var(--space-3);
  border-top:1px solid var(--hairline);
  display:flex;align-items:center;justify-content:space-between;
}

/* ── WAITLIST / CONTACT FORMS ── */
.waitlist-section,.contact-section{
  padding-block:var(--section-pad);
}
.waitlist-inner,.contact-inner{
  max-width:var(--container-sm);
  margin-inline:auto;
  padding-inline:clamp(var(--space-4),4vw,var(--space-10));
}
.form-panel{
  background:var(--surface);
  border:1px solid var(--hairline);
  border-radius:var(--radius);
  padding:clamp(var(--space-8),5vw,var(--space-16));
}
.form-panel h2{
  font-size:var(--text-4xl);
  margin-bottom:var(--space-2);
}
.form-panel > p{
  margin-bottom:var(--space-8);
}
.success-panel{
  text-align:center;
  padding:var(--space-16) var(--space-8);
}
.success-icon{
  width:52px;height:52px;
  margin-inline:auto;margin-bottom:var(--space-6);
  background:var(--accent-dim);
  border-radius:var(--radius);
  display:flex;align-items:center;justify-content:center;
  color:var(--accent-text);
}
.success-icon svg{width:24px;height:24px;flex:none}
.success-panel h3{
  font-size:var(--text-3xl);
  margin-bottom:var(--space-4);
}
.success-panel p{margin-inline:auto}

/* ── SCROLL REVEAL ── */
.reveal{
  opacity:0;
  transform:translateY(20px);
  transition:opacity var(--dur-slow) var(--ease-out),
             transform var(--dur-slow) var(--ease-out);
}
.reveal.in-view{
  opacity:1;
  transform:translateY(0);
}
.reveal-delay-1{transition-delay:.1s}
.reveal-delay-2{transition-delay:.2s}
.reveal-delay-3{transition-delay:.3s}

/* ── RESPONSIVE ── */
@media(max-width:1000px){
  .hero-inner{
    grid-template-columns:1fr;
    gap:var(--space-10);
  }
  .hero-h1{font-size:clamp(2.5rem,7vw,4rem)}
  .manifesto-inner{grid-template-columns:1fr;gap:var(--space-8)}
  .feature-row{
    grid-template-columns:1fr;
    gap:var(--space-8);
  }
  .feature-row:nth-child(even) .feature-row-visual{order:0}
  .how-steps{
    grid-template-columns:repeat(2,1fr);
    gap:var(--space-1);
  }
  .how-steps::before{display:none}
  .how-header{grid-template-columns:1fr;gap:var(--space-4)}
  .footer-inner{grid-template-columns:1fr}
  .footer-nav{align-items:flex-start}
  .console-body{grid-template-columns:1fr}
  .console-list{border-right:none;border-bottom:1px solid var(--hairline)}
  [data-slider-track]>*{flex-basis:280px}
}

@media(max-width:720px){
  .nav-links,.topnav-actions{display:none}
  .nav-toggle{display:flex}
  .how-steps{grid-template-columns:1fr}
  .hero-console .float-chip-1,.hero-console .float-chip-2{display:none}
}

/* ── REDUCED MOTION ── */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
  }
  .reveal{opacity:1;transform:none}
  .float-chip .fc-dot{animation:none}
  #scroll-bar{transition:none}
}
