/* =====================================================================
   EverStore — Website Design System
   Markenpalette: Coral #E8674E (EVER) · Slate #3A4750 (STORE) · Blaugrau-Neutrals
   Akzent: Coral · warmer Sekundärton Apricot #FFC096
   Type: Newsreader (Display) · Hanken Grotesk (Text) · IBM Plex Mono (Labels)
   ===================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Newsreader:ital,opsz,wght@0,6..72,400;0,6..72,500;1,6..72,400&family=Hanken+Grotesk:wght@400;500;600;700;800&family=IBM+Plex+Mono:wght@400;500&display=swap');

:root{
  /* neutrals — brand blue-grays (Slate family) */
  --black:#1d262c;
  --ink:#28323a;
  --g-800:#3A4750;   /* STORE slate */
  --g-700:#475561;
  --g-600:#5d6b76;
  --g-500:#7e8b95;
  --g-400:#9BA5B0;   /* script gray */
  --g-300:#c2cad1;
  --g-200:#D6DBE0;   /* main bg tone */
  --g-150:#e2e6ea;
  --g-100:#E8EDF1;   /* cloud light */
  --g-50:#f2f5f7;
  --white:#ffffff;

  /* primary accent — Coral (EVER) */
  --apricot:#E8674E;
  --apricot-bright:#F0795F;
  --apricot-soft:#F7C5BA;
  --apricot-tint:#FCEAE5;
  --apricot-deep:#B43F29;     /* readable accent text on light */

  /* brand extras */
  --coral:#E8674E;
  --slate:#3A4750;
  --petrol:#5B7A8C;
  --cloud:#A8BCC8;
  --apricot-warm:#FFC096;     /* warm secondary tone */

  --serif:'Newsreader', Georgia, 'Times New Roman', serif; /* @kind font */
  --sans:'Hanken Grotesk', system-ui, -apple-system, sans-serif; /* @kind font */
  --mono:'IBM Plex Mono', ui-monospace, monospace; /* @kind font */

  --maxw:1220px;
  --pad:40px;
  --ease:cubic-bezier(.22,.61,.36,1); /* @kind other */
  --radius:14px;
}

