/* Original campaign artwork remains at its original 3:1 proportions. */
.hero.royal-hero{position:relative;display:block;width:100%;max-width:2400px;min-height:0;height:auto;margin:auto;padding:0;background:#080505;isolation:isolate;overflow:hidden}
.royal-canvas{position:relative;aspect-ratio:3/1;isolation:isolate;container-type:inline-size}
.royal-scene{position:absolute;inset:0;aspect-ratio:3/1;overflow:hidden;pointer-events:none}
.royal-layer,.royal-layer img,.royal-car,.royal-car>img{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:fill}
.royal-start{z-index:0}
.royal-drive{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:1;pointer-events:none}
.royal-car{z-index:2;opacity:1;transform:none}
.royal-car-fiat{z-index:1}
.motion .royal-hero[data-phase="preparing"] .royal-car{opacity:0}
.royal-scene.opening .royal-car{will-change:transform}
.royal-person{z-index:4;clip-path:polygon(30.2% 100%,30% 90%,30.6% 82%,32.3% 76.5%,34.6% 75.8%,34.9% 70.5%,36.6% 60%,39.1% 48.5%,40.6% 43%,40.6% 39%,40% 32%,40.5% 21%,41.7% 16%,42.9% 10%,44.2% 13%,46% 11%,48.4% 4%,52% 2%,55% 0%,59% 2%,62.4% 5%,65% 9%,67.2% 10%,68% 16%,68.8% 23%,67.7% 39%,66.2% 56%,65.3% 72%,70.4% 74%,72.5% 80%,73.3% 91%,73% 100%)}
.royal-breath{z-index:5;mask-image:radial-gradient(ellipse 13.5% 22% at 51.5% 65%,#000 72%,transparent 100%);transform-origin:52% 84%}
.royal-mobile-medallion{display:none}
.royal-eyes{z-index:6;opacity:0;mask-image:radial-gradient(ellipse 1.8% 3.2% at 43.8% 30.1%,#000 60%,transparent 100%),radial-gradient(ellipse 1.7% 3.2% at 46.7% 29.6%,#000 60%,transparent 100%)}
.royal-glow{z-index:7;pointer-events:none;mix-blend-mode:screen;filter:blur(7px) brightness(1.6);opacity:.1;mask-image:radial-gradient(ellipse 15% 25% at 86% 31%,#000 60%,transparent),radial-gradient(ellipse 16% 10% at 20% 44%,#000 55%,transparent)}
.royal-copy-plane{position:absolute;inset:0;z-index:8;pointer-events:auto;user-select:text}
.metal-text{font-family:'Arial Black',Arial,sans-serif;font-weight:900;font-style:italic;color:#f5f3f0;background:linear-gradient(180deg,#fff 8%,#d4d4d3 26%,#848685 47%,#fcfcfc 55%,#f4f4f3 69%,#b4b5b3 91%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 1px 0 #fff9) drop-shadow(0 3px 1px #000);letter-spacing:-.045em}
.royal-brand-name{position:absolute;left:7.9%;top:13.7%;width:26.8%;margin:0;text-align:center;font-size:4.05cqw;line-height:1;white-space:nowrap;transform:skewX(-3deg);transform-origin:center}
.royal-brand-sub{position:absolute;left:14.1%;top:25.9%;width:13.4%;margin:0;text-align:center;font-size:1.53cqw;line-height:1;letter-spacing:.075em;white-space:nowrap}
.royal-title{position:absolute;left:7.55%;top:40.5%;width:26.5%;height:8.2%;padding:0;margin:0;display:flex;align-items:center;justify-content:center;white-space:nowrap;font-size:2.53cqw;line-height:1;letter-spacing:-.03em}
.royal-title .metal-text{display:block;transform:skewX(-3deg);filter:drop-shadow(0 1px 0 #fff7) drop-shadow(0 3px 0 #111) drop-shadow(0 2px 4px #000)}
.royal-pitch{position:absolute;left:6.15%;top:54.9%;margin:0;font:650 2.34cqw/.96 'DM Sans',Arial,sans-serif;letter-spacing:-.025em;color:#f3f3f1;text-shadow:0 1px 2px #0007}
.royal-pitch strong{font-weight:750;color:#ff0b13}
.royal-description{position:absolute;left:6.35%;top:81.3%;margin:0;font:500 1.45cqw/1.07 'DM Sans',Arial,sans-serif;letter-spacing:-.025em;color:#f3f3f1}
.royal-deal{position:absolute;left:72.1%;top:8.7%;width:24.7%;height:44%;z-index:8;pointer-events:none;rotate:-4deg;container-type:inline-size}
.royal-deal-inner{position:absolute;inset:0;text-align:center;font-family:'Arial Black',Arial,sans-serif;font-weight:900;font-style:italic}
.royal-deal-lead{position:absolute;left:5%;right:5%;top:11%;font-size:8cqw;line-height:1;letter-spacing:-.035em;white-space:nowrap}
.royal-deal-number{position:absolute;left:3%;right:3%;top:23%;font:italic 900 38cqw/.95 'Arial Black',Arial,sans-serif;letter-spacing:-.085em;padding-right:4%;background:linear-gradient(#ff5a52 0%,#ff0209 24%,#f80009 65%,#b0000a 100%);background-clip:text;-webkit-text-fill-color:transparent;-webkit-text-stroke:.06cqw #ff9a82;filter:drop-shadow(0 1px 0 #ffccac) drop-shadow(0 3px 0 #590000);white-space:nowrap}
.royal-deal-foot{position:absolute;left:4%;right:4%;bottom:7%;font-size:8.2cqw;line-height:1;letter-spacing:-.03em;white-space:nowrap}
.royal-headlights{position:absolute;inset:0;z-index:3;pointer-events:none;opacity:0}
.royal-headlights i{position:absolute;left:var(--x);top:var(--y);width:7%;height:17%;translate:-50% -50%;background:radial-gradient(ellipse,#fff6d6e6 0%,#ffe5a2a6 8%,#ffce7250 24%,#ffb23b14 45%,transparent 70%);mix-blend-mode:screen}
.royal-headlights i:before{content:'';position:absolute;left:42%;top:42%;width:16%;height:16%;border-radius:35%;background:radial-gradient(ellipse,#fffef4 25%,#fff0bc 65%,#ffb54666);box-shadow:0 0 8px 3px #ffd393aa,0 0 24px #ffcd7280}
.royal-headlights i:after{content:'';position:absolute;left:20%;right:20%;height:180%;top:50%;opacity:.35;transform:perspective(70px) rotateX(32deg);background:linear-gradient(#ffdc8150,transparent);filter:blur(10px)}
.royal-action-bar{position:relative;z-index:10;border-top:1px solid #bf45392e;border-bottom:1px solid #54332c5c;background:linear-gradient(180deg,#12100eee,#0c0b0b);box-shadow:0 -15px 30px #0003}
.royal-actions{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:19px;padding-bottom:12px}
.royal-commercial{display:flex;gap:12px;flex-wrap:wrap}
.royal-short-label{display:none}
.royal-commercial .button{min-height:49px;border-radius:5px;padding:12px 21px;font-size:12px;gap:22px}
.royal-commercial .primary{background:linear-gradient(135deg,#ff3034,#bd030c);border:1px solid #ff7c7077;box-shadow:inset 0 1px 0 #ffbbb275,0 5px 26px #ff1c1720}
.royal-group{border:1px solid #c69b655c;background:linear-gradient(120deg,#2c201c88,#15100f);box-shadow:inset 0 1px 0 #fff1}
.royal-controls{display:flex;gap:20px;align-items:center}
.royal-controls button{display:flex;align-items:center;gap:8px;color:#c5b5aa;background:none;border:0;border-bottom:1px solid #b5835c50;padding:9px 0;font:500 11px 'DM Sans',Arial,sans-serif;cursor:pointer;white-space:nowrap;transition:color .2s,border-color .2s}
.royal-controls button:hover{color:#fff;border-color:#f55241}.royal-controls button:disabled{opacity:.5;cursor:default}
.royal-controls svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linejoin:round}
.royal-conditions{font-size:9px;line-height:1.4;color:#918982;padding-bottom:17px;margin-top:0}
.motion .royal-breath{animation:royalBreath 4.7s .8s ease-in-out infinite}
.motion .royal-eyes.is-ready{animation:royalBlink 5.4s 2s linear infinite}
.motion .royal-glow{animation:royalAmbient 4.8s ease-in-out infinite}
/* Lamps belong to each car. The dark source never changes at the end of a drive. */
.royal-car.is-parked .royal-headlights{opacity:.78}
.motion .royal-car.is-parked .royal-headlights{animation:royalLampCycle 3s linear infinite}
.royal-scene.flashing .royal-car.is-parked .royal-headlights{animation:royalManualFlash .8s linear both}
.royal-hero.is-offscreen *{animation-play-state:paused!important}
@keyframes royalLampCycle{0%,12%,100%{opacity:.78}3%{opacity:.02}6%{opacity:1}}
@keyframes royalManualFlash{0%,100%{opacity:.78}10%{opacity:0}25%{opacity:1}48%{opacity:0}65%{opacity:1}}
@keyframes royalBreath{0%,100%{transform:scale(1,1)}45%{transform:scale(1.007,1.018)}}
@keyframes royalBlink{0%,43%,49%,100%{opacity:0}44.3%,47%{opacity:1}}
@keyframes royalAmbient{0%,100%{opacity:.08}50%{opacity:.23}}
.effects-paused .royal-breath{transform:none!important}.effects-paused .royal-eyes{opacity:0!important}.effects-paused .royal-headlights{animation:none!important;opacity:.58!important}
@media(max-width:1050px) and (min-width:761px){.royal-commercial .button{font-size:11px;padding:11px 14px;gap:12px}.royal-controls{gap:14px}.royal-controls button{font-size:10px}}
@media(max-width:760px){
 .royal-canvas{aspect-ratio:auto;display:flex;flex-direction:column;overflow:hidden;background:#080505}
 .royal-scene{position:relative;inset:auto;width:220%;height:auto;aspect-ratio:3/1;margin-left:-70.4%;order:2;flex-shrink:0;container-type:inline-size}
 .royal-glow{display:none}
 .royal-mobile-medallion{display:block;z-index:5;mask-image:radial-gradient(ellipse 4.9% 7.5% at 55.7% 23.3%,#000 90%,transparent)}
 .royal-copy-plane{position:relative;inset:auto;order:1;width:100%;padding:20px 22px 15px;pointer-events:auto}
 .royal-brand{position:relative;width:100%;max-width:340px;height:78px;margin:0}
 .royal-brand-name{position:absolute;left:0;top:5px;width:100%;font-size:47px;line-height:1;transform:skewX(-3deg);text-align:center}
 .royal-brand-sub{position:absolute;left:0;top:52px;width:100%;font-size:19px;line-height:1;letter-spacing:.08em}
 .royal-title{position:relative;left:auto;top:auto;width:100%;max-width:340px;height:auto;aspect-ratio:4.6/1;margin:3px 0 0;background-image:url('assets/hero-original-limpo-v7.webp');background-size:315% auto;background-position:6.4% 39.1%;font-size:27px;padding:14px 10px 0}
 .royal-pitch{position:relative;left:auto;top:auto;font-size:30px;line-height:1.04;letter-spacing:-.025em;margin:21px 0 0}
 .royal-description{position:relative;left:auto;top:auto;font-size:14px;line-height:1.35;margin:18px 0 0}
 .royal-deal{left:auto;top:auto;right:12px;bottom:165px;width:152px;height:102px;rotate:0;background-image:url('assets/hero-original-limpo-v7.webp');background-size:385% auto;background-position:96.6% 16%}
 .royal-deal-inner{rotate:-4deg}.royal-deal-lead{top:16%;font-size:11.5px}.royal-deal-number{top:26%;font-size:52px}.royal-deal-foot{bottom:10%;font-size:11.5px}
 .royal-short-label{display:inline}.royal-full-label{display:none}
 .royal-actions{display:block;padding-top:17px;padding-bottom:10px}.royal-commercial{gap:8px}.royal-commercial .button{padding:12px 13px;font-size:11px;gap:10px;min-height:45px}
 .royal-controls{justify-content:center;gap:30px;margin-top:15px}.royal-controls button{font-size:11px}.royal-conditions{font-size:9px;line-height:1.5;padding-bottom:17px}
}
@media(max-width:370px){.royal-copy-plane{padding-left:18px;padding-right:18px}.royal-brand-name{font-size:43px}.royal-title{font-size:25px}.royal-pitch{font-size:28px}.royal-commercial .button{padding:11px 10px;font-size:10px;gap:8px}.royal-deal{width:133px;height:91px;right:9px;bottom:150px}.royal-deal-lead,.royal-deal-foot{font-size:10px}.royal-deal-number{font-size:46px}}
@media(prefers-reduced-motion:reduce){.royal-hero *{animation:none!important;transition:none!important}.royal-breath{transform:none!important}.royal-eyes{opacity:0!important}.royal-car{opacity:1!important;transform:none!important}.royal-headlights{opacity:.58!important}}

/* ── celular: o banner é a arte vertical pronta (hero-mobile-v11), sem animação ── */
.royal-mobile-banner{display:none}
@media(max-width:760px){
 .royal-canvas{display:block;aspect-ratio:auto;overflow:hidden;background:#080505}
 .royal-scene,.royal-deal{display:none!important}
 /* o título e os textos continuam na página (leitor de tela e Google), só ficam fora da vista: a arte já mostra tudo */
 .royal-copy-plane{position:absolute!important;inset:auto!important;width:1px;height:1px;margin:-1px;padding:0!important;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}
 .royal-title{background-image:none!important}
 .royal-mobile-banner{display:block;width:100%;line-height:0;background:#080505}
 .royal-mobile-banner img{display:block;width:100%;height:auto}
 #replay-royal,#flash-royal{display:none}
}
