.ft-portal-header{padding:20px 0;background:#fffaf2;color:#30391e;border-bottom:1px solid #dfdfd3}.ft-portal-bar{display:flex;align-items:center;justify-content:space-between;gap:24px}.ft-portal-brand{color:#30391e;text-decoration:none;font:bold 36px/1 Georgia,serif;white-space:nowrap}.ft-portal-brand>span{color:#b43a08}.ft-portal-brand small{display:block;font:600 11px/1.6 system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;margin-top:8px}.ft-portal-nav{display:flex!important;align-items:center;gap:24px}.ft-portal-nav>a{font:600 14px/1.5 system-ui,sans-serif;text-decoration:none;color:#30391e}.ft-portal-nav>a:hover{text-decoration:underline}.ft-portal-nav .ft-portal-nav-cta{background:#30391e;color:#fff;padding:12px 18px;border-radius:8px}.ft-portal-home{color:#30391e}.ft-portal-hero{display:grid;grid-template-columns:1.12fr 1fr;gap:44px;align-items:center;padding:32px 0 48px}.ft-portal-hero h1{font-size:clamp(42px,4.5vw,65px);letter-spacing:-.045em;line-height:1.07;margin:14px 0 22px}.ft-portal-hero h1 em{font-style:normal;color:#b43a08}.ft-portal-lead{font-size:18px;line-height:1.65;max-width:570px}.ft-portal-hero-image{margin:0;position:relative;align-self:stretch;min-height:510px;background:#eae7da;border-radius:24px;overflow:hidden}.ft-portal-hero-image .ft-portal-photo{width:100%;height:100%;position:absolute;object-fit:cover;display:block}.ft-portal-hero-image:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#15200ac9)}.ft-portal-hero-image figcaption{position:absolute;bottom:28px;left:28px;right:28px;z-index:1;color:white;font:26px/1.25 Georgia,serif}.ft-portal-search{background:#fff;border:1px solid #dbddcf;border-radius:12px;padding:20px;margin:24px 0}.ft-portal-search h2{font:700 19px/1.3 system-ui,sans-serif;margin:0 0 14px}.ft-portal-search .ftcat-search{margin:0}.ft-portal-search .ftcat-search>div{gap:8px}.ft-portal-search .ftcat-search input{min-width:0;background:#fffdf8}.ft-portal-search .ftcat-search button{white-space:nowrap;background:#b43a08;color:white}.ft-portal-quick{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:13px}.ft-portal-quick a{font-weight:700}.ft-portal-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;padding:24px 0;border-block:1px solid #d8d9ca}.ft-portal-benefits p{margin:0}.ft-portal-benefits strong,.ft-portal-benefits span{display:block}.ft-portal-benefits strong{font-size:16px}.ft-portal-benefits span{font-size:13px;margin-top:4px;color:#5c634e}.ft-portal-section-head{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;margin-bottom:30px}.ft-portal-section-head p{max-width:550px}.ft-portal-home .ftcat-region-explorer{grid-template-columns:.85fr 1.35fr}.ft-portal-home .ftcat-germany-map{max-height:490px;width:100%;display:block}.ft-portal-home .ftcat-region-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ft-portal-home .ftcat-region-card{padding:14px;border-radius:10px;min-height:0}.ft-portal-home .ftcat-region-card strong{font-size:14px}.ft-portal-home .ftcat-region-card small{font-size:12px}.ft-portal-home .ftcat-pin{width:22px;flex-shrink:0}.ft-portal-home .ftcat-card-action{font-size:12px}.ft-portal-local-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.ft-portal-local-links a{padding:10px 16px;background:#e9eddf;border-radius:50px;font-size:14px;text-decoration:none;font-weight:600}.ft-portal-occasions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.ft-portal-occasions article{padding:26px;background:#fff;border:1px solid #dedfd2;border-radius:14px}.ft-portal-occasions h3{font-size:24px;margin:0 0 12px}.ft-portal-occasions p,.ft-portal-occasions a{font-size:15px}.ft-portal-occasions a{font-weight:700}.ft-portal-advice{background:#eceee2;border-radius:20px;padding:36px!important}.ft-portal-advice-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px}.ft-portal-advice-grid article>span{font-size:12px;letter-spacing:.12em;text-transform:uppercase}.ft-portal-advice-grid h3{font-size:30px}.ft-portal-advice-grid p{font-size:16px}.ft-portal-checklist{display:grid;grid-template-columns:1fr 1fr;gap:48px}.ft-portal-checklist ul{padding:28px 28px 28px 48px;background:#fff;border:1px solid #dedfd2;border-radius:16px;line-height:2}.ft-portal-recipe-link{display:flex;align-items:center;justify-content:space-between;gap:32px;border-top:1px solid #d8d9ca}.ft-portal-recipe-link h2{font-size:32px}.ft-portal-recipe-link>a{white-space:nowrap;font-weight:bold}.ft-portal-home [id]{scroll-margin-top:28px}.ft-portal-home .ftcat-section{margin-top:64px}
@media(max-width:1100px){.ft-portal-nav{gap:15px}.ft-portal-nav>a{font-size:13px}.ft-portal-nav .ft-portal-nav-cta{display:none}.ft-portal-hero{gap:26px}.ft-portal-search .ftcat-search>div{flex-direction:column}.ft-portal-search button{width:100%}}
@media(max-width:900px){.ft-portal-header.ft-mega-enhanced .ft-menu-toggle{display:block}.ft-portal-bar{flex-wrap:wrap}.ft-portal-nav{width:100%;flex-wrap:wrap}.ft-mega-enhanced .ft-portal-nav{display:none!important}.ft-mega-enhanced .ft-portal-nav.is-open{display:flex!important}.ft-portal-nav>a{padding:10px}.ft-portal-hero{grid-template-columns:1fr}.ft-portal-hero-image{min-height:300px;max-height:380px;aspect-ratio:16/9}.ft-portal-hero h1{font-size:clamp(42px,7vw,62px)}.ft-portal-section-head{grid-template-columns:1fr;gap:0}.ft-portal-home .ftcat-region-explorer{grid-template-columns:1fr}.ft-portal-home .ftcat-germany-map{max-height:390px}.ft-portal-occasions{grid-template-columns:repeat(2,minmax(0,1fr))}.ft-portal-advice-grid,.ft-portal-checklist{grid-template-columns:1fr;gap:16px}}
@media(max-width:540px){.ft-portal-brand{font-size:30px}.ft-portal-hero{padding-top:8px}.ft-portal-benefits{grid-template-columns:1fr;gap:18px}.ft-portal-home .ftcat-region-grid,.ft-portal-occasions{grid-template-columns:1fr}.ft-portal-home .ftcat-section{margin-top:44px}.ft-portal-advice{padding:24px!important}.ft-portal-recipe-link{align-items:start;flex-direction:column}.ft-portal-search{padding:16px}.ft-portal-search button{font-size:15px}.ft-portal-hero-image{min-height:240px}}
/* Replace the former full-bleed seasonal homepage canvas. */
body.home.ft-editorial .ft-main.ft-wrap{width:min(calc(100% - 40px),1240px);max-width:1240px;margin-inline:auto;padding-top:16px}
.ft-portal-search .ftcat-search>div:not(.ftcat-search-feedback){display:flex}
.ft-portal-home .ftcat-map-panel{align-self:start}
.ft-editorial-footer-links{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
@media(max-width:1100px){.ft-portal-search .ftcat-search>div:not(.ftcat-search-feedback){flex-direction:column}}
@media(max-width:540px){body.home.ft-editorial .ft-main.ft-wrap{width:calc(100% - 32px);padding-top:8px}}
.ft-portal-home .ftcat-region-explorer{display:grid;gap:32px;align-items:start}
.ft-portal-home .ftcat-region-grid{margin-top:0}
.ft-portal-home .ftcat-map-panel{background:#f0f1e7;border:1px solid #dedfd2;border-radius:20px;padding:24px}
.ft-portal-home .ftcat-map-panel small{font-size:10px}
.ft-portal-search .ftcat-search button{margin-top:0;width:auto}
@media(max-width:1100px){.ft-portal-search .ftcat-search button{width:100%}}

/* Compact, visibly distinct portal navigation. */
.ft-header.ft-portal-header{padding:10px 0;background:#e8ecdd;border-bottom:1px solid #c8ceb9}
.ft-portal-header .ft-portal-brand{font-size:30px}
.ft-portal-header .ft-portal-brand small{font-size:10px;line-height:1.3;margin-top:4px}
.ft-portal-header .ft-portal-nav-cta{padding:10px 16px}
.ft-planning-page{color:#30391e;font-size:17px;line-height:1.75}
.ft-planning-page .ft-planning-lead{font-size:20px;line-height:1.65;color:#525a43}
.ft-planning-page section{margin-top:42px;scroll-margin-top:24px}
.ft-planning-page h2{font-size:clamp(27px,3vw,35px);line-height:1.2;margin-bottom:18px}
.ft-planning-page h3{font-size:24px;line-height:1.3}
.ft-planning-page li{margin-bottom:10px}
.ft-planning-jump{display:flex;flex-wrap:wrap;gap:10px 18px;padding:22px;background:#edf0e4;border:1px solid #d3dac4;border-radius:12px;margin:28px 0;font-size:14px}
.ft-planning-jump strong{flex-basis:100%}
.ft-planning-jump a{font-weight:650}
.ft-planning-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0}
.ft-planning-options article{padding:22px;background:#fffdf8;border:1px solid #d8ddcd;border-radius:12px}
.ft-planning-options h3{margin:0 0 12px}
.ft-planning-options p{margin-bottom:0;font-size:16px}
.ft-planning-table{overflow-x:auto;margin:24px 0}
.ft-planning-table table{border-collapse:collapse;width:100%;font-size:15px}
.ft-planning-table :is(th,td){padding:14px;border:1px solid #d5dbca;vertical-align:top;text-align:left;min-width:140px}
.ft-planning-table thead{background:#e8ecdd}
.ft-planning-template{padding:28px;background:#edf0e4;border-radius:16px}
.ft-planning-template blockquote{margin:20px 0 0;padding:0 0 0 20px;border-left:3px solid #87966a;font-size:16px}
.ft-planning-faq details{padding:18px 0;border-bottom:1px solid #d5dbca}
.ft-planning-faq summary{cursor:pointer;font-weight:650}
.ft-planning-next{padding:28px;border:1px solid #c8d1b7;border-radius:16px;margin-top:42px;background:#fffdf8}
@media(max-width:540px){.ft-portal-header .ft-portal-brand{font-size:27px}.ft-planning-options{grid-template-columns:1fr}.ft-planning-template,.ft-planning-next{padding:20px}.ft-planning-page .ft-planning-lead{font-size:18px}}
/* Larger navigation and explicit contrast in every interaction state. */
.ft-portal-header .ft-portal-nav>a{font-size:16px}
.ft-portal-header .ft-portal-nav .ft-portal-nav-cta{display:inline-flex;align-items:center;background:#30391e!important;color:#fff!important;text-decoration:none!important;border:2px solid #30391e;min-height:44px}
.ft-portal-header .ft-portal-nav .ft-portal-nav-cta:hover{background:#a73505!important;border-color:#a73505;color:#fff!important}
.ft-portal-header .ft-portal-nav .ft-portal-nav-cta:focus-visible{background:#a73505!important;color:#fff!important;outline:3px solid #30391e;outline-offset:4px}
@media(max-width:1100px){
.ft-portal-header .ft-portal-nav>a{font-size:15px}
.ft-portal-header.ft-mega-enhanced .ft-menu-toggle{display:block}
.ft-portal-header .ft-portal-bar{flex-wrap:wrap}
.ft-portal-header .ft-portal-nav{width:100%;flex-wrap:wrap}
.ft-portal-header.ft-mega-enhanced .ft-portal-nav{display:none!important}
.ft-portal-header.ft-mega-enhanced .ft-portal-nav.is-open{display:flex!important}
}

/* Portal expansion: header panels and reference-based homepage sections. */
.ft-portal-header{position:relative;z-index:40}
.ft-portal-header .ft-portal-bar{position:relative}
.ft-portal-header .ft-portal-nav{gap:20px}
.ft-portal-header .ft-portal-nav>ul.ft-portal-roots{display:flex;align-items:center;gap:22px;list-style:none;margin:0;padding:0}
.ft-header.ft-portal-header .ft-portal-nav .ft-portal-root{position:static;margin:0;padding:0}
.ft-portal-root-label{display:flex;align-items:center;gap:2px}
.ft-portal-header .ft-portal-root-label>a{font:600 16px/1.5 system-ui,sans-serif;color:#30391e;text-decoration:none;padding:10px 0;white-space:nowrap}
.ft-portal-header .ft-mega-trigger{display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:38px;width:24px;padding:0;border:0;border-radius:5px;box-shadow:none;background:transparent;color:#566342;font:700 18px/1 system-ui,sans-serif}
.ft-portal-header .ft-mega-trigger[aria-expanded=true]{background:#d4ddc4;color:#30391e}
.ft-portal-header :is(a,button):focus-visible{outline:3px solid #a73505;outline-offset:3px}
.ft-portal-header .ft-portal-panel{position:absolute;top:calc(100% - 1px);left:auto;right:0;width:min(950px,100%);max-width:100%;padding:24px;border:1px solid #d2dac5;border-radius:16px;box-shadow:0 18px 36px #30391e26;background:#fff;color:#30391e;z-index:60;transform:none}
.ft-portal-header .ft-portal-panel[hidden]{display:none!important}
.ft-portal-panel-heading{border-bottom:1px solid #dde3d4;padding-bottom:14px;margin-bottom:14px}
.ft-portal-header .ft-portal-panel-heading>a{font:750 20px/1.4 system-ui,sans-serif;color:#30391e;text-decoration:none}
.ft-portal-panel-heading p{font:14px/1.5 system-ui,sans-serif;margin:4px 0 0;color:#59634d}
.ft-portal-menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.ft-portal-header .ft-portal-menu-card{display:flex;align-items:center;gap:12px;padding:16px 14px;min-height:88px;background:#f4f6ef;border:1px solid #dbe2d0;border-radius:10px;color:#30391e;text-decoration:none}
.ft-portal-header .ft-portal-menu-card:hover{background:#e8efdc;color:#30391e;border-color:#8d9c74}
.ft-portal-menu-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex:0 0 36px;background:#e4ead9;color:#596d38;border-radius:9px}
.ft-portal-menu-icon svg,.ft-portal-business-icon svg{width:23px;height:23px}
.ft-portal-menu-card strong{display:block;font:700 14px/1.4 system-ui,sans-serif}
.ft-portal-menu-card small{display:block;font:12px/1.5 system-ui,sans-serif;margin-top:4px;color:#59634d}
/* With no JavaScript, the same links are reachable by hover and keyboard. */
.ft-portal-header:not(.ft-mega-enhanced) .ft-portal-panel{display:none}
.ft-portal-header:not(.ft-mega-enhanced) .ft-portal-root:is(:hover,:focus-within) .ft-portal-panel{display:block}
.ft-portal-hero{padding-bottom:40px}
.ft-portal-hero-image{align-self:center;min-height:0;height:420px;max-height:none;aspect-ratio:auto}
.ft-portal-hero-image:after{inset:65% 0 0;background:linear-gradient(transparent,#26321a85)}
.ft-portal-hero-image figcaption{display:flex;align-items:center;gap:12px;bottom:18px;left:18px;right:18px;padding:16px;border:1px solid #ffffff55;border-radius:15px;background:#30391ef2;font:14px/1.5 system-ui,sans-serif;box-shadow:0 4px 18px #15200a29}
.ft-portal-hero-image figcaption strong{display:block;color:#fff;font-size:15px;font-weight:750}
.ft-portal-hero-image figcaption small{display:block;color:#edf0e5;font-size:12px;margin-top:2px}
.ft-portal-caption-check{display:grid;place-items:center;flex:0 0 35px;height:35px;background:#697e40;color:white;border-radius:10px;font-size:24px}
.ft-portal-search{margin-bottom:0}
.ft-portal-home .ft-portal-regions{padding:36px;border:1px solid #9eac8a;border-radius:22px;background:#fff}
.ft-portal-map-layout{display:grid;grid-template-columns:.95fr 1.15fr;gap:48px;align-items:center}
.ft-portal-map-column{min-width:0;text-align:center;padding:8px 0}
.ft-portal-home .ftcat-germany-map{height:470px;max-height:none;width:100%;filter:drop-shadow(0 8px 12px #30391e16)}
.ft-portal-map-column>p{font-size:12px;color:#58634b;margin:20px 0 10px}
.ft-portal-state-list{text-align:left;font-size:13px}
.ft-portal-state-list>summary{cursor:pointer;text-align:center;text-decoration:underline;text-underline-offset:4px;color:#3f512c;padding:8px}
.ft-portal-state-list .ftcat-region-grid{margin-top:16px}
.ft-portal-map-copy h2{font-size:clamp(30px,3.2vw,42px);line-height:1.15;margin:14px 0 20px}
.ft-portal-map-copy>p:not(.ftcat-eyebrow){font-size:16px;line-height:1.7;color:#58634b}
.ft-portal-map-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;list-style:none;margin:24px 0 20px;padding:0}
.ft-portal-map-steps li{display:flex;align-items:center;gap:9px;min-height:76px;margin:0;padding:12px;border-radius:12px;background:#30391e;color:#fff;font-size:13px;font-weight:700;line-height:1.4}
.ft-portal-map-steps li>span{display:grid;place-items:center;flex:0 0 25px;height:25px;border-radius:50%;background:#eef2e6;color:#30391e}
.ft-portal-map-copy .ft-portal-map-status{font-size:12px!important}
.ft-portal-map-credit{display:block;font-size:10px;line-height:1.6;color:#58634b}
.ft-portal-map-labels{pointer-events:none;font:17px/1.2 system-ui,sans-serif;fill:#34432a;text-anchor:middle}
.ft-portal-map-labels .is-small{font-size:15px}
.ft-portal-map-labels .is-ready{font-weight:800}
.ft-portal-home .ftcat-germany-map path{stroke:#fff;stroke-width:2;fill:#dce5ca;opacity:1}
.ft-portal-home .ftcat-germany-map path[data-state=bw],.ft-portal-home .ftcat-germany-map path[data-state=sh],.ft-portal-home .ftcat-germany-map path[data-state=th]{fill:#cadbc3}
.ft-portal-home .ftcat-germany-map path[data-state=by],.ft-portal-home .ftcat-germany-map path[data-state=mv],.ft-portal-home .ftcat-germany-map path[data-state=rp]{fill:#d2e0e3}
.ft-portal-home .ftcat-germany-map path[data-state=ni],.ft-portal-home .ftcat-germany-map path[data-state=sn]{fill:#e8dfbe}
.ft-portal-home .ftcat-germany-map path[data-state=he],.ft-portal-home .ftcat-germany-map path[data-state=bb]{fill:#ded7e6}
.ft-portal-home .ftcat-germany-map path[data-state=st],.ft-portal-home .ftcat-germany-map path[data-state=sl],.ft-portal-home .ftcat-germany-map path[data-state=be],.ft-portal-home .ftcat-germany-map path[data-state=hh],.ft-portal-home .ftcat-germany-map path[data-state=hb]{fill:#e8cdbf}
.ft-portal-home .ftcat-germany-map path[data-state=nw]{fill:#a7bf8a;stroke:#697e40;stroke-width:3}
.ft-portal-home .ftcat-germany-map a:hover path,.ft-portal-home .ftcat-germany-map a:focus path{fill:#819e60;stroke:#30391e;stroke-width:4}
.ft-portal-home .ft-portal-band{background:#30391e;border-radius:20px;padding:34px}
body.ft-editorial .ft-main .ft-portal-band h2{color:#fff;font-size:34px;margin:0 0 8px}
.ft-portal-band-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:26px}
.ft-portal-band-heading p{color:#e5eadb;font-size:15px;margin:0}
.ft-portal-band-heading>a{color:#f5e0be;font-size:13px;font-weight:750;white-space:nowrap}
.ft-portal-home .ft-portal-provider-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0}
.ft-portal-home .ft-portal-provider-card{background:#fffdf8;border:1px solid #aab596;border-radius:14px;padding:0;box-shadow:none}
.ft-portal-provider-card>a{display:block;padding:20px;color:#30391e;text-decoration:none;height:100%}
.ft-portal-provider-card>a:hover{background:#eef2e6;border-radius:14px}
body.ft-editorial .ft-main .ft-portal-provider-card h3{display:flex;gap:12px;justify-content:space-between;font:750 18px/1.35 system-ui,sans-serif;margin:0 0 10px;color:#30391e}
.ft-portal-provider-card h3>span{color:#697e40}
.ft-portal-provider-meta{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px;flex-wrap:wrap}
.ft-portal-provider-meta small{font-size:10px;color:#59634d}
.ft-portal-provider-card p{font-size:14px;line-height:1.65;margin:18px 0 0;color:#59634d}
.ft-portal-business{display:grid;grid-template-columns:1.5fr 1fr;gap:48px;align-items:center}
.ft-portal-business>div>h2{font-size:38px}
.ft-portal-business-benefits{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:28px}
.ft-portal-business-benefits>div{display:flex;gap:12px;align-items:start}
.ft-portal-business-icon{display:grid;place-items:center;flex:0 0 34px;height:34px;color:white;background:#697e40;border-radius:9px}
body.ft-editorial .ft-main .ft-portal-business-benefits h3{font:750 16px/1.4 system-ui,sans-serif;margin:0 0 6px}
.ft-portal-business-benefits p{font-size:14px;line-height:1.6;margin:0;color:#59634d}
.ft-portal-business-card{padding:28px;border-radius:20px;background:#30391e;color:#fff}
body.ft-editorial .ft-main .ft-portal-business-card h3{color:#fff;font:750 26px/1.3 system-ui,sans-serif;margin:0 0 14px}
.ft-portal-business-card p{color:#e5eadb;font-size:14px}
.ft-portal-business-card ol{list-style:none;padding:0;margin:24px 0}
.ft-portal-business-card li{margin:0 0 16px;font-size:13px}
.ft-portal-business-card li>span{display:block;color:#e5eadb;margin-top:3px}
.ft-portal-business-card>a{display:block;text-align:center;background:#f0c286;color:#30391e;font-weight:800;font-size:14px;text-decoration:none;padding:18px 12px;border-radius:10px}
.ft-portal-business-card>a:hover{background:#ffe0b5}
.ft-portal-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.ft-portal-guide-grid article{background:#f0f3e9;border:1px solid #bcc7ac;border-radius:12px}
.ft-portal-guide-grid article>a{display:flex;align-items:start;gap:16px;padding:20px;text-decoration:none;color:#30391e;height:100%}
.ft-portal-guide-grid img{flex:0 0 78px;width:78px;height:92px;object-fit:cover;border-radius:8px}
.ft-portal-guide-grid small{font-size:11px;color:#586b3c}
body.ft-editorial .ft-main .ft-portal-guide-grid h3{font:750 16px/1.4 system-ui,sans-serif;margin:8px 0 12px;color:#30391e}
.ft-portal-guide-grid strong{font-size:12px;color:#586b3c}
.ft-portal-faq{background:#edf0e5;padding:34px;border-radius:20px}
.ft-portal-faq>.ftcat-eyebrow,.ft-portal-faq>h2{text-align:center}
.ft-portal-faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 18px;align-items:start;margin-top:28px}
.ft-portal-home .ft-portal-faq details{margin:0;border:1px solid #cbd4bd;background:#fff;border-radius:12px;padding:0;box-shadow:0 7px 16px #30391e0a}
.ft-portal-home .ft-portal-faq summary{padding:18px;font-size:15px;line-height:1.5;min-height:64px}
.ft-portal-faq details>p{padding:0 18px 18px;margin:0;font-size:14px;line-height:1.7}
@media(max-width:1100px){
 .ft-portal-header .ft-portal-nav>ul.ft-portal-roots{flex-direction:column;align-items:stretch;width:100%;gap:0}
 .ft-portal-header .ft-portal-nav.is-open{align-items:stretch}
 .ft-portal-root-label{justify-content:space-between;border-bottom:1px solid #ccd5bd}
 .ft-portal-header .ft-mega-trigger{width:44px;min-height:44px}
 .ft-portal-header .ft-portal-root-label>a{font-size:15px;flex:1;padding:14px 0}
 .ft-portal-header .ft-portal-panel{position:static;width:100%;padding:18px;margin:8px 0 16px;box-shadow:none}
 .ft-portal-header .ft-portal-nav-cta{align-self:flex-start}
 .ft-portal-map-layout{gap:26px;grid-template-columns:1fr 1.15fr}
 .ft-portal-map-steps{grid-template-columns:1fr}
 .ft-portal-map-steps li{min-height:48px}
 .ft-portal-business{gap:28px;grid-template-columns:1.25fr 1fr}
 .ft-portal-guide-grid article>a{flex-direction:column}
}
@media(max-width:900px){
 .ft-portal-hero-image{height:300px;width:100%;aspect-ratio:auto}
 .ft-portal-map-layout{grid-template-columns:1fr;gap:24px}
 .ft-portal-map-column{order:1}
 .ft-portal-map-steps{grid-template-columns:repeat(3,minmax(0,1fr))}
 .ft-portal-home .ftcat-germany-map{height:450px}
 .ft-portal-home .ft-portal-provider-grid,.ft-portal-guide-grid{grid-template-columns:1fr}
 .ft-portal-guide-grid article>a{flex-direction:row}
 .ft-portal-business{grid-template-columns:1fr}
 .ft-portal-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:540px){
 .ft-portal-header .ft-portal-panel{padding:14px}
 .ft-portal-menu-grid{grid-template-columns:1fr}
 .ft-portal-header .ft-portal-menu-card{min-height:72px}
 .ft-portal-hero-image{height:265px;min-height:0}
 .ft-portal-hero-image figcaption{left:12px;right:12px;bottom:12px;padding:12px;gap:10px}
 .ft-portal-hero-image figcaption strong{font-size:14px}
 .ft-portal-hero-image figcaption small{font-size:11px}
 .ft-portal-home :is(.ft-portal-regions,.ft-portal-band,.ft-portal-faq){padding:22px}
 .ft-portal-home .ftcat-germany-map{height:auto;max-height:430px}
 .ft-portal-map-steps{grid-template-columns:1fr;gap:8px}
 .ft-portal-band-heading{align-items:start;flex-direction:column;gap:12px}
 body.ft-editorial .ft-main .ft-portal-band h2,.ft-portal-business>div>h2{font-size:30px}
 .ft-portal-business-benefits,.ft-portal-faq-grid{grid-template-columns:1fr}
 .ft-portal-business-card{padding:22px}
 .ft-portal-guide-grid article>a{padding:16px;gap:12px}
 .ft-portal-guide-grid img{flex-basis:62px;width:62px;height:82px}
}

/* Seasonal recipes share the portal's cream, olive and warm orange palette. */
.ft-portal-home{--ft-portal-radius:20px;--ft-portal-line:#d3dbc6;--ft-portal-cream:#fffaf2;--ft-portal-olive:#30391e;--ft-portal-rust:#a73505}
.ft-portal-home .ft-portal-recipes{padding:34px;border:1px solid var(--ft-portal-line);border-radius:var(--ft-portal-radius);background:#f2f3e9}
.ft-portal-home .ft-portal-recipes-season{background:#f6e9d8;border-color:#e2ceb0}
.ft-portal-home .ft-portal-recipes-hearty{background:#fffdf8}
.ft-portal-recipes-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:26px}
.ft-portal-recipes-heading>div{max-width:790px}
body.ft-editorial .ft-main .ft-portal-recipes-heading h2{color:var(--ft-portal-olive);font-size:clamp(30px,3vw,40px);line-height:1.14;margin:8px 0 14px}
.ft-portal-recipes-heading p:not(.ftcat-eyebrow){font-size:16px;line-height:1.65;margin:0;color:#59634d}
.ft-portal-home .ft-portal-topic-link{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;text-decoration:none;background:var(--ft-portal-olive);color:#fff;padding:13px 17px;border-radius:9px;font:700 13px/1.5 system-ui,sans-serif}
.ft-portal-home .ft-portal-topic-link:hover{background:var(--ft-portal-rust);color:#fff}
.ft-portal-recipe-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.ft-portal-recipe-card{min-width:0;background:#fffdf8;border:1px solid #d5dccb;border-radius:14px;overflow:hidden;transition:box-shadow .15s ease,transform .15s ease}
.ft-portal-recipe-card:hover{box-shadow:0 8px 24px #30391e19;transform:translateY(-2px)}
.ft-portal-recipe-card>a{display:block;height:100%;color:#30391e;text-decoration:none}
.ft-portal-recipe-card a:focus-visible,.ft-portal-topic-link:focus-visible{outline:3px solid #a73505;outline-offset:4px}
.ft-portal-recipe-photo{position:relative;aspect-ratio:4/3;overflow:hidden;background:#e6e8da}
.ft-portal-recipe-photo img{display:block;width:100%;height:100%;object-fit:cover}
.ft-portal-recipe-photo>span{position:absolute;top:12px;right:12px;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#fffdf8ed;color:#30391e;font-size:18px}
.ft-portal-recipe-copy{padding:18px}
body.ft-editorial .ft-main .ft-portal-recipe-copy h3{font:750 17px/1.4 system-ui,sans-serif;color:#30391e;margin:0 0 16px;overflow-wrap:anywhere}
.ft-portal-recipe-copy>span{display:flex;justify-content:space-between;gap:12px;font:700 12px/1.5 system-ui,sans-serif;color:#697b46}
.ft-portal-recipe-showcase{grid-template-columns:1.1fr 1fr;gap:14px 24px}
.ft-portal-recipe-showcase .is-featured{grid-row:span 3}
.ft-portal-recipe-showcase .is-featured>a{display:grid;grid-template-rows:1fr auto}
.ft-portal-recipe-showcase .is-featured .ft-portal-recipe-photo{aspect-ratio:auto;min-height:250px}
body.ft-editorial .ft-main .ft-portal-recipe-showcase .is-featured h3{font-size:23px;line-height:1.3}
.ft-portal-recipe-showcase .ft-portal-recipe-card:not(.is-featured)>a{display:grid;grid-template-columns:135px minmax(0,1fr);align-items:center}
.ft-portal-recipe-showcase .ft-portal-recipe-card:not(.is-featured) .ft-portal-recipe-photo{aspect-ratio:auto;height:100%;min-height:135px}
.ft-portal-recipe-showcase .ft-portal-recipe-card:not(.is-featured) .ft-portal-recipe-photo>span{display:none}
.ft-portal-recipes-hearty .ft-portal-recipe-grid,.ft-portal-recipes-drinks .ft-portal-recipe-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.ft-portal-home .ft-portal-recipes-drinks{background:#30391e;border-color:#30391e}
body.ft-editorial .ft-main .ft-portal-recipes-drinks h2{color:#fff}
.ft-portal-recipes-drinks .ftcat-eyebrow{color:#f0c286}
.ft-portal-recipes-drinks .ft-portal-recipes-heading p:not(.ftcat-eyebrow){color:#e5eadb}
.ft-portal-home .ft-portal-recipes-drinks .ft-portal-topic-link{background:#f0c286;color:#30391e}
.ft-portal-home .ft-portal-recipes-drinks .ft-portal-topic-link:hover{background:#ffe0b5}
.ft-portal-home :is(.ft-portal-band,.ft-portal-advice,.ft-portal-faq,.ft-portal-business-card){border-radius:var(--ft-portal-radius)}
.ft-portal-home .ft-portal-latest-guides{background:#e9eedf;border:1px solid var(--ft-portal-line)}
body.ft-editorial .ft-main .ft-portal-latest-guides h2{color:#30391e}
.ft-portal-latest-guides .ft-portal-band-heading p{color:#59634d}
.ft-portal-latest-guides .ft-portal-band-heading>a{color:#3f512c}
.ft-portal-latest-guides .ft-portal-guide-grid article{background:#fffdf8;border-color:#d1dbc2}
@media(max-width:1100px){.ft-portal-recipes-heading{align-items:flex-start;flex-direction:column;gap:18px}.ft-portal-recipe-showcase .ft-portal-recipe-card:not(.is-featured)>a{grid-template-columns:110px minmax(0,1fr)}.ft-portal-recipe-copy{padding:15px}.ft-portal-recipe-showcase .ft-portal-recipe-card:not(.is-featured) .ft-portal-recipe-photo{min-height:125px}}
@media(max-width:900px){.ft-portal-recipe-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ft-portal-recipe-showcase{grid-template-columns:1fr 1fr}.ft-portal-recipe-showcase .is-featured{grid-column:1/-1;grid-row:auto}.ft-portal-recipe-showcase .is-featured .ft-portal-recipe-photo{aspect-ratio:16/9}.ft-portal-recipe-showcase .ft-portal-recipe-card:not(.is-featured)>a{display:block}.ft-portal-recipe-showcase .ft-portal-recipe-card:not(.is-featured) .ft-portal-recipe-photo{aspect-ratio:4/3;min-height:0;height:auto}.ft-portal-recipes-hearty .ft-portal-recipe-grid,.ft-portal-recipes-drinks .ft-portal-recipe-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.ft-portal-home .ft-portal-recipes{padding:22px}.ft-portal-recipe-grid,.ft-portal-recipe-showcase,.ft-portal-recipes-hearty .ft-portal-recipe-grid,.ft-portal-recipes-drinks .ft-portal-recipe-grid{grid-template-columns:1fr}.ft-portal-recipes-heading{margin-bottom:22px}.ft-portal-home .ft-portal-topic-link{width:100%}.ft-portal-recipe-showcase .is-featured .ft-portal-recipe-photo{aspect-ratio:4/3;min-height:0}.ft-portal-recipe-showcase .ft-portal-recipe-card:not(.is-featured)>a{display:grid;grid-template-columns:100px minmax(0,1fr)}.ft-portal-recipe-showcase .ft-portal-recipe-card:not(.is-featured) .ft-portal-recipe-photo{aspect-ratio:auto;min-height:120px;height:100%}body.ft-editorial .ft-main .ft-portal-recipe-showcase .is-featured h3{font-size:20px}.ft-portal-recipe-showcase .ft-portal-recipe-card:not(.is-featured) h3{font-size:15px}.ft-portal-recipe-grid{gap:14px}}
@media(prefers-reduced-motion:reduce){.ft-portal-recipe-card{transition:none}.ft-portal-recipe-card:hover{transform:none}}

/* Available drink recipes fill the row without an empty third slot. */
.ft-portal-recipes-drinks .ft-portal-recipe-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}
.ft-portal-recipes-drinks .ft-portal-recipe-photo{aspect-ratio:16/10}