*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
html{scroll-behavior:smooth;background:#fafbfc;}
body{
  font-family:var(--sans);
  color:var(--ink);
  background:transparent;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  line-height:1.6;
  font-size:17px;
}
/* ---- brand ambient canvas (auflockernder Hintergrund, alle Seiten) ---- */
body::before{content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;
  background:
    radial-gradient(42% 46% at 90% 4%,  rgba(232,103,78,.12), transparent 60%),
    radial-gradient(38% 44% at 3% 30%,  rgba(91,122,140,.11), transparent 60%),
    radial-gradient(44% 48% at 98% 82%, rgba(255,192,150,.13), transparent 60%),
    radial-gradient(40% 42% at 12% 96%, rgba(232,103,78,.08), transparent 60%);}
body::after{content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;opacity:.7;
  background-image:radial-gradient(rgba(58,71,80,.06) 1px, transparent 1.4px);
  background-size:30px 30px;
  -webkit-mask-image:radial-gradient(135% 120% at 50% 24%, #000 42%, transparent 100%);
  mask-image:radial-gradient(135% 120% at 50% 24%, #000 42%, transparent 100%);}

/* ---- markante Marken-Deko (per JS in Sektionen eingestreut) ---- */
section{position:relative;}
.wrap{position:relative;z-index:2;}
.bdeco{position:absolute;z-index:-1;pointer-events:none;will-change:transform;}
.bdeco.d-diamond{width:var(--s,88px);height:var(--s,88px);border-radius:22%;
  transform:rotate(45deg);background:var(--apricot);opacity:.16;}
.bdeco.d-diamond.outline{background:transparent;border:2.5px solid var(--apricot);opacity:.3;}
.bdeco.d-ring{width:var(--s,190px);height:var(--s,190px);border-radius:50%;
  border:2.5px solid var(--petrol);opacity:.28;}
.bdeco.d-ring.coral{border-color:var(--apricot);}
.bdeco.d-disc{width:var(--s,240px);height:var(--s,240px);border-radius:50%;
  background:radial-gradient(circle at 34% 30%, rgba(232,103,78,.30), rgba(232,103,78,0) 70%);}
.bdeco.d-disc.petrol{background:radial-gradient(circle at 34% 30%, rgba(91,122,140,.32), rgba(91,122,140,0) 70%);}
.bdeco.d-disc.apricot{background:radial-gradient(circle at 34% 30%, rgba(255,192,150,.42), rgba(255,192,150,0) 70%);}
.bdeco.d-dots{width:var(--s,150px);height:var(--s,150px);opacity:.5;
  background-image:radial-gradient(var(--apricot) 2.2px, transparent 2.4px);background-size:22px 22px;
  -webkit-mask-image:linear-gradient(135deg,#000,transparent);mask-image:linear-gradient(135deg,#000,transparent);}
.bdeco.d-dots.slate{background-image:radial-gradient(var(--g-500) 2.2px, transparent 2.4px);}
.bdeco.d-bar{width:var(--s,68px);height:5px;border-radius:4px;background:var(--apricot);opacity:.9;}
.bdeco.d-cross{width:var(--s,50px);height:var(--s,50px);opacity:.4;
  background:
    linear-gradient(var(--petrol),var(--petrol)) center/100% 2.5px no-repeat,
    linear-gradient(var(--petrol),var(--petrol)) center/2.5px 100% no-repeat;}
.bdeco.d-sym{width:var(--s,300px);height:auto;opacity:.07;}
@media (prefers-reduced-motion:reduce){.bdeco{display:none;}}
@media (max-width:760px){.bdeco.hide-sm{display:none;}}
img{display:block;max-width:100%;}
a{color:inherit;text-decoration:none;}
/* accessible focus ring — CI: 2px Coral, 2px offset */
:focus-visible{outline:2px solid var(--apricot);outline-offset:2px;border-radius:2px;}
::selection{background:var(--apricot);color:var(--white);}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad);}
.wrap-narrow{max-width:860px;margin:0 auto;padding:0 var(--pad);}

/* ---------------- TYPE ---------------- */
.display{font-family:var(--serif);font-weight:400;line-height:.99;letter-spacing:-.015em;}
.display em{font-style:italic;}
.rotword{display:inline-block;color:var(--apricot);font-style:italic;
  transition:opacity .5s var(--ease),transform .5s var(--ease),filter .5s var(--ease);
  will-change:opacity,transform,filter;}
.rotword.alt{color:inherit;}
.display .dash{color:var(--apricot);font-style:italic;}
h1,h2,h3,h4{font-family:var(--serif);font-weight:430;letter-spacing:-.012em;line-height:1.05;color:var(--ink);}
.h-xl{font-size:clamp(44px,6.4vw,84px);}
.h-lg{font-size:clamp(34px,4.6vw,56px);}
.h-md{font-size:clamp(26px,3vw,36px);}
.h-sm{font-size:clamp(20px,2vw,24px);}
.serif-em{font-family:var(--serif);font-style:italic;}
.eyebrow{font-family:var(--mono);font-size:12px;font-weight:500;letter-spacing:.22em;
  text-transform:uppercase;color:var(--g-500);display:inline-flex;align-items:center;gap:10px;}
.eyebrow::before{content:"";width:22px;height:1.5px;background:var(--apricot-deep);display:inline-block;}
.eyebrow.on-dark{color:var(--g-300);}
.eyebrow.on-dark::before{background:var(--apricot);}
.eyebrow.plain::before{display:none;}
.lead{font-size:clamp(18px,1.5vw,21px);line-height:1.55;color:var(--g-600);}
.lead.on-dark{color:var(--g-300);}
.muted{color:var(--g-500);}
p{text-wrap:pretty;}

/* ---------------- HEADER ---------------- */
header.site{position:fixed;top:0;left:0;right:0;z-index:200;
  transition:background .4s var(--ease),border-color .4s var(--ease),box-shadow .4s var(--ease);
  border-bottom:1px solid transparent;}
header.site.scrolled{background:rgba(255,255,255,.86);backdrop-filter:saturate(180%) blur(16px);
  border-bottom:1px solid var(--g-200);}
.nav{display:flex;align-items:center;gap:38px;height:76px;max-width:var(--maxw);margin:0 auto;padding:0 var(--pad);}
.brand{font-family:var(--sans);font-weight:800;font-size:21px;letter-spacing:-.03em;
  color:var(--white);transition:color .4s var(--ease);display:flex;align-items:center;gap:10px;}
header.site.scrolled .brand{color:var(--ink);}
.brand .mark{width:13px;height:13px;border-radius:3px;background:var(--apricot);
  display:inline-block;transform:rotate(45deg);}

/* logo image (replaces wordmark) */
.brand{gap:0;}
.brand .logo{height:30px;width:auto;display:block;}
header.site .logo-dark{display:none;}
header.site.scrolled .logo-light,
header.site.light-page .logo-light{display:none;}
header.site.scrolled .logo-dark,
header.site.light-page .logo-dark{display:block;}
footer.site-foot .brand .logo{height:34px;}
footer.site-foot .logo-dark{display:none;}
.nav .links{display:flex;gap:28px;margin-left:6px;}
.nav .links a{font-size:14.5px;font-weight:500;color:rgba(255,255,255,.78);
  transition:color .35s var(--ease),opacity .2s;position:relative;}
header.site.scrolled .nav .links a{color:var(--g-600);}
.nav .links a:hover{color:var(--white);}
header.site.scrolled .nav .links a:hover{color:var(--black);}
.nav .links a.active{color:var(--white);}
header.site.scrolled .nav .links a.active{color:var(--black);}
.nav .links a.active::after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:2px;
  background:var(--apricot);border-radius:2px;}
.nav .spacer{flex:1;}
.nav .lang{font-family:var(--mono);font-size:12px;color:rgba(255,255,255,.7);
  border:1px solid rgba(255,255,255,.25);border-radius:100px;padding:5px 12px;transition:.35s var(--ease);}
header.site.scrolled .nav .lang{color:var(--g-500);border-color:var(--g-300);}

/* persistent light header for inner (light-background) pages */
header.site.light-page{background:rgba(255,255,255,.88);backdrop-filter:saturate(180%) blur(16px);border-bottom:1px solid var(--g-200);}
header.site.light-page .brand{color:var(--ink);}
header.site.light-page .nav .links a{color:var(--g-600);}
header.site.light-page .nav .links a:hover{color:var(--black);}
header.site.light-page .nav .links a.active{color:var(--black);}
header.site.light-page .nav .lang{color:var(--g-500);border-color:var(--g-300);}
header.site.light-page .nav-toggle span{background:var(--ink);}

/* mobile nav toggle */
.nav-toggle{display:none;background:none;border:none;cursor:pointer;flex-direction:column;gap:5px;padding:6px;}
.nav-toggle span{width:24px;height:2px;background:var(--white);border-radius:2px;transition:.3s;}
header.site.scrolled .nav-toggle span{background:var(--ink);}

/* ---------------- BUTTONS ---------------- */
.btn{display:inline-flex;align-items:center;gap:9px;font-family:var(--sans);font-weight:600;font-size:15px;
  padding:13px 24px;border-radius:100px;cursor:pointer;border:1px solid transparent;white-space:nowrap;
  transition:transform .25s var(--ease),background .25s,color .25s,box-shadow .25s,border-color .25s;}
.btn .arrow{transition:transform .3s var(--ease);}
.btn:hover .arrow{transform:translateX(4px);}
.btn-accent{background:var(--apricot);color:var(--white);}
.btn-accent:hover{background:var(--apricot-bright);transform:translateY(-2px);box-shadow:0 14px 30px -12px rgba(232,103,78,.6);}
.btn-dark{background:var(--ink);color:var(--white);}
.btn-dark:hover{background:var(--black);transform:translateY(-2px);box-shadow:0 14px 32px -14px rgba(0,0,0,.6);}
.btn-light{background:var(--white);color:var(--black);}
.btn-light:hover{transform:translateY(-2px);box-shadow:0 14px 32px -14px rgba(0,0,0,.45);}
.btn-ghost{background:transparent;color:var(--ink);border-color:var(--g-300);}
.btn-ghost:hover{border-color:var(--ink);background:var(--ink);color:var(--white);}
.btn-ghost.on-dark{color:var(--white);border-color:rgba(255,255,255,.3);}
.btn-ghost.on-dark:hover{background:var(--white);color:var(--black);border-color:var(--white);}
.btn-lg{padding:16px 30px;font-size:16px;}
.btn-sm{padding:9px 16px;font-size:14px;}
.link-arrow{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:15px;color:var(--ink);
  border-bottom:1.5px solid var(--apricot);padding-bottom:2px;transition:gap .25s var(--ease),color .2s;}
.link-arrow:hover{gap:13px;color:var(--apricot-deep);}

/* ---------------- SECTION ---------------- */
section{padding:clamp(64px,9vw,118px) 0;}
.sec-tint{background:var(--apricot-tint);}
.sec-grey{background:var(--g-50);}
.sec-dark{background:var(--black);color:var(--g-200);}
.sec-dark h1,.sec-dark h2,.sec-dark h3{color:var(--white);}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:54px;flex-wrap:wrap;}
.sec-head .eyebrow{margin-bottom:18px;}
.divider{height:1px;background:var(--g-200);border:none;}

/* ---------------- HERO ---------------- */
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden;background:var(--black);}
.hero-media{position:absolute;inset:0;z-index:0;}
.hero-media img{width:100%;height:100%;object-fit:cover;filter:contrast(1.04) brightness(.62);}
.hero-media::after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(18,19,22,.55) 0%,rgba(18,19,22,.2) 38%,rgba(18,19,22,.86) 100%);}
.hero-media::before{content:"";position:absolute;inset:0;z-index:1;mix-blend-mode:overlay;opacity:.34;
  background:radial-gradient(120% 90% at 82% 12%, rgba(232,103,78,.5), transparent 55%);}
