/*
Theme Name: Stichting Veteranen Customizer
Theme URI: https://stichtingveteranen.nl/
Author: OpenAI
Description: Donker WordPress-thema voor Stichting Veteranen met Customizer-kleuren, header-instellingen, presets en typografie.
Version: 1.5.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GPLv2 or later
Text Domain: stichting-veteranen
*/

:root{
    --sv-bg:#2b2b2b;
    --sv-header:#333333;
    --sv-nav:#3a3a3a;
    --sv-content:#404040;
    --sv-footer:#252525;
    --sv-text:#e8e8e8;
    --sv-muted:#cfcfcf;
    --sv-accent:#b59b53;
    --sv-button:#556b2f;
    --sv-button-hover:#6f8b3d;
    --sv-border:#555555;
    --sv-overlay:0;
    --sv-header-height:360px;
    --sv-body-font:Arial, Helvetica, sans-serif;
    --sv-heading-font:Georgia, 'Times New Roman', serif;
    --sv-font-size:16px;
    --sv-header-relief:14px;
    --sv-nav-relief:8px;
    --sv-content-relief:12px;
    --sv-card-relief:10px;
    --sv-footer-relief:10px;
    --sv-mobile-header-height:150px;
    --sv-mobile-header-position:center center;
    --sv-header-fit:contain;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    background:var(--sv-bg);
    color:var(--sv-text);
    font-family:var(--sv-body-font);
    font-size:var(--sv-font-size);
    line-height:1.65;
}
img{max-width:100%;height:auto}
a{color:var(--sv-accent);text-decoration:none}
a:hover,a:focus{text-decoration:underline}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.container{width:min(1160px, calc(100% - 40px));margin:0 auto}
.site-header{
    min-height:var(--sv-header-height);
    background-color:var(--sv-header);
    background-image:var(--sv-header-image, none);
    background-position:var(--sv-header-position, center center);
    background-repeat:no-repeat;
    background-size:var(--sv-header-fit, contain);
    overflow:hidden;
    box-shadow:0 var(--sv-header-relief) calc(var(--sv-header-relief) * 2.2) rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.10);
    position:relative;
    z-index:1;
}
.header-overlay{
    min-height:var(--sv-header-height);
    display:flex;
    align-items:center;
    background:rgba(0,0,0,var(--sv-overlay));
    pointer-events:none;
}
.site-branding{padding:42px 0;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.55);text-align:center;margin-inline:auto}
/* De aangeleverde banner bevat het logo en de tekst al. Daarom verbergen we de losse WordPress site-titel in de hero. */
.site-header .site-branding{display:none}
.site-title{font-family:var(--sv-heading-font);font-size:clamp(2rem,5vw,4rem);line-height:1.05;margin:0;font-weight:700}
.site-title a{color:#fff;text-decoration:none}
.site-description{margin:.65rem 0 0;color:#f1f1f1;font-size:clamp(1rem,2vw,1.35rem)}
.main-navigation{background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(0,0,0,.10)), var(--sv-nav);border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid var(--sv-border);box-shadow:0 var(--sv-nav-relief) calc(var(--sv-nav-relief) * 2.4) rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.12), inset 0 -1px 0 rgba(0,0,0,.35);position:relative;z-index:3}
.main-navigation ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:0}
.main-navigation li{margin:0}
.main-navigation a{display:block;padding:15px 18px;color:var(--sv-text);font-weight:700;text-transform:uppercase;letter-spacing:.03em;font-size:.92rem;text-decoration:none}
.main-navigation a:hover,.main-navigation a:focus,.main-navigation .current-menu-item>a{background:var(--sv-button);color:#fff;text-decoration:none}
.menu-toggle{display:none;background:var(--sv-button);color:#fff;border:0;padding:12px 16px;font-weight:700;width:100%;text-align:left}
.site-main-wrap{padding:38px 0}
.content-sidebar{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:30px;align-items:start}
.site-content,.widget,.post-card,.page-card{background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(0,0,0,.08)), var(--sv-content);border:1px solid rgba(255,255,255,.10);border-right-color:rgba(0,0,0,.30);border-bottom-color:rgba(0,0,0,.42);border-radius:8px;box-shadow:0 var(--sv-content-relief) calc(var(--sv-content-relief) * 2.2) rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.10), inset 0 -1px 0 rgba(0,0,0,.25)}
.site-content{padding:30px}
.post-card,.page-card{padding:24px;margin-bottom:24px;box-shadow:0 var(--sv-card-relief) calc(var(--sv-card-relief) * 2.1) rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.10), inset 0 -1px 0 rgba(0,0,0,.23)}
h1,h2,h3,h4,h5,h6{font-family:var(--sv-heading-font);line-height:1.2;color:#fff;margin-top:0}
h1{font-size:clamp(2rem,4vw,3rem)}h2{font-size:clamp(1.6rem,3vw,2.2rem)}
.entry-title a{color:#fff}.entry-meta,.entry-footer{color:var(--sv-muted);font-size:.92rem}
.wp-block-button__link,button,input[type="submit"],.button{display:inline-block;background:var(--sv-button);color:#fff;border:0;border-radius:4px;padding:12px 18px;font-weight:700;text-decoration:none;cursor:pointer}
.wp-block-button__link:hover,button:hover,input[type="submit"]:hover,.button:hover{background:var(--sv-button-hover);color:#fff;text-decoration:none}
input,textarea,select{background:#2f2f2f;color:var(--sv-text);border:1px solid var(--sv-border);border-radius:4px;padding:10px;max-width:100%}
.sidebar .widget{padding:22px;margin-bottom:22px;box-shadow:0 var(--sv-card-relief) calc(var(--sv-card-relief) * 2.1) rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.10), inset 0 -1px 0 rgba(0,0,0,.23)}.widget-title{font-size:1.2rem;border-bottom:2px solid var(--sv-accent);padding-bottom:10px;margin-bottom:15px}.widget ul{padding-left:20px}
.site-footer{background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(0,0,0,.12)), var(--sv-footer);border-top:1px solid rgba(255,255,255,.10);color:var(--sv-muted);padding:32px 0;box-shadow:0 calc(var(--sv-footer-relief) * -1) calc(var(--sv-footer-relief) * 2.2) rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.10)}.site-footer a{color:var(--sv-accent)}
.footer-widgets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin-bottom:24px}.site-info{font-size:.9rem;border-top:1px solid var(--sv-border);padding-top:18px}
.pagination,.nav-links{display:flex;gap:10px;flex-wrap:wrap}.page-numbers,.nav-links a{background:var(--sv-nav);border:1px solid var(--sv-border);padding:8px 12px;border-radius:4px;color:var(--sv-text)}.page-numbers.current{background:var(--sv-button);color:#fff}

@media (max-width:900px){
    .container{width:min(100% - 28px, 760px)}
    .site-header{min-height:var(--sv-mobile-header-height);background-position:var(--sv-mobile-header-position);background-size:contain;background-color:#f7f7f4;box-shadow:0 calc(var(--sv-header-relief) * .55) calc(var(--sv-header-relief) * 1.4) rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.10)}
    .header-overlay{min-height:var(--sv-mobile-header-height);align-items:center}
    .site-branding{padding:28px 0 24px;max-width:92%}
    .custom-logo-link{display:inline-block;max-width:220px;margin-bottom:8px}
    .custom-logo{max-height:76px;width:auto}
    .site-title{font-size:clamp(1.7rem,8vw,2.8rem);line-height:1.05;overflow-wrap:anywhere}
    .site-description{font-size:clamp(.92rem,4vw,1.12rem);line-height:1.35;margin-top:.45rem;max-width:34rem}
    .content-sidebar{grid-template-columns:1fr;gap:22px}
    .site-main-wrap{padding:24px 0}
    .site-content{padding:22px;border-radius:7px}
    .post-card,.page-card{padding:20px;margin-bottom:20px}
    .footer-widgets{grid-template-columns:1fr;gap:18px}
    .main-navigation .container{width:100%}
    .menu-toggle{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(0,0,0,.10)), var(--sv-button);color:#fff;border:0;padding:14px 18px;font-weight:800;width:100%;text-align:left;text-transform:uppercase;letter-spacing:.04em}
    .menu-toggle:after{content:'☰';font-size:1.25rem;line-height:1}
    .main-navigation.toggled .menu-toggle:after{content:'×';font-size:1.45rem}
    .main-navigation ul{display:none;flex-direction:column;width:100%;background:var(--sv-nav)}
    .main-navigation.toggled ul{display:flex}
    .main-navigation li{width:100%}
    .main-navigation a{border-top:1px solid var(--sv-border);padding:14px 18px;font-size:.95rem}
}
@media (max-width:520px){
    .container{width:min(100% - 22px, 480px)}
    .site-branding{padding:22px 0 20px;max-width:100%}
    .custom-logo-link{max-width:185px}
    .custom-logo{max-height:62px}
    .site-title{font-size:clamp(1.45rem,9vw,2.15rem)}
    .site-description{font-size:.92rem}
    .site-content{padding:18px}
    .post-card,.page-card,.sidebar .widget{padding:17px}
    h1{font-size:clamp(1.65rem,8vw,2.2rem)}
    h2{font-size:clamp(1.35rem,7vw,1.8rem)}
}



/* Mobile-ready logo/banner header
   De header-afbeelding schaalt mee met het scherm en wordt niet afgesneden. */
.site-header{
    background-color:#f7f7f4;
    background-size:contain;
}
@media (max-width:900px){
    .site-header{
        background-size:contain;
        background-repeat:no-repeat;
        background-position:var(--sv-mobile-header-position);
    }
}
@media (max-width:520px){
    .site-header{
        min-height:var(--sv-mobile-header-height);
    }
}
