/* Themapubquiz.nl — global design stylesheet (Elementor-friendly)
   Reproduces the pub-quiz blueprint: navy/gold/cream, Bricolage Grotesque + Plus Jakarta Sans. */
@import url('https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,600;12..96,700;12..96,800&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=Kaushan+Script&family=Space+Mono:wght@400;700&display=swap');

:root{
--navy:#0a1b2e;--navy-2:#0d2740;--navy-3:#16375a;--navy-soft:#1b3b5c;
--ink:#0a1b2e;--ink-soft:#2c4157;--muted:#5d7085;--muted-navy:#a7b6c6;
--gold:#e6a92e;--gold-d:#c58c17;--gold-l:#fbf0d5;--gold-t:rgba(230,169,46,.14);
--coral:#ff6a4d;--green:#2fae74;--blue:#1f6fc4;
--cream:#f7f0df;--cream-2:#fbf6ea;--white:#fff;--sand:#f2e8d3;
--line:#e7ddc6;--line-2:#ddd0b4;--line-navy:rgba(255,255,255,.12);
--r-sm:10px;--r:14px;--r-lg:20px;--r-xl:28px;--pill:999px;
--sh-sm:0 2px 10px rgba(10,27,46,.07);--sh:0 12px 30px rgba(10,27,46,.12);--sh-lg:0 24px 60px rgba(10,27,46,.22);
--wrap:1220px;--fdisp:'Bricolage Grotesque',system-ui,sans-serif;--fbody:'Plus Jakarta Sans',system-ui,sans-serif;--fmono:'Space Mono',monospace;--fscript:'Kaushan Script',cursive;
}

/* Base — scoped to Elementor + Xpro templates so we don't fight the theme globally */
body{--e-global-color-primary:var(--navy);--e-global-color-text:var(--ink);}
.tpq, .xpro-themer-header, .xpro-themer-footer{font-family:var(--fbody);color:var(--ink);}
.tpq h1,.tpq h2,.tpq h3,.tpq h4{font-family:var(--fdisp);font-weight:800;line-height:1.02;letter-spacing:-.03em;margin:0;color:var(--navy)}
.tpq h1{font-size:clamp(2.6rem,5.5vw,4.4rem)}
.tpq h2{font-size:clamp(2rem,3.8vw,3.1rem)}
.tpq h3{font-size:clamp(1.25rem,2vw,1.6rem)}
.tpq p{margin:0 0 1em;line-height:1.6}
.tpq a{color:var(--blue);text-decoration:none}
.tpq a:hover{color:#164e8f}

/* Layout helpers */
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 26px;width:100%}
.eyebrow{font-family:var(--fmono);font-size:.78rem;text-transform:uppercase;letter-spacing:.16em;color:var(--gold-d);margin:0 0 12px;font-weight:700}
.lead{font-size:1.18rem;color:var(--ink-soft);line-height:1.55}
.muted{color:var(--muted)}
.tpq-center{text-align:center}