.hero-inner{position:relative;z-index:2;width:100%;padding-bottom:clamp(56px,8vh,104px);padding-top:140px;}
.hero h1{color:var(--white);}
.hero .lead{color:rgba(255,255,255,.82);max-width:54ch;margin-top:26px;}
.hero .eyebrow{color:rgba(255,255,255,.7);margin-bottom:30px;}
.hero .eyebrow::before{background:var(--apricot);}
.cta-row{display:flex;gap:16px;align-items:center;margin-top:38px;flex-wrap:wrap;}
.play{display:inline-flex;align-items:center;gap:13px;cursor:pointer;color:rgba(255,255,255,.92);font-weight:500;font-size:15px;}
.play .circle{width:48px;height:48px;border-radius:50%;border:1.5px solid rgba(255,255,255,.5);
  display:grid;place-items:center;transition:.25s var(--ease);}
.play:hover .circle{background:var(--apricot);border-color:var(--apricot);transform:scale(1.06);}
.play:hover .circle svg{fill:var(--white);stroke:var(--white);}
.hero-stats{display:flex;gap:40px;margin-top:56px;flex-wrap:wrap;}
.hero-stats .hs{display:flex;flex-direction:column;gap:3px;}
.hero-stats .hs b{font-family:var(--serif);font-size:34px;font-weight:430;color:var(--white);line-height:1;white-space:nowrap;}
.hero-stats .hs span{font-family:var(--mono);font-size:12px;letter-spacing:.04em;color:rgba(255,255,255,.6);}

