/* ============================================================================
   CEOx1DIA 2026 — Odgers Brasil
   Identidade oficial: cores amostradas do logotipo real, tipografia do site
   oficial (Nunito Sans) + Montserrat no lugar da Gotham institucional.
   Direção: fotografia real em primeiro plano, tipografia contida e elegante.
   ========================================================================== */

/* ---------- 1. TOKENS ---------------------------------------------------- */
:root{
  --ink:      #10192A;
  --ink-2:    #1B2331;   /* "BY ODGERS" do logo */
  --navy:     #173D6E;   /* "CEO" do logo */
  --navy-d:   #0E2748;
  --navy-l:   #24558F;
  --blue:     #7F9CD1;   /* "x1" do logo */
  --orange:   #ED8C21;   /* "DIA" do logo */
  --orange-d: #A85E08;   /* variante acessível p/ texto pequeno em fundo claro */
  --orange-l: #F7A648;
  --paper:    #FFFFFF;
  --bone:     #F4F6F9;
  --bone-2:   #E7ECF2;

  --line:     rgba(255,255,255,.14);
  --line-d:   rgba(16,25,42,.12);
  --mut:      rgba(255,255,255,.72);
  --mut-2:    rgba(255,255,255,.55);
  --mut-d:    rgba(16,25,42,.66);

  --ff-head:'Montserrat','Nunito Sans',system-ui,-apple-system,'Segoe UI',sans-serif;
  --ff-body:'Nunito Sans',system-ui,-apple-system,'Segoe UI',sans-serif;

  --e-cine: cubic-bezier(.65,0,.25,1);
  --e-out:  cubic-bezier(.2,.7,.2,1);

  --pad: clamp(20px,4.5vw,72px);
  --maxw: 1440px;
  --r: 4px;
}

/* ---------- 2. RESET ----------------------------------------------------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;background:var(--ink);color:#fff;
  font-family:var(--ff-body);font-size:16.5px;line-height:1.68;font-weight:400;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden;
}
img,svg,iframe{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
h1,h2,h3,h4,h5,p,figure,blockquote{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
::selection{background:var(--orange);color:#fff}

/* ---------- 3. TIPOGRAFIA (contida) -------------------------------------- */
.h1{font-family:var(--ff-head);font-weight:700;font-size:clamp(1.72rem,2.9vw,2.6rem);line-height:1.16;letter-spacing:-.018em}
.h2{font-family:var(--ff-head);font-weight:700;font-size:clamp(1.42rem,2.15vw,1.95rem);line-height:1.22;letter-spacing:-.014em}
.h3{font-family:var(--ff-head);font-weight:700;font-size:clamp(1.15rem,1.55vw,1.4rem);line-height:1.28;letter-spacing:-.012em}
.h4{font-family:var(--ff-head);font-weight:600;font-size:1.02rem;line-height:1.35;letter-spacing:-.005em}
.kicker{
  font-family:var(--ff-head);font-weight:700;font-size:11.5px;
  letter-spacing:.16em;text-transform:uppercase;color:var(--orange);
}
.on-light .kicker,.on-white .kicker{color:var(--orange-d)}
.kicker--blue{color:var(--blue)}
.lead{font-size:clamp(1.02rem,1.25vw,1.2rem);line-height:1.62;color:var(--mut)}
.body{font-size:1rem;line-height:1.72;color:var(--mut)}
.small{font-size:.875rem;line-height:1.6;color:var(--mut-2)}
.on-light .lead,.on-light .body,.on-white .lead,.on-white .body{color:var(--mut-d)}
.on-light .small,.on-white .small{color:rgba(16,25,42,.6)}
.on-light .h1,.on-light .h2,.on-light .h3,.on-light .h4,
.on-white .h1,.on-white .h2,.on-white .h3,.on-white .h4{color:var(--ink)}
.orange{color:var(--orange)}

/* ---------- 4. LAYOUT ---------------------------------------------------- */
.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--pad)}
section{position:relative}
.sec{padding-block:clamp(64px,7.5vw,118px)}
.sec--tight{padding-block:clamp(48px,5vw,76px)}
.on-light{background:var(--bone);color:var(--ink)}
.on-white{background:var(--paper);color:var(--ink)}
.on-navy{background:var(--navy-d)}

.sechead{margin-bottom:clamp(30px,3.6vw,54px);max-width:70ch}
.sechead .kicker{display:block;margin-bottom:14px}
.sechead .h2{margin-bottom:16px}

