/*
Theme Name: NBG Klassiek & Helder Magische Details
Theme URI: https://goochelclubnbg.nl
Author: NBG
Description: Rustige en overzichtelijke WordPress-website voor de Noord-Hollandse Bond van Goochelaars, gebaseerd op de eerste goedgekeurde NBG-proefsite.
Version: 3.5.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: nbg-v35
*/

:root{--navy:#0b2344;--navy2:#07182f;--gold:#c99a35;--ink:#172033;--muted:#5f6c7f;--paper:#f7f5f0;--white:#fff;--line:#e7e2d8;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;line-height:1.72;font-size:17px}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.container{width:min(var(--max),calc(100% - 48px));margin:auto}
.top{background:#fff;border-bottom:1px solid #eee;position:sticky;top:0;z-index:100}.nav{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:14px;font-family:Georgia,serif;font-weight:700;color:var(--navy);font-size:21px;line-height:1.2}.brand img{height:58px;width:auto}.links{display:flex;align-items:center;gap:24px;font-size:14px;font-weight:700;white-space:nowrap}.links a{padding:32px 0 28px;border-bottom:3px solid transparent}.links a:hover,.links a.active{color:var(--gold);border-bottom-color:var(--gold)}.menu-toggle{display:none;border:0;background:var(--navy);color:#fff;border-radius:5px;padding:10px 13px;font-weight:700}
.hero{position:relative;overflow:hidden;min-height:610px;display:grid;align-items:center;background:linear-gradient(90deg,rgba(4,20,42,.97) 0%,rgba(4,20,42,.90) 42%,rgba(4,20,42,.56) 62%,rgba(4,20,42,.10) 100%),url('assets/img/hero-general-modern.png') 100% 63%/cover no-repeat;color:#fff}.hero .container{width:min(1480px,calc(100% - 56px));margin:auto}.hero .inner{max-width:565px;padding:88px 0 88px 0}.kicker,.eyebrow{font-size:13px;text-transform:uppercase;letter-spacing:.16em;font-weight:800;color:var(--gold)}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;color:var(--navy);line-height:1.18}.hero h1{color:#fff;font-size:58px;margin:12px 0 20px}.hero p{font-size:20px;max-width:650px;color:#edf2f7;margin:0}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}.btn{display:inline-block;padding:13px 21px;border-radius:6px;background:var(--gold);color:#fff;font-weight:800;font-size:14px}.btn.alt{background:transparent;border:1px solid rgba(255,255,255,.75)}.btn.dark{background:var(--navy)}
section{padding:78px 0}.intro{text-align:center;max-width:840px;margin:auto}.intro h2{font-size:40px;margin:9px 0 16px}.intro p{font-size:18px;color:#475467;margin:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:40px}.card{background:#fff;border:1px solid #ece8df;border-radius:12px;padding:32px;box-shadow:0 8px 25px rgba(9,35,68,.05)}.card h3{margin:4px 0 12px;font-size:25px}.card p{color:#596579;margin:0 0 19px}.card .more{color:var(--gold);font-weight:800;font-size:14px}.soft{background:var(--paper)}
.split{display:grid;grid-template-columns:1.08fr .92fr;gap:58px;align-items:center}.split h2{font-size:42px;margin:9px 0 20px}.split p{margin:0 0 18px}.feature-img{border-radius:14px;overflow:hidden;min-height:430px;background:#ddd}.feature-img img{width:100%;height:100%;object-fit:cover}.timeline{border-left:2px solid #d9c89c;margin:34px 0 8px 8px}.time{position:relative;padding:0 0 30px 30px}.time:before{content:'';position:absolute;left:-8px;top:6px;width:14px;height:14px;border-radius:50%;background:var(--gold)}.time b{display:block;color:var(--navy);font-family:Georgia,serif;font-size:19px}.time p{margin:6px 0 0;color:#58667a}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:35px}.gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px}.callout{background:var(--navy);color:#fff;padding:44px 0}.callout .container{display:flex;align-items:center;justify-content:space-between;gap:30px}.callout h2{color:#fff;margin:0;font-size:32px}.callout p{margin:7px 0 0;color:#dce4ed}
.pagehero{background:var(--navy);color:#fff;padding:68px 0}.pagehero h1{color:#fff;font-size:48px;margin:8px 0 12px}.pagehero p{max-width:800px;color:#dbe4ef;font-size:18px;margin:0}.content-section{padding:74px 0}.prose{max-width:920px}.prose h2{font-size:35px;margin:48px 0 18px}.prose h2:first-child{margin-top:0}.prose h3{font-size:25px;margin:34px 0 14px}.prose p{color:#3d495b;margin:0 0 21px}.prose ul{margin:0 0 24px;padding-left:22px}.prose li{margin-bottom:9px}.lead{font-size:19px;color:#465368}.quote{border-left:4px solid var(--gold);padding:12px 0 12px 24px;font-family:Georgia,serif;font-size:20px;color:#3c4960;margin:32px 0}
.history-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px;margin-top:34px}.history-item{border:1px solid var(--line);border-radius:11px;overflow:hidden;background:#fff}.history-item img{width:100%;height:240px;object-fit:cover}.history-item .txt{padding:25px}.history-item h3{margin:0 0 10px;font-size:25px}.history-item p{margin:0 0 14px;color:#4d5a6d}.history-item details{border-top:1px solid var(--line);padding-top:14px}.history-item details summary{font-weight:800;color:var(--gold);cursor:pointer}.history-item details p{font-size:15.5px;margin-top:13px}
.contactbox{display:grid;grid-template-columns:1fr 1fr;gap:36px}.contactcard{border:1px solid var(--line);border-radius:12px;padding:32px;background:#fff}.contactcard h2{font-size:30px;margin:0 0 16px}.contactcard p{margin:0 0 18px}.contactcard a{color:var(--navy);font-weight:800}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{margin-bottom:17px}.field label{display:block;font-weight:700;margin-bottom:6px}.field input,.field textarea{width:100%;border:1px solid #cfd6df;border-radius:6px;padding:12px 13px;font:inherit}.field textarea{min-height:150px;resize:vertical}.notice{padding:14px 16px;border-radius:6px;background:#eef6ef;margin-bottom:20px}
.agenda-list{display:grid;gap:18px;margin-top:30px}.agenda-item{display:grid;grid-template-columns:95px 1fr;gap:24px;padding:24px;border:1px solid var(--line);border-radius:10px;background:#fff}.agenda-date{background:var(--navy);color:#fff;border-radius:8px;text-align:center;padding:13px 8px;align-self:start}.agenda-date strong{display:block;font-family:Georgia,serif;font-size:28px;line-height:1}.agenda-date span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.08em;margin-top:5px}.agenda-item h3{margin:0 0 7px;font-size:24px}.agenda-item p{margin:0;color:#58667a}.empty{padding:30px;border:1px dashed #cfd5dd;border-radius:10px;background:#fafafa}
.footer{background:var(--navy2);color:#d7e0ea;padding:48px 0 28px}.footgrid{display:grid;grid-template-columns:2fr 1fr 1.4fr;gap:40px}.footer h3{color:#fff;font-size:18px;margin:0 0 14px}.footer p{margin:0 0 16px}.footer a{color:#d7e0ea}.footer a:hover{color:#fff}.small{font-size:13px;color:#9eabb9;border-top:1px solid rgba(255,255,255,.12);margin-top:34px;padding-top:22px}
@media(max-width:1020px){.links{gap:15px;font-size:13px}.brand span{display:none}}
@media(max-width:860px){.menu-toggle{display:block}.links{display:none;position:absolute;top:84px;left:0;right:0;background:#fff;border-bottom:1px solid #ddd;padding:12px 24px 22px;flex-direction:column;align-items:flex-start;gap:0}.links.open{display:flex}.links a{width:100%;padding:12px 0;border-bottom:1px solid #eee}.hero{background-position:68% 50%}.hero .container{width:min(100% - 36px,1360px)}.hero h1{font-size:46px}.cards,.history-grid,.split,.contactbox,.footgrid{grid-template-columns:1fr}.split{gap:36px}.gallery{grid-template-columns:repeat(2,1fr)}.callout .container{display:block}.callout .btn{margin-top:22px}.feature-img{min-height:360px}.agenda-item{grid-template-columns:80px 1fr}}
@media(max-width:540px){body{font-size:16px}.container{width:min(100% - 30px,var(--max))}.hero{min-height:540px;background-position:98% 50%}.hero .container{width:min(100% - 30px,1480px)}.hero .inner{padding:68px 0 68px 0;max-width:100%}.hero h1{font-size:38px}.hero p{font-size:18px}.brand img{height:49px}.pagehero{padding:52px 0}.pagehero h1{font-size:38px}section,.content-section{padding:56px 0}.intro h2,.split h2{font-size:33px}.gallery{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.agenda-item{grid-template-columns:1fr}.agenda-date{width:86px}.history-item img{height:210px}}


.top{backdrop-filter:saturate(1.1) blur(10px)}
.links a,.btn,.card,.history-item,.gallery img,.agenda-item{transition:all .24s ease}
.links a{position:relative}
.links a:after{content:'';position:absolute;left:0;right:0;bottom:14px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:0;transform:scaleX(.55);transition:all .22s ease}
.links a:hover:after,.links a.active:after{opacity:1;transform:scaleX(1)}
.hero:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 84% 27%,rgba(235,194,102,.18),transparent 23%),radial-gradient(circle at 72% 78%,rgba(235,194,102,.13),transparent 19%);pointer-events:none}
.hero:after{content:'';position:absolute;left:28px;top:22px;bottom:22px;width:1px;background:linear-gradient(180deg,rgba(201,154,53,.7),rgba(201,154,53,.12));box-shadow:calc(100vw - 130px) 0 0 rgba(201,154,53,.18);opacity:.65;pointer-events:none}
.hero .inner{position:relative;z-index:2}
.hero .inner:after{content:'✦';position:absolute;left:-18px;top:-22px;color:rgba(255,255,255,.13);font-size:36px}
.btn{box-shadow:0 8px 24px rgba(9,35,68,.12);position:relative;overflow:hidden}
.btn:before{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 0%,rgba(255,255,255,.22) 45%,transparent 65%);transform:translateX(-120%);transition:transform .55s ease}
.btn:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(9,35,68,.18)}
.btn:hover:before{transform:translateX(120%)}
.btn.alt:hover{background:rgba(255,255,255,.08)}
.soft,.pagehero,.callout,.footer{position:relative;overflow:hidden}.soft>.container,.pagehero>.container,.footer>.container{position:relative;z-index:1}
.soft:before,.pagehero:before,.footer:before{content:'';position:absolute;inset:0;pointer-events:none;z-index:0;opacity:.035;background-image:url('assets/img/suits-pattern.png');background-repeat:repeat;background-size:170px 178px;background-position:center center}
.card,.history-item,.agenda-item,.contactcard{position:relative}
.card:hover,.history-item:hover,.agenda-item:hover,.contactcard:hover{transform:translateY(-3px);box-shadow:0 16px 36px rgba(9,35,68,.10)}
.card:after,.history-item:after,.agenda-item:after,.contactcard:after{content:'';position:absolute;left:18px;right:18px;bottom:-1px;height:2px;background:linear-gradient(90deg,transparent,rgba(201,154,53,.86),transparent);opacity:0;transition:opacity .22s ease}
.card:hover:after,.history-item:hover:after,.agenda-item:hover:after,.contactcard:hover:after{opacity:1}
.kicker,.eyebrow{position:relative;display:inline-block;padding-right:18px}
.kicker:after,.eyebrow:after{content:'✦';position:absolute;right:0;top:0;color:rgba(201,154,53,.86);font-size:12px}
.intro .magic-line{margin-top:16px;font-weight:700;color:var(--navy)}
.section-mark{display:flex;align-items:center;gap:14px;margin:20px 0 26px;color:var(--gold);font-weight:800;font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.section-mark img{height:28px;width:auto;filter:drop-shadow(0 1px 0 rgba(0,0,0,.04))}
.feature-img,.history-item,.gallery img{box-shadow:0 12px 30px rgba(9,35,68,.08)}
.feature-img img,.gallery img,.history-item img{transition:transform .35s ease,filter .35s ease}
.feature-img:hover img,.gallery img:hover,.history-item:hover img{transform:scale(1.018);filter:contrast(1.02)}
.history-item img{object-fit:contain;background:linear-gradient(180deg,#f8f4ed,#f1ede6);padding:14px}
.feature-img.contain img{object-fit:contain;background:linear-gradient(180deg,#f8f4ed,#f1ede6);padding:18px}
.timeline{position:relative}
.timeline:before{content:'';position:absolute;left:-2px;top:0;bottom:0;width:2px;background:linear-gradient(180deg,rgba(201,154,53,.85),rgba(201,154,53,.18))}
.time b small{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);font-family:Arial,Helvetica,sans-serif;margin-top:2px}
.callout{background:linear-gradient(135deg,var(--navy),#102d57)}
.footer .brand-mini{display:flex;align-items:center;gap:14px;margin-top:14px}
.footer .brand-mini img{height:44px;width:auto;opacity:.9}
.footer .brand-mini span{font-family:Georgia,serif;color:#fff;font-size:18px}
.footer .small{position:relative}
.footer .small:before{content:'';display:block;width:80px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);margin:0 0 18px}
@media(max-width:860px){.hero:after{display:none}.soft:before,.pagehero:before,.footer:before{opacity:.025}.hero{background-position:84% 52%}.hero .container{width:min(100% - 36px,1440px)}}