/* page hero (inner pages) */
.page-hero{padding-top:160px;padding-bottom:clamp(48px,6vw,80px);}
.page-hero .display{max-width:16ch;margin-top:22px;}
.page-hero .lead{margin-top:26px;max-width:60ch;}

/* ---------------- REFERENCE MARQUEE ---------------- */
.refs{padding:40px 0;border-top:1px solid var(--g-200);border-bottom:1px solid var(--g-200);background:var(--white);}
.refs .label{font-family:var(--mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--g-500);text-align:center;margin-bottom:30px;}
.marquee{position:relative;width:100%;overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);}
.marquee-track{display:flex;width:max-content;animation:marquee 34s linear infinite;}
.marquee:hover .marquee-track{animation-play-state:paused;}
.marquee-group{display:flex;align-items:center;gap:72px;padding-right:72px;flex:none;}
.marquee-group img{height:34px;width:auto;object-fit:contain;
  transition:transform .35s var(--ease);}
.marquee-group img:hover{transform:scale(1.04);}
@keyframes marquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}
@media (prefers-reduced-motion:reduce){.marquee-track{animation:none;}}

/* ---------------- CARDS ---------------- */
.grid{display:grid;gap:24px;}
.g2{grid-template-columns:repeat(2,1fr);}
.g3{grid-template-columns:repeat(3,1fr);}
.g4{grid-template-columns:repeat(4,1fr);}
/* ---- cards (unified across all pages) ---- */
.card{position:relative;overflow:hidden;background:linear-gradient(180deg,#ffffff,#fbfcfd);
  border:1px solid var(--g-200);border-radius:18px;padding:32px 30px 30px;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s var(--ease);}
.card::before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;
  background:linear-gradient(90deg,var(--apricot),transparent 70%);
  transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease);}