.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,72px)}
@media(max-width:900px){.grid-2{grid-template-columns:1fr;gap:32px}}

/* ---------- 5. LOADER ---------------------------------------------------- */
.loader{
  position:fixed;inset:0;z-index:10000;background:#fff;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;
  transition:opacity .6s var(--e-out),visibility 0s .6s;
}
.loader.done{opacity:0;visibility:hidden}
.loader img{width:min(230px,52vw);height:auto}
.loader__bar{width:min(180px,38vw);height:2px;background:rgba(16,25,42,.12);overflow:hidden;border-radius:2px}
.loader__bar i{display:block;height:100%;width:0;background:var(--orange);animation:ld 1.2s var(--e-out) forwards}
@keyframes ld{to{width:100%}}

/* ---------- 6. PROGRESSO ------------------------------------------------- */
.progress{position:fixed;top:0;left:0;height:3px;background:var(--orange);z-index:9997;width:0;transition:width .12s linear}

/* ---------- 7. TOPBAR + NAV ---------------------------------------------- */
.topbar{
  background:var(--navy);color:#fff;text-align:center;
  padding:9px var(--pad);font-size:12.5px;letter-spacing:.02em;position:relative;z-index:60;
}
.topbar b{font-weight:700;color:var(--orange-l)}
@media(max-width:640px){.topbar{font-size:11.5px}}

.nav{
  position:sticky;top:0;z-index:70;background:rgba(255,255,255,.94);
  backdrop-filter:blur(14px) saturate(150%);border-bottom:1px solid rgba(16,25,42,.1);
  box-shadow:0 1px 20px rgba(16,25,42,.05);
}
.nav__in{display:flex;align-items:center;justify-content:space-between;gap:24px;height:76px}
.brand img{height:40px;width:auto}
.nav__links{display:flex;align-items:center;gap:clamp(12px,1.8vw,30px)}
.nav__links a{
  font-family:var(--ff-head);font-weight:600;font-size:13.5px;color:var(--mut-d);
  position:relative;padding:8px 0;transition:color .3s;
}
.nav__links a::after{content:'';position:absolute;left:0;bottom:2px;height:2px;width:0;background:var(--orange);transition:width .4s var(--e-out)}
.nav__links a:hover,.nav__links a[aria-current="page"]{color:var(--navy)}
.nav__links a:hover::after,.nav__links a[aria-current="page"]::after{width:100%}
.btn-cta{
  background:var(--orange);color:var(--ink);padding:12px 24px;border-radius:var(--r);
  font-family:var(--ff-head);font-weight:700;font-size:13px;
  transition:background .3s,transform .3s var(--e-out);white-space:nowrap;
}
.btn-cta:hover{background:var(--orange-l);transform:translateY(-2px)}
.nav__links .btn-cta::after{display:none}
.burger{display:none;width:42px;height:42px;position:relative}
.burger i{position:absolute;left:10px;width:22px;height:2px;background:var(--navy);border-radius:2px;transition:transform .4s var(--e-cine),opacity .25s}
.burger i:nth-child(1){top:15px}
.burger i:nth-child(2){top:21px}
.burger i:nth-child(3){top:27px}
.burger.x i:nth-child(1){transform:translateY(6px) rotate(45deg)}
.burger.x i:nth-child(2){opacity:0}
.burger.x i:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
@media(max-width:1060px){
  .burger{display:block}
  .nav__links{
    position:fixed;left:0;right:0;top:76px;flex-direction:column;align-items:stretch;gap:0;
    background:#fff;border-bottom:1px solid rgba(16,25,42,.1);box-shadow:0 20px 40px rgba(16,25,42,.1);
    padding:8px var(--pad) 26px;max-height:calc(100svh - 76px);overflow-y:auto;
    transform:translateY(-115%);opacity:0;visibility:hidden;pointer-events:none;
    transition:transform .5s var(--e-cine),opacity .3s,visibility 0s .5s;
  }
  .nav__links.open{transform:translateY(0);opacity:1;visibility:visible;pointer-events:auto;transition:transform .5s var(--e-cine),opacity .3s,visibility 0s}
  .nav__links a{font-size:16px;padding:15px 0;border-bottom:1px solid rgba(16,25,42,.1)}
  .nav__links .btn-cta{margin-top:16px;text-align:center;padding:16px;border-bottom:0;font-size:14px}
}

