/* ESLU 9.2 — complete-width navigation, bright interactions, painterly accents. */
body.eslu-city .eslu-masthead{width:100%;max-width:none;margin-inline:0;overflow:visible}
body.eslu-city .eslu-masthead-inner{grid-template-columns:minmax(300px,1fr) minmax(365px,1.16fr) auto;gap:26px;padding-block:24px!important}
.eslu92-brand-lockup{display:flex;align-items:center;gap:15px;min-width:0}
body.eslu-city .eslu92-brand-lockup .eslu-brand{flex:1 1 265px;min-width:0;max-width:272px;border-radius:3px}
body.eslu-city .eslu92-brand-lockup .eslu-brand img{max-width:none!important;width:100%!important}
body.eslu-city .eslu92-slogan{flex:0 0 auto;font:700 12px/1.5 "ESLU Manrope",Arial,sans-serif;color:#8e1744;letter-spacing:.1px;padding:5px 0 5px 13px;border-left:1px solid #d9cbd2;white-space:nowrap}
body.eslu-city .eslu-main-nav{width:100%!important;max-width:none!important;margin:0!important;box-sizing:border-box;padding:12px clamp(20px,3.2vw,64px)!important;gap:6px;border-inline:0;border-radius:0;align-items:stretch;background:#faf8fa!important}
body.eslu-city .eslu-main-nav a{--eslu92-accent:#8e1744;--eslu92-wash:#f7eaf0;isolation:isolate;min-height:82px;padding:12px 9px;gap:10px;transition:background .3s,border-color .3s,box-shadow .3s,transform .3s cubic-bezier(.2,.7,.2,1)}
body.eslu-city .eslu-main-nav a:nth-child(2){--eslu92-accent:#22667d;--eslu92-wash:#e7f4f7}
body.eslu-city .eslu-main-nav a:nth-child(3){--eslu92-accent:#875520;--eslu92-wash:#fff3e3}
body.eslu-city .eslu-main-nav a:nth-child(4){--eslu92-accent:#943943;--eslu92-wash:#faecee}
body.eslu-city .eslu-main-nav a:nth-child(5){--eslu92-accent:#386753;--eslu92-wash:#e9f6ef}
body.eslu-city .eslu-main-nav a:nth-child(6){--eslu92-accent:#6d4287;--eslu92-wash:#f1eaf8}
body.eslu-city .eslu-main-nav a:nth-child(7){--eslu92-accent:#8a426e;--eslu92-wash:#faedf6}
body.eslu-city .eslu-main-nav a:nth-child(8){--eslu92-accent:#8e1744;--eslu92-wash:#f7eaf0}
body.eslu-city .eslu-main-nav .eslu91-nav-icon{position:relative;overflow:hidden;border-color:#dcd7e4;color:#2e52d1;background:#fff;flex-shrink:0;transition:color .3s,background .3s,box-shadow .3s,transform .4s cubic-bezier(.2,.75,.25,1),border-color .3s}
/* The earlier editorial sheet sets svg.color directly. Reset that at the SVG. */
body.eslu-city .eslu-main-nav .eslu91-nav-icon svg{color:inherit!important;stroke:currentColor!important;fill:none;stroke-width:2;transition:transform .45s cubic-bezier(.2,.75,.25,1)}
body.eslu-city .eslu-main-nav .eslu91-nav-copy strong{transition:color .25s;overflow-wrap:normal}
body.eslu-city .eslu-main-nav .eslu91-nav-copy small{color:#6d5e70}
body.eslu-city .eslu-main-nav a:is(:hover,:focus-visible){background:#fff!important;border-color:#d4c4d8;box-shadow:0 9px 23px #42224513}
body.eslu-city .eslu-main-nav a:is(:hover,:focus-visible) .eslu91-nav-icon{background:var(--eslu92-wash)!important;color:var(--eslu92-accent)!important;border-color:var(--eslu92-accent);box-shadow:0 6px 17px #45305c18;transform:translateY(-3px)}
body.eslu-city .eslu-main-nav a:is(:hover,:focus-visible) .eslu91-nav-icon svg{transform:translateY(-1px) rotate(-6deg) scale(1.09)}
body.eslu-city .eslu-main-nav a:is(:hover,:focus-visible) .eslu91-nav-copy strong{color:var(--eslu92-accent)!important}
body.eslu-city .eslu-main-nav a[aria-current=page] .eslu91-nav-icon{background:var(--eslu92-wash)!important;color:var(--eslu92-accent)!important;border-color:var(--eslu92-accent)}
body.eslu-city .eslu-main-nav a[aria-current=page]::after{height:3px;width:24px;left:calc(50% - 12px);right:auto;bottom:4px;background:var(--eslu92-accent);border-radius:4px}
body.eslu-city .eslu-main-nav .eslu91-nav-icon::after{content:"";position:absolute;inset:-20% auto -20% -110%;width:60%;background:linear-gradient(90deg,transparent,#fff9,transparent);transform:skewX(-20deg);pointer-events:none}
body.eslu-city .eslu-main-nav a:is(:hover,:focus-visible) .eslu91-nav-icon::after{animation:eslu92-icon-glint .7s ease-out 1}
@keyframes eslu92-icon-glint{to{left:160%}}
/* Give the empty ad invitation a compact shape; purchased creatives keep their size. */
body.eslu-city .eslu92-top-ad .eslu-ad-header{margin:15px 0 5px;padding:10px 14px;background:#fff;border-color:#ebe4e9}
body.eslu-city .eslu92-top-ad .eslu-ad-header:has(.eslu-ad-offer){display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:center}
body.eslu-city .eslu92-top-ad .eslu-ad-header:has(.eslu-ad-offer)>small{margin:0}
body.eslu-city .eslu92-top-ad .eslu-ad-offer{min-height:32px;flex-direction:row;justify-content:space-between;gap:16px;background:transparent;font-size:13px!important;padding:0;text-align:left;border-radius:0}
body.eslu-city .eslu92-top-ad .eslu-ad-offer span{font-size:11px!important;line-height:1.6;margin:0;color:#6b5d69}
body.eslu-city .eslu-paper-front{padding-top:16px;padding-bottom:48px}
body.eslu-city .eslu-paper-dateline{padding-bottom:12px}
body.eslu-city .eslu-paper-heading{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(250px,1fr);gap:28px;align-items:center;padding:24px 0 23px;position:relative}
body.eslu-city .eslu-paper-heading h1{font-size:clamp(40px,4.15vw,62px)!important;line-height:1.09!important;letter-spacing:-2.5px!important;margin:0!important}
body.eslu-city .eslu-paper-heading h1 br{display:block}
body.eslu-city .eslu-paper-heading h1 em{display:block}
body.eslu-city .eslu-paper-heading .eslu-overline{color:#755a6b;font-size:10px;letter-spacing:1.5px;margin:0 0 12px}
body.eslu-city .eslu92-front-intro{font-size:13px!important;line-height:1.8!important;color:#675568;max-width:470px;margin:16px 0 0!important}
.eslu92-front-art{height:195px;position:relative;min-width:0;pointer-events:none;isolation:isolate;animation:eslu92-arrival 1.2s ease-out both}
.eslu92-front-river{position:absolute;inset:0;width:100%;height:100%!important;object-fit:contain;opacity:.58;mask-image:linear-gradient(90deg,transparent,#000 24%,#000 88%,transparent);mix-blend-mode:multiply}
.eslu92-front-bear{position:absolute;left:-9%;bottom:-8%;width:70%;max-width:310px!important;height:auto!important;transform:rotate(-3deg);filter:drop-shadow(0 7px 12px #7b5b3210)}
@keyframes eslu92-arrival{from{opacity:.65;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
/* The visible image gets its motion inside a clipped frame, preserving the grid. */
body.eslu-city :is(.eslu-front-card,.eslu-event-card,.eslu-place-card,.eslu-atlas-card){transition:transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s,border-color .3s}
body.eslu-city :is(.eslu-front-card>a,.eslu-media,.eslu-food-intro,.eslu-people-layout figure,.eslu-atlas-card){overflow:hidden;position:relative}
body.eslu-city :is(.eslu-front-card img,.eslu-media>img,.eslu-food-intro>img,.eslu-people-layout figure>img,.eslu-atlas-card img){transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .5s;transform-origin:center}
body.eslu-city .eslu-front-card>a::after{content:"";position:absolute;inset:0;background:linear-gradient(140deg,#fff0 40%,#fff4 58%,#fff0 78%);opacity:0;transform:translateX(-100%);pointer-events:none;transition:transform .75s,opacity .4s}
body.eslu-city :is(.eslu-button,.eslu91-button){position:relative;overflow:hidden;isolation:isolate;transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s,filter .3s,background .3s;will-change:auto}
body.eslu-city .eslu91-button:not(.eslu91-button-light){background:linear-gradient(110deg,#8e1744,#a72959)!important}
body.eslu-city :is(.eslu-button,.eslu91-button)::after{content:"";position:absolute;inset:-35% auto -35% -100%;width:45%;background:linear-gradient(90deg,transparent,#fff3,transparent);transform:skewX(-22deg);pointer-events:none;z-index:-1}
body.eslu-city :is(.eslu-button,.eslu91-button) svg{transition:transform .3s}
body.eslu-city :is(.eslu-button,.eslu91-button):focus-visible{outline:3px solid #2e52d1;outline-offset:4px;transform:translateY(-3px);box-shadow:0 9px 23px #8e17442b}
body.eslu-city .eslu-header-tools :is(a,button){transition:transform .3s,box-shadow .3s,background .3s}
body.eslu-city .eslu-paper-topics button{transition:transform .25s,box-shadow .25s,border-color .25s,background .25s;color:#4d3344}
body.eslu-city .eslu-paper-topics button[aria-pressed=true]{color:#fff}
body.eslu-city :is(.eslu-button,.eslu91-button,.eslu-header-tools a,.eslu-header-tools button):active{transform:translateY(1px) scale(.98)!important}
/* Painterly footer: river engraving, amber pigment, generous editorial typography. */
body.eslu-city .eslu91-footer{background:linear-gradient(132deg,#29253d,#152d3c 70%,#172637)!important;overflow:clip}
body.eslu-city .eslu91-footer::before{content:"";position:absolute;inset:0;pointer-events:none;background:url(images/footer-river.svg) right bottom/cover no-repeat;opacity:.32;z-index:0}
body.eslu-city .eslu91-footer::after{content:"";position:absolute;right:-10%;top:-90px;width:75%;height:470px;background:radial-gradient(ellipse,#93709321,transparent 66%);pointer-events:none;z-index:0}
body.eslu-city .eslu91-footer-top{display:grid;grid-template-columns:minmax(0,1fr) 230px auto;gap:30px;padding:48px 0 42px;border-bottom-color:#e8dce12b}
body.eslu-city .eslu91-footer-top h2{font-size:clamp(45px,4.6vw,68px)!important;line-height:.98!important;letter-spacing:-2.5px!important;margin:16px 0 0!important}
body.eslu-city .eslu91-footer-top h2 em{display:inline-block;font-family:Georgia,"Times New Roman",serif;font-style:italic;font-weight:400;color:#d6c1b5!important;font-size:1.17em;letter-spacing:-2px}
.eslu92-footer-art{position:relative;height:175px;min-width:0;pointer-events:none}
.eslu92-footer-art img{display:block;width:125%;max-width:none!important;height:100%!important;object-fit:contain;transform:translateX(-10%) rotate(-4deg);filter:drop-shadow(0 10px 25px #0002)}
body.eslu-city .eslu91-footer-brand .eslu91-logo{max-width:254px;overflow:visible;border-radius:2px;transition:transform .4s cubic-bezier(.2,.7,.2,1),filter .4s;isolation:isolate}
body.eslu-city .eslu91-footer-brand .eslu91-logo::after{display:none}
body.eslu-city .eslu91-footer-brand .eslu91-logo:is(:hover,:focus-visible){transform:translateY(-3px);filter:brightness(1.12) drop-shadow(0 0 13px #d3e6ff63)}
body.eslu-city .eslu91-footer-brand .eslu92-footer-slogan{margin:14px 0 0!important;color:#d9c7ce!important;font-size:12px!important;letter-spacing:1.1px}
body.eslu-city .eslu91-footer-brand>p:not(.eslu92-footer-slogan){margin-top:18px!important;color:#c6c9da!important}
body.eslu-city .eslu91-footer nav h3{font-size:12px!important;letter-spacing:1px;text-transform:uppercase}
body.eslu-city .eslu91-footer nav a{font-size:13px!important;min-height:39px;color:#c7cada!important;transition:color .25s,transform .25s}
body.eslu-city .eslu91-footer nav a:is(:hover,:focus-visible){color:#fff!important;transform:translateX(4px)}
body.eslu-city .eslu91-footer nav a:is(:hover,:focus-visible)>span{opacity:1;transform:translateX(0);color:#d3b9bf}
body.eslu-city .eslu91-footer-write{background:#ffffff08;border:1px solid #f0d6e22e;border-radius:20px 20px 20px 4px}
body.eslu-city .eslu91-footer-write p{color:#c6c9da!important}
body.eslu-city .eslu91-footer-bottom{border-top-color:#e8dce127;color:#bdc3d4}
@media(hover:hover) and (pointer:fine){
 body.eslu-city .eslu-main-nav a:hover{transform:translateY(-2px)!important}
 body.eslu-city :is(.eslu-front-card,.eslu-event-card,.eslu-place-card,.eslu-atlas-card):hover{transform:translateY(-5px)!important;box-shadow:0 18px 38px #40274222;border-color:#d5b8c8}
 body.eslu-city :is(.eslu-front-card:hover img,.eslu-media:hover>img,.eslu-food-intro:hover>img,.eslu-people-layout figure:hover>img,.eslu-atlas-card:hover img){transform:scale(1.065);filter:saturate(1.1) contrast(1.025)}
 body.eslu-city .eslu-front-card:hover>a::after{opacity:1;transform:translateX(100%)}
 body.eslu-city :is(.eslu-button,.eslu91-button):hover{transform:translateY(-4px)!important;box-shadow:0 11px 25px #8e174435;filter:brightness(1.07)}
 body.eslu-city :is(.eslu-button,.eslu91-button):hover::after{animation:eslu92-button-glint .85s ease-out 1}
 body.eslu-city :is(.eslu-button,.eslu91-button):hover svg{transform:translate(2px,-2px)}
 body.eslu-city .eslu-header-tools :is(a,button):hover{transform:translateY(-3px);box-shadow:0 7px 17px #6d294524}
 body.eslu-city .eslu-paper-topics button:hover{transform:translateY(-2px);box-shadow:0 5px 12px #6d294516;border-color:#be8ca6}
}
@keyframes eslu92-button-glint{to{left:170%}}
@media(max-width:1250px){body.eslu-city .eslu-main-nav a{padding-inline:6px;gap:8px}.eslu92-brand-lockup{gap:11px}body.eslu-city .eslu92-slogan{font-size:11px;padding-left:10px}.eslu91-footer-shell{width:calc(100% - 48px)}}
@media(max-width:1180px){body.eslu-city .eslu-masthead-inner{grid-template-columns:minmax(280px,1fr) auto;gap:16px 24px;padding:20px 24px!important}.eslu91-today{grid-column:1/-1;grid-row:2;justify-content:center;gap:28px;padding:14px 0 0;border-top:1px solid #eee4eb}.eslu91-today-date{padding-right:26px}.eslu91-weather{min-width:150px}body.eslu-city .eslu91-footer-top{grid-template-columns:minmax(0,1fr) 190px auto;gap:18px}.eslu92-footer-art{height:150px}body.eslu-city .eslu91-footer-top>.eslu91-button{padding-inline:15px;font-size:12px!important}}
@media(max-width:980px){body.eslu-city .eslu-paper-heading{grid-template-columns:minmax(0,1.9fr) minmax(180px,1fr);gap:18px}body.eslu-city .eslu-paper-heading h1{font-size:42px!important;letter-spacing:-1.8px!important}.eslu92-front-art{height:155px}body.eslu-city .eslu91-footer-top{grid-template-columns:minmax(0,1fr) 190px}body.eslu-city .eslu91-footer-top>.eslu91-button{grid-column:1/-1;justify-self:start}body.eslu-city .eslu91-footer-top h2{font-size:58px!important}}
@media(max-width:700px){
 body.eslu-city .eslu-masthead-inner{grid-template-columns:minmax(0,1fr) auto;padding:17px 16px!important;gap:15px 12px}
 .eslu92-brand-lockup{gap:10px;max-width:280px}
 body.eslu-city .eslu92-brand-lockup .eslu-brand{max-width:188px;flex-basis:188px}
 body.eslu-city .eslu92-slogan{font-size:10px;padding-left:9px;line-height:1.4}
 .eslu91-today{justify-content:space-between;gap:14px;min-width:0;padding-top:12px}
 .eslu91-today-date{padding-right:12px;min-width:0}.eslu91-weather{min-width:105px}
 body.eslu-city .eslu-masthead .eslu-main-nav{padding:12px 16px!important;grid-template-columns:repeat(2,minmax(0,1fr));max-width:none!important;width:100%!important;gap:8px}
 body.eslu-city .eslu-main-nav a{min-height:72px;padding:11px 9px;gap:10px}
 body.eslu-city .eslu-main-nav .eslu91-nav-copy strong{font-size:12px!important;line-height:1.35}
 body.eslu-city .eslu-main-nav .eslu91-nav-icon{width:39px;height:39px;min-width:39px;border-radius:11px}
 body.eslu-city .eslu-main-nav .eslu91-nav-icon svg{width:25px!important;height:25px!important}
 body.eslu-city .eslu-menu-toggle{width:100%;min-height:49px;border-bottom:1px solid #e5dce3!important;background:#faf8fa!important}
 body.eslu-city .eslu92-top-ad .eslu-ad-header{margin:12px 0 3px;padding:8px 10px}
 body.eslu-city .eslu92-top-ad .eslu-ad-header:has(.eslu-ad-offer){gap:10px}
 body.eslu-city .eslu92-top-ad .eslu-ad-offer{font-size:11px!important;gap:6px;min-height:32px}
 body.eslu-city .eslu92-top-ad .eslu-ad-offer span{display:none}
 body.eslu-city .eslu-paper-front{padding-top:12px;padding-bottom:32px}
 body.eslu-city .eslu-paper-dateline{font-size:9px;letter-spacing:0;padding-top:0;padding-bottom:10px}
 body.eslu-city .eslu-paper-heading{display:block;padding:24px 0 19px}
 body.eslu-city .eslu-paper-heading h1{font-size:clamp(33px,8vw,45px)!important;line-height:1.12!important;letter-spacing:-1.6px!important}
 body.eslu-city .eslu-paper-heading h1 em{max-width:100%}
 body.eslu-city .eslu-paper-heading .eslu-overline{font-size:8px;letter-spacing:1px;max-width:63%}
 body.eslu-city .eslu92-front-intro{font-size:12px!important;line-height:1.7!important;max-width:370px;margin:12px 0 0!important}
 .eslu92-front-art{position:absolute;right:0;top:8px;width:135px;height:73px;z-index:-1}
 .eslu92-front-river{opacity:.4}.eslu92-front-bear{width:95%;bottom:-15%;left:0;max-width:none!important}
 body.eslu-city .eslu-paper-topics{flex-wrap:wrap;overflow:visible;gap:7px;padding-bottom:0;margin-bottom:18px}
 body.eslu-city .eslu-paper-topics button{min-height:44px;font-size:11px;padding:8px 11px;flex-shrink:1}
 body.eslu-city .eslu91-footer-shell{width:calc(100% - 36px)}
 body.eslu-city .eslu91-footer-top{grid-template-columns:minmax(0,1fr) 125px;gap:24px 6px;padding:38px 0 31px}
 body.eslu-city .eslu91-footer-top h2{font-size:43px!important;letter-spacing:-1.3px!important;line-height:1.03!important}
 body.eslu-city .eslu91-footer-top .eslu91-eyebrow{font-size:8px!important;letter-spacing:1px;max-width:200px}
 .eslu92-footer-art{height:140px}.eslu92-footer-art img{width:160%;transform:translateX(-25%) rotate(-4deg)}
 body.eslu-city .eslu91-footer-top>.eslu91-button{width:100%;min-height:50px}
 body.eslu-city .eslu91-footer-grid{grid-template-columns:1fr 1fr;gap:30px 22px;padding:32px 0}
 body.eslu-city .eslu91-footer-brand{grid-column:1/-1;grid-row:auto}
 body.eslu-city .eslu91-footer nav a{font-size:12px!important;min-height:42px}
 body.eslu-city .eslu91-footer nav h3{font-size:10px!important;letter-spacing:.7px}
 body.eslu-city .eslu91-footer-bottom{gap:18px;line-height:1.8}
}
@media(max-width:420px){.eslu92-brand-lockup{display:block}body.eslu-city .eslu92-brand-lockup .eslu-brand{width:168px;max-width:100%}body.eslu-city .eslu92-slogan{display:block;border-left:0;padding:7px 0 0;font-size:10px;letter-spacing:.8px}body.eslu-city .eslu92-slogan br{display:none}.eslu92-front-art{width:116px;height:67px}body.eslu-city .eslu-paper-heading .eslu-overline{max-width:62%;font-size:7px}body.eslu-city .eslu91-footer-top{grid-template-columns:minmax(0,1fr) 112px}body.eslu-city .eslu91-footer-top h2{font-size:39px!important}.eslu91-weather>div>span{white-space:normal;max-width:80px}}
@media(prefers-reduced-motion:reduce){body.eslu-city :is(.eslu-main-nav a,.eslu91-nav-icon,.eslu91-nav-icon svg,.eslu-button,.eslu91-button,.eslu91-button svg,.eslu-header-tools a,.eslu-header-tools button,.eslu-front-card,.eslu-event-card,.eslu-place-card,.eslu-atlas-card,.eslu-front-card img,.eslu-media img,.eslu-food-intro img,.eslu-people-layout figure img,.eslu-atlas-card img,.eslu91-logo,.eslu-paper-topics button,.eslu91-footer nav a){transition:none!important;transform:none!important}body.eslu-city .eslu92-front-art,body.eslu-city .eslu-main-nav .eslu91-nav-icon::after,body.eslu-city :is(.eslu-button,.eslu91-button)::after{animation:none!important}body.eslu-city .eslu-front-card>a::after{display:none}}
body.slu-motion-off.eslu-city :is(.eslu-main-nav a,.eslu91-nav-icon,.eslu91-nav-icon svg,.eslu-button,.eslu91-button,.eslu91-button svg,.eslu-header-tools a,.eslu-header-tools button,.eslu-front-card,.eslu-event-card,.eslu-place-card,.eslu-atlas-card,.eslu-front-card img,.eslu-media img,.eslu-food-intro img,.eslu-people-layout figure img,.eslu-atlas-card img,.eslu91-logo,.eslu-paper-topics button,.eslu91-footer nav a){transition:none!important;transform:none!important}
body.slu-motion-off .eslu92-front-art,body.slu-motion-off .eslu91-nav-icon::after,body.slu-motion-off :is(.eslu-button,.eslu91-button)::after{animation:none!important}
/* Match the hover rule's specificity so reduced-motion also cancels its lift. */
@media(prefers-reduced-motion:reduce){body.eslu-city .eslu-main-nav a:is(:hover,:focus-visible),body.eslu-city :is(.eslu-button,.eslu91-button,.eslu-front-card,.eslu-event-card,.eslu-place-card,.eslu-atlas-card):is(:hover,:focus-visible,:active),body.eslu-city .eslu91-footer-brand .eslu91-logo:is(:hover,:focus-visible){transform:none!important}}
body.slu-motion-off.eslu-city .eslu-main-nav a:is(:hover,:focus-visible),body.slu-motion-off.eslu-city :is(.eslu-button,.eslu91-button,.eslu-front-card,.eslu-event-card,.eslu-place-card,.eslu-atlas-card):is(:hover,:focus-visible,:active),body.slu-motion-off.eslu-city .eslu91-footer-brand .eslu91-logo:is(:hover,:focus-visible){transform:none!important}