.card.hoverable:hover::before{transform:scaleX(1);}
.card.hoverable:hover{transform:translateY(-6px);
  box-shadow:0 28px 54px -30px rgba(232,103,78,.42);border-color:var(--apricot-soft);}
.card .num{font-family:var(--serif);font-size:15px;color:var(--apricot-deep);font-weight:500;}
.card h3{margin:6px 0 0;}
.card .muted{line-height:1.55;}
.icon-tile{width:56px;height:56px;border-radius:16px;
  background:linear-gradient(150deg,var(--apricot-tint),#ffffff);border:1px solid var(--apricot-soft);
  box-shadow:inset 0 1px 0 #fff,0 8px 18px -12px rgba(232,103,78,.55);
  display:grid;place-items:center;color:var(--apricot-deep);margin-bottom:22px;
  transition:transform .35s var(--ease),background .35s var(--ease),color .35s var(--ease),border-color .35s var(--ease);}
.icon-tile svg{width:25px;height:25px;}
.card.hoverable:hover .icon-tile{background:var(--apricot);border-color:var(--apricot);
  color:#fff;transform:scale(1.06) rotate(-4deg);box-shadow:0 14px 26px -12px rgba(232,103,78,.7);}
.benefits{gap:22px;}
.stack{display:flex;flex-direction:column;}
.g8{gap:8px;}.g12{gap:12px;}.g16{gap:16px;}.g20{gap:20px;}.g28{gap:28px;}
.feature-row{display:flex;gap:13px;align-items:flex-start;}
.feature-row .tick{width:24px;height:24px;border-radius:50%;background:var(--apricot);color:var(--white);
  display:grid;place-items:center;flex:none;margin-top:1px;}
.feature-row .tick svg{width:13px;height:13px;}
.feature-row span{color:var(--g-600);font-size:16px;}

/* media frames */
.media-frame{position:relative;border-radius:var(--radius);overflow:hidden;background:var(--g-100);
  border:1px solid var(--g-200);}
.media-frame img{width:100%;height:100%;object-fit:cover;display:block;filter:contrast(1.03);
  transition:transform .5s var(--ease);}
.media-frame:hover img{transform:scale(1.03);}
.media-frame .cap{position:absolute;left:16px;bottom:16px;font-family:var(--mono);font-size:11px;
  letter-spacing:.04em;color:var(--white);background:rgba(18,19,22,.62);backdrop-filter:blur(6px);
  padding:6px 12px;border-radius:100px;}

/* placeholder (diagram) */
.placeholder{position:relative;border-radius:var(--radius);border:1px dashed var(--g-300);
  background:
    repeating-linear-gradient(135deg,var(--g-100) 0 11px,var(--g-50) 11px 22px);
  display:grid;place-items:center;color:var(--g-500);}
.placeholder .ptag{font-family:var(--mono);font-size:12px;letter-spacing:.04em;color:var(--g-600);
  background:var(--white);border:1px solid var(--g-200);padding:7px 14px;border-radius:100px;}

/* browser chrome for product screenshots */
.browser{border:1px solid var(--g-200);border-radius:var(--radius);overflow:hidden;background:var(--white);
  box-shadow:0 30px 60px -34px rgba(0,0,0,.4);}
.browser .bar{display:flex;align-items:center;gap:9px;padding:11px 16px;background:var(--g-50);border-bottom:1px solid var(--g-200);}
.browser .bar i{width:11px;height:11px;border-radius:50%;background:var(--g-300);}
.browser .bar .addr{margin-left:8px;font-family:var(--mono);font-size:12px;color:var(--g-500);}
.browser img{width:100%;height:auto;display:block;}

/* chips */
.chips{display:flex;gap:9px;flex-wrap:wrap;}
.chip{display:inline-flex;align-items:center;font-family:var(--mono);font-size:12.5px;
  padding:7px 14px;border:1px solid var(--g-300);border-radius:100px;color:var(--g-600);background:var(--white);
  cursor:default;transition:.2s var(--ease);}
.chip.filter{cursor:pointer;}
.chip.filter:hover{border-color:var(--ink);color:var(--ink);}
.chip.on{background:var(--ink);color:var(--white);border-color:var(--ink);}

/* tag */
.tag{display:inline-flex;align-items:center;font-family:var(--mono);font-size:11.5px;letter-spacing:.02em;
  padding:5px 11px;border-radius:6px;background:var(--apricot-tint);color:var(--apricot-deep);
  border:1px solid var(--apricot-soft);align-self:flex-start;}

/* case / blog cards */
.entry{background:var(--white);border:1px solid var(--g-200);border-radius:var(--radius);overflow:hidden;
  display:flex;flex-direction:column;transition:transform .25s var(--ease),box-shadow .25s var(--ease),border-color .25s;}
.entry:hover{transform:translateY(-4px);box-shadow:0 24px 50px -30px rgba(0,0,0,.32);border-color:var(--g-300);}
.entry .thumb{aspect-ratio:16/10;overflow:hidden;background:var(--g-100);}
.entry .thumb img{width:100%;height:100%;object-fit:cover;filter:contrast(1.03);transition:.5s var(--ease);}
.entry:hover .thumb img{transform:scale(1.04);}
.entry .body{padding:26px 26px 28px;display:flex;flex-direction:column;gap:13px;flex:1;}
.entry .meta{display:flex;justify-content:space-between;align-items:center;}
.entry .meta .min{font-family:var(--mono);font-size:11.5px;color:var(--g-500);}
.entry h3{font-size:21px;line-height:1.18;}
.entry p{font-size:15px;color:var(--g-600);}

/* KPI */
.kpi{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;}
.kpi .k{display:flex;flex-direction:column;gap:10px;padding-top:26px;border-top:1px solid rgba(255,255,255,.16);}
.kpi .k b{font-family:var(--serif);font-size:clamp(40px,5vw,60px);font-weight:430;color:var(--white);line-height:.95;white-space:nowrap;}
.kpi .k b .u{color:var(--apricot);}
.kpi .k span{font-size:14px;color:var(--g-400);max-width:20ch;}

/* timeline */
.timeline{display:flex;flex-direction:column;}
.phase{display:grid;grid-template-columns:120px 1fr;gap:40px;padding:40px 0;border-top:1px solid var(--g-200);align-items:start;}
.phase:last-child{border-bottom:1px solid var(--g-200);}
.phase .pn{font-family:var(--serif);font-size:54px;color:var(--g-200);font-weight:430;line-height:1;transition:color .3s;}
.phase:hover .pn{color:var(--apricot);}
.phase .pbody h3{margin-bottom:10px;}
.phase .pbody .outcome{display:inline-flex;align-items:center;gap:9px;margin-top:16px;
  font-family:var(--mono);font-size:13px;color:var(--apricot-deep);background:var(--apricot-tint);
  border:1px solid var(--apricot-soft);padding:7px 14px;border-radius:100px;}

/* quote */
.quote{font-family:var(--serif);font-weight:430;font-size:clamp(26px,3.2vw,40px);line-height:1.22;
  letter-spacing:-.01em;color:var(--ink);}
.quote .hl{background:linear-gradient(transparent 62%, var(--apricot) 62%);}

/* form fields */
.field{display:flex;flex-direction:column;gap:8px;}
.field label{font-family:var(--mono);font-size:12px;letter-spacing:.04em;color:var(--g-600);text-transform:uppercase;}
.field input,.field textarea{font-family:var(--sans);font-size:16px;color:var(--ink);background:var(--white);
  border:1px solid var(--g-300);border-radius:10px;padding:13px 15px;transition:border-color .2s,box-shadow .2s;}
.field textarea{min-height:130px;resize:vertical;}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--apricot-deep);
  box-shadow:0 0 0 3px var(--apricot-tint);}