/* ---------- 8. HERO com mosaico de rostos reais -------------------------- */
.hero{
  position:relative;overflow:hidden;
  min-height:calc(100svh - 114px);display:flex;align-items:center;
  padding-block:clamp(48px,7vh,96px);
}
.mosaic{position:absolute;inset:0;z-index:0;display:grid;gap:2px;
  grid-template-columns:repeat(7,1fr);grid-auto-rows:1fr;
  animation:drift 46s ease-in-out infinite alternate;will-change:transform}
@media(max-width:1100px){.mosaic{grid-template-columns:repeat(5,1fr)}}
@media(max-width:620px){.mosaic{grid-template-columns:repeat(4,1fr)}}
@keyframes drift{from{transform:scale(1.06) translate3d(0,0,0)}to{transform:scale(1.14) translate3d(-1.5%,-2%,0)}}
.mosaic img{width:100%;height:100%;object-fit:cover;object-position:center 20%;
  filter:grayscale(1) contrast(1.06);opacity:.78}
.hero__veil{
  position:absolute;inset:0;z-index:1;pointer-events:none;
  background:
    linear-gradient(100deg,rgba(16,25,42,.95) 0%,rgba(16,25,42,.86) 42%,rgba(23,61,110,.6) 74%,rgba(23,61,110,.4) 100%),
    linear-gradient(0deg,rgba(16,25,42,.72) 0%,transparent 42%);
}
.hero .wrap{width:100%}
.hero__in{position:relative;z-index:3;max-width:60ch}
.hero__badge{
  display:inline-flex;align-items:center;gap:10px;margin-bottom:22px;
  background:rgba(237,140,33,.14);border:1px solid rgba(237,140,33,.42);
  color:var(--orange-l);border-radius:100px;padding:7px 16px;
  font-family:var(--ff-head);font-weight:700;font-size:12px;letter-spacing:.05em;
}
.hero__badge i{width:7px;height:7px;border-radius:50%;background:var(--orange);
  box-shadow:0 0 0 0 rgba(237,140,33,.6);animation:pulse 2.4s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 9px rgba(237,140,33,0)}100%{box-shadow:0 0 0 0 rgba(237,140,33,0)}}
.hero h1{margin-bottom:20px}
.hero .lead{max-width:56ch}
.hero__acts{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}
.hero__stats{
  display:flex;flex-wrap:wrap;gap:clamp(20px,3vw,46px);margin-top:clamp(30px,4vh,52px);
  padding-top:26px;border-top:1px solid var(--line);
}
.hero__stats div b{display:block;font-family:var(--ff-head);font-weight:700;font-size:clamp(1.5rem,2.2vw,2rem);line-height:1;color:#fff}
.hero__stats div span{display:block;font-size:12.5px;color:var(--mut-2);margin-top:6px}
.hero__credit{
  position:absolute;right:var(--pad);bottom:18px;z-index:3;
  font-size:11px;color:rgba(255,255,255,.4);letter-spacing:.04em;
}
@media(max-width:900px){.hero__credit{display:none}}

/* ---------- 9. BOTÕES ---------------------------------------------------- */
.btn{
  display:inline-flex;align-items:center;gap:11px;border-radius:var(--r);
  padding:15px 28px;font-family:var(--ff-head);font-weight:700;font-size:14px;
  background:var(--orange);color:var(--ink);transition:background .3s,transform .3s var(--e-out),box-shadow .3s;
  box-shadow:0 6px 22px rgba(237,140,33,.26);
}
.btn:hover{background:var(--orange-l);transform:translateY(-2px);box-shadow:0 10px 30px rgba(237,140,33,.34)}
.btn svg{width:16px;height:16px;flex:none;transition:transform .3s var(--e-out)}
.btn:hover svg{transform:translateX(4px)}
.btn--ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.32);box-shadow:none}
.btn--ghost:hover{background:rgba(255,255,255,.08);border-color:#fff;box-shadow:none}
.on-light .btn--ghost,.on-white .btn--ghost{color:var(--navy);border-color:rgba(23,61,110,.3)}
.on-light .btn--ghost:hover,.on-white .btn--ghost:hover{background:rgba(23,61,110,.06);border-color:var(--navy)}
.btn--navy{background:var(--navy);color:#fff;box-shadow:0 6px 22px rgba(23,61,110,.24)}
.btn--navy:hover{background:var(--navy-l);box-shadow:0 10px 30px rgba(23,61,110,.3)}

/* ---------- 10. REVEALS -------------------------------------------------- */
[data-rv]{opacity:0;transform:translateY(22px);transition:opacity .8s var(--e-out),transform .8s var(--e-out)}
[data-rv].in{opacity:1;transform:none}
[data-d="1"]{transition-delay:.08s}[data-d="2"]{transition-delay:.16s}
[data-d="3"]{transition-delay:.24s}[data-d="4"]{transition-delay:.32s}[data-d="5"]{transition-delay:.4s}

/* ---------- 11. CARDS ---------------------------------------------------- */
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,1.6vw,24px)}
@media(max-width:1000px){.cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.cards{grid-template-columns:1fr}}
.card{
  background:var(--paper);border:1px solid var(--line-d);border-radius:8px;
  padding:clamp(22px,2.2vw,32px);transition:transform .4s var(--e-out),box-shadow .4s,border-color .4s;
}
.card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(16,25,42,.1);border-color:rgba(237,140,33,.5)}
.card__n{
  display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;
  background:var(--navy);color:#fff;font-family:var(--ff-head);font-weight:700;font-size:13px;margin-bottom:18px;
}
.card h3{color:var(--ink);margin-bottom:9px}
.card p{font-size:.94rem;line-height:1.65;color:var(--mut-d)}

