/* Quiet photographic hero, with the image fading into the text area. */
.vista-clasica .warm-hero{background-image:linear-gradient(90deg,#fff 0%,#fffffffa 20%,#ffffffe6 33%,#ffffff91 48%,#ffffff08 68%),url('/images/landing/energy-hero.png');color:var(--ink);height:590px;background-position:center}
.vista-clasica .warm-hero h1{max-width:670px;text-shadow:none}.vista-clasica .warm-hero-content>p{color:#45576d;max-width:550px}.vista-clasica .warm-note{color:#fff;text-shadow:0 1px 8px #0004}
.vista-exclusiva .hero-mosaic.activities-mosaic{display:block;overflow:hidden;border-radius:22px 0 0 22px;inset:15px 0 15px 53%}
.activities-mosaic>img{width:100%;height:100%;object-fit:cover;display:block}
/* Bright editorial cards keep nightlife inviting rather than gloomy. */
.warm-page .warm-night{background:linear-gradient(135deg,#f0f6fc,#fafbfe 60%,#eaf2f7);color:var(--ink);padding-block:45px;border-top:1px solid #e5edf4;border-bottom:1px solid #e5edf4}
.warm-page .warm-night h2{color:var(--ink);font-size:31px;letter-spacing:-1px}.warm-page .warm-night .section-heading{align-items:flex-end;margin-bottom:25px}.warm-page .warm-night .section-heading p{color:#5e7085;font-size:15px;margin-top:10px;max-width:650px}
.night-eyebrow{font-size:10px;font-weight:700;letter-spacing:1.8px;color:var(--accent);display:flex;align-items:center;gap:9px;margin-bottom:12px}.night-eyebrow svg{width:16px;height:16px}
.warm-page .warm-night .section-heading .outline{color:var(--ink);background:white;border:1px solid #d2deea;border-radius:10px;padding:12px 18px;font-size:13px}.warm-night .section-heading .outline svg{width:17px}
.warm-page .warm-night-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}
.warm-page .warm-night-card{background:white;display:block;border:1px solid #e0e8ef;border-radius:16px;overflow:hidden;padding:0;box-shadow:0 5px 18px #102d4610;transition:transform .2s,box-shadow .2s;min-height:0;color:var(--ink)}
.warm-page .warm-night-card:hover{transform:translateY(-4px);box-shadow:0 12px 26px #102d461b}
.warm-page .warm-night-card>.night-photo{position:relative;inset:auto;display:block;height:215px;overflow:hidden;background:#dce8f0;padding:0;border-radius:0}
.night-photo img{height:100%;width:100%;object-fit:cover;display:block}.night-photo img.night-triptych{position:absolute;top:0;left:calc(-100% * var(--panel));height:100%;width:300%;max-width:none;object-fit:cover;object-position:center var(--focus,50%)}
.warm-page .warm-night-card>.night-card-copy{position:static;inset:auto;padding:22px;background:white;display:block}
.night-tag{font-size:10px;font-weight:700;letter-spacing:1px;color:var(--accent);display:block;margin-bottom:10px}
.warm-page .warm-night-card h3{font-size:20px;line-height:1.3;margin:0 0 9px;letter-spacing:-.4px}.warm-page .warm-night-card p{color:#65758a;font-size:13px;line-height:1.6;min-height:42px;margin:0}
.night-card-footer{border-top:1px solid #edf1f6;margin-top:18px;padding-top:15px;display:flex;align-items:center;justify-content:space-between;color:var(--accent);font-size:12px;font-weight:700}.night-card-footer svg{width:18px;height:18px}
@media(max-width:800px){.vista-clasica .warm-hero{background-image:linear-gradient(90deg,#fffffff2,#ffffffd6 40%,#ffffff5c 80%),url('/images/landing/energy-hero.png')}.vista-exclusiva .hero-mosaic.activities-mosaic{position:relative;inset:auto;height:300px;width:100%;border-radius:0;order:1}.warm-page .warm-night-grid{gap:15px}.warm-page .warm-night-card>.night-photo{height:180px}.warm-page .warm-night-card>.night-card-copy{padding:16px}.warm-page .warm-night-card h3{font-size:17px}.warm-page .warm-night h2{font-size:26px}.warm-page .warm-night .section-heading{align-items:flex-start;flex-wrap:wrap;gap:16px}}
@media(max-width:600px){.warm-page .warm-night-grid{grid-template-columns:1fr}.warm-page .warm-night-card>.night-photo{height:210px}.warm-page .warm-night-card>.night-card-copy{padding:20px}.warm-page .warm-night-card p{min-height:0}.warm-page .warm-night{padding-block:30px}.warm-page .warm-night .section-heading .small{max-width:none;white-space:nowrap;font-size:12px}.vista-clasica .warm-hero h1{font-size:36px}.vista-clasica .warm-hero{height:590px}.vista-exclusiva .hero-mosaic.activities-mosaic{height:270px}}
@media(prefers-reduced-motion:reduce){.warm-page .warm-night-card{transition:none}.warm-page .warm-night-card:hover{transform:none}}
/* Original photographs replace enlarged crops from the Modern mockup. */
.modern-photo{display:block;position:relative;overflow:hidden;width:100%;aspect-ratio:3/2;background:#eaf1f6}
.modern-photo>img,.modern-photo>svg{display:block;width:100%;height:100%;object-fit:cover;stroke:none;fill:none}
.vista-moderna .hero-mosaic .modern-photo{height:100%;aspect-ratio:auto}
.vista-moderna .warm-program-card>.modern-photo{aspect-ratio:228/115}
.vista-moderna .warm-category>.modern-photo{aspect-ratio:126/125}
.vista-moderna .warm-community>.modern-photo{aspect-ratio:136/85}
.vista-moderna .warm-friends-photo{background-image:url('/images/landing/modern-gastronomy-v3.jpg')}
@media(max-width:480px){.vista-moderna .warm-category>.modern-photo{aspect-ratio:126/90}.vista-moderna .warm-category:last-child>.modern-photo{aspect-ratio:260/110}}
.warm-page .energy-question{color:#007d94;white-space:nowrap}
.vista-clasica .warm-hero{height:540px;background-image:linear-gradient(90deg,#071b35bf 0%,#071b3585 42%,#071b351a 78%),url('/images/landing/energy-hero.png');color:white}
.vista-clasica .warm-hero-content{top:145px;bottom:auto}
.vista-clasica .warm-hero h1{max-width:1000px;font-size:clamp(44px,5vw,76px);line-height:1.08;letter-spacing:-2px;color:white;white-space:normal;text-shadow:0 2px 16px #071b3526}
.vista-clasica .warm-hero .energy-question{display:block;color:white}
.vista-clasica .warm-hero-content>p{color:#fff;max-width:750px;font-size:22px}
.vista-exclusiva .warm-program-card>.modern-photo{aspect-ratio:228/115}
.vista-exclusiva .warm-category>.modern-photo{aspect-ratio:126/125}
.vista-exclusiva .warm-community>.modern-photo{aspect-ratio:136/85}
.warm-page .night-photo>.modern-photo,.warm-friends-photo>.modern-photo{height:100%;aspect-ratio:auto}
@media(max-width:800px){.vista-clasica .warm-hero{height:590px;background-image:linear-gradient(90deg,#071b35bf,#071b3580),url('/images/landing/energy-hero.png')}.vista-clasica .warm-hero-content{top:125px;bottom:auto}.vista-clasica .warm-hero h1{font-size:44px;letter-spacing:-1.4px}.vista-clasica .warm-hero-content>p{font-size:18px}}
@media(max-width:480px){.vista-clasica .warm-hero h1{font-size:38px}.vista-exclusiva .warm-category>.modern-photo{aspect-ratio:126/90}.vista-exclusiva .warm-category:last-child>.modern-photo{aspect-ratio:260/110}}
/* An organic photographic composition replaces the rigid Exclusive grid. */
.vista-exclusiva .hero-mosaic.activities-mosaic{inset:0 0 0 47%;border-radius:0;mask-image:linear-gradient(90deg,transparent,#000 15%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 15%)}
.vista-exclusiva .activities-mosaic>img{object-fit:cover;object-position:center}
.vista-exclusiva .warm-hero-content{z-index:2}
.vista-exclusiva .search-row{width:100%;max-width:570px;flex-wrap:wrap;gap:12px}
.vista-exclusiva .searchbar{flex:0 0 100%;display:grid;grid-template-columns:1fr 1fr;height:auto;padding:10px;gap:8px;border-radius:14px}
.vista-exclusiva .searchbar label{height:40px;border:0;padding:6px 10px}
.vista-exclusiva .searchbar>.button{height:42px;min-width:0;padding:8px 12px;font-size:13px}
.vista-exclusiva .daynight{height:42px;border-radius:24px}
.vista-exclusiva .warm-category{border-radius:18px;overflow:hidden;box-shadow:0 5px 20px #10325812}
.vista-exclusiva .warm-category>div{background:linear-gradient(transparent 10%,#071c347a 60%,#071c34c9);padding:20px 12px 14px}
.vista-exclusiva .warm-program-card,.vista-exclusiva .warm-community{border-radius:15px;overflow:hidden}
@media(max-width:800px){.vista-exclusiva .hero-mosaic.activities-mosaic{position:relative;inset:auto;width:100%;height:330px;mask-image:linear-gradient(180deg,transparent,#000 15%);-webkit-mask-image:linear-gradient(180deg,transparent,#000 15%)}.vista-exclusiva .activities-mosaic>img{object-fit:cover}}
.vista-clasica .warm-program-card>.modern-photo{aspect-ratio:228/115}
.vista-clasica .warm-category>.modern-photo{aspect-ratio:126/112}
.vista-clasica .warm-community>.modern-photo{aspect-ratio:136/85}
@media(max-width:480px){.vista-clasica .warm-category>.modern-photo{aspect-ratio:126/90}.vista-clasica .warm-category:last-child>.modern-photo{aspect-ratio:260/110}}
/* Each programme preview has its own photograph, not the festival cover. */
.warm-program-card .warm-event-photo>.modern-photo{position:absolute;inset:0;display:block;width:100%;height:100%;padding:0;border-radius:0;background:transparent;aspect-ratio:auto}
.warm-program-card .warm-event-photo>.modern-photo svg{display:block;width:100%;height:100%}