/* Buttons — applied to Elementor/Xpro button anchors */
.tpq-btn, a.tpq-btn{display:inline-flex;align-items:center;gap:.55em;font-family:var(--fbody);font-weight:700;font-size:1rem;border:0;border-radius:var(--pill);padding:15px 28px;cursor:pointer;text-decoration:none;line-height:1;transition:transform .12s,background .15s,box-shadow .15s,color .15s}
.tpq-btn:active{transform:translateY(1px)}
.btn-primary,.tpq-btn.btn-primary{background:var(--navy)!important;color:#fff!important}
.btn-primary:hover{background:var(--navy-2)!important;color:#fff!important;box-shadow:var(--sh)}
.btn-yellow,.tpq-btn.btn-yellow{background:var(--gold)!important;color:var(--navy)!important}
.btn-yellow:hover{background:#f0b53c!important;box-shadow:0 10px 26px rgba(230,169,46,.4)}
.btn-outline{background:transparent!important;color:var(--ink)!important;box-shadow:inset 0 0 0 2px var(--line-2)}
.btn-outline:hover{color:var(--navy)!important;box-shadow:inset 0 0 0 2px var(--navy)}
.btn-ghost{background:#fff!important;color:var(--navy)!important;box-shadow:var(--sh-sm)}
.btn-ghost-d{background:rgba(255,255,255,.06)!important;color:#fff!important;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.24)}
.btn-lg{padding:18px 34px!important;font-size:1.08rem!important}
.btn-sm{padding:11px 19px!important;font-size:.92rem!important}
.lnk{display:inline-flex;align-items:center;gap:.45em;font-weight:700;color:var(--navy)!important;text-decoration:none}
.lnk:hover{color:var(--gold-d)!important}

/* Full-bleed section backgrounds */
.sec-white{background:var(--cream-2)}
.sec-cream{background:var(--cream)}

/* USP bar */
.uspbar{background:var(--navy-2)}
.usp{display:flex;align-items:center;gap:10px;font-weight:600;font-size:.94rem;color:#e8eef4}
.usp .elementor-icon,.usp i,.usp svg{color:var(--gold)!important;fill:var(--gold)!important}

/* Hero */
.hero{background:radial-gradient(90% 130% at 78% 15%,#16375a 0%,#0d2740 45%,#081627 100%);color:#fff;position:relative;overflow:hidden}
.hero h1,.hero h2{color:#fff}
.hero .go{color:var(--gold)}
.hero .lead{color:#c3d0dd}
.pill-badge{display:inline-flex;align-items:center;gap:9px;font-family:var(--fmono);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:#f0d79a;background:rgba(255,255,255,.05);border:1px solid rgba(230,169,46,.35);border-radius:var(--pill);padding:10px 18px}
.pill-badge .dot{width:9px;height:9px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px rgba(230,169,46,.2)}
.hero-badges .hb{display:flex;align-items:center;gap:10px;font-weight:600;font-size:.96rem;color:#dbe4ee}
.htheme{display:flex;align-items:center;gap:14px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.1);border-radius:var(--r);padding:16px 18px;text-decoration:none;transition:.15s}
.htheme:hover{background:rgba(255,255,255,.09);border-color:rgba(230,169,46,.5);transform:translateY(-2px)}
.htheme .htn{font-weight:700;color:#fff;font-size:1.02rem}

/* Interior page hero (navy) */
.pagehero{background:radial-gradient(90% 150% at 80% 0%,#16375a,#0b1c30 60%);color:#fff;position:relative;overflow:hidden}
.pagehero h1,.pagehero h2{color:#fff}
.pagehero .lead{color:#c3d0dd}
.pagehero .eyebrow{color:var(--gold)}
.crumb{font-size:.88rem;color:#8fa0b2}
.crumb a{color:#8fa0b2}
.crumb a:hover{color:var(--gold)}

/* Product cards */
.card{background:#fff;border-radius:var(--r-lg);box-shadow:var(--sh-sm);overflow:hidden;transition:.15s;display:flex;flex-direction:column;border:1px solid var(--line)}
.card:hover{transform:translateY(-4px);box-shadow:var(--sh)}
.cover{aspect-ratio:4/3;position:relative;overflow:hidden}
.cat{font-family:var(--fmono);font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--gold-d);font-weight:700}
.name{font-family:var(--fdisp);font-weight:800;font-size:1.14rem;line-height:1.08;color:var(--navy)}
.desc{font-size:.9rem;color:var(--muted);line-height:1.45}
.price{font-family:var(--fdisp);font-weight:800;font-size:1.4rem;color:var(--navy)}
.tag{position:absolute;top:12px;left:12px;background:var(--coral);color:#fff;font-weight:700;font-size:.76rem;padding:5px 12px;border-radius:var(--pill);z-index:2}
.tag.pop{background:var(--gold);color:var(--navy)}
.rate{color:var(--gold-d);font-weight:700;font-size:.85rem}

/* Quiz cover art */
.qcover{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;padding:16px;color:#fff;overflow:hidden}
.qcover::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 1px 1px,rgba(255,255,255,.16) 2px,transparent 0);background-size:26px 26px;opacity:.9}
.qcover .qlabel{font-family:var(--fmono);font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;position:relative;opacity:.92;color:#fff}
.qcover .qtitle{font-family:var(--fdisp);font-weight:800;font-size:1.5rem;line-height:1.02;position:relative;letter-spacing:-.02em;color:#fff}
.qcover .qmark{position:absolute;right:-6px;bottom:-14px;font-family:var(--fdisp);font-weight:800;font-size:8rem;line-height:1;opacity:.16;color:#fff}

/* Theme tiles */
.theme-tile{position:relative;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:1/1;display:flex;flex-direction:column;justify-content:flex-end;padding:20px;color:#fff;text-decoration:none;box-shadow:var(--sh-sm);transition:.15s}
.theme-tile:hover{transform:translateY(-4px);box-shadow:var(--sh)}
.theme-tile::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 1px 1px,rgba(255,255,255,.18) 2px,transparent 0);background-size:24px 24px}
.theme-tile .tt{font-family:var(--fdisp);font-weight:800;font-size:1.4rem;line-height:1.02;position:relative;letter-spacing:-.02em;color:#fff}
.theme-tile .td{font-size:.86rem;position:relative;opacity:.94;margin:6px 0 0;line-height:1.35;color:#fff}
.theme-tile .count{position:relative;font-family:var(--fmono);font-size:.72rem;letter-spacing:.08em;margin-top:10px;opacity:.9;color:#fff}

/* palette bgs */
.bg-sport{background:linear-gradient(150deg,#1FA971,#0E7A4D)}
.bg-muziek{background:linear-gradient(150deg,#E0499B,#B01E77)}
.bg-film{background:linear-gradient(150deg,#5B4BE0,#3A2BB8)}
.bg-feest{background:linear-gradient(150deg,#FF5C48,#D8321F)}
.bg-kennis{background:linear-gradient(150deg,#2E7CF6,#1857C4)}
.bg-reizen{background:linear-gradient(150deg,#12A5B8,#0A7D8C)}
.bg-eten{background:linear-gradient(150deg,#FF9A3C,#EF6C0A)}
.bg-nostalgie{background:linear-gradient(150deg,#C79A2E,#9C7414)}
.bg-dieren{background:linear-gradient(150deg,#5DA732,#3C7A1D)}
.bg-cultuur{background:linear-gradient(150deg,#8A4FD6,#6425B0)}
.bg-navy{background:linear-gradient(150deg,#16375a,#0b1c30)}

/* Steps */
.step{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:30px 28px;position:relative;height:100%}
.step .num{width:48px;height:48px;border-radius:14px;background:var(--gold-l);color:var(--gold-d);font-family:var(--fdisp);font-weight:800;font-size:1.45rem;display:grid;place-items:center;margin-bottom:18px}

/* Feature blocks */
.feat{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:28px 26px;height:100%}
.feat .ic{width:54px;height:54px;border-radius:15px;background:var(--gold-l);display:grid;place-items:center;margin-bottom:18px}
.feat .ic .elementor-icon,.feat .ic i,.feat .ic svg{color:var(--gold-d)!important;fill:var(--gold-d)!important}

/* Band (navy) */
.band{background:linear-gradient(150deg,#16375a,#0b1c30);color:#fff}
.band h2{color:#fff}
.band .lead{color:#c3d0dd}
.band .eyebrow{color:var(--gold)}

/* Founders */
.founder .photo{aspect-ratio:1/1;border-radius:var(--r-lg);background:var(--sand);display:grid;place-items:center;color:var(--gold-d);border:2px dashed var(--line-2);margin-bottom:12px;font-weight:600;font-size:.85rem;padding:14px;text-align:center}
.founder .fn{font-family:var(--fdisp);font-weight:800;font-size:1.1rem}
.founder .fr{color:var(--muted);font-size:.9rem}

/* Reviews */
.review{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:28px;height:100%}
.review p{font-size:1.02rem;color:var(--ink-soft);font-style:italic}
.review .who{font-weight:700}
.empty-note{background:var(--gold-l);border:1px dashed var(--line-2);border-radius:var(--r);padding:15px 20px;color:var(--gold-d);font-size:.9rem;text-align:center}

/* CTA band */
.ctaband{background:linear-gradient(150deg,#f2b23e,#e0912a);border-radius:var(--r-xl);padding:60px;text-align:center;position:relative;overflow:hidden}
.ctaband::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 1px 1px,rgba(10,27,46,.1) 2px,transparent 0);background-size:28px 28px}
.ctaband>*{position:relative}
.ctaband h2{color:var(--navy)}
.ctaband p{color:#4a3410}

/* Chips */
.chip{background:#fff;border:1.5px solid var(--line-2);border-radius:var(--pill);padding:9px 18px;font-weight:600;font-size:.92rem;color:var(--ink-soft);text-decoration:none;display:inline-block}
.chip:hover{border-color:var(--gold-d);color:var(--gold-d)}
.chip.active{background:var(--navy);border-color:var(--navy);color:#fff}

/* Receive box + specs */
.receive{background:var(--sand);border-radius:var(--r-lg);padding:34px 38px}
.buycard{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:28px;box-shadow:var(--sh-sm)}
.spec{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}
.spec .sl{font-size:.72rem;color:var(--muted);font-family:var(--fmono);text-transform:uppercase;letter-spacing:.06em;display:block;margin-bottom:2px}
.spec .sv{font-weight:700;font-size:.98rem;display:block}
.info-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:28px}

/* Legal / TOC */
.toc{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:22px}
.legal-body h2{font-size:1.5rem;margin:0 0 14px;color:var(--navy)}
.legal-body h3{font-size:1.1rem;margin:22px 0 8px;color:var(--navy)}
.legal-body p,.legal-body li{color:var(--ink-soft)}
.callout{background:var(--gold-l);border:1px dashed var(--line-2);border-radius:var(--r);padding:16px 20px;color:var(--gold-d);font-size:.92rem}
.updated{font-family:var(--fmono);font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.ph-txt{color:var(--coral);font-weight:700}

/* FAQ (Elementor accordion restyle) */
.tpq-faq .elementor-accordion .elementor-accordion-item{background:#fff;border:1px solid var(--line)!important;border-radius:var(--r);margin-bottom:12px;overflow:hidden}
.tpq-faq .elementor-tab-title{font-weight:700!important;font-size:1.05rem!important;color:var(--navy)!important;padding:20px 24px!important}
.tpq-faq .elementor-tab-content{color:var(--muted)!important;padding:0 24px 20px!important}

/* Footer classes */
.tpq-footer{background:var(--navy);color:#a7b6c6}
.tpq-footer h4{color:#fff;font-family:var(--fdisp);font-weight:800;font-size:1.05rem}
.tpq-footer a{color:#a7b6c6}
.tpq-footer a:hover{color:var(--gold)}
.flogo{font-family:var(--fscript);font-size:1.9rem;color:#fff;line-height:1}
.flogo .nl{color:var(--gold);font-size:1.1rem}
.pay span{background:#fff;border-radius:6px;padding:5px 9px;font-size:.68rem;font-weight:700;color:var(--navy);font-family:var(--fmono);margin-right:6px;display:inline-block}

/* Brand logo (Kaushan script) */
.tpq-logo{font-family:var(--fscript);font-size:2rem;color:var(--navy-2);line-height:.9;letter-spacing:.5px}
.tpq-logo .nl{color:var(--gold-d);font-size:1.15rem}

/* Elementor heading/text reset inside our scope */
.tpq .elementor-heading-title{font-family:var(--fdisp);color:var(--navy)}
.tpq-white .elementor-heading-title{color:#fff}

/* ================= HEADER (Xpro template) ================= */
.tpq-header{background:var(--cream);position:sticky;top:0;z-index:90;box-shadow:0 1px 0 var(--line)}
.tpq-header .tpq-logo-w .xpro-site-title-wrapper,.tpq-header .tpq-logo-w a{font-family:var(--fscript)!important;color:var(--navy-2)!important;font-size:2rem!important;font-weight:400!important;line-height:.9;letter-spacing:.5px;text-decoration:none}
.tpq-header form input,.tpq-header input[type=search],.tpq-header .xpro-search input{border:2px solid var(--line-2)!important;border-radius:999px!important;height:48px!important;background:#fff!important;color:var(--navy)!important;padding:0 22px!important;font-family:var(--fbody)!important}
.tpq-navrow{border-top:1px solid var(--line);background:var(--cream)}
.tpq-navrow a,.tpq-navrow .xpro-nav-menu>li>a,.tpq-navrow .xpro-horizontal-menu a{font-weight:700!important;color:var(--navy)!important;text-transform:uppercase;font-size:.84rem!important;letter-spacing:.04em!important}
.tpq-navrow a:hover{color:var(--gold-d)!important}
.tpq-navrow .sub-menu a,.tpq-navrow ul ul a{text-transform:none!important;font-size:.92rem!important;color:var(--ink-soft)!important;font-weight:600!important}
.tpq-icons .elementor-icon-box-wrapper,.tpq-icons .xpro-icon-box-wrapper{display:flex;flex-direction:column;align-items:center;gap:2px}
.tpq-icons .elementor-icon-box-title,.tpq-icons .xpro-icon-box-title{font-size:.72rem!important;font-weight:600!important;color:var(--navy)!important;margin:0!important}
.tpq-icons .elementor-icon i,.tpq-icons .elementor-icon svg,.tpq-icons .xpro-icon-box-icon i{color:var(--navy)!important;fill:var(--navy)!important}
.tpq-header .elementor-menu-cart__toggle .elementor-button-icon,.tpq-header .elementor-menu-cart__toggle svg{color:var(--navy)!important;fill:var(--navy)!important}
.tpq-header .elementor-menu-cart__toggle .elementor-button-text{display:none}

/* ================= FOOTER (Xpro template) ================= */
.tpq-footer{background:var(--navy);color:#a7b6c6;padding:0}
.tpq-footer .elementor-heading-title{color:#fff!important;font-family:var(--fdisp)!important;font-weight:800!important;font-size:1.05rem!important}
.tpq-footer p,.tpq-footer li,.tpq-footer a{color:#a7b6c6!important}
.tpq-footer a:hover{color:var(--gold)!important}
.tpq-footer .elementor-icon-list-item a{color:#a7b6c6!important;font-size:.95rem}
.tpq-footer .tpq-flogo .elementor-heading-title,.tpq-footer .tpq-flogo a{font-family:var(--fscript)!important;font-size:1.9rem!important;color:#fff!important;font-weight:400!important}
.tpq-footer .xpro-social-icon a,.tpq-footer .elementor-social-icon{background:rgba(255,255,255,.07)!important;color:#fff!important}
.tpq-footer .xpro-social-icon a:hover{background:var(--gold)!important;color:var(--navy)!important}
.tpq-fbot{border-top:1px solid rgba(255,255,255,.1)}
.tpq-fbot,.tpq-fbot *{color:#7f90a2!important;font-size:.85rem}

/* Section vertical rhythm helpers */
.sec{padding:78px 0}
.sec-sm{padding:48px 0}
.wrap-narrow{max-width:900px;margin:0 auto;width:100%;padding:0 26px}

/* Grids */
.prod-grid{display:grid!important;grid-template-columns:repeat(4,1fr);gap:24px}
.theme-grid{display:grid!important;grid-template-columns:repeat(4,1fr);gap:20px}
.feat-grid{display:grid!important;grid-template-columns:repeat(4,1fr);gap:22px}
.steps{display:grid!important;grid-template-columns:repeat(3,1fr);gap:26px}
.rev-grid{display:grid!important;grid-template-columns:repeat(3,1fr);gap:22px}
.htgrid{display:grid!important;grid-template-columns:1fr 1fr;gap:16px}
.row-head{display:flex!important;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:8px;flex-direction:row!important}
.row-head>*{margin:0}
.sec-head{max-width:720px;margin:0 auto}
.sec-head.center{text-align:center;align-items:center}
.sec-head p{color:var(--muted)}
.two-col{display:grid!important;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.two-col-wide{display:grid!important;grid-template-columns:1.1fr .9fr;gap:50px;align-items:start}
.shop-layout{display:grid!important;grid-template-columns:250px 1fr;gap:36px;align-items:start}
.legal-layout{display:grid!important;grid-template-columns:250px 1fr;gap:48px;align-items:start}
.contact-layout{display:grid!important;grid-template-columns:1fr 1fr;gap:46px;align-items:start}
.specs-grid{display:grid!important;grid-template-columns:1fr 1fr;gap:6px 28px}
.receive-grid{display:grid!important;grid-template-columns:1fr 1fr 1fr;gap:12px}

/* Product card */
.prodcard{text-decoration:none;color:inherit;cursor:pointer}
.prodcard .body{padding:17px 19px 21px;display:flex;flex-direction:column;gap:8px;flex:1}
.prodcard .foot{margin-top:auto;display:flex!important;align-items:center;justify-content:space-between;gap:10px;padding-top:8px;flex-direction:row!important}
.prodcard .foot .elementor-widget{margin:0}
.prodcard .name .elementor-heading-title{font-size:1.14rem;line-height:1.08}
.theme-tile .glyph{position:absolute;top:16px;right:16px;z-index:2}
.theme-tile .glyph i,.theme-tile .glyph svg{color:#fff!important;fill:#fff!important;font-size:40px}
.theme-tile .elementor-icon{color:#fff!important}

/* eyebrow spacing reset inside elementor */
.eyebrow .elementor-heading-title{font-family:var(--fmono)!important;font-size:.78rem!important;text-transform:uppercase;letter-spacing:.16em;color:var(--gold-d)!important;font-weight:700}
.qlabel .elementor-heading-title{color:#fff!important;font-family:var(--fmono)!important;font-size:.68rem!important;letter-spacing:.16em;text-transform:uppercase}
.qtitle .elementor-text-editor,.qtitle{font-family:var(--fdisp);font-weight:800;font-size:1.5rem;line-height:1.02;color:#fff}
.step .elementor-heading-title,.feat .elementor-heading-title{color:var(--navy)}
.step p,.feat p{color:var(--muted)}
.founder .photo{min-height:210px}
@media(max-width:1080px){.prod-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:960px){.prod-grid,.theme-grid,.feat-grid{grid-template-columns:repeat(2,1fr)}.steps,.rev-grid{grid-template-columns:1fr}.two-col,.two-col-wide,.shop-layout,.legal-layout,.contact-layout{grid-template-columns:1fr;gap:30px}.htgrid{grid-template-columns:1fr}.row-head{flex-direction:column!important;align-items:flex-start}}
@media(max-width:600px){.prod-grid,.theme-grid,.feat-grid,.receive-grid,.specs-grid{grid-template-columns:1fr}}
.founders{display:flex!important;gap:18px;flex-direction:row!important}
.founder{flex:1;text-align:center}
.review .stars{color:var(--gold);font-size:1.05rem;letter-spacing:2px;margin-bottom:8px}
.band .eyebrow .elementor-heading-title{color:var(--gold)!important}
.hero-note{color:#9fb0c1;font-size:.9rem;display:flex;align-items:center;margin-top:6px}
.htn{font-weight:700;color:#fff;font-size:1.02rem}
.num{width:48px;height:48px;border-radius:14px;background:var(--gold-l);color:var(--gold-d);font-family:var(--fdisp);font-weight:800;font-size:1.45rem;display:flex;align-items:center;justify-content:center;margin-bottom:10px}
.feat .ic{width:54px;height:54px;border-radius:15px;background:var(--gold-l);display:flex!important;align-items:center;justify-content:center;margin-bottom:10px;flex:0 0 auto;max-width:54px}
.feat .ic .elementor-icon{color:var(--gold-d)!important;font-size:26px}
.qmark{position:absolute;right:-6px;bottom:-14px;font-family:var(--fdisp);font-weight:800;font-size:8rem;line-height:1;opacity:.16;color:#fff;pointer-events:none}
.cat .elementor-heading-title{font-family:var(--fmono)!important;font-size:.7rem!important;text-transform:uppercase;letter-spacing:.1em;color:var(--gold-d)!important;font-weight:700}
.name .elementor-heading-title{font-family:var(--fdisp)!important;font-weight:800!important;font-size:1.14rem!important;line-height:1.08;color:var(--navy)!important}
.hero-sport{background:linear-gradient(150deg,#1FA971,#0E7A4D)!important;color:#fff;position:relative;overflow:hidden}
.hero-sport .lead{color:#E6FFF4!important}
.hero-sport .eyebrow .elementor-heading-title{color:var(--gold)!important}
.hero-art{aspect-ratio:1/1;max-width:380px;margin-left:auto;border-radius:28px;background:linear-gradient(160deg,#7CF0BE,#12A566);display:flex;align-items:center;justify-content:center;box-shadow:var(--sh-lg)}
.hero-art .elementor-icon{color:rgba(255,255,255,.6)!important;font-size:120px}
.chips-row{display:flex;gap:10px;flex-wrap:wrap}
.receive li{display:flex;gap:11px;font-weight:600;align-items:flex-start}
.prose p{color:var(--ink-soft)}
.form-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:34px;box-shadow:var(--sh-sm)}
.tpq-cf7 form>p,.tpq-cf7 .field{margin:0 0 18px}
.tpq-cf7 label{display:block;font-weight:700;margin-bottom:7px;font-size:.95rem;color:var(--navy)}
.tpq-cf7 input[type=text],.tpq-cf7 input[type=email],.tpq-cf7 input[type=tel],.tpq-cf7 textarea,.tpq-cf7 select{width:100%;border:2px solid var(--line-2);border-radius:12px;padding:13px 15px;font-family:var(--fbody);font-size:1rem;color:var(--navy);background:#fff;box-sizing:border-box}
.tpq-cf7 input:focus,.tpq-cf7 textarea:focus,.tpq-cf7 select:focus{outline:none;border-color:var(--gold-d)}
.tpq-cf7 textarea{min-height:130px;resize:vertical}
.tpq-cf7 .two{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.tpq-cf7 .wpcf7-submit{background:var(--navy)!important;color:#fff!important;border:0;border-radius:999px;padding:16px 30px;font-weight:700;font-size:1.05rem;cursor:pointer;font-family:var(--fbody)}
.tpq-cf7 .wpcf7-submit:hover{background:var(--navy-2)!important}
.tpq-cf7 .req{color:var(--coral)}
.tpq-cf7 .wpcf7-acceptance{font-size:.9rem;color:var(--ink-soft);font-weight:400}
.tpq-cf7 .wpcf7-list-item{margin-left:0}
.info-card h3{font-size:1.15rem;margin:0 0 14px;color:var(--navy)}
.info-row{display:flex;align-items:center;gap:13px;padding:9px 0;font-weight:600}
.info-row .ph{color:var(--muted);font-weight:400;font-size:.82rem;display:block}
@media(max-width:600px){.tpq-cf7 .two{grid-template-columns:1fr}}
/* Force category gradients to win over Elementor container cascade */
.e-con.bg-sport,.bg-sport{background:linear-gradient(150deg,#1FA971,#0E7A4D)!important}
.e-con.bg-muziek,.bg-muziek{background:linear-gradient(150deg,#E0499B,#B01E77)!important}
.e-con.bg-film,.bg-film{background:linear-gradient(150deg,#5B4BE0,#3A2BB8)!important}
.e-con.bg-feest,.bg-feest{background:linear-gradient(150deg,#FF5C48,#D8321F)!important}
.e-con.bg-kennis,.bg-kennis{background:linear-gradient(150deg,#2E7CF6,#1857C4)!important}
.e-con.bg-reizen,.bg-reizen{background:linear-gradient(150deg,#12A5B8,#0A7D8C)!important}
.e-con.bg-eten,.bg-eten{background:linear-gradient(150deg,#FF9A3C,#EF6C0A)!important}
.e-con.bg-nostalgie,.bg-nostalgie{background:linear-gradient(150deg,#C79A2E,#9C7414)!important}
.e-con.bg-dieren,.bg-dieren{background:linear-gradient(150deg,#5DA732,#3C7A1D)!important}
.e-con.bg-cultuur,.bg-cultuur{background:linear-gradient(150deg,#8A4FD6,#6425B0)!important}
.e-con.bg-navy,.bg-navy{background:linear-gradient(150deg,#16375a,#0b1c30)!important}
.e-con.qcover,.e-con.cover{overflow:hidden}
.e-con.theme-tile{min-height:230px}
.e-con.cover{aspect-ratio:4/3}
.qcover .qtitle,.qcover .qtitle .elementor-text-editor{color:#fff!important}

/* ===== BUTTON FIX: design classes sit on the widget wrapper, style the inner anchor ===== */
.elementor-widget-button,.elementor-widget-xpro-button{background:transparent!important;box-shadow:none!important;padding:0!important}
[class*="btn-"] .elementor-button,[class*="btn-"] .xpro-button,[class*="btn-"] a.elementor-button{display:inline-flex!important;align-items:center;gap:.5em;font-family:var(--fbody)!important;font-weight:700!important;border:0!important;border-radius:999px!important;padding:15px 28px!important;text-decoration:none!important;line-height:1;transition:.15s;box-shadow:none}
.btn-primary .elementor-button,.btn-primary .xpro-button{background:var(--navy)!important;color:#fff!important}
.btn-primary .elementor-button:hover,.btn-primary .xpro-button:hover{background:var(--navy-2)!important;box-shadow:var(--sh)!important}
.btn-yellow .elementor-button,.btn-yellow .xpro-button{background:var(--gold)!important;color:var(--navy)!important}
.btn-yellow .elementor-button:hover,.btn-yellow .xpro-button:hover{background:#f0b53c!important}
.btn-outline .elementor-button,.btn-outline .xpro-button{background:transparent!important;color:var(--navy)!important;box-shadow:inset 0 0 0 2px var(--line-2)!important}
.btn-outline .elementor-button:hover{box-shadow:inset 0 0 0 2px var(--navy)!important}
.btn-ghost .elementor-button,.btn-ghost .xpro-button{background:#fff!important;color:var(--navy)!important;box-shadow:var(--sh-sm)!important}
.btn-ghost-d .elementor-button,.btn-ghost-d .xpro-button{background:rgba(255,255,255,.08)!important;color:#fff!important;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.3)!important}
.btn-lg .elementor-button,.btn-lg .xpro-button{padding:18px 34px!important;font-size:1.05rem!important}
.btn-sm .elementor-button,.btn-sm .xpro-button{padding:11px 20px!important;font-size:.92rem!important}
[class*="btn-"] .elementor-button-text,[class*="btn-"] .elementor-button-content-wrapper,[class*="btn-"] .xpro-button-text{color:inherit!important}
.lnk .elementor-button,.lnk .xpro-button{background:transparent!important;color:var(--navy)!important;padding:0!important;font-weight:700!important}
.lnk .elementor-button:hover{color:var(--gold-d)!important}

/* ===== HEADER polish ===== */
.tpq-logo-w{flex:0 0 auto}
.tpq-logo-w .elementor-heading-title,.tpq-logo-w a,.tpq-header .xpro-site-title-wrapper{white-space:nowrap}
.tpq-navrow .xpro-nav-menu,.tpq-navrow ul.xpro-nav-menu{flex-wrap:nowrap!important}
.tpq-navrow .xpro-nav-menu>li>a,.tpq-navrow a{font-size:.78rem!important;padding:8px 8px!important;letter-spacing:.03em!important}
.tpq-navinner{gap:8px}
.tpq-cta-row .elementor-button,.tpq-cta-row .xpro-button{white-space:nowrap}
.tpq-icons .elementor-widget{margin:0}
.tpq-header .elementor-menu-cart__toggle{background:transparent!important}

/* ===== Xpro button + menu correct selectors ===== */
[class*="btn-"] .xpro-elementor-button{border-radius:999px!important;padding:12px 22px!important;font-weight:700!important;font-family:var(--fbody)!important;box-shadow:none!important;border:0!important;text-decoration:none!important}
.btn-primary .xpro-elementor-button{background:var(--navy)!important;color:#fff!important}
.btn-yellow .xpro-elementor-button{background:var(--gold)!important;color:var(--navy)!important}
.btn-yellow .xpro-elementor-button:hover{background:#f0b53c!important;color:var(--navy)!important}
.btn-sm .xpro-elementor-button{padding:11px 20px!important;font-size:.9rem!important}
.btn-lg .xpro-elementor-button{padding:16px 30px!important;font-size:1.02rem!important}
[class*="btn-"] .xpro-elementor-button *{color:inherit!important}
.tpq-navrow .xpro-elementor-horizontal-navbar-nav{flex-wrap:nowrap!important;gap:0!important}
.tpq-navrow .xpro-elementor-horizontal-navbar-nav>li>a{font-size:.78rem!important;padding:10px 9px!important;text-transform:uppercase!important;color:var(--navy)!important;font-weight:700!important;letter-spacing:.03em!important;white-space:nowrap}
.tpq-navrow .xpro-elementor-horizontal-navbar-nav>li>a:hover{color:var(--gold-d)!important}
.tpq-navrow .xpro-elementor-dropdown-menu{background:#fff!important;border-radius:14px!important;box-shadow:var(--sh)!important}
.tpq-navrow .xpro-elementor-dropdown-menu a{text-transform:none!important;color:var(--ink-soft)!important;font-weight:600!important;font-size:.92rem!important;letter-spacing:0!important}
.tpq-navrow .xpro-elementor-dropdown-menu a:hover{background:var(--gold-l)!important;color:var(--navy)!important}
.tpq-header .xpro-elementor-search-form input{border:2px solid var(--line-2)!important;border-radius:999px!important;height:48px!important;background:#fff!important}
.tpq-navinner{display:flex!important;align-items:center;flex-wrap:nowrap}
.tpq-navinner .elementor-widget-xpro-horizontal-menu{flex:0 1 auto;min-width:0}
.tpq-cta-row{flex:0 0 auto;margin-left:auto}
.tpq-navrow .xpro-elementor-horizontal-navbar-nav>li>a{font-size:.74rem!important;padding:10px 7px!important}
.tpq-navrow .elementor-widget-xpro-horizontal-menu .elementor-widget-container{width:auto}
.tpq-navrow .xpro-elementor-horizontal-navbar-nav{width:auto!important;justify-content:flex-start!important;margin:0}
.tpq-navrow .xpro-elementor-horizontal-menu-wrapper{width:auto;display:inline-flex}
.tpq-hrow{gap:24px!important;min-height:84px;align-items:center}
.tpq-search-w{flex:1 1 auto!important;max-width:540px}
.tpq-icons{margin-left:auto;gap:10px!important;align-items:center}
.tpq-navinner{align-items:center;width:100%}
.tpq-cta-row{margin-left:auto!important}
.tpq-footer-top{gap:44px!important}
.tpq-footer-brand{max-width:340px}
@media(max-width:960px){.tpq-navrow{display:none}.tpq-search-w{display:none}}
.tpq-footer-top{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:44px;padding:68px 0 30px}
.tpq-footer ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:11px}
.tpq-footer .tpq-col p{max-width:36ch;line-height:1.55;font-size:.95rem;color:#8fa0b2!important}
.tpq-fbot{padding:24px 0;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:center}
.tpq-fbot .tpq-fbot-links{display:flex;gap:20px;flex-wrap:wrap}
.tpq-pay span{margin-top:0}
@media(max-width:960px){.tpq-footer-top{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.tpq-footer-top{grid-template-columns:1fr}.tpq-fbot{flex-direction:column;align-items:flex-start}}
