/*
Theme Name: Leerorkest Stichtse Vecht
Author: Webskill
Description: Maatwerk blokthema met bewerkbare secties voor Leerorkest Stichtse Vecht.
Version: 1.0.0
Requires at least: 6.6
Requires PHP: 8.1
Text Domain: leerorkest
*/
.wp-site-blocks{padding:0}.wp-site-blocks>*{margin-block-start:0}.leerorkest-page .wp-block-post-content>*{margin-block-start:0}.leerorkest-page .wp-block-template-part{margin:0}html{scroll-behavior:smooth;scroll-padding-top:24px}.skip-link{position:fixed;top:8px;left:8px;z-index:9999;padding:12px 20px;background:#103959;color:white;transform:translateY(-200%)}.skip-link:focus{transform:none}.leerorkest-honey{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.form-feedback:not(:empty){padding:14px;border:2px solid currentColor;border-radius:8px}.form-feedback[data-error="true"]{color:#952a18}.send-button:disabled{opacity:.6;cursor:wait}.request-form input:focus-visible,.request-form textarea:focus-visible{outline:3px solid #103959;outline-offset:3px}.standard-content{max-width:1100px;margin:auto;padding:220px 24px 80px;min-height:65vh}.standard-content p{font-size:20px;line-height:1.6}.standard-content h1{font-size:clamp(36px,5vw,64px)}.programs:empty{display:none}.programs{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr))}.donor-logos{flex-wrap:wrap}.donor-logos img{object-fit:contain}.request-form textarea{resize:vertical}.wp-block-post-content:focus{outline:none}
@media(max-width:700px){.programs{grid-template-columns:repeat(2,minmax(0,1fr))}.standard-content{padding-top:150px}}
@media(max-width:420px){.programs{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Gravity Forms: preserve its own field widths, validation and conditional logic. */
.request-card .gform_wrapper{--gf-color-primary:#103959;--gf-color-primary-contrast:#fff;--gf-color-in-ctrl:#103959;--gf-color-in-ctrl-primary:#103959;--gf-color-in-ctrl-light:#fff;--gf-color-in-ctrl-contrast:#103959;--gf-color-out-ctrl:#fff;--gf-radius:4px;--gf-font-family:Afacad,Arial,sans-serif;--gf-font-size-primary:18px;--gf-ctrl-size:56px;--gf-ctrl-btn-bg-color-primary:#103959;--gf-ctrl-btn-color-primary:#fff;color:#fff;font-family:Afacad,Arial,sans-serif}
.request-card .gform_wrapper .gfield_label,.request-card .gform_wrapper .gform-field-label{color:#fff;font-family:inherit;font-weight:400}.request-card .gform_wrapper .gfield_required{color:inherit}.request-card .gform_wrapper input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=hidden]),.request-card .gform_wrapper textarea,.request-card .gform_wrapper select{background:#fff;color:#103959;border:0;border-radius:4px;font-family:inherit;font-size:18px;padding:14px 16px}.request-card .gform_wrapper input:focus-visible,.request-card .gform_wrapper textarea:focus-visible,.request-card .gform_wrapper select:focus-visible{outline:3px solid #103959;outline-offset:3px}.request-card .gform_wrapper textarea{min-height:180px}.request-card .gform_wrapper .gform_footer{justify-content:flex-end}.request-card .gform_wrapper .gform_button,.request-card .gform_wrapper .gform_next_button,.request-card .gform_wrapper .gform_previous_button{background:#103959!important;color:#fff!important;border:0!important;border-radius:7px!important;padding:14px 30px!important;font-family:inherit!important;font-size:18px!important;cursor:pointer}.request-card .gform_confirmation_message{color:#fff;font-size:22px;line-height:1.5}.request-card .gform_validation_errors{background:#fff;color:#952a18}.lo-form-contact{font-size:22px;line-height:1.5;min-height:180px}.lo-form-contact .button{display:inline-flex;margin-top:18px}.lo-gravity-preview{padding:24px;border:2px dashed currentColor;font:18px/1.5 Afacad,Arial,sans-serif}
.request-card .gform_wrapper .gfield_label,.request-card .gform_wrapper .gform-field-label{font-size:16px;line-height:1.4}.request-card .gform_wrapper .gfield input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.request-card .gform_wrapper .gfield select{min-height:48px;height:auto;line-height:1.4;padding:12px}.request-card .gform_wrapper .gfield textarea{height:154px;min-height:154px;line-height:1.4;padding:12px}.request-card .gform_wrapper .gform_fields{row-gap:18px;column-gap:28px}.request-card .gform_wrapper .ginput_counter{display:none}.request-card .gform_wrapper .ginput_container_consent .gform-field-label{color:#103959}.request-card .gform_wrapper .gform_footer{margin-top:24px;padding-top:0}.request-card .gform_wrapper .gform_required_legend{display:none}
@media(max-width:700px){.request-card .gform_wrapper .gfield:not(.gfield--type-hidden){grid-column:1/-1!important}.request-card .gform_wrapper .gform_fields{row-gap:16px}}

/* A compact, always reachable mobile header, independent of the page clipping. */
@media(max-width:700px) {
 html { scroll-padding-top:calc(92px + var(--leerorkest-admin-offset,0px) + env(safe-area-inset-top,0px)); }
 .leerorkest-page { padding-top:calc(76px + env(safe-area-inset-top,0px)); }
 .header { position:fixed; inset:calc(var(--leerorkest-admin-offset,0px) + env(safe-area-inset-top,0px)) 0 auto; z-index:1000; height:76px; padding:10px 24px; align-items:center; background:var(--paper); border-bottom:1px solid #10395914; box-shadow:0 4px 18px #10395908; }
 .header .brand { width:80px; }
 .header .brand-art { width:75.2px; height:39.6px; }
 .header .brand-art img { transform:scale(.4); }
 .header .brand-place { font-size:10.4px; line-height:1.2; margin-top:2px; }
 .header .brand:hover { transform:none; }
 .header .menu-toggle { min-height:44px; }
 .header .navigation { top:calc(100% + 8px); left:16px; right:16px; max-height:calc(100dvh - 100px - var(--leerorkest-admin-offset,0px) - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px)); overflow-y:auto; overscroll-behavior:contain; }
}

/* A small musical donation action for the mobile sticky bar. */
.header-actions { display:contents; }
.header-donate { display:none; }
@media(max-width:700px) {
 .header { gap:12px; }
 .header .brand { flex:none; }
 .header-actions { display:flex; align-items:center; justify-content:flex-end; gap:8px; min-width:0; }
 .header-donate { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; padding:10px 14px; border-radius:9px; background:#ffa300; color:var(--ink); font-size:17px; line-height:24px; font-weight:700; white-space:nowrap; box-shadow:0 3px 0 #d98b0059; transition:transform 160ms ease,background 160ms ease,box-shadow 160ms ease; }
 .header-donate-note { display:block; width:20px; height:22px; flex:none; transform:rotate(-8deg); transition:transform 220ms cubic-bezier(.2,.8,.2,1); }
 .header-donate-note img { max-width:none; transform:scale(.13245); transform-origin:top left; }
 .header-donate:active { transform:translateY(2px) scale(.98); box-shadow:0 1px 0 #d98b0059; }
 .header .menu-toggle { min-width:94px; gap:8px; padding-inline:12px; font-size:16px; }
 .header-donate:focus-visible,.header .menu-toggle:focus-visible { outline-offset:3px; }
}
@media(max-width:360px) {
 .header { padding-inline:16px; }
 .header .menu-toggle { min-width:44px; width:44px; justify-content:center; }
 .header .menu-label { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
}
@media(max-width:700px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
 .header-donate:hover { background:#ffb21f; }
 .header-donate:hover .header-donate-note { transform:rotate(7deg) translateY(-1px); }
}
