html[data-lang="en"] .l-fr,html[data-lang="en"] .l-es,html[data-lang="fr"] .l-en,html[data-lang="fr"] .l-es,html[data-lang="es"] .l-en,html[data-lang="es"] .l-fr{display:none}
.pub-top{position:sticky;top:0;z-index:30;background:rgba(30,26,52,.96);color:#fff;border-bottom:1px solid rgba(212,184,150,.18)}
.pub-top-in{display:flex;align-items:center;gap:20px;height:64px}
.pub-top .brand img{height:46px;width:auto}
.pub-nav{display:flex;gap:22px;margin-left:auto}
.pub-nav a{font:500 11px var(--sans);letter-spacing:.2em;text-transform:uppercase;text-decoration:none;opacity:.85}
.pub-nav a:hover{color:var(--sand);opacity:1}
.pub-hero{position:relative;background:var(--marine);color:#fff;min-height:620px;display:flex;align-items:center;overflow:hidden}
.pub-hero .hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.5}
.pub-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(30,26,52,.95) 0%,rgba(30,26,52,.6) 60%,rgba(30,26,52,.35))}
.pub-hero-in{position:relative;z-index:2;display:grid;grid-template-columns:1.4fr 1fr;gap:48px;align-items:center;padding-top:80px;padding-bottom:80px}
.pub-hero h1{font-size:clamp(32px,4.6vw,54px);margin:14px 0 18px}
.lead{color:rgba(255,255,255,.86);font-size:16px;max-width:620px;margin:0}
.login-card{background:var(--ivory);color:var(--marine);border-radius:14px;padding:30px;box-shadow:0 20px 50px rgba(0,0,0,.3);display:grid;gap:14px}
.login-card h2{font-size:28px}
.login-card input{border:1px solid #d9cdb9;border-radius:999px;padding:14px 18px;font:400 16px var(--sans);background:#fff;color:#1E1A34}
.login-card .btn{justify-content:center}
.login-card .small{font-size:12.5px;color:#4a4560;margin:0}
.login-card a{color:#7F6646}
.login-card .err{background:#f6e3e3;color:#7a1f2b;border-radius:8px;padding:10px 12px;font-size:13px;margin:0}
.pub-block{padding:88px 0}
.pub-block.alt{background:var(--surface)}
.pub-block h2{font-size:clamp(28px,3.4vw,40px);margin:10px 0 30px}
.pub-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.pub-grid3 div{border-top:2px solid var(--sand);padding-top:16px}
.pub-grid3 h3{font-size:22px;margin-bottom:8px}
.pub-grid3 p{margin:0;color:var(--ink-soft);font-size:14px}
.pub-facts{list-style:none;padding:0;margin:40px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.pub-facts li{background:var(--surface-2);border-radius:10px;padding:16px;font-size:12px;letter-spacing:.08em;color:var(--ink-soft)}
.pub-facts b{display:block;font:400 20px var(--serif);color:var(--ink);letter-spacing:0;margin-bottom:2px}
.pub-note{color:var(--ink-soft);margin:-14px 0 30px}
.teaser{columns:2;column-gap:40px}
.t-sec{break-inside:avoid;margin-bottom:34px}
.t-sec h3{font-size:22px;margin-bottom:6px}
.t-sec .code{font:400 14px var(--serif);color:var(--sand-ink);margin-right:10px}
.t-intro{font-size:13px;color:var(--ink-soft);margin:0 0 10px}
.t-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.t-list li{padding:10px 0;border-bottom:1px solid var(--line);display:grid;gap:2px}
.t-list strong{font:400 16px var(--serif)}
.t-meta{font:500 10px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--sand-ink)}
.t-dates{font-size:12.5px;font-weight:500;color:var(--plum)}
.t-tag{font-size:13px;color:var(--ink-soft)}
.pub-cta{background:var(--marine);color:#fff;text-align:center;padding:70px 0}
.pub-cta h2{font-size:36px;margin-bottom:12px}
.pub-cta p{color:rgba(255,255,255,.8);margin:0 0 24px}
.pub-cta a{color:var(--sand)}
.pub-cta .btn{color:var(--marine)}
.footer{background:var(--marine-deep);color:#fff;padding:44px 0 40px}
.footer .legal{margin-top:26px}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .t-dates{color:#c9a8e6}}
@media (max-width:900px){.pub-hero-in{grid-template-columns:1fr;gap:30px}.teaser{columns:1}.pub-nav{display:none}}
@media (max-width:640px){.pub-grid3,.pub-facts{grid-template-columns:1fr 1fr}.pub-grid3{grid-template-columns:1fr}.pub-top-in{gap:10px}.pub-top .brand img{height:34px}.pub-top .btn{padding:8px 10px;font-size:10px}.lang-switch button{padding:6px 7px}.pub-block{padding:60px 0}}
