
:root{--navy:#102c4b;--deep:#0b2037;--muted:#5d7084;--light:#f3f7fa;--line:#dfE7ed;--blue:#2976a5;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--navy);background:var(--light);font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}a:hover{color:var(--blue)}.container{width:min(1160px,calc(100% - 40px));margin:auto}.topbar{background:var(--deep);color:#c4d4e1;font-size:12px;padding:8px 0}.topbar .container{display:flex;justify-content:space-between;gap:12px}.header{position:sticky;top:0;z-index:10;background:#fff;box-shadow:0 8px 28px #122b4612}.header-inner{min-height:85px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand img{width:206px;max-height:62px;object-fit:contain;object-position:left}.nav{display:flex;align-items:center;gap:20px}.nav a{font-size:13px;font-weight:750;letter-spacing:.025em;padding:12px 0}.nav a.active{color:var(--blue);box-shadow:0 3px var(--blue)}.nav .login{padding:10px 15px;color:#fff;background:var(--navy);border-radius:8px}.menu{display:none;border:1px solid var(--line);background:#fff;color:var(--navy);border-radius:9px;padding:10px 12px;font-weight:700}.hero{min-height:480px;color:#fff;display:flex;align-items:end;background:linear-gradient(90deg,#0b2037ed 0%,#0b2037aa 48%,#0b20374a 100%),url('../gal/img/gastro/1.jpg') center 45%/cover}.hero .container{padding:80px 0 76px}.eyebrow{color:#78c2e5;text-transform:uppercase;font-size:12px;font-weight:800;letter-spacing:.19em}.hero h1{font-size:clamp(40px,6vw,72px);letter-spacing:-.05em;line-height:1.06;margin:13px 0 18px;max-width:720px}.hero p{font-size:18px;color:#e0eaf2;max-width:540px}.btn{display:inline-flex;align-items:center;gap:10px;padding:12px 18px;border-radius:9px;background:var(--navy);color:white;font-weight:750;font-size:14px;border:1px solid var(--navy);cursor:pointer}.btn:hover{background:var(--blue);color:#fff;border-color:var(--blue)}.btn.light{background:#fff;color:var(--navy);border-color:#fff}.btn.ghost{background:transparent;border-color:#ffffff70}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.section{padding:75px 0}.section.alt{background:white}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:28px}.section h2,.page-title{font-size:clamp(29px,3.7vw,44px);line-height:1.15;letter-spacing:-.035em;margin:8px 0}.lead{color:var(--muted);max-width:700px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.card{background:#fff;border-radius:16px;overflow:hidden;border:1px solid var(--line);box-shadow:0 12px 30px #102c4b0b;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-4px);box-shadow:0 18px 36px #102c4b1e}.card img{display:block;width:100%;height:170px;object-fit:cover}.card-body{padding:22px}.card h3{font-size:21px;margin:0 0 7px;letter-spacing:-.02em}.card p{color:var(--muted);font-size:14px;margin:0 0 18px}.more{font-weight:800;color:var(--blue);font-size:14px}.feature{background:var(--navy);color:white;border-radius:17px;padding:35px;display:flex;align-items:center;justify-content:space-between;gap:25px}.feature p{color:#cad8e7;margin:8px 0 0}.footer{background:var(--deep);color:#d7e4ee;padding:45px 0 20px}.footer-grid{display:grid;grid-template-columns:2fr 1fr;gap:30px}.footer strong{color:white}.footer a{color:#d7e4ee}.footer-bottom{border-top:1px solid #ffffff26;padding-top:17px;margin-top:35px;font-size:12px;color:#9fb3c4}.page-hero{background:linear-gradient(110deg,#102c4bf5,#214b6dd9),url('../gal/img/gastro/3.jpg') center/cover;color:#fff;padding:76px 0}.page-hero p{color:#dae8f1;max-width:680px}.detail-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:28px}.panel{background:#fff;border:1px solid var(--line);border-radius:17px;padding:30px;box-shadow:0 10px 30px #102c4b08}.panel h2{margin-top:0}.panel p{color:var(--muted)}.photos{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.photos img{width:100%;height:200px;object-fit:cover;border-radius:12px;cursor:pointer}.notice{border-left:4px solid var(--blue);background:#e9f2f8;padding:17px 20px;border-radius:0 10px 10px 0}.legal{white-space:normal}.legal h3{margin-top:26px}.legal p{white-space:pre-line}.lightbox{position:fixed;inset:0;background:#071523eF;z-index:20;display:none;align-items:center;justify-content:center;padding:55px 20px}.lightbox.show{display:flex}.lightbox img{max-width:95vw;max-height:85vh;object-fit:contain}.lightbox button{position:absolute;right:22px;top:15px;border:0;background:transparent;color:white;font-size:40px;cursor:pointer}.meta{font-size:14px;color:var(--muted)}
@media(max-width:950px){.cards{grid-template-columns:repeat(2,1fr)}.nav{gap:11px}.nav a{font-size:12px}.brand img{width:155px}}@media(max-width:740px){.topbar{display:none}.header-inner{min-height:75px}.menu{display:block}.nav{display:none;position:absolute;top:75px;left:0;right:0;background:white;box-shadow:0 12px 20px #102c4b1b;padding:18px 22px;flex-direction:column;align-items:stretch}.nav.open{display:flex}.nav a{font-size:14px;padding:8px}.nav a.active{box-shadow:none;border-left:3px solid var(--blue)}.hero{min-height:420px}.hero .container{padding:70px 0}.section{padding:50px 0}.cards{grid-template-columns:1fr 1fr}.card img{height:135px}.card-body{padding:16px}.card h3{font-size:18px}.feature{display:block}.feature .btn{margin-top:20px}.footer-grid,.detail-grid{grid-template-columns:1fr}.photos{grid-template-columns:repeat(2,1fr)}.photos img{height:145px}}@media(max-width:470px){.container{width:min(100% - 28px,1160px)}.cards{grid-template-columns:1fr}.card img{height:200px}.photos{grid-template-columns:1fr 1fr}.photos img{height:115px}.panel{padding:20px}.hero h1{font-size:40px}}

/* Language selector */
.header-inner{flex-wrap:wrap}.language-switch{display:flex;gap:3px;align-items:center;margin-left:8px;padding:4px;border-radius:10px;background:#eaf0f6;flex-shrink:0}.language-switch button{border:0;border-radius:7px;padding:8px 9px;background:transparent;color:#153857;font-weight:700;cursor:pointer;min-height:34px}.language-switch button[aria-pressed="true"]{background:#163e60;color:#fff;box-shadow:0 2px 6px #102c4b30}.language-switch button:focus-visible{outline:2px solid #3978b2;outline-offset:2px}@media(max-width:740px){.language-switch{margin-left:auto;margin-right:12px}.header-inner{flex-wrap:wrap}.menu{order:3}.nav{order:4;width:100%}}@media(max-width:420px){.brand img{width:125px}.language-switch button{padding:7px}.language-switch{margin-right:2px}}

/* Official SVG identities: light surfaces keep the supplied colours intact. */
.brand{display:flex;align-items:center;flex-shrink:0}.brand img{display:block;width:210px;height:auto;max-height:none}.header-inner{gap:16px}.nav{gap:14px}
.card .venue-logo,.venue-logo{display:block;width:100%;height:auto;object-fit:contain;max-height:80px;margin:0 0 20px}.detail-logo{max-width:330px;max-height:none;margin-bottom:30px}
.footer-brand{margin-top:28px}.footer-brand a{display:inline-flex;align-items:center;background:#fff;border-radius:12px;padding:16px 22px}.footer-brand img{display:block;width:190px;height:auto;max-height:90px;object-fit:contain}.footer-bottom{margin-top:26px}
.location-logos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.location-logo{background:#fff;border:1px solid var(--line);border-radius:16px;padding:30px 24px;display:flex;align-items:center;justify-content:center}.location-logo .venue-logo{margin:0;max-height:none}.treff-locations{padding-bottom:0}
@media(min-width:951px){.cards{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1180px){.header-inner{min-height:80px;flex-wrap:nowrap}.brand img{width:190px}.menu{display:block;order:3}.language-switch{margin-left:auto;margin-right:0}.nav{display:none;position:absolute;top:100%;left:0;right:0;width:100%;background:#fff;box-shadow:0 12px 20px #102c4b1b;padding:18px 22px;flex-direction:column;align-items:stretch}.nav.open{display:flex}.nav a{font-size:14px;padding:8px}.nav a.active{box-shadow:none;border-left:3px solid var(--blue)}}
@media(max-width:740px){.location-logos{grid-template-columns:1fr}.location-logo{padding:26px}.location-logo .venue-logo{max-width:320px}.detail-logo{max-width:290px}}
@media(max-width:420px){.header-inner{gap:8px;min-height:75px}.brand img{width:140px}.language-switch{margin:0;padding:3px}.language-switch button{padding:6px}.menu{padding:8px;font-size:12px}}

/* Gallery controls and return to top */
.gallery-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px;flex-wrap:wrap}
.gallery-heading h2{margin:0}.gallery-refresh{font:inherit;cursor:pointer;gap:10px}
.gallery-refresh:disabled{opacity:.6;cursor:wait}.gallery-refresh:focus-visible,.back-to-top:focus-visible,.photos img:focus-visible{outline:3px solid #3978b2;outline-offset:4px}
.back-to-top{position:fixed;right:24px;bottom:24px;bottom:max(24px,env(safe-area-inset-bottom));z-index:15;width:48px;height:48px;border:1px solid #ffffff70;border-radius:50%;background:#163e60;color:#fff;box-shadow:0 6px 20px #102c4b40;cursor:pointer;font-size:26px;display:grid;place-items:center;transition:background .2s,transform .2s}
.back-to-top[hidden]{display:none}.back-to-top:hover{background:#245679;transform:translateY(-3px)}
@media(max-width:600px){.back-to-top{right:16px;bottom:16px;bottom:max(16px,env(safe-area-inset-bottom))}.gallery-heading{gap:14px}}
@media(prefers-reduced-motion:reduce){.back-to-top{transition:none}.back-to-top:hover{transform:none}html{scroll-behavior:auto!important}}

/* Separate staff access */
.nav .login{position:relative;margin-left:22px;white-space:nowrap}
.nav .login::before{content:"";position:absolute;left:-19px;top:50%;height:28px;border-left:1px solid var(--line,#dce5ed);transform:translateY(-50%);pointer-events:none}
@media(max-width:1180px){
.nav .login{margin-left:0;margin-top:16px;text-align:center}
.nav .login::before{left:0;right:0;top:-16px;height:0;border-left:0;border-top:1px solid var(--line,#dce5ed);transform:none}
}

/* Footer and legal information */
.footer-grid-organized{grid-template-columns:1.05fr 1fr 1.15fr;gap:36px}
.footer-address{font-style:normal;line-height:1.8;margin:15px 0}.footer-tax{font-size:13px;color:#b6c9d8}.footer-details{margin:15px 0 20px}.footer-details div{margin-bottom:15px}.footer-details dt{font-size:12px;color:#b6c9d8;margin-bottom:4px}.footer-details dd{margin:0;line-height:1.6;overflow-wrap:anywhere}.sdi-code{font-variant-numeric:tabular-nums;letter-spacing:.08em}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.footer-legal{display:flex;gap:22px;flex-wrap:wrap}.legal-hero{padding:64px 0 40px;background:#edf3f8}.legal-hero h1{font-size:clamp(32px,5vw,52px);line-height:1.15;margin:14px 0 18px}.legal-jump{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.legal-jump-secondary{background:transparent;color:var(--navy)}.legal-content{padding-top:44px;padding-bottom:70px}.legal-block{scroll-margin-top:110px;margin-bottom:54px}.legal-block>h2{margin:0 0 20px;font-size:30px}.legal-company-grid{display:grid;grid-template-columns:1fr 1.35fr;gap:24px;margin:20px 0 24px}.legal-company-grid h3{margin-top:0}.legal-company-grid address{font-style:normal;line-height:1.8}.legal-company-name{font-size:19px}.legal-details{margin:20px 0 0}.legal-details>div{display:grid;grid-template-columns:minmax(110px,.8fr) minmax(0,1.3fr);gap:12px;padding:11px 0;border-bottom:1px solid var(--line)}.legal-details dt{color:#526b80}.legal-details dd{margin:0;overflow-wrap:anywhere}.legal-prose{line-height:1.8}.legal-prose h3{margin:30px 0 10px;font-size:21px}.legal-prose h3:first-child{margin-top:0}.legal-prose p{max-width:88ch;margin:0 0 18px}.layout-credit{border-top:1px solid var(--line);padding-top:20px;margin-top:28px;color:#526b80;font-size:14px}.legal-prose a,.legal-details a{color:#164f7e;text-underline-offset:3px}
@media(max-width:900px){.footer-grid-organized{grid-template-columns:1fr 1fr}.footer-grid-organized>div:first-child{grid-column:1/-1}.legal-company-grid{grid-template-columns:1fr}}
@media(max-width:600px){.footer-grid-organized{grid-template-columns:1fr;gap:24px}.footer-grid-organized>div:first-child{grid-column:auto}.legal-hero{padding:40px 0 30px}.legal-content{padding-top:30px}.legal-details>div{grid-template-columns:1fr;gap:3px}.legal-block{scroll-margin-top:100px}.footer-bottom{align-items:flex-start;flex-direction:column}}
