:root{color-scheme:dark;--ink:#f5f4f1;--muted:#c0b9bb;--red:#ff404e;--line:#433437;--panel:#1b1517}*{box-sizing:border-box}body{margin:0;background:#100d0e;color:var(--ink);font:17px/1.6 system-ui,sans-serif}a{color:inherit}a:hover{color:var(--red)}a:focus-visible,summary:focus-visible{outline:2px solid var(--red);outline-offset:5px}img{display:block;width:100%;height:auto}header{background:#100d0e;border-bottom:1px solid var(--line)}.wrap{width:min(1120px,calc(100% - 48px));margin:auto}nav{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;padding:12px 0}nav div{display:flex;gap:clamp(12px,3vw,34px);flex-wrap:wrap}nav a{text-decoration:none;font-size:.85rem;font-weight:700}.brand{font-size:1.25rem;letter-spacing:.04em}.brand span,.accent{color:var(--red)}.banner{background:#000}.banner img{max-width:1920px;margin:auto}.hero{padding:clamp(38px,7vw,88px) 0;background:radial-gradient(ellipse at right top,#380f16,transparent 63%)}.tag{color:var(--red);font-size:.76rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;margin:0 0 14px}h1,h2,h3,p{margin-top:0}h1,h2{line-height:1.02;letter-spacing:-.055em}h1{font-size:clamp(2.7rem,7vw,6.1rem);max-width:980px;margin-bottom:23px}h2{font-size:clamp(2rem,4.8vw,3.9rem);margin-bottom:20px}h3{line-height:1.2}p{max-width:70ch;color:var(--muted)}.lead{font-size:clamp(1.05rem,2.2vw,1.35rem)}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}.btn{background:#ff404e;color:#15090b;border:1px solid #ff404e;text-decoration:none;font-weight:800;padding:12px 18px;display:inline-block;border-radius:4px}.btn:hover{background:#ff737d;color:#15090b}.alt{color:var(--ink);background:transparent;border-color:#8e747a}.section{padding:clamp(42px,7vw,82px) 0;border-top:1px solid var(--line)}.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(22px,5vw,70px)}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.cards{grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:var(--panel);border:1px solid var(--line);padding:23px;display:flex;flex-direction:column;align-items:flex-start}.card p{font-size:.94rem}.card a{margin-top:auto}.price{font-size:1.5rem;font-weight:800;color:var(--ink);margin-bottom:8px}.meta{font-size:.85rem}.table-box{overflow:auto;border:1px solid var(--line)}table{width:100%;border-collapse:collapse;text-align:left}th,td{padding:13px 16px;vertical-align:top;border-bottom:1px solid var(--line)}thead{background:#36171d}tbody tr:nth-child(odd){background:var(--panel)}caption{text-align:left;padding:10px 16px;color:var(--muted)}.compare{min-width:750px}.schedule th:first-child{white-space:nowrap}.feature{background:linear-gradient(125deg,#381319,#1b1215);padding:28px;border-left:3px solid var(--red)}footer{border-top:1px solid var(--line);padding:32px 0;font-size:.87rem}footer p{margin-bottom:4px}@media(max-width:850px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.wrap{width:calc(100% - 32px)}.split,.grid,.cards{grid-template-columns:1fr}.schedule th,.schedule td{padding:10px 8px;font-size:.85rem}.banner img{max-width:520px}.card{padding:18px}}

.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:26px 0 14px}
.photo-grid a{display:block;overflow:hidden;background:var(--panel);border-radius:4px}
.photo-grid a:first-child{grid-column:1/-1}
.photo-grid img{aspect-ratio:4/3;object-fit:cover}
.photo-grid a:first-child img{aspect-ratio:auto}
.photo-source{font-size:.84rem}
@media(max-width:600px){.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.photo-grid a:first-child img{aspect-ratio:16/9}}