.field input::placeholder,.field textarea::placeholder{color:var(--g-400);}
.checkbox{display:flex;gap:11px;align-items:flex-start;font-size:14px;color:var(--g-600);}
.checkbox input{margin-top:3px;accent-color:var(--apricot-deep);width:17px;height:17px;}
.okbox{display:flex;gap:16px;align-items:flex-start;background:var(--apricot-tint);
  border:1px solid var(--apricot-soft);border-radius:var(--radius);padding:24px;}
.okbox .ok-ic{width:38px;height:38px;flex:none;border-radius:50%;background:var(--apricot);color:var(--white);
  display:grid;place-items:center;}

/* contact info card */
.info-card{border:1px solid var(--g-200);border-radius:var(--radius);padding:26px;background:var(--g-50);}
.info-card .ico{width:40px;height:40px;border-radius:10px;background:var(--white);border:1px solid var(--g-200);
  display:grid;place-items:center;color:var(--apricot-deep);margin-bottom:14px;}
.map{height:240px;border-radius:var(--radius);overflow:hidden;border:1px solid var(--g-200);}
.map iframe{width:100%;height:100%;border:0;display:block;}

/* ---------------- CTA BAND ---------------- */
.cta-band{background:var(--black);color:var(--white);border-radius:24px;padding:clamp(48px,6vw,84px);
  position:relative;overflow:hidden;text-align:center;}
