
/*
Theme Name: Nortistaz Minimal
Author: Grupo Nortistaz
Description: Tema WordPress minimalista da Nortistaz.
Version: 2.0.25
Text Domain: nortistaz-minimal
*/
:root{--bg:#0b0d0e;--surface:#101111;--text:#f4f4f1;--muted:#929693;--line:#222525;--accent:#69e0fe;--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px;-webkit-text-size-adjust:100%;overscroll-behavior-y:auto}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Arial,sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased;touch-action:pan-y;-webkit-overflow-scrolling:touch;overscroll-behavior-y:auto}
a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.container{width:min(calc(100% - 48px),var(--max));margin:auto}
.site-header{height:92px;padding:0;position:fixed;left:0;right:0;top:18px;z-index:20;background:transparent;border:0;border-radius:0;pointer-events:none;transition:top .45s cubic-bezier(.22,1,.36,1),height .45s cubic-bezier(.22,1,.36,1)}.nav{height:92px;display:flex;align-items:center;justify-content:center;pointer-events:none;transition:height .45s cubic-bezier(.22,1,.36,1)}.nav-links{display:flex;align-items:center;justify-content:center;gap:2px;padding:7px 9px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(8,9,9,.26);backdrop-filter:blur(20px) saturate(115%);-webkit-backdrop-filter:blur(20px) saturate(115%);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 10px 34px rgba(0,0,0,.16);font-size:16px;font-weight:700;color:#f1f2ee;white-space:nowrap;pointer-events:auto;transform:translateZ(0);transition:padding .45s cubic-bezier(.22,1,.36,1),background .45s ease,border-color .45s ease,box-shadow .45s ease,transform .45s cubic-bezier(.22,1,.36,1)}.nav-links a{padding:13px 31px;border-radius:999px;transition:color .25s ease,background .25s ease,transform .25s ease}.nav-links a:hover{color:#fff;background:rgba(255,255,255,.08);transform:translateY(-1px)}.site-header.is-scrolled{top:8px}.site-header.is-scrolled .nav{height:78px}.site-header.is-scrolled .nav-links{padding:5px 7px;background:rgba(8,9,9,.72);border-color:rgba(255,255,255,.22);box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 12px 34px rgba(0,0,0,.28);transform:scale(.96)}.site-header.is-scrolled .nav-links a{padding-top:11px;padding-bottom:11px}.menu-btn{display:none;background:none;border:0;color:#fff;font-size:24px;justify-self:end;pointer-events:auto}
/* Hero / carrossel de Stories: uma única fila contínua, sem espaços. */
.hero{height:100vh;min-height:700px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;border-bottom:0;background:#0b0d0e}
.hero-video-wall{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;display:flex;align-items:stretch;justify-content:flex-start}
.video-track{display:flex;align-items:stretch;gap:0;width:max-content;height:100%;min-width:max-content;will-change:transform}
.video-tile{position:relative;left:auto;top:auto;width:56.25vh;height:100%;flex:0 0 56.25vh;border-radius:0;overflow:hidden;background:#0b100e;border:0;box-shadow:none;backface-visibility:hidden}
.video-tile video{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.86) brightness(.62);background:#0a0a0a}
.hero-overlay{position:absolute;inset:0;z-index:1;background:radial-gradient(ellipse at center,rgba(5,7,6,.30) 0%,rgba(5,7,6,.55) 48%,rgba(5,7,6,.88) 100%),linear-gradient(180deg,rgba(5,7,6,.26),rgba(5,7,6,.66))}
.hero-content{position:relative;z-index:2;width:min(100%,1240px);margin:0 auto;padding:115px 24px 80px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0}
.hero-content>*{position:relative;z-index:2}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.16em;color:var(--accent);font-weight:750}
.hero h1{font-size:clamp(58px,7vw,112px);line-height:.88;letter-spacing:-.075em;width:min(100%,1120px);max-width:1120px;margin:20px auto 24px;font-weight:900;text-transform:uppercase;text-align:center;overflow-wrap:break-word}
.hero h1 .hero-word,.hero h1 .hero-year{display:inline}.hero h1 .hero-break{display:block}.hero h1 .hero-year{color:var(--accent);}
.hero p{width:min(100%,600px);max-width:600px;color:#c1c4c0;font-size:18px;margin:0 auto 28px;text-align:center}
.actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.btn{display:inline-flex;padding:13px 19px;border-radius:999px;font-weight:750;font-size:14px;border:1px solid var(--line)}
.btn-primary{background:var(--text);color:#080909;border-color:var(--text)}
.btn-secondary{color:#eee;background:transparent}
.hero-scroll-action{margin-top:8px}
.hero-scroll-cue{width:58px;height:58px;display:inline-flex;align-items:center;justify-content:center;color:#fff;background:transparent;border:0;transition:transform .25s ease,opacity .25s ease}
.hero-scroll-cue:hover{transform:translateY(5px);opacity:.8}
.hero-scroll-arrow{display:block;font-size:48px;line-height:1;font-weight:300;color:#fff;animation:heroScrollArrow 1.7s ease-in-out infinite}
@keyframes heroScrollArrow{0%,100%{transform:translateY(-3px);opacity:.55}50%{transform:translateY(4px);opacity:1}}
@media(prefers-reduced-motion:reduce){.video-track{transform:none!important}}
@media(max-width:900px){
 .hero{height:100svh;min-height:620px}.video-tile{width:56.25svh;height:100%;flex-basis:56.25svh}.hero h1{font-size:clamp(48px,10vw,82px)}.hero p{font-size:16px}
}
@media(max-width:600px){
 .hero{height:100svh;min-height:620px}.hero-video-wall{inset:0}.video-tile{width:56.25svh;height:100%;flex-basis:56.25svh;border-radius:0}.hero-content{padding:95px 18px 65px}.hero h1{font-size:clamp(44px,12vw,68px);line-height:.9}.hero p{font-size:15px;max-width:330px}
}
.ticker{background:var(--accent);border:0;overflow:hidden;white-space:nowrap;height:52px;display:flex;align-items:center}.ticker-track{display:flex;align-items:center;width:max-content;flex:0 0 auto;animation:move 36s linear infinite;will-change:transform}.ticker span{display:inline-flex;align-items:center;flex:0 0 auto;white-space:nowrap;font-size:20px;line-height:1;letter-spacing:.10em;font-weight:800;color:#071012;padding:0 34px}.ticker b{color:#071012;margin-left:34px}
@keyframes move{to{transform:translateX(-50%)}}
.section{padding:105px 0}.section-head{display:flex;justify-content:space-between;gap:40px;align-items:center;margin-bottom:45px}.section-head>div:first-child{flex:1;min-width:0}.section-head>.intro{flex:1;max-width:none;display:flex;justify-content:center;align-items:center}.kicker{font-size:11px;text-transform:uppercase;letter-spacing:.17em;color:var(--accent);font-weight:750}
#quem-somos .kicker,.admin-section .kicker,.contact-showcase .kicker{font-size:15px;letter-spacing:.16em}
@media(max-width:800px){#quem-somos .kicker,.admin-section .kicker,.contact-showcase .kicker{font-size:14px}}
h2{font-size:clamp(42px,5.8vw,80px);line-height:.95;letter-spacing:-.065em;margin:10px 0 0;max-width:800px}.intro{color:var(--muted);max-width:510px}.about-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:70px;align-items:stretch}.about-content{display:flex;flex-direction:column;justify-content:center}.about-logo-wrap{display:flex;align-items:center;justify-content:center;min-height:100%;padding:20px 0}.about-logo{width:min(380px,78%);height:auto;max-width:100%;object-fit:contain;display:block;margin:0 auto}
.about-copy{max-width:850px;font-size:20px;color:#c5c8c4;line-height:1.65;margin-top:50px}.about-copy strong{color:#fff}
.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:55px}.metric{position:relative;min-height:184px;padding:24px 25px 23px;border:1px solid rgba(255,255,255,.09);border-radius:24px;background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.012));box-shadow:0 18px 45px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.045);overflow:hidden;transition:transform .45s cubic-bezier(.22,1,.36,1),border-color .35s ease,background .35s ease,box-shadow .45s ease}.metric::before{content:"";position:absolute;width:150px;height:150px;right:-65px;top:-70px;border-radius:50%;background:radial-gradient(circle,rgba(105,224,254,.16),rgba(105,224,254,0) 70%);pointer-events:none}.metric::after{content:"";position:absolute;left:22px;right:22px;bottom:0;height:1px;background:linear-gradient(90deg,transparent,rgba(105,224,254,.32),transparent);opacity:.65}.metric:hover{transform:translateY(-6px);border-color:rgba(105,224,254,.28);background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(105,224,254,.025));box-shadow:0 24px 55px rgba(0,0,0,.22),0 0 35px rgba(105,224,254,.06),inset 0 1px 0 rgba(255,255,255,.07)}.metric-top{display:flex;align-items:center;gap:15px;min-height:82px}.metric-icon{width:46px;height:46px;border-radius:15px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 46px;color:var(--accent);background:rgba(105,224,254,.08);border:1px solid rgba(105,224,254,.16);box-shadow:inset 0 1px 0 rgba(255,255,255,.08);transition:transform .45s cubic-bezier(.22,1,.36,1),background .35s ease}.metric:hover .metric-icon{transform:translateY(-2px) rotate(-4deg);background:rgba(105,224,254,.12)}.metric-icon svg{width:23px;height:23px;display:block}.metric strong{display:block;font-size:clamp(42px,5.2vw,70px);line-height:.94;letter-spacing:-.075em;font-variant-numeric:tabular-nums;color:#f7f8f5}.metric>span{display:block;max-width:210px;color:#9ca29f;font-size:13px;line-height:1.35;margin-top:14px;letter-spacing:.01em}
.feature-list{border-top:1px solid var(--line)}.feature{display:grid;grid-template-columns:70px 1fr 1fr;gap:25px;padding:27px 0;border-bottom:1px solid var(--line);align-items:start}.feature-number{color:var(--muted);font-size:13px}.feature h3{font-size:25px;letter-spacing:-.035em;margin:0}.feature p{margin:0;color:var(--muted);max-width:520px}
/* Timeline minimalista */
.story-timeline-vertical{position:relative;max-width:1080px;margin:58px auto 0;padding:0 0 30px}
.story-timeline-track{position:absolute;top:18px;bottom:48px;left:50%;width:1px;transform:translateX(-50%);background:rgba(255,255,255,.12);overflow:hidden}
.story-timeline-progress{display:block;width:100%;height:0;background:var(--accent);transition:height 1.15s cubic-bezier(.22,1,.36,1)}
.story-timeline-event{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 120px minmax(0,1fr);align-items:center;min-height:210px}
.story-timeline-event.event-left .story-timeline-card{grid-column:1;grid-row:1}
.story-timeline-event.event-left .story-timeline-node{grid-column:2;grid-row:1}
.story-timeline-event.event-right .story-timeline-node{grid-column:2;grid-row:1}
.story-timeline-event.event-right .story-timeline-card{grid-column:3;grid-row:1}
.story-timeline-card{max-width:430px;padding:10px 0;opacity:0;transform:translateY(16px);transition:opacity .55s ease,transform .65s cubic-bezier(.22,1,.36,1)}
.event-left .story-timeline-card{justify-self:end;text-align:left;padding-right:34px}
.event-right .story-timeline-card{justify-self:start;text-align:left;padding-left:34px}
.story-timeline-label{display:block;color:var(--accent);font-size:14px;font-weight:800;letter-spacing:.12em;margin-bottom:7px}
.story-timeline-card h3{font-size:26px;line-height:1.05;letter-spacing:-.04em;margin:0 0 10px;color:#fff}
.story-timeline-card p{margin:0;color:#b8bcb8;font-size:16px;line-height:1.6}
.story-timeline-node{justify-self:center;display:flex;align-items:center;justify-content:center;color:#fff;font-size:30px;font-weight:900;letter-spacing:-.06em;z-index:2;opacity:0;transform:translateY(10px);transition:opacity .45s ease,transform .55s cubic-bezier(.22,1,.36,1)}
.story-timeline-node::after{content:"";position:absolute;width:7px;height:7px;border:1px solid rgba(255,255,255,.38);background:#080909;border-radius:50%;left:50%;transform:translateX(-50%)}
.story-timeline-vertical.is-visible .story-timeline-progress{height:100%}
.story-timeline-vertical.is-visible .story-timeline-event .story-timeline-card,.story-timeline-vertical.is-visible .story-timeline-event .story-timeline-node{opacity:1;transform:none}
.story-timeline-vertical.is-visible .story-timeline-event:nth-of-type(2) .story-timeline-card,.story-timeline-vertical.is-visible .story-timeline-event:nth-of-type(2) .story-timeline-node{transition-delay:.04s}
.story-timeline-vertical.is-visible .story-timeline-event:nth-of-type(3) .story-timeline-card,.story-timeline-vertical.is-visible .story-timeline-event:nth-of-type(3) .story-timeline-node{transition-delay:.14s}
.story-timeline-vertical.is-visible .story-timeline-event:nth-of-type(4) .story-timeline-card,.story-timeline-vertical.is-visible .story-timeline-event:nth-of-type(4) .story-timeline-node{transition-delay:.24s}
.story-timeline-vertical.is-visible .story-timeline-event:nth-of-type(5) .story-timeline-card,.story-timeline-vertical.is-visible .story-timeline-event:nth-of-type(5) .story-timeline-node{transition-delay:.34s}
.story-timeline-vertical.is-visible .story-timeline-event:nth-of-type(6) .story-timeline-card,.story-timeline-vertical.is-visible .story-timeline-event:nth-of-type(6) .story-timeline-node{transition-delay:.44s}
.story-timeline-vertical.is-visible .story-timeline-event:nth-of-type(7) .story-timeline-card,.story-timeline-vertical.is-visible .story-timeline-event:nth-of-type(7) .story-timeline-node{transition-delay:.54s}
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.post{border-top:1px solid var(--line);padding-top:18px}.post-image{height:210px;background:#101212;margin-bottom:18px;overflow:hidden}.post-image img{width:100%;height:100%;object-fit:cover}
.post small{color:var(--muted)}.post h3{font-size:23px;line-height:1.05;letter-spacing:-.04em;margin:8px 0}.post p{color:var(--muted);margin:0}
.cta{background:var(--bg);padding:75px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.cta h2{max-width:900px}.cta p{color:var(--muted);max-width:570px}
.footer{padding:40px 0;color:var(--muted);font-size:13px}.footer-inner{display:flex;justify-content:space-between;gap:25px}.footer strong{color:#fff}
@media(max-width:800px){
 .container{width:min(calc(100% - 30px),var(--max))}
 /* Mobile: header maior e com as quatro abas visíveis. */
 .site-header{height:74px;top:10px;padding:0 8px}
 .nav{height:74px;width:100%;display:flex;justify-content:center;align-items:center}
 .nav-links{display:flex;align-items:center;justify-content:center;width:max-content;max-width:calc(100vw - 16px);overflow:visible;gap:0;padding:6px 6px;border-radius:999px;background:rgba(8,9,9,.52);backdrop-filter:blur(18px) saturate(110%);-webkit-backdrop-filter:blur(18px) saturate(110%)}
 .nav-links a{flex:0 0 auto;padding:11px 13px;font-size:12.5px;line-height:1;white-space:nowrap}
 .menu-btn{display:none!important}
 /* Mobile: título menor e proporcional, texto de apoio maior e legível. */
 .hero{min-height:720px}.hero-content{width:100%;padding:112px 15px 58px}.hero h1{width:100%;max-width:720px;font-size:clamp(40px,11.5vw,58px);line-height:.92;letter-spacing:-.075em;margin:18px auto 22px}
 .hero h1 .hero-word-moving,.hero h1 .hero-word-tudo,.hero h1 .hero-word-desde,.hero h1 .hero-year{display:block}
 .hero h1 .hero-break{display:none}
 .hero h1 .hero-word-moving{font-size:.92em}
 .hero h1 .hero-word-tudo,.hero h1 .hero-word-desde{font-size:1.08em;letter-spacing:-.085em}
 .hero h1 .hero-year{font-size:1.03em}
 .hero p{font-size:17px;line-height:1.45;max-width:340px;margin-bottom:24px}
 .section{padding:75px 0}.section-head{display:block}.intro{margin-top:20px}.feature{grid-template-columns:45px 1fr}.feature p{grid-column:2}.story-timeline-vertical{margin-top:40px;padding:0 0 20px 38px}.story-timeline-track{left:16px;transform:none;top:20px;bottom:25px}.story-timeline-event,.story-timeline-event.event-left,.story-timeline-event.event-right{display:grid;grid-template-columns:38px minmax(0,1fr);min-height:190px;align-items:center}.story-timeline-event .story-timeline-node,.story-timeline-event.event-left .story-timeline-node,.story-timeline-event.event-right .story-timeline-node{grid-column:1;grid-row:1;justify-self:start;width:32px;height:32px;font-size:12px}.story-timeline-event .story-timeline-card,.story-timeline-event.event-left .story-timeline-card,.story-timeline-event.event-right .story-timeline-card{grid-column:2;grid-row:1;justify-self:stretch;max-width:none;padding:20px}.story-timeline-card h3{font-size:22px}.story-timeline-card p{font-size:15px}.metrics{grid-template-columns:1fr}.metric,.metric:not(:first-child){border-right:0;border-bottom:1px solid var(--line);padding:22px 0}.metric:last-child{border-bottom:0}.posts{grid-template-columns:1fr}.footer-inner{display:block}.footer-inner>div+div{margin-top:15px}
}

/* Ajuste minimalista da linha do tempo: mantém a animação sem aparência artificial. */
.story-timeline-vertical{max-width:1000px;margin:48px auto 0;padding:8px 0 28px}
.story-timeline-track{top:18px;bottom:38px;width:1px;background:rgba(255,255,255,.14)}
.story-timeline-progress{background:var(--accent);transition:height 1.5s cubic-bezier(.22,1,.36,1)}
.story-timeline-event{grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr);min-height:185px}
.story-timeline-card{border:0;background:transparent;border-radius:0;padding:8px 22px;max-width:410px;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none}
.story-timeline-card h3{font-size:23px;margin:0 0 8px}
.story-timeline-card p{font-size:15px;line-height:1.55}
.story-timeline-label{font-size:12px;letter-spacing:.12em;margin-bottom:7px}
.story-timeline-node{width:auto;height:auto;border:0;border-radius:0;background:transparent;color:#fff;font-size:15px;font-weight:800;opacity:0;transform:translateY(8px);transition:opacity .55s ease,transform .55s ease}
.story-timeline-vertical.is-visible .story-timeline-node{border:0;box-shadow:none}
@media (max-width:760px){
 .story-timeline-vertical{margin-top:36px}
 .story-timeline-track{left:18px;transform:none}
 .story-timeline-event,.story-timeline-event.event-left,.story-timeline-event.event-right{grid-template-columns:36px minmax(0,1fr);min-height:165px}
 .story-timeline-event .story-timeline-node,.story-timeline-event.event-left .story-timeline-node,.story-timeline-event.event-right .story-timeline-node{grid-column:1;grid-row:1;justify-self:start}
 .story-timeline-event .story-timeline-card,.story-timeline-event.event-left .story-timeline-card,.story-timeline-event.event-right .story-timeline-card{grid-column:2;grid-row:1;justify-self:stretch;max-width:none;padding:8px 0 8px 18px}
}

@media(max-width:800px){
 .story-timeline-vertical{margin-top:40px;padding:0 0 20px 42px}
 .story-timeline-track{left:17px;transform:none;top:18px;bottom:30px}
 .story-timeline-event,.story-timeline-event.event-left,.story-timeline-event.event-right{display:grid;grid-template-columns:42px minmax(0,1fr);min-height:190px;align-items:center}
 .story-timeline-event .story-timeline-node,.story-timeline-event.event-left .story-timeline-node,.story-timeline-event.event-right .story-timeline-node{grid-column:1;grid-row:1;justify-self:start;font-size:22px}
 .story-timeline-event .story-timeline-node::after{left:17px}
 .story-timeline-event .story-timeline-card,.story-timeline-event.event-left .story-timeline-card,.story-timeline-event.event-right .story-timeline-card{grid-column:2;grid-row:1;justify-self:stretch;max-width:none;padding:10px 0 10px 18px;text-align:left}
 .story-timeline-card h3{font-size:23px}
 .story-timeline-card p{font-size:15px}
}


@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-scroll-arrow{animation:none}.story-timeline-progress{transition:none}.story-timeline-card,.story-timeline-node{transition:none!important}}


/* Mobile final cleanup: prevent crooked/overflowing columns without changing desktop. */
@media (max-width: 800px){
  html, body{overflow-x:clip;touch-action:pan-y;-webkit-overflow-scrolling:touch}
  .container{width:calc(100% - 30px);max-width:100%;min-width:0}

  .section{width:100%;overflow:hidden}
  .section-head{width:100%;min-width:0}
  .section-head>div,.section-head>.intro{min-width:0;max-width:100%}

  /* About: stack the two desktop columns cleanly on mobile. */
  .about-grid{
    grid-template-columns:minmax(0,1fr);
    gap:42px;
    width:100%;
  }
  .about-content,.about-logo-wrap{min-width:0;width:100%}
  .about-logo-wrap{min-height:auto;padding:8px 0 0}
  .about-logo{width:min(230px,68vw);margin:0 auto}
  .about-copy{max-width:100%;font-size:17px;line-height:1.6;margin-top:34px}

  /* Metrics: one clean column, no horizontal bleed. */
  .metrics{grid-template-columns:minmax(0,1fr);width:100%;margin-top:40px}
  .metric,.metric:not(:first-child){width:100%;min-width:0;padding:22px 20px;border:1px solid rgba(255,255,255,.09);border-radius:20px}
  .metric-top{min-width:0}
  .metric strong{min-width:0;font-size:clamp(42px,14vw,62px)}
  .metric>span{max-width:260px}

  /* Team/list rows: number + content, description stays aligned underneath. */
  .feature-list{width:100%;min-width:0}
  .feature{
    grid-template-columns:34px minmax(0,1fr);
    gap:14px;
    width:100%;
    min-width:0;
    padding:24px 0;
  }
  .feature-number{grid-column:1;grid-row:1;min-width:0}
  .feature>div:nth-child(2){grid-column:2;grid-row:1;min-width:0}
  .feature p{grid-column:2;grid-row:2;min-width:0;max-width:none;margin:10px 0 0}
  .feature h3{font-size:22px;overflow-wrap:anywhere}

  /* News cards: single column with equal width. */
  .posts{grid-template-columns:minmax(0,1fr);width:100%;min-width:0;gap:38px}
  .post{width:100%;min-width:0}
  .post-image{width:100%;height:220px}
  .post h3,.post p{overflow-wrap:anywhere}

  /* Timeline: keep the rail and cards inside the viewport. */
  .story-timeline-vertical{width:100%;max-width:100%;min-width:0;overflow:visible;padding-right:0}
  .story-timeline-event,.story-timeline-event.event-left,.story-timeline-event.event-right{width:100%;min-width:0}
  .story-timeline-card{min-width:0;overflow-wrap:anywhere}
  .story-timeline-card h3,.story-timeline-card p{max-width:100%;overflow-wrap:anywhere}

  .cta{width:100%;overflow:hidden}
  .cta .container{min-width:0}
  .cta h2,.cta p{max-width:100%;overflow-wrap:anywhere}

  .footer{width:100%;overflow:hidden}
  .footer-inner{min-width:0}
}

/* Mobile hero/header final correction — desktop remains untouched. */
@media (max-width: 800px){
  .site-header{
    height:84px;
    top:8px;
    padding:0 8px;
  }
  .site-header.is-scrolled{top:4px}
  .site-header.is-scrolled .nav{height:72px}
  .nav{height:84px;width:100%;}
  .nav-links{
    width:max-content;
    max-width:calc(100vw - 16px);
    padding:7px 7px;
    gap:1px;
    border-radius:999px;
    overflow:visible;
  }
  .nav-links a{
    flex:0 0 auto;
    padding:13px 15px;
    font-size:13.5px;
    line-height:1;
    white-space:nowrap;
  }

  .hero{min-height:100svh;height:100svh;}
  .hero-content{
    width:100%;
    padding:108px 14px 52px;
  }
  .hero h1{
    width:100%;
    max-width:100%;
    margin:18px auto 24px;
    font-size:clamp(34px,10.8vw,50px);
    line-height:.9;
    letter-spacing:-.065em;
    white-space:normal;
  }
  .hero h1 .hero-word-moving,
  .hero h1 .hero-word-tudo{
    display:inline !important;
    font-size:1em;
    letter-spacing:-.065em;
  }
  .hero h1 .hero-break{
    display:block !important;
    height:0;
  }
  .hero h1 .hero-word-desde,
  .hero h1 .hero-year{
    display:inline !important;
    font-size:1em;
    letter-spacing:-.065em;
  }
  .hero h1 .hero-year{color:var(--accent);}
  .hero p{
    width:100%;
    max-width:360px;
    font-size:18px;
    line-height:1.5;
    margin:0 auto 24px;
  }
  .hero-scroll-arrow{font-size:52px;}
}

@media (max-width:360px){
  .nav-links{max-width:calc(100vw - 8px);padding:5px 4px}
  .nav-links a{padding:10px 9px;font-size:11.5px;}
  .hero h1{font-size:clamp(31px,10.8vw,42px);}
  .hero p{font-size:16px;max-width:320px;}
}


/* Timeline years enlarged for desktop and mobile. */
.story-timeline-label{font-size:26px;line-height:1;font-weight:900;letter-spacing:-.04em;margin-bottom:9px}
@media(max-width:800px){.story-timeline-label{font-size:24px;line-height:1;letter-spacing:-.035em;margin-bottom:9px}}


/* Administradores — seção gerenciada pelo painel do WordPress. */
.admin-title-accent{color:#f7f8f5}
.admin-section{padding-top:48px}
.admin-section-head{align-items:end;margin-bottom:58px}
.admin-section-head h2{margin-top:12px}
.admin-directory{display:flex;flex-direction:column;gap:46px}
.admin-profile-card{display:grid;grid-template-columns:minmax(270px,.72fr) minmax(320px,1fr);gap:64px;align-items:center;padding:8px 0 30px;border-bottom:1px solid var(--line)}
.admin-profile-main{min-width:0}
.admin-profile-photo{position:relative;width:205px;height:205px;margin:0 0 22px;border-radius:50%;overflow:visible;border:2px solid transparent;background:#111;display:flex;align-items:center;justify-content:center;isolation:isolate;outline:none;box-shadow:none;-webkit-tap-highlight-color:transparent}
.admin-profile-photo img{width:100%;height:100%;object-fit:cover;border-radius:50%;filter:none!important;transition:transform .25s ease;position:relative;z-index:2}
.admin-profile-photo:hover,.admin-profile-photo:focus,.admin-profile-photo:focus-visible{outline:none;box-shadow:none;border-color:transparent}.admin-profile-photo:hover img{filter:none;transform:scale(1.015)}
.admin-profile-photo.story-active{border-color:transparent}
.admin-profile-photo.story-active::before{content:"";position:absolute;inset:-10px;border-radius:50%;padding:5px;background:conic-gradient(from 0deg,#ffd600 0deg,#ff7a00 65deg,#ff304f 125deg,#ff006e 190deg,#c800ff 250deg,#7b2cff 305deg,#ffd600 360deg);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:admin-story-spin 2.6s linear infinite;z-index:0;filter:saturate(1.18)}
.admin-profile-photo.story-active::after{content:"";position:absolute;inset:-2px;border-radius:50%;background:#111;z-index:1;box-shadow:0 0 0 2px #111}
@keyframes admin-story-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.admin-profile-photo.story-active::before{animation:none}}
.admin-profile-photo span{position:relative;z-index:2;font-size:56px;font-weight:900;color:var(--accent);letter-spacing:-.06em}
.admin-profile-index{display:block;color:var(--accent);font-size:11px;font-weight:800;letter-spacing:.14em;margin-bottom:8px}
.admin-profile-body h3{margin:0;color:#fff;font-size:36px;line-height:1.05;letter-spacing:-.045em}
.admin-profile-role{margin:10px 0 0;color:#a9aeab;font-size:18px;line-height:1.4}
.admin-profile-location{margin:10px 0 0;color:#8b928f;font-size:16px;display:flex;align-items:center;gap:8px}
.admin-profile-handle{display:inline-flex;align-items:center;gap:8px;margin-top:14px;color:#aeb3b0;font-size:18px;font-weight:400}
.admin-profile-icon{width:20px;height:20px;flex:0 0 20px;display:block}.admin-instagram-icon{width:21px;height:21px;flex-basis:21px}a.admin-profile-handle:hover{color:var(--accent);text-decoration:underline}
.admin-profile-about{border-left:1px solid rgba(255,255,255,.13);padding:10px 0 10px 36px;max-width:700px}
.admin-about-label{color:#fff;font-size:26px;font-weight:900;letter-spacing:-.035em;line-height:1.05;margin-bottom:15px}
.admin-about-copy p{margin:0 0 13px;color:#aeb3b0;font-size:16px;line-height:1.65}
.admin-about-copy p:last-child{margin-bottom:0}
.admin-about-copy strong{color:#fff}
.admin-empty{padding:28px 0;color:var(--muted);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.admin-note{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);margin-top:46px;padding-top:18px;color:#777f7b}
.admin-note span{font-size:10px;letter-spacing:.18em}.admin-note p{margin:0;font-size:12px;letter-spacing:.04em}
@media(max-width:900px){
 .admin-profile-card{grid-template-columns:minmax(240px,.72fr) minmax(260px,1fr);gap:38px}
 .admin-profile-photo{width:180px;height:180px}
 .admin-profile-body h3{font-size:31px}
 .admin-profile-role{font-size:16px}
}
@media(max-width:800px){
 .admin-section{padding-top:42px}
 .admin-section-head{display:block;margin-bottom:42px}
 .admin-section-head .intro{margin-top:20px;display:block}
 .admin-profile-card{grid-template-columns:1fr;gap:22px;padding-bottom:30px}
 .admin-profile-photo{width:178px;height:178px;margin-bottom:18px}
 .admin-profile-body h3{font-size:30px}
 .admin-profile-role{font-size:16px}
 .admin-profile-location{font-size:15px}
 .admin-profile-handle{font-size:18px;font-weight:400}
 .admin-profile-about{border-left:0;border-top:1px solid rgba(255,255,255,.13);padding:20px 0 0;max-width:none}
 .admin-about-label{font-size:23px}
 .admin-about-copy p{font-size:14px;line-height:1.6}
 .admin-note{display:block;margin-top:34px}
 .admin-note p{margin-top:10px}
}

/* Contato — WhatsApp, e-mail e envio de vídeos. */
.contact-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:760px;margin:28px 0 18px}
.contact-option{display:flex;align-items:center;gap:14px;min-height:76px;padding:15px 18px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.025);transition:transform .2s ease,border-color .2s ease,background .2s ease}
.contact-option:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.25);background:rgba(255,255,255,.045)}
.contact-option-icon{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 40px}
.contact-option-icon svg{width:100%;height:100%;display:block}
.contact-whatsapp-icon{color:#25D366}
.contact-email-icon{color:#d7dad7}
.contact-option strong,.contact-option small{display:block}
.contact-option strong{font-size:16px;color:#fff;line-height:1.1}
.contact-option small{margin-top:5px;font-size:14px;color:var(--muted)}
.contact-video-note{max-width:760px!important;margin:0 0 22px!important;color:#bfc3bf!important;font-size:15px!important}
.contact-video-note strong{color:#fff}
.contact-video-note a{color:var(--accent);font-weight:800;text-decoration:underline;text-underline-offset:3px}
.whatsapp-float{position:fixed;right:24px;bottom:24px;width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#25D366;color:#fff;z-index:50;box-shadow:0 10px 28px rgba(0,0,0,.32);transition:transform .2s ease,box-shadow .2s ease}
.whatsapp-float svg{width:29px;height:29px;display:block}
.whatsapp-float:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(0,0,0,.4)}
@media(max-width:800px){
 .contact-options{grid-template-columns:1fr;max-width:none;margin-top:24px}
 .contact-option{min-height:70px}
 .contact-video-note{font-size:14px!important;line-height:1.5}
 .whatsapp-float{right:16px;bottom:16px;width:54px;height:54px}
 .whatsapp-float svg{width:27px;height:27px}
}
@media(prefers-reduced-motion:reduce){.metric,.metric-icon{transition:none}.contact-option,.whatsapp-float{transition:none}}

/* Contato — composição visual inspirada no exemplo enviado, sem alterar outras seções. */
.contact-showcase{overflow:hidden}
.contact-showcase-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(420px,1.05fr);gap:70px;align-items:center;min-width:0}
.contact-showcase-copy{min-width:0}
.contact-showcase-copy h2{color:#f4f4f2;max-width:760px;margin:12px 0 18px;font-size:clamp(42px,5.4vw,78px);line-height:.96;letter-spacing:-.055em}
.contact-showcase-copy>p{max-width:600px;font-size:17px;line-height:1.6}
.contact-showcase-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:720px;margin:32px 0 18px}
.contact-showcase-item{display:flex;align-items:center;gap:14px;min-height:82px;padding:16px 18px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(255,255,255,.035);color:#fff;transition:transform .2s ease,border-color .2s ease,background .2s ease}
.contact-showcase-item:hover{transform:translateY(-3px);border-color:rgba(255,255,255,.28);background:rgba(255,255,255,.055)}
.contact-showcase-item .contact-option-icon{width:44px;height:44px;flex-basis:44px}
.contact-showcase-item strong{font-size:17px;line-height:1.1}
.contact-showcase-item small{display:block;margin-top:5px;color:#9da39f;font-size:14px}
.contact-video-callout{display:flex;align-items:center;gap:14px;max-width:650px;margin:20px 0 24px;padding:15px 0;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1)}
.contact-video-callout-icon{width:34px;height:34px;border:1px solid rgba(255,255,255,.18);border-radius:50%;display:flex;align-items:center;justify-content:center;flex:0 0 34px;color:#fff;font-size:0;line-height:1;font-family:Arial,sans-serif;font-weight:400;padding:0;position:relative;box-sizing:border-box}
.contact-video-callout-icon::before{content:"";position:absolute;width:13px;height:1.5px;background:#fff;border-radius:2px;transform:rotate(-45deg);transform-origin:center;left:8px;top:17px}
.contact-video-callout-icon::after{content:"";position:absolute;width:6px;height:6px;border-top:1.5px solid #fff;border-right:1.5px solid #fff;transform:rotate(0deg);left:18px;top:10px;border-radius:.5px}
.contact-video-callout strong,.contact-video-callout span{display:block}
.contact-video-callout strong{color:#fff;font-size:15px;margin-bottom:4px}
.contact-video-callout div>span{color:#aeb4b0;font-size:14px;line-height:1.45}
.contact-video-callout a{color:#fff;font-weight:800;text-decoration:underline;text-underline-offset:3px}
.contact-showcase-button{margin-top:0}
.contact-showcase-media{position:relative;min-height:560px;min-width:0;display:flex;align-items:center;justify-content:center;transform:translateX(-22px)}
.contact-video-card{position:absolute;left:50%;top:50%;width:min(68%,390px);aspect-ratio:9/12.5;overflow:hidden;border-radius:28px;border:1px solid rgba(255,255,255,.14);background:#111;box-shadow:0 24px 70px rgba(0,0,0,.42);transform-origin:center;isolation:isolate;cursor:pointer;transition:transform .55s cubic-bezier(.22,.61,.36,1),filter .55s ease,opacity .55s ease,box-shadow .55s ease}
.contact-video-card video{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.82) contrast(.98)}
.contact-video-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.2));pointer-events:none}
.contact-video-card-0{z-index:3;transform:translate(-50%,-50%) rotate(-8deg) translateX(-8px)}
.contact-video-card-1{z-index:2;transform:translate(-50%,-50%) rotate(5deg) translateX(38px) translateY(-12px);opacity:.82}
.contact-video-card-2{z-index:1;transform:translate(-50%,-50%) rotate(11deg) translateX(72px) translateY(18px);opacity:.62}
.contact-video-card{will-change:transform,opacity,filter}
.contact-showcase-media.contact-cycle-0 .contact-video-card-0{z-index:3;opacity:1;filter:none;transform:translate(-50%,-50%) rotate(-8deg) translateX(-8px)}
.contact-showcase-media.contact-cycle-0 .contact-video-card-1{z-index:2;opacity:.82;filter:blur(.7px);transform:translate(-50%,-50%) rotate(5deg) translateX(38px) translateY(-12px)}
.contact-showcase-media.contact-cycle-0 .contact-video-card-2{z-index:1;opacity:.62;filter:blur(1px);transform:translate(-50%,-50%) rotate(11deg) translateX(72px) translateY(18px)}
.contact-showcase-media.contact-cycle-1 .contact-video-card-1{z-index:3;opacity:1;filter:none;transform:translate(-50%,-50%) rotate(5deg) translateX(-8px) translateY(-6px)}
.contact-showcase-media.contact-cycle-1 .contact-video-card-2{z-index:2;opacity:.82;filter:blur(.7px);transform:translate(-50%,-50%) rotate(11deg) translateX(38px) translateY(8px)}
.contact-showcase-media.contact-cycle-1 .contact-video-card-0{z-index:1;opacity:.62;filter:blur(1px);transform:translate(-50%,-50%) rotate(-8deg) translateX(72px) translateY(12px)}
.contact-showcase-media.contact-cycle-2 .contact-video-card-2{z-index:3;opacity:1;filter:none;transform:translate(-50%,-50%) rotate(11deg) translateX(-8px) translateY(-6px)}
.contact-showcase-media.contact-cycle-2 .contact-video-card-0{z-index:2;opacity:.82;filter:blur(.7px);transform:translate(-50%,-50%) rotate(-8deg) translateX(38px) translateY(8px)}
.contact-showcase-media.contact-cycle-2 .contact-video-card-1{z-index:1;opacity:.62;filter:blur(1px);transform:translate(-50%,-50%) rotate(5deg) translateX(72px) translateY(12px)}
.contact-video-empty{width:100%;min-height:420px;border:1px dashed rgba(255,255,255,.15);border-radius:28px;display:flex;align-items:center;justify-content:center;padding:30px;color:#858c88;text-align:center}
@media(max-width:900px){
 .contact-showcase-grid{grid-template-columns:1fr;gap:48px}
 .contact-showcase-copy h2{font-size:clamp(40px,12vw,64px)}
 .contact-showcase-media{min-height:470px;transform:translateX(-18px)}
 .contact-video-card{width:min(64%,300px)}
}
@media(max-width:560px){
 .contact-showcase-items{grid-template-columns:1fr}
 .contact-showcase-media{min-height:410px;margin-top:-8px}
 .contact-video-card{width:66%;border-radius:22px}
 .contact-showcase-media{transform:translateX(-8px)}
 .contact-video-card-0{transform:translate(-50%,-50%) rotate(-6deg) translateX(-5px)}
 .contact-video-card-1{transform:translate(-50%,-50%) rotate(4deg) translateX(22px) translateY(-5px);opacity:.78}
 .contact-video-card-2{transform:translate(-50%,-50%) rotate(8deg) translateX(42px) translateY(12px);opacity:.58}
 .contact-showcase-media.contact-cycle-0 .contact-video-card-0{transform:translate(-50%,-50%) rotate(-6deg) translateX(-5px)}
 .contact-showcase-media.contact-cycle-0 .contact-video-card-1{transform:translate(-50%,-50%) rotate(4deg) translateX(22px) translateY(-5px)}
 .contact-showcase-media.contact-cycle-0 .contact-video-card-2{transform:translate(-50%,-50%) rotate(8deg) translateX(42px) translateY(12px)}
 .contact-showcase-media.contact-cycle-1 .contact-video-card-1{transform:translate(-50%,-50%) rotate(4deg) translateX(-5px) translateY(-4px)}
 .contact-showcase-media.contact-cycle-1 .contact-video-card-2{transform:translate(-50%,-50%) rotate(8deg) translateX(22px) translateY(8px)}
 .contact-showcase-media.contact-cycle-1 .contact-video-card-0{transform:translate(-50%,-50%) rotate(-6deg) translateX(42px) translateY(10px)}
 .contact-showcase-media.contact-cycle-2 .contact-video-card-2{transform:translate(-50%,-50%) rotate(8deg) translateX(-5px) translateY(-4px)}
 .contact-showcase-media.contact-cycle-2 .contact-video-card-0{transform:translate(-50%,-50%) rotate(-6deg) translateX(22px) translateY(8px)}
 .contact-showcase-media.contact-cycle-2 .contact-video-card-1{transform:translate(-50%,-50%) rotate(4deg) translateX(42px) translateY(10px)}
 .contact-video-callout{align-items:flex-start}
}

/* Administradores — projetos */
.admin-projects{margin-top:30px;padding-top:22px;border-top:1px solid rgba(255,255,255,.13)}
.admin-projects-label{margin-bottom:12px}
.admin-project-item{display:inline-flex;vertical-align:top;align-items:center;gap:12px;min-height:34px;margin:0 22px 12px 0}
.admin-project-photo{width:42px;height:42px;border-radius:50%;object-fit:cover;display:block;border:1px solid rgba(255,255,255,.14);background:#111}
.admin-project-handle{font-size:16px;line-height:1.2;font-weight:400;color:#aeb3b0;letter-spacing:0}
@media(max-width:800px){.admin-projects{margin-top:24px;padding-top:18px}.admin-project-item{margin-right:16px;margin-bottom:10px}.admin-project-photo{width:38px;height:38px}.admin-project-handle{font-size:15px;font-weight:400}}

.ntz-admin-project-toggle{display:flex!important;align-items:center;gap:7px;margin:0 0 12px;font-weight:600!important;color:#1d2327;font-size:13px}.ntz-admin-project-toggle input{width:auto!important;margin:0!important}

/* Metrics: visual mais editorial e natural */
.metrics{
  gap:0;
  margin-top:58px;
  padding:0;
  border-top:1px solid rgba(255,255,255,.12);
  border-bottom:1px solid rgba(255,255,255,.12);
}
.metric{
  min-height:190px;
  padding:30px 30px 28px 28px;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  overflow:visible;
  transition:transform .45s cubic-bezier(.22,1,.36,1),background .35s ease;
}
.metric + .metric{border-left:1px solid rgba(255,255,255,.10)}
.metric::before,.metric::after{display:none}
.metric:hover{
  transform:translateY(-3px);
  border-color:transparent;
  background:rgba(255,255,255,.025);
  box-shadow:none;
}
.metric-top{position:relative;display:block;min-height:0;padding-left:0}
.metric-icon{
  width:38px;height:38px;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  margin-bottom:22px;
  color:#a9e9f8;
  background:transparent;
  border:1px solid rgba(105,224,254,.28);
  box-shadow:none;
  transition:transform .5s cubic-bezier(.22,1,.36,1),border-color .35s ease,color .35s ease;
}
.metric:hover .metric-icon{transform:translateY(-3px);background:transparent;border-color:rgba(105,224,254,.55);color:var(--accent)}
.metric-icon svg{width:18px;height:18px}
.metric strong{
  display:block;
  font-size:clamp(46px,5.2vw,70px);
  line-height:.9;
  letter-spacing:-.075em;
  font-variant-numeric:tabular-nums;
  color:#f2f3f0;
  transition:transform .5s cubic-bezier(.22,1,.36,1),color .35s ease;
}
.metric:hover strong{transform:translateX(3px);color:#fff}
.metric>span{
  display:block;
  max-width:250px;
  color:#929895;
  font-size:13px;
  line-height:1.45;
  margin-top:17px;
  letter-spacing:0;
}
@media(max-width:800px){
  .metrics{
    margin-top:40px;
    border-top:1px solid rgba(255,255,255,.12);
    border-bottom:1px solid rgba(255,255,255,.12);
  }
  .metric,.metric:not(:first-child){
    min-height:0;
    width:100%;
    padding:27px 6px 28px;
    border:0;
    border-radius:0;
  }
  .metric + .metric{border-left:0;border-top:1px solid rgba(255,255,255,.10)}
  .metric-icon{margin-bottom:18px}
  .metric strong{font-size:clamp(48px,15vw,68px)}
  .metric>span{max-width:280px;margin-top:15px}
}

/* Projetos dos administradores — pilha horizontal com revelação de @ */
.admin-directory .admin-projects{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:0;
  min-height:54px;
  overflow:visible;
}
.admin-directory .admin-projects-label{
  flex:0 0 100%;
  width:100%;
  margin:0 0 28px;
  position:relative;
  z-index:5;
}
.admin-directory .admin-project-item{
  position:relative;
  flex:0 0 48px;
  width:48px;
  min-height:48px;
  height:48px;
  margin:0 0 10px 12px;
  padding:0;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  outline:none;
  z-index:1;
  transform:none;
  filter:none;
  opacity:1;
  transition:z-index 0s, transform .72s cubic-bezier(.22,1,.36,1), opacity .72s ease;
}
.admin-directory .admin-projects-label + .admin-project-item{margin-left:0;z-index:2}
.admin-directory .admin-project-item + .admin-project-item{z-index:1;opacity:.86;margin-left:-14px}
.admin-directory .admin-project-item + .admin-project-item .admin-project-photo{filter:blur(.7px)}
.admin-directory .admin-project-photo{
  width:48px;
  height:48px;
  flex:0 0 48px;
  border-radius:50%;
  object-fit:cover;
  display:block;
  border:1px solid rgba(255,255,255,.16);
  background:#111;
  transition:transform .72s cubic-bezier(.22,1,.36,1), filter .72s ease, box-shadow .72s cubic-bezier(.22,1,.36,1);
}
.admin-directory .admin-project-handle{
  position:absolute;
  left:43px;
  top:50%;
  transform:translateY(-50%) translateX(-8px);
  white-space:nowrap;
  opacity:0;
  pointer-events:none;
  color:#d9ddda;
  background:rgba(10,12,12,.94);
  border:1px solid rgba(255,255,255,.10);
  border-radius:999px;
  padding:7px 11px;
  font-size:14px;
  line-height:1;
  font-weight:400;
  letter-spacing:0;
  transition:opacity .55s ease, transform .72s cubic-bezier(.22,1,.36,1);
  z-index:20;
}
.admin-directory .admin-project-item:hover,
.admin-directory .admin-project-item:focus-visible,
.admin-directory .admin-project-item:focus-within{
  z-index:30;
  transform:translateY(-1px);
}
.admin-directory .admin-project-item:hover .admin-project-photo,
.admin-directory .admin-project-item:focus-visible .admin-project-photo,
.admin-directory .admin-project-item:focus-within .admin-project-photo{
  transform:scale(1.06);
  filter:none;
  box-shadow:0 8px 24px rgba(0,0,0,.24);
}
.admin-directory .admin-project-item:hover .admin-project-handle,
.admin-directory .admin-project-item:focus-visible .admin-project-handle,
.admin-directory .admin-project-item:focus-within .admin-project-handle{
  opacity:1;
  transform:translateY(-50%) translateX(0);
}
.admin-directory .admin-project-item:focus-visible{
  outline:2px solid rgba(105,224,254,.45);
  outline-offset:4px;
  border-radius:50%;
}
@media(max-width:800px){
  .admin-directory .admin-projects{min-height:50px}
  .admin-directory .admin-project-item{flex-basis:44px;width:44px;height:44px;margin-left:10px;margin-bottom:8px}
  .admin-directory .admin-projects-label + .admin-project-item{margin-left:0}
  .admin-directory .admin-project-photo{width:44px;height:44px;flex-basis:44px}
  .admin-directory .admin-project-handle{left:38px;font-size:13px;padding:7px 10px}
}

/* Projetos — foco automático em sequência, sem alterar a interação manual */
.admin-directory .admin-projects.has-auto-focus .admin-project-item:not(.is-auto-active) .admin-project-photo{
  filter:blur(1.1px) saturate(.72);
  opacity:.78;
}
.admin-directory .admin-projects .admin-project-item.is-auto-active{
  z-index:35;
  transform:translateY(-1px);
}
.admin-directory .admin-projects .admin-project-item.is-auto-active .admin-project-photo{
  transform:scale(1.045);
  filter:none;
  opacity:1;
  box-shadow:0 8px 24px rgba(0,0,0,.24);
}
.admin-directory .admin-projects .admin-project-item.is-auto-active .admin-project-handle{
  opacity:1;
  transform:translateY(-50%) translateX(0);
}
.admin-directory .admin-projects .admin-project-item:hover,
.admin-directory .admin-projects .admin-project-item:focus-visible,
.admin-directory .admin-projects .admin-project-item:focus-within{
  z-index:40;
}
@media(max-width:800px){
  .admin-directory .admin-projects.has-auto-focus .admin-project-item:not(.is-auto-active) .admin-project-photo{filter:blur(.7px) saturate(.78)}
}

/* Ajuste das métricas: ícones neutros, maiores e mais visíveis */
.metric-icon{
  width:50px;
  height:50px;
  border-radius:50%;
  margin-bottom:20px;
  color:#e4e6e3;
  background:rgba(255,255,255,.025);
  border:1px solid rgba(255,255,255,.28);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.025);
}
.metric:hover .metric-icon{
  transform:translateY(-2px);
  background:rgba(255,255,255,.045);
  border-color:rgba(255,255,255,.48);
  color:#fff;
}
.metric-icon svg{width:25px;height:25px;stroke-width:1.7}
@media(max-width:800px){
  .metric-icon{width:50px;height:50px;margin-bottom:18px}
  .metric-icon svg{width:25px;height:25px}
}


/* Animações de entrada suaves ao rolar; sem deslocar o layout. */
@media (prefers-reduced-motion: no-preference) {
  .scroll-reveal { opacity: 0; transition: opacity .72s ease, transform .82s cubic-bezier(.22,1,.36,1); transition-delay: var(--reveal-delay, 0ms); will-change: opacity, transform; }
  .scroll-reveal.reveal-up { transform: translate3d(0, 26px, 0); }
  .scroll-reveal.reveal-left { transform: translate3d(-28px, 0, 0); }
  .scroll-reveal.reveal-right { transform: translate3d(28px, 0, 0); }
  .scroll-reveal.is-revealed { opacity: 1; transform: translate3d(0,0,0); }
}
@media (prefers-reduced-motion: reduce) {
  .scroll-reveal { opacity: 1 !important; transform: none !important; transition: none !important; }
}
/* Centraliza a marca na área Quem somos em telas pequenas. */
@media (max-width: 800px) {
  .about-logo-wrap { display:flex; justify-content:center; align-items:center; width:100%; margin-inline:auto; text-align:center; }
  .about-logo-wrap .about-logo { display:block; margin-left:auto !important; margin-right:auto !important; position:relative; left:auto; right:auto; transform:none; }
}

/* Revelação cinematográfica aprimorada: movimento mais perceptível, sem máscaras que cortem conteúdo. */
@media (prefers-reduced-motion: no-preference) {
  .cinematic-reveal {
    opacity: 0;
    clip-path: none !important;
    filter: none !important;
    transition: opacity .95s cubic-bezier(.16,1,.3,1), transform 1.05s cubic-bezier(.16,1,.3,1);
    transition-delay: var(--cinematic-delay, 0ms);
    will-change: opacity, transform;
  }
  .cinematic-reveal.cinematic-up { transform: translate3d(0, 42px, 0) scale(.985); }
  .cinematic-reveal.cinematic-left,
  .cinematic-reveal.cinematic-right { transform: translate3d(0, 42px, 0) scale(.985); }
  .cinematic-reveal.cinematic-in { opacity: 1; transform: translate3d(0,0,0) scale(1); clip-path: none !important; filter: none !important; }
  .hero-cinematic-enter .hero-content h1 { animation: ntzHeroTitleReveal 1.25s cubic-bezier(.19,1,.22,1) both; }
  .hero-cinematic-enter .hero-content p { animation: ntzHeroCopyReveal 1.05s .22s cubic-bezier(.19,1,.22,1) both; }
  .hero-cinematic-enter .hero-scroll-action { animation: ntzHeroCopyReveal .9s .42s cubic-bezier(.19,1,.22,1) both; }
}
@keyframes ntzHeroTitleReveal {
  from { opacity: 0; transform: translate3d(0, 42px, 0) scale(.97); filter: blur(10px); clip-path: inset(0 0 28% 0); }
  to { opacity: 1; transform: translate3d(0,0,0) scale(1); filter: blur(0); clip-path: inset(0 0 0 0); }
}
@keyframes ntzHeroCopyReveal {
  from { opacity: 0; transform: translate3d(0,22px,0); filter: blur(5px); }
  to { opacity: 1; transform: translate3d(0,0,0); filter: blur(0); }
}
@media (prefers-reduced-motion: reduce) {
  .cinematic-reveal, .cinematic-reveal.cinematic-in { opacity: 1; transform: none; clip-path: none; filter: none; transition: none; }
}

/* Ajustes reais para telas estreitas: manter cards, bordas e perfis dentro da viewport. */
@media (max-width: 560px) {
  .contact-showcase { overflow: visible; }
  .contact-showcase-media {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    transform: none;
    overflow: visible;
  }
  .contact-video-card {
    width: 54%;
    max-width: 270px;
    border-radius: 18px;
  }
  .contact-showcase-media.contact-cycle-0 .contact-video-card-0 { transform: translate(-50%,-50%) rotate(-3deg) translateX(-2px); }
  .contact-showcase-media.contact-cycle-0 .contact-video-card-1 { transform: translate(-50%,-50%) rotate(2deg) translateX(10px) translateY(-3px); }
  .contact-showcase-media.contact-cycle-0 .contact-video-card-2 { transform: translate(-50%,-50%) rotate(4deg) translateX(18px) translateY(6px); }
  .contact-showcase-media.contact-cycle-1 .contact-video-card-1 { transform: translate(-50%,-50%) rotate(2deg) translateX(-2px) translateY(-3px); }
  .contact-showcase-media.contact-cycle-1 .contact-video-card-2 { transform: translate(-50%,-50%) rotate(4deg) translateX(10px) translateY(4px); }
  .contact-showcase-media.contact-cycle-1 .contact-video-card-0 { transform: translate(-50%,-50%) rotate(-3deg) translateX(18px) translateY(6px); }
  .contact-showcase-media.contact-cycle-2 .contact-video-card-2 { transform: translate(-50%,-50%) rotate(4deg) translateX(-2px) translateY(-3px); }
  .contact-showcase-media.contact-cycle-2 .contact-video-card-0 { transform: translate(-50%,-50%) rotate(-3deg) translateX(10px) translateY(4px); }
  .contact-showcase-media.contact-cycle-2 .contact-video-card-1 { transform: translate(-50%,-50%) rotate(2deg) translateX(18px) translateY(6px); }
}
@media (max-width: 360px) {
  .container { width: calc(100% - 24px); }
  .admin-profile-card, .admin-profile-main, .admin-profile-body { min-width: 0; width: 100%; }
  .admin-profile-photo { width: clamp(88px, 44vw, 140px); height: clamp(88px, 44vw, 140px); margin-left: 0; }
  .admin-profile-photo.story-active::before { inset: -6px; padding: 4px; }
  .admin-profile-body h3 { font-size: clamp(20px, 7vw, 26px); overflow-wrap: anywhere; }
  .admin-profile-role, .admin-profile-location, .admin-profile-handle { max-width: 100%; overflow-wrap: anywhere; }
  .admin-profile-role { font-size: 13px; }
  .admin-profile-location, .admin-profile-handle { font-size: 13px; }
  .admin-profile-icon, .admin-instagram-icon { flex: 0 0 18px; width: 18px; height: 18px; }
}

/* Proteção dos componentes inteiros: os efeitos não podem recortar o conteúdo interno. */
@media (prefers-reduced-motion: no-preference) {
  .contact-showcase-media.cinematic-reveal,
  .admin-profile-card.cinematic-reveal {
    clip-path: none !important;
    filter: none !important;
    transform: translate3d(0, 18px, 0);
  }
  .contact-showcase-media.cinematic-reveal.cinematic-in,
  .admin-profile-card.cinematic-reveal.cinematic-in {
    transform: translate3d(0, 0, 0);
  }
}
@media (max-width: 800px) {
  .admin-directory, .admin-profile-card, .admin-profile-main, .admin-profile-body,
  .contact-showcase, .contact-showcase-grid, .contact-showcase-media {
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
    clip-path: none !important;
  }
  .admin-profile-card { overflow: visible; }
}


/* NTZ cinematic motion: GTA VI-inspired pacing, with no clipping masks or layout shifts. */
@media (prefers-reduced-motion: no-preference) {
  .cinematic-reveal {
    opacity: 0;
    clip-path: none !important;
    transition:
      opacity 1.05s cubic-bezier(.16, 1, .3, 1),
      transform 1.15s cubic-bezier(.16, 1, .3, 1),
      filter 1.05s cubic-bezier(.16, 1, .3, 1);
    transition-delay: var(--cinematic-delay, 0ms);
    will-change: opacity, transform, filter;
  }
  .cinematic-reveal:not(.contact-showcase-media) {
    transform: translate3d(0, 38px, 0) scale(.985);
    filter: blur(5px);
  }
  .cinematic-reveal.cinematic-in:not(.contact-showcase-media) {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
    filter: blur(0);
  }
  /* Keep the contact collage's original positioning transforms intact. */
  .contact-showcase-media.cinematic-reveal {
    opacity: 0;
    transform: none !important;
    filter: saturate(.78) brightness(.82);
    transition: opacity 1.15s cubic-bezier(.16, 1, .3, 1), filter 1.15s cubic-bezier(.16, 1, .3, 1);
  }
  .contact-showcase-media.cinematic-reveal.cinematic-in {
    opacity: 1;
    transform: none !important;
    filter: saturate(1) brightness(1);
  }
  /* Dramatic but clean title reveal; deliberately avoids clip-path masks. */
  .hero-cinematic-enter .hero-content h1 {
    animation: ntzHeroTitleReveal 1.45s cubic-bezier(.16, 1, .3, 1) both;
  }
  .hero-cinematic-enter .hero-content p {
    animation: ntzHeroCopyReveal 1.1s .2s cubic-bezier(.16, 1, .3, 1) both;
  }
  .hero-cinematic-enter .hero-scroll-action {
    animation: ntzHeroCopyReveal .95s .42s cubic-bezier(.16, 1, .3, 1) both;
  }
  /* Editorial-style image cards: gentle focus transition without cropping their edges. */
  .admin-profile-card.cinematic-reveal {
    transform: translate3d(0, 28px, 0) scale(.99);
    filter: blur(4px);
  }
  .admin-profile-card.cinematic-reveal.cinematic-in {
    transform: translate3d(0, 0, 0) scale(1);
    filter: blur(0);
  }
}
@keyframes ntzHeroTitleReveal {
  0% { opacity: 0; transform: translate3d(0, 46px, 0) scale(.96); filter: blur(12px); text-shadow: 0 0 32px rgba(105, 224, 254, .18); }
  72% { opacity: 1; filter: blur(0); }
  100% { opacity: 1; transform: translate3d(0, 0, 0) scale(1); filter: blur(0); text-shadow: 0 0 0 rgba(105, 224, 254, 0); }
}
@keyframes ntzHeroCopyReveal {
  0% { opacity: 0; transform: translate3d(0, 24px, 0); filter: blur(6px); }
  100% { opacity: 1; transform: translate3d(0, 0, 0); filter: blur(0); }
}
@media (prefers-reduced-motion: reduce) {
  .cinematic-reveal,
  .cinematic-reveal.cinematic-in,
  .contact-showcase-media.cinematic-reveal,
  .contact-showcase-media.cinematic-reveal.cinematic-in,
  .admin-profile-card.cinematic-reveal,
  .admin-profile-card.cinematic-reveal.cinematic-in {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
    clip-path: none !important;
    transition: none !important;
  }
}

/* NTZ cinematic pass 2: more expressive editorial motion, without clipping content. */
@media (prefers-reduced-motion: no-preference) {
  .cinematic-reveal:not(.contact-showcase-media) {
    opacity: 0;
    filter: blur(8px);
    transition:
      opacity 1.05s cubic-bezier(.16, 1, .3, 1),
      transform 1.2s cubic-bezier(.16, 1, .3, 1),
      filter 1.05s cubic-bezier(.16, 1, .3, 1);
    transition-delay: var(--cinematic-delay, 0ms);
    will-change: opacity, transform, filter;
  }
  .cinematic-reveal.cinematic-up:not(.contact-showcase-media) {
    transform: translate3d(0, 58px, 0) scale(.975);
  }
  .cinematic-reveal.cinematic-left:not(.contact-showcase-media) {
    transform: translate3d(-42px, 22px, 0) scale(.98);
  }
  .cinematic-reveal.cinematic-right:not(.contact-showcase-media) {
    transform: translate3d(42px, 22px, 0) scale(.98);
  }
  .cinematic-reveal.cinematic-in:not(.contact-showcase-media) {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
    filter: blur(0);
  }
  .hero-cinematic-enter .hero-content h1 {
    animation: ntzHeroTitleReveal 1.7s cubic-bezier(.16, 1, .3, 1) both;
    text-shadow: 0 0 0 rgba(105,224,254,0);
  }
  .hero-cinematic-enter .hero-content p {
    animation: ntzHeroCopyReveal 1.25s .28s cubic-bezier(.16, 1, .3, 1) both;
  }
  .hero-cinematic-enter .hero-scroll-action {
    animation: ntzHeroCopyReveal 1s .55s cubic-bezier(.16, 1, .3, 1) both;
  }
  .section-head h2,
  .admin-section-head h2,
  .contact-showcase-copy h2,
  #quem-somos .about-content h2 {
    text-wrap: balance;
  }
  .section-head h2::after,
  .admin-section-head h2::after,
  .contact-showcase-copy h2::after,
  #quem-somos .about-content h2::after {
    content: "";
    display: block;
    width: clamp(44px, 7vw, 82px);
    height: 2px;
    margin-top: 16px;
    background: linear-gradient(90deg, #69e0fe, rgba(105,224,254,0));
    transform: scaleX(.35);
    transform-origin: left center;
    opacity: .6;
    transition: transform .85s cubic-bezier(.16,1,.3,1), opacity .85s ease;
  }
  .cinematic-reveal.cinematic-in h2::after,
  .section-head h2:hover::after,
  .admin-section-head h2:hover::after,
  .contact-showcase-copy h2:hover::after,
  #quem-somos .about-content h2:hover::after {
    transform: scaleX(1);
    opacity: 1;
  }
  .admin-profile-card,
  .post,
  .feature,
  .contact-video-card {
    transition: box-shadow .45s ease, border-color .45s ease, filter .45s ease;
  }
  .post:hover,
  .feature:hover {
    box-shadow: 0 22px 55px rgba(0,0,0,.22), 0 0 0 1px rgba(105,224,254,.2);
  }
  /* No cyan/blue hover ring on team/admin profile cards. */
  .admin-profile-card:hover {
    box-shadow: none !important;
    outline: none !important;
    border-color: var(--line) !important;
  }
  .contact-video-card {
    backface-visibility: hidden;
    transition: filter .45s ease, box-shadow .45s ease;
  }
  .contact-showcase-media:hover .contact-video-card {
    filter: saturate(1.08) brightness(1.04);
  }
}
@keyframes ntzHeroTitleReveal {
  0% { opacity: 0; transform: translate3d(0, 58px, 0) scale(.94); filter: blur(14px); letter-spacing: .035em; }
  68% { opacity: 1; filter: blur(0); }
  100% { opacity: 1; transform: translate3d(0,0,0) scale(1); filter: blur(0); letter-spacing: normal; }
}
@media (prefers-reduced-motion: reduce) {
  .cinematic-reveal, .cinematic-reveal.cinematic-in { opacity: 1 !important; transform: none !important; filter: none !important; transition: none !important; }
  .section-head h2::after, .admin-section-head h2::after, .contact-showcase-copy h2::after, #quem-somos .about-content h2::after { transition: none !important; }
}

/* Footer layout polish: clear hierarchy and consistent spacing. */
.footer{padding:30px 0 34px;border-top:1px solid var(--line);color:var(--muted);font-size:13px}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-width:0}
.footer-brand{display:flex;align-items:baseline;flex-wrap:wrap;column-gap:14px;row-gap:5px;min-width:0}
.footer-brand strong{display:block;color:#fff;font-size:14px;font-weight:800;letter-spacing:.035em;line-height:1.4;white-space:nowrap}
.footer-brand span{display:block;color:var(--muted);line-height:1.6}
.footer-meta{color:var(--muted);text-align:right;line-height:1.6;max-width:100%;overflow-wrap:anywhere}
@media(max-width:800px){
 .footer{padding:26px 0 calc(26px + env(safe-area-inset-bottom))}
 .footer-inner{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
 .footer-inner>div+div{margin-top:0}
 .footer-brand{display:flex;flex-direction:column;align-items:flex-start;gap:3px}
 .footer-brand strong{font-size:14px}
 .footer-meta{text-align:left;font-size:12px}
}


/* Nortistaz 1.4.1 | refinamento visual da home sem alterar disposição e animações */
:root { color-scheme: dark; }
::selection { background: rgba(105,224,254,.28); color: #fff; }
a:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }

/* Navegação mais limpa, leitura melhor e contorno sem brilho circular. */
.nav-links {
  background: rgba(11,14,15,.67);
  border-color: rgba(255,255,255,.15);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.11), 0 14px 45px rgba(0,0,0,.28);
}
.nav-links a { position: relative; letter-spacing: -.012em; }
.nav-links a:hover, .nav-links a:focus-visible {
  background: rgba(255,255,255,.105);
  color: #fff;
}

/* Capa: contraste e precisão tipográfica, mantendo o vídeo sem cortes adicionais. */
.hero h1 {
  text-shadow: 0 3px 36px rgba(0,0,0,.34);
  text-wrap: balance;
}
.hero h1 .hero-year { text-shadow: 0 2px 32px rgba(0,0,0,.34); }
.hero p { color: #d8ddda; line-height: 1.58; text-wrap: pretty; }
.hero-scroll-cue { border-radius: 50%; }
.hero-scroll-cue:focus-visible { outline-offset: 3px; }

/* Continuidade editorial entre as seções sem alterar grid nem tamanhos dos cards. */
#quem-somos {
  position: relative;
  background: #0b0d0e;
  border-top: 0;
}
.admin-section {
  position: relative;
  background: #0b0d0e;
}
.contact-showcase {
  background: #0b0d0e;
  border-bottom: 1px solid rgba(255,255,255,.07);
}
#quem-somos .kicker, .admin-section .kicker, .contact-showcase .kicker {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  width: fit-content;
  line-height: 1.4;
}
#quem-somos .kicker::before, .admin-section .kicker::before, .contact-showcase .kicker::before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 2px;
  flex: 0 0 20px;
  background: var(--accent);
  border-radius: 2px;
}
.about-copy { color: #c4cbc8; }
.about-copy p + p { margin-top: 1.25em; }
.about-logo { filter: drop-shadow(0 18px 40px rgba(0,0,0,.24)); }

/* Acabamento dos links de contato. Não tocar nas cartas de vídeo. */
.contact-showcase-item {
  background: linear-gradient(135deg,rgba(255,255,255,.052),rgba(255,255,255,.013));
  border-color: rgba(255,255,255,.135);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.045);
}
.contact-showcase-item:hover {
  background: linear-gradient(135deg,rgba(255,255,255,.085),rgba(255,255,255,.03));
  border-color: rgba(255,255,255,.30);
}
.contact-showcase-item strong { letter-spacing: -.025em; }

/* Equipe: hierarquia de títulos e divisórias, sem sombras azuis no hover. */
.admin-section-head .intro { color: #b1b8b4; line-height: 1.65; }
.admin-profile-card { border-bottom-color: rgba(255,255,255,.14); }
.admin-profile-card:hover { box-shadow: none !important; outline: none !important; }
.admin-profile-body h3 { text-wrap: balance; }
.admin-profile-role { color: #c3cac6; }
.admin-profile-card a:focus-visible { outline-color: #fff; }

/* Rodapé minimalista com melhor ritmo visual em desktop e celular. */
.footer {
  padding-top: 42px;
  padding-bottom: 42px;
  background: #080a0b;
  border-top: 1px solid rgba(255,255,255,.14);
}
.footer-inner { gap: 20px 36px; }
.footer-brand { row-gap: 7px; }
.footer-brand strong { font-size: 16px; letter-spacing: .11em; }
.footer-brand span { color: #aab2ae; }
.footer-meta { color: #8f9792; }
@media (max-width: 800px) {
  .footer { padding: 30px 0 calc(32px + env(safe-area-inset-bottom)); }
  .footer-brand strong { font-size: 15px; }
  .footer-inner { gap: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .nav-links, .nav-links a, .contact-showcase-item { transition: none; }
}

/* ================================================================
   NORTISTAZ • Hero 1.8.0 | Correção de enquadramento projetado
   Base original MyHood: rotate(30deg) rotateX(-40deg) rotateY(30deg).
   Inclui compensação do achatamento do plano (não dos arquivos de vídeo)
   para reproduzir os cartões mais baixos da referência.
   ================================================================ */
.hero {
  border-bottom: 0 !important;
  background: #0b0d0e;
}
.hero .hero-video-wall.hero-collage {
  position: absolute;
  inset: 0;
  z-index: 0;
  display: block;
  overflow: hidden;
  background: #0b0d0e;
  pointer-events: none;
  perspective: none;
}
.hero .hero-video-wall.hero-collage .hero-column-stage {
  --w: clamp(255px, 17vw, 305px);
  --gap: 24px;
  position: absolute;
  inset: auto;
  left: 50%;
  top: 50%;
  display: grid;
  grid-template-columns: repeat(5, var(--w));
  column-gap: var(--gap);
  align-items: stretch;
  width: calc(5 * var(--w) + 4 * var(--gap));
  min-width: 0;
  height: 3200px;
  transform-origin: center center;
  /* A mesma rotação 3D do Framer, com compressão vertical da câmera. Isso preserva a direção
     das arestas originais e achata apenas a altura projetada dos cartões. */
  transform: translate(-50%, -50%) rotate(30deg) rotateX(-40deg) rotateY(30deg) scaleY(.70);
  transform-style: preserve-3d;
}
.hero .hero-collage .hero-video-column {
  position: relative;
  width: var(--w);
  height: 3200px;
  min-width: 0;
  overflow: hidden;
  contain: paint;
}
.hero .hero-collage .hero-video-column-run {
  display: flex;
  flex-direction: column;
  gap: 0;
  width: 100%;
  --phase: -260px;
  transform: translateY(var(--phase));
  animation: ntzHero18Flow 126s linear infinite;
  will-change: transform;
}
.hero .hero-collage .hero-video-column:nth-child(2) .hero-video-column-run {
  --phase: -660px;
  animation-direction: reverse;
  animation-duration: 135s;
}
.hero .hero-collage .hero-video-column:nth-child(3) .hero-video-column-run {
  --phase: -400px;
  animation-duration: 132s;
}
.hero .hero-collage .hero-video-column:nth-child(4) .hero-video-column-run {
  --phase: -890px;
  animation-direction: reverse;
  animation-duration: 138s;
}
.hero .hero-collage .hero-video-column:nth-child(5) .hero-video-column-run {
  --phase: -180px;
  animation-duration: 129s;
}
.hero .hero-collage .hero-video-sequence {
  display: flex;
  flex-direction: column;
  flex: 0 0 auto;
  width: 100%;
  gap: 24px;
  padding-bottom: 24px;
}
.hero .hero-collage .hero-video-column .video-tile {
  position: relative;
  top: auto;
  left: auto;
  display: block;
  flex: 0 0 auto;
  width: 100%;
  height: auto;
  aspect-ratio: 9 / 16;
  margin: 0;
  border: 0;
  border-radius: 25px;
  overflow: hidden;
  background: #101411 center / cover no-repeat;
  box-shadow: none;
  backface-visibility: hidden;
}
.hero .hero-collage .hero-video-column .video-tile video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  background: #101411;
  filter: brightness(.88) saturate(.93);
}
/* A distância de uma das quatro sequências equivale a 25% do run;
   o último quadro e o primeiro são idênticos, sem salto de animação. */
@keyframes ntzHero18Flow {
  from { transform: translateY(var(--phase)); }
  to { transform: translateY(calc(var(--phase) - 25%)); }
}
.hero:has(.hero-collage) .hero-overlay {
  background:
    linear-gradient(180deg,
      #050906 0%, #050906 9%, rgba(5,9,6,.96) 18%,
      rgba(5,9,6,.62) 31%, rgba(5,9,6,.32) 42%,
      rgba(5,9,6,.28) 53%, rgba(5,9,6,.40) 67%,
      rgba(5,9,6,.76) 82%, #050906 100%),
    linear-gradient(90deg,
      rgba(5,9,6,.87) 0%, rgba(5,9,6,.48) 10%,
      rgba(5,9,6,0) 24%, rgba(5,9,6,0) 76%,
      rgba(5,9,6,.48) 90%, rgba(5,9,6,.87) 100%);
}
.ticker { display: none !important; }
.cta.contact-showcase {
  border-top: 0 !important;
  border-bottom: 0 !important;
  background: #0b0d0e !important;
}
.cta.contact-showcase::before { content: none !important; display: none !important; }
@media (max-width: 700px) {
  .hero .hero-video-wall.hero-collage .hero-column-stage {
    --w: 260px;
    --gap: 22px;
    transform: translate(-50%, -50%) rotate(30deg) rotateX(-40deg) rotateY(30deg) scaleY(.70) scale(.84);
  }
  .hero .hero-collage .hero-video-column .video-tile { border-radius: 22px; }
  .hero .hero-collage .hero-video-column-run { animation-duration: 155s; }
  .hero:has(.hero-collage) .hero-overlay {
    background:
      linear-gradient(180deg,
        #050906 0%, #050906 11%, rgba(5,9,6,.96) 21%,
        rgba(5,9,6,.56) 36%, rgba(5,9,6,.32) 49%,
        rgba(5,9,6,.45) 66%, rgba(5,9,6,.84) 83%, #050906 100%),
      linear-gradient(90deg,
        rgba(5,9,6,.72), transparent 19%, transparent 81%, rgba(5,9,6,.72));
  }
}
@media (prefers-reduced-motion: reduce) {
  .hero .hero-collage .hero-video-column-run {
    animation: none !important;
    transform: translateY(var(--phase)) !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  /* CSS antigo desligava a transformação do .video-track; o mosaico
     permanece inclinado, desativando apenas o movimento das colunas. */
  .hero .hero-video-wall.hero-collage .hero-column-stage {
    transform: translate(-50%, -50%) rotate(30deg) rotateX(-40deg) rotateY(30deg) scaleY(.70) !important;
  }
}
@media (max-width: 700px) and (prefers-reduced-motion: reduce) {
  .hero .hero-video-wall.hero-collage .hero-column-stage {
    transform: translate(-50%, -50%) rotate(30deg) rotateX(-40deg) rotateY(30deg) scaleY(.70) scale(.84) !important;
  }
}


/* ================================================================
   NORTISTAZ 1.9.2 | Hero com mesmo fundo do início da seção de contato.
   Sem brilhos azuis, grade, círculos, vinheta ou selo decorativo.
   CSS restrito à primeira tela. Restante do site permanece intacto.
   ================================================================ */
.hero.hero-clean {
  isolation: isolate;
  height: 100svh;
  min-height: 670px;
  position: relative;
  overflow: hidden;
  border: 0;
  background: #0b0d0e;
}
.hero.hero-clean .hero-content {
  position: relative;
  z-index: 2;
  width: min(100%, 1330px);
  max-width: 1330px;
  min-width: 0;
  padding: 82px 28px 92px;
  justify-content: center;
  transform: translateY(-4px);
}
.hero.hero-clean .hero-content h1 {
  width: min(100%, 1280px);
  max-width: 1280px;
  margin: 0 auto 27px;
  font-size: clamp(60px, 7.1vw, 120px);
  line-height: .94;
  font-weight: 900;
  letter-spacing: -.068em;
  color: #f6f8f8;
  text-shadow: none;
  text-align: center;
  overflow-wrap: normal;
  text-wrap: balance;
}
.hero.hero-clean .hero-content h1 .hero-word-moving,
.hero.hero-clean .hero-content h1 .hero-word-tudo,
.hero.hero-clean .hero-content h1 .hero-word-desde,
.hero.hero-clean .hero-content h1 .hero-year {
  display: inline !important;
  font-size: inherit;
  letter-spacing: inherit;
}
.hero.hero-clean .hero-content h1 .hero-break { display: block !important; height: 0; }
.hero.hero-clean .hero-content h1 .hero-word-tudo,
.hero.hero-clean .hero-content h1 .hero-year { margin-left: .12em; }
.hero.hero-clean .hero-content h1 .hero-year {
  color: #69e0fe;
  background: none;
  -webkit-text-fill-color: currentColor;
  text-shadow: none;
}
.hero.hero-clean .hero-content p {
  width: min(100%, 590px);
  max-width: 590px;
  margin: 0 auto;
  color: #b8c0c1;
  font-size: clamp(16px, 1.12vw, 19px);
  line-height: 1.65;
  letter-spacing: -.01em;
  text-align: center;
  text-wrap: pretty;
}
.hero.hero-clean .hero-scroll-action {
  position: absolute;
  z-index: 4;
  left: 0;
  right: 0;
  bottom: clamp(25px, 5vh, 55px);
  width: 100%;
  margin: 0;
  display: flex;
  justify-content: center;
}
.hero.hero-clean .hero-scroll-link {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 13px;
  color: #f0f2f2;
  text-decoration: none;
  border-radius: 12px;
}
.hero.hero-clean .hero-scroll-label {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .18em;
  color: #aeb5b6;
  line-height: 1.3;
}
.hero.hero-clean .hero-scroll-cue {
  width: 47px;
  height: 47px;
  border-radius: 50%;
  color: #f0f2f2;
  display: grid;
  place-items: center;
  border: 1px solid rgba(235,241,241,.28);
  background: transparent;
  box-shadow: none;
  transition: transform .3s ease, border-color .3s ease, background-color .3s ease;
}
.hero.hero-clean .hero-scroll-cue svg {
  display: block;
  width: 22px;
  height: 22px;
  animation: heroCleanScrollFloat 2.2s ease-in-out infinite;
}
.hero.hero-clean .hero-scroll-link:hover .hero-scroll-cue,
.hero.hero-clean .hero-scroll-link:focus-visible .hero-scroll-cue {
  transform: translateY(4px);
  border-color: rgba(255,255,255,.72);
  background: rgba(255,255,255,.055);
}
.hero.hero-clean .hero-scroll-link:focus-visible { outline: 2px solid #fff; outline-offset: 7px; }
@keyframes heroCleanScrollFloat {
  0%, 100% { transform: translateY(-2px); }
  50% { transform: translateY(3px); }
}
@media (max-width: 800px) {
  .hero.hero-clean { height: 100svh; min-height: 640px; }
  .hero.hero-clean .hero-content { padding: 110px 16px 104px; transform: translateY(-4px); }
  .hero.hero-clean .hero-content h1 {
    width: min(100%, 740px);
    max-width: 740px;
    font-size: clamp(38px, 8.1vw, 69px);
    line-height: .96;
    margin: 0 auto 23px;
    letter-spacing: -.067em;
  }
  .hero.hero-clean .hero-content p { font-size: 16px; max-width: 390px; line-height: 1.57; }
  .hero.hero-clean .hero-scroll-action { bottom: 35px; }
  .hero.hero-clean .hero-scroll-label { font-size: 9px; }
  .hero.hero-clean .hero-scroll-cue { width: 46px; height: 46px; }
}
@media (max-width: 420px) {
  .hero.hero-clean .hero-content h1 { font-size: clamp(33px, 9.05vw, 39px); }
  .hero.hero-clean .hero-content p { font-size: 15px; max-width: 330px; }
  .hero.hero-clean .hero-scroll-action { bottom: 27px; }
}
@media (prefers-reduced-motion: reduce) {
  .hero.hero-clean .hero-scroll-cue svg { animation: none; }
}


/* 1.9.4 - Cartoes de contato maiores somente no celular. */
@media (max-width: 560px) {
  .contact-showcase .contact-showcase-media {
    width: 100%;
    min-height: clamp(425px, 126vw, 530px);
    margin: 0 auto;
    overflow: visible;
  }
  .contact-showcase .contact-video-card {
    width: min(85%, 335px);
    max-width: none;
    border-radius: 24px;
  }
}


/* ==========================================================
   NORTISTAZ 1.9.5 | Primeira tela com respiro equilibrado no
   celular; CTA de historia proximo do texto, nao no rodape.
   ========================================================== */
@media (max-width: 700px) {
  .hero.hero-clean {
    box-sizing: border-box;
    height: auto;
    min-height: clamp(515px, 79svh, 670px);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: clamp(34px, 6svh, 52px);
    padding: clamp(106px, 15svh, 142px) 16px clamp(58px, 8svh, 78px);
  }
  .hero.hero-clean .hero-content {
    width: 100%;
    max-width: 100%;
    padding: 0;
    margin: 0 auto;
    transform: none;
    flex: 0 0 auto;
  }
  .hero.hero-clean .hero-content h1 {
    margin: 0 auto 20px;
    font-size: clamp(32px, 9.05vw, 43px);
    line-height: .99;
  }
  .hero.hero-clean .hero-content p {
    max-width: 350px;
    margin: 0 auto;
    font-size: 15px;
    line-height: 1.55;
  }
  .hero.hero-clean .hero-scroll-action {
    position: relative;
    left: auto;
    right: auto;
    bottom: auto;
    inset: auto;
    width: auto;
    margin: 0 auto;
    flex: 0 0 auto;
  }
  .hero.hero-clean .hero-scroll-link { gap: 12px; }
}
@media (max-width: 360px) {
  .hero.hero-clean { gap: 30px; padding-left: 12px; padding-right: 12px; }
  .hero.hero-clean .hero-content h1 { font-size: clamp(30px, 9.05vw, 35px); }
}

/* ===============================================================
   NORTISTAZ 1.9.6 — Troca instantanea, suave, sem deslocamento.
   Posicoes da pilha permanecem FIXAS: nao animar translate/rotate
   nem z-index. A entrada da nova frente leva somente 160 ms.
   =============================================================== */
.contact-showcase-media .contact-video-card {
  transition: opacity 160ms ease-out, filter 160ms ease-out !important;
  backface-visibility: hidden;
  will-change: opacity;
}
/* As transformacoes pertencem ao cartao, nao ao ciclo ativo. */
.contact-showcase-media .contact-video-card-0 {
  transform: translate(-50%, -50%) rotate(-3deg) translateX(-5px) !important;
}
.contact-showcase-media .contact-video-card-1 {
  transform: translate(-50%, -50%) rotate(2deg) translateX(7px) !important;
}
.contact-showcase-media .contact-video-card-2 {
  transform: translate(-50%, -50%) rotate(5deg) translateX(14px) !important;
}
.contact-showcase-media .contact-video-card.ntz-card-enter {
  animation: ntzContactInstantReveal 160ms ease-out both;
}
@keyframes ntzContactInstantReveal {
  from { opacity: .58; }
  to { opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
  .contact-showcase-media .contact-video-card {
    transition: none !important;
  }
  .contact-showcase-media .contact-video-card.ntz-card-enter {
    animation: none !important;
  }
}


/* v1.9.7 | Remover os traços ciano decorativos abaixo dos títulos.
   Preserva os cabeçalhos, a navegação e as linhas estruturais do layout. */
.section-head h2::after,
.admin-section-head h2::after,
.contact-showcase-copy h2::after,
#quem-somos .about-content h2::after {
  content: none !important;
  display: none !important;
}


/* ==============================================================
   v2.0.24 | Quem somos: composicao mobile mais compacta e alinhada.
   Regras locais: nao modificar o NEWS ou as demais secoes.
   ============================================================== */
@media (max-width: 800px) {
  #quem-somos {
    padding-top: clamp(54px, 9vw, 76px);
    padding-bottom: clamp(58px, 9vw, 78px);
  }
  #quem-somos > .container {
    width: calc(100% - 44px);
    max-width: 100%;
    margin-inline: auto;
    min-width: 0;
  }
  #quem-somos .about-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: clamp(18px, 4vw, 30px);
    width: 100%;
    align-items: start;
  }
  #quem-somos .about-content {
    display: block;
    width: 100%;
    min-width: 0;
    text-align: left;
  }
  #quem-somos .about-content .kicker {
    font-size: 12px;
    color: #b4c8cd;
    letter-spacing: .13em;
    max-width: 100%;
  }
  #quem-somos .about-content .kicker::before {
    width: 14px;
    flex-basis: 14px;
    background: #849da3;
  }
  #quem-somos .about-content h2 {
    max-width: 100%;
    margin: 11px 0 0;
    font-size: clamp(32px, 8.6vw, 48px);
    letter-spacing: -.055em;
    line-height: 1.07;
    text-wrap: balance;
    overflow-wrap: normal;
    word-break: normal;
  }
  #quem-somos .about-copy {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin-top: clamp(22px, 4.5vw, 30px);
    font-size: clamp(15px, 3.9vw, 17px);
    line-height: 1.64;
    color: #bdc3c1;
  }
  #quem-somos .about-copy p {margin: 0; overflow-wrap: break-word;}
  #quem-somos .about-copy p + p {margin-top: 1.1em;}
  #quem-somos .about-copy strong {color: #e6e8e5;}
  #quem-somos .about-logo-wrap {
    width: 100%;
    min-height: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px 0 1px;
    margin: 0 auto;
  }
  #quem-somos .about-logo-wrap .about-logo {
    display: block;
    width: clamp(126px, 34vw, 166px);
    max-width: 100%;
    height: auto;
    margin-inline: auto !important;
    opacity: .87;
    filter: none;
    position: static;
    transform: none;
  }
  #quem-somos .metrics {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    width: 100%;
    min-width: 0;
    margin-top: clamp(24px, 5vw, 36px);
    padding: 0;
    border-color: rgba(255,255,255,.10);
  }
  #quem-somos .metric,
  #quem-somos .metric:not(:first-child) {
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr);
    grid-template-areas: 'icon value' 'icon legend';
    align-items: center;
    column-gap: 15px;
    row-gap: 5px;
    width: 100%;
    min-width: 0;
    min-height: 0;
    padding: 20px 3px;
    border: none;
    border-radius: 0;
    background: none;
    box-shadow: none;
    transform: none;
  }
  #quem-somos .metric + .metric {
    border-top: 1px solid rgba(255,255,255,.10);
    border-left: 0;
  }
  #quem-somos .metric-top {display: contents;}
  #quem-somos .metric-icon {
    grid-area: icon;
    width: 42px;
    height: 42px;
    margin: 0;
    padding: 0;
    color: #b3c3c6;
    border: 1px solid rgba(190,203,206,.24);
    border-radius: 50%;
    background: none;
    box-shadow: none;
    transform: none;
  }
  #quem-somos .metric-icon svg {width: 20px; height: 20px;}
  #quem-somos .metric strong {
    grid-area: value;
    display: block;
    width: 100%;
    min-width: 0;
    font-size: clamp(34px, 9vw, 47px);
    line-height: .98;
    letter-spacing: -.055em;
    transform: none;
    color: #eff1ee;
  }
  #quem-somos .metric > span {
    grid-area: legend;
    margin: 0;
    max-width: 100%;
    min-width: 0;
    color: #a9b0ad;
    font-size: 13px;
    line-height: 1.4;
  }
  #quem-somos .metric:hover,
  #quem-somos .metric:hover .metric-icon,
  #quem-somos .metric:hover strong {
    transform: none;
    background: none;
    box-shadow: none;
    color: inherit;
  }
  #quem-somos .metric:hover .metric-icon {color: #b3c3c6; border-color: rgba(190,203,206,.24);}
  #quem-somos .metric:hover strong {color: #eff1ee;}
}
@media (max-width: 360px) {
  #quem-somos > .container {width: calc(100% - 38px);}
  #quem-somos .about-content h2 {font-size: clamp(30px, 9vw, 34px);}
  #quem-somos .metric strong {font-size: clamp(32px, 9.4vw, 40px);}
}
