/* V10: values verified against supplied NNL HTML. Independent responsive implementation. */
@font-face{font-family:Open Sans;src:url('fonts/OpenSans-Variable.ttf') format('truetype');font-weight:300 800;font-style:normal;font-display:swap}
:root{--ink:#111;--muted:#333;--paper:#fff;--green:#111;--lime:#B4C897;--nnl-blue:#CCE9F3;--nnl-yellow:#FFE37E;--nnl-green:#B4C897;--nnl-sage:#A5C5B5;--nnl-purple:#BDABC6;--nnl-rose:#D093A8;--line:#767676;--section-color:var(--nnl-green)}
body{font-family:'Open Sans',Arial,sans-serif;font-size:1rem;letter-spacing:.25px;line-height:1.5;background:#fff;color:#111}
h1,h2,h3,h4{letter-spacing:0;line-height:1.2;font-weight:700}h1,.pagehead h1{font-size:clamp(2rem,4.5vw,4.625rem);letter-spacing:-.5px}h2{font-size:clamp(1.75rem,3.6vw,3.25rem);line-height:1.3}h3{font-size:clamp(1.25rem,2.3vw,2.375rem)}p{line-height:1.6}.lead{font-size:1.125rem;line-height:1.5}.eyebrow,.meta{font-size:.875rem;font-weight:700;letter-spacing:1px}.wrap{max-width:1440px;padding-left:5%;padding-right:5%}
header,body[data-route=start] header{background:#fff}.head{padding-top:28px;padding-bottom:24px}.brand-row{flex-direction:row-reverse;gap:32px;margin-bottom:24px}.brand{max-width:560px;text-align:right;font-size:1.125rem;font-weight:600}.brand small{font-size:.875rem}.nnl-reference img{width:254px}.nnl-reference small{font-size:.7rem}.demo{background:#f4f4f4;font-size:.8rem;letter-spacing:0}.warningbar{background:var(--nnl-yellow);font-size:.875rem}
.utility{gap:8px}.utility a,.utility button,.site-search button,#mobile-menu{background:var(--nnl-blue);border:2px solid transparent;border-radius:96px;color:#111;min-height:44px;font-size:.875rem;padding:10px 16px}.utility a:hover,.utility button:hover,.site-search button:hover{background:var(--nnl-blue);border-color:#111}.site-search input{background:#fff;border:1px solid #767676;border-radius:96px}.head nav{gap:8px;justify-content:space-between;margin-top:18px}.head nav a{font-size:1rem;font-weight:700;padding:12px 10px;border-radius:96px;border:2px solid transparent}.head nav a[aria-current=page]{background:var(--nnl-blue);border-color:#111;text-decoration:underline}.head nav a:hover{background:var(--nnl-blue)}
.hero{min-height:760px;overflow:visible;background:#fff}.hero .scene{inset:0;height:100%;min-height:0}.hero-photo{object-position:center 50%}.hero-copy{isolation:isolate;width:min(750px,58%);margin:180px 5% 0 0;padding:36px 48px 48px;background:var(--nnl-green);border-radius:0 0 60px 60px;align-self:end;justify-self:end}.hero-copy:before{content:'';position:absolute;inset:auto 0 calc(100% - 1px);width:100%;height:100px;background:var(--nnl-green);border-radius:0;transform:none;z-index:-1;clip-path:polygon(0 100%,1% 79%,4% 57%,9% 40%,16% 27%,25% 19%,38% 16%,52% 19%,65% 24%,76% 25%,85% 20%,93% 10%,100% 0,100% 100%)}.hero-copy h1{font-weight:400;font-size:clamp(2rem,4.4vw,4.625rem);line-height:1.2;letter-spacing:-.5px;margin-bottom:24px}.hero-copy h1 em{font-weight:700;font-style:normal}.hero-copy .lead{font-size:1.125rem;max-width:100%;margin-bottom:0}.hero-copy .eyebrow{font-size:.875rem}.hero .scene-label{left:20px;bottom:20px;max-width:30%;font-size:.75rem;border-radius:10px;padding:10px 12px;background:#111;color:#fff}.hero .scene-tag{background:#fff;border-radius:96px;letter-spacing:0;font-size:.8rem}
.btn,.band .btn,.hero-copy .btn{border:2px solid #111;border-radius:96px;background:#111;color:#fff;min-height:52px;padding:14px 22px;font-size:1rem;font-weight:700;line-height:1.3;gap:12px;justify-content:center;text-decoration:none;white-space:normal;text-align:center}.btn.secondary,.hero-copy .btn.secondary{background:transparent;color:#111}.btn:hover,.band .btn:hover,.hero-copy .btn:hover{background:#333;color:#fff;box-shadow:inset 0 0 0 1px #111}.btn.secondary:hover{background:#fff;color:#111}.actions{gap:16px;margin-top:28px;align-items:flex-start}.hero-copy .actions{flex-direction:column}.btn span{font-size:1.5rem;line-height:1}
section{padding:80px 0}.sectionhead{margin-bottom:36px}.card{border:0;background:#fff;box-shadow:none}.card-body{padding:24px 0}.card p{font-size:1rem}.card a{font-size:1rem}.thumb,.card:nth-child(2) .thumb,.card:nth-child(3) .thumb{border-radius:10px;height:230px}.card .thumb svg{filter:none}.band{background:var(--nnl-sage);border-radius:60px 60px 120px 60px;padding:48px}.learning{background:var(--nnl-yellow);border-radius:10px}.fact{background:var(--nnl-blue);border:0;border-radius:10px}.notice{background:var(--nnl-yellow);border-radius:10px}.pagehead{background:var(--section-color);max-width:none;padding-top:48px;padding-bottom:48px;margin-bottom:36px}.pagehead h1{max-width:1100px}.directory,.map-help{background:#eef7fa}.subnav a{border:2px solid #111;border-radius:96px}.route-index a{border-radius:10px;background:#fff}.result,.formbox,.poi-card{border-radius:10px;background:#fff}.badge{background:var(--nnl-green);color:#111}.badge.warn{background:var(--nnl-yellow);color:#111}footer{background:var(--nnl-blue);padding:56px 0}footer a{color:#111}.number{font-family:inherit;color:#111}
body[data-route=besuch]{--section-color:var(--nnl-blue)}body[data-route=lernen]{--section-color:var(--nnl-yellow)}body[data-route=mitmachen]{--section-color:var(--nnl-sage)}body[data-route=buchen]{--section-color:var(--nnl-purple)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid #111;outline-offset:3px;box-shadow:0 0 0 5px #fff}
.contrast .hero-copy,.contrast .hero-copy:before,.contrast .band,.contrast .pagehead,.contrast .learning,.contrast .fact{background:#fff;color:#000}.contrast .btn{background:#000;color:#fff}.contrast .btn.secondary{background:#fff;color:#000}
@media(max-width:1100px){.head nav{justify-content:flex-start}.hero-copy{width:68%;padding:32px}.hero .scene-label{max-width:23%}.brand{max-width:55%}}
@media(max-width:700px){.brand-row{flex-direction:column;align-items:flex-start;gap:18px}.nnl-reference{order:-1}.nnl-reference img{width:210px}.brand{max-width:100%;text-align:left;margin:0}.head{padding:22px 5%}.head nav{gap:4px}.head nav a{border-radius:12px}.hero{display:flex;min-height:0;padding-top:330px;background:#fff}.hero .scene{inset:0 0 auto;height:360px}.hero-copy{width:calc(100% - 32px);margin:0 16px;padding:24px 24px 36px;border-radius:0 0 30px 30px;align-self:auto}.hero-copy:before{display:block;height:60px}.hero-copy h1{font-size:clamp(2rem,8vw,3rem)}.hero .scene-label{top:224px;bottom:auto;left:16px;max-width:calc(100% - 32px);font-size:.7rem}.hero .scene-tag{top:16px;right:16px;font-size:.7rem}.hero-copy .actions{align-items:stretch}.btn{max-width:100%;overflow-wrap:anywhere}.brand small{font-size:.85rem}.pagehead{padding-top:32px;padding-bottom:32px}.band{padding:28px;border-radius:30px 30px 60px 30px}.notice strong,.notice a{white-space:normal}section{padding:48px 0}}
@media(forced-colors:active){.hero-copy:before{display:none}.hero-copy,.btn,.utility a,.utility button{border:2px solid ButtonText}.hero-copy{background:Canvas}.btn{color:ButtonText;background:ButtonFace}}
@media print{.hero{display:block;padding:0;min-height:0}.hero-copy{width:100%;margin:0;padding:20px;background:white}.hero-copy:before{display:none}}
.content a.btn,.card a.btn{color:#fff}.content a.btn.secondary,.card a.btn.secondary{color:#111}
#base-visible,#routes-visible,.poi-controls input[type=checkbox]{width:24px;height:24px;flex-shrink:0;vertical-align:middle}
.hero-copy:before{clip-path:none;mask:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA3NTAgMTAwIiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJub25lIj48cGF0aCBmaWxsPSJibGFjayIgZD0iTTAgMTAwQzAgMjUgMTEwIDEwIDI0MCAxNVM1NTAgNTAgNzUwIDBWMTAwWiIvPjwvc3ZnPgo=') center/100% 100% no-repeat;-webkit-mask:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA3NTAgMTAwIiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJub25lIj48cGF0aCBmaWxsPSJibGFjayIgZD0iTTAgMTAwQzAgMjUgMTEwIDEwIDI0MCAxNVM1NTAgNTAgNzUwIDBWMTAwWiIvPjwvc3ZnPgo=') center/100% 100% no-repeat}

/* V11: original referenced NNL silhouette, embedded for file:// offline viewing. */
.hero-copy{background:transparent;border-radius:0;padding-top:48px}
.hero-copy:before{inset:-90px 0 0;height:auto;width:100%;background:var(--nnl-green);mask:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI3NTIiIGhlaWdodD0iNjM1IiB2aWV3Qm94PSIwIDAgNzUyIDYzNSIgZmlsbD0ibm9uZSI+CiAgPHBhdGggZD0iTTc1MS44MTkgMjEyLjU5OEM3NTIuMjAzIDI5MC41MDYgNzUxLjg1NiA1NTkuNDU5IDc1MS44NTYgNTU5LjQ1OUM3NTEuODU2IDYwOC41NzggNzI2LjE0OCA2MzUgNjY1LjM2MiA2MzVINjcuMDczMkMxMS4zODI2IDYzNSAwIDYwMy42NjQgMCA1NTkuNDU5VjE0OS4xMUMwIDk4LjMwNDcgMjIuNTYwNiA3Ni44ODUyIDcyLjE2OCA3Ni44ODUyQzEwMi43NDQgNzYuODg1MiAzMzQuMDUzIDc2LjE4NDYgMzYwLjczIDc2LjE4NDZDNTAwLjE0MSA3Ni4xODQ2IDU0Mi4zOTEgNzkuOTI1IDUwNy4xMjcgMjQuOTQ0MUM0OTYuMTU4IDUuOTE1OCA1MTUuMzg0IC02LjA4NzM3IDU0OC45MjggMy4yMTI2OEM2MjYuNTE2IDI0LjcyNjIgNzUxLjgxOSA1Mi4wOTE2IDc1MS44MTkgMjEyLjU5OFoiIGZpbGw9ImJsYWNrIi8+Cjwvc3ZnPg==') center/100% 100% no-repeat;-webkit-mask:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI3NTIiIGhlaWdodD0iNjM1IiB2aWV3Qm94PSIwIDAgNzUyIDYzNSIgZmlsbD0ibm9uZSI+CiAgPHBhdGggZD0iTTc1MS44MTkgMjEyLjU5OEM3NTIuMjAzIDI5MC41MDYgNzUxLjg1NiA1NTkuNDU5IDc1MS44NTYgNTU5LjQ1OUM3NTEuODU2IDYwOC41NzggNzI2LjE0OCA2MzUgNjY1LjM2MiA2MzVINjcuMDczMkMxMS4zODI2IDYzNSAwIDYwMy42NjQgMCA1NTkuNDU5VjE0OS4xMUMwIDk4LjMwNDcgMjIuNTYwNiA3Ni44ODUyIDcyLjE2OCA3Ni44ODUyQzEwMi43NDQgNzYuODg1MiAzMzQuMDUzIDc2LjE4NDYgMzYwLjczIDc2LjE4NDZDNTAwLjE0MSA3Ni4xODQ2IDU0Mi4zOTEgNzkuOTI1IDUwNy4xMjcgMjQuOTQ0MUM0OTYuMTU4IDUuOTE1OCA1MTUuMzg0IC02LjA4NzM3IDU0OC45MjggMy4yMTI2OEM2MjYuNTE2IDI0LjcyNjIgNzUxLjgxOSA1Mi4wOTE2IDc1MS44MTkgMjEyLjU5OFoiIGZpbGw9ImJsYWNrIi8+Cjwvc3ZnPg==') center/100% 100% no-repeat;pointer-events:none}
.contrast .hero-copy{background:transparent}
@media(max-width:767px){
.hero-copy{background:var(--nnl-green);border-radius:0 0 30px 30px;padding-top:0}
.hero-copy:before{inset:auto 0 calc(100% - 1px);height:auto;aspect-ratio:320/91;mask:url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIwIiBoZWlnaHQ9IjkxIiB2aWV3Qm94PSIwIDAgMzIwIDkxIiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHByZXNlcnZlQXNwZWN0UmF0aW89Im5vbmUiPgogIDxwYXRoIGQ9Ik0zMTkuOTIzIDkwLjQ2NzNMMCA5MC40NjczVjYzLjQ1MDhDMCA0MS44MzE4IDkuNjAwMTQgMzIuNzE3IDMwLjcwOTggMzIuNzE3QzQzLjcyMTIgMzIuNzE3IDE0Mi4xNSAzMi40MTg5IDE1My41MDIgMzIuNDE4OUMyMTIuODI2IDMyLjQxODkgMjMwLjgwNSAzNC4wMTA2IDIxNS43OTggMTAuNjE0NUMyMTEuMTMxIDIuNTE3MzUgMjE5LjMxMiAtMi41OTA0IDIzMy41ODYgMS4zNjcwNUMyNjYuNjAzIDEwLjUyMTcgMzE5LjkyMyAyMi4xNjY3IDMxOS45MjMgOTAuNDY3M1oiIGZpbGw9IndoaXRlIi8+Cjwvc3ZnPg==') center/100% 100% no-repeat;-webkit-mask:url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIwIiBoZWlnaHQ9IjkxIiB2aWV3Qm94PSIwIDAgMzIwIDkxIiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHByZXNlcnZlQXNwZWN0UmF0aW89Im5vbmUiPgogIDxwYXRoIGQ9Ik0zMTkuOTIzIDkwLjQ2NzNMMCA5MC40NjczVjYzLjQ1MDhDMCA0MS44MzE4IDkuNjAwMTQgMzIuNzE3IDMwLjcwOTggMzIuNzE3QzQzLjcyMTIgMzIuNzE3IDE0Mi4xNSAzMi40MTg5IDE1My41MDIgMzIuNDE4OUMyMTIuODI2IDMyLjQxODkgMjMwLjgwNSAzNC4wMTA2IDIxNS43OTggMTAuNjE0NUMyMTEuMTMxIDIuNTE3MzUgMjE5LjMxMiAtMi41OTA0IDIzMy41ODYgMS4zNjcwNUMyNjYuNjAzIDEwLjUyMTcgMzE5LjkyMyAyMi4xNjY3IDMxOS45MjMgOTAuNDY3M1oiIGZpbGw9IndoaXRlIi8+Cjwvc3ZnPg==') center/100% 100% no-repeat}
.contrast .hero-copy{background:#fff}
}
@media(forced-colors:active){.hero-copy{background:Canvas}.hero-copy:before{display:none}}
@media print{.hero-copy{background:white}.hero-copy:before{display:none}}

@media(max-width:700px){.hero .scene-label{top:150px;bottom:auto}}

/* V12: reference scroll trajectory; clip only the transient lower overflow. */
.hero{overflow:clip;min-height:max(760px,100svh)}
.hero-copy{transition:none}
@media(max-width:700px){.hero{min-height:0}}
@media(prefers-reduced-motion:reduce){.hero-copy{transform:none!important}}
@media print{.hero-copy{transform:none!important}}