/* ---------- 12. FAIXA COM FOTO ------------------------------------------- */
.band{position:relative;overflow:hidden;background:var(--navy-d)}
.band__bg{position:absolute;inset:0;z-index:0}
.band__bg img{width:100%;height:100%;object-fit:cover;opacity:.3;filter:grayscale(.55) contrast(1.05)}
.band::after{
  content:'';position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(90deg,rgba(14,39,72,.96) 0%,rgba(14,39,72,.82) 48%,rgba(14,39,72,.55) 100%);
}
.band .wrap{position:relative;z-index:2}

/* ---------- 13. TIMELINE ------------------------------------------------- */
.tl{position:relative;padding-left:30px}
.tl::before{content:'';position:absolute;left:7px;top:14px;bottom:14px;width:2px;background:var(--line)}
.on-light .tl::before,.on-white .tl::before{background:var(--line-d)}
.tl li{position:relative;padding:16px 0;display:grid;grid-template-columns:158px 1fr;gap:clamp(12px,2.4vw,34px)}
@media(max-width:720px){.tl li{grid-template-columns:1fr;gap:6px}}
.tl li::before{
  content:'';position:absolute;left:-30px;top:26px;width:16px;height:16px;border-radius:50%;
  background:var(--ink);border:2px solid rgba(255,255,255,.34);transition:.4s var(--e-out);
}
.on-light .tl li::before,.on-white .tl li::before{background:var(--bone);border-color:var(--bone-2)}
.tl li.hot::before{background:var(--orange);border-color:var(--orange);box-shadow:0 0 0 6px rgba(237,140,33,.2)}
.tl__when{font-family:var(--ff-head);font-weight:700;font-size:13px;color:var(--orange);padding-top:4px}
.on-light .tl__when,.on-white .tl__when{color:var(--orange-d)}
.tl__what p{font-size:.95rem;line-height:1.65;color:var(--mut);max-width:64ch;margin-top:5px}
.on-light .tl__what p,.on-white .tl__what p{color:var(--mut-d)}
.tl__what h4{color:inherit}

