/* WordPress integration. The original site's CSS remains unchanged above this layer. */
.nav .pd-menu { display:flex; align-items:center; gap:clamp(12px,1.55vw,25px); margin:0; padding:0; list-style:none; }
.nav .pd-menu > li { position:relative; margin:0; padding:0; list-style:none; }
.nav .pd-menu a { display:block; }
.nav .pd-menu .sub-menu { display:none; position:absolute; top:100%; left:0; z-index:120; min-width:215px; margin:0; padding:10px 18px; background:#faf6eb; border:1px solid var(--line); border-radius:4px; box-shadow:0 14px 32px #27341f26; list-style:none; }
.nav .pd-menu li:hover > .sub-menu, .nav .pd-menu li:focus-within > .sub-menu { display:block; }
.nav .pd-menu .sub-menu li { list-style:none; margin:0; }
.nav .pd-menu .sub-menu a { padding:9px 2px; font-size:.86rem; white-space:normal; }
.nav .current-menu-item > a, .nav .current_page_item > a { color:var(--olive-dark); }
.footer-main nav .pd-menu { display:flex; gap:6px 26px; padding:0; margin:0; align-items:center; justify-content:center; flex-wrap:wrap; list-style:none; }
.footer-main nav .pd-menu li { list-style:none; margin:0; }
.footer-main nav .pd-menu a { font-size:.77rem; }
/* Inner pages and blog */
.pd-inner-page { min-height:66vh; padding:96px 0 122px; background:linear-gradient(180deg,#f5eddb 0,#fffcf6 320px,#fffcf6 100%); }
.pd-page-container { max-width:1120px; }
.pd-page-heading { max-width:920px; margin:0 auto 54px; text-align:center; }
.pd-page-heading .eyebrow { justify-content:center; }
.pd-page-heading h1 { font-size:clamp(2.8rem,6vw,5.2rem); line-height:1.12; letter-spacing:-.055em; color:var(--forest-dark); margin:0 0 14px; }
.pd-page-heading > p:not(.eyebrow) { color:var(--muted); font-size:1.04rem; }
.pd-page-article { max-width:100%; }
.pd-content { max-width:860px; margin:0 auto; font-size:1.045rem; line-height:1.85; color:#485241; overflow-wrap:break-word; }
.pd-content > * + * { margin-block-start:1.45rem; }
.pd-content h2 { font-size:clamp(2rem,3vw,2.9rem); color:var(--forest-dark); margin:2.2em 0 .7em; }
.pd-content h3 { color:var(--forest-dark); margin:1.7em 0 .55em; }
.pd-content p, .pd-content li { line-height:1.85; }
.pd-content a:not(.wp-block-button__link) { text-decoration:underline; text-underline-offset:3px; color:var(--olive-dark); }
.pd-content img { border-radius:10px; }
.pd-content blockquote { border-left:3px solid var(--gold); padding:12px 24px; margin-inline:0; color:var(--forest); }
.pd-content .wp-block-columns { gap:clamp(18px,3vw,36px); }
.pd-content .wp-block-group { border-radius:12px; }
.pd-content .wp-block-button__link, .pd-content .wp-element-button { border-radius:100px; color:white; background:var(--olive-dark); padding:12px 25px; text-decoration:none; font-family:var(--sans);font-size:.94rem; font-weight:600; }
.pd-content .is-style-outline .wp-block-button__link { background:transparent; border:1px solid var(--olive-dark); color:var(--olive-dark); }
.pd-content .wp-block-separator { margin:35px auto; border-color:var(--line); }
.pd-content .alignwide { width:min(1080px,calc(100vw - 72px)); max-width:none; margin-left:50%; transform:translateX(-50%); }
.pd-content .alignfull { width:100vw; max-width:none; margin-left:50%; transform:translateX(-50%); }
.pd-tariff-card { background:#f7f1e5; border:1px solid #e4d7bf; padding:35px !important; height:100%; }
.pd-tariff-card h3 { margin-top:0; }
.pd-tariff-card strong { color:var(--olive-dark); }
.pd-home-cta { padding:38px !important; background:var(--cream); border-radius:14px; }
.pd-content .wp-block-image img { height:auto; }
/* Blog cards */
.pd-post-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px; }
.pd-post-card { background:var(--paper); border:1px solid var(--line); border-radius:12px; overflow:hidden; box-shadow:0 12px 40px #2c37200d; }
.pd-post-image { display:block; aspect-ratio:16/10; overflow:hidden; }
.pd-post-image img { width:100%; height:100%; object-fit:cover; transition:transform .4s; }
.pd-post-card:hover .pd-post-image img { transform:scale(1.04); }
.pd-post-body { padding:23px 25px 28px; }
.pd-post-meta { text-transform:uppercase; font-size:.74rem; color:var(--olive-dark); letter-spacing:.1em; font-weight:600; margin-bottom:10px; }
.pd-post-body h2 { font-size:1.65rem; margin:0 0 12px; line-height:1.26; }
.pd-post-body h2 a:hover { color:var(--olive-dark); }
.pd-post-excerpt { font-size:.91rem; color:#5f6658; }
.pd-post-excerpt p { margin-bottom:13px; }
.pd-post-read,.pd-article-bottom a { color:var(--olive-dark); font-weight:600; }
.pd-pagination { margin-top:45px; }
.pd-pagination .nav-links { display:flex;gap:13px;justify-content:center; }
.pd-pagination .page-numbers { padding:8px 14px; border:1px solid var(--line); border-radius:30px; }
.pd-pagination .current { color:white; background:var(--olive-dark); }
.pd-empty { padding:65px 25px; background:var(--paper); border:1px solid var(--line); border-radius:12px; text-align:center; }
.pd-empty h2 { font-size:clamp(2rem,3.5vw,3rem); }
.pd-featured-photo { margin:0 auto 55px; max-width:950px; }
.pd-featured-photo img { width:100%; max-height:580px; object-fit:cover; border-radius:14px; }
.pd-article-bottom { max-width:860px; margin:50px auto 0; border-top:1px solid var(--line); padding:24px 0; display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.pd-not-found { text-align:center; }
.pd-not-found h1 { font-size:clamp(2.8rem,5vw,4rem); }
/* The original homepage's custom blocks render exact original HTML. Standard blocks added to home should be usable. */
.home main#inhoud > :is(.wp-block-group,.wp-block-columns,.wp-block-paragraph,.wp-block-heading,.wp-block-image,.wp-block-buttons) { max-width:var(--container); margin-inline:auto; }
.pd-external-form :is(input,textarea,select) { width:100%; max-width:100%; border:1px solid #d8d9ce; border-radius:7px; padding:12px; }
.pd-external-form :is(button,input[type=submit]) { width:auto; color:white; border:0; padding:12px 25px; border-radius:30px; background:var(--olive-dark); }
.pd-server-status { border-left:3px solid var(--olive-dark); padding:12px; background:#f2f4e8; }
@media(max-width:1240px){.nav .pd-menu { gap:12px; }.nav .pd-menu > li > a { font-size:.77rem; }}
@media(max-width:1080px){
 .nav .pd-menu { display:flex; flex-direction:column; align-items:stretch;gap:0;width:100%; }
 .nav .pd-menu > li { width:100%; }
 .nav .pd-menu > li > a { display:block; font-family:var(--serif); font-size:1.5rem; padding:13px 0; border-bottom:1px solid var(--line); }
 .nav .pd-menu .sub-menu { display:block; position:static; background:transparent; border:0; box-shadow:none; padding:0 0 7px 20px; min-width:0; }
 .nav .pd-menu .sub-menu a { font-family:var(--sans); font-size:.95rem; padding:7px 0; border:0; }
}
@media(max-width:760px){
 .pd-inner-page { padding:65px 0 85px; }
 .pd-page-heading { margin-bottom:33px; }
 .pd-post-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px; }
 .pd-post-body { padding:18px; }
 .pd-post-body h2 { font-size:1.4rem; }
 .pd-content { font-size:1rem; }
 .pd-content .alignwide { width:calc(100vw - 40px); }
 .pd-content .wp-block-columns:not(.is-not-stacked-on-mobile) { flex-wrap:wrap; }
 .pd-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column { flex-basis:100% !important; }
 .pd-tariff-card { padding:24px !important; }
}
@media(max-width:490px){
 .pd-post-grid { grid-template-columns:1fr; }
 .pd-page-heading h1 { font-size:clamp(2.45rem,11vw,3.3rem); }
 .pd-content .alignwide { width:calc(100vw - 40px); }
 .footer-main nav .pd-menu { justify-content:flex-start; gap:7px 20px; }
}