.cta-band::after{content:"";position:absolute;inset:0;z-index:0;opacity:.5;
  background:radial-gradient(80% 120% at 50% -10%, rgba(232,103,78,.34), transparent 60%);}
.cta-band > *{position:relative;z-index:1;}
.cta-band h2{color:var(--white);}
.cta-band .lead{color:rgba(255,255,255,.78);max-width:54ch;margin:18px auto 32px;}

/* ---------------- FOOTER ---------------- */
footer.site-foot{background:var(--black);color:var(--g-400);padding:80px 0 36px;}
footer.site-foot .cols{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px;}
footer.site-foot .brand{color:var(--white);margin-bottom:16px;}
footer.site-foot p{font-size:14.5px;color:var(--g-400);max-width:26ch;}
footer.site-foot .ft-h{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--g-500);margin-bottom:18px;}
footer.site-foot .fl{display:flex;flex-direction:column;gap:11px;}
footer.site-foot .fl a{font-size:15px;color:var(--g-300);transition:color .2s;width:fit-content;}
footer.site-foot .fl a:hover{color:var(--apricot);}
footer.site-foot .socials{display:flex;gap:10px;margin-top:20px;}
footer.site-foot .socials a{width:38px;height:38px;border:1px solid var(--g-700);border-radius:10px;
  display:grid;place-items:center;color:var(--g-300);transition:.25s var(--ease);}
footer.site-foot .socials a:hover{background:var(--apricot);border-color:var(--apricot);color:var(--white);}
footer.site-foot .ft-bottom{border-top:1px solid var(--g-800);margin-top:54px;padding-top:24px;
  display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;
  font-size:13px;color:var(--g-500);}
footer.site-foot .ft-bottom .lk{display:flex;gap:22px;}
footer.site-foot .ft-bottom a:hover{color:var(--g-200);}

/* ---------------- SCROLL REVEAL (dynamic) ---------------- */
:root{--rv-ease:cubic-bezier(.16,.86,.34,1.08); /* @kind other */}
body.js .reveal{opacity:0;transform:translateY(52px) scale(.955);filter:blur(7px);
  transition:opacity .8s var(--rv-ease),transform .95s var(--rv-ease),filter .8s var(--rv-ease);
  transition-delay:calc(var(--i,0)*85ms);will-change:opacity,transform,filter;}
body.js .reveal.in{opacity:1;transform:none;filter:blur(0);}

