*{box-sizing:border-box}html{color-scheme:light}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:#fff7ef;background:#281914}a{color:inherit}a:focus-visible{outline:3px solid #f7cb78;outline-offset:5px}.skip{position:fixed;top:-80px;left:16px;background:#fff;color:#281914;padding:12px;z-index:9}.skip:focus{top:12px}.scene{min-height:calc(100svh - 46px);display:flex;flex-direction:column;background:linear-gradient(180deg,rgba(23,12,8,.35),rgba(23,12,8,.18) 38%,rgba(23,12,8,.68)),url('../images/dessert-table-v4.webp') center/cover}.topbar{padding:25px 5vw;display:flex;justify-content:center}.brand{text-align:center;text-decoration:none;font-size:23px;font-weight:900;letter-spacing:-.7px}.brand span{display:block;font-size:9px;letter-spacing:3px;margin-top:6px;font-weight:700}.home main{width:100%;max-width:1400px;margin:auto; padding:20px 5vw 34px}.intro{text-align:center;text-shadow:0 2px 22px #1a0e09}.eyebrow{font-size:13px;font-weight:700;letter-spacing:2px;margin:0 0 16px}.intro h1{font-size:clamp(36px,4.3vw,66px);line-height:1.06;letter-spacing:-2.5px;margin:0;font-weight:900}.intro h1 span{color:#f4d4a9}.subtitle{font-size:20px;line-height:1.4;margin:20px 0 0}.selection{margin:44px auto 0}.choose{text-align:center;font-size:14px;letter-spacing:.5px;font-weight:700;margin:0 0 16px}.locations{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:20px;max-width:1280px;margin:auto}.locations:has(>.location-card:last-child:nth-child(2)){max-width:860px}.location-card{display:grid;grid-template-rows:subgrid;grid-row:span 3;gap:13px;padding:24px;border:1px solid #c3a08866;border-radius:18px;background:rgba(35,22,18,.88);box-shadow:0 10px 40px #170c0820}.identity{display:flex;align-items:center;gap:16px;min-width:0}.identity img{width:76px;height:76px;object-fit:contain;flex-shrink:0;border-radius:50%}.identity .eyebrow{font-size:14px;letter-spacing:.5px;margin:0 0 5px;color:#efd6c0}.identity h2{font-size:32px;letter-spacing:-1px;line-height:1.1;margin:0;overflow-wrap:anywhere}.address{font-size:15px;color:#f0dfd2;margin:0;line-height:1.4}.cta{display:flex;align-items:center;justify-content:space-between;gap:10px;text-decoration:none;background:#f4d4a9;color:#281914;padding:17px 18px;border-radius:9px;font-size:13px;line-height:1.3;font-weight:900;text-transform:uppercase;letter-spacing:.45px;transition:background .15s}.cta:hover{background:#ffe7c6}.cta span{font-size:21px;line-height:1}.image-note{text-align:center;font-size:11px;margin:0;padding:0 16px 13px;color:#fff1e6}.footer{min-height:46px;padding:12px 5vw;display:flex;justify-content:space-between;gap:12px;align-items:center;background:#f7f1e8;color:#49362b;font-size:12px}.footer nav{display:flex;gap:22px}.footer a{text-decoration:none}.footer a:hover{text-decoration:underline}.legal-page{background:#f7f1e8;color:#35261d}.legal-page .topbar{background:#281914;color:#fff7ef}.legal{max-width:800px;margin:45px auto;padding:0 24px 35px;line-height:1.7}.legal h1{font-size:36px;line-height:1.15}.legal h2{font-size:21px;margin-top:28px}.legal a{overflow-wrap:anywhere}.legal-page .footer{border-top:1px solid #ded2c4}
@media(max-width:600px){.scene{min-height:calc(100svh - 44px);background-position:43% center}.topbar{padding:15px 16px 8px}.brand{font-size:19px}.brand span{font-size:8px;margin-top:4px;letter-spacing:2px}.home main{padding:12px 16px 18px}.intro .eyebrow{font-size:10px;letter-spacing:1px;margin-bottom:10px}.intro h1{font-size:32px;letter-spacing:-1.2px;line-height:1.08}.subtitle{font-size:15px;margin-top:10px}.selection{margin-top:22px}.choose{font-size:12px;margin-bottom:10px}.locations{grid-template-columns:1fr;gap:12px}.location-card{grid-template-rows:auto auto;grid-row:auto;grid-template-columns:58px 1fr;gap:8px 12px;padding:13px 15px;border-radius:12px}.identity{display:contents}.identity img{grid-column:1;grid-row:1/3;width:58px;height:58px;align-self:center}.identity>div{grid-column:2;grid-row:1}.identity .eyebrow{font-size:11px;margin-bottom:3px}.identity h2{font-size:24px}.address{grid-column:2;grid-row:2;font-size:12px}.cta{grid-column:1/-1;font-size:12px;padding:12px 14px;min-height:44px}.image-note{padding-bottom:10px;font-size:10px}.footer{min-height:44px;padding:10px 16px;font-size:10px}.footer nav{gap:15px}}
@media(max-width:600px) and (max-height:650px){.topbar{padding-top:10px}.home main{padding-top:8px;padding-bottom:12px}.intro h1{font-size:28px}.subtitle{margin-top:7px}.selection{margin-top:14px}.location-card{padding:10px 12px;gap:6px 10px}.locations{gap:9px}.intro .eyebrow{font-size:9px}.image-note{padding-bottom:8px}}
@media(prefers-reduced-motion:reduce){.cta{transition:none}}
@media(max-width:360px){.intro h1{font-size:24px;letter-spacing:-1px}.intro .eyebrow{font-size:8px;letter-spacing:.6px}.subtitle{font-size:13px}.cta{font-size:10px;letter-spacing:.1px;padding:11px}.identity h2{font-size:22px}.address{font-size:11px}.selection{margin-top:12px}}
.shared-logo{display:block;width:88px;height:88px;object-fit:contain;margin:0 auto 10px;border-radius:50%}.topbar{padding-top:20px;padding-bottom:14px}.location-card .identity{display:flex}.location-card .identity>div{grid-column:auto;grid-row:auto}.location-card .eyebrow{display:none}
@media(max-width:600px){.shared-logo{width:62px;height:62px;margin-bottom:5px}.topbar{padding:10px 16px 5px}.location-card{grid-template-columns:1fr;gap:7px}.location-card .identity,.location-card .address,.location-card .cta{grid-column:1;grid-row:auto}.location-card .identity h2{font-size:23px}.location-card .address{font-size:12px}.brand span{display:none}.home main{padding-top:8px}.selection{margin-top:12px}}
@media(max-width:600px) and (max-height:650px){.shared-logo{width:52px;height:52px}.topbar{padding-top:6px}.location-card{gap:6px}}
.social-links a{font-weight:700}.footer{flex-wrap:wrap}.social-links{gap:18px}
@media(max-width:600px){.footer{justify-content:center;gap:8px 16px}.footer>span{display:none}.footer .social-links{width:100%;justify-content:center;gap:22px}.footer nav a{padding:4px 0}.scene{min-height:calc(100svh - 76px)}}
/* Content determines footer height; svh also accounts for mobile browser chrome. */
.home{min-height:100svh;display:flex;flex-direction:column}.home .scene{min-height:0;flex:1}.home .footer{flex-shrink:0}.cta{justify-content:center;justify-self:start;width:fit-content;max-width:100%;gap:10px}.cta span{flex-shrink:0}.footer .social-links{gap:6px;width:auto}.social-links a{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:7px}.social-links svg{display:block;width:20px;height:20px}.footer{padding-top:5px;padding-bottom:5px}
@media(max-width:360px) and (max-height:500px){.home .subtitle{display:none}.home .selection{margin-top:9px}}
@media(max-width:600px){.footer{flex-wrap:nowrap;justify-content:space-between;gap:8px;padding:4px 12px}.footer nav{gap:12px}.footer .social-links{gap:0}.footer .social-links a{width:32px;height:36px;padding:7px}.home main{padding-bottom:10px}.cta{font-size:11px;min-height:44px;padding:10px 14px}.image-note{padding-bottom:7px}}
@media(max-width:600px) and (max-height:680px){.home .brand{display:grid;grid-template-columns:42px auto;align-items:center;gap:9px;font-size:18px}.home .shared-logo{width:42px;height:42px;margin:0}.home .topbar{padding:7px 12px 4px}.home .intro h1{font-size:clamp(23px,6.6vw,28px);letter-spacing:-1px}.home .intro .eyebrow{margin-bottom:7px}.home .subtitle{font-size:13px;margin-top:7px}.home main{padding-top:7px;padding-bottom:8px}.home .selection{margin-top:12px}.home .choose{margin-bottom:8px}.home .location-card{padding:9px 12px;gap:5px}.home .locations{gap:8px}.home .location-card .identity h2{font-size:22px}}

/* Align social icons with the centered image disclosure. */
@media(max-width:1100px) and (orientation:portrait){.home .scene{background-color:#281914;background-image:linear-gradient(180deg,rgba(23,12,8,.18),rgba(23,12,8,.30) 40%,rgba(23,12,8,.78) 75%),url('../images/dessert-portrait.webp');background-size:100% 100%,100% auto;background-position:center top;background-repeat:no-repeat}.home .intro{text-shadow:0 2px 6px #160b06,0 2px 22px #160b06}.home .brand{text-shadow:0 2px 8px #160b06}}
.footer{display:grid;grid-template-columns:1fr auto 1fr}.footer>span{justify-self:start}.footer .social-links{grid-column:2;justify-self:center}.footer nav[aria-label='Rechtliche Informationen']{grid-column:3;justify-self:end}
@media(max-width:600px){.footer{grid-template-columns:1fr;justify-items:center;gap:0;padding:2px 12px}.footer .social-links{grid-column:1;grid-row:1}.footer nav[aria-label='Rechtliche Informationen']{grid-column:1;grid-row:2;justify-self:center}.home .location-card{padding-top:6px;padding-bottom:6px}.home .selection{margin-top:8px}}
