/* Portadas aprobadas; los originales conservan sus proporciones y textos. */
.hero.has-campaign-layout { min-height:0; background:var(--paper-light); }
.hero.has-campaign-layout .hero-stage { position:relative; isolation:isolate; overflow:hidden; height:clamp(320px,33.333vw,640px); min-height:320px; background:#063640; }
.hero.has-campaign-layout .hero-collage { position:absolute; z-index:0; inset:0; height:100%; }
.hero.has-campaign-layout [hidden] { display:none !important; }
.hero-slide-art { background:#063640; }
.hero-approved-art { position:absolute; display:block; inset:0; width:100%; height:100%; object-fit:contain; object-position:center top; }
.hero-art-collage-destinos { background:radial-gradient(ellipse at center,#50695e,#07343c 75%); }
.hero-slide-copy { position:absolute; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.hero.has-campaign-layout .hero-seal { position:absolute; display:block; z-index:3; top:16px; right:16px; width:160px; margin:0; transform:none; }
.hero-seal img { display:block; width:100%; height:auto; }
.hero-official-brand { position:absolute; z-index:3; top:12px; left:16px; width:clamp(100px,10vw,144px); margin:0; padding:4px; border:1px solid #d7c6a3; border-radius:5px; background:#fff8e9f2; }
.hero-official-brand img { display:block; width:100%; height:auto; }
.hero.has-campaign-layout .hero-carousel-controls { position:absolute; z-index:3; top:auto; right:0; bottom:29px; left:0; height:44px; transform:none; padding-inline:18px; }
.hero-search-row { position:absolute; z-index:4; left:50%; bottom:16px; transform:translateX(-50%); width:min(calc(100% - 160px),980px); min-width:0; padding:0; margin:0; background:none; }
.hero-search-row>.search-form { position:relative; width:100%; min-width:0; margin:0; padding:12px 14px 9px; border:1px solid #d4be97; border-radius:15px; background:#fcf8f0f5; box-shadow:0 5px 18px #0b35412b; }
.hero-search-row .search-control { display:grid; grid-template-columns:minmax(0,1fr) 182px 116px; align-items:center; gap:14px; width:100%; min-width:0; min-height:56px; padding:0; border:0; border-radius:0; background:none; box-shadow:none; }
.search-destination-field,.search-date-field { display:flex; flex-direction:column; min-width:0; text-align:left; }
.search-date-field { padding-left:16px; border-left:1px solid #d5c8b0; }
.hero-search-row label { display:block; margin:0 0 3px; color:var(--petrol-dark); font:700 .78rem/1.35 var(--sans); }
.search-optional { font-weight:400; }
.hero-search-row .search-control input { display:block; width:100%; min-width:0; height:36px; padding:4px 0; border:0; border-radius:0; background:transparent; color:var(--petrol-dark); font:500 1rem/1.4 var(--sans); }
.hero-search-row .search-control input:focus-visible { outline:2px solid var(--burgundy); outline-offset:3px; border-radius:3px; }
.hero-search-row .search-control .button { min-width:0; min-height:50px; padding:10px 16px; border-radius:10px; }
.hero-search-row .search-date-help { margin:4px 0 0; color:#52646a; text-align:left; font:400 .72rem/1.4 var(--sans); }
.hero.has-campaign-layout>.region-nav { width:100%; min-width:0; margin:0; padding:10px 24px; border:0; background:var(--paper-light); }
.hero>.region-nav .category-nav-inner { width:100%; max-width:760px; min-width:0; padding:0; margin:0 auto; overflow:visible; }
.hero>.region-nav .category-family.geography-family { width:100%; min-width:0; margin:0; }
.hero>.region-nav .category-family-options { display:grid; width:100%; min-width:0; grid-template-columns:.9fr 1.2fr 1.55fr .8fr; gap:8px; }
.hero>.region-nav .region-filter { min-width:0; min-height:48px; padding:6px 12px; gap:8px; justify-content:center; font-size:.9rem; border:0; border-radius:10px; }
.hero>.region-nav .region-filter svg { flex:0 0 20px; width:20px; height:20px; }
.hero>.region-nav .category-copy { min-width:0; white-space:normal; text-align:left; }
.hero>.region-nav .category-copy small { font-size:.68rem; line-height:1.2; }
.hero>.region-nav .region-filter::after { left:8px; right:8px; bottom:2px; }
.hero>.region-nav .region-filter:hover,.hero>.region-nav .region-filter.is-selected { background:#eee6d8; }
.hero>.catalog-load-error { width:min(calc(100% - 32px),980px); margin:8px auto; }
/* Referencia aprobada del buscador: cápsula, destino/fecha y lupa; sin Viajeros. */
.hero-search-row { width:min(calc(100% - 160px),940px); }
.hero-search-row>.search-form { padding:7px 9px 7px 20px; border:2px solid #f8f1e4; border-radius:999px; background:#fcf8f0f5; }
.hero-search-row .search-control { grid-template-columns:minmax(0,1fr) 190px 56px; min-height:52px; gap:16px; }
.search-destination-field,.search-date-field { position:relative; display:flex; flex-direction:row; align-items:center; min-width:0; }
.search-date-field { padding-left:17px; border-left:1px solid #b9b1a4; }
.hero-search-row label.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.hero-search-row .search-field-icon { display:block; flex:0 0 25px; width:25px; height:25px; fill:none; stroke:var(--petrol-dark); stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; pointer-events:none; }
.hero-search-row .search-control input { height:48px; padding:6px 10px; font-size:1rem; }
.hero-search-row .search-control input::placeholder { color:var(--petrol-dark); opacity:1; }
.hero-search-row .search-control .button { display:flex; align-items:center; justify-content:center; width:56px; min-width:56px; height:52px; min-height:52px; padding:0; border-radius:999px; }
.hero-search-row .search-submit-icon { display:block; width:25px; height:25px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; }
.hero-search-row .search-date-placeholder { position:absolute; left:52px; top:50%; transform:translateY(-50%); color:var(--petrol-dark); font:500 1rem/1.4 var(--sans); pointer-events:none; }
.hero-search-row #departure-date { color:transparent; caret-color:transparent; }
.hero-search-row #departure-date[data-has-date="true"],.hero-search-row #departure-date:focus { color:var(--petrol-dark); caret-color:var(--petrol-dark); }
.hero-search-row #departure-date[data-has-date="true"]+.search-date-placeholder,.hero-search-row #departure-date:focus+.search-date-placeholder { display:none; }
.hero-search-row #departure-date::-webkit-calendar-picker-indicator { position:absolute; inset:0; width:100%; height:100%; padding:0; margin:0; opacity:0; cursor:pointer; }
.hero-search-row .search-date-help.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media(max-width:980px) and (min-width:761px) { .hero-search-row { width:calc(100% - 140px); } }
@media(max-width:600px) {
 .hero-search-row { width:calc(100% - 24px); }
 .hero-search-row>.search-form { padding:5px 8px 6px 14px; border-radius:25px; }
 .hero-search-row .search-control { grid-template-columns:minmax(0,1fr) 52px; gap:1px 10px; }
 .search-destination-field { grid-column:1/-1; padding-bottom:2px; border-bottom:1px solid #d5c8b0; }
 .search-date-field { padding-left:0; border-left:0; }
 .hero-search-row .search-field-icon { flex-basis:23px; width:23px; height:23px; }
 .hero-search-row .search-control input { height:44px; padding-inline:9px; }
 .hero-search-row .search-control .button { width:52px; min-width:52px; height:44px; min-height:44px; }
 .hero-search-row .search-date-placeholder { left:32px; }

}
@media(min-width:601px) and (max-width:760px) {
 .hero-search-row { width:calc(100% - 32px); }
 .hero-search-row .search-control { grid-template-columns:minmax(0,1fr) 170px 56px; gap:12px; }
 .search-destination-field { grid-column:auto; padding:0; border:0; }
 .search-date-field { padding-left:12px; border-left:1px solid #b9b1a4; }
 .hero-search-row .search-date-placeholder { left:47px; }

}

@media(max-width:760px) {
 .hero.has-campaign-layout .hero-stage { height:480px; min-height:480px; }
 .hero.has-campaign-layout .hero-seal { top:12px; right:12px; width:108px; }
 .hero-official-brand { width:104px; top:10px; left:12px; padding:2px; }
 .hero-approved-art { inset:auto; left:50%; bottom:100px; width:200%; max-width:none; height:auto; transform:translateX(-50%); clip-path:inset(48% 0 0 0); }
 .hero-slide-copy { position:absolute; z-index:2; top:0; left:0; right:0; display:flex; flex-direction:column; justify-content:center; width:100%; height:240px; padding:80px 24px 18px; margin:0; overflow:visible; clip:auto; white-space:normal; background:#fcf5e7; color:var(--petrol-dark); text-align:center; }
 .hero-slide-copy h1 { margin:0; color:var(--petrol-dark); font:italic 600 clamp(30px,8.2vw,40px)/1.02 "Cormorant Reviews GUT",Georgia,serif; letter-spacing:-.02em; text-wrap:balance; }
 .hero-slide-copy h1 span,.hero-slide-copy h1 em { display:block; }
 .hero-slide-copy h1 em { color:var(--burgundy); font-style:italic; }
 .hero-slide-copy p { margin:10px auto 0; max-width:30ch; font:600 .9rem/1.4 var(--sans); text-wrap:balance; }
 .hero-copy-black-friday h1 { font-size:28px; }
 .hero-copy-black-friday h1 small { display:block; margin:3px 0 8px; font:600 .85rem/1.3 var(--sans); }
 .hero-copy-black-friday p { margin-top:0; color:var(--burgundy); }
 .hero-copy-collage { background:none; pointer-events:none; }
 .hero-art-collage-destinos .hero-approved-art { inset:60px 0 auto; width:100%; height:auto; transform:none; clip-path:none; }
 .hero.has-campaign-layout .hero-carousel-controls { bottom:125px; padding-inline:12px; }
 .hero-search-row { width:calc(100% - 24px); bottom:12px; }
 .hero.has-campaign-layout>.region-nav { padding:8px 12px; }
 .hero>.region-nav .category-family-options { gap:2px; }
 .hero>.region-nav .region-filter { padding:6px 3px; font-size:.76rem; }
 .hero>.region-nav .region-filter svg { display:none; }
 .hero>.region-nav .category-copy { text-align:center; }
 .hero>.region-nav .category-copy small { font-size:.6rem; }
}
/* English uses editable copy over an opaque panel: no Spanish raster text beneath it. */
@media(min-width:761px) {
 html[lang="en"] .hero-slide-copy:not(.hero-copy-collage) { z-index:2; top:0; left:0; width:100%; height:48%; padding:18px 150px 10px; margin:0; display:flex; flex-direction:column; align-items:center; justify-content:center; clip:auto; white-space:normal; color:#fff6e8; background:#063640; }
 html[lang="en"] .hero-slide-copy h1 { margin:0; font:italic 600 clamp(28px,3.8vw,56px)/1.05 "Cormorant Reviews GUT",Georgia,serif; text-wrap:balance; }
 html[lang="en"] .hero-slide-copy h1 em { font-style:inherit; }
 html[lang="en"] .hero-slide-copy p { margin:8px 0 0; font:600 clamp(14px,1.3vw,18px)/1.35 var(--sans); }
 html[lang="en"] .hero-copy-black-friday h1 { display:grid; grid-template-columns:1fr 1fr; gap:3px 16px; align-items:baseline; font-size:clamp(24px,3vw,40px); }
 html[lang="en"] .hero-copy-black-friday h1 small { font:500 clamp(14px,1.5vw,21px)/1.3 var(--sans); }
}
@media(prefers-reduced-motion:reduce) { .hero.has-campaign-layout .hero-slide { transition:none; } }

.hero-carousel-controls>.hero-carousel-pause { position:absolute; left:72px; font-size:1rem; }
@media(max-width:980px) { .hero.has-campaign-layout .hero-carousel-controls { bottom:102px; } .hero-carousel-controls>.hero-carousel-pause { left:64px; } }
@media(max-width:760px) { .hero.has-campaign-layout .hero-carousel-controls { bottom:125px; } }

/* Pregunta aprobada para el collage; franja superior de cielo y base libre para búsqueda. */
.hero-art-collage-destinos .hero-approved-art { object-fit:cover; object-position:center top; }
.hero-copy-collage { z-index:2; top:12px; left:50%; right:auto; width:min(78%,1080px); height:auto; padding:8px 18px; margin:0; transform:translateX(-50%); overflow:visible; clip:auto; white-space:normal; text-align:center; background:linear-gradient(90deg,transparent,#fcf5e7ed 12%,#fcf5e7ed 88%,transparent); }
.hero-copy-collage h1 { margin:0; color:var(--petrol-dark); font:italic 600 clamp(30px,3.4vw,50px)/1.05 "Cormorant Reviews GUT",Georgia,serif; text-wrap:balance; }
@media(max-width:760px) {
 .hero-copy-collage { top:0; left:0; right:0; width:100%; height:200px; padding:76px 30px 18px; transform:none; background:#fcf5e7; }
 .hero-copy-collage h1 { font-size:clamp(30px,8.2vw,40px); }
 .hero-art-collage-destinos .hero-approved-art { top:200px; bottom:auto; object-fit:contain; }
}

@media(min-width:761px) { html[lang="en"] .hero-slide-copy:not(.hero-copy-collage) h1 { color:#fff6e8; } html[lang="en"] .hero-slide-copy:not(.hero-copy-collage) h1 em { color:#e3bd70; } }

/* Sello oficial al doble, conservado en la esquina y con espacio propio para el texto. */
@media(min-width:761px) {
 html[lang="en"] .hero-slide-copy:not(.hero-copy-collage) { padding-inline:196px; }
 .hero-copy-collage { width:min(calc(100% - 384px),1080px); }
}
@media(min-width:761px) and (max-width:1100px) {
 /* A este ancho la tipografía editable evita el cruce del sello con el texto del arte. */
 html[lang="es"] .hero-slide-copy:not(.hero-copy-collage) { z-index:2; top:0; left:0; width:100%; height:48%; padding:18px 196px 10px; margin:0; display:flex; flex-direction:column; align-items:center; justify-content:center; clip:auto; white-space:normal; color:#fff6e8; background:#063640; }
 html[lang="es"] .hero-slide-copy:not(.hero-copy-collage) h1 { margin:0; color:#fff6e8; font:italic 600 clamp(28px,3.8vw,56px)/1.05 "Cormorant Reviews GUT",Georgia,serif; text-wrap:balance; }
 html[lang="es"] .hero-slide-copy:not(.hero-copy-collage) h1 em { color:#e3bd70; font-style:inherit; }
 html[lang="es"] .hero-slide-copy:not(.hero-copy-collage) p { margin:8px 0 0; font:600 clamp(14px,1.3vw,18px)/1.35 var(--sans); }
 html[lang="es"] .hero-copy-black-friday h1 { display:grid; grid-template-columns:1fr 1fr; gap:3px 16px; align-items:baseline; font-size:clamp(24px,3vw,40px); }
 html[lang="es"] .hero-copy-black-friday h1 small { font:500 clamp(14px,1.5vw,21px)/1.3 var(--sans); }
}
@media(max-width:760px) {
 .hero.has-campaign-layout .hero-stage { height:540px; min-height:540px; }
 .hero-slide-copy { height:300px; padding-top:132px; }
 .hero-copy-collage { height:260px; padding-top:132px; }
 .hero-art-collage-destinos .hero-approved-art { top:260px; }
}

/* Quinta portada: autobús y viajeros, con texto HTML en inglés y móvil. */
@media(min-width:761px) {
 html[lang="en"] .hero.has-campaign-layout .hero-copy-bus { height:calc(100vw * .103); background:#fcf5e7; }
 html[lang="en"] .hero.has-campaign-layout .hero-copy-bus h1 { color:var(--burgundy) !important; font-size:clamp(28px,3vw,44px); }
 html[lang="en"] .hero.has-campaign-layout .hero-copy-bus p { color:var(--petrol-dark); }
}
@media(min-width:761px) and (max-width:1100px) {
 .hero-art-viajes-autobus .hero-approved-art { inset:48px 0 auto; height:auto; }
 html[lang] .hero.has-campaign-layout .hero-copy-bus { height:calc(48px + 100vw * .103); background:#fcf5e7; }
 html[lang] .hero.has-campaign-layout .hero-copy-bus h1 { color:var(--burgundy) !important; }
 html[lang] .hero.has-campaign-layout .hero-copy-bus p { color:var(--petrol-dark); }
}
@media(max-width:760px) {
 .hero-art-viajes-autobus .hero-approved-art { top:calc(300px - 16.533vw); bottom:auto; width:160%; clip-path:inset(31% 0 0 0); }
 .hero-copy-bus h1 { color:var(--burgundy); }
}

/* Composición móvil: texto junto al sello, escena protagonista y búsqueda en el borde inferior. */
@media(max-width:760px) {
 .hero.has-campaign-layout { --hero-mobile-copy-height:180px; --hero-mobile-photo-height:clamp(176px,55vw,280px); }
 .hero.has-campaign-layout .hero-stage { height:calc(var(--hero-mobile-copy-height) + var(--hero-mobile-photo-height) + 100px); min-height:0; }
 .hero-slide-copy { height:var(--hero-mobile-copy-height); padding:16px 132px 16px 18px; align-items:flex-start; text-align:left; }
 .hero-slide-copy h1 { font-size:30px; line-height:1.04; text-wrap:balance; }
 .hero-slide-copy p { margin:9px 0 0; font-size:.85rem; line-height:1.3; text-wrap:pretty; }
 .hero-copy-black-friday h1 { font-size:25px; }
 .hero-copy-black-friday h1 small { font-size:.78rem; margin:2px 0 7px; }
 .hero-copy-black-friday p { margin-top:0; }
 .hero-approved-art { --art-width:min(300vw,1536px); width:var(--art-width); left:50%; top:calc(var(--hero-mobile-copy-height) - var(--art-width) * .15); bottom:auto; clip-path:inset(45% 0 0 0); }
 /* La pareja se conserva completa en el encuadre de la izquierda, fuera del texto del arte. */
 .hero-art-buenas-manos .hero-approved-art { --art-width:300vw; left:0; top:var(--hero-mobile-copy-height); transform:none; clip-path:none; }
 .hero-art-black-friday .hero-approved-art { left:auto; right:0; top:calc(var(--hero-mobile-copy-height) - var(--art-width) * .156667); transform:none; clip-path:inset(47% 0 0 0); }
 .hero-art-precios-2027 .hero-approved-art { transform:translateX(-62%); }
 .hero-art-tour-para-usted .hero-approved-art { --art-width:min(220vw,1440px); top:calc(var(--hero-mobile-copy-height) - var(--art-width) * .093333); clip-path:inset(28% 0 0 0); }
 /* Más ancho de escena para conservar al grupo, sin ampliar artificialmente el original. */
 .hero-art-viajes-autobus .hero-approved-art { --art-width:min(200vw,1440px); width:var(--art-width); top:calc(var(--hero-mobile-copy-height) - var(--art-width) * .103333); transform:translateX(-43%); clip-path:inset(31% 0 0 0); }
 .hero.has-campaign-layout .hero-collage::after { content:""; position:absolute; z-index:1; inset:auto 0 0; height:125px; background:linear-gradient(transparent,#063640 55%); pointer-events:none; }
 .hero.has-campaign-layout .hero-carousel-controls { bottom:125px; }
 .hero.has-campaign-layout:has(.hero-art-buenas-manos.is-active) .hero-carousel-controls { top:calc(var(--hero-mobile-copy-height) + 8px); bottom:auto; }
}
@media(max-width:400px) {
 .hero.has-campaign-layout { --hero-mobile-copy-height:180px; }
 .hero-slide-copy h1 { font-size:26px; }
 .hero-copy-black-friday h1 { font-size:24px; }
}
@media(min-width:601px) and (max-width:760px) {
 .hero.has-campaign-layout { --hero-mobile-copy-height:160px; }
 .hero.has-campaign-layout .hero-stage { height:calc(var(--hero-mobile-copy-height) + var(--hero-mobile-photo-height) + 65px); }
 .hero-slide-copy { padding:18px 144px 18px 24px; }
 .hero-slide-copy h1 { font-size:36px; }
 .hero-copy-black-friday h1 { display:grid; grid-template-columns:auto auto; gap:3px 16px; align-items:baseline; font-size:28px; }
 .hero-copy-black-friday h1 small { font-size:1rem; margin:0; }
 .hero.has-campaign-layout .hero-carousel-controls { bottom:90px; }
}

/* La traducción de Buenas manos ocupa sólo la zona del titular, no las personas. */
@media(min-width:761px) {
 html[lang="en"] .hero.has-campaign-layout .hero-copy-good-hands { left:34%; right:auto; width:44%; height:46%; padding:12px 32px 12px 12px; background:#fcf5e7; }
 html[lang="en"] .hero.has-campaign-layout .hero-copy-good-hands h1 { color:var(--petrol-dark); font-size:clamp(26px,3.6vw,48px); }
 html[lang="en"] .hero.has-campaign-layout .hero-copy-good-hands h1 em { color:var(--burgundy); }
}
@media(min-width:761px) and (max-width:1100px) {
 html[lang="es"] .hero.has-campaign-layout .hero-copy-good-hands { left:34%; right:auto; width:44%; height:46%; padding:12px 32px 12px 12px; background:#fcf5e7; }
 html[lang="es"] .hero.has-campaign-layout .hero-copy-good-hands h1 { color:var(--petrol-dark); font-size:clamp(26px,3.6vw,48px); }
 html[lang="es"] .hero.has-campaign-layout .hero-copy-good-hands h1 em { color:var(--burgundy); }
}

/* Fondos móviles dedicados: imagen continua, texto accesible y sello en superposición. */
@media(max-width:760px) {
 .hero.has-campaign-layout.has-mobile-art .hero-stage { height:clamp(500px,125vw,640px); min-height:0; }
 .hero.has-mobile-art .hero-slide-art .hero-approved-art { inset:0; width:100%; max-width:none; height:100%; transform:none; clip-path:none; object-fit:cover; object-position:center; }
 .hero.has-mobile-art .hero-collage::after { inset:0; height:auto; background:linear-gradient(180deg,rgba(4,31,38,.78),rgba(4,31,38,.48) 24%,rgba(4,31,38,.08) 47%,transparent 57%,rgba(4,31,38,.15) 72%,rgba(4,31,38,.85)); }
 .hero.has-mobile-art .hero-slide-copy { top:20px; left:18px; right:132px; width:auto; height:auto; padding:0; margin:0; align-items:flex-start; justify-content:flex-start; background:transparent; color:#fff8e9; text-align:left; }
 .hero.has-mobile-art .hero-slide-copy h1 { margin:0; color:#fff8e9; font-size:clamp(28px,8vw,38px); line-height:1.04; text-shadow:0 2px 6px #03252bc9; }
 .hero.has-mobile-art .hero-slide-copy h1 em { color:#f5d28a; }
 .hero.has-mobile-art .hero-slide-copy p { color:#fff8e9; margin:9px 0 0; font-size:.85rem; line-height:1.35; text-shadow:0 1px 4px #03252b; }
 .hero.has-mobile-art .hero-copy-black-friday h1 { display:block; font-size:27px; }
 .hero.has-mobile-art .hero-copy-black-friday h1 small { display:block; font-size:.8rem; margin:2px 0 7px; }
 .hero.has-mobile-art .hero-copy-black-friday p { margin-top:0; }
 .hero.has-campaign-layout.has-mobile-art .hero-carousel-controls,
 .hero.has-campaign-layout.has-mobile-art:has(.hero-art-buenas-manos.is-active) .hero-carousel-controls { top:auto; bottom:125px; }
}
@media(max-width:400px) {
 .hero.has-mobile-art .hero-slide-copy h1 { font-size:26px; }
 .hero.has-mobile-art .hero-copy-black-friday h1 { font-size:24px; }
}
@media(min-width:601px) and (max-width:760px) {
 .hero.has-mobile-art .hero-slide-copy { left:24px; right:144px; }
 .hero.has-mobile-art .hero-slide-copy h1 { font-size:42px; }
 .hero.has-mobile-art .hero-copy-black-friday h1 { display:grid; grid-template-columns:auto auto; gap:3px 16px; align-items:baseline; font-size:32px; }
 .hero.has-mobile-art .hero-copy-black-friday h1 small { margin:0; font-size:1rem; }
 .hero.has-campaign-layout.has-mobile-art .hero-carousel-controls,
 .hero.has-campaign-layout.has-mobile-art:has(.hero-art-buenas-manos.is-active) .hero-carousel-controls { bottom:95px; }
}

/* Traducir el titular sin ocultar las escenas laterales ni el mapa. */
@media(min-width:761px) {
 .hero-copy-world { --caption-left:20%; --caption-width:65%; --caption-height:33%; --caption-right:clamp(16px,calc(196px - 15vw),90px); }
 .hero-copy-black-friday { --caption-left:24%; --caption-width:56%; --caption-height:48%; --caption-right:clamp(16px,calc(196px - 20vw),60px); }
 .hero-copy-prices { --caption-left:16%; --caption-width:70%; --caption-height:48%; --caption-right:clamp(16px,calc(196px - 14vw),95px); }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy:is(.hero-copy-world,.hero-copy-black-friday,.hero-copy-prices) { left:var(--caption-left); right:auto; width:var(--caption-width); height:var(--caption-height); padding:12px var(--caption-right) 12px 16px; }
 html[lang="en"] .hero.has-campaign-layout .hero-copy-world h1 { font-size:clamp(26px,3vw,40px); }
}
@media(min-width:761px) and (max-width:1100px) {
 html[lang="es"] .hero.has-campaign-layout .hero-slide-copy:is(.hero-copy-world,.hero-copy-black-friday,.hero-copy-prices) { left:var(--caption-left); right:auto; width:var(--caption-width); height:var(--caption-height); padding:12px var(--caption-right) 12px 16px; }
 html[lang="es"] .hero.has-campaign-layout .hero-copy-world h1 { font-size:clamp(26px,3vw,40px); }
}

/* English desktop captions follow each artwork's title area. The soft-edged
   backing masks the embedded Spanish, without a full-width opaque banner.
   Keep the approved Spanish and mobile compositions untouched. */
@media(min-width:761px) {
 /* Captions switch immediately; avoid exposing the previous Spanish artwork during a crossfade. */
 html[lang="en"] .hero.has-campaign-layout .hero-slide { transition:none; }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy:not(.hero-copy-collage) {
  isolation:isolate; overflow:visible; box-sizing:border-box; background:transparent;
 }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy:not(.hero-copy-collage)::before {
  content:""; position:absolute; z-index:-1; inset:0 -4%; pointer-events:none;
  background:var(--caption-backing,#063640);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent),linear-gradient(#000 84%,transparent);
  -webkit-mask-composite:source-in;
  mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent),linear-gradient(#000 84%,transparent);
  mask-composite:intersect;
 }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy:is(.hero-copy-prices,.hero-copy-black-friday)::before { bottom:-32px; }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy h1 {
  letter-spacing:normal; text-align:center; text-wrap:balance;
 }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-good-hands {
  --caption-backing:#fce7cf; left:34%; width:43%; height:46%; padding:12px 18px 28px;
 }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-good-hands h1 {
  color:var(--petrol-dark); font-size:clamp(30px,4.2vw,65px); line-height:1.02;
 }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-good-hands h1 em { display:block; color:var(--burgundy); }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-black-friday {
  --caption-backing:linear-gradient(#063640 15%,#194c56 66%,#6c8b8d); left:24%; width:56%; height:51%; padding:14px 18px 30px;
 }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-black-friday h1 {
  display:grid; grid-template-columns:max-content max-content; gap:5px 22px;
  align-items:baseline; justify-content:center; font-size:clamp(28px,3.7vw,57px); line-height:1.05;
 }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-black-friday h1 span { text-align:right; }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-black-friday h1 small {
  margin:0; font:italic 600 clamp(22px,2.9vw,45px)/1.1 "Cormorant Reviews GUT",Georgia,serif;
  letter-spacing:normal; word-spacing:.08em; white-space:nowrap; color:#f5d28a; text-align:left;
 }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-black-friday p {
  margin:10px 0 0; font-size:clamp(14px,1.45vw,22px); letter-spacing:.02em;
 }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-world {
  left:25%; width:53%; height:34%; padding:8px 16px 24px;
 }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-world h1 {
  font-size:clamp(27px,3.4vw,52px); line-height:1.02;
 }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-world h1 em { display:block; color:#fff6e8; }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-prices {
  --caption-backing:linear-gradient(#063640 28%,#0d4351 68%,#3c6975); left:18%; width:66%; height:49%; padding:12px 24px 28px;
 }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-prices h1 {
  font-size:clamp(29px,3.7vw,58px); line-height:1.04;
 }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-prices h1 span,
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-prices h1 em { display:block; }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-prices p {
  padding:3px 14px; margin:8px 0 0; border-block:1px solid #d7b56d; background:#850d2c;
  font-size:clamp(13px,1.35vw,20px); color:#fff6e8;
 }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-bus {
  --caption-backing:#fcf0de; left:28%; width:57%; height:34%; padding:8px 20px 22px;
 }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-bus h1 {
  color:var(--burgundy); font-size:clamp(28px,3.45vw,54px); line-height:1.03;
 }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-bus p {
  color:var(--petrol-dark); margin:6px 0 0;
  font:italic 600 clamp(18px,2.15vw,32px)/1.15 "Cormorant Reviews GUT",Georgia,serif;
 }
}
/* The seal keeps its own column at narrow desktop/tablet widths. */
@media(min-width:761px) and (max-width:1100px) {
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy:not(.hero-copy-collage) { padding-right:max(16px,calc(196px - 15vw)); }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-bus { top:48px; height:34%; }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-black-friday h1 { column-gap:12px; font-size:clamp(26px,3.5vw,39px); }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-black-friday h1 small { font-size:clamp(20px,2.6vw,29px); }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-world h1 { font-size:clamp(25px,3.1vw,34px); }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-prices { padding-inline:16px max(16px,calc(196px - 15vw)); }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-prices h1 { font-size:clamp(27px,3.4vw,37px); }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-prices p { font-size:13px; }
}
/* Below 960px the stage has a minimum height, but the artwork does not.
   Size masks against the image's 3:1 ratio so they cannot cover the scenery. */
@media(min-width:761px) and (max-width:960px) {
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-good-hands { height:15.333vw; padding-bottom:18px; }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-world { height:11.333vw; padding-bottom:16px; }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-bus { height:11.333vw; padding-bottom:16px; }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-black-friday { height:17vw; padding-bottom:16px; }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-prices { height:16vw; padding-top:8px; padding-bottom:14px; }
 html[lang="en"] .hero.has-campaign-layout .hero-slide-copy:is(.hero-copy-prices,.hero-copy-black-friday)::before { bottom:-12px; }
}
/* Keep the visible space between month and day at mobile text sizes. */
html[lang="en"] .hero.has-campaign-layout .hero-slide-copy.hero-copy-black-friday h1 small { word-spacing:.12em; }