.motion-hero{position:relative;isolation:isolate;background:#10090b;overflow:hidden}
.hero-motion{position:absolute;inset:0 0 0 35%;overflow:hidden;background:#14080a url('/saut-hero.webp') center/cover no-repeat}
.hero-motion video{display:block;width:100%;height:100%;object-fit:cover}
.hero-motion::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#10090b 0%,rgba(16,9,11,.9) 13%,transparent 66%);pointer-events:none}
.hero-copy{position:relative;pointer-events:none}
.hero-copy a{pointer-events:auto}
.hero-copy h1{max-width:680px}
#hero-toggle{position:absolute;right:16px;bottom:14px;z-index:1;background:#10090b;color:var(--ink);border:1px solid #8e747a;border-radius:4px;padding:7px 10px;cursor:pointer}
#hero-toggle:focus-visible{outline:2px solid var(--red);outline-offset:3px}
.aftermovie{margin:28px 0 36px;max-width:960px}
.aftermovie iframe{display:block;width:100%;height:auto;aspect-ratio:16/9;border:1px solid var(--line);background:#080708;margin-bottom:8px}
@media(max-width:760px){.motion-hero{padding-top:0}.hero-motion{position:relative;inset:auto;aspect-ratio:16/9}.hero-motion::after{background:linear-gradient(0deg,#10090b,transparent 28%)}.hero-copy{padding-top:10px}}

.archive-nav{justify-content:flex-start;min-height:0;margin:18px 0 34px;padding:0;gap:9px}
.archive-nav a{border:1px solid var(--line);padding:7px 13px;border-radius:4px}
.archive-nav a:hover{border-color:var(--red)}
.edition-heading{font-size:clamp(1.55rem,4vw,2.5rem);margin-bottom:12px}
.archive-editions{margin-top:38px;border-top:1px solid var(--line)}
.archive-edition{border-bottom:1px solid var(--line);scroll-margin-top:14px}
.archive-edition summary{cursor:pointer;padding:20px 0;font-size:1.35rem;font-weight:800}
.archive-edition summary span{margin-left:6px}
.archive-edition summary small{margin-left:14px;font-size:.85rem;color:var(--muted);font-weight:500}
.archive-edition summary:hover{color:var(--red)}
.archive-grid{margin-top:0}
.archive-grid a:first-child{grid-column:auto}
.archive-grid a:first-child img{aspect-ratio:4/3}

@media(prefers-reduced-motion:no-preference){
  main .section > .wrap{transition:opacity .55s ease,transform .55s ease}
  .reveal-pending:not(:focus-within){opacity:0;transform:translateY(20px)}
  .hero-copy{animation:hero-enter .65s ease-out both}
  .motion-hero .hero-motion video{transform:translateY(var(--parallax-offset,0px)) scale(1.08)}
  .btn,.archive-nav a{transition:background-color .2s ease,border-color .2s ease,color .2s ease}
  .photo-grid img{transition:transform .28s ease}
  .photo-grid a:focus-visible img{transform:scale(1.035)}
  .archive-edition[open] .archive-grid{animation:hero-enter .35s ease-out both}
}
@media(prefers-reduced-motion:no-preference) and (hover:hover){
  .photo-grid a:hover img{transform:scale(1.035)}
}
@keyframes hero-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}

.hero-details{display:flex;flex-wrap:wrap;align-items:stretch;gap:14px 26px;margin:22px 0 0}
.hero-details > div{border-left:2px solid var(--red);padding:0 0 0 12px}
.hero-details dt{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:var(--red)}
.hero-details dd{margin:2px 0 0;font-size:1rem;line-height:1.3;font-weight:750}
.hero-details dd span{display:block;margin-top:4px;color:var(--muted);font-size:.88rem;font-weight:500}

.sponsor-hero{position:relative;isolation:isolate;overflow:hidden;background:#10090b}
.sponsor-video{position:absolute;inset:0;overflow:hidden;background:#10090b url('/galeria-saut-x3/plateia.webp') center/cover no-repeat;container-type:size}
.sponsor-video iframe{border:0;width:max(100cqw,177.78cqh);height:max(100cqh,56.25cqw);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none}
.sponsor-video::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,9,11,.96),rgba(16,9,11,.84) 55%,rgba(16,9,11,.58))}
.sponsor-copy,.sponsor-media{position:relative}
.sponsor-media{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:18px;font-size:.82rem}
.sponsor-media button{color:var(--ink);background:#10090b;border:1px solid #8e747a;border-radius:4px;padding:5px 9px;cursor:pointer}
.audience-number{margin:0;color:var(--ink);font-size:clamp(3rem,7vw,5rem);font-weight:800;line-height:1.04}
.audience-segments{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:24px 0;padding:0}
.audience-segments li{padding:7px 12px;border:1px solid var(--line);border-radius:4px;color:var(--muted)}
.footer-signature,.footer-partners{display:flex;align-items:center;flex-wrap:wrap;gap:20px 28px}
.footer-signature{justify-content:space-between}
.footer-saut{width:165px}
.footer-partners img:first-child{width:230px}
.footer-partners img:last-child{width:125px}

#evento,#publico,.stage-history{position:relative;isolation:isolate;overflow:hidden;background:#130c10}
#evento::before,#publico::before,.stage-history::before{content:"";position:absolute;z-index:-1;inset:0;background-position:center;background-size:cover}
#evento::before{background-image:linear-gradient(90deg,rgba(16,10,13,.97),rgba(16,10,13,.77)),url('/edicoes/saut-xii/13.webp')}
#publico::before{background-image:linear-gradient(90deg,rgba(16,10,13,.96),rgba(16,10,13,.79)),url('/edicoes/saut-xii/11.webp')}
.stage-history::before{background-image:linear-gradient(180deg,rgba(16,10,13,.81),#130c10 92%),url('/galeria-saut-x3/palco.webp');background-position:center top}
.stage-portraits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:28px 0 19px}
.stage-portraits figure{position:relative;overflow:hidden;isolation:isolate;min-height:265px;aspect-ratio:4/4.4;margin:0;border:1px solid #6d464d;border-radius:5px;background:var(--panel)}
.stage-portraits figure::after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(12,7,10,.96));pointer-events:none}
.stage-portraits img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 28%}
.stage-portraits figcaption{position:absolute;z-index:1;bottom:0;inset-inline:0;padding:16px}
.stage-portraits figcaption span{display:block;color:#ff929c;font-size:.73rem;text-transform:uppercase;letter-spacing:.13em;font-weight:800}
.stage-portraits figcaption strong{font-size:clamp(1.12rem,2.6vw,1.65rem)}
.stage-names{margin-bottom:12px}
@media(max-width:630px){.stage-portraits{grid-template-columns:1fr}.stage-portraits figure{min-height:0;aspect-ratio:5/4}}
@media(prefers-reduced-motion:no-preference) and (hover:hover){
  .stage-portraits img{transition:transform .65s ease,filter .4s ease;filter:saturate(.8)}
  .stage-portraits figure:hover img{transform:scale(1.065);filter:saturate(1)}
}

/* Editorial layout shared by the event and sponsorship pages. */
:root {
  --ink: #f7f4f4;
  --muted: #bcb4b8;
  --line: #383134;
  --panel: #121013;
}
body, header { background: #090809; }
.wrap { width: min(1200px, calc(100% - 80px)); }
header nav { min-height: 66px; }
header nav a:not(.brand) { color: var(--muted); font-weight: 550; }
header nav a:hover, header nav a[aria-current] { color: var(--ink); }
h1, h2 { font-weight: 560; letter-spacing: -.055em; text-wrap: balance; }
h1 { font-size: clamp(2.65rem, 6.1vw, 5.65rem); }
h2 { font-size: clamp(2rem, 4.25vw, 3.6rem); }
.tag { letter-spacing: .16em; font-weight: 650; }
.section { padding-block: clamp(56px, 8.5vw, 122px); }
.motion-hero, .sponsor-hero {
  min-height: clamp(520px, 46vw, 700px);
  align-content: center;
  background-color: #090809;
}
.hero-copy h1 { max-width: 13ch; }
.sponsor-copy h1 { max-width: 15ch; }
.hero-motion::after {
  background: linear-gradient(90deg, #090809 0%, rgba(9,8,9,.76) 20%, transparent 62%),
              linear-gradient(0deg, #090809, transparent 26%);
}
.sponsor-video::after {
  background: linear-gradient(90deg, rgba(9,8,9,.96), rgba(9,8,9,.60) 62%, rgba(9,8,9,.31)),
              linear-gradient(0deg, #090809, transparent 36%);
}
.hero-details > div { border-left-color: #7b393f; }
.btn { border-radius: 2px; font-size: .88rem; font-weight: 700; }
.alt { border-color: #85787d; }
.card {
  background: transparent;
  border-width: 1px 0 0;
  padding: 19px 16px 16px 0;
}
.card h3 { font-weight: 650; }
.feature { align-self: start; background: linear-gradient(125deg, #251317, #120e11 70%); }
#evento, #publico, .stage-history { background: #090809; }
#evento::before, #publico::before, .stage-history::before {
  mask-image: linear-gradient(transparent, black 15%, black 65%, transparent);
}
.stage-portraits { gap: clamp(9px, 2vw, 26px); }
.stage-portraits figure { border-radius: 0; border-color: var(--line); }
.stage-portraits figcaption { padding: clamp(12px, 2vw, 24px); }
.stage-portraits figcaption strong { font-weight: 600; }
.aftermovie { max-width: none; margin-block: 36px 44px; }
.aftermovie h3 { padding-top: 12px; border-top: 1px solid var(--line); font-weight: 600; }
.photo-grid a, .archive-nav a { border-radius: 0; }
thead { background: #201417; }
tbody tr:nth-child(odd) { background: #100e10; }
footer {
  padding-block: clamp(44px, 6vw, 86px);
  background: radial-gradient(ellipse at 22% 120%, #49151f, transparent 64%), #090809;
}
@media(max-width:760px) {
  .wrap { width: calc(100% - 36px); }
  .motion-hero, .sponsor-hero { min-height: 0; }
  .motion-hero .hero-motion::after { background: linear-gradient(0deg, #090809, transparent 32%); }
  .hero-copy h1 { max-width: 16ch; }
  .sponsor-video::after { background: linear-gradient(90deg, rgba(9,8,9,.91), rgba(9,8,9,.63)), linear-gradient(0deg,#090809,transparent 40%); }
}

.portrait-group-heading{margin:38px 0 0;font-weight:600}
.external-portraits{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:15px}
.external-portraits figure{min-height:225px;aspect-ratio:4/5}
.portrait-credit{display:block;color:var(--ink);font-size:.75rem;margin-top:6px}
.external-albums{margin-top:36px}
.external-albums h3{font-weight:600}
.external-albums ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:0;list-style:none}
.external-albums a{display:block;border-top:1px solid var(--line);padding-top:10px;text-decoration:none}
.external-albums span{display:block;color:var(--muted);font-size:.83rem}
@media(max-width:820px){.external-portraits,.external-albums ul{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:460px){.external-portraits figure{min-height:170px}.external-portraits figcaption strong{font-size:1rem}}

.archive-nav {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(84px, 1fr));
  gap: 8px;
}
.archive-nav a {
  display: grid;
  min-height: 44px;
  place-items: center;
  text-align: center;
  padding: 7px 5px;
}
.archive-nav a[aria-selected="true"] {
  border-color: var(--red);
  background: var(--red);
  color: #16090a;
}
.archive-panel { scroll-margin-top: 20px; }
.archive-panel:focus-visible { outline: 2px solid var(--red); outline-offset: 4px; }
.archive-editions { border: 0; margin: 0; }
.footer-banner { flex: 0 0 100%; display: block; }
.footer-banner img { width: 100%; height: auto; }
@media (max-width: 760px) {
  .split > * { min-width: 0; }
  header nav { gap: 8px 16px; }
  header nav > div { gap: 0 12px; }
  header nav a { display: inline-flex; align-items: center; min-height: 44px; }
  .footer-partners { gap: 16px; }
  .footer-partners img:first-child { width: min(185px, 53vw); }
  .footer-partners img:last-child { width: min(110px, 32vw); }
  .table-box { max-width: 100%; }
}
@media (max-width: 420px) {
  .hero .actions > .btn { text-align: center; flex: 1 1 145px; }
  .stage-portraits.external-portraits { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
