@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500;1,600&display=swap');
:root{--green:#203c30;--ink:#21362c;--cream:#f7f5ee;--gold:#dfb86e;--line:#d8ded4}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a,button,summary,input,select,textarea{outline-offset:5px}button,a,summary{-webkit-tap-highlight-color:transparent}h1,h2,h3,p{margin-top:0}h1,h2{font-family:'Playfair Display',Georgia,serif;font-weight:500;letter-spacing:-.045em;line-height:1.12}h2{font-size:clamp(36px,4.3vw,62px);margin-bottom:25px}h3{font-size:24px;line-height:1.3;font-weight:500;margin-bottom:12px}em{font-weight:500}p{margin-bottom:20px}.draft{padding:7px 5%;background:#e9e7dd;font-size:10px;letter-spacing:1.5px;display:flex;justify-content:space-between}.draft span{letter-spacing:.4px}header{height:96px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;font-size:32px;font-weight:700;letter-spacing:-1.8px;line-height:1}.brand svg{width:43px;margin-right:10px;fill:none;stroke:currentColor;stroke-width:2.5}.brand>span{font-size:9px;align-self:flex-start;margin-left:3px;margin-top:3px}nav{display:flex;gap:34px;font-size:13px}nav a:hover,.text-link:hover{text-decoration:underline}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:38px;background:var(--green);color:#fff;border:0;padding:17px 24px;font-size:13px;font-weight:600;cursor:pointer;transition:background .2s}.button:hover{background:#365344}.button.small{padding:13px 19px}.button span{font-size:20px;line-height:1}.gold{background:var(--gold);color:#233b2d}.gold:hover{background:#ecc783}.hero{position:relative;min-height:690px;height:calc(100svh - 125px);max-height:900px;color:#fff;margin:0 20px;isolation:isolate;background:#3d5345;overflow:hidden}.hero-image{position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,32,26,.76),rgba(13,32,26,.12)),linear-gradient(0deg,rgba(13,32,26,.6),transparent 40%),url('hero-forside.png') center/cover;z-index:-1}.hero-content{padding:64px 6% 110px}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2.3px;margin-bottom:25px}.green{color:#68735f}h1{font-size:clamp(66px,7.8vw,116px);line-height:.99;margin-bottom:24px}h1 em{color:#e3bf7d}.hero-copy{font-size:17px;line-height:1.6;color:#eeeee7}.hero-bottom{position:absolute;bottom:30px;left:6%;right:6%;display:flex;gap:30px;align-items:center;font-size:11px;letter-spacing:1px;border-top:1px solid #ffffff40;padding-top:20px}.hero-bottom span:nth-child(2){letter-spacing:0;margin-left:auto}.hero-bottom a{font-size:25px}.photo-note{position:absolute;bottom:6px;right:15px;font-size:8px;color:#ddd}.section{padding:100px max(6%,calc((100vw - 1200px)/2))}.intro{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.intro-copy{max-width:510px;color:#576155}.intro-copy p:first-child{font-size:20px;color:var(--ink)}.text-link{display:inline-flex;gap:50px;border-bottom:1px solid #74816e;padding-bottom:8px;font-size:13px;color:var(--ink)}.facts{display:grid;grid-template-columns:repeat(4,1fr);padding:32px 6%;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.facts div{text-align:center;border-right:1px solid var(--line)}.facts div:last-child{border:0}.facts strong{display:block;font-family:Georgia,serif;font-size:25px;font-weight:400}.facts span{font-size:12px;color:#687160}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:24px}.section-head>p{font-size:13px;max-width:340px;color:#677161}.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.experience{min-height:420px;padding:27px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.experience>div:last-child{position:relative;z-index:1}.experience p{font-size:13px;margin-bottom:0;line-height:1.7;max-width:290px}.number{font-size:10px;letter-spacing:1.8px;position:relative;z-index:1}.landscape{color:#fff;background:linear-gradient(0deg,#142c25 0%,#142c2510 90%),url('https://beertrail.freefox17.chatgpt.site/assets/krkonose-preview.jpg') 62% center/cover}.beer{background:#e9bf72}.stay{background:#dce2d6}.beer-art{height:165px;display:grid;place-items:center}.mug{width:92px;height:119px;background:linear-gradient(#fff9df 0 20%,#b76b1c 20% 25%,#cf8526 25%);border:5px solid #fff7d4;border-radius:8px 8px 17px 17px;position:relative;display:flex;justify-content:space-evenly;align-items:end;padding-bottom:12px;transform:rotate(-7deg);box-shadow:7px 8px 0 #70511f12}.mug:after{content:'';position:absolute;right:-40px;top:15px;width:28px;height:55px;border:7px solid #fff7d4;border-left:0;border-radius:0 18px 18px 0}.mug i{height:62px;width:5px;background:#ffe5a47a;border-radius:5px}.cabin{width:190px;height:155px;align-self:center;fill:none;stroke:#58705a;stroke-width:2}.how{background:var(--green);color:#f5f1e6;display:grid;grid-template-columns:1fr 1fr;gap:100px}.how .eyebrow{color:#d2bb8e}.how-intro{max-width:420px;color:#d8dfd5}.subtle{max-width:380px;color:#aebfb0;font-size:12px}.steps{list-style:none;margin:0;padding:0}.steps li{display:flex;gap:25px;padding:24px 0;border-top:1px solid #ffffff26}.steps li:first-child{padding-top:0;border:0}.steps li>span{color:#d9bc82;font-size:12px;padding-top:4px}.steps h3{font-size:20px}.steps p{font-size:13px;color:#bfcbbf;margin:0}.about{display:grid;grid-template-columns:1fr 1.2fr;gap:100px;align-items:center}.about-stamp{width:290px;height:290px;border:1px solid #7c8978;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;margin:auto;transform:rotate(-10deg);outline:1px solid #a7b0a0;outline-offset:9px;color:#566b54}.about-stamp span:first-child{font-weight:700;letter-spacing:5px;font-size:26px}.about-stamp span:last-child{letter-spacing:2px;font-size:9px}.about-stamp svg{width:140px;height:110px;fill:none;stroke:currentColor;stroke-width:2}.about p:not(.eyebrow){color:#63705f;font-size:15px}.signature{font-family:Georgia,serif;font-style:italic;font-size:25px}.signature span{font-family:'DM Sans',Arial,sans-serif;font-style:normal;font-size:11px;color:#747b6b;margin-left:8px}.faq{padding-top:55px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.2fr;gap:100px}.questions details{border-bottom:1px solid var(--line);padding:21px 0}.questions details:first-child{padding-top:0}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.questions summary{display:flex;justify-content:space-between;gap:20px;font-size:15px}.questions summary span{font-size:22px;color:#89917e}.questions details[open] summary span{transform:rotate(45deg)}.questions details p{margin:15px 30px 0 0;font-size:13px;color:#687160}.request{background:#e9eddf;display:grid;grid-template-columns:1fr 1.15fr;gap:100px}.request>div>p:not(.eyebrow){max-width:380px;color:#66725c;font-size:15px}.demo-note{margin-top:28px;border-left:2px solid #a5af90;padding-left:16px;max-width:360px;font-size:12px}.demo-note p{margin:5px 0;color:#69725f}label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:600;margin-bottom:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}input,select,textarea{border:1px solid #c8cfbd;background:#f9faf4;color:var(--ink);padding:13px;width:100%;font-size:13px;border-radius:0}textarea{resize:vertical}form .button{width:100%}.form-foot{font-size:10px;color:#778169;margin:10px 0}#result{margin-top:20px;padding:20px;border:1px solid #a6b199;background:#f8faf2;font-size:14px}#result h3{font-size:20px}#result p:last-child{margin:0;font-size:12px}footer{padding:50px 6% 25px;display:flex;flex-wrap:wrap;align-items:center;gap:30px}footer>.brand{font-size:28px}footer>p{margin:0;font-size:12px;color:#76816c}footer>span{margin-left:auto;font-size:10px;color:#76816c}.credits{width:100%;border-top:1px solid var(--line);padding-top:20px;font-size:10px;color:#7b8373}.credits p{max-width:850px;margin:12px 0}.credits a{text-decoration:underline}
@media(min-width:1500px){.hero-content{padding-left:max(6%,calc((100vw - 1240px)/2))}}@media(max-width:1000px){nav{gap:16px}.section{padding:70px 6%}.intro,.how,.about,.faq,.request{gap:40px}.experience{padding:20px;min-height:410px}h3{font-size:21px}.about-stamp{width:230px;height:230px}}@media(max-width:700px){.draft{font-size:8px}.draft span{font-size:8px}header{height:80px;padding:0 6%;gap:10px}header nav{display:none}.brand{font-size:27px}.brand svg{width:33px}.small.button{font-size:10px;padding:11px 12px;gap:13px}.hero{margin:0 10px;min-height:650px;height:auto}.hero-content{padding:50px 7% 105px}.hero .eyebrow{font-size:8px;letter-spacing:1.4px}h1{font-size:clamp(44px,11.5vw,76px)}.hero-copy{font-size:15px}.hero-bottom{font-size:8px;gap:10px;left:7%;right:7%}.hero-bottom span:nth-child(2){max-width:140px;text-align:right}.section{padding:60px 7%}.intro,.how,.about,.faq,.request{grid-template-columns:1fr;gap:30px}.intro-copy p:first-child{font-size:18px}.facts{grid-template-columns:1fr 1fr;gap:25px 0;padding:30px 4%}.facts div:nth-child(2){border:0}.facts strong{font-size:24px}.section-head{display:block}.section-head>p{max-width:100%}.experience-grid{grid-template-columns:1fr}.experience{min-height:360px;padding:26px}.landscape{min-height:430px}.experience p{max-width:100%;font-size:14px}.beer-art{position:absolute;right:50px;top:62px}.cabin{position:absolute;right:30px;top:45px}.experience>div:last-child{margin-top:auto}.how{gap:35px}.about-stamp{width:200px;height:200px;margin:15px auto 30px}.about-stamp span:first-child{font-size:21px}.about-stamp svg{width:110px;height:85px}.about-stamp span:last-child{font-size:7px}.questions summary{font-size:14px}.request{gap:35px}.form-row{grid-template-columns:1fr;gap:0}footer{padding:35px 7%;gap:20px}footer>span{margin-left:0;width:100%}.photo-note{font-size:6px}.desktop{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Mountain, winding trail and waterfall form a single monochrome mark. */
.brand .brand-mountain{width:43px;height:40px;flex-shrink:0;margin-right:10px;stroke:none}
@media(max-width:700px){.brand .brand-mountain{width:33px;height:31px;margin-right:8px}}

/* Approved emblem, with a compact matching mountain mark for navigation. */
.about-stamp{width:min(100%,360px);height:auto;border:0;border-radius:0;outline:0;transform:none;display:block;margin:0 auto;color:inherit}
.about-stamp img{display:block;width:100%;height:auto;mix-blend-mode:darken}
.brand .brand-mountain{width:57px;height:36px;margin-right:10px}
@media(max-width:700px){.about-stamp{width:min(100%,280px);margin:0 auto 20px}.brand .brand-mountain{width:44px;height:29px;margin-right:8px}}

/* Two stamp goals and participant-managed official rewards. */
.stamp-routes{background:#edf0e7}.stamp-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.stamp-card{background:var(--cream);border:1px solid #d5dccf;padding:36px;position:relative}.stamp-card>.eyebrow{padding-right:65px;min-height:32px}.stamp-card h3{font-family:'Playfair Display',Georgia,serif;font-size:34px;line-height:1.2}.stamp-card>p:not(.eyebrow){font-size:14px;color:#63705f;max-width:390px}.stamp-count{position:absolute;right:30px;top:25px;width:58px;height:58px;border:1px solid #829278;border-radius:50%;display:grid;place-items:center;font-family:Georgia,serif;font-size:32px;color:#50644c}.stamp-reward{border-top:1px solid var(--line);margin-top:28px;padding-top:22px}.stamp-reward>span{font-size:9px;letter-spacing:1.5px;color:#68735f;display:block;margin-bottom:8px}.stamp-reward strong{display:block;font-size:19px;font-weight:500;margin-bottom:9px}.stamp-reward p{font-size:13px;color:#63705f;margin:0}.stamp-practical{margin-top:28px;max-width:900px}.stamp-practical h3{font-size:18px}.stamp-practical p{font-size:13px;color:#586650;margin-bottom:12px}.stamp-practical .stamp-season{font-size:11px;color:#68735f}.stamp-season a{text-decoration:underline;text-underline-offset:3px}@media(max-width:700px){.stamp-grid{grid-template-columns:1fr;gap:18px}.stamp-card{padding:26px}.stamp-count{right:24px;top:20px;width:50px;height:50px;font-size:28px}.stamp-card h3{font-size:30px}}

/* Distinct route colors within the Beertrail palette. */
.stamp-card-five{background:#eee0c2;border-color:#ddc9a1;color:#203c30}
.stamp-card-five>.eyebrow,.stamp-card-five>p:not(.eyebrow),.stamp-card-five .stamp-reward p,.stamp-card-five .stamp-reward>span{color:#46543f}
.stamp-card-five .stamp-count{background:#f7efdf;border-color:#968568;color:#203c30;display:flex;align-items:center;justify-content:center;line-height:1;font-variant-numeric:lining-nums;padding-left:1px}
.stamp-card-five .stamp-reward{border-color:#b6a789}
.stamp-card-eight{background:#203c30;border-color:#203c30;color:#f7f5ee}
.stamp-card-eight>.eyebrow,.stamp-card-eight .stamp-reward>span{color:#e5c487}
.stamp-card-eight>p:not(.eyebrow),.stamp-card-eight .stamp-reward p{color:#dce5d9}
.stamp-card-eight .stamp-count{background:#dfb86e;border-color:#dfb86e;color:#203c30}
.stamp-card-eight .stamp-reward{border-color:#607567}

/* Editorial route guides and original schematic maps. */
.route-card-link{display:inline-flex;gap:25px;align-items:center;font-size:13px;font-weight:600;border-bottom:1px solid currentColor;padding-bottom:4px}.route-card-link:hover{opacity:.75}.route-lead{max-width:650px;color:#63705f}.route-detail{margin-top:65px;border-top:3px solid #b59b62;padding-top:35px;scroll-margin-top:30px}.route-eight{border-color:var(--green);margin-top:90px}.route-heading{display:flex;justify-content:space-between;align-items:center;gap:30px}.route-heading h3{font-family:'Playfair Display',Georgia,serif;font-size:38px;letter-spacing:-1px;line-height:1.15}.route-heading .eyebrow{margin-bottom:18px}.route-facts{display:flex;gap:32px;font-size:11px;color:#63705f;flex-shrink:0}.route-facts span{display:flex;flex-direction:column}.route-facts strong{font-family:Georgia,serif;font-size:28px;font-weight:400;color:var(--green)}.route-intro{max-width:850px;font-size:15px;color:#63705f;margin:20px 0 30px}.route-figure{margin:0;background:#eee8d9;border:1px solid #ded6c4}.route-eight .route-figure{background:#e6ebe2;border-color:#d1d9cb}.map-scroll{overflow-x:auto}.route-map{display:block;width:100%;max-height:580px;min-width:600px;font-family:'DM Sans',Arial,sans-serif;color:#203c30}.map-ridge{fill:none;stroke:#bcc5b5;stroke-width:1}.map-region{font-size:11px;letter-spacing:2px;fill:#71806b}.map-walk{fill:none;stroke:#9a7336;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.route-eight .map-walk{stroke:#203c30}.map-transfer{fill:none;stroke:#899080;stroke-width:1.8;stroke-dasharray:5 7}.map-stop circle{fill:#f7f5ee;stroke:#9a7336;stroke-width:2}.route-eight .map-stop circle{fill:#203c30;stroke:#203c30}.map-stop text{font-size:14px;fill:#203c30;font-weight:600}.map-stop .map-number{font-size:13px}.route-eight .map-number{fill:#f7f5ee}.map-stop .map-place,.map-place{font-size:11px;fill:#586650;font-weight:400}.map-landmark{fill:#f7f5ee;stroke:#71806b;stroke-width:1.5}.route-figure figcaption{border-top:1px solid #cad0c0;padding:17px 24px;display:flex;gap:24px;flex-wrap:wrap;font-size:11px;color:#586650}.route-figure figcaption small{width:100%;font-size:10px}.legend-walk:before,.legend-transfer:before{content:'';display:inline-block;width:22px;border-top:2px solid #9a7336;margin-right:8px;vertical-align:middle}.route-eight .legend-walk:before{border-color:#203c30}.legend-transfer:before{border-top:2px dashed #899080}.route-bottom{display:grid;grid-template-columns:1.2fr 1fr;gap:65px;margin-top:35px}.route-bottom h4{font-size:19px;font-weight:500;margin:0 0 20px}.brewery-list{list-style:none;counter-reset:brewery;margin:0;padding:0}.brewery-list li{counter-increment:brewery;position:relative;padding:0 0 19px 35px}.brewery-list li:before{content:counter(brewery,decimal-leading-zero);position:absolute;left:0;top:2px;font-size:10px;color:#8a774e}.extra-stops{counter-reset:brewery 3}.brewery-list strong{display:block;font-size:14px;font-weight:600}.brewery-list span{display:block;font-size:13px;color:#63705f;margin-top:3px}.route-note{padding:27px;background:#eee8d9;align-self:start}.route-eight .route-note{background:#e6ebe2}.route-note p{font-size:13px;color:#586650}.route-small,.route-note .route-small{font-size:11px;color:#677161}.route-source{border-top:1px solid var(--line);padding-top:20px;margin-top:40px;font-size:11px;color:#677161}.route-source a{text-decoration:underline}@media(max-width:700px){.route-heading{display:block}.route-heading h3{font-size:31px}.route-facts{margin-top:20px;gap:30px}.route-facts strong{font-size:25px}.route-bottom{grid-template-columns:1fr;gap:20px}.route-detail{margin-top:45px}.route-eight{margin-top:65px}.route-figure figcaption{padding:15px;gap:15px}.route-note{padding:24px}.route-card-link{font-size:12px}}

.route-map text{paint-order:stroke;stroke:#eee8d9;stroke-width:4px;stroke-linejoin:round}.route-eight .route-map text{stroke:#e6ebe2}.route-map .map-number{stroke:none}

.route-price{margin:22px 0;padding:20px 0;border-top:1px solid currentColor}.route-price>span{display:block;font-size:11px;letter-spacing:.5px}.route-price>strong{display:block;font-family:Georgia,serif;font-size:30px;line-height:1.2;font-weight:400;margin:8px 0}.route-price p{font-size:12px;line-height:1.65;margin:10px 0 0}.stamp-card-eight .route-price{border-color:#607567}.stamp-card-eight .route-price p{color:#dce5d9}.route-note .route-price>strong{font-size:26px}

/* Original Beertrail styling retained; focused enhancements below. */
.page-intro{background:var(--green);color:#f7f5ee;padding:65px 6% 60px}
.page-intro .eyebrow{color:#dfb86e}
.page-intro h1{font-size:clamp(48px,6.7vw,86px);margin:0 0 15px}
.page-intro p:last-child{max-width:730px;margin:0;color:#e3e8dd}
.page-intro .intro-links{display:flex;gap:15px;flex-wrap:wrap;margin-top:28px}
.page-intro .intro-links .button{background:var(--gold);color:var(--green)}
header nav a[aria-current="page"]{text-decoration:underline;text-underline-offset:7px;text-decoration-color:var(--gold)}
header nav .nav-booking{display:none}
.menu-toggle{display:none;background:transparent;border:1px solid #abb7a4;color:var(--green);padding:9px 12px;border-radius:2px;cursor:pointer;line-height:1;font-size:20px}
/* Every schematic map fits the screen before expansion, eliminating sideways page scrolling. */
.route-figure{position:relative}
.map-scroll{overflow:visible}
.route-figure .route-map{min-width:0;max-height:none;height:auto;width:100%}
.map-open{display:block;width:100%;background:transparent;border:0;padding:0;cursor:zoom-in;text-align:left}
.map-zoom-label{display:inline-flex;align-items:center;gap:8px;padding:8px 13px;background:#203c30;color:white;font-size:12px;font-weight:600;border:0;position:absolute;right:12px;top:12px;pointer-events:none}
.map-open:focus-visible{outline:3px solid #b8914b;outline-offset:-3px}
.map-modal{position:fixed;inset:0;width:96vw;max-width:1250px;height:94dvh;max-height:1000px;margin:auto;padding:0;border:1px solid #d1d9cb;background:#f7f5ee;color:#203c30;box-shadow:0 25px 90px #06150bd9}
.map-modal::backdrop{background:#071b13d9}
.map-modal-top{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;background:var(--green);color:white;padding:12px 18px}
.map-modal-top h2{font-family:'DM Sans',Arial,sans-serif;font-size:15px;font-weight:600;letter-spacing:0;margin:0}
.map-controls{display:flex;align-items:center;gap:8px}
.map-controls button{color:white;background:#ffffff22;border:1px solid #ffffff55;padding:6px 12px;cursor:pointer;font-size:15px;line-height:1.4;min-width:40px}
.map-controls .map-close{background:#ffffff; color:#203c30;font-size:19px}
.map-stage{height:calc(100% - 69px);overflow:auto;overscroll-behavior:contain;touch-action:pan-x pan-y;position:relative}
.map-stage .route-map{display:block;max-height:none;height:auto;min-width:0;width:100%;max-width:none;margin:auto}
.map-modal[data-route="8"] .map-stage{background:#e6ebe2}
.map-modal[data-route="5"] .map-stage{background:#eee8d9}
.map-stage .map-visual{width:100%;min-width:760px;transform-origin:top left}
.map-stage .map-visual svg{display:block;width:100%;height:auto;max-height:none}
.map-modal .map-hint{font-size:11px;color:#dbe4d7;margin-right:auto}
.page-cta{display:flex;flex-wrap:wrap;gap:15px;align-items:center;margin:30px 6% 75px}
.page-cta p{margin:0;color:#657161}
#short-route-options{border-left:3px solid #b7a16b;padding:11px 16px;margin:0 0 20px}
#short-route-options p{margin:0;font-size:13px}
.field-help{font-size:11px;color:#66725c;margin:-10px 0 15px}
@media(max-width:700px){
 header{position:relative;justify-content:space-between;gap:10px}
 header .brand{margin-right:auto}
 header .menu-toggle{display:inline-flex;align-items:center;justify-content:center;order:3}
 header nav{display:none;position:absolute;left:0;right:0;top:80px;background:var(--cream);z-index:30;box-shadow:0 15px 30px #203c302a;padding:18px 7%;flex-direction:column;gap:6px}
 header nav.is-open{display:flex}
 header nav a{padding:11px 3px;border-bottom:1px solid #d8ded4}
 header>.button{display:none}
 header nav .nav-booking{display:block;color:#203c30;font-weight:700}
 .page-intro{padding:47px 7%}
 .page-intro h1{font-size:clamp(42px,10vw,66px)}
 .route-figure .route-map{min-width:0}
 .map-zoom-label{top:9px;right:9px;padding:6px 9px;font-size:10px}
 .map-modal{height:96dvh;width:100vw;max-width:none;max-height:none}
 .map-modal-top{padding:10px;gap:7px}
 .map-modal-top h2{font-size:12px}
 .map-modal .map-hint{font-size:9px;width:100%}
 .map-stage{height:calc(100% - 100px)}
 .page-cta{margin:20px 7% 55px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Beertrail: én oplevelse ad gangen. Originale kort og billedudtryk er bevaret. */
.experience-carousel{width:100%;max-width:960px;margin:0 auto;outline-offset:5px}
.experience-carousel .experience-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:0}
.experience-carousel .experience{min-height:clamp(420px,54vw,540px);padding:clamp(28px,5vw,48px);border-radius:8px}
.experience-carousel .experience h3{font-size:clamp(25px,3.8vw,39px);line-height:1.16}
.experience-carousel .experience p{font-size:clamp(14px,1.6vw,17px);max-width:410px}
.experience-carousel .experience .number{font-size:11px}
.experience-carousel.is-enhanced .experience:not(.is-active){display:none!important}
.experience-carousel.is-enhanced .experience.is-active{animation:experience-reveal .27s ease-out both}
@keyframes experience-reveal{from{opacity:.5;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
.experience-controls{display:none;align-items:center;justify-content:center;gap:15px;margin-top:21px;position:relative;min-height:49px}
.experience-carousel.is-enhanced .experience-controls{display:flex}
.experience-arrow{appearance:none;display:inline-flex;justify-content:center;align-items:center;width:48px;height:48px;flex:0 0 48px;border:1px solid #9ba996;border-radius:50%;background:#f3f2e9;color:#234237;cursor:pointer;transition:background .18s ease,transform .18s ease}
.experience-arrow:hover{background:#dce4d3;transform:translateY(-1px)}
.experience-arrow:focus-visible,.experience-dot:focus-visible{outline:3px solid #9c6b22;outline-offset:3px}
.experience-dots{display:flex;justify-content:center;align-items:center;gap:9px;min-width:75px}
.experience-dot{appearance:none;display:grid;place-items:center;width:27px;height:35px;cursor:pointer;border:0;background:transparent;padding:0}
.experience-dot span{display:block;width:8px;height:8px;border-radius:50%;background:#b5bfae;transition:width .2s ease,background .2s ease,border-radius .2s ease}
.experience-dot.is-active span{width:21px;border-radius:9px;background:#27483b}
.experience-counter{position:absolute;right:0;top:17px;color:#69756a;font-size:11px;letter-spacing:1.5px;font-variant-numeric:tabular-nums}
.experience-carousel .beer-art{position:absolute;right:16%;top:21%;scale:1.25}
.experience-carousel .cabin{position:absolute;right:11%;top:19%;width:235px;height:205px}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:700px){
 .experience-carousel .experience{min-height:450px;padding:27px;border-radius:7px}
 .experience-carousel .experience h3{font-size:28px}
 .experience-carousel .experience p{font-size:14px}
 .experience-carousel .beer-art{right:10%;top:18%;scale:1}
 .experience-carousel .cabin{right:5%;top:20%;width:180px;height:155px}
 .experience-controls{gap:12px}
 .experience-arrow{width:46px;height:46px;flex-basis:46px}
 .experience-counter{right:0;top:-6px;font-size:9px}
}
@media(prefers-reduced-motion:reduce){.experience-carousel.is-enhanced .experience.is-active{animation:none}.experience-arrow,.experience-dot span{transition:none}}


/* Beertrail: originale slider med skræddersyede oplevelsesbilleder */
.experience-carousel .experience{position:relative;isolation:isolate;overflow:hidden;color:#fff;background:#20392e;min-height:clamp(450px,55vw,565px)}
.experience-carousel .experience-photo{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;object-position:center 52%;z-index:-2;filter:saturate(.95)}
.experience-carousel .experience::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(7,21,15,.40) 0%,transparent 36%,rgba(7,21,15,.10) 48%,rgba(7,21,15,.84) 100%)}
.experience-carousel .experience > .number,.experience-carousel .experience > div:last-child{position:relative;z-index:2;color:#fff}
.experience-carousel .experience h3,.experience-carousel .experience p{color:#fff;text-shadow:0 1px 12px rgba(0,0,0,.18)}
.experience-carousel .experience p{max-width:480px;line-height:1.65}
.experience-carousel .experience .beer-art,.experience-carousel .experience .cabin{display:none}
.experience-carousel .experience.landscape .experience-photo{object-position:center 51%}
.experience-carousel .experience.beer .experience-photo{object-position:center 53%}
.experience-carousel .experience.stay .experience-photo{object-position:center 50%}
@media(max-width:700px){
 .experience-carousel .experience{min-height:460px}
 .experience-carousel .experience.landscape .experience-photo{object-position:33% center}
 .experience-carousel .experience.beer .experience-photo{object-position:48% center}
 .experience-carousel .experience.stay .experience-photo{object-position:59% center}
 .experience-carousel .experience::after{background:linear-gradient(180deg,rgba(7,21,15,.38),transparent 36%,rgba(7,21,15,.10) 50%,rgba(7,21,15,.90))}
}

/* 2026-10: Conversion / clarity update */
.hero-copy{max-width:525px}.hero-content{max-width:900px}
.walk-profile{padding:16px 18px 13px;margin:23px 0;background:#ffffff70;border-left:3px solid #a38b5d}
.stamp-card-eight .walk-profile{background:#ffffff12;border-left-color:#dfb86e}
.profile-label{display:block;font-size:10px;letter-spacing:1.5px;font-weight:700;margin-bottom:7px}
.walk-profile strong{display:block;font-family:Georgia,serif;font-size:23px;line-height:1.18;font-weight:400;margin-bottom:8px}
.walk-profile p{font-size:13px;margin:0 0 9px;line-height:1.55}
.profile-meta{font-size:11px;opacity:.79}
.service-summary{background:#f3f1e8}.service-summary .section-head{margin-bottom:26px}
.service-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:20px}
.service-panel{padding:34px;background:#fffdf5;border:1px solid #d9ded3}
.service-panel h3{font-family:Georgia,serif;font-weight:400;font-size:29px}
.service-panel ul{list-style:none;padding:0;margin:0}
.service-panel li{position:relative;padding:12px 0 12px 28px;border-bottom:1px solid #e2e6dc;font-size:14px;line-height:1.5}
.service-panel li:last-child{border:0}.service-panel li:before{position:absolute;left:0;content:'✓';font-weight:800;color:#4c6a4c}
.service-self{background:#e4e8db}.service-self li:before{content:'→'}
.flexibility-note{border-left:3px solid var(--gold);background:#e7ebdf;padding:20px 25px;margin:24px 0 23px}
.flexibility-note strong{font-size:16px}.flexibility-note p{max-width:900px;font-size:14px;margin:9px 0 0}
.concept-photo-label{font-size:11px;color:#657161;margin:-10px 0 18px}
.terrain-comparison{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:25px 0 15px}
.terrain-comparison>div{background:#ebedde;padding:24px;border-left:3px solid #b8a071}
.terrain-comparison>div:nth-child(2){background:#203c30;color:white;border-left-color:#dfb86e}
.terrain-comparison span{display:block;text-transform:uppercase;font-size:10px;font-weight:600;letter-spacing:1.1px}
.terrain-comparison strong{display:block;font-family:Georgia,serif;font-weight:400;font-size:31px;margin:7px 0}
.terrain-comparison p{margin:0;font-size:13px;line-height:1.5}
.route-lodges,.route-transport{margin:65px 0 0;border-top:1px solid #d9ddcf;padding-top:46px}
.route-lodges h2{font-size:clamp(30px,4vw,50px)}
.places-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:26px 0 10px}
.places-grid article{background:#eeeae0;min-height:205px;overflow:hidden;border:1px solid #e2ded2}
.place-photo{display:block;width:100%;height:185px;object-fit:cover}
.place-copy{padding:22px 24px 24px}
.places-grid span{display:block;font-size:10px;letter-spacing:1.3px;color:#79826f;margin-bottom:17px}
.places-grid h3{font-family:Georgia,serif;font-weight:400;font-size:23px;margin-bottom:12px}
.places-grid p{font-size:13px;color:#596956;line-height:1.65;margin-bottom:0}
.route-transport{display:grid;grid-template-columns:1fr 1.25fr;gap:55px}
.route-transport p{font-size:14px}.fineprint{font-size:11px!important;color:#6c7667}
.about-followup{padding-top:35px;border-top:1px solid #d7ded1;background:#eeeee4}
.about-followup p:last-child{max-width:720px;font-size:15px;color:#526356}
.form-step-label{font-size:11px;font-weight:700;letter-spacing:1.3px;margin:17px 0 12px;color:#49624e}
.form-note{font-size:12px;line-height:1.65;background:#e0e6d6;padding:15px;margin:0 0 23px;border-left:3px solid #a99365}
.transport-help{border-left:2px solid #acb9a2;padding-left:12px;margin:2px 0 23px}
@media(max-width:800px){.service-columns,.terrain-comparison,.route-transport{grid-template-columns:1fr}.places-grid{grid-template-columns:1fr 1fr}.route-transport{gap:10px}.service-panel{padding:24px}}
@media(max-width:560px){.hero-copy{max-width:295px}.places-grid{grid-template-columns:1fr}.place-photo{height:200px}.walk-profile strong{font-size:20px}.service-summary{padding-top:65px;padding-bottom:65px}.terrain-comparison>div{padding:22px}.route-lodges,.route-transport{margin-top:45px;padding-top:25px}}

/* Stempelordningen: new information page, inherits brand typography and colors */
header nav{gap:clamp(13px,2vw,29px)}
.footer-stamp-link{font-size:12px;color:#536755;border-bottom:1px solid #93a18c;padding-bottom:4px}
.stamp-guide-teaser{background:#f6f3e9;border:1px solid #d6d1c4;padding:30px 34px;margin-top:24px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.stamp-guide-teaser h3{font-family:'Playfair Display',Georgia,serif;font-size:clamp(25px,3vw,34px);color:var(--green)}
.stamp-guide-teaser p:not(.eyebrow){max-width:720px;color:#516452;font-size:14px;margin-bottom:0}
.stamp-guide-teaser .button{white-space:nowrap;flex-shrink:0}
.stamp-page-intro{background:#203c30;min-height:390px}
.stamp-page-intro h1 em{color:#dfb86e}
.stamp-intro-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap;margin-top:24px}
.stamp-quiet-link{font-size:13px;color:#f4e5bd;border-bottom:1px solid #b4ac8c;padding-bottom:4px}
.stamp-step-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:32px}
.stamp-step{background:#f0f0e6;border:1px solid #d7dccf;padding:32px}
.stamp-step-number{display:block;font-family:Georgia,serif;color:#b08d52;font-size:38px;margin-bottom:25px}
.stamp-step h3{font-family:'Playfair Display',Georgia,serif;font-size:25px;color:#233f32}
.stamp-step p{font-size:14px;color:#576652;margin-bottom:0;line-height:1.8}
.stamp-download-row{display:flex;align-items:center;justify-content:space-between;gap:22px;background:#e6ebe0;padding:25px 32px;margin-top:25px}
.stamp-download-row strong{display:block;font-size:16px}
.stamp-download-row p{max-width:700px;color:#50634f;font-size:13px;margin:6px 0 0}
.stamp-download-row .button{flex-shrink:0}
.stamp-awards{background:#edf0e7}
.stamp-award-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:28px 0 22px}
.stamp-award-card{min-height:290px;position:relative;padding:36px;overflow:hidden}
.stamp-award-five{background:#eee0c2;color:#203c30}
.stamp-award-eight{background:#203c30;color:#f7f5ee}
.stamp-award-count{font-family:Georgia,serif;font-size:100px;position:absolute;right:26px;top:0;line-height:1;color:inherit;opacity:.16}
.stamp-award-card h3{font-family:'Playfair Display',Georgia,serif;font-size:32px;margin-top:35px;max-width:360px}
.stamp-award-card p:last-child{max-width:470px;font-size:14px;line-height:1.8}
.stamp-award-eight .eyebrow{color:#e4c487}
.stamp-season-note{max-width:930px;font-size:13px;color:#52624e;line-height:1.8}
.stamp-brewery-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:20px;margin:30px 0}
.stamp-brewery-grid article{border:1px solid #d3dbcf;background:#f9f8f3;padding:30px 34px}
.stamp-brewery-tag{display:block;letter-spacing:1.8px;font-size:10px;font-weight:700;color:#58715b}
.stamp-brewery-grid ol{padding-left:23px;margin:16px 0 0}
.stamp-brewery-grid li{padding:8px 0;border-bottom:1px solid #d8ded4;font-size:15px}
.stamp-brewery-grid li:last-child{border:0}
.stamp-faq{display:grid;grid-template-columns:1fr 1.2fr;gap:100px;background:#e8eee4}
.stamp-faq>div>p:not(.eyebrow){color:#5e705d;max-width:370px}
.stamp-faq .questions a{color:var(--green);text-decoration:underline}
.stamp-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.stamp-photo-slot{display:flex;min-height:260px;align-items:center;justify-content:center;flex-direction:column;border:1px dashed #b0bcae;background:#e9ede5;color:#5b715d;text-align:center;padding:30px}
.stamp-photo-slot:nth-child(2){background:#eee9da;border-color:#c8bca2}
.stamp-photo-slot .stamp-photo-graphic{font-size:48px;line-height:1;opacity:.48;margin-bottom:16px}
.stamp-photo-slot strong{font-family:'Playfair Display',Georgia,serif;font-size:23px;font-weight:400;color:#355341}
.stamp-photo-slot span:last-child{font-size:11px;margin-top:6px}
.stamp-source{display:flex;align-items:center;justify-content:space-between;gap:40px;background:#edf0e7}
.stamp-source>div{max-width:760px}
.stamp-source p:not(.eyebrow){color:#586954;font-size:14px;line-height:1.8}
.stamp-source-actions{display:flex;gap:25px;flex-wrap:wrap;margin-top:24px}
.stamp-source>.button{white-space:nowrap}
.route-stamp-link{display:flex;align-items:center;justify-content:space-between;gap:25px;background:#e8eee4;padding:25px 30px;margin-top:50px}
.route-stamp-link h3{font-family:'Playfair Display',Georgia,serif;font-size:23px;margin-bottom:7px}
.route-stamp-link p{margin:0;font-size:13px;color:#59695a}
.route-stamp-link a{white-space:nowrap}
@media(max-width:950px){.stamp-faq{gap:45px}.stamp-guide-teaser,.stamp-download-row,.stamp-source,.route-stamp-link{flex-direction:column;align-items:flex-start}.stamp-guide-teaser .button,.stamp-download-row .button{white-space:normal}}
@media(max-width:720px){.stamp-step-grid,.stamp-award-grid,.stamp-brewery-grid,.stamp-photo-grid{grid-template-columns:1fr}.stamp-step{padding:28px}.stamp-award-card{padding:30px;min-height:245px}.stamp-award-card h3{font-size:28px}.stamp-faq{display:block}.stamp-photo-slot{min-height:210px}.stamp-guide-teaser{padding:24px}.stamp-download-row{padding:25px}.stamp-source{padding-top:70px;padding-bottom:70px}}

/* Route proposals & lunch planning */
.route-planning-note{background:#eef0e7;border-left:4px solid #b99d61;margin:24px 0 0;padding:24px 28px;max-width:1100px}
.route-planning-note h3{font-size:20px;line-height:1.3;margin:0 0 10px;font-weight:600;color:#203c30}
.route-planning-note p{font-size:14px;line-height:1.65;color:#4e6153;margin:0 0 8px;max-width:970px}
.route-planning-note .route-planning-small{font-size:12px;color:#64705f;margin:0}
@media(max-width:700px){.route-planning-note{margin-top:20px;padding:20px 19px}.route-planning-note h3{font-size:18px}.route-planning-note p{font-size:13px}}

/* Bryggerirundvisninger: et valgfrit tilvalg, ikke en del af basispriserne */
.brewery-experience{background:#eee9dc;border-left:4px solid #bd9a5c;display:flex;align-items:center;justify-content:space-between;gap:42px;margin-top:26px;padding:28px 34px}
.brewery-experience>div{max-width:800px}
.brewery-experience .eyebrow{margin-bottom:10px}
.brewery-experience h3{font-family:'Playfair Display',Georgia,serif;color:#203c30;font-size:clamp(23px,2.7vw,32px);font-weight:500;margin:0 0 12px}
.brewery-experience p:not(.eyebrow){font-size:14px;line-height:1.7;color:#485c4c;margin:0 0 10px}
.brewery-experience .brewery-experience-small{font-size:12px!important;color:#66715f!important;margin:0!important}
.brewery-experience>.text-link{white-space:nowrap;align-self:center}
.brewery-request{border:1px solid #cbd5c5;background:#edf1e9;padding:18px 22px;margin:6px 0 23px}
.brewery-request .form-step-label{margin:0 0 13px}
.brewery-request .brewery-request-label{display:flex;flex-direction:row;gap:12px;align-items:flex-start;font-size:14px;line-height:1.5;font-weight:500;cursor:pointer;margin:0 0 7px}
.brewery-request-label input[type="checkbox"]{appearance:auto;flex:none;width:19px;height:19px;margin:1px 0 0;accent-color:#203c30;padding:0;cursor:pointer}
.brewery-request .form-foot{margin:0 0 0 31px}
@media(max-width:800px){.brewery-experience{flex-direction:column;align-items:flex-start;gap:15px;padding:25px}.brewery-experience>.text-link{align-self:flex-start}}


/* Beertrail logo: minimalistisk bjerg og fadøl med separat ordmærke */
.brand{display:flex;align-items:center;gap:9px;white-space:nowrap}
.brand .brand-symbol{display:block;width:54px;height:38px;object-fit:contain;flex:none;margin:0}
.about-stamp{width:min(100%,320px);height:auto;margin:0 auto;outline:0;border:0;border-radius:0;transform:none}
.about-stamp img{width:100%;height:auto;mix-blend-mode:normal;object-fit:contain}
@media(max-width:700px){
 .brand{gap:7px}
 .brand .brand-symbol{width:44px;height:32px}
 .about-stamp{width:min(100%,260px);height:auto}
}


/* Improved route-map number contrast and legibility – both routes and map modal */
.route-figure .route-map .map-stop circle,
.map-stage .route-map .map-stop circle {
  fill: #203c30;
  stroke: #203c30;
  stroke-width: 1.5;
}
.route-figure .route-map .map-stop text.map-number,
.map-stage .route-map .map-stop text.map-number,
.route-eight .route-map .map-stop text.map-number,
.route-five .route-map .map-stop text.map-number {
  fill: #fff !important;
  stroke: none !important;
  stroke-width: 0 !important;
  paint-order: normal;
  font-family: Arial, sans-serif;
  font-weight: 800;
  font-size: 18px;
  letter-spacing: 0;
  text-anchor: middle;
  dominant-baseline: central;
}

/* Ensure route maps use exactly the same text halo inside the enlarged modal. */
.map-modal[data-route="8"] .route-map text { stroke: #e6ebe2; }
.map-modal[data-route="5"] .route-map text { stroke: #eee8d9; }
/* Number labels should stay plain white, without an outlined halo, at either size. */
.map-modal .route-map .map-stop text.map-number { stroke: none !important; fill: #fff !important; }
