/* Landing 2026 Styles */
:root{--ink:#242220;--paper:#f7f5f0;--red:#a52b32;--muted:#77736e}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}
a{color:inherit;text-decoration:none}.wrap{width:min(1160px,calc(100% - 48px));margin:auto}
.site-header{position:absolute;z-index:2;top:0;width:100%;color:#fff}
.site-header.black{color:#fff;background:#000}
.site-header.white{color:#000;background:#fff}
.site-header .custom-logo {height:42px;width:auto;max-width:220px;}
.site-header.black .custom-logo.black {display:none}
.site-header.white .custom-logo.white {display:none}
.site-header .nav > ul { display: flex; flex-direction: row; align-items: center; gap: 1.5rem; list-style: none; margin: 0; padding: 0; }
.site-header .nav > ul > li { display: inline-block; margin: 0; padding: 0; }
.site-header .nav > ul > li > a { display: inline-block; }
.header-inner{height:88px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff55}
.brand,.footer-brand{font:18px Georgia,serif;letter-spacing:.12em;text-transform:uppercase}
.brand small{display:block;margin-top:5px;font:9px Arial,sans-serif;letter-spacing:.25em}
.nav{display:flex;gap:28px;align-items:center;font-size:11px;letter-spacing:.13em;text-transform:uppercase}
.nav a:hover,.footer-links a:hover{opacity:.7}
.nav .nav-cta {border:1px solid #ff6446;padding:13px 16px}
.hero{min-height:700px;height:92vh;display:flex;align-items:center;color:#fff;background:linear-gradient(90deg,#111c,#1113),url('https://images.unsplash.com/photo-1504609813442-a8924e83f76e?auto=format&fit=crop&w=2000&q=85') center 42%/cover}
.hero-content{padding-top:60px;max-width:750px}.eyebrow,.label{font-size:10px;letter-spacing:.24em;text-transform:uppercase}
.hero h1{font:normal clamp(58px,9vw,116px)/.94 Georgia,serif;letter-spacing:-.05em;margin:24px 0}
.hero p{max-width:440px;color:#ffffffdd;font-size:16px;line-height:1.7}
.button{display:inline-block;margin-top:22px;padding:16px 22px;background:var(--red);color:white;font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.button:hover{background:#812128}.scroll{position:absolute;right:28px;bottom:30px;font-size:9px;letter-spacing:.2em;text-transform:uppercase;writing-mode:vertical-rl}
.intro,.program,.quote,.contact{padding:100px 0}
.intro-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:10%}
.label{color:var(--red)}h2{font:normal clamp(38px,5.5vw,68px)/1.05 Georgia,serif;letter-spacing:-.04em}
.intro h2{margin:18px 0}
.intro-copy{font:19px/1.7 Georgia,serif;z-index:2;position:relative}
.intro-copy p{margin:0 0 18px}
.text-link{display:inline-block;margin-top:12px;padding-bottom:8px;border-bottom:1px solid var(--red);font-size:10px;letter-spacing:.13em;text-transform:uppercase}
.program, .bdr-program, .bdr-schedule, .bdr-convitto, .bdr-obiettivi{background:#e9e5dc}
.program-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:38px}
.program-head h2{max-width:550px;margin:16px 0 0}
.quote{text-align:center;background:#252321;color:white}
.landing-2026 .ticket.program{background:#000;text-align:left}
.landing-2026 .ticket.program .program-head h2{color:#c7c7c7}
.landing-2026 .ticket-dates{max-width:980px;border-top:1px solid #ffffff40;margin:0 auto}
.landing-2026 .ticket-date{display:grid;grid-template-columns:25px minmax(0,1fr) auto;align-items:center;gap:24px;padding:22px 8px;border-bottom:1px solid #ffffff40}
.landing-2026 .ticket-date-number{color:var(--accent);font:italic 16px Georgia,serif}
.landing-2026 .ticket-date-info{display:flex;align-items:baseline;gap:24px}
.landing-2026 .ticket-date h3{margin:0;color:#c7c7c7;font:400 clamp(20px,2.4vw,28px) Georgia,serif}
.landing-2026 .ticket-date p{margin:0;color:#c7c7c7;font-size:13px}
.landing-2026 .ticket-date a{padding:12px 16px;border:1px solid var(--accent);color:var(--accent);font-size:10px;letter-spacing:.1em;text-transform:uppercase;transition:background .2s,color .2s}
.landing-2026 .ticket-date a:hover{background:var(--accent);color:#000}
.quote blockquote{max-width:850px;margin:24px auto;font:normal clamp(32px,5vw,56px)/1.2 Georgia,serif}
.quote cite{font-style:normal;color:#c7bdb1;font-size:9px;letter-spacing:.2em;text-transform:uppercase}
.contact-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
.contact h2{margin:16px 0}
.contact p{max-width:440px;color:var(--muted);line-height:1.7}
.site-footer{padding:36px 0;background:#191817;color:white}
.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:22px}
.footer-meta,.footer-links{color:#c2bdb7;font-size:9px;line-height:1.8;letter-spacing:.08em}
.footer-links{display:flex;gap:20px;text-transform:uppercase}
.site-footer .footer-links > ul { display: flex; flex-direction: row; align-items: center; gap: 1.5rem; list-style: none; margin: 0; padding: 0; }
.site-footer .footer-links > ul > li { display: inline-block; margin: 0; padding: 0; }
.site-footer .footer-links > ul > li > a { display: inline-block; }

.landing-2026{--ink:#000;--paper:#fff;--accent:#ff6446;--line:#d5d1cb;font-family:system-ui,-apple-system,"Segoe UI",sans-serif}
.landing-2026 .site-header{position:sticky;top:0;background:#fff;color:#000;border-bottom:1px solid var(--line)}
.landing-2026 .site-header.black{position:sticky;top:0;background:#000;color:#fff;border-bottom:1px solid var(--line)}
.landing-2026 .header-inner{height:82px;border:0}
.landing-2026 .brand{font:600 15px/1.3 Georgia,serif;letter-spacing:.08em}
.landing-2026 .brand small{color:#5d6268}
.landing-2026 .nav .nav-cta{background:#000;color:#fff;border-color:#000;padding:13px 16px}
.landing-2026 .black .nav .nav-cta{background:#ff6446;color:#fff;border-color:#ff6446;padding:13px 16px}
.landing-2026 .wrap{width:min(1280px,calc(100% - 48px))}
.landing-2026 .button{background:var(--accent);color:#000;font-weight:700}
.landing-2026 .button:hover{background:#ff6446}
.landing-2026 .button.red{background:var(--red);color:#fff;font-weight:700}
.landing-2026 .button.red:hover{background:#a52b32;color:#000}
.landing-2026 .red.workshop_fascicolo{border-color:var(--red)}
.landing-2026 .red.workshop_fascicolo input[type="submit"]{background:var(--red);color:#fff;font-weight:700}
.cards{display:grid;gap:18px}
.program .cards{grid-template-columns:repeat(6,minmax(0,1fr))}
.program .cards .card:nth-child(-n+3){grid-column:span 2}
.program .cards .card:nth-child(n+4){grid-column:span 3}
.program .cards .card:nth-child(4){grid-column:1/span 3}
.program.news .cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.program.news .cards .card{grid-column:span 1}
.program.news .news-card{position:relative;isolation:isolate;overflow:hidden;color:#fff;background-position:center;background-size:cover}
.program.news .news-card-first{background-image:linear-gradient(0deg,#000c 0%,#0004 65%,#0003 100%),url("https://www.ballettodiroma.com/site/wp-content/uploads/ballettodiroma-schiaccianoci-piazza-2026-news01-bg.jpg")}
.program.news .news-card-second{background-image:linear-gradient(0deg,#000c 0%,#0004 65%,#0003 100%),url("https://www.ballettodiroma.com/site/wp-content/uploads/ballettodiroma-schiaccianoci-piazza-2026-news02-bg.jpg")}
.program.news .news-card .card-number{color:var(--accent)}
.program.news .news-card h2, .program.news .news-card h3, .program.news .news-card h4{color:#fff}
.program.news .news-card p{color:#fff}
.program.news .news-card a{border-color:#ffffff80;color:#fff}
.program .card{min-height:320px;padding:28px;background:var(--paper);display:flex;flex-direction:column;justify-content:space-between}
.card-number{color:var(--red);font:italic 16px Georgia,serif}
.card h3{font:normal 30px Georgia,serif;margin:0 0 12px}
.card h4{font:normal 24px Georgia,serif;margin:0 0 12px}
.card p{font-size:13px;line-height:1.7;color:var(--muted)}
.card a{margin-top:25px;padding-top:18px;border-top:1px solid #24222022;font-size:9px;letter-spacing:.14em;text-transform:uppercase}
.bdr-show-hero{position:relative;overflow:hidden;background:#000;color:#fff;padding:0}
.bdr-show-hero .eyebrow,.bdr-show-section .eyebrow{font-size:10px;letter-spacing:.2em;text-transform:uppercase}
.bdr-show-hero .hero-grid{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;width:100%;max-width:none;min-height:max(580px,calc(100vh - 82px));min-height:max(580px,calc(100svh - 82px));margin:0;padding:56px clamp(24px,8vw,120px)}
.bdr-show-hero .hero-grid>div{position:relative;z-index:1;grid-column:2;max-width:660px}
.bdr-show-hero h1{font:400 clamp(48px,7vw,90px)/.98 Georgia,serif;letter-spacing:-.05em;margin:22px 0}
.bdr-show-hero h1 img.desk{display:block;width:min(78%,360px);height:auto}
.bdr-show-hero h1 img.mobile{display:none}
.bdr-show-hero h1 span{display:block;color:var(--accent);font-size:.62em;font-style:italic;margin-top:12px}
.bdr-show-hero p{color:#d1d4d9;line-height:1.7}
.bdr-show-hero figure{position:absolute;inset:0;margin:0}
.bdr-show-hero figure:after{position:absolute;inset:0;background:linear-gradient(90deg,#000c 0%,#0008 42%,#0002 100%),linear-gradient(0deg,#0007,transparent 24%);content:""}
.bdr-show-hero figure picture{display:block;width:100%;height:100%}
.bdr-show-hero figure img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 42%}
.bdr-show-hero figcaption{position:absolute;right:24px;bottom:18px;z-index:1;color:#fff;font-size:11px}
.bdr-show-hero .hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.bdr-show-hero .button{margin:0}
.bdr-show-hero.classico-natale-hero .hero-grid>div{padding:clamp(24px,3vw,40px);border-radius:8px;background:rgb(0 0 0 / 72%)}
.bdr-show-section{padding:76px 0}
.bdr-show-section h2{font:400 clamp(36px,5vw,62px)/1.05 Georgia,serif;letter-spacing:-.04em;margin:12px 0 28px}
.bdr-show-details{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.bdr-show-details article{border-top:1px solid var(--line);padding:18px 0;}
.bdr-show-details h3{font:400 24px Georgia,serif;margin:0 0 10px}
.bdr-show-details p, .bdr-show-details span{color:#5d6268;font-size:13px;line-height:1.7;margin:0}
.bdr-schedule h4.turno{display:none}
.bdr-schedule .turno-b{display:none}
.bdr-schedule-intro,.bdr-schedule-note{color:#5d6268;font-size:13px;line-height:1.7}
.bdr-schedule-level{margin-top:18px;border-top:1px solid #d8d5cf}
.bdr-schedule-level summary{display:flex;align-items:baseline;gap:12px;padding:16px 4px;cursor:pointer}
.bdr-schedule-level summary::marker{color:var(--red)}
.bdr-schedule-level summary::after{content:"+";margin-left:auto;color:var(--red);font:20px/1 Arial,Helvetica,sans-serif}
.bdr-schedule-level[open] summary::after{content:"−"}
.bdr-schedule-level summary:focus-visible{outline:2px solid var(--red);outline-offset:2px}
.bdr-schedule-name{font:400 24px Georgia,serif}
.bdr-schedule-age{color:#77736e;font-size:12px}
.bdr-schedule-level[open] summary{margin-bottom:4px}
.bdr-schedule-level h4{font-size:10px;letter-spacing:.14em;text-transform:uppercase;margin:24px 0 10px}
.bdr-schedule-table-wrap{max-width:100%;overflow-x:auto;border-top:1px solid #d8d5cf;border-bottom:1px solid #d8d5cf}
.bdr-schedule-table-wrap:focus-visible{outline:2px solid var(--red);outline-offset:3px}
.bdr-schedule-table{width:100%;min-width:720px;border-collapse:collapse;text-align:left;font-size:12px;line-height:1.5}
.bdr-schedule-table th,.bdr-schedule-table td{padding:13px 16px;border-bottom:1px solid #e8e5df;vertical-align:top}
.bdr-schedule-table thead th{color:#77736e;font-size:10px;font-weight:400;letter-spacing:.08em;text-transform:uppercase}
.bdr-schedule-table tbody th{width:150px;font-weight:400;white-space:nowrap}
.bdr-schedule-table td span{display:block;margin-bottom:3px;color:#a52b32;font-weight:700;white-space:nowrap}
.bdr-schedule-note{margin-top:28px}
.bdr-photo-gallery .bdr-gallery-placeholder{grid-column:1/-1;aspect-ratio:2.4}
.bdr-contact-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:24px}
.bdr-contact-actions .button{margin:0}
.bdr-contact-phone{font-size:13px;text-decoration:underline;text-underline-offset:3px}
.bdr-package-cta{background:#242220;color:#fff;text-align:center}
.bdr-package-cta h2{color:#c7c7c7}
.bdr-package-cta .eyebrow{color:#e7a39b}
.bdr-package-cta p{max-width:560px;margin:0 auto;color:#d1d4d9;line-height:1.7}
.bdr-trailer{background:#000;color:#fff}
.bdr-trailer h2{color:#c7c7c7}
.trailer-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:38px}
.trailer-head h2{max-width:550px;margin:16px 0 0;color:#c7c7c7}
.bdr-video-frame{aspect-ratio:16/9;background:#171717;width:100vw;max-width:none;margin-left:calc((100% - 100vw)/2)}
.bdr-video-frame iframe{width:100%;height:100%;border:0}
.bdr-video-placeholder{min-height:260px;display:grid;place-content:center;text-align:center;padding:24px}
.bdr-video-placeholder p{color:#d1d4d9}
#trailer .bdr-video-frame { width: min(80vh, 100%); aspect-ratio: 1; margin-inline: auto; }
#trailer .bdr-video-frame iframe { display: block; width: 100%; height: 100%; }
.bdr-visione{position: relative;background-size:cover;background-position:center 42%;background-attachment:fixed;background-repeat:no-repeat;}
.bdr-visione:after{position:absolute;inset:0;background:linear-gradient(90deg,#000c 0%,#0008 42%,#0002 100%),linear-gradient(0deg,#0007,transparent 24%);content:""}
.bdr-stage{position: relative;background-size:cover;background-position:center 42%;background-attachment:fixed;background-repeat:no-repeat;}
.bdr-stage .wrap{position:relative;z-index:2}
.bdr-stage .program-head h2{color:var(--red)}
.bdr-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.bdr-gallery figure{margin:0}
.bdr-gallery img{width:100%;aspect-ratio:1.55;object-fit:cover;background:#eee}
.bdr-gallery.gray img{-webkit-filter:grayscale(1);filter:grayscale(1);filter:gray;}
.bdr-gallery.gray img:hover{-webkit-filter:grayscale(0);filter:grayscale(0);filter:none}
.bdr-gallery figcaption{padding-top:12px;color:#5d6268;font-size:12px;line-height:1.5}
.bdr-gallery figcaption strong{color:var(--ink)}
.bdr-gallery-placeholder{aspect-ratio:1.55;display:grid;place-content:center;text-align:center;padding:20px;background:#f1efeb;color:#5d6268;font-size:12px}
.bdr-convitto-content { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem; align-items: center; }
.bdr-convitto-content img { width: 100%; height: auto; }
.landing-2026 .news-post-modal {width: min(80rem, calc(100vw - 3rem));max-height: min(85vh, 50rem);box-sizing: border-box;margin: auto;padding: clamp(1.5rem, 4vw, 3rem);overflow: auto;border: 0;border-radius: 0.75rem;box-shadow: 0 1rem 3rem rgb(0 0 0 / 25%);}
.landing-2026 .news-post-modal::backdrop {background: rgb(0 0 0 / 65%);}
.landing-2026 .news-post-modal-close {position: sticky;top: 0;float: right;margin: -1rem -1rem 0 1rem;border: 0;background: transparent;font-size: 2rem;line-height: 1;cursor: pointer;color:#000}

@media(max-width:700px){
    .wrap{width:calc(100% - 36px)}.header-inner{height:74px}.nav{gap:0}.nav>a:not(.nav-cta){display:none}
    .site-header .nav > ul{max-width:calc(100vw - 150px);flex-wrap:wrap;justify-content:flex-end;gap:.5rem;font-size:9px}
    .site-header .nav > ul > li{white-space:nowrap}
    .nav .nav-cta{padding:11px;font-size:9px}
    .hero{min-height:650px;height:88vh;background-position:58% center}
    .intro,.program,.quote,.contact{padding:36px 0}.intro-grid{grid-template-columns:1fr;gap:8px}
    .program-head{display:block}
    .landing-2026 .ticket-date{grid-template-columns:32px minmax(0,1fr) auto;gap:8px 14px;padding:20px 0}
    .landing-2026 .ticket-date-info{display:block}
    .landing-2026 .ticket-date p{margin-top:6px}
    .landing-2026 .ticket-date a{grid-column:2;justify-self:start;padding:10px 12px}
    .contact-inner{display:block}.footer-inner{align-items:flex-start;flex-direction:column}.footer-links{flex-wrap:wrap}
    .landing-2026 .wrap{width:calc(100% - 36px)}
    .landing-2026 .wrap.hero-grid{width:100%;padding:0px 0px 20px;}
    .bdr-show-hero .hero-grid{display:block;min-height:0;padding:0}
    .bdr-show-hero .hero-grid>div{padding:20px 24px 20px}
    .bdr-show-hero.classico-natale-hero .hero-grid>div{margin:0 18px;padding:24px;background:rgb(0 0 0 / 78%)}
    .bdr-show-hero figure{position:relative;inset:auto;width:100%}
    .bdr-show-hero figure:after{background:linear-gradient(0deg,#0007,transparent 40%)}
    .bdr-show-hero figure picture{height:auto}
    .bdr-show-hero figure img{height:auto;object-position:center}
    .bdr-show-hero figcaption{position:relative;right:auto;bottom:auto;padding:10px 24px 0;font-size:10px}
    .bdr-show-hero h1{position:relative;top:0px;left:0px;z-index:2;width:100%;margin:0}
    .bdr-show-hero h1 img{display:block;width:min(78%,360px);height:auto}
    .bdr-show-hero h1 img.mobile{display:block;}
    .bdr-show-hero h1 img.desk{display:none;}
    .program.news .cards{grid-template-columns:1fr}
    .program .cards{grid-template-columns:1fr}
    .program .cards .card{grid-column:auto !important;grid-row:auto !important;}
	.program .card{min-height:260px}
    .program.news .cards .card-text {display:none}
    .bdr-show-details,.bdr-gallery{grid-template-columns:1fr}
    .bdr-show-section{padding:56px 0}
    .bdr-convitto-content { grid-template-columns: 1fr; }
    .landing-2026 .news-post-modal {width: calc(100vw - 1.5rem);max-height: 90vh;padding: 1.5rem;border-radius: 0.5rem;}
    .landing-2026 .news-post-modal-close {margin: -0.75rem -0.75rem 0 0.75rem;}
    #trailer .bdr-video-frame { width: 100%; }
}
@media(prefers-reduced-motion:async){html{scroll-behavior:auto}}