/* =========================================================================
   FLEX DESIGN - LP CAPTACAO
   Base escura AQUECIDA + acento terracota (puxado do showroom). Mobile-first.
   ========================================================================= */
/* No mobile, usa a fonte nativa do aparelho para evitar 470 KB antes da primeira dobra. */
@media(min-width:900px){
  @font-face{font-family:"Inter";src:url("fonts/Inter_18pt-Light.woff2") format("woff2");font-weight:300;font-style:normal;font-display:swap}
  @font-face{font-family:"Inter";src:url("fonts/Inter_18pt-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
  @font-face{font-family:"Inter";src:url("fonts/Inter_18pt-Medium.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
  @font-face{font-family:"Inter";src:url("fonts/Inter_18pt-SemiBold.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
}
@font-face{font-family:"Cormorant";src:url("fonts/Cormorant-SemiBoldItalic.woff2") format("woff2");font-weight:600;font-style:italic;font-display:swap}

:root{
  /* bases escuras com leve calor (nao e preto puro) */
  --preto:#0b0a09;
  --preto-2:#141210;
  --preto-3:#1b1613;
  --branco:#ffffff;
  --gelo:#f5f2ef;
  --cinza:#a99f96;
  --cinza-2:#6f665e;
  --linha:#2a2420;
  --linha-2:#3b332c;
  /* ACENTO terracota / cobre */
  --acento:#d64000;
  --acento-2:#d64000;
  --acento-soft:rgba(255,79,0,.14);
  --acento-glow:rgba(255,79,0,.40);
  --raio:14px;
  --wrap:1140px;
  --container-max-width:1620px;
  --container-padding:clamp(20px,4vw,64px);
  --container-edge:max(var(--container-padding),calc((100vw - var(--container-max-width))/2));
  --section-padding-block:clamp(72px,5.5vw,112px);
  --fs-body:18px;
  --font-size-description:16px;
  --line-height-description:1.5;
  font-synthesis:none;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--preto);
  color:var(--gelo);
  font-family:"Segoe UI",system-ui,-apple-system,Arial,sans-serif; /* SUBSTITUIR: fonte da marca */
  font-size:var(--fs-body);
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3{line-height:1.15;font-weight:800;letter-spacing:-.01em}
section{padding:64px 20px}
.clients__symbol,.apply__steps-symbol,.projects__symbol{transform-origin:50% 50%;animation:symbolSpin 9s linear infinite}
@keyframes symbolSpin{to{transform:rotate(360deg)}}
.site-container{width:min(calc(100% - var(--container-padding) - var(--container-padding)),var(--container-max-width));
  margin-inline:auto}
.sec-title{font-size:clamp(26px,6vw,40px);text-align:center;margin:0 auto 36px;max-width:820px;position:relative}
.sec-title::after{content:"";display:block;width:52px;height:4px;border-radius:4px;margin:14px auto 0;
  background:linear-gradient(90deg,var(--acento),var(--acento-2))}
.sec-title--left{text-align:left}
.sec-title--left::after{margin-left:0}
.sec-sub{text-align:center;color:var(--cinza);max-width:560px;margin:-18px auto 30px;font-size:var(--font-size-description);line-height:var(--line-height-description)}
.work-cap{text-align:center;color:var(--cinza);font-size:14px;font-weight:600;padding:6px 0 2px}

/* ---------- GRIDS ---------- */
.grid{display:grid;gap:16px;max-width:var(--wrap);margin:0 auto}
.grid--2{grid-template-columns:1fr}
.grid--3{grid-template-columns:1fr}

/* ---------- CTA (acento) ---------- */
.cta{
  position:relative;display:inline-block;overflow:hidden;
  background:linear-gradient(120deg,var(--acento),var(--acento-2));
  color:#231208;font-weight:800;font-size:18px;
  padding:17px 30px;border:none;border-radius:60px;cursor:pointer;
  animation:ctaFloat 3.4s ease-in-out infinite, ctaGlow 3s ease-in-out infinite;
  text-align:center;
}
.cta::after{
  content:"";position:absolute;top:0;left:-120%;width:60%;height:100%;
  background:linear-gradient(120deg,transparent,rgba(255,255,255,.55),transparent);
  transform:skewX(-20deg);animation:ctaShine 3.2s ease-in-out infinite;
}
@keyframes ctaShine{0%{left:-120%}55%{left:130%}100%{left:130%}}
@keyframes ctaFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes ctaGlow{0%,100%{box-shadow:0 6px 22px var(--acento-soft)}50%{box-shadow:0 12px 38px var(--acento-glow)}}
.cta--hero{margin-top:8px}
.cta--form{width:100%}
.cta--final{min-width:248px;margin-top:32px;padding:14px 28px;background:var(--acento);color:#fff;font-size:13px;font-weight:600}

/* CTA fixo mobile */
.cta-fixed{
  position:fixed;left:16px;right:16px;bottom:16px;z-index:60;
  display:none;text-align:center;
  background:linear-gradient(120deg,var(--acento),var(--acento-2));color:#fff;
  font-family:"Inter",Arial,sans-serif;font-size:16px;font-weight:500;padding:16px;border-radius:60px;
  box-shadow:0 10px 30px rgba(0,0,0,.6),0 0 24px var(--acento-glow);
}
.cta-fixed.show{display:block}

/* ---------- HERO ---------- */
.hero{position:relative;width:100%;height:100vh;min-height:760px;overflow:hidden;background:#090909;
  font-family:"Inter",Arial,sans-serif}
.hero::before{content:"";position:absolute;inset:0 auto 0 0;width:38.8%;background:
  radial-gradient(ellipse 105% 58% at -6% -4%,#4a4a4a 0%,#303030 32%,#1a1a1a 63%,transparent 100%),
  linear-gradient(145deg,#171717 0%,#111 48%,#080808 100%)}
.hero__container{position:relative;z-index:3;height:100%}
.hero__panel{position:relative;width:min(460px,calc(38.8vw - var(--container-edge) - 36px));min-width:360px;height:100%;z-index:2}
@media(min-width:1440px){
  .hero::before{width:46%}
  .hero__panel{width:min(460px,calc(46vw - var(--container-edge) - 36px));margin-left:clamp(96px,6.25vw,124px)}
}
.hero__logo{position:absolute;top:4.2%;left:0;width:84px;height:auto}
.hero__content{position:absolute;top:25.2%;left:0;width:100%;z-index:3}
.hero__eyebrow{margin:0 0 28px 5px;color:var(--acento);font-size:16px;font-weight:400;line-height:1.25;text-transform:uppercase}
.hero__title{margin:0 0 24px;color:#fff;font-family:"Inter",Arial,sans-serif;font-size:clamp(52px,3.6vw,68px);
  font-weight:300;line-height:1.18;letter-spacing:-.025em}
.hero__title span,.hero__title em{display:block}
.hero__title span{font-weight:500}
.hero__title em{margin-top:2px;font-family:"Cormorant",Georgia,serif;font-size:1.08em;font-weight:600;font-style:italic;
  line-height:1.03;letter-spacing:-.02em}
.hero__sub{width:100%;max-width:456px;margin:0 0 28px;color:#f0f0f0;font-size:var(--font-size-description);font-weight:400;line-height:var(--line-height-description)}
.hero__chips{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));width:346px;max-width:100%;gap:8px 11px;margin:0 0 52px;padding:0;list-style:none}
.hero__chips li{display:flex;align-items:center;justify-content:center;height:35px;padding:0 14px;border:1px solid #929292;
  border-radius:999px;background:rgba(255,255,255,.025);color:#f4f4f4;font-size:13px;font-weight:400;line-height:1;white-space:nowrap}
.hero__chips li:nth-child(1){grid-column:span 4}.hero__chips li:nth-child(2){grid-column:span 8}
.hero__chips li:nth-child(3),.hero__chips li:nth-child(4){grid-column:span 6;padding-inline:8px}
.cta--hero{display:inline-flex;align-items:center;justify-content:center;width:313px;height:62px;margin:0;padding:0;
  border:2px solid #fff;border-radius:999px;background:var(--acento);color:#fff;font-family:"Inter",Arial,sans-serif;
  font-size:14px;font-weight:600;
  transition:background .2s ease,transform .2s ease}
.cta--hero::after{display:none}
.cta--hero:hover{background:var(--acento);transform:translateY(-2px);box-shadow:none}
.cta--hero:focus-visible{outline:3px solid var(--acento);outline-offset:4px}
@keyframes pulsarCTA{
  0%{box-shadow:0 0 0 0 rgba(255,79,0,.46),0 0 21px -6px rgba(255,79,0,.9)}
  70%{box-shadow:0 0 0 22px rgba(255,79,0,0),0 0 21px -6px rgba(255,79,0,.45)}
  100%{box-shadow:0 0 0 0 rgba(255,79,0,0),0 0 21px -6px rgba(255,79,0,.9)}
}
.cta--hero,.projects__cta,.cta--final,.cta-fixed{
  overflow:hidden;
  animation:pulsarCTA 2s infinite;
  box-shadow:0 0 21px -6px rgba(255,79,0,.9)
}
.cta--hero,.projects__cta,.cta--final{position:relative}
.cta--final::after{display:none}
.hero__media{position:absolute;inset:0 0 0 auto;width:61.2%;height:100%;min-width:0;background:#171717}
@media(min-width:1440px){.hero__media{width:54%}}
.hero__img{width:100%;height:100%;object-fit:cover;object-position:center;animation:none}
.hero__seal{position:absolute;z-index:4;top:27%;left:-58px;width:117px;height:117px;border:1px solid #ddd;
  border-radius:50%;background:#fff;color:#141414;box-shadow:0 4px 16px rgba(0,0,0,.2)}
.hero__seal::before{content:"";position:absolute;inset:22%;border:1px solid #aaa;border-radius:50%}
.hero__seal-text{position:absolute;inset:0;animation:sealTextSpin 14s linear infinite}
.hero__seal-text span{position:absolute;top:6%;left:50%;width:8px;height:44%;margin-left:-4px;
  transform:rotate(calc(var(--i) * 8deg));transform-origin:50% 100%;text-align:center;
  font-family:"Inter",Arial,sans-serif;font-size:8px;font-weight:600;line-height:1}
.hero__seal-center{position:absolute;inset:25%;display:flex;flex-direction:column;align-items:center;justify-content:center;
  font-family:"Inter",Arial,sans-serif;line-height:1;text-align:center}
.hero__seal-center strong{font-size:24px;font-weight:600;letter-spacing:-.04em}
.hero__seal-center span{margin-top:5px;font-size:10px;font-weight:500;letter-spacing:.24em;text-indent:.24em}
@keyframes sealTextSpin{to{transform:rotate(360deg)}}

/* ---------- STATS ---------- */
.stats{position:relative;height:176px;padding:0;border:0;background:#fff;color:#080808;font-family:"Inter",Arial,sans-serif}
.stats::before{display:none}
.stats::after{content:"";position:absolute;top:0;right:0;width:60.85%;height:1px;background:#d6d6d6}
.stats__container{height:100%}
.stats__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;height:100%;padding-top:53px;text-align:left}
.stat{display:flex;flex-direction:column-reverse;align-items:flex-start;justify-content:flex-end;min-width:0}
.stat:nth-child(2),.stat:nth-child(3){justify-self:center}
.stat:last-child{justify-self:end}
.stat__num{color:#050505;font-size:50px;font-weight:400;line-height:1.1;letter-spacing:-.025em;
  background:none;-webkit-text-fill-color:currentColor}
.stat__label{margin:0 0 7px;color:#5d5d5d;font-size:16px;font-weight:400;line-height:1.2;text-transform:uppercase;white-space:nowrap}

/* ---------- CLIENTS ---------- */
.clients{height:auto;min-height:720px;padding:152px 0 160px;background:
  radial-gradient(circle at 0% 0%,#383838 0%,#202020 21%,#080808 48%,#000 70%);
  color:#fff;font-family:"Inter",Arial,sans-serif}
.clients__head{display:flex;align-items:flex-start;justify-content:space-between;height:260px}
.clients__title{margin:0;color:#f7f7f7;font-size:clamp(68px,4.4vw,84px);font-weight:400;line-height:1.18;letter-spacing:-.025em}
.clients__symbol{width:138px;height:146px;margin:3px 9px 0 0;object-fit:contain}
.clients__grid{display:grid;grid-template-columns:repeat(6,1fr);height:280px;overflow:hidden;
  border:1px solid rgba(255,255,255,.9);border-radius:5px}
.clientlogo{display:flex;align-items:center;justify-content:center;min-width:0;height:140px;
  border-right:1px solid rgba(255,255,255,.72);border-bottom:1px solid rgba(255,255,255,.72);background:rgba(0,0,0,.08)}
.clientlogo:nth-child(6n){border-right:0}
.clientlogo:nth-child(n+7){border-bottom:0}
.clientlogo img{display:block;width:auto;height:auto;max-width:70%;max-height:51px}

/* ---------- APPLY / FORM ---------- */
.apply{position:relative;padding:132px 0 120px;background:#fff;color:#111;font-family:"Inter",Arial,sans-serif}
.apply__wrap{display:grid;grid-template-columns:minmax(0,910px) 434px;justify-content:space-between;align-items:start;gap:72px}
.apply__form-side{min-width:0}
.apply__head{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:28px}
.apply__title{margin:0;color:#050505;font-size:clamp(72px,5vw,96px);font-weight:400;line-height:1.06;letter-spacing:-.035em}
.apply__lead{margin:14px 0 0;color:#666;font-size:var(--font-size-description);font-weight:400;line-height:var(--line-height-description)}
.apply__counter{flex:0 0 auto;margin:17px 0 0;color:var(--acento);font-size:15px;font-weight:500}
.apply__counter b{color:#999;font-weight:400}
.apply .progress{height:3px;margin:44px 0 58px;overflow:hidden;border-radius:0;background:#dedede}
.apply .progress__bar{height:100%;width:14.2857%;background:var(--acento);transition:width .35s ease}

.apply .step{display:none;border:0;min-width:0;padding:0}
.apply .step.is-active{display:block;animation:fadeStep .3s ease}
@keyframes fadeStep{from{opacity:0;transform:translateX(10px)}to{opacity:1;transform:none}}
.apply .step__q{grid-column:1/-1;margin:0 0 30px;color:#151515;font-size:24px;font-weight:500}
.apply .step__intro{grid-column:1/-1;margin:0 0 18px;padding:0;color:#777;font-size:var(--font-size-description);line-height:var(--line-height-description);border:0}
.apply .qgroup{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 34px;margin:0 0 46px}
.apply .qgroup__q{grid-column:1/-1;width:100%;margin:0 0 20px;color:#181818;font-size:clamp(20px,2vw,27px);font-weight:500;line-height:1.38}
.apply .step.qgroup{display:none}
.apply .opt-tag{display:inline-block;margin-left:7px;padding:3px 8px;border:1px solid var(--acento);border-radius:20px;
  color:var(--acento);font-size:10px;font-weight:600;text-transform:uppercase;vertical-align:middle}
.apply .opt-inline{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 34px}
.apply .opt{display:block;min-width:0;margin:0;cursor:pointer}
.apply .opt input{position:absolute;opacity:0;pointer-events:none}
.apply .opt__box{position:relative;display:flex;align-items:center;justify-content:center;min-height:53px;padding:12px 42px 12px 18px;
  border:1px solid #c6c6c6;border-radius:12px;background:#fff;color:#171717;font-size:15px;font-weight:400;
  line-height:1.35;text-align:center;white-space:nowrap;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}
.apply .opt__box::after{content:"✓";position:absolute;right:15px;top:50%;display:grid;place-items:center;width:18px;height:18px;
  border-radius:50%;background:var(--acento);color:#fff;font-size:12px;font-weight:600;opacity:0;transform:translateY(-50%)}
.apply .opt input:checked + .opt__box{border-color:var(--acento);background:#fff8f2;box-shadow:none}
.apply .opt input:checked + .opt__box::after{opacity:1}
.apply .opt input:focus-visible + .opt__box{outline:3px solid rgba(255,79,0,.25);outline-offset:2px}
.apply .opt:hover .opt__box{border-color:var(--acento)}

.apply .step.qgroup.is-active{display:grid}
.apply .step--contact.is-active{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 34px}
.apply .step--contact .qgroup{grid-column:1/-1;display:block;margin:10px 0 0}
.apply .step--contact .qgroup__q{margin-bottom:14px;font-size:16px}
.apply .field{display:block;margin:0}
.apply .field span{display:block;margin:0 0 8px;color:#555;font-size:13px}
.apply .field input{width:100%;padding:10px 2px 12px;border:0;border-bottom:1px solid #bbb;border-radius:0;
  background:transparent;color:#111;font-family:"Inter",Arial,sans-serif;font-size:16px}
.apply .field input:focus{outline:none;border-color:var(--acento);box-shadow:none}
.apply .form-msg{min-height:22px;margin:8px 0 0;color:#c64d32;font-size:13px}
.form-honeypot{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.apply .form-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:44px;padding-top:20px;border-top:1px solid #ddd}
.apply__secure{display:flex;align-items:center;gap:9px;color:#666;font-size:12px}
.apply__secure img{width:14px;height:14px;flex:0 0 14px}
.apply .form-nav{display:flex;align-items:center;justify-content:flex-end;gap:12px}
.apply .btn-back{min-height:46px;padding:0 22px;border:1px solid #bbb;border-radius:60px;background:#fff;color:#555;
  font-family:"Inter",Arial,sans-serif;font-weight:500;cursor:pointer}
.apply .btn-back:hover{border-color:var(--acento);color:var(--acento)}
.apply .cta--form{display:inline-flex;align-items:center;justify-content:center;gap:20px;width:auto;min-width:180px;min-height:46px;
  padding:0 24px;border:2px solid var(--acento);border-radius:60px;background:#fff;color:var(--acento);
  font-family:"Inter",Arial,sans-serif;font-size:16px;font-weight:500;animation:none;box-shadow:none}
.apply .cta--form::after{content:"→";position:static;width:auto;height:auto;background:none;color:currentColor;font-size:26px;
  line-height:1;transform:none;animation:none}
.apply .cta--form:hover{background:#fff8f2;transform:none;box-shadow:none}
.apply .cta--form:focus-visible,.apply .btn-back:focus-visible{outline:3px solid rgba(255,79,0,.3);outline-offset:3px}
.apply .cta--form:disabled{cursor:wait;opacity:.65}
.apply [hidden]{display:none!important}

.apply__steps{position:relative;display:flex;flex-direction:column;min-height:376px;overflow:hidden;padding:36px 32px 0;border:0;border-radius:14px;
  background:radial-gradient(circle at 0 0,#4a4a4a,#111 48%,#000 78%);color:#fff}
.apply__steps-symbol{position:absolute;top:32px;right:36px;width:36px;height:38px}
.apply__steps h3{align-self:flex-start;display:inline-flex;margin:0 0 36px;padding:10px 20px;border-radius:999px;background:#fff;color:#3d3d3d;
  font-size:18px;font-weight:600;line-height:1.4}
.apply__steps ol{display:grid;gap:16px;margin:0;padding:0;list-style:none;counter-reset:s}
.apply__steps li{position:relative;min-height:38px;padding-left:60px;color:#f1f1f1;font-size:19px;line-height:1.45;counter-increment:s}
.apply__steps li::before{content:"0" counter(s);position:absolute;left:0;top:-7px;color:#8d8d8d;font-size:36px;font-weight:300;line-height:1}
.apply__steps li strong{font-weight:400}
.apply__pay{display:grid;place-items:center;min-height:79px;margin:auto -32px 0;padding:20px 32px;background:#dedede;color:#444;
  font-size:14px;line-height:1.5;text-align:center}

/* ---------- PROJETOS ENTREGUES ---------- */
.projects{overflow:hidden;padding:clamp(120px,9vw,172px) 0 clamp(72px,5vw,96px);background:
  radial-gradient(circle at 4% 0,#3b3b3b 0,rgba(42,42,42,.72) 16%,rgba(12,12,12,.92) 39%,transparent 58%),
  #030303;color:#f5f4f2;font-family:"Inter",Arial,sans-serif}
.projects__layout{display:grid;grid-template-columns:minmax(300px,.36fr) minmax(0,.64fr);align-items:center;
  gap:clamp(44px,5vw,88px)}
.projects__content{max-width:590px;padding-bottom:48px;transform:translateY(-40px)}
.projects__symbol{width:62px;height:auto;margin:0 0 46px}
.projects__title{max-width:760px;margin:0;color:#f6f5f3;font-size:clamp(64px,5vw,104px);font-weight:300;line-height:1.12;
  letter-spacing:-.035em}
.projects__description{max-width:500px;margin:42px 0 0;color:#fff;font-size:var(--font-size-description);font-weight:300;line-height:var(--line-height-description)}
.projects__cta{display:inline-flex;align-items:center;justify-content:center;min-width:288px;min-height:66px;margin-top:28px;padding:0 34px;
  border:2px solid #fff;border-radius:999px;background:var(--acento);color:#fff;font-size:16px;font-weight:600;line-height:1;
  transition:background .2s ease,transform .2s ease}
.projects__cta:hover{background:var(--acento);transform:translateY(-2px)}
.projects__carousel{width:calc(100% + var(--container-edge));min-width:0;margin-right:calc(var(--container-edge) * -1)}
.projects__track{display:flex;gap:12px;overflow-x:auto;overscroll-behavior-inline:contain;padding:4px var(--container-edge) 18px 1px;
  scroll-padding-inline:1px;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;cursor:grab}
.projects__track::-webkit-scrollbar{display:none}
.projects__track:focus-visible{outline:1px solid var(--acento);outline-offset:5px}
.projects__track.is-dragging{cursor:grabbing;scroll-snap-type:none}
.project-card{flex:0 0 clamp(210px,30%,280px);aspect-ratio:9/16;min-width:0;overflow:hidden;border:1px solid rgba(255,255,255,.15);
  border-radius:7px;background:#111;scroll-snap-align:start;scroll-snap-stop:always}
.project-card__media{position:relative;width:100%;height:100%;overflow:hidden;background:linear-gradient(145deg,#1d1b19,#080808)}
.project-card__media::after{content:"";position:absolute;z-index:2;inset:42% 0 0;background:linear-gradient(to bottom,transparent,rgba(0,0,0,.22) 30%,rgba(0,0,0,.88) 100%);
  pointer-events:none}
.project-card video{display:block;width:100%;height:100%;object-fit:cover;background:#111;opacity:0;transition:opacity .35s ease}
.project-card video.is-ready{opacity:1}
.project-card.is-playing video{cursor:pointer}
.project-card__play{position:absolute;z-index:4;inset:0;margin:auto;width:48px;height:48px;border:1px solid rgba(231,137,74,.62);
  border-radius:50%;background:rgba(13,11,10,.68);color:var(--acento-2);cursor:pointer;transition:opacity .2s ease,background .2s ease}
.project-card__play:hover{background:rgba(255,79,0,.18)}
.project-card__play span{position:absolute;left:19px;top:16px;width:0;height:0;border-top:7px solid transparent;border-bottom:7px solid transparent;
  border-left:10px solid var(--acento-2)}
.project-card.is-playing .project-card__play{opacity:0;pointer-events:none}
.project-card.is-playing .project-card__info{opacity:0}
.project-card.is-playing .project-card__play:focus-visible{opacity:1;pointer-events:auto}
.project-card__play:focus-visible{outline:3px solid rgba(255,79,0,.4);outline-offset:3px}
.project-card__info{position:absolute;z-index:3;right:0;bottom:0;left:0;padding:0 18px 22px;transition:opacity .2s ease;pointer-events:none}
.project-card__number{display:block;margin-bottom:11px;color:#aaa39d;font-size:12px;font-weight:400}
.project-card__info h3{margin:0;color:#f5f1ed;font-size:19px;font-weight:400;line-height:1.25;letter-spacing:-.02em}
.projects__controls{display:flex;align-items:center;gap:24px;margin-top:5px;padding:18px var(--container-edge) 0 0}
.projects__buttons{display:flex;flex:0 0 auto;gap:9px}
.projects__arrow{display:grid;place-items:center;width:42px;height:42px;border:1px solid #fff;border-radius:50%;background:transparent;
  color:#b6aaa0;font-family:"Inter",Arial,sans-serif;font-size:19px;line-height:1;cursor:pointer;transition:border-color .2s ease,color .2s ease}
.projects__arrow:hover:not(:disabled){border-color:var(--acento);color:var(--acento-2)}
.projects__arrow:disabled{opacity:.3;cursor:default}
.projects__progress{position:relative;flex:1;height:1px;overflow:hidden;background:#302b27}
.projects__progress span{display:block;width:var(--project-progress,12%);height:100%;background:var(--acento);transition:width .2s ease}
.projects__hint{flex:0 0 auto;margin:0;color:#79736e;font-size:11px;font-weight:300;white-space:nowrap}

@media(max-width:1199px) and (min-width:800px){
  .projects__layout{grid-template-columns:minmax(240px,.32fr) minmax(0,.68fr);gap:36px}
  .projects__symbol{width:54px;margin-bottom:40px}
  .projects__title{font-size:clamp(50px,5.3vw,66px)}
  .projects__content{padding-bottom:24px;transform:translateY(-20px)}
  .project-card{flex-basis:clamp(205px,46%,250px)}
  .projects__controls{gap:16px}
}
@media(max-width:799px){
  .projects{padding:104px 0 72px}
  .projects__layout{grid-template-columns:1fr;gap:54px}
  .projects__content{max-width:620px;padding-bottom:0;transform:none}
  .projects__symbol{width:50px;margin-bottom:40px}
  .projects__title{max-width:590px;font-size:clamp(32px,8.5vw,42px)}
  .projects__description{margin-top:25px}
  .projects .projects__cta{min-width:250px;min-height:58px;font-size:16px;font-weight:600}
  .project-card{flex-basis:min(78vw,280px)}
  .projects__controls{gap:14px}
  .projects__hint{font-size:10px}
}
@media(max-width:479px){
  .projects__title{font-size:32px;line-height:1.18}
  .projects__cta{width:100%;min-width:0}
  .project-card{flex-basis:min(76vw,272px)}
  .projects__controls{align-items:center}
  .projects__arrow{width:40px;height:40px}
  .projects__progress{min-width:40px}
}

/* ---------- PAINS ---------- */
.pains{padding:136px 0 126px;background:#fff;color:#111;font-family:"Inter",Arial,sans-serif}
.pains__inner{--pains-action-inset:24px;width:min(84vw,1620px);margin-inline:auto}
.pains__title{margin:0 0 52px;font-size:clamp(60px,5.5vw,108px);font-weight:400;line-height:1.08;letter-spacing:-.035em}
.pains__heading{display:grid;grid-template-columns:25% 37.5% 37.5%;align-items:center;height:68px;margin-right:var(--pains-action-inset);border-bottom:1px solid #bcbcbc;
  text-transform:uppercase}
.pains__heading span{color:var(--acento);font-size:11px;font-weight:600}
.pains__heading strong{padding-left:27px;color:#222;font-size:11px;font-weight:500;letter-spacing:.02em}
.pains__heading b{display:block;justify-self:end;color:#080808;font-size:35px;font-weight:400;line-height:1;
  transform-origin:50% 50%;animation:symbolSpin 9s linear infinite}
.pains__list{margin-right:var(--pains-action-inset);border-bottom:1px solid #c7c7c7}
.pain-row{display:grid;grid-template-columns:25% 37.5% 37.5%;min-height:162px;border-bottom:1px solid #c7c7c7}
.pain-row:last-child{border-bottom:0}
.pain-row__category{display:flex;flex-direction:column;justify-content:center;padding:22px 30px 21px 4px}
.pain-row__number{display:block;color:var(--acento);font-size:64px;font-weight:300;line-height:.87;letter-spacing:-.055em}
.pain-row__category h3{margin:17px 0 0;color:#111;font-size:14px;font-weight:600;line-height:1.1;letter-spacing:-.02em;text-transform:uppercase}
.pain-row__signal{position:relative;display:flex;flex-direction:column;justify-content:center;min-width:0;margin:30px 0;padding:8px 58px 8px 32px;
  border-left:1px solid #bcbcbc}
.pain-row__code{display:block;margin-bottom:14px;color:#666;font-size:10px;font-weight:400;line-height:1}
.pain-row__signal p{margin:0;color:#111;font-size:var(--font-size-description);font-weight:400;line-height:var(--line-height-description);letter-spacing:-.012em}
.pain-row__arrow{position:absolute;right:0;top:50%;color:#111;font-size:27px;font-weight:300;line-height:1;transform:translateY(-50%)}
@media(min-width:900px){
  .pain-row__signal:nth-child(2) .pain-row__arrow{right:24px}
}
.pains__footer{display:grid;grid-template-columns:25% 1fr auto;min-height:78px;margin-right:var(--pains-action-inset);align-items:center}
.pains__footer::before{content:"";align-self:stretch;border-right:1px solid #c7c7c7}
.pains__footer p{margin:0;padding:0 26px;color:#111;font-size:var(--font-size-description);font-weight:600;line-height:var(--line-height-description);letter-spacing:-.01em}
.pains__footer strong{color:var(--acento);font-weight:600}
.pains__footer>span{justify-self:end;padding-left:18px;color:var(--acento);font-size:28px;font-weight:300;line-height:1}

@media(max-width:899px){
  .pains{padding:104px 0 96px}
  .pains__inner{width:min(calc(100% - 40px),680px)}
  .pains__title{margin-bottom:44px;font-size:clamp(46px,12vw,64px)}
  .pains__heading{grid-template-columns:1fr auto;height:60px}
  .pains__heading span{display:none}
  .pains__heading strong{padding-left:0}
  .pains__heading b{font-size:30px}
  .pain-row{grid-template-columns:1fr;min-height:0;padding:36px 0 30px}
  .pain-row__category{padding:0 0 28px}
  .pain-row__number{font-size:54px}
  .pain-row__category h3{margin-top:14px}
  .pain-row__signal{min-height:94px;margin:0;padding:22px 48px 22px 20px;border-top:1px solid #d4d4d4;border-left:0}
  .pain-row__signal:last-child{border-bottom:0}
  .pains__footer{grid-template-columns:1fr auto;min-height:108px}
  .pains__footer::before{display:none}
  .pains__footer p{padding:20px 12px 20px 0}
  .pains__footer>span{padding-left:0}
}

/* ---------- TRIED ---------- */
.tried{min-height:900px;padding:92px 0 142px;border-bottom:1px solid #292929;background:#030303;color:#f4f4f4;
  font-family:"Inter",Arial,sans-serif}
.tried__inner{width:min(84vw,1620px);margin-inline:auto}
.tried__topline{display:flex;align-items:center;justify-content:space-between;height:44px;margin-inline:20px;padding:0 0 16px;border-bottom:1px solid #454545;
  color:#eee;font-size:14px;font-weight:500;line-height:1;text-transform:none}
.tried__topline>div{display:flex;align-items:center;gap:19px}
.tried__topline b{display:block;font-size:29px;font-weight:400;line-height:1;transform-origin:50% 50%;animation:symbolSpin 9s linear infinite}
.tried__title{margin:48px 20px 42px;color:#f4f4f4;font-size:clamp(50px,5.6vw,104px);font-weight:300;line-height:1;
  letter-spacing:-.045em;text-transform:none;white-space:nowrap}
.tried__title sup{position:relative;top:-.13em;margin-left:6px;color:var(--acento);font-size:.32em;font-weight:400;line-height:0}
.tried__filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:46px;margin:0 20px 54px}
.tried__filters span{display:flex;align-items:center;justify-content:center;height:36px;border:1px solid #696969;border-radius:999px;
  color:#dedede;font-size:12px;font-weight:500;line-height:1;text-transform:none}
.tried__filters .is-active{border-color:var(--acento);color:var(--acento)}
.tried__options{margin:0 20px;padding:0;list-style:none}
.tried-option{display:grid;grid-template-columns:88px minmax(0,1fr) 144px;align-items:center;min-height:120px;border-bottom:1px solid #333;
  transition:background .2s ease}
.tried-option:last-child{border-bottom:0}
.tried-option__number{align-self:center;color:var(--acento);font-size:21px;font-weight:500;line-height:1}
.tried-option__copy{padding:29px 0 27px}
.tried-option__copy h3{margin:0;color:#ededed;font-size:29px;font-weight:300;line-height:1.04;letter-spacing:-.035em;text-transform:none}
.tried-option__copy p{margin:14px 0 0;color:#aaa;font-size:var(--font-size-description);font-weight:400;line-height:var(--line-height-description);text-transform:none}
.tried-option__action{display:flex;align-items:center;gap:14px;justify-self:end;padding-right:28px;color:#c8c8c8;text-transform:none}
.tried-option__action i{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#171717;color:var(--acento);
  font-size:19px;font-style:normal;font-weight:300;line-height:1;transition:transform .2s ease}
.tried-option__action b{font-size:13px;font-weight:500}
.tried-option__action:hover i{transform:translate(2px,-2px)}
.tried-option.is-featured{border-top:1px solid #2e2926;border-bottom-color:#3c3733;background:
  radial-gradient(ellipse 55% 130% at 55% 50%,rgba(91,44,17,.22),transparent 72%),#0b0908}
.tried-option.is-featured .tried-option__copy h3,.tried-option.is-featured .tried-option__action{color:var(--acento)}
.tried-option.is-featured .tried-option__action i{background:var(--acento);color:#fff}
.tried__bottom{display:flex;align-items:center;justify-content:space-between;margin:60px 20px 0}
.tried__bottom p{margin:0;color:#b1b1b1;font-size:var(--font-size-description);font-weight:400;line-height:var(--line-height-description)}
.tried__bottom a{display:flex;align-items:center;gap:18px;color:var(--acento);font-size:14px;font-weight:500;text-transform:none}
.tried__bottom a span{font-size:28px;font-weight:300;line-height:1;transition:transform .2s ease}
.tried__bottom a:hover span{transform:translateX(5px)}

@media(max-width:1099px){
  .tried__title{font-size:clamp(44px,6.6vw,70px)}
  .tried-option__copy h3{font-size:24px}
}
@media(max-width:799px){
  .tried{min-height:0;padding:78px 0 96px}
  .tried__inner{width:min(calc(100% - 40px),680px)}
  .tried__topline{position:relative;height:42px;margin-inline:0;padding-inline:0;border-bottom:0;font-size:13px}
  .tried__topline::after{content:"";position:absolute;bottom:0;left:50%;width:100vw;height:1px;background:#454545;transform:translateX(-50%)}
  .tried__topline>div>span{display:none}
  .tried__title{margin:50px 0 46px;font-size:clamp(43px,12vw,62px);line-height:1.06;white-space:normal}
  .tried__filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 0 50px}
  .tried__filters span{height:38px;font-size:11px}
  .tried__options{margin:0}
  .tried-option{grid-template-columns:58px minmax(0,1fr) 104px;min-height:142px}
  .tried-option__copy{padding:31px 14px 31px 0}
  .tried-option__copy h3{font-size:clamp(19px,5.5vw,25px);line-height:1.12}
  .tried-option__action{gap:8px;padding-right:0}
  .tried-option__action i{width:30px;height:30px;font-size:16px}
  .tried-option__action b{font-size:11px}
  .tried__bottom{align-items:flex-start;flex-direction:column;gap:38px;margin:52px 0 0}
  .tried__bottom a{font-size:12px}
  .tried__bottom a{align-self:flex-end}
}

/* ---------- METHOD ---------- */
.method{min-height:750px;padding:64px 0 100px;background:#030303;color:#f4f4f4;font-family:"Inter",Arial,sans-serif}
.method__inner{width:min(84vw,1620px);margin-inline:auto}
.method__eyebrow{margin:0;color:var(--acento);font-size:18px;font-weight:500;line-height:1;text-transform:uppercase}
.method__symbol{position:static;display:block;flex:0 0 auto;color:#f7f7f7;font-size:56px;font-weight:400;line-height:1;
  transform-origin:50% 50%;animation:symbolSpin 9s linear infinite}
.method__intro{display:grid;grid-template-columns:62% 38%}
.method__intro-left h2{margin:0;color:#f5f5f5;font-size:clamp(82px,7.1vw,136px);font-weight:300;line-height:.9;letter-spacing:-.055em}
.method__controls{display:flex;gap:11px;margin-top:48px}
.method__arrow{display:grid;place-items:center;width:52px;height:52px;border:1px solid #666;border-radius:50%;background:transparent;color:#eee;
  font-family:"Inter",Arial,sans-serif;font-size:25px;font-weight:300;line-height:1;cursor:pointer;transition:border-color .2s ease,color .2s ease}
.method__arrow:hover:not(:disabled){border-color:var(--acento);color:var(--acento)}
.method__arrow:disabled{opacity:.35;cursor:default}
.method__summary{align-self:start;justify-self:end;width:min(100%,380px);overflow:hidden;border:1px solid #151515;border-radius:16px;background:transparent}
.method__summary-head{display:flex;align-items:center;justify-content:space-between;width:100%;padding:24px;background:transparent}
.method__summary-body{padding:24px 24px 32px;background:transparent}
.method__summary p{width:100%;margin:0;color:#c7c7c7;font-size:var(--font-size-description);font-weight:300;line-height:var(--line-height-description);letter-spacing:-.01em;text-align:left}
.method__summary-head>span:first-child{display:inline-flex;align-items:center;justify-content:center;min-width:128px;height:43px;margin-left:0;
  border:1px solid var(--acento);border-radius:999px;color:var(--acento);font-size:11px;font-weight:500;text-transform:uppercase}
.method__timeline{position:relative;display:grid;grid-template-columns:repeat(3,1fr) 70px;align-items:end;margin-top:63px}
.method__timeline::before{content:"";position:absolute;right:0;bottom:0;left:0;height:1px;background:#3a3a3a}
.method__point{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;gap:16px;padding:0;border:0;background:transparent;
  color:#ededed;font-family:"Inter",Arial,sans-serif;font-size:15px;font-weight:400;text-align:left;cursor:pointer}
.method__point i{display:block;width:15px;height:15px;margin-bottom:-7px;border-radius:50%;background:#f1f1f1;box-shadow:0 0 0 1px #a9a9a9}
.method__point.is-active{color:var(--acento)}
.method__point.is-active i{background:var(--acento);box-shadow:none}
.method__count{position:relative;z-index:1;align-self:center;justify-self:end;margin:0 0 8px;color:#888;font-size:14px;font-weight:400}
.method__count b{color:#e7e7e7;font-weight:400}
.method__steps{display:grid;grid-template-columns:repeat(3,1fr) 70px;margin-top:50px}
.method-step{padding-right:28px;transition:opacity .2s ease}
.method-step>span{display:block;margin-bottom:17px;color:#aaa;font-size:12px;font-weight:500;text-transform:uppercase}
.method-step h3{margin:0;color:#e9e9e9;font-size:27px;font-weight:300;line-height:1.1;letter-spacing:-.035em}
.method-step p{margin:14px 0 0;color:#aaa;font-size:var(--font-size-description);font-weight:300;line-height:var(--line-height-description)}
.method-step.is-active>span{color:#ddd}
.method__advance{align-self:start;justify-self:end;margin-top:29px;padding:0;border:0;background:transparent;color:var(--acento);
  font-family:"Inter",Arial,sans-serif;font-size:42px;font-weight:300;line-height:1;cursor:pointer;transition:transform .2s ease}
.method__advance:hover{transform:translateX(5px)}

@media(min-width:1080px){
  .method{padding-top:160px;padding-bottom:180px}
}
@media(max-width:1099px){
  .method__intro{grid-template-columns:56% 44%}
  .method__intro-left h2{font-size:clamp(70px,9vw,98px)}
  .method__timeline,.method__steps{grid-template-columns:repeat(3,1fr) 52px}
  .method-step h3{font-size:23px}
}
@media(max-width:799px){
  .method{min-height:0;padding:68px 0 82px}
  .method__inner{width:min(calc(100% - 40px),680px)}
  .method__eyebrow{font-size:13px}
  .method__intro{grid-template-columns:1fr}
  .method__intro-left h2{font-size:clamp(68px,22vw,102px);line-height:.92}
  .method__controls{margin-top:36px}
  .method__summary{align-self:start;justify-self:stretch;width:100%;margin-top:32px}
  .method__symbol{font-size:38px}
  .method__summary-head{padding:18px}
  .method__summary-head>span:first-child{min-width:130px;height:40px;margin-left:0}
  .method__summary-body{padding:20px 18px 26px}
  .method__timeline{grid-template-columns:repeat(3,1fr) 42px;margin-top:56px}
  .method__point{gap:14px;font-size:13px}
  .method__point i{width:13px;height:13px;margin-bottom:-6px}
  .method__count{font-size:11px}
  .method__steps{grid-template-columns:1fr 42px;margin-top:40px}
  .method-step{display:none;grid-column:1;padding-right:20px}
  .method-step.is-active{display:block}
  .method-step>span{font-size:11px}
  .method-step h3{font-size:28px}
  .method__advance{grid-column:2;grid-row:1;margin-top:26px;font-size:36px}
}

/* ---------- DELIVER ---------- */
.deliver{overflow:hidden;padding:112px 0 154px;background:#fff;color:#090909;font-family:"Inter",Arial,sans-serif}
.deliver__inner{width:min(84vw,1644px);margin-inline:auto}
.deliver__head{display:flex;align-items:center;justify-content:space-between}
.deliver__head h2{margin:0;color:#050505;font-size:clamp(76px,5.9vw,114px);font-weight:300;line-height:1;letter-spacing:-.045em}
.deliver__head>span{display:block;color:#080808;font-size:49px;font-weight:600;line-height:1;transform-origin:50% 50%;animation:symbolSpin 9s linear infinite}
.deliver__track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;margin-top:48px}
.deliver-card{position:relative;height:488px;min-width:0;overflow:hidden;border:0;border-radius:10px;background:#e9e9e9;color:#090909;
  transition:transform .65s cubic-bezier(.22,1,.36,1),box-shadow .65s cubic-bezier(.22,1,.36,1),background-color .5s ease}
.deliver-card.entrance-item{translate:0 14px;
  transition:opacity .85s cubic-bezier(.22,1,.36,1),translate .95s cubic-bezier(.22,1,.36,1),transform .65s cubic-bezier(.22,1,.36,1),box-shadow .65s cubic-bezier(.22,1,.36,1),background-color .5s ease}
.deliver-card__top{display:flex;align-items:flex-start;justify-content:space-between;padding:35px 27px 0 26px}
.deliver-card__tag{display:inline-flex;align-items:center;justify-content:center;min-width:119px;height:36px;border:1px solid #707070;border-radius:999px;
  color:#111;font-size:13px;font-weight:600;line-height:1;text-transform:uppercase;transition:border-color .5s ease}
.deliver-card__corner{margin-top:-11px;color:var(--acento);font-size:72px;font-weight:200;line-height:1;transition:transform .6s cubic-bezier(.22,1,.36,1)}
.deliver-card__copy{position:absolute;top:158px;right:26px;left:26px}
.deliver-card__copy h3{margin:0;color:#080808;font-size:29px;font-weight:400;line-height:1.15;letter-spacing:-.025em}
.deliver-card__copy p{margin:18px 0 0;color:#696969;font-size:var(--font-size-description);font-weight:400;line-height:var(--line-height-description)}
.deliver-card__number{position:absolute;left:18px;bottom:-39px;color:#000;font-size:142px;font-weight:300;line-height:1;letter-spacing:-.08em;
  transition:transform .65s cubic-bezier(.22,1,.36,1)}
.deliver-card__contact{position:absolute;right:16px;bottom:22px;display:flex;align-items:center;gap:5px;color:#090909}
.deliver-card__contact>span{display:inline-flex;align-items:center;justify-content:center;min-width:82px;height:35px;padding:0 14px;border:1px solid #777;
  border-radius:999px;background:#f7f7f7;font-size:13px;font-weight:600;line-height:1}
.deliver-card__contact i{display:grid;place-items:center;width:35px;height:35px;border:1px solid #777;border-radius:50%;background:#f7f7f7;
  font-size:22px;font-style:normal;font-weight:400;line-height:1;transition:transform .5s cubic-bezier(.22,1,.36,1)}
.deliver-card__contact:hover i{transform:translate(2px,-2px)}
@media(hover:hover){
  .deliver-card:hover{z-index:2;background:#f0f0f0;transform:translateY(-6px);box-shadow:0 16px 36px rgba(0,0,0,.11)}
  .deliver-card:hover .deliver-card__corner{transform:translate(3px,-3px)}
  .deliver-card:hover .deliver-card__number{transform:translateY(-4px)}
  .deliver-card:hover .deliver-card__tag{border-color:var(--acento)}
  .deliver-card:hover .deliver-card__contact i{transform:translate(2px,-2px)}
}
.deliver__progress{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:34px;margin-top:32px}
.deliver__bar{position:relative;height:2px;background:#d5d5d5}
.deliver__bar span{position:absolute;top:-1px;left:0;width:96px;height:4px;border-radius:4px;background:var(--acento);
  transition:transform .35s ease}
.deliver__progress p{margin:0;color:#777;font-size:16px;font-weight:400;white-space:nowrap}
.deliver__progress b{font-weight:400}

@media(max-width:1199px){
  .deliver{padding:92px 0 118px}
  .deliver__head h2{font-size:clamp(62px,7vw,84px)}
  .deliver__track{gap:20px}
  .deliver-card{height:440px}
  .deliver-card__top{padding-inline:20px}
  .deliver-card__copy{top:145px;right:20px;left:20px}
  .deliver-card__copy h3{font-size:23px}
  .deliver-card__number{font-size:116px}
  .deliver-card__contact>span{min-width:70px;padding-inline:10px}
}
@media(max-width:1499px) and (min-width:800px){
  .deliver__track{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
  .deliver-card{height:460px}
}
@media(max-width:799px){
  .deliver{padding:76px 0 88px}
  .deliver__inner{width:min(calc(100% - 40px),680px)}
  .deliver__head{align-items:flex-start;gap:20px}
  .deliver__head h2{max-width:510px;font-size:clamp(48px,13vw,68px);line-height:1.06}
  .deliver__head>span{margin-top:7px;font-size:37px}
  .deliver__track{display:grid;grid-template-columns:1fr;gap:16px;overflow:visible;margin-right:0;padding:0}
  .deliver-card{width:100%;height:460px}
  .deliver-card__copy{top:150px}
  .deliver-card__copy h3{font-size:25px}
  .deliver-card__number{font-size:124px}
  .deliver__progress{gap:18px;margin-top:22px}
  .deliver__bar span{width:64px}
  .deliver__progress p{font-size:14px}
}

/* ---------- CASES ---------- */
.cases{overflow:hidden;padding:150px 0 180px;border-top:1px solid #262626;background:#030303;color:#fff;font-family:"Inter",Arial,sans-serif}
.cases__inner{width:min(84vw,1644px);margin-inline:auto}
.cases__head{display:flex;align-items:center;justify-content:space-between}
.cases__head h2{margin:0;color:#f5f5f5;font-size:clamp(90px,6.5vw,124px);font-weight:300;line-height:1;letter-spacing:-.04em}
.cases__head>span{display:block;color:#f7f7f7;font-size:46px;font-weight:600;line-height:1;transform-origin:50% 50%;animation:symbolSpin 9s linear infinite}
.cases__list{display:grid;gap:34px;margin-top:42px}
.cases-row{display:grid;grid-template-columns:minmax(0,1.24fr) minmax(0,1fr);gap:18px;height:620px}
.cases-row--reverse{grid-template-columns:minmax(0,1fr) minmax(0,1.24fr)}
.case-panel,.case-media{min-width:0;overflow:hidden;border-radius:15px}
.case-panel{position:relative;background:#fff;color:#111;transition:transform .35s ease,box-shadow .35s ease}
.case-panel__top{display:flex;align-items:flex-start;justify-content:space-between;padding:38px 29px 0 30px}
.case-panel__top>span{display:inline-flex;align-items:center;justify-content:center;min-width:160px;height:25px;padding:0 16px;border:1px solid #777;
  border-radius:999px;color:#181818;font-size:10px;font-weight:600;line-height:1;text-transform:uppercase}
.case-panel__top i{margin-top:-9px;color:#777;font-size:39px;font-style:normal;font-weight:200;line-height:1;transition:transform .35s ease,color .35s ease}
.case-panel__copy{position:absolute;top:50%;right:30px;left:30px;max-width:430px;transform:translateY(-50%)}
.case-panel__copy h3{margin:0;color:#0b0b0b;font-size:29px;font-weight:400;line-height:1.1;letter-spacing:-.025em}
.case-panel__copy p{margin:18px 0 0;color:#6d6d6d;font-size:var(--font-size-description);font-weight:400;line-height:var(--line-height-description)}
.case-panel__company{position:absolute;left:30px;bottom:36px;color:#777;font-size:12px;font-weight:400}
.case-panel>b{position:absolute;right:29px;bottom:24px;color:#080808;font-size:34px;font-weight:600;line-height:1;transform-origin:50% 50%;animation:symbolSpin 9s linear infinite}
.case-media{background:#151515}
.case-media img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
@media(hover:hover){
  .cases-row:hover .case-panel{transform:translateY(-5px);box-shadow:0 18px 40px rgba(0,0,0,.22)}
  .cases-row:hover .case-media img{transform:scale(1.035)}
  .cases-row:hover .case-panel__top i{color:var(--acento);transform:translate(3px,-3px)}
}

@media(max-width:1199px){
  .cases{padding:72px 0 130px}
  .cases__head h2{font-size:clamp(58px,7vw,76px)}
  .cases-row{height:540px}
  .case-panel__copy h3{font-size:26px}
}
@media(max-width:1499px) and (min-width:900px){
  .cases-row{height:500px}
}
@media(max-width:899px){
  .cases{padding:68px 0 96px}
  .cases__inner{width:min(calc(100% - 40px),680px)}
  .cases__head{align-items:flex-start;gap:18px}
  .cases__head h2{font-size:clamp(50px,14vw,70px)}
  .cases__head>span{margin-top:5px;font-size:36px}
  .cases__list{gap:24px;margin-top:36px}
  .cases-row,.cases-row--reverse{grid-template-columns:1fr;height:auto;gap:16px}
  .cases-row--reverse .case-panel{order:1}
  .cases-row--reverse .case-media{order:2}
  .case-panel,.case-media{border-radius:12px}
  .case-panel{height:500px}
  .case-media{height:420px}
  .case-panel__top{padding:28px 22px 0}
  .case-panel__top>span{min-width:0;height:28px;padding-inline:13px;font-size:9px}
  .case-panel__top i{font-size:34px}
  .case-panel__copy{right:22px;left:22px}
  .case-panel__copy h3{font-size:27px}
  .case-panel__company{left:22px;bottom:29px}
  .case-panel>b{right:22px;bottom:21px;font-size:30px}
  .case-media img{object-position:center}
}

/* ---------- ABOUT ---------- */
.about{padding:120px 0 160px;background:#fff;color:#080808;font-family:"Inter",Arial,sans-serif}
.about__inner{width:min(84vw,1644px);margin-inline:auto}
.about__head{display:flex;align-items:center;justify-content:space-between}
.about__head h2{margin:0;color:#050505;font-size:clamp(76px,5.8vw,112px);font-weight:300;line-height:1;letter-spacing:-.045em}
.about__head>span{display:block;color:#080808;font-size:39px;font-weight:600;line-height:1;transform-origin:50% 50%;animation:symbolSpin 9s linear infinite}
.about__copy{width:49%;margin:42px 0 0 auto;text-align:right}
.about__copy p{margin:0;color:#696969;font-size:var(--font-size-description);font-weight:400;line-height:var(--line-height-description)}
.about__copy p+p{margin-top:3px}
.about__copy strong{color:#101010;font-weight:600}
.about__media{width:100%;margin-top:34px;overflow:hidden;border-radius:14px;background:#e8e3d9;aspect-ratio:3.82/1}
.about__media img{width:100%;height:100%;object-fit:cover}

@media(max-width:1199px){
  .about{padding:72px 0 96px}
  .about__head h2{font-size:clamp(60px,7vw,82px)}
  .about__copy{width:54%;margin-top:34px}
}
@media(max-width:799px){
  .about{padding:68px 0 80px}
  .about__inner{width:min(calc(100% - 40px),680px)}
  .about__head{align-items:flex-start;gap:18px}
  .about__head h2{font-size:clamp(48px,13vw,66px);line-height:1.06}
  .about__head>span{margin-top:6px;font-size:34px}
  .about__copy{width:100%;margin-top:34px}
  .about__copy p+p{margin-top:8px}
  .about__media{height:auto;margin-top:30px;aspect-ratio:2/1;border-radius:12px}
  .about__media img{object-position:32% center}
}

/* ---------- FAQ ---------- */
.faq{padding:150px 0 150px;background:radial-gradient(circle at 0 0,#383838 0,#202020 20%,#080808 48%,#000 72%);color:#fff;
  font-family:"Inter",Arial,sans-serif}
.faq__inner{display:grid;grid-template-columns:minmax(270px,.9fr) minmax(430px,1.24fr);align-items:start;gap:clamp(80px,13vw,180px);
  width:min(84vw,1644px);margin-inline:auto}
.faq__title-row{width:100%}
.faq__title-row h2{margin:0;color:#f4f4f4;font-size:clamp(58px,5.8vw,96px);font-weight:300;line-height:1.08;letter-spacing:-.04em}
.faq__title-line{display:flex;align-items:center;gap:26px;width:max-content}
.faq__title-line i{display:block;flex:0 0 auto;color:#fff;font-size:.52em;font-style:normal;font-weight:600;line-height:1;letter-spacing:0;transform-origin:50% 50%;animation:symbolSpin 9s linear infinite}
.faq__lead{max-width:400px;margin:32px 0 0;color:#c3c3c3;font-size:var(--font-size-description);font-weight:400;line-height:var(--line-height-description)}
.faq__list{display:grid;gap:12px;margin-top:2px}
.faq details{overflow:hidden;border:0;border-radius:14px;background:#fff;color:#080808}
.faq summary{position:relative;display:flex;align-items:center;min-height:96px;padding:0 68px 0 24px;list-style:none;cursor:pointer;
  font-size:18px;font-weight:500;line-height:1.3}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:22px;top:50%;width:30px;height:30px;border-radius:50%;
  background-color:#050505;background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:center;background-repeat:no-repeat;
  background-size:13px 1px,1px 13px;transform:translateY(-50%) rotate(0);transition:transform .42s cubic-bezier(.22,1,.36,1)}
.faq details[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.faq__answer{overflow:hidden}
.faq details p{max-width:90%;margin:0;padding:0 24px 32px;color:#333;font-size:var(--font-size-description);font-weight:400;line-height:var(--line-height-description)}

@media(max-width:1099px){
  .faq{padding:112px 0 118px}
  .faq__inner{grid-template-columns:minmax(240px,.8fr) minmax(400px,1.2fr);gap:50px;width:min(88vw,980px)}
  .faq__title-row h2{font-size:clamp(50px,7vw,72px)}
  .faq__title-line{gap:20px}
}
@media(max-width:799px){
  .faq{padding:90px 0 96px}
  .faq__inner{grid-template-columns:1fr;gap:38px;width:min(calc(100% - 40px),680px)}
  .faq__title-row h2{font-size:clamp(48px,14vw,66px)}
  .faq__title-line{gap:16px}
  .faq__lead{max-width:100%;margin-top:20px}
  .faq__list{gap:12px;margin-top:0}
  .faq summary{min-height:86px;padding:0 62px 0 18px;font-size:18px}
  .faq summary::after{right:18px;width:28px;height:28px;background-size:12px 1px,1px 12px}
  .faq details p{max-width:100%;padding:0 18px 28px}
}

/* ---------- FINAL CTA ---------- */
.finalcta{position:relative;overflow:hidden;padding:104px 20px 102px;border-top:1px solid #a9a9a9;background:#f8f8f8;color:#050505;text-align:center;
  font-family:"Inter",Arial,sans-serif}
.finalcta__tag{display:inline-flex;align-items:center;justify-content:center;min-width:102px;height:28px;padding:0 16px;border:1px solid #777;
  border-radius:999px;color:#111;font-size:10px;font-weight:600;line-height:1;text-transform:uppercase}
.finalcta h2{max-width:900px;margin:27px auto 0;color:#050505;font-size:clamp(48px,4.6vw,64px);font-weight:400;line-height:1.08;letter-spacing:-.035em}
.finalcta p{max-width:720px;margin:26px auto 0;color:#555;font-size:var(--font-size-description);font-weight:400;line-height:var(--line-height-description)}
.finalcta p strong{color:#111;font-weight:600}

@media(max-width:799px){
  .finalcta{padding:84px 20px 88px}
  .finalcta__tag{height:30px}
  .finalcta h2{max-width:620px;margin-top:25px;font-size:clamp(30px,8vw,38px);line-height:1.1}
  .finalcta h2 br{display:none}
  .finalcta p{max-width:560px;margin-top:24px}
  .cta--final{width:min(100%,290px);min-width:0;margin-top:30px}
}

/* ---------- FOOTER ---------- */
.footer{padding:0;background:#000;color:#f4f4f4;font-family:"Inter",Arial,sans-serif;text-align:left}
.footer__main{display:grid;grid-template-columns:minmax(300px,1fr) 285px 210px;gap:70px;width:min(84vw,1644px);min-height:370px;margin-inline:auto;padding:126px 0 104px}
.footer__brand-block img{width:80px;height:auto}
.footer__brand-block p{margin:30px 0 0;color:#e4e4e4;font-size:var(--font-size-description);font-weight:400;line-height:var(--line-height-description)}
.footer__group h3{margin:0 0 23px;color:#f3f3f3;font-size:14px;font-weight:400;line-height:1;text-transform:uppercase}
.footer__group p{margin:0;color:#9a9a9a;font-size:var(--font-size-description);font-weight:400;line-height:1.65;white-space:pre-line}
.footer__information .footer__group+.footer__group{margin-top:36px}
.footer__instagram{display:inline-flex;align-items:center;gap:11px;height:36px;padding:0 14px;border-radius:999px;background:#fff;color:#111;font-size:14px;font-weight:500;line-height:1;white-space:nowrap}
.footer__instagram svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7}
.footer__service{margin-top:49px}
.footer__bottom{border-top:1px solid #4a4a4a}
.footer__bottom-inner{display:grid;grid-template-columns:repeat(3,1fr);align-items:center;width:min(84vw,1644px);min-height:76px;margin-inline:auto}
.footer__bottom p,.footer__bottom a{margin:0;color:#f0f0f0;font-size:14px;font-weight:400;line-height:1.3}
.footer__bottom p:nth-child(2){text-align:center}
.footer__bottom a{justify-self:end}
.footer__bottom a span{display:inline-block;margin-left:4px;transition:transform .25s ease}
.footer__bottom a:hover span{transform:translateY(-4px)}

@media(max-width:999px){
  .footer__main{grid-template-columns:minmax(260px,1fr) 250px;gap:64px;width:min(calc(100% - 48px),820px);padding:112px 0}
  .footer__contact{grid-column:2}
}
@media(max-width:699px){
  .footer__main{grid-template-columns:1fr;gap:48px;width:min(calc(100% - 40px),520px);min-height:0;padding:96px 0}
  .footer__contact{grid-column:auto}
  .footer__bottom-inner{grid-template-columns:1fr;gap:13px;width:min(calc(100% - 40px),520px);padding:28px 0}
  .footer__bottom p:nth-child(2){text-align:left}
  .footer__bottom a{justify-self:start}
}

/* ---------- REVEAL ---------- */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .6s ease,transform .6s ease}
.reveal.is-visible{opacity:1;transform:none}

/* =========================================================================
   DESKTOP
   ========================================================================= */
@media(min-width:720px){
  .grid--2{grid-template-columns:1fr 1fr}
  .grid--3{grid-template-columns:repeat(3,1fr)}
}
@media(min-width:1080px){
  section{padding:88px 24px}
  .cta-fixed{display:none !important}
}

@media(max-width:1649px) and (min-width:1280px){
  .apply{padding:88px 0 96px}
  .apply__wrap{grid-template-columns:minmax(0,910px) minmax(320px,360px);gap:clamp(32px,3vw,52px)}
  .apply .opt__box{padding-right:36px;padding-left:14px;font-size:14px}
  .apply__steps{width:100%}
}

@media(max-width:1279px){
  .apply__wrap{grid-template-columns:1fr;gap:64px}
  .apply__steps{width:100%;min-height:0}
}

@media(max-width:1079px){
  .apply{padding:80px 0}
  .apply__wrap{grid-template-columns:1fr;gap:64px}
  .apply__title{font-size:52px}
  .apply .qgroup{grid-template-columns:1fr;gap:14px}
  .apply .opt-inline{grid-template-columns:1fr;gap:14px}
  .apply .step--contact.is-active{grid-template-columns:1fr}
  .apply__steps{width:100%;min-height:0}
}

@media(max-width:1199px) and (min-width:900px){
  .hero{min-height:720px}
  .hero::before{width:44%}
  .hero__panel{width:min(420px,calc(44vw - var(--container-edge) - 32px));min-width:0}
  .hero__media{width:56%}
  .hero__content{top:22%}
  .hero__title{font-size:clamp(46px,5vw,58px)}
  .hero__seal{top:24%;width:100px;height:100px;left:-50px}
  .hero__seal-text span{width:7px;margin-left:-3.5px;font-size:7px}
  .hero__seal-center strong{font-size:21px}.hero__seal-center span{margin-top:4px;font-size:8px}
}

@media(max-width:1199px) and (min-width:720px){
  .clients{min-height:0;padding:104px 0}
  .clients__head{height:160px}
  .clients__title{font-size:54px}
  .clients__symbol{width:90px;height:95px;margin:2px 0 0}
  .clients__grid{height:180px}
  .clientlogo{height:90px}
  .clientlogo img{max-height:40px}
}

@media(max-width:899px){
  .hero{display:block;height:auto;min-height:0;overflow:visible;background:linear-gradient(145deg,#242424,#080808 72%)}
  .hero::before{display:none}
  .hero__container{height:auto}
  .hero__panel{width:100%;min-width:0;height:auto;padding:28px 0 54px}
  .hero__logo{position:static;width:70px}
  .hero__content{position:static;width:100%;max-width:560px;margin:58px 0 0}
  .hero__eyebrow{margin:0 0 20px;font-size:13px}
  .hero__title{margin-bottom:20px;font-size:clamp(42px,11vw,58px);line-height:1.16}
  .hero__title em{margin-top:6px}
  .hero__sub{margin-bottom:24px}
  .hero__chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:8px 12px;margin-bottom:38px}
  .hero__chips li,.hero__chips li:nth-child(n){grid-column:auto;width:100%;min-width:0;padding-inline:8px;font-size:clamp(12px,2.2vw,14px)}
  .hero__media{position:relative;width:100%;height:clamp(360px,78vw,620px);overflow:visible}
  .hero__img{object-position:57% center}
  .hero__seal{top:-48px;left:50%;width:96px;height:96px;transform:translateX(-50%)}
  .hero__seal-text span{width:6.5px;margin-left:-3.25px;font-size:6.5px}
  .hero__seal-center strong{font-size:20px}.hero__seal-center span{margin-top:4px;font-size:7.5px}
}

@media(max-width:420px){
  .hero__content{margin-top:48px}
  .hero__chips li,.hero__chips li:nth-child(n){min-width:0;font-size:12px;padding-inline:8px}
  .cta--hero{width:100%;height:64px}
}

@media(max-width:719px){
  .stats{height:auto;min-height:0;padding:48px 0}
  .stats__container{height:auto}
  .stats__grid{grid-template-columns:repeat(2,minmax(0,1fr));height:auto;padding:0;gap:30px 18px}
  .stat:nth-child(n){justify-self:start}
  .stat__num{font-size:40px}
  .stat__label{font-size:12px;white-space:normal}
  .clients{height:auto;min-height:0;padding:clamp(96px,12vw,128px) 0}
  .clients__head{height:auto;margin-bottom:40px}
  .clients__title{font-size:40px}
  .clients__symbol{width:50px;height:53px}
  .clients__grid{grid-template-columns:repeat(3,1fr);height:280px}
  .clientlogo:nth-child(n){height:70px;border-right:1px solid #888;border-bottom:1px solid #888}
  .clientlogo:nth-child(3n){border-right:0}
  .clientlogo:nth-child(n+10){border-bottom:0}
  .apply{padding:64px 0}
  .apply__head{display:block}
  .apply__title{font-size:clamp(40px,12vw,48px)}
  .apply__counter{margin-top:20px}
  .apply .progress{margin:32px 0 44px}
  .apply .step__intro{margin-bottom:30px}
  .apply .qgroup{margin-bottom:12px}
  .apply .qgroup__q{font-size:17px}
  .apply .step--contact .opt-inline{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .apply .opt__box{min-height:56px;font-size:15px;white-space:normal}
  .apply .form-msg:empty{min-height:0;margin-top:0}
  .apply .form-footer{align-items:stretch;flex-direction:column;margin-top:24px;padding-top:18px}
  .apply__secure{display:none}
  .apply form[data-current-stage="7"] .apply__secure{display:flex}
  .apply .form-nav{width:100%}
  .apply .form-nav button{flex:1}
  .apply .cta--form{width:100%}
  .apply__steps{padding:30px 24px 0}
  .apply__steps-symbol{top:29px;right:25px}
  .apply__steps li{padding-left:54px;font-size:17px}
  .apply__pay{margin:28px -24px 0;padding:22px 24px}
}

@media(prefers-reduced-motion:reduce){
  .apply .step.is-active{animation:none}
  .apply .progress__bar{transition:none}
}

/* Evita layout e pintura antecipados das secoes distantes da primeira dobra. */
.clients{content-visibility:auto;contain-intrinsic-size:auto 720px}
.apply{content-visibility:auto;contain-intrinsic-size:auto 1100px}
.projects{content-visibility:auto;contain-intrinsic-size:auto 900px}
.pains{content-visibility:auto;contain-intrinsic-size:auto 820px}
.tried{content-visibility:auto;contain-intrinsic-size:auto 900px}
.method{content-visibility:auto;contain-intrinsic-size:auto 760px}
.deliver{content-visibility:auto;contain-intrinsic-size:auto 940px}
.cases{content-visibility:auto;contain-intrinsic-size:auto 3000px}
.about{content-visibility:auto;contain-intrinsic-size:auto 900px}
.faq{content-visibility:auto;contain-intrinsic-size:auto 900px}
.finalcta{content-visibility:auto;contain-intrinsic-size:auto 520px}
.footer{content-visibility:auto;contain-intrinsic-size:auto 450px}

/* =========================================================================
   ENTRADAS DE CONTEUDO
   A propriedade translate preserva transforms de hover, carrosseis e icones.
   ========================================================================= */
@keyframes heroContentEnter{
  from{translate:0 18px}
  to{translate:0 0}
}
@keyframes heroMediaEnter{
  from{scale:1.018}
  to{scale:1}
}
@keyframes heroSealEnter{
  from{opacity:0;scale:.88}
  to{opacity:1;scale:1}
}
.hero__logo{animation:heroContentEnter .72s cubic-bezier(.22,1,.36,1) both}
.hero__eyebrow{animation:heroContentEnter .72s .06s cubic-bezier(.22,1,.36,1) both}
.hero__title{animation:heroContentEnter .78s .12s cubic-bezier(.22,1,.36,1) both}
.hero__sub{animation:heroContentEnter .78s .2s cubic-bezier(.22,1,.36,1) both}
.hero__chips{animation:heroContentEnter .78s .28s cubic-bezier(.22,1,.36,1) both}
.cta--hero{animation:heroContentEnter .78s .36s cubic-bezier(.22,1,.36,1) both,pulsarCTA 2s 1s infinite}
.hero__img{animation:heroMediaEnter 1s cubic-bezier(.22,1,.36,1) both}
.hero__seal{animation:heroSealEnter .72s .48s cubic-bezier(.22,1,.36,1) both}

.entrance-item{
  opacity:0;
  translate:0 24px;
  transition:opacity .7s cubic-bezier(.22,1,.36,1),translate .82s cubic-bezier(.22,1,.36,1);
  transition-delay:0ms;
  will-change:opacity,translate;
}
.entrance-item.is-entered{opacity:1;translate:0 0;transition-delay:var(--entrance-delay,0ms);will-change:auto}

/* Informacoes essenciais do rodape nao dependem do observer de animacao. */
.footer .entrance-item{opacity:1;translate:0 0;will-change:auto}

@media(max-width:719px){
  .entrance-item{translate:0 18px}
  .entrance-item.is-entered{translate:0 0}
}

/* =========================================================================
   ACESSIBILIDADE - reduz movimento
   ========================================================================= */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none !important;transition:none !important}
  .reveal{opacity:1;transform:none}
  .entrance-item,.entrance-item.is-entered{opacity:1;translate:0 0}
  .cta::after,.projects__cta::after,.cta-fixed::after{display:none}
  .hero__logo,.hero__title,.hero__sub,.hero__chips,.cta--hero,.hero__img{opacity:1;transform:none}
}
