/* Public pages only. The 2026 footer has its own unchanged presentation. */
.section{padding-block:clamp(56px,8vw,100px);}
.section-heading{margin-bottom:clamp(28px,4vw,48px);}
.hero-content{width:min(100%,1000px);}
.button{gap:8px;text-align:center;max-width:100%;white-space:normal;line-height:1.5;}
.ticket-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;margin:28px auto 0;max-width:680px;}
.ticket-actions .button{flex:1 1 230px;}
.ticket-section>.reference-price{margin-bottom:20px;}
.ticket-section>.ticket-actions+p{margin-top:24px;}
.introduction{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;}
.introduction .section-heading,.introduction .intro-copy,.introduction .intro-image{width:100%;margin:0;min-width:0;}
.intro-copy>:last-child{margin-bottom:0;}
.action-row{gap:16px 28px;align-items:center;}
.action-row .text-link{display:inline-flex;align-items:center;min-height:44px;}
.checkout-header{gap:20px;}
.checkout-panel{margin-inline:auto;}
.checkout-panel .checkout-return{display:inline-flex;align-items:center;min-height:44px;margin-top:24px;}
.checkout-actions{flex-wrap:wrap;gap:16px;}
.checkout-actions button{flex:1 1 150px;}
.checkout-panel :is(#retry-webpay,#paypal-status,#ticket-recovery){display:grid;gap:16px;margin-block:24px;}
.checkout-panel :is(#retry-webpay,#paypal-status,#ticket-recovery)>:is(p,label){margin:0;}
.checkout-panel :is(#retry-webpay,#paypal-status)>button{justify-self:start;}
.checkout-panel :is(#retry-webpay,#paypal-status,#ticket-recovery)>p:empty{display:none;}
.checkout-panel .issued-tickets{display:grid;gap:16px;margin-block:20px 24px;}
.checkout-panel .issued-tickets li{margin:0;}
.checkout-panel .checkout-new-order{margin-block:32px 0;}
.checkout-panel .payment-choice{line-height:1.6;}
.checkout-panel .reservation-card,.checkout-panel .delivery-card{margin-block:28px;}
.checkout-panel .checkout-summary{column-gap:24px;row-gap:16px;}
.exito-contenido{display:flex;flex-direction:column;align-items:flex-start;gap:20px;}
.exito-contenido>:is(h2,p,a){margin:0;}
.exito-contenido .registro-boton{margin:0;}
.portada-home .portada-registro{padding-bottom:80px;}
.terminos-volver{display:inline-flex;align-items:center;min-height:44px;margin-bottom:12px;}
@media(min-width:768px){
 .introduction{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px 8%;}
 .introduction .intro-image{grid-column:1 / -1;}
}
@media(min-width:850px) and (max-width:999px){
 .checkout-fields{grid-template-columns:minmax(0,1fr);}
}
@media(max-width:600px){
 .ticket-actions{flex-direction:column;}
 .ticket-actions .button{flex:auto;width:100%;}
 .registro-fila{grid-template-columns:minmax(0,1fr);gap:24px;}
 .checkout-panel :is(#retry-webpay,#paypal-status)>button{width:100%;}
 .checkout-panel .checkout-summary{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:16px;}
}

.checkout-panel .order-status>.button+.text-link{display:flex;align-items:center;min-height:44px;margin-top:16px;}

/* Keep every cover element on the same center axis, including width-limited paragraphs. */
.hero-content{display:flex;flex-direction:column;align-items:center;min-width:0;}
.hero-content>p{margin-inline:auto;text-align:center;}
.hero-content>.eyebrow{width:100%;margin-bottom:0;}
.hero-content>h1{width:100%;margin-inline:auto;}
.hero-signature{display:flex;align-items:baseline;justify-content:center;flex-wrap:wrap;gap:4px 10px;}
.hero-signature span{margin-left:0;}
.hero-details{align-items:center;justify-content:center;width:100%;text-align:center;}
.hero-content>.button{align-self:center;}
.hero-content>.hero-age{width:100%;}
.portada-texto{display:flex;flex-direction:column;align-items:center;min-width:0;}
.portada-texto>p,.portada-texto>h1{margin-inline:auto;text-align:center;max-width:100%;}
.portada-autor{display:flex;align-items:baseline;justify-content:center;flex-wrap:wrap;gap:4px 10px;}
.portada-autor span{margin-left:0;}
@media(min-width:768px){.hero-details{flex-wrap:wrap;gap:12px 30px;}}
.promotion-tag { display: inline-block; padding: .35rem .65rem; border: 1px solid currentColor; border-radius: .25rem; font-size: .8rem; font-weight: 600; }
.promotion-period { font-size: .8rem; line-height: 1.5; }

/* Cover typography recovered from the 2026 main/responsive styles. */
.hero.hero-legacy{align-items:center;padding-bottom:110px}
.hero-legacy .hero-content{max-width:1000px;gap:0}
.hero-legacy .hero-details{margin:0 0 18px;font-size:22px;line-height:1.4}
.hero-legacy .hero-content>.eyebrow{font-family:'Cinzel',serif;font-size:34px;font-weight:800;line-height:1.2;letter-spacing:0;text-transform:none;margin:0 0 16px}
.hero-legacy .hero-content>h1{font-family:'Cinzel',serif;font-size:58px;font-weight:800;line-height:56px;letter-spacing:0;text-transform:uppercase;max-width:none;margin:0;padding:0 50px}
.hero-legacy .hero-signature{font-family:'Cinzel',serif;font-size:20px;font-weight:800;text-transform:uppercase;line-height:56px;margin:0 0 20px;gap:5px}
.hero-legacy .hero-signature span{font-family:Julietta,cursive;font-size:40px;font-weight:400;text-transform:none;margin:0 0 0 5px}
.hero-legacy .hero-description{font-size:22px;max-width:600px;line-height:1.4;margin:0 auto 8px}
.hero-legacy .hero-content>.hero-age{font-size:12px;font-style:italic;line-height:1.5;margin:0 auto 24px}
@media(max-width:1023px){
 .hero-legacy .hero-details{font-size:18px}
 .hero-legacy .hero-content>h1{font-size:40px;line-height:40px;padding:0 20px}
 .hero-legacy .hero-description{font-size:14px;padding:0 20px}
}
@media(max-width:400px){
 .hero-legacy .hero-content>.eyebrow{font-size:20px}
 .hero-legacy .hero-content>h1{font-size:30px;line-height:40px;padding:0}
 .hero-legacy .hero-signature{font-size:12px;line-height:40px}
 .hero-legacy .hero-signature span{font-size:28px}
}

.intro-copy>p{white-space:pre-line}

/* Experience: image and copy share the available width without percentage gaps. */
.experience .section-heading{margin-bottom:28px}
.experience-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;align-items:start}
.experience-photo,.experience-copy{min-width:0;width:100%}
.experience-photo{overflow:hidden}
.experience-photo img{width:100%;height:auto;aspect-ratio:2/3;object-fit:cover}
.experience-copy .experience-list{display:grid;grid-template-columns:minmax(0,1fr);gap:0;width:100%;margin:24px 0 0}
.experience-copy .experience-list li{display:block;padding:20px 0;border-top:1px solid var(--line)}
.experience-copy .experience-number{display:block;margin-bottom:10px;font-size:.85rem;line-height:1.2}
.experience-headline{font-family:var(--serif);font-size:clamp(1.5rem,2.4vw,2.2rem);line-height:1.3;margin:0 0 18px}
.experience-lead{font-weight:600;margin-bottom:8px}
.experience-copy>p{max-width:none;line-height:1.6}
.experience-item-copy{min-width:0}
.experience-item-copy h4{font-size:1.05rem;line-height:1.4;margin:0 0 10px;font-weight:700}
.experience-item-copy p{margin:0;max-width:none;line-height:1.6}
@media(min-width:600px) and (max-width:999px){
 .experience-photo img{max-height:540px;aspect-ratio:auto;object-position:center 65%}
 .experience-copy .experience-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px}
}
@media(min-width:1000px){
 .experience-layout{grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:clamp(28px,3vw,44px);align-items:stretch}
 .experience-photo{position:relative;min-height:540px}
 .experience-photo img{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-position:center 60%}
 .experience-copy .experience-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px}
}

.introduction .intro-image img{aspect-ratio:4/3;height:auto}


/* Responsive photo gallery; keep portrait and landscape images uncropped. */
.gallery-section .editorial-gallery{display:block;width:min(1320px,100%);margin:auto;padding:0 24px 24px;overflow:visible;column-count:1;column-gap:24px}
.editorial-gallery .gallery-item{display:inline-block;width:100%;margin:0 0 24px;padding:0;break-inside:avoid;vertical-align:top}
.editorial-gallery .gallery-open{display:block}
.editorial-gallery .gallery-item img{width:100%;height:auto;aspect-ratio:auto}
.editorial-gallery .gallery-item figcaption{padding-top:8px}
@media(min-width:600px){.gallery-section .editorial-gallery{column-count:2}}
@media(min-width:1000px){.gallery-section .editorial-gallery{column-count:3;padding-inline:6vw}}

.introduction>.section-heading{container-type:inline-size}
#intro-title{font-size:clamp(1.25rem,8cqi,3.2rem)}
.intro-title-line{display:block}
.intro-title-nowrap{white-space:nowrap}


.gallery-section .gallery-heading{padding-bottom:24px}
.gallery-heading h2{margin-bottom:0}

.hosts-copy .hosts-subtitle{font-size:clamp(.9rem,1.3vw,1.1rem);line-height:1.5;font-weight:600;letter-spacing:.04em;margin:0 0 32px}

/* Early Bird: shared hierarchy across landing, checkout and confirmation. */
.landing-prices .promotion-tag, .payment-choice .promotion-tag, .promotion-summary .promotion-tag, #checkout-offer-summary .promotion-tag {
  font-size: .75rem !important; font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
  padding: .4rem .7rem; border-radius: 2rem; margin: 0 .5rem .8rem 0 !important;
}
.promotion-discount { display: inline-block; font-size: .85rem !important; font-weight: 700; }
.landing-prices .price-normal, .payment-choice .price-normal, .promotion-summary .price-normal, #checkout-offer-summary .price-normal {
  font-size: .9rem !important; font-weight: 400; line-height: 1.4; opacity: .75; margin: 0 0 .35rem !important;
}
.price-normal del { text-decoration-thickness: 1px; }
.landing-prices .promotion-amount { font-size: clamp(1.8rem, 3vw, 2.4rem); font-weight: 700; line-height: 1.2; }
.payment-choice .promotion-amount, .promotion-summary .promotion-amount { font-size: 1.25rem !important; font-weight: 700; line-height: 1.4; }
.landing-prices .promotion-period, .payment-choice .promotion-period { font-size: .8rem !important; font-weight: 400; line-height: 1.5; margin-top: .75rem !important; }
#checkout-offer-summary { margin-bottom: 1rem; }

#checkout-normal-price { text-decoration: line-through; text-decoration-thickness: 1px; }