/* ---------- 14. CEOS ----------------------------------------------------- */
.ceos{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,1.5vw,22px)}
@media(max-width:1080px){.ceos{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.ceos{grid-template-columns:repeat(2,1fr)}}
@media(max-width:430px){.ceos{grid-template-columns:1fr}}
.ceo{
  background:var(--paper);border:1px solid var(--line-d);border-radius:8px;overflow:hidden;
  display:flex;flex-direction:column;transition:transform .4s var(--e-out),box-shadow .4s;
}
.ceo:hover{transform:translateY(-5px);box-shadow:0 18px 44px rgba(16,25,42,.14)}
.ceo__ph{position:relative;aspect-ratio:1;overflow:hidden;background:var(--bone-2)}
.ceo__ph img{width:100%;height:100%;object-fit:cover;object-position:center 18%;
  filter:grayscale(1) contrast(1.04);transition:filter .55s var(--e-out),transform .8s var(--e-out)}
.ceo:hover .ceo__ph img{filter:grayscale(0) contrast(1);transform:scale(1.05)}
.ceo__i{
  position:absolute;top:10px;left:10px;z-index:2;background:rgba(16,25,42,.72);color:#fff;
  font-family:var(--ff-head);font-weight:700;font-size:11px;padding:4px 9px;border-radius:3px;backdrop-filter:blur(4px);
}
.ceo__bd{padding:16px 16px 18px;display:flex;flex-direction:column;gap:6px;flex:1}
.ceo__bd b{font-family:var(--ff-head);font-weight:700;font-size:1rem;color:var(--ink);line-height:1.25}
.ceo__bd span{font-size:.82rem;line-height:1.45;color:var(--mut-d)}
.ceo__lg{margin-top:auto;padding-top:14px;border-top:1px solid var(--line-d);height:58px;display:flex;align-items:flex-end}
.ceo__lg img{max-height:38px;max-width:145px;width:auto;object-fit:contain;object-position:left bottom}

/* ---------- 15. VÍDEOS (Instagram) --------------------------------------- */
.reels{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2vw,28px)}
@media(max-width:1000px){.reels{grid-template-columns:1fr;max-width:520px;margin-inline:auto}}
.reel{background:var(--paper);border:1px solid var(--line-d);border-radius:8px;overflow:hidden;display:flex;flex-direction:column}
.reel__frame{position:relative;width:100%;aspect-ratio:9/14.6;min-height:600px;background:var(--bone-2)}
.reel__frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.reel__cap{padding:18px 20px 22px;border-top:1px solid var(--line-d)}
.reel__cap b{display:block;font-family:var(--ff-head);font-weight:700;font-size:1.02rem;color:var(--ink)}
.reel__cap span{display:block;font-size:.86rem;color:var(--mut-d);margin-top:5px;line-height:1.5}

/* ---------- 16. CITAÇÕES ------------------------------------------------- */
.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2vw,26px)}
@media(max-width:980px){.quotes{grid-template-columns:1fr}}
.quote{
  background:rgba(255,255,255,.05);border:1px solid var(--line);border-radius:8px;
  padding:clamp(24px,2.6vw,34px);display:flex;flex-direction:column;justify-content:space-between;gap:22px;
  border-left:3px solid var(--orange);
}
.quote q{quotes:none;font-size:clamp(1.05rem,1.35vw,1.2rem);line-height:1.5;color:#fff;font-weight:400}
.quote q::before{content:'“'}.quote q::after{content:'”'}
.quote figcaption b{display:block;font-family:var(--ff-head);font-weight:700;font-size:.96rem}
.quote figcaption span{display:block;font-size:.82rem;color:var(--mut-2);margin-top:5px;line-height:1.5}

/* ---------- 17. NÚMEROS -------------------------------------------------- */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,1.6vw,22px)}
@media(max-width:860px){.stats{grid-template-columns:repeat(2,1fr)}}
.stat{background:rgba(255,255,255,.05);border:1px solid var(--line);border-radius:8px;padding:clamp(20px,2.2vw,30px)}
.on-light .stat,.on-white .stat{background:var(--paper);border-color:var(--line-d)}
.stat b{display:block;font-family:var(--ff-head);font-weight:700;font-size:clamp(1.9rem,3vw,2.7rem);line-height:1;color:var(--orange)}
.stat span{display:block;font-size:.86rem;color:var(--mut-2);margin-top:10px;line-height:1.5}
.on-light .stat span,.on-white .stat span{color:var(--mut-d)}

/* ---------- 18. LISTA DE CHECAGEM ---------------------------------------- */
.checks li{display:grid;grid-template-columns:26px 1fr;gap:14px;padding:13px 0;border-bottom:1px solid var(--line-d);align-items:start}
.on-navy .checks li,.band .checks li{border-color:var(--line)}
.checks li:last-child{border-bottom:0}
.checks svg{width:20px;height:20px;margin-top:3px;flex:none}
.checks strong{font-family:var(--ff-head);font-weight:700;display:block;font-size:.98rem;margin-bottom:3px}
.checks p{font-size:.92rem;line-height:1.6;color:var(--mut-d);margin:0}
.band .checks p,.on-navy .checks p{color:var(--mut)}