/* directional / flavour variants */
body.js .reveal.from-left{transform:translateX(-72px) translateY(14px) scale(.965);}
body.js .reveal.from-right{transform:translateX(72px) translateY(14px) scale(.965);}
body.js .reveal.zoom{transform:scale(.82);filter:blur(9px);}
body.js .reveal.rise{transform:translateY(90px) scale(.93);}
body.js .reveal.tilt{transform:translateY(58px) rotate(-2.2deg) scale(.95);transform-origin:left bottom;}
body.js .reveal.in.from-left,
body.js .reveal.in.from-right,
body.js .reveal.in.zoom,
body.js .reveal.in.rise,
body.js .reveal.in.tilt{transform:none;}

/* legacy delay classes fold into the computed stagger */
body.js .reveal.d1,
body.js .reveal.d2,
body.js .reveal.d3{transition-delay:calc(var(--i,0)*85ms);}

/* scroll progress bar */
.scroll-prog{position:fixed;top:0;left:0;height:3px;width:100%;transform-origin:0 50%;transform:scaleX(0);
  background:linear-gradient(90deg,var(--apricot),var(--apricot-deep));z-index:200;pointer-events:none;
  box-shadow:0 0 12px -2px var(--apricot);}

@media (prefers-reduced-motion:reduce){
  body.js .reveal{opacity:1!important;transform:none!important;filter:none!important;}
  .scroll-prog{display:none;}
}

/* ---------------- TWEAKS PANEL ---------------- */
#tweaks-fab{position:fixed;right:22px;bottom:22px;z-index:400;width:52px;height:52px;border-radius:50%;
  background:var(--ink);color:var(--white);border:none;cursor:pointer;display:grid;place-items:center;
  box-shadow:0 14px 34px -12px rgba(0,0,0,.5);transition:transform .25s var(--ease);}
#tweaks-fab:hover{transform:scale(1.08) rotate(20deg);}
#tweaks-panel{position:fixed;right:22px;bottom:86px;z-index:400;width:288px;background:var(--white);
  border:1px solid var(--g-200);border-radius:18px;box-shadow:0 30px 70px -28px rgba(0,0,0,.45);
  padding:20px;display:none;font-family:var(--sans);}
#tweaks-panel.open{display:block;}
#tweaks-panel h4{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--g-500);margin-bottom:16px;font-weight:500;}
#tweaks-panel .tw{margin-bottom:18px;}
#tweaks-panel .tw .tl{font-size:13px;color:var(--g-600);margin-bottom:9px;display:block;}
#tweaks-panel .seg{display:flex;gap:6px;background:var(--g-100);padding:4px;border-radius:10px;}
#tweaks-panel .seg button{flex:1;border:none;background:transparent;font-family:var(--sans);font-size:13px;
  font-weight:600;color:var(--g-600);padding:7px 6px;border-radius:7px;cursor:pointer;transition:.2s;}
#tweaks-panel .seg button.on{background:var(--white);color:var(--ink);box-shadow:0 2px 6px -2px rgba(0,0,0,.2);}
#tweaks-panel .swatches{display:flex;gap:8px;}
#tweaks-panel .swatches button{width:34px;height:34px;border-radius:9px;border:2px solid transparent;cursor:pointer;}
#tweaks-panel .swatches button.on{border-color:var(--ink);}

/* ---------------- RESPONSIVE ---------------- */
@media (max-width:980px){
  :root{--pad:28px;}
  .g4{grid-template-columns:repeat(2,1fr);}
  .kpi{grid-template-columns:repeat(2,1fr);}
  footer.site-foot .cols{grid-template-columns:1fr 1fr;gap:34px;}
}
@media (max-width:760px){
  body{font-size:16px;}
  .nav .links,.nav .lang{display:none;}
  .nav-toggle{display:flex;}
  .nav.mobile-open{height:auto;flex-wrap:wrap;padding-bottom:18px;}
  .nav.mobile-open .links{display:flex;flex-direction:column;width:100%;gap:4px;margin:10px 0 0;}
  .nav.mobile-open .links a{padding:9px 0;color:var(--ink);}
  .g2,.g3{grid-template-columns:1fr;}
  .sec-head{flex-direction:column;align-items:flex-start;}
  .phase{grid-template-columns:1fr;gap:14px;}
  .phase .pn{font-size:42px;}
  .hero-stats{gap:30px;}
}
