/* ============================================================
   AUTOCAR VISTORIAS — estilo editorial cinematográfico
   ============================================================ */
:root{
  --bg:#0A0A0B; --bg2:#0E0E11; --panel:#141519; --panel2:#1A1B20;
  --gold:#E0A82E; --gold-soft:#F4D58A; --gold-deep:#B8821C;
  --yellow:#FFCC00; --green:#25D366;
  --text:#F3F3F5; --muted:#8C8C94; --faint:#5C5C64;
  --line:rgba(255,255,255,.10); --line-soft:rgba(255,255,255,.06);
  --maxw:1280px; --pad:clamp(20px,5vw,72px);
  --display:'Archivo',system-ui,sans-serif;
  --cond:'Saira Condensed',sans-serif;
  --body:'Manrope',system-ui,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
html.lenis,html.lenis body{height:auto;}
.lenis.lenis-smooth{scroll-behavior:auto !important;}
.lenis.lenis-stopped{overflow:hidden;}
body{
  font-family:var(--body); background:var(--bg); color:var(--text);
  -webkit-font-smoothing:antialiased; overflow-x:hidden; line-height:1.55;
}
img,video{display:block; max-width:100%;}
a{color:inherit; text-decoration:none;}
::selection{background:var(--gold); color:#1A1304;}
.wrap{max-width:var(--maxw); margin:0 auto; padding-left:var(--pad); padding-right:var(--pad);}

/* labels */
.kicker{font-family:var(--cond); font-weight:700; text-transform:uppercase; letter-spacing:.24em; font-size:clamp(11px,1vw,13px); color:var(--gold);}
.tag-num{font-family:var(--cond); font-weight:600; letter-spacing:.16em; color:var(--gold); font-size:13px;}
.section{position:relative; padding:clamp(80px,12vh,160px) 0;}

/* ---------- reveal primitives ---------- */
.mask{display:block; overflow:hidden;}
.up{display:inline-block; transform:translateY(115%); opacity:.001; will-change:transform;}
.in .up,.up.in{transform:translateY(0); opacity:1; transition:transform 1s cubic-bezier(.16,1,.3,1), opacity 1s cubic-bezier(.16,1,.3,1);}
[data-reveal]{opacity:0; transform:translateY(34px); transition:opacity 1.1s cubic-bezier(.16,1,.3,1), transform 1.1s cubic-bezier(.16,1,.3,1);}
[data-reveal].in{opacity:1; transform:none;}
[data-reveal][data-delay="1"]{transition-delay:.08s;}
[data-reveal][data-delay="2"]{transition-delay:.16s;}
[data-reveal][data-delay="3"]{transition-delay:.24s;}
[data-reveal][data-delay="4"]{transition-delay:.32s;}
@media (prefers-reduced-motion:reduce){
  .up{transform:none; opacity:1;}
  [data-reveal]{opacity:1; transform:none;}
}

/* ============================================================
   HEADER
   ============================================================ */
.hd{position:fixed; inset:0 0 auto 0; z-index:60; display:flex; align-items:center; justify-content:space-between;
  padding:18px var(--pad); transition:background .5s ease, padding .5s ease, border-color .5s ease;
  border-bottom:1px solid transparent;}
.hd.scrolled{background:rgba(8,8,10,.82); backdrop-filter:blur(14px); padding-top:12px; padding-bottom:12px; border-bottom-color:var(--line-soft);}
.hd .brand{display:flex; align-items:center; gap:12px;}
.hd .brand img{height:38px; width:auto; transition:height .5s ease;}
.hd.scrolled .brand img{height:32px;}
.hd nav{display:flex; align-items:center; gap:30px;}
.hd nav a{font-size:14px; font-weight:600; color:#D7D7DB; letter-spacing:.01em; position:relative; padding:4px 0;}
.hd nav a::after{content:""; position:absolute; left:0; bottom:0; width:0; height:1px; background:var(--gold); transition:width .35s ease;}
.hd nav a:hover{color:#fff;}
.hd nav a:hover::after{width:100%;}
.btn-wpp{display:inline-flex; align-items:center; gap:9px; font-family:var(--body); font-weight:700; font-size:14px;
  background:var(--green); color:#fff; padding:11px 18px; border-radius:999px; transition:transform .3s ease, box-shadow .3s ease; box-shadow:0 8px 26px -10px rgba(37,211,102,.6);}
.btn-wpp:hover{transform:translateY(-2px); box-shadow:0 14px 34px -10px rgba(37,211,102,.75);}
.btn-wpp svg{width:17px; height:17px;}
.hd .menu-btn{display:none;}

/* ============================================================
   HERO
   ============================================================ */
.hero{position:relative; min-height:100svh; display:flex; align-items:flex-end; overflow:hidden;}
.hero__bg{position:absolute; inset:0; z-index:0;}
.hero__bg video,.hero__bg img{width:100%; height:100%; object-fit:cover; object-position:center 38%;}
.hero__bg::after{content:""; position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(8,8,10,.72) 0%, rgba(8,8,10,.25) 32%, rgba(8,8,10,.55) 70%, rgba(8,8,10,.97) 100%);}
.hero__bg::before{content:""; position:absolute; inset:0; z-index:1;
  background:radial-gradient(120% 80% at 80% 10%, rgba(224,168,46,.16), transparent 55%);}
.hero__inner{position:relative; z-index:3; width:100%; max-width:var(--maxw); margin:0 auto; padding:0 var(--pad) clamp(48px,8vh,96px);}
.hero__kick{display:flex; align-items:center; gap:14px; margin-bottom:22px;}
.hero__kick::before{content:""; width:34px; height:2px; background:var(--gold);}
.hero h1{font-family:var(--cond); font-weight:800; text-transform:uppercase; line-height:.9; letter-spacing:.005em;
  font-size:clamp(42px,8vw,120px); max-width:none;}
.hero h1 .mask{display:block;}
.hero h1 .up{white-space:nowrap; padding-bottom:.04em;}
.hero h1 .gold{color:var(--gold);}
.hero__sub{margin-top:26px; max-width:46ch; font-size:clamp(15px,1.5vw,18px); color:#C8C8CE; line-height:1.6;}
.hero__cta{margin-top:34px; display:flex; flex-wrap:wrap; gap:14px; align-items:center;}
.btn-ghost{display:inline-flex; align-items:center; gap:10px; font-weight:700; font-size:14px; color:#EDEDF0;
  border:1px solid rgba(255,255,255,.22); padding:12px 22px; border-radius:999px; transition:background .3s, border-color .3s;}
.btn-ghost:hover{background:rgba(255,255,255,.07); border-color:rgba(255,255,255,.4);}
.btn-wpp.lg,.btn-ghost.lg{padding:15px 26px; font-size:15px;}
.hero__corner{position:absolute; z-index:3; font-family:var(--cond); font-weight:600; letter-spacing:.18em; text-transform:uppercase; font-size:12px; color:rgba(255,255,255,.5);}
.hero__corner.tr{top:104px; right:var(--pad); text-align:right; line-height:1.7;}
.hero__social{display:inline-flex; align-items:center; gap:7px; color:var(--gold); text-transform:none; letter-spacing:.05em; font-family:var(--cond); font-weight:600; font-size:13.5px; transition:opacity .3s;}
.hero__social:hover{opacity:.72;}
.hero__social svg{width:16px; height:16px;}
.hero__scroll{position:absolute; left:var(--pad); bottom:36px; z-index:3; display:flex; align-items:center; gap:10px; font-family:var(--cond); letter-spacing:.16em; text-transform:uppercase; font-size:12px; color:rgba(255,255,255,.55);}
.hero__scroll .line{width:1px; height:46px; background:linear-gradient(var(--gold),transparent); position:relative; overflow:hidden;}
.hero__scroll .line::after{content:""; position:absolute; top:-50%; left:0; width:100%; height:50%; background:var(--gold); animation:scrolldot 1.8s ease-in-out infinite;}
@keyframes scrolldot{0%{top:-50%}60%,100%{top:100%}}

/* marquee */
.marquee{position:relative; z-index:3; border-top:1px solid var(--line-soft); border-bottom:1px solid var(--line-soft); background:rgba(8,8,10,.35); overflow:hidden; white-space:nowrap;}
.marquee__track{display:inline-flex; align-items:center; gap:0; padding:14px 0; animation:scrollx 28s linear infinite; will-change:transform;}
.marquee:hover .marquee__track{animation-play-state:paused;}
.marquee span{font-family:var(--cond); font-weight:700; text-transform:uppercase; letter-spacing:.08em; font-size:clamp(16px,2vw,26px); color:#E9E9ED;}
.marquee b{color:var(--gold); margin:0 28px; font-size:14px; transform:translateY(-2px);}
@keyframes scrollx{to{transform:translateX(-50%);}}

/* ============================================================
   INTRO STATEMENT
   ============================================================ */
.intro{border-bottom:1px solid var(--line-soft);}
.intro__grid{display:grid; grid-template-columns:.8fr 1.6fr; gap:clamp(28px,5vw,80px); align-items:start;}
.intro__label{font-family:var(--cond); font-weight:700; text-transform:uppercase; letter-spacing:.22em; font-size:15px; color:var(--gold); padding-top:12px;}
.intro__statement{font-family:var(--display); font-weight:600; font-size:clamp(26px,3.6vw,52px); line-height:1.12; letter-spacing:-.02em;}
.intro__statement .gold{color:var(--gold);}
.intro__statement .dim{color:var(--faint);}
.intro__foot{margin-top:40px; display:grid; grid-template-columns:repeat(2,1fr); gap:28px; max-width:760px;}
.intro__foot p{color:var(--muted); font-size:15.5px; line-height:1.65;}
.intro__foot p strong{color:var(--text); font-weight:700;}

/* ============================================================
   KINETIC (interleaved words + images)
   ============================================================ */
.kinetic{text-align:center; overflow:hidden;}
.kinetic .kline{font-family:var(--cond); font-weight:800; text-transform:uppercase; line-height:.92; letter-spacing:.01em;
  font-size:clamp(34px,7.2vw,104px); display:flex; align-items:center; justify-content:center; gap:clamp(12px,2.4vw,40px); white-space:nowrap;}
.kinetic .kline .gold{color:var(--gold);}
.kinetic .kthumb{display:inline-block; height:clamp(40px,7vw,100px); width:clamp(78px,15vw,210px); border-radius:10px; overflow:hidden; flex-shrink:0; border:1px solid var(--line); box-shadow:0 24px 50px -24px rgba(0,0,0,.8);}
.kinetic .kthumb img{width:100%; height:100%; object-fit:cover;}
.kinetic__sub{margin:clamp(36px,6vw,64px) auto 0; max-width:54ch; color:var(--muted); font-size:clamp(15px,1.5vw,18px);}

/* ============================================================
   STEPS
   ============================================================ */
.steps__head{display:flex; align-items:flex-end; justify-content:space-between; gap:30px; flex-wrap:wrap; margin-bottom:clamp(40px,6vw,72px);}
.steps__head h2{font-family:var(--display); font-weight:700; font-size:clamp(30px,4.4vw,64px); line-height:1.02; letter-spacing:-.02em; max-width:16ch;}
.steps__head p{color:var(--muted); max-width:34ch; font-size:16px;}
.steps__grid{display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(18px,2vw,28px);}
.step{position:relative; background:var(--panel); border:1px solid var(--line-soft); border-radius:18px; padding:40px 34px 38px; overflow:hidden; transition:transform .5s cubic-bezier(.16,1,.3,1), border-color .5s;}
.step::before{content:""; position:absolute; left:0; top:0; width:100%; height:3px; background:linear-gradient(90deg,var(--gold),transparent); opacity:0; transition:opacity .5s;}
.step:hover{transform:translateY(-8px); border-color:rgba(224,168,46,.4);}
.step:hover::before{opacity:1;}
.step__n{display:block; font-family:var(--display); font-weight:800; font-size:56px; line-height:1; letter-spacing:-.03em; margin-bottom:26px; color:transparent; -webkit-text-stroke:1.4px var(--gold-deep);}
.step h3{font-family:var(--display); font-weight:700; font-size:22px; margin-bottom:12px;}
.step p{color:var(--muted); font-size:15px; line-height:1.65;}

/* ============================================================
   ABOUT (proprietários)
   ============================================================ */
.about__grid{display:grid; grid-template-columns:.92fr 1.08fr; gap:clamp(28px,5vw,72px); align-items:center;}
.about__media{position:relative; margin:0;}
.about__media img{width:100%; height:auto; display:block; border-radius:18px; border:1px solid var(--line); box-shadow:0 50px 90px -42px rgba(0,0,0,.95);}
.about__media figcaption{position:absolute; left:18px; bottom:16px; font-family:var(--cond); font-weight:600; letter-spacing:.14em; text-transform:uppercase; font-size:12px; color:#fff; background:rgba(8,8,10,.6); backdrop-filter:blur(6px); padding:8px 13px; border-radius:8px; border:1px solid rgba(255,255,255,.1);}
.about__text h2{font-family:var(--display); font-weight:700; font-size:clamp(30px,4.2vw,58px); line-height:1.04; letter-spacing:-.02em; margin:16px 0 22px;}
.about__text p{color:var(--muted); font-size:16.5px; line-height:1.7; max-width:54ch;}
.about__text p + p{margin-top:18px;}

/* ============================================================
   CASES (objections)
   ============================================================ */
.cases{background:var(--bg2); border-top:1px solid var(--line-soft); border-bottom:1px solid var(--line-soft);}
.cases__lead{max-width:48ch; font-family:var(--display); font-weight:600; font-size:clamp(22px,2.6vw,34px); line-height:1.22; letter-spacing:-.01em; margin-bottom:clamp(40px,6vw,64px);}
.cases__lead .gold{color:var(--gold);}
.case{display:grid; grid-template-columns:.5fr 1.5fr; gap:24px; padding:30px 0; border-top:1px solid var(--line-soft); align-items:baseline;}
.case:last-child{border-bottom:1px solid var(--line-soft);}
.case__q{font-family:var(--display); font-weight:700; font-size:clamp(19px,2vw,26px); letter-spacing:-.01em;}
.case__q .gold{color:var(--gold);}
.case__a{color:var(--muted); font-size:16px; line-height:1.65; max-width:60ch;}

/* ============================================================
   STATS
   ============================================================ */
.stats{position:relative; overflow:hidden;}
.stats__bg{position:absolute; inset:0; z-index:0;}
.stats__bg img{width:100%; height:100%; object-fit:cover; opacity:.22;}
.stats__bg::after{content:""; position:absolute; inset:0; background:linear-gradient(180deg,var(--bg) 0%, rgba(10,10,11,.6) 50%, var(--bg) 100%);}
.stats__inner{position:relative; z-index:2;}
.stats h2{font-family:var(--cond); font-weight:800; text-transform:uppercase; font-size:clamp(34px,6vw,92px); line-height:.95; letter-spacing:.01em; text-align:center; margin-bottom:clamp(48px,7vw,80px);}
.stats h2 .gold{color:var(--gold);}
.stats__grid{display:grid; grid-template-columns:repeat(4,1fr); gap:clamp(16px,2vw,28px);}
.stat{text-align:center; padding:14px;}
.stat__n{font-family:var(--display); font-weight:800; font-size:clamp(44px,6.5vw,86px); line-height:1; letter-spacing:-.03em; color:#fff;}
.stat__n .u{color:var(--gold);}
.stat__l{margin-top:14px; color:var(--muted); font-size:14.5px; font-weight:600; line-height:1.4;}
.stat + .stat{border-left:1px solid var(--line-soft);}

/* ============================================================
   CTA BAND
   ============================================================ */
.ctaband{position:relative; overflow:hidden; padding:clamp(90px,14vw,180px) 0;}
.ctaband__bg{position:absolute; inset:0; z-index:0; background:radial-gradient(90% 130% at 88% -10%, rgba(224,168,46,.16), transparent 55%), linear-gradient(180deg,#100F12,#08080A); border-top:1px solid var(--line-soft); border-bottom:1px solid var(--line-soft);}
.ctaband__inner{position:relative; z-index:2; text-align:left;}
.ctaband h2{font-family:var(--display); font-weight:800; font-size:clamp(34px,5.4vw,80px); line-height:1; letter-spacing:-.025em; max-width:15ch;}
.ctaband p{margin:22px 0 32px; color:#C8C8CE; font-size:clamp(16px,1.6vw,19px); max-width:42ch;}

/* ============================================================
   QUOTE (stacked slogan)
   ============================================================ */
.quote{text-align:center; padding:clamp(90px,14vw,190px) 0; border-top:1px solid var(--line-soft);}
.quote__small{margin-bottom:30px;}
.quote__big{font-family:var(--cond); font-weight:800; text-transform:uppercase; line-height:.94; letter-spacing:.01em; font-size:clamp(44px,9vw,150px);}
.quote__big div:nth-child(2){color:var(--gold);}
.quote__big div:nth-child(3){color:var(--faint); -webkit-text-fill-color:transparent; -webkit-text-stroke:1.4px var(--gold-deep);}

/* ============================================================
   GALLERY
   ============================================================ */
.gallery__head{display:flex; align-items:flex-end; justify-content:space-between; gap:24px; flex-wrap:wrap; margin-bottom:36px;}
.gallery__head h2{font-family:var(--display); font-weight:700; font-size:clamp(28px,4vw,56px); letter-spacing:-.02em;}
.gallery__grid{display:grid; grid-template-columns:repeat(12,1fr); gap:14px; grid-auto-rows:minmax(120px,auto);}
.gitem{position:relative; overflow:hidden; border-radius:14px; border:1px solid var(--line-soft);}
.gitem img{width:100%; height:100%; object-fit:cover; transition:transform 1.1s cubic-bezier(.16,1,.3,1);}
.gitem:hover img{transform:scale(1.06);}
.gitem .cap{position:absolute; left:16px; bottom:14px; z-index:2; font-family:var(--cond); font-weight:600; letter-spacing:.14em; text-transform:uppercase; font-size:12px; color:#fff;}
.gitem::after{content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 55%, rgba(0,0,0,.6));}
.g-a{grid-column:span 7; grid-row:span 2;}
.g-b{grid-column:span 5; grid-row:span 1;}
.g-c{grid-column:span 5; grid-row:span 1;}
.g-d{grid-column:span 5;}
.g-e{grid-column:span 7;}

/* ============================================================
   TESTIMONIALS
   ============================================================ */
.tw{background:var(--bg2); border-top:1px solid var(--line-soft); border-bottom:1px solid var(--line-soft);}
.tw__head{margin-bottom:clamp(40px,6vw,64px); text-align:center;}
.tw__head h2{font-family:var(--display); font-weight:700; font-size:clamp(28px,4vw,56px); letter-spacing:-.02em; margin-top:14px;}
.tw__grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px;}
.tcard{background:var(--panel); border:1px solid var(--line-soft); border-radius:18px; padding:30px 28px; display:flex; flex-direction:column; gap:18px;}
.tcard .stars{display:flex; gap:3px; color:var(--gold);}
.tcard .stars svg{width:18px; height:18px;}
.tcard p{font-size:16px; line-height:1.6; color:#DBDBDF;}
.tcard .who{display:flex; align-items:center; gap:12px; margin-top:auto;}
.tcard .av{width:42px; height:42px; border-radius:50%; background:linear-gradient(135deg,var(--gold),var(--gold-deep)); display:flex; align-items:center; justify-content:center; font-family:var(--display); font-weight:700; color:#1A1304; font-size:16px;}
.tcard .who b{display:block; font-size:14.5px; font-weight:700;}
.tcard .who span{font-size:12.5px; color:var(--muted);}
.tw__note{text-align:center; margin-top:28px; font-size:13px; color:var(--faint);}

/* ============================================================
   LOCATION
   ============================================================ */
.loc__grid{display:grid; grid-template-columns:1fr 1fr; gap:clamp(24px,4vw,56px); align-items:center;}
.loc__info h2{font-family:var(--display); font-weight:700; font-size:clamp(30px,4.4vw,60px); line-height:1.02; letter-spacing:-.02em; margin:16px 0 22px;}
.loc__rows{display:flex; flex-direction:column; gap:2px; margin:30px 0;}
.loc__row{display:flex; gap:16px; padding:18px 0; border-top:1px solid var(--line-soft); align-items:flex-start;}
.loc__row:last-child{border-bottom:1px solid var(--line-soft);}
.loc__row .ic{width:40px; height:40px; flex-shrink:0; border-radius:10px; background:var(--panel); border:1px solid var(--line-soft); display:flex; align-items:center; justify-content:center; color:var(--gold);}
.loc__row .ic svg{width:19px; height:19px;}
.loc__row .t b{display:block; font-size:12px; font-family:var(--cond); letter-spacing:.16em; text-transform:uppercase; color:var(--muted); margin-bottom:5px; font-weight:600; white-space:nowrap;}
.loc__row .t span{font-size:16px; color:var(--text); font-weight:600;}
.loc__visual{display:flex; flex-direction:column; gap:14px;}
.loc__photo{position:relative; margin:0; border-radius:18px; overflow:hidden; border:1px solid var(--line); aspect-ratio:16/10;}
.loc__photo img{width:100%; height:100%; object-fit:cover; object-position:center 32%;}
.loc__photo figcaption{position:absolute; left:16px; bottom:14px; font-family:var(--cond); font-weight:600; letter-spacing:.14em; text-transform:uppercase; font-size:12px; color:#fff; background:rgba(8,8,10,.55); backdrop-filter:blur(6px); padding:7px 12px; border-radius:8px;}
.loc__map{position:relative; border-radius:18px; overflow:hidden; border:1px solid var(--line); min-height:300px; background:var(--panel);}
.loc__map iframe{position:absolute; inset:0; width:100%; height:100%; border:0; filter:grayscale(.4) invert(.9) hue-rotate(180deg) contrast(.9);}
.loc__units{display:inline-flex; align-items:center; gap:10px; margin-top:6px; font-family:var(--cond); font-weight:600; letter-spacing:.12em; text-transform:uppercase; font-size:13px; color:var(--gold); border:1px solid rgba(224,168,46,.3); border-radius:999px; padding:8px 16px;}

/* ============================================================
   FOOTER
   ============================================================ */
.ft{background:#060607; border-top:1px solid var(--line-soft); padding-top:clamp(60px,9vw,110px);}
.ft__cta{display:grid; grid-template-columns:repeat(3,1fr); gap:24px; padding-bottom:clamp(50px,7vw,80px); border-bottom:1px solid var(--line-soft);}
.ft__cta .blk h3{font-family:var(--cond); font-weight:800; text-transform:uppercase; font-size:clamp(30px,3.6vw,52px); line-height:1; color:#fff;}
.ft__cta .blk h3 .gold{color:var(--gold);}
.ft__cta .blk p{margin:14px 0 18px; color:var(--muted); font-size:15px; line-height:1.5;}
.ft__cta .blk a.link{font-weight:700; font-size:14px; color:#fff; display:inline-flex; align-items:center; gap:8px; border-bottom:1px solid var(--gold); padding-bottom:3px;}
.ft__cta .blk a.link svg{width:15px;height:15px;transition:transform .3s;}
.ft__cta .blk a.link:hover svg{transform:translate(3px,-3px);}
.ft__mid{display:flex; align-items:center; justify-content:space-between; gap:30px; flex-wrap:wrap; padding:clamp(40px,6vw,64px) 0; border-bottom:1px solid var(--line-soft);}
.ft__mid img{height:64px; width:auto;}
.ft__socials{display:flex; gap:12px;}
.ft__socials a{width:46px; height:46px; border-radius:50%; border:1px solid var(--line); display:flex; align-items:center; justify-content:center; color:#D7D7DB; transition:background .3s, color .3s, border-color .3s;}
.ft__socials a:hover{background:var(--gold); color:#1A1304; border-color:var(--gold);}
.ft__socials a svg{width:19px; height:19px;}
.ft__bot{display:flex; align-items:center; justify-content:space-between; gap:18px; flex-wrap:wrap; padding:30px 0 40px; color:var(--faint); font-size:13px;}
.ft__bot .slogan{font-family:var(--cond); letter-spacing:.18em; text-transform:uppercase; color:var(--muted);}

/* floating whatsapp */
.fab{position:fixed; right:20px; bottom:20px; z-index:55; width:60px; height:60px; border-radius:50%; background:var(--green); display:flex; align-items:center; justify-content:center; box-shadow:0 14px 34px -8px rgba(37,211,102,.7); transition:transform .3s; }
.fab:hover{transform:scale(1.08);}
.fab svg{width:30px; height:30px; color:#fff;}
.fab--ig{bottom:90px; background:linear-gradient(45deg,#F58529 0%,#DD2A7B 50%,#8134AF 78%,#515BD4 100%); box-shadow:0 14px 34px -8px rgba(221,42,123,.6);}
.fab--ig::after{border-color:#DD2A7B;}
.fab::after{content:""; position:absolute; inset:0; border-radius:50%; border:2px solid var(--green); animation:pulse 2.4s ease-out infinite;}
@keyframes pulse{0%{transform:scale(1);opacity:.7}100%{transform:scale(1.7);opacity:0}}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width:1000px){
  .intro__grid{grid-template-columns:1fr;}
  .about__grid{grid-template-columns:1fr; gap:30px;}
  .about__media{max-width:460px;}
  .steps__grid{grid-template-columns:1fr; gap:16px;}
  .stats__grid{grid-template-columns:repeat(2,1fr); gap:30px 16px;}
  .stat + .stat{border-left:none;}
  .stat:nth-child(odd){border-right:1px solid var(--line-soft);}
  .tw__grid{grid-template-columns:1fr;}
  .loc__grid{grid-template-columns:1fr;}
  .gallery__grid{grid-template-columns:repeat(2,1fr); grid-auto-rows:200px;}
  .g-a,.g-b,.g-c,.g-d,.g-e{grid-column:span 1; grid-row:span 1;}
  .g-a{grid-column:span 2; grid-row:span 1;}
  .ft__cta{grid-template-columns:1fr; gap:34px;}
  .case{grid-template-columns:1fr; gap:8px;}
}
@media (max-width:760px){
  .hd nav{position:fixed; inset:0 0 0 auto; width:min(78vw,320px); flex-direction:column; align-items:flex-start; justify-content:center; gap:26px; background:rgba(10,10,12,.97); backdrop-filter:blur(16px); padding:40px; transform:translateX(105%); transition:transform .5s cubic-bezier(.16,1,.3,1); border-left:1px solid var(--line);}
  .hd nav.open{transform:none;}
  .hd nav a{font-size:22px; font-family:var(--cond); font-weight:700; text-transform:uppercase; letter-spacing:.05em;}
  .hd nav .btn-wpp{font-size:16px;}
  .hd .menu-btn{display:flex; flex-direction:column; gap:5px; width:42px; height:42px; align-items:center; justify-content:center; background:none; border:none; cursor:pointer; z-index:70;}
  .hd .menu-btn span{width:24px; height:2px; background:#fff; transition:transform .4s, opacity .3s;}
  .hd .menu-btn.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
  .hd .menu-btn.open span:nth-child(2){opacity:0;}
  .hd .menu-btn.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
  .intro__foot{grid-template-columns:1fr; gap:18px;}
  .stats__grid{grid-template-columns:1fr;}
  .stat:nth-child(odd){border-right:none;}
  .stat + .stat{border-top:1px solid var(--line-soft); padding-top:24px;}
  .gallery__grid{grid-template-columns:1fr; grid-auto-rows:220px;}
  .g-a{grid-column:span 1;}
  .ft__mid{flex-direction:column; align-items:flex-start;}
  .hero__corner.tr{display:none;}
  .kinetic .kthumb{height:42px; width:74px;}
}
