/* Shared presentation; keeps existing grids, routing and event data intact. */
:root{--bg:#f6f1e7;--ink:#271d18;--terr:#c1452f;--muted:#6a5d52;--line:#e7ddcc;--card:#fffdf8;--soft:#f3ebdd;--night:#201a2e;--gold:#e7b65c}
html{color-scheme:light;-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:Mulish,system-ui,-apple-system,sans-serif;line-height:1.6}*,*::before,*::after{box-sizing:border-box}
h1,h2,h3,h4,.brand{font-family:Fraunces,Georgia,serif;letter-spacing:-.025em}h1{line-height:1.1}h2,h3{line-height:1.25}p{overflow-wrap:break-word}a{color:var(--terr)}
header.hero,.hero,header.top{background:var(--night);color:var(--card)}header.hero{padding:32px max(20px,calc((100vw - 1080px)/2));}header.hero h1{color:var(--card);font-size:clamp(30px,5vw,52px);margin:8px 0 12px}header.hero>p:first-child{color:var(--gold);text-transform:uppercase;letter-spacing:.15em;font-size:13px;font-weight:800}header.hero>p:last-child{max-width:720px;color:#e8dfd2}
.top .brand{color:var(--card)}.top .brand small{color:var(--gold)}.bar{background:var(--bg);border-color:var(--line)}
.portal-document header.site{background:var(--night);color:var(--card);border:0;border-radius:0;padding:20px;max-width:none;margin:0}.portal-document header.site a{color:var(--card)}.portal-document header.site nav a{color:var(--gold)}.portal-document .box{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:18px}.portal-document h1,.portal-document h2,.portal-document h3{color:var(--ink)}.portal-document header.hero h1{color:var(--card)}.portal-document footer.site{padding:20px;border:0;color:#ded4e6}.portal-document footer.site a{color:var(--gold)}.portal-document th{background:var(--soft);color:var(--ink)}.portal-document td,.portal-document th{border-color:var(--line)}
.card,.sheet,.pitem,.detail,.tsec{background:var(--card);border-color:var(--line);border-radius:22px}.tsec{padding:20px}.card,.pitem{box-shadow:0 2px 6px #271d1808}.sheet,.detail{box-shadow:0 4px 18px #271d180d}.tnote{background:var(--soft);color:var(--muted);border:1px solid var(--line);border-radius:16px;padding:14px 16px}
.btn,.chip,.tbtn,button,input,select,textarea{font-family:Mulish,system-ui,sans-serif}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:11px 16px;border-radius:999px;font-weight:800;text-decoration:none;line-height:1.35}.btn.p{background:var(--terr);color:white}.btn.g{background:var(--soft);color:var(--ink)}.chip{border-color:var(--line)}.acts,.qacts{display:flex;gap:10px;flex-wrap:wrap}.acts a{max-width:100%}select,input,textarea{color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:12px;min-height:44px;padding:10px 12px;max-width:100%}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.portal-document main{max-width:900px;margin:24px auto;padding:0 20px}.portal-document section{margin:20px 0}.portal-document main>h2{margin-top:30px}.portal-document footer,footer{background:var(--night);color:#ded4e6}footer a{color:var(--gold)}
@media(max-width:600px){header.hero{padding:28px 20px}.portal-document main{margin:20px auto;padding:0 16px}.tsec{padding:18px}.sheet .body,.detail .body{padding:18px}.acts .btn,.qacts .btn{flex:1 1 145px}.top .brand{font-size:19px}.top .brand small{font-size:10px}h2{font-size:25px}h3{font-size:21px}}

@media(max-width:600px){header.hero h1{font-size:30px}.portal-document h1{font-size:30px}.card,.sheet,.pitem,.detail,.tsec{border-radius:22px}}
.portal-document dd{margin:0 0 14px;overflow-wrap:anywhere}.portal-document dt{margin-top:8px}.portal-document [data-back-profile],.portal-document [data-back-event]{white-space:normal}

:root[data-portal-theme="dark"]{--bg:#17131f;--ink:#f4edf5;--card:#262030;--soft:#352d40;--line:#51465d;--muted:#d3c7da;--terr:#e98069}html[data-large-text="true"] p,html[data-large-text="true"] li,html[data-large-text="true"] dd,html[data-large-text="true"] td{font-size:18px!important;line-height:1.75!important}html[data-portal-theme="dark"] .portal-document h1,html[data-portal-theme="dark"] .portal-document h2,html[data-portal-theme="dark"] .portal-document h3{color:var(--ink)}html[data-portal-theme="dark"] .portal-document header.hero h1{color:#fffdf8}html[data-portal-theme="dark"] .k td,html[data-portal-theme="dark"] .faq .a,html[data-portal-theme="dark"] .qa .a{color:var(--ink)}dialog{max-width:min(92vw,480px);background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:22px;padding:24px}dialog::backdrop{background:#201a2e88}.portal-preferences{margin:12px 0}html[data-portal-theme="dark"] .tsec,html[data-portal-theme="dark"] .sheet,html[data-portal-theme="dark"] .card{background:var(--card)}

/* Filter header: independent rows prevent navigation and utility overlap. */
.bar .inner{box-sizing:border-box;min-width:0;max-width:100%;}
.bar .segwrap{display:grid;grid-template-columns:minmax(0,1fr) repeat(3,44px);align-items:center;gap:8px;min-width:0;margin-bottom:10px;}
.bar .segwrap .seg{width:100%;min-width:0;max-width:100%;margin:0;display:flex;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;}
.bar .segwrap .seg>button{flex:0 0 auto;white-space:nowrap;min-height:44px;}
.bar .segwrap>.langtog{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:44px;height:44px;min-width:44px;padding:8px;margin:0;}
.bar .segwrap>.langtog svg{width:19px;height:19px;flex-shrink:0;}
.bar .row{display:flex;flex-wrap:nowrap;align-items:center;gap:8px;min-width:0;}
.bar .row>.chips{display:flex;flex:1 1 0;min-width:0;flex-wrap:nowrap;overflow-x:auto;gap:6px;}
.bar .row>.chips>.chip{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;white-space:nowrap;gap:5px;min-height:44px;line-height:1.25;}
.bar .row>.filtros{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;gap:5px;min-height:44px;line-height:1.25;}
.filter-head{flex-wrap:nowrap;min-width:0;}.filter-head h2{line-height:1.2;}.filter-head>button{flex:0 0 44px;}
@media(max-width:600px){
 .bar .segwrap{grid-template-columns:minmax(0,1fr) repeat(3,44px);gap:6px;}
 .bar .segwrap .seg{grid-column:1/-1;}
 .bar .segwrap>.langtog:nth-child(2){grid-column:2;}
 .bar .segwrap .seg>button{padding:9px 13px;font-size:13px;}
 .bar .row>.chips>.chip,.bar .row>.filtros{padding:9px 10px;font-size:12px;}
 .bar .panel{box-sizing:border-box;max-width:100%;}.bar .panel input,.bar .panel select{min-width:0;max-width:100%;}
}
