/* Warm, modern layout shared by all portal pages. */
:root{--green:#29463b;--cream:#f8f7f2;--lime:#e5eddf;--orange:#b75536;--sans:system-ui,-apple-system,"Segoe UI",Arial,sans-serif}
body{font:16px/1.6 var(--sans);background:var(--cream)}
h1,h2,h3{font-family:var(--sans);font-weight:650;line-height:1.15;text-wrap:balance;letter-spacing:-.8px}h1{font-size:clamp(38px,4.4vw,62px)}h2{font-size:clamp(27px,3vw,38px)}h3{letter-spacing:-.5px}a{text-underline-offset:4px}a:hover{color:var(--orange)}
header{position:relative;background:#fff;border-bottom:1px solid #29463b12}header .nav{max-width:1320px;padding:16px 5%;gap:22px}.brand{font:750 23px/1.05 var(--sans);letter-spacing:-.6px}.brand span{display:none}.brand small{font:10px/1.5 var(--sans);letter-spacing:1.5px;margin-top:8px;color:#66756d}nav{font-size:13px;gap:20px}.contact{font-size:12px;border-radius:8px;border-color:#29463b30}.project-logo{width:70px}.edition-line{display:none}
.eyebrow{font:650 11px/1.5 var(--sans);letter-spacing:1.4px;color:var(--orange)}.wrap{max-width:1280px;padding:36px 5%}.sectionhead{gap:25px;margin-bottom:24px}.sectionhead p{font-size:15px;line-height:1.65}
.hero{max-width:1280px;margin:24px auto 0;min-height:0;grid-template-columns:1.05fr 1fr;padding:20px 5% 30px;gap:36px}.intro{padding:20px 0}.intro h1{font-size:clamp(42px,4.8vw,66px);margin:20px 0;line-height:1.06;letter-spacing:-2px}.intro h1 em{font-family:Georgia,serif;font-weight:400}.intro p{font-size:17px;line-height:1.7;max-width:520px}.hero-video{background:#e9eee4;border-radius:18px;padding:24px;align-self:center}.hero-video-screen{border-radius:10px}.hero-video-copy h2{font-size:25px;line-height:1.2;margin:10px 0}.hero-video-copy p{font-size:14px}.hero-video-copy .eyebrow{font-size:9px}.hero-video-copy a{font-size:12px}
.ribbon{background:transparent;color:#67796b;border-top:1px solid #29463b15;border-bottom:1px solid #29463b15;padding:13px 5%;font:600 10px/1.5 var(--sans);letter-spacing:1.3px}
.btn{border-radius:8px;padding:11px 17px;font-size:13px;font-weight:600}.btn:hover{background:var(--orange);color:#fff}.btn.light:hover{background:var(--green);color:white}.buttons{margin-top:20px;gap:10px}.search{border-radius:10px;border-color:#29463b25;padding:12px 16px;font-size:14px}.filters button{border-radius:7px;font-size:12px;border-color:#29463b25;padding:7px 13px}.filters{gap:8px}
.grid{gap:16px}.card{background:#fff;border:1px solid #29463b12;border-radius:12px;padding:23px;min-height:215px;box-shadow:0 3px 16px #29463b03}.card small{color:#758579;font-size:10px;letter-spacing:1.2px}.card h3{font-size:23px;margin:14px 0 10px}.card p{font-size:14px;line-height:1.65}.card a{font-size:12px;font-weight:650}.card:hover{border-color:#29463b35}.twocol{gap:20px}.panel{border-radius:14px;background:#eaf0e5;padding:27px;border:0}.panel h3{font-size:26px}.panel p{font-size:15px;line-height:1.7;max-width:650px}.home main>.wrap>.panel{background:#eadfd1}.dark{background:var(--green)}.dark .eyebrow{color:#dae7c2}.dark .wrap{gap:40px}.step h3{font-size:22px}.step p{font-size:14px}.step:before{font-size:14px}
.subhero,.mapintro{max-width:1280px;margin:0 auto;padding:30px 5% 24px;background:transparent}.subhero h1,.mapintro h1{font-size:clamp(35px,4vw,54px);margin:17px 0;line-height:1.12}.subhero p,.mapintro p{font-size:18px;line-height:1.65;max-width:850px}.crumb{font:12px/1.5 var(--sans);color:#6e7a71}.subnav{gap:7px}.subnav a{border-radius:7px;font-size:12px;padding:7px 12px}.contentlayout{gap:32px}.contentlayout h2,.articlepart h2{font-size:26px}.articlepart{border-color:#29463b16;margin-bottom:20px;padding-bottom:18px}.articlepart p{font-size:16px;line-height:1.75;max-width:75ch}.articlepart li{margin:7px 0}.worksheet,.sources{border-radius:12px;border:1px solid #29463b15;background:#eef2e8;padding:23px}.worksheet textarea{border-radius:7px;font-size:14px}.worksheet label{font-size:13px}.sources h3{font-size:23px}
.video{background:#fff;border:1px solid #29463b12;border-radius:12px;padding:23px;margin:20px 0}.video h3{font-size:23px;line-height:1.3}.video p{font-size:15px;line-height:1.7}.video-embed{border-radius:8px}.collection h2{font-size:28px}.cataloggrid{gap:18px}.catalogfilters select{border-radius:8px}.watchlinks{font-size:12px}.prompt{border-radius:12px}.prompt h2{font-size:26px}.prompttext{border-radius:8px;font-size:14px}.example,.aiflow div,.strategy-note,.mapguide div{border-radius:12px}.strategy-figure{border-radius:12px;overflow:hidden}.strategy-figure figcaption{font:12px/1.6 var(--sans)}.mapbox{border-radius:12px;overflow:hidden}
.about{border-color:#29463b20;gap:36px}.facts{font-size:13px}.facts div{padding:12px 0;border-color:#29463b20}.footer{background:#e5eddf}.footer h2{font-size:30px}.footer .wrap{padding-top:30px;padding-bottom:24px}.contact-person p{font-size:18px}.contact-person img{border-radius:10px}.footline{font-size:11px;color:#64776b;line-height:1.6}.funding-strip{background:#fff}.funding-eu{margin-left:auto;align-self:flex-end}
@media(max-width:1050px){nav{gap:12px;font-size:12px}.contact{display:none}}
@media(max-width:850px){header .nav{padding:16px 6%;padding-right:105px;gap:16px}.project-logo{width:60px;top:16px}.hero{grid-template-columns:1fr;margin-top:0;padding:25px 6%;gap:20px}.intro{padding:0}.intro h1{font-size:50px}.hero-video{padding:22px}.wrap{padding:30px 6%}.subhero,.mapintro{padding:28px 6%}.dark .wrap{gap:25px}}
@media(max-width:550px){.brand{font-size:23px}nav{font-size:11px;gap:11px 16px;margin-top:16px}.hero h1{font-size:42px}.intro p{font-size:16px}.hero-video-copy h2{font-size:24px}.grid,.twocol,.cataloggrid{grid-template-columns:1fr}.card{min-height:0;padding:21px}.card h3{font-size:23px}.subhero h1,.mapintro h1{font-size:35px;overflow-wrap:anywhere}.subhero p,.mapintro p{font-size:16px}.panel{padding:23px}.footer h2{font-size:26px}.ribbon{justify-content:center;gap:10px 18px;font-size:9px}.articlepart p{font-size:16px}.video{padding:18px}.facts div{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

header nav{flex-wrap:wrap;row-gap:7px}.toc-jumps{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.toc-jumps a{font-size:12px;border:1px solid #29463b25;padding:7px 12px;border-radius:7px;text-decoration:none}.toc-jumps a:hover{background:#e5eddf}.toc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:start}.toc-group{background:#fff;border:1px solid #29463b12;border-radius:14px;padding:25px;scroll-margin-top:24px}.toc-group h2{font-size:25px;margin:0 0 14px}.toc-group ul{list-style:none;margin:0;padding:0}.toc-group li{padding:13px 0;border-top:1px solid #29463b15}.toc-group li a{display:flex;justify-content:space-between;gap:16px;font-weight:650;text-decoration:none;font-size:15px}.toc-group li p{font-size:13px;color:#66756d;line-height:1.6;margin:5px 0 0}.toc-group a:focus-visible{outline:3px solid var(--orange);outline-offset:4px}@media(max-width:650px){.toc-grid{grid-template-columns:1fr;gap:20px}.toc-group{padding:21px}.toc-group h2{font-size:23px}.toc-jumps{gap:7px}}

.recipe-figure{margin:24px 0}.recipe-figure img{display:block;width:100%;height:auto;border-radius:12px;border:1px solid #29463b20}.recipe-figure>a{display:block;cursor:zoom-in}.recipe-figure figcaption{font-size:12px;color:#66756d;line-height:1.6;padding:12px 0}.recipe-figure figcaption a{white-space:nowrap}.recipe-example>p{max-width:850px;font-size:17px;line-height:1.7}.recipe-process{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.recipe-process .panel h3{font-size:23px}.recipe-prompt{margin:20px 0;padding:22px;border-left:3px solid var(--orange);background:#ffffff90;line-height:1.8;font-size:16px}#recipe-viewer{width:min(96vw,1800px);max-width:96vw;max-height:94vh;border:0;border-radius:12px;padding:16px;background:#fff}#recipe-viewer::backdrop{background:#14251de0}#recipe-viewer form{position:sticky;top:0;display:flex;justify-content:flex-end;margin-bottom:12px}#recipe-viewer img{display:block;width:100%;height:auto}@media(max-width:650px){.recipe-process{grid-template-columns:1fr}.recipe-prompt{padding:16px}.recipe-figure img{border-radius:8px}}

/* Shared navigation and discovery. */.nav{position:relative}.nav .brand{flex-shrink:0}.nav .contact{display:none}header nav{margin-left:auto;align-items:center;font-size:12px;gap:18px}header nav>[aria-current],.nav-current{color:var(--orange);font-weight:700}.menu-toggle{display:none}.topic-menu summary{cursor:pointer;list-style:none;padding:6px 0}.topic-menu summary::after{content:' ⌄'}.topic-dropdown{position:absolute;top:calc(100% - 3px);left:5%;right:5%;background:#fff;border:1px solid #29463b20;border-radius:12px;box-shadow:0 12px 32px #24382f20;padding:22px;z-index:30;max-height:75vh;overflow:auto}.topic-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:16px 0}.topic-columns strong{display:block;color:var(--green);font-size:13px;margin-bottom:8px}.topic-columns a{display:block;font-size:12px;padding:5px 0}.topic-overview{font-weight:650}.topic-context{padding-top:0;padding-bottom:15px}.topic-context details{border:1px solid #29463b20;border-radius:10px;background:#eef2e8}.topic-context summary{cursor:pointer;padding:13px 18px;font-size:13px;font-weight:650}.topic-context nav{display:flex;flex-wrap:wrap;gap:8px;padding:0 18px 18px;margin:0}.topic-context a{padding:7px 11px;font-size:12px;background:white;border-radius:7px;text-decoration:none;border:1px solid #29463b15}.topic-context [aria-current]{background:var(--green);color:#fff}.next-reading{border-top:1px solid #29463b15}.next-reading h2{font-size:25px}.showroom-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.showroom-card{background:#fff;border-radius:14px;border:1px solid #29463b15;overflow:hidden}.showroom-card>a{display:block;text-decoration:none}.showroom-card img{display:block;width:100%;height:240px;object-fit:contain;background:#eeeee6}.showroom-card>a>div{padding:23px}.showroom-card h2{font-size:25px;margin-top:0}.showroom-card p{font-size:15px}.showroom-card span{font-size:12px;font-weight:650}.site-search-row{display:flex;gap:12px;margin-top:10px}.site-search-row button{border:0;cursor:pointer}.search-results{max-width:900px}.search-results article{border-top:1px solid #29463b20;padding:19px 0}.search-results h2{font-size:24px;margin-top:0}.search-results p{font-size:14px;color:#66756d}.topic-menu summary:focus-visible,.menu-toggle:focus-visible{outline:3px solid var(--orange);outline-offset:4px}@media(max-width:1050px){header nav{gap:12px;font-size:11px}.project-logo{width:60px}}@media(max-width:850px){header .nav{display:flex;flex-wrap:wrap;padding:15px 6%;gap:15px;align-items:center}.menu-toggle{display:block;margin-left:auto;background:transparent;border:1px solid #29463b30;border-radius:7px;padding:9px 12px;color:var(--green);font-size:12px;cursor:pointer}.project-logo{position:static;width:52px;margin:0}.nav #primary-nav{display:none;order:5;width:100%;margin:0;flex-direction:column;align-items:stretch;gap:0;padding-top:8px}.nav #primary-nav.is-open{display:flex}.nav #primary-nav>a,.topic-menu summary{font-size:14px;padding:12px 0;border-bottom:1px solid #29463b15}.topic-dropdown{position:static;box-shadow:none;padding:16px;border-radius:8px;max-height:none}.topic-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.topic-columns a{font-size:12px}.topic-context nav{font-size:12px}.topic-context{padding-top:0}}@media(max-width:550px){.showroom-grid,.topic-columns{grid-template-columns:1fr}.showroom-card img{height:210px}.nav .brand{font-size:21px}.project-logo{width:42px}.menu-toggle{padding:8px 10px}.topic-context summary{font-size:12px}.site-search-row{gap:8px}.site-search-row input{min-width:0}.showroom-card h2{font-size:23px}}

.workshop-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start}.workshop-item{background:white;border:1px solid #29463b15;border-radius:14px;overflow:hidden}.workshop-image{display:block;background:#eae7df;cursor:zoom-in}.workshop-image img{display:block;width:100%;height:300px;object-fit:contain}.workshop-description{padding:21px}.workshop-description h2{font-size:23px;margin:10px 0}.workshop-description p{font-size:14px;line-height:1.7}.workshop-description>a{font-size:12px}.gallery-toolbar #gallery-count{font-size:12px;color:#66756d}.viewer-controls{display:flex;flex-wrap:wrap;align-items:center;gap:10px;position:sticky;top:0;background:white;padding:8px 0}.viewer-controls button{padding:9px 12px;border:1px solid #29463b30;border-radius:7px;background:var(--cream);cursor:pointer;font-size:12px;color:var(--green)}#gallery-close{margin-left:auto}#viewer-position{font-size:12px}#workshop-viewer{width:min(94vw,1000px);max-width:94vw;max-height:94vh;border:0;border-radius:12px;padding:18px;background:white}#workshop-viewer::backdrop{background:#14251de0}#workshop-viewer h2{font-size:25px;margin:14px 0}#workshop-large{display:block;width:100%;height:auto;max-height:68vh;object-fit:contain}#workshop-viewer-caption{font-size:14px;line-height:1.6}@media(max-width:950px){.workshop-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:550px){.workshop-gallery{grid-template-columns:1fr}.workshop-image img{height:auto;max-height:470px}.viewer-controls{gap:6px}.viewer-controls button{padding:8px;font-size:11px}.workshop-description{padding:19px}}

.idea-suggestions{background:#f1f4eb;border-radius:8px;padding:14px;margin:16px 0}.idea-suggestions h3{font-size:13px;letter-spacing:0;margin:0 0 6px;font-weight:700}.idea-suggestions p{font-size:13px;margin:0 0 14px}.idea-suggestions p:last-child{margin-bottom:0}.workshop-gallery .workshop-item{height:100%}

.workshop-variant{display:flex;align-items:center;gap:12px;padding:10px;border:1px solid #29463b20;border-radius:8px;margin:12px 0;text-decoration:none;font-size:12px;cursor:zoom-in}.workshop-variant img{width:65px;height:75px;object-fit:contain;border-radius:5px;background:#eee}.workshop-variant span{font-weight:600}

/* Make the complete contents accessible without opening a submenu. */header nav>.all-pages-link{background:var(--green);color:#fff;padding:8px 11px;border-radius:7px;font-weight:650;white-space:nowrap}.all-pages-link:hover{background:var(--orange);color:#fff}.mobile-contents{display:none}.discovery-bar{max-width:1152px;margin:0 auto;padding:10px 0;display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #29463b18;font:12px/1.5 var(--sans)}.discovery-bar a{text-decoration:none}.discovery-bar a:first-child{font-weight:650}.discovery-bar [aria-current]{color:var(--orange)}@media(max-width:1100px){header nav{gap:10px;font-size:11px}.nav .brand{font-size:21px}}@media(max-width:850px){.mobile-contents{display:block;font-size:11px;font-weight:650;text-decoration:none;background:var(--green);color:#fff;padding:9px 11px;border-radius:7px;margin-left:auto}.menu-toggle{margin-left:0}.nav #primary-nav>.all-pages-link{padding:12px;border-bottom:0;margin-bottom:7px}.discovery-bar{margin:0 6%;font-size:11px;gap:12px;padding:10px 0}header .nav{gap:11px}}@media(max-width:550px){header .nav{gap:8px}.nav .brand{font-size:20px}.mobile-contents{padding:8px;font-size:10px}.menu-toggle{padding:8px;font-size:10px}.project-logo{width:35px}.discovery-bar{font-size:10px;gap:10px}.discovery-bar a:last-child{white-space:nowrap}.hero .buttons{gap:9px}}@media(max-width:380px){header .nav{padding-left:5%;padding-right:5%}.nav .brand{font-size:18px}.project-logo{width:29px}.mobile-contents,.menu-toggle{font-size:9px;padding:7px}.discovery-bar{margin:0 5%}}

.ai-service-help{margin:22px 0 28px;border:1px solid #29463b25;border-radius:12px;background:#eef2e8;overflow:hidden}.ai-service-start{padding:20px;display:flex;gap:20px;align-items:center}.ai-service-start p{margin:0;flex:1;font-size:15px;line-height:1.7}.ai-service-start .btn{white-space:nowrap}.ai-service-help summary{padding:16px 20px;cursor:pointer;font-size:15px;font-weight:650;background:#fff;border-top:1px solid #29463b20}.ai-service-help summary span{display:block;font-size:12px;font-weight:400;color:#66756d;margin-top:5px}.ai-service-content{padding:20px}.ai-service-content>h3{font-size:23px;margin-top:0}.ai-service-content ol{padding-left:22px;font-size:15px;line-height:1.8}.ai-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:22px 0}.ai-service-grid article{padding:20px;background:#fff;border-radius:9px;border:1px solid #29463b15}.ai-service-grid h3{font-size:20px;margin:0 0 10px}.ai-service-grid p{font-size:14px;line-height:1.7}.ai-service-grid a{font-size:12px}.ai-service-help summary:focus-visible{outline:3px solid var(--orange);outline-offset:-4px}@media(max-width:600px){.ai-service-start{display:block}.ai-service-start .btn{margin-top:14px}.ai-service-grid{grid-template-columns:1fr}.ai-service-content,.ai-service-help summary,.ai-service-start{padding:18px}}

.discovery-bar{justify-content:flex-start;flex-wrap:wrap;gap:10px 24px}.discovery-bar a:last-child{margin-left:auto}.discovery-bar .banner-home{font-weight:650}.discovery-bar a:nth-child(2){font-weight:650}@media(max-width:550px){.discovery-bar{gap:8px 16px}.discovery-bar a:last-child{margin-left:0}}

.tools-navigation{padding-top:0;padding-bottom:10px}.tools-navigation details{background:#edf2e8;border:1px solid #29463b25;border-radius:10px}.tools-navigation summary{cursor:pointer;padding:15px 20px;font-size:14px;font-weight:650}.tools-navigation nav{display:block;padding:0 20px 20px;font-size:13px;margin:0}.tools-navigation-groups{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:17px}.tools-navigation-groups h2{font-size:16px;letter-spacing:0;margin:0 0 10px}.tools-navigation-groups a{display:block;padding:8px 10px;border-radius:6px;font-size:12px;text-decoration:none;line-height:1.6;margin-bottom:3px}.tools-navigation [aria-current]{background:var(--green);color:white;font-weight:650}.tools-overview{display:inline-block;padding:9px 12px}.tools-navigation summary:focus-visible{outline:3px solid var(--orange);outline-offset:-4px}@media(max-width:950px){.tools-navigation-groups{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:550px){.tools-navigation-groups{grid-template-columns:1fr;gap:16px}.tools-navigation summary{font-size:13px;padding:14px 18px}.tools-navigation nav{padding:0 18px 18px}}
