/* Site visual QA v35: public core pages */
:root{--energy-max:1240px;--energy-text:#51545a;--energy-soft:#f5f3ef;--energy-line:#dedbd5;--energy-ink:#0a0b0d}
html{scroll-padding-top:122px}
.button{border-radius:0!important}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid #111216;outline-offset:4px}
.desktop-nav a[aria-current="page"]:after{right:0}
.desktop-nav a[aria-current="page"]{font-weight:850}
.crumbs{margin-top:24px;margin-bottom:0;color:#64686e}
.crumbs a{text-decoration-thickness:1px;text-underline-offset:3px}

.page-editorial-hero{padding:54px 0 76px;background:var(--energy-soft);border-bottom:1px solid var(--energy-line)}
.page-editorial-grid{grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);gap:76px;align-items:center}
.page-editorial-copy{padding:14px 0;min-width:0}
.page-editorial-copy .section-label,.first-hero .section-label{margin-bottom:7px;color:#6a6052}
.page-editorial-copy h1{overflow-wrap:anywhere;font-size:clamp(48px,5.25vw,76px);line-height:.96;letter-spacing:-.052em;max-width:13ch;text-wrap:balance;margin:12px 0 24px}
.page-editorial-copy .lede{max-width:620px;font-size:18px;line-height:1.68;color:#55585e;margin:0}
.page-actions{gap:24px;margin-top:30px;flex-wrap:wrap}
.page-actions .button{min-height:48px;padding-inline:22px}
.page-editorial-grid figure{height:auto;aspect-ratio:1.08/1;max-height:610px;overflow:hidden;background:#e8e5df}
.page-editorial-grid figure img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.88) contrast(1.02)}

.page-content{padding:72px 0 108px;background:#fff}
.page-content-grid{grid-template-columns:220px minmax(0,820px);gap:84px;justify-content:center;align-items:start}
.page-sidebar{top:126px;border-top:1px solid #17191d;padding-top:17px}
.page-sidebar>span{margin-bottom:9px;color:#80725e}
.page-sidebar a{padding:11px 0;border-bottom:1px solid #ece9e4;line-height:1.35}
.page-sidebar a:hover{padding-left:3px}
.rich-content{max-width:820px}
.rich-section{padding:38px 0;border-bottom:1px solid var(--energy-line);scroll-margin-top:132px}
.rich-section:first-child{padding-top:0}
.rich-section h2{font-size:clamp(28px,3vw,36px);line-height:1.08;letter-spacing:-.038em;max-width:22ch;text-wrap:balance;margin-bottom:18px}
.rich-section p{font-size:16.5px;line-height:1.78;color:var(--energy-text);max-width:760px}
.rich-section ul{color:var(--energy-text);line-height:1.75;padding-left:20px}

.prices{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:52px}
.price{padding:30px;border:1px solid var(--energy-line);background:#fff;min-height:235px}
.price>span{text-transform:uppercase;letter-spacing:.08em;font-size:11px}
.price strong{font-size:clamp(34px,3.7vw,44px);line-height:1;letter-spacing:-.055em;margin:16px 0 7px}
.price small{display:block;font-size:12px}
.price p{font-size:14px;line-height:1.65;margin-top:22px}

.gallery-strip{padding:0 0 96px;background:#fff}
.gallery-grid{gap:10px}
.gallery-grid figure{height:auto;aspect-ratio:4/3;background:#ece9e3}
.gallery-grid img{display:block}
.gallery-grid figcaption{left:14px;bottom:14px;border-radius:0;background:rgba(8,9,11,.78);padding:7px 10px}

.core-faq{padding:88px 0}
.core-faq-list summary{min-height:30px}
.seo-related{padding:82px 0}
.seo-related-grid a{min-height:200px}

.first-hero{padding:54px 0 72px;background:var(--energy-soft);border-bottom:1px solid var(--energy-line)}
.first-hero-grid{grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);gap:76px}
.first-hero h1{font-size:clamp(48px,5.25vw,76px);line-height:.96;max-width:13ch;text-wrap:balance}
.first-hero figure{height:auto;aspect-ratio:1.08/1;max-height:610px;background:#e8e5df;overflow:hidden}
.first-hero figure img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.88) contrast(1.02)}
.first-hero figure.tour-video{aspect-ratio:16/9;max-height:none;background:#111216;position:relative}
.tour-video-trigger{position:relative;display:block;width:100%;height:100%;padding:0;border:0;background:#111216;color:#fff;cursor:pointer;overflow:hidden;text-align:left}
.tour-video-trigger img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .45s ease,filter .45s ease}
.tour-video-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,11,13,.05) 34%,rgba(10,11,13,.76) 100%)}
.tour-video-play{position:absolute;left:32px;top:32px;width:68px;height:68px;display:grid;place-items:center;background:#fff;color:#111216;box-shadow:0 10px 30px rgba(0,0,0,.16)}
.tour-video-play span{display:block;width:0;height:0;border-top:9px solid transparent;border-bottom:9px solid transparent;border-left:15px solid #111216;margin-left:4px}
.tour-video-copy{position:absolute;left:32px;right:32px;bottom:28px;display:flex;flex-direction:column;gap:5px;text-shadow:0 1px 14px rgba(0,0,0,.35)}
.tour-video-copy strong{font-size:clamp(24px,2.6vw,36px);line-height:1;letter-spacing:-.035em}
.tour-video-copy small{font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:750;opacity:.86}
.tour-video-trigger:hover img{transform:scale(1.015);filter:saturate(.94) contrast(1.04)}
.tour-video-trigger:focus-visible{outline:3px solid #111216;outline-offset:4px}
.tour-video iframe{display:block;width:100%;height:100%;border:0}
.first-detail{padding:72px 0 96px}
.faq-section{padding:88px 0}

.contact-map-section{background:#fff;padding:0 0 82px}
.contact-map-shell{width:min(var(--energy-max),calc(100% - 48px));margin:auto}
.contact-map-head{display:grid;grid-template-columns:.8fr 1.2fr;gap:64px;align-items:end;padding:66px 0 28px;border-top:1px solid var(--energy-line)}
.contact-map-head h2{font-size:clamp(36px,4.4vw,58px);line-height:.98;letter-spacing:-.048em;margin:10px 0 0;text-wrap:balance}
.contact-map-head p{margin:0;color:var(--energy-text);font-size:16px;line-height:1.7;max-width:620px}
.contact-map-frame{position:relative;height:480px;background:#e8e5df;border:1px solid var(--energy-line);overflow:hidden}
.contact-map-frame iframe{display:block;width:100%;height:100%;border:0}
.contact-map-note{display:flex;justify-content:space-between;gap:24px;padding-top:14px;font-size:12px;color:#64686e}
.contact-map-note a{font-weight:800;color:#17191d;border-bottom:1px solid currentColor}

.closing-cta{padding:82px 0}
.closing-grid{gap:76px}
.site-footer{padding-top:64px}

@media(max-width:1050px){
  .page-editorial-grid,.first-hero-grid{grid-template-columns:minmax(0,1fr);gap:36px}
  .page-editorial-copy,.first-hero-grid>*,.page-editorial-grid>*{min-width:0}
  .page-editorial-copy h1,.first-hero h1{overflow-wrap:anywhere}
  .page-editorial-copy h1,.first-hero h1{max-width:17ch}
  .page-editorial-grid figure,.first-hero figure{max-height:none;aspect-ratio:16/10}
  .page-content-grid{grid-template-columns:1fr;gap:0}
  .page-sidebar{display:none}
  .contact-map-head{grid-template-columns:1fr;gap:18px}
}

@media(max-width:720px){
  html{scroll-padding-top:104px}
  .crumbs{margin-top:17px;font-size:11px}
  .page-editorial-hero,.first-hero{padding:30px 0 48px}
  .page-editorial-grid,.first-hero-grid{gap:26px}
  .page-editorial-copy{padding-top:4px}
  .page-editorial-copy h1,.first-hero h1{font-size:clamp(40px,11vw,50px);line-height:.97;letter-spacing:-.048em;max-width:15ch;margin-bottom:18px}
  .page-editorial-copy .lede{font-size:16px;line-height:1.62}
  .page-actions{align-items:flex-start;flex-direction:row;gap:16px 20px;margin-top:24px}
  .page-actions .button{min-height:46px;padding-inline:17px}
  .page-editorial-grid figure,.first-hero figure{aspect-ratio:4/3;height:auto}
  .first-hero figure.tour-video{aspect-ratio:16/9}
  .tour-video-play{left:18px;top:18px;width:56px;height:56px}
  .tour-video-copy{left:18px;right:18px;bottom:18px}
  .tour-video-copy strong{font-size:24px}
  .tour-video-copy small{font-size:10px}
  .page-content{padding:52px 0 72px}
  .rich-section{padding:30px 0;scroll-margin-top:110px}
  .rich-section h2{font-size:28px;max-width:none}
  .rich-section p{font-size:15.5px;line-height:1.72}
  .prices{grid-template-columns:1fr;gap:8px;margin-bottom:38px}
  .price{padding:24px;min-height:0}
  .gallery-strip{padding-bottom:68px}
  .gallery-grid{grid-template-columns:1fr}
  .gallery-grid figure{aspect-ratio:4/3;height:auto}
  .core-faq,.seo-related,.faq-section{padding:64px 0}
  .seo-related-grid a{min-height:0}
  .first-detail{padding:54px 0 72px}
  .contact-map-section{padding-bottom:64px}
  .contact-map-shell{width:calc(100% - 28px)}
  .contact-map-head{padding:52px 0 22px}
  .contact-map-head h2{font-size:40px}
  .contact-map-head p{font-size:15px}
  .contact-map-frame{height:390px}
  .contact-map-note{display:block;line-height:1.6}
  .contact-map-note a{display:inline-block;margin-top:7px}
  .closing-cta{padding:64px 0}
}

@media(max-width:440px){
  .page-actions{flex-direction:column;gap:13px}
  .contact-map-frame{height:350px}
}

/* Long Dutch headings must fit without splitting words on desktop. */
@media(min-width:1051px){.page-editorial-copy h1{font-size:clamp(48px,4.25vw,62px)}}