/* ---------- 19. APOIADORES (logos reais) --------------------------------- */
.logos{
  display:grid;grid-template-columns:repeat(7,1fr);gap:1px;
  background:var(--bone-2);border:1px solid var(--bone-2);border-radius:8px;overflow:hidden;
}
@media(max-width:1000px){.logos{grid-template-columns:repeat(4,1fr)}}
@media(max-width:600px){.logos{grid-template-columns:repeat(2,1fr)}}
.logos a,.logos div{
  background:var(--paper);min-height:118px;display:flex;align-items:center;justify-content:center;
  padding:20px;transition:background .35s;
}
.logos a:hover{background:var(--bone)}
.logos img{max-height:58px;max-width:100%;width:auto;object-fit:contain;
  opacity:.88;transition:opacity .35s var(--e-out),transform .35s var(--e-out)}
.logos a:hover img{opacity:1;transform:scale(1.04)}

/* ---------- 20. CTA ------------------------------------------------------ */
.cta{background:linear-gradient(120deg,var(--navy) 0%,var(--navy-d) 62%,var(--ink) 100%);position:relative;overflow:hidden}
.cta::before{
  content:'';position:absolute;right:-8%;top:-40%;width:56vw;aspect-ratio:1;border-radius:50%;
  background:radial-gradient(circle,rgba(237,140,33,.2),transparent 62%);pointer-events:none;
}
.cta .wrap{position:relative;z-index:1;text-align:center}
.cta .h2{max-width:22ch;margin-inline:auto}

/* ---------- 21. PAGE HEADER ---------------------------------------------- */
.phead{
  position:relative;overflow:hidden;padding-block:clamp(60px,7.5vw,110px) clamp(44px,5vw,74px);
  background:linear-gradient(115deg,var(--ink) 0%,var(--navy-d) 60%,var(--navy) 100%);
}
.phead__bg{position:absolute;inset:0;z-index:0;opacity:.24}
.phead__bg img{width:100%;height:100%;object-fit:cover;filter:grayscale(1)}
.phead::after{content:'';position:absolute;inset:0;z-index:1;
  background:linear-gradient(90deg,rgba(16,25,42,.94),rgba(16,25,42,.62))}
.phead .wrap{position:relative;z-index:2}
.phead .lead{max-width:60ch;margin-top:16px}
.crumb{font-size:12.5px;color:var(--mut-2);margin-bottom:16px}
.crumb a:hover{color:var(--orange)}

/* ---------- 22. FOOTER --------------------------------------------------- */
.foot{background:var(--ink-2);padding-top:clamp(48px,5.5vw,78px)}
.foot__grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:clamp(24px,3vw,48px);padding-bottom:clamp(36px,4vw,58px)}
@media(max-width:900px){.foot__grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.foot__grid{grid-template-columns:1fr}}
.foot img.flogo{height:44px;width:auto;margin-bottom:16px;filter:brightness(0) invert(1);opacity:.94}
.foot .fh{font-family:var(--ff-head);font-weight:700;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--orange);margin-bottom:16px}
.foot li{margin-bottom:10px}
.foot li a{font-size:.92rem;color:var(--mut-2);transition:color .3s}
.foot li a:hover{color:#fff}
.foot__bot{
  border-top:1px solid var(--line);padding-block:22px;
  display:flex;flex-wrap:wrap;gap:10px 26px;justify-content:space-between;
  font-size:12px;color:rgba(255,255,255,.62);
}
.social{display:flex;gap:12px;margin-top:18px}
.social a{
  width:38px;height:38px;border:1px solid var(--line);border-radius:50%;
  display:flex;align-items:center;justify-content:center;transition:.3s var(--e-out);
}
.social a:hover{background:var(--orange);border-color:var(--orange);transform:translateY(-2px)}
.social svg{width:17px;height:17px;fill:currentColor}

/* ---------- 23. UTIL ----------------------------------------------------- */
.mt-s{margin-top:clamp(14px,1.6vw,22px)}
.mt-m{margin-top:clamp(24px,3vw,42px)}
.mt-l{margin-top:clamp(36px,4.5vw,66px)}
.skip{position:absolute;left:-9999px;top:0;z-index:99999;background:var(--orange);color:#fff;padding:12px 20px;border-radius:var(--r)}
.skip:focus{left:12px;top:12px}
:focus-visible{outline:3px solid var(--orange);outline-offset:3px;border-radius:2px}

/* ---------- 24. REDUCED MOTION ------------------------------------------- */
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  .loader{display:none}
  [data-rv]{opacity:1!important;transform:none!important}
  .mosaic{animation:none;transform:scale(1.06)}
}
