/* Unique approved photographic panorama; exact native pixels. See FONDO-APROBADO.md. */
:root {
    --approved-panorama:url("../assets/img/approved-background/panorama.webp?v=20260926-city-photo80");
    --city-brightness:1.25;
    --tower-brightness:1.45;
    --scene-width:min(100vw,1920px);
    --scene-height:calc(var(--scene-width) * .562799);
    --floor-start:calc(var(--scene-height) * .82);
    --floor-blend:clamp(140px,13vw,240px);
    --floor-shading:linear-gradient(rgba(1,7,13,.03),rgba(1,7,13,.19) 72rem,rgba(1,7,13,.26));
}
/* One authorized native-pixel floor layer continues through sections and footer. */
.journey-surface { position:relative; isolation:isolate; background:var(--night); }
main,.site-footer { position:relative; z-index:1; }
.page-road {
    position:absolute;
    inset:var(--floor-start) 0 0;
    z-index:0;
    pointer-events:none;
    background-color:#02070c;
    background-image:
        var(--floor-shading),
        linear-gradient(90deg,rgba(1,7,13,.78) 0 4%,rgba(1,7,13,.12) 7.5% 14.5%,rgba(1,7,13,.78) 18% 43%,rgba(1,7,13,.12) 47.5% 55%,rgba(1,7,13,.78) 59% 100%),
        url("../assets/img/approved-background/road-textile-approved.webp");
    background-size:100% 100%,1992px 100%,646px 384px;
    background-repeat:no-repeat,repeat-x,repeat;
    background-position:0 0,center top,center top;
    background-blend-mode:normal,normal,normal;
    -webkit-mask-image:linear-gradient(transparent,#000 var(--floor-blend));
    mask-image:linear-gradient(transparent,#000 var(--floor-blend));
}
.section-stars {
    position:absolute;
    inset:calc(var(--floor-start) + 6rem) 0 0;
    z-index:0;
    overflow:hidden;
    pointer-events:none;
}
.section-stars span {
    position:absolute;
    left:var(--x);
    top:var(--y);
    width:2px;
    height:2px;
    border-radius:50%;
    background:rgba(255,244,211,.9);
    box-shadow:0 0 3px rgba(255,235,178,.6),0 0 7px rgba(217,159,51,.18);
    opacity:.06;
    animation:section-star-twinkle var(--d) ease-in-out var(--w) infinite;
}
.section-stars span:nth-child(3n) { width:1px; height:1px; background:rgba(232,239,243,.86); box-shadow:0 0 4px rgba(220,231,238,.38); }
.section-stars span:nth-child(5n) { background:rgba(255,218,124,.9); }
@keyframes section-star-twinkle { 0%,64%,100% { opacity:.04; } 71% { opacity:.34; } 76% { opacity:.08; } 82% { opacity:.48; } 89% { opacity:.07; } }
.hero { min-height:calc(var(--scene-height) * 1.10); background:transparent; }
.hero-stage { width:var(--scene-width); height:var(--scene-height); min-height:0; }
.environment-layer { position:absolute; top:0; left:0; z-index:1; width:100%; max-width:none; }
.environment-art { position:relative; -webkit-mask-image:linear-gradient(#000 88%,transparent 100%); mask-image:linear-gradient(#000 88%,transparent 100%); }
.environment-layer img { width:100%; height:auto; }
/* These lighting layers reuse ONE identical scene. They never replace its geography. */
.environment-night-sky {
    position:absolute; inset:0; pointer-events:none;
    background:linear-gradient(180deg,rgba(0,1,8,.94),rgba(0,2,10,.9) 12%,rgba(0,3,13,.78) 20%,rgba(0,3,13,.5) 24%,rgba(0,3,13,.1) 28%,transparent 31%);
}
.environment-light {
    position:absolute; inset:0; pointer-events:none;
    background-image:var(--approved-panorama);
    background-size:100% 100%; background-repeat:no-repeat;
}
.environment-light-city {
    filter:brightness(var(--city-brightness)) saturate(1.04);
    -webkit-mask-image:linear-gradient(transparent 30%,#000 37%,#000 46%,transparent 56%),linear-gradient(90deg,#000 0%,#000 59%,transparent 80%);
    mask-image:linear-gradient(transparent 30%,#000 37%,#000 46%,transparent 56%),linear-gradient(90deg,#000 0%,#000 59%,transparent 80%);
    -webkit-mask-composite:source-in; mask-composite:intersect;
}
.environment-light-tower {
    filter:brightness(var(--tower-brightness)) saturate(1.08);
    -webkit-mask-image:radial-gradient(ellipse 2.7% 14% at 13.8% 33%,#000 35%,rgba(0,0,0,.8) 55%,transparent 100%);
    mask-image:radial-gradient(ellipse 2.7% 14% at 13.8% 33%,#000 35%,rgba(0,0,0,.8) 55%,transparent 100%);
}
.moon-layer { filter:brightness(1.2) contrast(1.11) saturate(.72) drop-shadow(0 0 7px rgba(255,255,248,.4)) drop-shadow(0 0 20px rgba(222,233,255,.14)); }
.environment-layer .stars-layer { position:absolute; inset:0; width:100%; height:100%; z-index:2; pointer-events:none; }
.shooting-stars { position:absolute; inset:0; z-index:3; overflow:hidden; clip-path:inset(0 0 66% 0); pointer-events:none; }
.shooting-stars i {
    position:absolute;
    top:11%;
    left:-16%;
    width:clamp(54px,6.5vw,112px);
    height:1px;
    background:linear-gradient(90deg,transparent,rgba(224,234,242,.16) 40%,rgba(255,239,194,.62) 86%,rgba(255,255,247,.84) 96%,transparent);
    filter:drop-shadow(0 0 2px rgba(255,239,195,.34));
    transform-origin:right center;
    opacity:0;
    animation:shooting-star-pass 11.8s ease-out -8.4s infinite;
}
.shooting-stars i:nth-child(2) { top:14%; left:-24%; width:clamp(46px,5.4vw,92px); animation-duration:17.9s; animation-delay:-7.9s; }
@keyframes shooting-star-pass {
    0%,71% { opacity:0; transform:translate3d(0,0,0) rotate(11deg); }
    72.5% { opacity:.12; }
    75% { opacity:.58; }
    80% { opacity:.42; }
    83.5% { opacity:0; transform:translate3d(138vw,5vw,0) rotate(11deg); }
    100% { opacity:0; transform:translate3d(138vw,5vw,0) rotate(11deg); }
}
.road-geometry { top:0; left:0; width:100%; height:143%; z-index:3; -webkit-mask-image:linear-gradient(#000 50%,transparent 80%); mask-image:linear-gradient(#000 50%,transparent 80%); }
.speed-trails path { stroke-dasharray:210 1280; stroke:#f7c468; stroke-width:2.2; opacity:var(--trail-intensity); }
.speed-trails path:nth-child(2) { stroke-dasharray:155 1335; stroke-width:1.2; }
.speed-trails path:nth-child(3) { stroke-dasharray:140 1350; stroke-width:1.3; }
@keyframes trail-flow { to { stroke-dashoffset:-1490; } }
.scene-content-shade { display:none; }
.van-layer { top:var(--van-y); left:var(--van-x); width:40.5%; filter:brightness(.96) saturate(.92) drop-shadow(0 3px 2px rgba(0,3,7,.72)) drop-shadow(0 18px 20px rgba(0,0,0,.42)); }
.van-layer::before {
    content:""; position:absolute; z-index:-1; inset:0;
    background:radial-gradient(ellipse 11% 3% at 9% 88%,#000 20%,transparent 76%),radial-gradient(ellipse 15% 3.5% at 43% 98%,#000 25%,transparent 78%),radial-gradient(ellipse 14% 3% at 87% 95%,#000 20%,transparent 75%);
    filter:blur(4px); opacity:.9;
}
.van-layer::after { content:""; position:absolute; z-index:-1; left:6%; right:3%; bottom:5%; height:10%; border-radius:50%; background:#000; filter:blur(14px); opacity:.58; transform:rotate(2deg); }
.hero-lockup { left:var(--hero-lockup-x); top:var(--hero-lockup-y); width:var(--hero-lockup-width); }
.hero-lockup__cta .btn { position:relative; isolation:isolate; overflow:hidden; border:1px solid transparent; background:linear-gradient(145deg,rgba(15,17,17,.92),rgba(1,6,10,.98)) padding-box,linear-gradient(112deg,#765019,#dba94c 28%,#fff0ac 49%,#b97b22 70%,#684514) border-box; box-shadow:inset 0 1px rgba(255,248,211,.09),inset 0 -1px rgba(104,63,10,.34),0 8px 22px rgba(0,0,0,.38); }
.hero-lockup__cta .btn::before { content:""; position:absolute; z-index:0; top:-55%; bottom:-55%; left:-46%; width:19%; transform:skewX(-18deg); background:linear-gradient(90deg,transparent,rgba(255,238,169,.12),rgba(255,255,239,.78),rgba(255,211,91,.48),transparent); filter:blur(.6px); opacity:0; mix-blend-mode:screen; transition:left .7s cubic-bezier(.18,.68,.18,1),opacity .18s ease; pointer-events:none; }
.hero-lockup__cta .btn::after { content:""; position:absolute; z-index:0; inset:0; background:radial-gradient(circle at 50% 50%,rgba(255,252,220,.55),rgba(244,185,56,.24) 30%,transparent 68%); opacity:0; mix-blend-mode:screen; transition:opacity .32s ease; pointer-events:none; }
@media (hover:hover) and (pointer:fine) {
    .hero-lockup__cta .btn:hover { color:#fff9e8; text-shadow:0 0 7px rgba(255,226,139,.36); background:linear-gradient(145deg,rgba(45,31,8,.9),rgba(5,8,10,.99)) padding-box,linear-gradient(112deg,#9b681e,#f1c966 25%,#fff6cb 48%,#d99428 70%,#805116) border-box; box-shadow:0 0 0 1px rgba(255,224,134,.2),0 0 7px rgba(255,222,125,.4),0 0 18px rgba(205,139,27,.24),inset 0 1px rgba(255,250,224,.24),inset 0 -10px 24px rgba(106,63,8,.16),0 11px 25px rgba(0,0,0,.45); }
    .hero-lockup__cta .btn:hover::before { left:126%; opacity:.72; }
}
.hero-lockup__cta .btn:focus-visible { outline:1px solid #fff0ba; outline-offset:3px; color:#fff8e6; box-shadow:0 0 0 1px rgba(255,238,182,.34),0 0 9px rgba(255,237,170,.55),0 0 21px rgba(213,149,33,.34),inset 0 1px rgba(255,255,238,.22); }
.hero-lockup__cta .btn:active { transform:translateY(1px) scale(.985); color:#fff; background:linear-gradient(145deg,rgba(91,61,13,.94),rgba(9,9,7,.99)) padding-box,linear-gradient(112deg,#f5c95d,#fff8cf 45%,#d89021 72%,#fff0a4) border-box; box-shadow:0 0 4px rgba(255,255,231,.8),0 0 14px rgba(255,209,84,.72),0 0 30px rgba(209,137,20,.42),inset 0 0 18px rgba(255,225,132,.24); transition-duration:.06s; }
.hero-lockup__cta .btn:active::before { left:43%; opacity:1; transition:none; }
.hero-lockup__cta .btn:active::after { opacity:.72; transition:none; }
.stars circle { animation-timing-function:ease-in-out; }
@keyframes star-twinkle { 0%,100% { opacity:calc(var(--star-intensity) * .22); } 36% { opacity:calc(var(--star-intensity) * .4); } 46% { opacity:calc(var(--star-intensity) * .92); } 55% { opacity:calc(var(--star-intensity) * .3); } 76% { opacity:calc(var(--star-intensity) * .56); } }
.hero-gold-line { transform-origin:left center; will-change:transform; animation:gold-line-whole-sway 5.6s ease-in-out infinite; }
.gold-line-wave { transform-box:view-box; transform-origin:left center; }
.gold-line-base { stroke-width:1.4; filter:drop-shadow(0 0 2px rgba(246,198,62,.36)); }
.gold-line-glint { opacity:0; animation:gold-line-glint-pulse 4.2s linear infinite; }
@keyframes gold-line-whole-sway { 0%,100% { transform:translateY(-4px); } 28% { transform:translateY(1.8px); } 57% { transform:translateY(5px); } 80% { transform:translateY(-1.3px); } }
@keyframes gold-line-glint-pulse { 0%,3%,97%,100% { opacity:0; } 10%,90% { opacity:.5; } 38%,68% { opacity:.88; } }
.header-inner { width:min(100%,1920px); max-width:1920px; min-height:clamp(7rem,9.6vw,11.5rem); padding-inline:2.5%; }
.brand { transform:translateY(1vw); }
.brand-emblem { width:clamp(3.5rem,5.4vw,5.8rem); filter:drop-shadow(0 0 5px rgba(255,238,187,.18)) drop-shadow(0 0 14px rgba(205,137,25,.24)); }
.main-navigation a { font-size:clamp(.9rem,1.2vw,1.3rem); }
.services-section { margin-top:0; padding-top:clamp(4rem,6vw,7rem); background:none; }
.about-section,.contact-section,.site-footer { background:transparent; }
/* Editable luminous frames: deliberately separate from the immutable road textile. */
.site-section { isolation:isolate; }
.site-section::before {
    --frame-angle:0turn;
    content:"";
    position:absolute;
    inset:clamp(.7rem,1.4vw,1.35rem) clamp(.55rem,2vw,2rem);
    z-index:0;
    padding:1px;
    pointer-events:none;
    border-radius:clamp(2px,.3vw,5px);
    background:conic-gradient(from var(--frame-angle),transparent 0deg 282deg,rgba(201,210,215,.48) 299deg,rgba(255,255,250,.98) 313deg,rgba(255,226,139,1) 326deg,rgba(205,139,23,.74) 338deg,transparent 350deg),linear-gradient(108deg,rgba(82,45,4,.94) 0%,rgba(193,124,15,.96) 11%,rgba(255,225,132,.98) 19%,rgba(255,250,222,.96) 27%,rgba(151,91,8,.96) 39%,rgba(243,194,78,.98) 52%,rgba(255,255,247,.96) 62%,rgba(176,185,190,.86) 69%,rgba(255,219,114,.98) 81%,rgba(101,57,5,.94) 100%);
    -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
    -webkit-mask-composite:xor;
    mask-composite:exclude;
    filter:drop-shadow(0 0 3px rgba(255,231,163,.66)) drop-shadow(0 0 10px rgba(221,157,35,.46)) drop-shadow(0 0 22px rgba(164,94,8,.24));
    opacity:.96;
    animation:section-frame-glint 11s linear infinite;
}
.site-section>.container { position:relative; z-index:1; }
.about-section::before { animation-delay:-3.66s; }
.contact-section::before { animation-delay:-7.33s; }
@property --frame-angle { syntax:"<angle>"; inherits:false; initial-value:0turn; }
@keyframes section-frame-glint { to { --frame-angle:1turn; } }
@media (prefers-reduced-motion:reduce) { .site-section::before,.section-stars span,.shooting-stars i,.hero-gold-line,.gold-line-glint { animation:none; } .section-stars span { opacity:.1; } .shooting-stars i,.gold-line-glint { display:none; } }
@media (min-width:1921px) {
    .environment-art { -webkit-mask-image:linear-gradient(#000 88%,transparent),linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent); mask-image:linear-gradient(#000 88%,transparent),linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent); -webkit-mask-composite:source-in; mask-composite:intersect; }
}
@media (min-width:70.01rem) and (max-width:100rem) {
    :root {
        --hero-lockup-x:clamp(110px,9vw,145px);
        --hero-lockup-y:432px;
        --hero-lockup-width:clamp(540px,41vw,570px);
        --hero-signature-x:clamp(150px,11.7vw,187px);
        --hero-signature-y:clamp(112px,8.45vw,135px);
        --hero-signature-width:clamp(520px,39.2vw,627px);
        --transportes-size:clamp(20px,1.55vw,24px);
        --tagline-gap:0px;
        --cta-gap:32px;
        --tagline-offset-y:18px;
        --services-bottom:166px;
        --services-width:min(62vw,780px);
    }
    .hero-lockup__eyebrow { gap:18px; margin-bottom:10px; }
    .hero-lockup__eyebrow>span { width:110px; flex-basis:110px; }
    .hero-lockup__tagline { font-size:29px; }
    .hero-lockup__tagline em { margin-top:5px; font-size:28px; }
    .hero-lockup__cta { gap:20px; }
    .hero-lockup__cta .btn { height:60px; min-height:60px; font-size:13px; }
    .hero-lockup__cta .btn:first-child { width:288px; }
    .hero-lockup__cta .btn:last-child { width:236px; }
    .hero-services-band { left:55px; column-gap:0; padding-top:12px; }
    .hero-services-band a { gap:7px; padding-inline:3px; font-size:11px; }
    .hero-services-band a:not(:last-child)::after { right:0; height:27px; }
    .hero-services-band svg { width:22px; height:22px; }
}
@media (max-width:70rem) and (min-width:48.01rem) and (orientation:portrait) {
    :root {
        --floor-start:calc(100vw * 1.6 * .562799 * .82);
        --hero-lockup-x:var(--page);
        --hero-lockup-y:22.25rem;
        --hero-lockup-width:min(28.125rem,calc(100% - var(--page) * 2));
        --hero-signature-x:calc(var(--page) + 1rem);
        --hero-signature-y:10.6rem;
        --hero-signature-width:min(25.625rem,calc(100% - var(--page) * 2));
        --transportes-size:1.05rem;
        --transportes-tracking:.27em;
        --tagline-gap:0;
        --cta-gap:1.5rem;
        --tagline-offset-y:14px;
        --services-bottom:1.5rem;
        --services-width:calc(100% - var(--page) * 2);
    }
    .hero { min-height:110svh; }
    .hero-stage { height:100svh; }
    .environment-layer { width:160%; left:-10%; }
    .van-layer { top:52%; left:20%; width:77%; }
    .hero-lockup__eyebrow { gap:14px; margin-bottom:9px; }
    .hero-lockup__eyebrow>span { width:82px; flex-basis:82px; }
    .hero-lockup__tagline { padding-left:10px; font-size:1.55rem; }
    .hero-lockup__tagline em { margin-top:4px; font-size:1.5rem; }
    .hero-lockup__cta { gap:14px; }
    .hero-lockup__cta .btn { height:56px; min-height:56px; padding-inline:12px; font-size:.72rem; }
    .hero-lockup__cta .btn:first-child { width:250px; }
    .hero-lockup__cta .btn:last-child { width:186px; }
    .hero-services-band { left:var(--page); grid-template-columns:repeat(5,1fr); column-gap:6px; padding-top:.7rem; }
    .hero-services-band a { justify-content:center; gap:6px; padding-inline:2px; }
    .hero-services-band a:not(:last-child)::after { right:-3px; height:26px; }
    .hero-services-band svg { width:22px; height:22px; }
    .hero-services-band span { font-size:.68rem; }
}
@media (max-width:48rem) {
    :root {
        --floor-start:calc(100vw * 1.8 * .562799 * .82);
        --floor-blend:110px;
        --hero-lockup-x:var(--page);
        --hero-lockup-y:clamp(15.9rem,31.5vh,17.2rem);
        --hero-lockup-width:min(82vw,20rem);
        --hero-signature-x:50%;
        --hero-signature-y:7.4rem;
        --hero-signature-width:min(77vw,17.5rem);
        --transportes-size:clamp(.72rem,3.35vw,.88rem);
        --transportes-tracking:.22em;
        --tagline-gap:0;
        --cta-gap:clamp(1rem,2.2vh,1.35rem);
        --tagline-offset-y:10px;
        --services-bottom:1rem;
        --services-width:calc(100% - var(--page) * 2);
    }
    .hero { min-height:calc(105svh + 2rem); }
    .hero-stage { width:100%; height:105svh; }
    .environment-layer { width:180%; left:-12%; }
    .header-inner { min-height:4.4rem; padding-inline:var(--page); }
    .brand { transform:none; }
    .brand-emblem { width:3rem; }
    .main-navigation a { font-size:.95rem; }
    .hero-lockup__eyebrow { gap:10px; margin-bottom:8px; }
    .hero-lockup__eyebrow>span { width:52px; flex-basis:52px; }
    .hero-lockup__mark { width:min(100%,18.75rem); }
    .hero-lockup__tagline { padding-left:6px; font-size:clamp(1.18rem,5.2vw,1.42rem); line-height:1.06; }
    .hero-lockup__tagline em { margin-top:4px; font-size:clamp(1.2rem,5.35vw,1.46rem); line-height:1.08; }
    .van-layer { top:52%; left:4%; width:92%; }
    .hero-lockup__cta { flex-direction:column; gap:.65rem; }
    .hero-lockup__cta .btn:first-child,.hero-lockup__cta .btn:last-child { width:100%; height:3.25rem; min-height:3.25rem; }
    .hero-lockup__cta .btn { padding-inline:.75rem; font-size:.7rem; }
    .hero-services-band { left:var(--page); width:calc(100% - var(--page) * 2); max-width:calc(100% - var(--page) * 2); grid-template-columns:repeat(2,1fr); row-gap:.45rem; padding-top:.65rem; }
    .hero-services-band a { min-height:2.15rem; padding:.15rem .45rem; justify-content:center; }
    .hero-services-band a::after { display:none; }
    .hero-services-band a:nth-child(odd):not(:last-child)::after { display:block; right:-.2rem; height:25px; }
    .hero-services-band a:last-child { grid-column:1 / -1; width:50%; justify-self:center; }
    .hero-services-band svg { width:1.35rem; height:1.35rem; }
    .hero-services-band span { font-size:clamp(.54rem,2.25vw,.66rem); }
    .road-geometry { opacity:.35; }
    .services-section { margin-top:0; }
    .shooting-stars i:nth-child(2) { display:none; }
    .hero-signature { transform:translateX(-50%); }
}
@media (max-width:34rem) {
    :root { --floor-start:calc(100vw * 2.5 * .562799 * .82 + 3.15svh); }
    .environment-layer { top:3%; width:250%; left:-16%; }
}
@media (min-width:44rem) and (max-width:48rem) and (orientation:portrait) {
    :root {
        --hero-lockup-y:21.15rem;
        --hero-lockup-width:26.25rem;
        --hero-signature-y:10.9rem;
        --hero-signature-width:23.125rem;
        --transportes-size:1rem;
        --transportes-tracking:.27em;
        --tagline-gap:0;
        --cta-gap:1.4rem;
        --tagline-offset-y:12px;
        --services-bottom:1.25rem;
    }
    .hero-lockup__eyebrow { gap:13px; margin-bottom:9px; }
    .hero-lockup__eyebrow>span { width:76px; flex-basis:76px; }
    .hero-lockup__mark { width:100%; }
    .hero-lockup__tagline { padding-left:9px; font-size:1.5rem; }
    .hero-lockup__tagline em { font-size:1.45rem; }
    .hero-lockup__cta { flex-direction:row; gap:14px; }
    .hero-lockup__cta .btn:first-child { width:230px; }
    .hero-lockup__cta .btn:last-child { width:176px; }
    .hero-lockup__cta .btn:first-child,.hero-lockup__cta .btn:last-child { height:56px; min-height:56px; }
    .hero-services-band { grid-template-columns:repeat(6,1fr); row-gap:.45rem; }
    .hero-services-band a { grid-column:span 2; }
    .hero-services-band a:nth-child(odd):not(:last-child)::after { display:none; }
    .hero-services-band a:nth-child(3)::after { display:none; }
    .hero-services-band a:nth-child(4) { grid-column:2 / span 2; }
    .hero-services-band a:nth-child(5) { grid-column:4 / span 2; width:auto; }
    .hero-services-band a:nth-child(1)::after,.hero-services-band a:nth-child(2)::after,.hero-services-band a:nth-child(4)::after { display:block; }
}
@media (min-width:34.01rem) and (max-width:48rem) {
    .van-layer { top:49%; left:17%; width:80%; }
}
@media (max-height:500px) and (orientation:landscape) {
    :root {
        --floor-start:calc(100vw * .562799 * .82);
        --hero-lockup-x:3.5%;
        --hero-lockup-y:13.75rem;
        --hero-lockup-width:min(42vw,30rem);
        --hero-signature-x:6%;
        --hero-signature-y:5rem;
        --hero-signature-width:min(32vw,17rem);
        --transportes-size:.68rem;
        --transportes-tracking:.24em;
        --tagline-gap:0;
        --cta-gap:.55rem;
        --tagline-offset-y:8px;
        --services-bottom:.45rem;
        --services-width:56vw;
    }
    .hero { min-height:calc(var(--scene-height) * 1.08); }
    .hero-stage { height:var(--scene-height); min-height:0; }
    .environment-layer { top:0; left:0; width:100%; }
    .hero-lockup__mark { width:min(100%,18rem); }
    .hero-rrc-letters,#hero-rrc-letters { font-size:13rem; }
    .hero-lockup__tagline,.hero-lockup__tagline em { font-size:1rem; }
    .hero-signature { transform:none; }
    .van-layer { top:37%; left:53%; width:45%; }
    .hero-lockup__cta { gap:.7rem; }
    .hero-lockup__cta .btn:first-child,.hero-lockup__cta .btn:last-child { width:auto; height:2.8rem; min-height:2.8rem; flex:1; }
    .hero-lockup__cta .btn { padding-inline:.8rem; font-size:.65rem; }
    .hero-services-band { left:3.5%; grid-template-columns:repeat(5,1fr); padding-top:.35rem; }
    .hero-services-band a { min-height:1.9rem; padding:.1rem .35rem; }
    .hero-services-band svg { width:1.15rem; height:1.15rem; }
    .hero-services-band span { font-size:.48rem; }
}
