/* AUTO PASSAPORTE NFC — cinema integrado V7 — HTML/CSS sem bibliotecas externas */
:root{color-scheme:dark;--bg:#07080b;--white:#faf9fb;--red:#f31335;--muted:#aeacb3}
*{box-sizing:border-box} html{background:var(--bg);scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--white);font-family:Inter,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{text-decoration:none;color:inherit}a:focus-visible{outline:2px solid #ff5166;outline-offset:5px;border-radius:7px}::selection{background:#df1132;color:#fff}
.cinema-backdrop{position:fixed;z-index:0;inset:0;pointer-events:none;background:#07080b url('/assets/hero-integrated.webp') center center / cover no-repeat;}
/* Unified ambient light follows the vehicle. No rectangular background element. */
.cinema-backdrop::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,7,11,.35) 0%,rgba(7,7,11,.25) 31%,transparent 53%),radial-gradient(ellipse 53% 50% at 80% 75%,rgba(177,4,31,.08),transparent 80%);}
.cinema-rays{position:fixed;z-index:1;pointer-events:none;top:17%;bottom:7%;right:0;width:60%;overflow:hidden;opacity:.9;mix-blend-mode:screen;mask-image:linear-gradient(to right,transparent 0%,black 22%,black 95%)}
.cinema-rays::before{content:"";position:absolute;inset:-14% -60% -14% -70%;background:linear-gradient(106deg,transparent 43.4%,rgba(172,218,255,.015) 46%,rgba(235,246,255,.13) 48%,rgba(255,255,255,.31) 48.6%,rgba(177,221,255,.13) 49.2%,transparent 52%);filter:blur(5px);transform:translateX(-50%);animation:sweep-headlights 10.5s cubic-bezier(.32,0,.35,1) infinite;}
.cinema-rays::after{content:"";position:absolute;left:5%;top:36%;width:26%;height:11%;background:radial-gradient(ellipse,rgba(208,238,255,.25) 0%,rgba(171,225,255,.06) 40%,transparent 75%);filter:blur(13px);animation:light-breathe 5.3s ease-in-out infinite;}
.screen-glow{position:fixed;z-index:0;inset:0;pointer-events:none;background:radial-gradient(ellipse 55% 63% at 88% 60%,rgba(105,0,18,.10),transparent 77%)}
.ambient-grid{position:fixed;z-index:0;inset:0;pointer-events:none;opacity:.10;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:110px 110px;mask-image:linear-gradient(90deg,#000,transparent 58%)}
.film-grain{position:fixed;inset:0;z-index:9;pointer-events:none;opacity:.11;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.28'/%3E%3C/svg%3E")}
.shell{position:relative;z-index:3;max-width:1900px;margin:0 auto;min-height:100svh;display:flex;flex-direction:column}
.header{display:flex;justify-content:center;align-items:center;padding:28px 28px 0;min-height:92px;z-index:10}
.header-right{display:flex;gap:0;align-items:center;border:1px solid rgba(255,40,67,.66);border-radius:999px;background:rgba(3,3,5,.52);box-shadow:0 0 24px rgba(236,12,44,.11),inset 0 0 16px rgba(255,255,255,.015);backdrop-filter:blur(12px);padding:6px 9px}
.header-note{font-size:11px;font-weight:750;letter-spacing:.19em;color:#dad8df;white-space:nowrap;padding:0 25px 0 17px;display:inline-flex;align-items:center;gap:14px}
.signal-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#f31941;box-shadow:0 0 14px #fa0737;animation:light-breathe 4s ease-in-out infinite}
.restricted{position:relative;min-height:42px;display:inline-flex;align-items:center;gap:13px;border-left:1px solid rgba(255,255,255,.4);border-radius:0 999px 999px 0;padding:0 23px;font-size:13px;font-weight:650;transition:background .25s,color .25s}
.restricted:hover{background:rgba(241,33,62,.15)}.restricted svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.restricted svg.arrow-small{width:11px;height:11px;opacity:.7}
.main{flex:1;display:flex;align-items:center;min-height:0}.hero{display:grid;grid-template-columns:minmax(0,46fr) minmax(0,54fr);align-items:center;width:100%;min-height:0;padding:38px clamp(32px,5.6vw,108px) 48px;gap:10px}
.hero-content{position:relative;z-index:5;max-width:790px;padding:12px 0 0;animation:content-in 1s cubic-bezier(.2,1,.36,1) both}
.eyebrow{display:flex;align-items:center;gap:14px;margin:0 0 26px;font-size:11px;letter-spacing:.26em;font-weight:700;color:#c5c2cb;white-space:nowrap}
.eyebrow-line{display:inline-block;width:38px;height:2px;background:#f1183d;box-shadow:0 0 18px rgba(250,19,52,.7)}
.hero-title{font-size:clamp(55px,5.0vw,91px);line-height:.95;letter-spacing:-.06em;font-style:italic;font-weight:950;margin:0;transform:translateX(-3px);text-shadow:0 3px 24px rgba(0,0,0,.4)}
.hero-title .title-white,.hero-title .title-red,.hero-title .title-nfc{display:block}.title-white{color:#fff}.title-red{color:#ee1031;letter-spacing:-.066em}.hero-title .title-nfc{display:flex;align-items:center;gap:clamp(15px,1.7vw,28px);font-size:.52em;letter-spacing:.21em;font-style:normal;line-height:1.45;margin-top:6px;margin-left:6px;font-weight:850;white-space:nowrap}
.title-nfc i{height:3px;display:inline-block;width:clamp(58px,6vw,112px);background:#ee1738;box-shadow:0 0 18px rgba(240,11,45,.34)}
.lead{font-size:clamp(24px,2.12vw,34px);font-weight:680;letter-spacing:-.035em;line-height:1.23;margin:29px 0 11px;max-width:700px;text-shadow:0 2px 18px rgba(0,0,0,.7)}
.lead span{white-space:nowrap}.sublead{margin:0;font-size:clamp(16px,1.25vw,19px);line-height:1.42;color:#c1bec5;text-shadow:0 2px 12px #000}
.actions{display:flex;align-items:center;gap:17px;margin-top:33px}.btn{min-height:61px;display:inline-flex;justify-content:center;align-items:center;border-radius:9px;padding:0 29px;font-size:16px;font-weight:700;transition:transform .25s,box-shadow .25s,border-color .25s,background .25s;white-space:nowrap}
.btn:hover{transform:translateY(-3px)}.btn-primary{background:linear-gradient(120deg,#f81a3e,#bc0025);gap:40px;min-width:196px;box-shadow:0 0 22px rgba(239,16,55,.25),inset 0 1px rgba(255,255,255,.2)}.btn-primary:hover{box-shadow:0 0 30px rgba(239,16,55,.45)}.btn-primary svg{width:19px;height:19px;stroke:white;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}.btn-outline{border:1px solid #c5c3cc;min-width:210px;background:rgba(6,6,9,.60)}.btn-outline:hover{border-color:#fff;background:rgba(250,250,250,.10)}
.access-note{display:flex;gap:12px;align-items:center;margin:23px 0 0;font-size:12px;color:#c0bac3;text-shadow:0 2px 9px #000}.access-note svg{width:19px;height:19px;stroke:#f41c3d;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round;flex-shrink:0}
.hero-visual{position:relative;align-self:stretch;min-height:520px;z-index:1;pointer-events:none}.red-halo{display:none}.visual-art{display:none}.visual-sheen{display:none}.light-pulse{display:none}.visual-label{display:none}
.footer{position:relative;z-index:4;display:flex;justify-content:space-between;align-items:center;gap:15px;border-top:1px solid rgba(255,255,255,.08);padding:15px clamp(32px,5.6vw,108px) 20px;color:#99919c;font-size:10px;letter-spacing:.09em;text-transform:uppercase;background:linear-gradient(90deg,rgba(6,6,8,.5),rgba(6,6,8,.1))}.footer a{color:#e4dbe0;transition:color .2s}.footer a:hover{color:#fff}.footer-private{letter-spacing:.14em;font-size:9px}.footer-cross{color:#f31335;margin:0 10px}
@keyframes content-in{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
@keyframes sweep-headlights{0%,21%{transform:translateX(-55%);opacity:0}32%{opacity:1}50%{transform:translateX(45%);opacity:0}100%{transform:translateX(45%);opacity:0}}
@keyframes light-breathe{0%,100%{opacity:.55}50%{opacity:1}}
@media (min-width:1700px){.hero-title{font-size:92px}.hero{padding-top:28px}}
@media (min-width:761px) and (max-height:770px){.header{min-height:72px;padding-top:14px}.hero{padding-top:19px;padding-bottom:12px}.hero-content{padding-top:0}.eyebrow{margin-bottom:16px}.hero-title{font-size:clamp(56px,4.5vw,76px)}.lead{font-size:clamp(22px,1.85vw,28px);margin-top:18px}.actions{margin-top:22px}.access-note{margin-top:14px}.hero-visual{min-height:420px}.btn{min-height:52px}.footer{padding-block:10px}}
@media (min-width:761px) and (max-width:1210px){.hero{padding-inline:5vw;gap:0;grid-template-columns:47fr 53fr}.hero-title{font-size:clamp(46px,5.2vw,67px)}.hero-title .title-nfc{gap:12px}.title-nfc i{width:clamp(43px,5vw,70px)}.lead{font-size:clamp(20px,2vw,27px)}.actions{gap:11px}.btn{font-size:14px;min-height:51px;padding:0 18px}.btn-primary{min-width:142px;gap:22px}.btn-outline{min-width:172px}.hero-visual{min-height:420px}.header-note{font-size:10px}}
@media (max-width:760px){
 .cinema-backdrop{background-image:linear-gradient(180deg,#07080b 0%,rgba(7,7,11,.92) 49%,rgba(7,7,11,.7) 100%);}
 .cinema-rays{display:none}.screen-glow{background:radial-gradient(ellipse 85% 36% at 65% 84%,rgba(150,0,27,.18),transparent 90%)}
 .header{min-height:72px;padding:17px 15px 0}.header-right{max-width:100%;padding:4px 6px}.header-note{font-size:clamp(8px,2.15vw,10px);letter-spacing:.09em;gap:8px;padding:0 10px 0 7px}.restricted{min-height:36px;padding:0 10px;gap:6px;font-size:11px}.restricted svg{width:14px;height:14px}.restricted svg.arrow-small{display:none}
 .main{flex:1;display:block}.hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding:45px 20px 20px;gap:0}.hero-content{max-width:580px;width:100%;margin:0 auto;padding:0;order:1}.eyebrow{font-size:9px;gap:10px;letter-spacing:.21em;margin-bottom:19px}.eyebrow-line{width:28px}
 .hero-title{font-size:clamp(43px,10.7vw,73px)}.hero-title .title-nfc{margin-top:3px;font-size:.5em;gap:15px}.title-nfc i{height:2px;width:clamp(44px,10vw,75px)}
 .lead{font-size:clamp(21px,5.2vw,28px);margin:19px 0 10px}.sublead{font-size:15px;line-height:1.45}.actions{margin-top:26px;gap:10px}.btn{min-height:49px;font-size:13px;padding:0 14px;border-radius:7px}.btn-primary{gap:18px;min-width:125px}.btn-outline{min-width:158px}.access-note{margin-top:18px;font-size:10px;gap:9px}.access-note svg{width:17px;height:17px}
 .hero-visual{order:2;flex:none;width:calc(100% + 40px);margin:4px -20px 0;min-height:0;height:clamp(270px,80vw,560px);overflow:hidden;isolation:isolate}
 .hero-visual .visual-art{display:block;position:absolute;inset:0;background:url('/assets/hero-mobile.webp') center / contain no-repeat;filter:drop-shadow(0 14px 18px rgba(0,0,0,.3));mask-image:linear-gradient(180deg,transparent 0%,black 17%,black 86%,transparent 100%);animation:float-mobile 8s ease-in-out infinite alternate}
 .hero-visual .red-halo{display:block;position:absolute;inset:10%;background:radial-gradient(ellipse at 65% 60%,rgba(245,6,45,.14),transparent 70%);filter:blur(30px)}
 .hero-visual .light-pulse{display:block;position:absolute;left:4%;top:34%;width:45%;height:14%;background:radial-gradient(ellipse,rgba(238,247,255,.23),transparent 73%);filter:blur(12px);mix-blend-mode:screen;animation:light-breathe 6s ease-in-out infinite}
 .footer{padding:15px 20px 20px;font-size:9px;flex-wrap:wrap}.footer-private{display:none}
}
@media (max-width:380px){.hero{padding-inline:16px}.hero-visual{width:calc(100% + 32px);margin-inline:-16px}.hero-title{font-size:clamp(39px,10.7vw,47px)}.hero-title .title-nfc{gap:11px}.title-nfc i{width:45px}.actions{gap:8px}.btn{padding:0 11px}.btn-primary{min-width:108px;gap:11px}.btn-outline{min-width:141px}.header-note{font-size:7.5px}.restricted{font-size:10px}}
@keyframes float-mobile{from{transform:translateY(3px) scale(.993)}to{transform:translateY(-9px) scale(1.008)}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
/* A cena cinematográfica já tem assinatura visual na parte inferior.
   No desktop, retirar o rodapé evita textos sobre a fotografia. */
@media (min-width:761px){.footer{display:none}}
