@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--navy:#152a40;--red:#a53c47;--cream:#f6f2e9;--ink:#24364a;--muted:#6c7377;--line:#d8d8d0;--gold:#c9ac75}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--cream);font:14px 'DM Sans',sans-serif}button,input,textarea{font:inherit}button,a,input,textarea{touch-action:manipulation}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #a53c47;outline-offset:5px}button:disabled{opacity:.45;cursor:wait}[hidden]{display:none!important}.flag-background{position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(100deg,#f6f2e9ed,#f6f2e9d6),url('/flag.svg') 55% 40%/cover;opacity:.55}.site-header{max-width:1480px;margin:auto;padding:28px 5.2%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;gap:13px;align-items:center}.brand-mark{background:var(--navy);color:var(--cream);width:47px;height:49px;display:grid;place-items:center;font:36px Georgia,serif;position:relative;border-radius:2px}.brand-mark span{position:absolute;font-size:10px;top:4px;right:4px;color:var(--gold)}.brand b{font-size:19px;letter-spacing:-.6px}.brand small{display:block;font-size:8px;letter-spacing:2.5px;margin-top:5px}.header-right{display:flex;align-items:center;gap:35px}.location{font-size:9px;letter-spacing:1.8px;color:var(--muted)}.admin-link{font-size:11px;display:flex;gap:8px;align-items:center;padding:10px 14px;border:1px solid var(--line);border-radius:4px;background:#f6f2e999}.admin-link svg{width:14px;height:14px}.admin-link:hover{border-color:var(--navy)}.page{max-width:1310px;margin:auto;padding:0 5%}.intro{display:flex;justify-content:space-between;gap:40px;align-items:center;padding:52px 0 38px}.eyebrow{font-size:9px;font-weight:700;letter-spacing:2px;display:flex;align-items:center;gap:10px;margin:0 0 18px}.eyebrow>span{width:24px;height:2px;background:var(--red)}h1{font:clamp(40px,4.6vw,68px)/1.06 'Libre Caslon Display',Georgia,serif;letter-spacing:-1.4px;margin:0}h1 em{font-weight:400;color:var(--red);font-style:normal}.intro-aside{max-width:270px;border-left:1px solid #bfc3c2;padding-left:30px}.small-star{color:var(--red);font-size:23px}.intro-aside p{font-size:18px;line-height:1.5;margin:9px 0}.intro-aside>span:last-child{color:var(--muted);font-size:10px}.section-heading{display:flex;justify-content:space-between;align-items:center;font-size:8px;font-weight:700;letter-spacing:1.6px;margin-bottom:13px}.section-heading>div{display:flex;align-items:center;gap:8px}.section-heading>span{font-size:8px;color:var(--muted);font-weight:400}.live-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--red)}.player{position:relative;background:var(--navy);aspect-ratio:16/9;box-shadow:0 18px 40px #152a4029;overflow:hidden;border:1px solid #304558;border-radius:5px}.stage{position:absolute;inset:0;container-type:inline-size}.slide{height:100%;position:relative;overflow:hidden;animation:arrive .65s ease both}.service-slide{color:var(--cream);padding:6.5% 7%;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(90deg,#14293ff5 20%,#14293f9c 100%),url('/flag.svg') center/cover}.service-slide:before{content:'';position:absolute;inset:5%;border:1px solid #f6f2e92b;pointer-events:none}.slide-kicker{color:var(--gold);font-size:1.1cqw;letter-spacing:.24em;font-weight:600;margin:0 0 2.5%}.service-slide h2{font:6cqw/1.05 'Libre Caslon Display',Georgia,serif;font-weight:400;max-width:75%;margin:0 0 3%;letter-spacing:-.02em}.service-slide h2 em{color:var(--gold);font-style:normal}.service-slide ul{list-style:none;padding:0;margin:0;display:grid;gap:1cqw;max-width:83%}.service-slide li{font-size:2cqw;display:flex;align-items:center;gap:1.2cqw}.service-slide li:before{content:'';height:1px;width:2cqw;background:var(--gold)}.slide-seal{position:absolute;right:9%;top:29%;font:13cqw Georgia,serif;color:#f6f2e91a;transform:rotate(-12deg)}.slide-footnote{position:absolute;bottom:12%;left:7%;font-size:.85cqw;letter-spacing:.2em;color:#f6f2e98f}.slide-media{width:100%;height:100%;object-fit:contain;display:block;background:#0d1b2a}.player-toolbar{position:absolute;bottom:0;left:0;right:0;height:10%;min-height:40px;background:linear-gradient(0deg,#0b172aee,#0b172a99);display:flex;align-items:center;justify-content:space-between;padding:0 3%;color:#f6f2e9}.slide-meta{display:flex;gap:13px;align-items:center;font-size:9px}.slide-meta>span:first-child{font-variant-numeric:tabular-nums;font-size:10px;color:var(--gold)}.toolbar-line{height:12px;width:1px;background:#ffffff40}.play-controls{display:flex;align-items:center;gap:10px}.play-controls button{border:none;background:transparent;color:inherit;font:20px Georgia,serif;min-width:32px;min-height:32px;border-radius:3px}.play-controls button:hover{background:#ffffff1c}.play-controls svg{width:16px;height:16px;vertical-align:middle}.below-player{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:19px 0 0;font-size:10px;color:var(--muted)}.dots{display:flex;gap:4px;max-width:40%;overflow:auto}.dots button{border:0;padding:8px 3px;background:none;min-width:14px}.dots button:after{content:'';display:block;width:5px;height:5px;border-radius:100%;background:#c2c5c4}.dots button.active:after{width:19px;border-radius:4px;background:var(--red)}.tv-link{font-size:10px;color:var(--ink)}.connection-status{font-size:11px;color:var(--red);margin:8px 0}.contact-strip{display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:1px solid var(--line);padding:32px 0;margin-top:32px}.contact-title{display:flex;align-items:center;gap:20px}.outlined-star{font-size:47px;color:var(--red)}.contact-title .eyebrow{font-size:8px;margin-bottom:9px}.contact-title h2{font:31px 'Libre Caslon Display',Georgia,serif;margin:0}.contact-button{display:flex;align-items:center;justify-content:space-between;gap:40px;background:var(--navy);color:var(--cream);padding:15px 21px;border-radius:3px;font-size:9px}.contact-button b{display:block;font-size:19px;margin-top:3px;letter-spacing:.5px}.contact-button>span:last-child{font-size:25px;color:var(--gold)}.site-footer{max-width:1480px;margin:auto;padding:23px 5.2%;border-top:1px solid var(--line);display:flex;gap:20px;justify-content:space-between;font-size:8px;color:var(--muted)}.flag-chip{font-size:7px;letter-spacing:1px;display:flex;align-items:center;gap:8px}.flag-chip i{width:21px;height:13px;background:url('/flag.svg') center/cover}body.tv .site-header,body.tv .intro,body.tv .section-heading,body.tv .below-player,body.tv .contact-strip,body.tv .site-footer,body.tv .connection-status{display:none}body.tv .page{max-width:none;padding:0}body.tv .player{position:fixed;inset:0;aspect-ratio:auto;border:0;border-radius:0}.player:fullscreen{border:0;border-radius:0;width:100vw;height:100vh;aspect-ratio:auto}.player:fullscreen .stage,body.tv .stage{container-type:size}.player:fullscreen .service-slide h2,body.tv .service-slide h2{font-size:min(6cqw,12cqh)}.player:fullscreen .player-toolbar,body.tv .player-toolbar{opacity:0;transition:opacity .2s}.player:fullscreen:hover .player-toolbar,body.tv .player:hover .player-toolbar,.player:fullscreen:focus-within .player-toolbar,body.tv .player:focus-within .player-toolbar{opacity:1}@keyframes arrive{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
/* Administration */
.admin-page{max-width:1100px;margin:0 auto;padding:45px 5% 70px}.admin-page h1{font-size:46px}.admin-page .lead{color:var(--muted);line-height:1.6;margin-bottom:30px}.login-card{max-width:430px;margin:8vh auto;padding:35px;background:#fffdf8;border:1px solid var(--line);border-top:3px solid var(--red);box-shadow:0 10px 40px #152a400b}.login-card h1{font-size:38px;margin:12px 0}.login-card p{color:var(--muted);line-height:1.7;font-size:12px}.field{display:block;font-size:11px;font-weight:600;margin:17px 0}.field input,.field textarea{display:block;width:100%;margin-top:8px;padding:12px;border:1px solid #c6cbc9;border-radius:3px;background:#fffefb;color:var(--ink)}.field textarea{resize:vertical;min-height:88px}.field input:focus,.field textarea:focus{outline:2px solid var(--gold);outline-offset:1px}.primary,.secondary,.danger{border:1px solid var(--navy);border-radius:3px;background:var(--navy);color:white;padding:11px 17px;font-size:11px}.primary:hover{background:#27445f}.secondary{background:transparent;color:var(--navy);border-color:#c3c9ca}.danger{background:transparent;color:var(--red);border-color:#ceafb2}.login-card .primary{width:100%;margin-top:5px}.message{font-size:12px;line-height:1.6;color:var(--red);min-height:18px}.message.success{color:#38624b}.admin-topline{display:flex;justify-content:space-between;align-items:center;gap:18px}.admin-topline a{font-size:11px}.admin-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(240px,1fr);gap:28px;margin-top:30px;align-items:start}.admin-section{background:#fffdf8;border:1px solid var(--line);border-radius:4px;padding:24px;margin-bottom:24px}.admin-section h2{font:27px 'Libre Caslon Display',Georgia,serif;margin:0 0 9px}.admin-section p{font-size:11px;color:var(--muted);line-height:1.7}.upload-zone{display:block;border:1px dashed #95a4ad;background:#f4f5f0;padding:28px 16px;text-align:center;cursor:pointer}.upload-zone b{display:block;font-size:12px;margin-bottom:8px}.upload-zone span{font-size:10px;color:var(--muted)}.upload-zone input{display:block;font-size:11px;margin:18px auto 0;max-width:100%}progress{width:100%;height:5px;accent-color:var(--red);margin-top:17px}.media-row{display:grid;grid-template-columns:68px 1fr;gap:13px;padding:18px 0;border-top:1px solid var(--line)}.media-row img,.media-row video{width:68px;height:60px;object-fit:contain;background:var(--navy);border-radius:2px}.media-row .field{margin:0 0 9px}.media-row .field input{margin-top:4px;padding:7px}.row-controls{display:flex;gap:6px;flex-wrap:wrap}.row-controls button{padding:7px 9px;font-size:10px}.row-controls input{width:48px;padding:5px;border:1px solid var(--line)}.row-controls label{font-size:10px}.text-service{border-top:1px solid var(--line);padding-top:3px;margin-top:20px}.empty-list{border:1px dashed var(--line);text-align:center;padding:22px}.session-actions{display:flex;gap:15px;align-items:center}
@media(min-width:1600px){.page{max-width:1480px}.intro{padding-top:55px}}@media(max-width:700px){.location,.site-footer>span:nth-child(2){display:none}.site-header{padding:20px 5%}.brand b{font-size:16px}.brand-mark{width:39px;height:42px;font-size:29px}.header-right{gap:0}.intro{padding:35px 0 26px;gap:20px}.intro-aside{max-width:180px;padding-left:18px}.intro-aside p{font-size:13px}.intro-aside>span:last-child{font-size:8px}.intro .eyebrow{font-size:7px;letter-spacing:1.2px}h1{font-size:40px}.contact-strip{margin-top:24px}.contact-title{gap:12px}.contact-title h2{font-size:24px}.outlined-star{font-size:35px}.contact-button{padding:13px;gap:18px}.contact-button b{font-size:15px}.admin-layout{grid-template-columns:1fr}.admin-page{padding-top:30px}.admin-topline{align-items:flex-start}.session-actions{flex-direction:column;align-items:flex-end}.admin-page h1{font-size:37px}.player-toolbar{min-height:33px}.slide-meta{font-size:8px}.play-controls{gap:0}.play-controls button{min-width:30px;min-height:30px}.service-slide{padding-bottom:12%}.slide-footnote{bottom:15%}.below-player{font-size:8px}}@media(max-width:450px){.intro-aside{display:none}.intro{padding-top:30px}.section-heading{letter-spacing:1px;font-size:7px}.section-heading>span{font-size:6px}.below-player>span{display:none}.below-player{justify-content:space-between}.contact-strip{align-items:flex-start;flex-direction:column;padding:25px 0}.contact-button{width:100%}.site-footer{line-height:1.7}.site-footer>span{max-width:52%}.flag-chip{font-size:6px}.player-toolbar{height:32px}.slide-meta{gap:7px;max-width:55%}#slide-title{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.service-slide h2{font-size:7cqw}.service-slide li{font-size:2.5cqw}.slide-kicker{font-size:1.5cqw}.slide-footnote{font-size:1.3cqw;bottom:19%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
.stage{bottom:max(10%,40px)}.player:fullscreen .stage,body.tv .stage{bottom:0}@media(max-width:700px){.stage{bottom:max(10%,33px)}}@media(max-width:450px){.stage{bottom:32px}}
.slide-qr{position:absolute;right:9%;top:34%;width:15%;height:auto;border:8px solid #f6f2e9;border-radius:4px}.service-slide:has(.slide-qr) h2,.service-slide:has(.slide-qr) ul{max-width:65%}
/* The public presentation occupies the entire screen, without page sections or navigation. */
body.display-page{height:100vh;height:100dvh;overflow:hidden;background:var(--navy)}
.display-page .player{position:fixed;inset:0;width:100%;height:100%;aspect-ratio:auto;border:0;border-radius:0;box-shadow:none}
.display-page .stage{inset:0;container-type:size}
.display-page .slide{animation:none}
.display-page .service-slide{padding:7% 8%;padding-bottom:10%}
.display-page .service-slide h2{font-size:min(7cqw,13cqh);max-width:90%}
.display-page .service-slide li{font-size:min(3.5cqw,6cqh)}
.display-page .slide-kicker{font-size:min(1.4cqw,2.5cqh);margin-bottom:3%}
.display-page .slide-footnote{left:8%;bottom:7%;font-size:min(1.1cqw,2cqh);max-width:75%}
.display-page video.slide-media{object-fit:cover}
.display-page img.slide-media{object-fit:contain}
.display-admin,.display-pause{position:absolute;z-index:2;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;border:1px solid #f6f2e94d;background:#14293fbf;color:var(--cream);box-shadow:0 2px 12px #0b172a22;backdrop-filter:blur(8px)}
.display-admin{top:max(18px,env(safe-area-inset-top));right:max(18px,env(safe-area-inset-right))}
.display-admin svg{width:19px;height:19px}
.display-pause{bottom:max(18px,env(safe-area-inset-bottom));right:max(18px,env(safe-area-inset-right));font-size:17px;line-height:1}
.display-admin:hover,.display-pause:hover{background:var(--navy);border-color:var(--gold)}
.display-status{position:absolute;z-index:2;bottom:18px;left:18px;max-width:calc(100% - 95px);margin:0;padding:8px 12px;background:#14293fcc;color:var(--cream);font-size:11px;border-radius:3px}
/* Centered service slides: no numbering, larger and more legible content. */
.service-slide{align-items:center;justify-content:center;text-align:center;background:radial-gradient(ellipse at center,#14293fe6 0%,#14293ff7 70%),url('/flag.svg') center/cover}
.service-slide .slide-kicker{display:flex;align-items:center;justify-content:center;gap:1.4em;text-transform:uppercase}
.service-slide .slide-kicker:before,.service-slide .slide-kicker:after{content:'';width:4em;height:1px;background:var(--gold)}
.service-slide h2{margin-left:auto;margin-right:auto;text-wrap:balance}
.service-slide h2:after{content:'';display:block;width:12cqw;height:2px;margin:3cqh auto 0;background:var(--red)}
.service-slide ul{display:flex;flex-wrap:wrap;justify-content:center;gap:1.6cqw;max-width:88%;margin:0 auto}
.service-slide li{justify-content:center;font-weight:600;padding:1.1em 1.6em;border:1px solid #c9ac7566;border-radius:6px;background:#f6f2e912;box-shadow:0 8px 24px #0b172a40;line-height:1.2}
.service-slide li:before{content:'✓';width:auto;height:auto;background:none;color:var(--gold);font-weight:700}
.service-slide .slide-footnote{left:0;right:0;margin:auto;text-align:center}
.display-page .service-slide{padding:7% 6%}
.display-page .service-slide h2{font-size:min(7.5cqw,14cqh);margin-bottom:6cqh}
.display-page .service-slide li{font-size:min(3cqw,5.5cqh)}
.display-page .service-slide .slide-kicker{font-size:min(1.8cqw,3cqh);margin-bottom:4cqh}
.display-page .service-slide .slide-footnote{left:0;max-width:none;letter-spacing:.3em}
/* TV format: the presentation is always a horizontal 16:9 frame, centered and letterboxed on any screen. */
body.display-page,.display-page .player{background:#000}
.display-page .stage{inset:0;margin:auto;width:min(100vw,177.778vh);height:min(100vh,56.25vw);width:min(100dvw,177.778dvh);height:min(100dvh,56.25dvw);background:var(--navy);overflow:hidden}
.display-page .service-slide ul{flex-direction:row;flex-wrap:wrap}
/* Nacional's blue and gold identity, with a more visible flag. */
.display-page{--brand-blue:#063d88;--brand-gold:#efbd39}
.display-page .service-slide{background:linear-gradient(90deg,#10264180,#102641a6),url('/flag.svg') center/cover;padding:4cqh 6cqw 12cqh;gap:2cqh}
.display-page .service-slide:before{inset:3%;border-color:#efbd3966}
.display-page .slide-logo{display:block;flex-shrink:0;width:34cqw;height:13cqh;object-fit:contain;background:#050505;border:1px solid #efbd3966;border-radius:6px;box-shadow:0 6px 24px #10264140}
.display-page .service-slide .slide-kicker{color:#fff4d6;font-size:min(1.35cqw,2.4cqh);margin:0;text-shadow:0 2px 5px #102641}
.display-page .service-slide .slide-kicker:before,.display-page .service-slide .slide-kicker:after{background:var(--brand-gold)}
.display-page .service-slide h2{color:var(--brand-gold);font-size:min(6.6cqw,11.5cqh);margin:0 0 1cqh;text-shadow:0 2px 8px #102641,0 1px 2px #102641}
.display-page .service-slide h2:after{background:var(--brand-gold);margin:2cqh auto 0}
.display-page .service-slide ul{max-width:94%;gap:1.2cqw}
.display-page .service-slide li{color:#fff9ea;background:#06336aeb;border-color:#efbd39a6;font-size:min(2.7cqw,4.8cqh);padding:.75em 1.1em;box-shadow:0 6px 20px #10264140}
.display-page .service-slide li:before{color:var(--brand-gold)}
.display-page .service-slide .slide-footnote{left:50%;right:auto;bottom:4.5%;transform:translateX(-50%);width:max-content;max-width:86%;padding:.7em 1.7em;border-bottom:3px solid var(--brand-gold);border-radius:4px;background:#fff8e9f5;color:var(--brand-blue);font-size:min(1.6cqw,2.8cqh);font-weight:700;letter-spacing:.14em;line-height:1.4;overflow-wrap:anywhere}
/* Keep the transparent logo on its translucent white backing. */
.display-page .slide-logo{background:#ffffffa6;border-color:#ffffffb3;box-shadow:0 6px 24px #152a401a}
