/* Laag 6: Elementor-widgets die eigen markup en CSS meebrengen temmen */

/* --- navigatie: volledig eigen opmaak, niet afhankelijk van Elementor Pro's widget-CSS --- */
.navpill .elementor-nav-menu,
.navpill .elementor-nav-menu--main>ul{display:flex;align-items:center;gap:.1rem;list-style:none;margin:0;padding:0;flex-wrap:nowrap}
.navpill .elementor-nav-menu li{margin:0;padding:0;list-style:none}
.navpill .elementor-item,.navpill .elementor-nav-menu a{
  display:block;padding:.5rem .95rem;border-radius:999px;font-size:.87rem;font-weight:500;line-height:1.2;
  color:rgba(229,229,229,.84);text-decoration:none;white-space:nowrap;border:0;background:none;
  transition:background var(--t-micro) var(--ease),color var(--t-micro) var(--ease);
}
.navpill .elementor-item:hover,.navpill .elementor-nav-menu a:hover{color:var(--white);background:rgba(255,255,255,.09)}
.navpill .elementor-item.elementor-item-active,.navpill .elementor-nav-menu .current-menu-item>a{background:var(--white);color:var(--void);font-weight:600}
.navpill .elementor-nav-menu--dropdown,
.navpill .elementor-menu-toggle,
.navpill .elementor-nav-menu__container.elementor-nav-menu--dropdown{display:none !important}
.navpill .elementor-widget-container{display:flex;align-items:center}
.navpill .sub-arrow,.navpill .elementor-nav-menu .sub-arrow{display:none}

/* --- koppen erven weer van het designsysteem --- */
.hz :where(.elementor-heading-title){font:inherit;color:inherit;letter-spacing:inherit;text-transform:inherit;margin:0}
.hz .elementor-heading-title a{color:inherit;text-decoration:none}

/* --- knoppen: geen brede letterafstand meer van de globale labelstijl --- */
.e-btn .elementor-button{letter-spacing:.01em;text-transform:none;line-height:1.2}
.e-btn .elementor-button-content-wrapper{gap:.6rem}
.hz .elementor-widget-button .elementor-button{border-radius:999px}

/* --- header: hoogte en uitlijning --- */
.site-header>.e-con-inner,.site-header .hdr-grid{width:100%}


.brand{white-space:nowrap}

/* --- formulier in het donkere kaartje --- */
.form-card .elementor-field-group>label{font-size:.8rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:rgba(229,229,229,.75);margin-bottom:.45rem}
.form-card .elementor-field-textual{width:100%;min-height:50px;background:rgba(255,255,255,.05);border:1px solid var(--line-dark);border-radius:4px;padding:.8rem .95rem;color:var(--white)}
.form-card textarea.elementor-field-textual{min-height:118px}
.form-card .elementor-field-textual:focus{border-color:var(--brass-light);background:rgba(255,255,255,.08)}
.form-card .elementor-field-type-acceptance label{text-transform:none;letter-spacing:0;font-weight:400;font-size:.84rem;color:rgba(229,229,229,.78)}
.form-card .elementor-button[type=submit]{min-height:52px;padding:0 1.6rem;border-radius:999px;background:var(--brass);color:var(--white);border:1px solid var(--brass);font-weight:600}
.form-card .elementor-button[type=submit]:hover{background:var(--brass-deep);border-color:var(--brass-deep)}

/* --- WooCommerce in ons ontwerp --- */
.gal-stage .woocommerce-product-gallery{position:absolute;inset:0;z-index:2;margin:0;width:100%!important;float:none}
.gal-stage .woocommerce-product-gallery__wrapper{height:100%}
.gal-stage .woocommerce-product-gallery__image img{width:100%;height:100%;object-fit:cover}
.gal-stage .flex-control-thumbs{position:absolute;left:0;right:0;bottom:0;z-index:3;display:flex;gap:.4rem;padding:.5rem;margin:0;background:rgba(20,19,17,.7)}
.gal-stage .flex-control-thumbs li{width:64px;list-style:none}
.pdp-title .elementor-heading-title{font-size:clamp(1.9rem,4.2vw,3.1rem);line-height:1.02;letter-spacing:-.03em;font-weight:800;color:var(--white)}
.pdp .price,.pdp-price .price{font-size:clamp(2rem,4.4vw,2.9rem);font-weight:800;letter-spacing:-.035em;color:var(--brass-light);line-height:1;margin:0}
.pdp .price del{font-size:1.05rem;color:rgba(229,229,229,.5);font-weight:400;opacity:1}
.pdp .price ins{text-decoration:none;background:none;color:var(--brass-light)}
.pdp .stock{margin:0;font-size:.78rem;font-weight:600;border:1px solid rgba(196,168,94,.5);border-radius:999px;padding:.42rem .85rem;color:var(--brass-light)}
.pdp .stock.out-of-stock{border-color:var(--line-dark);color:rgba(229,229,229,.7)}
.pdp-sub p{font-size:1.02rem;color:rgba(229,229,229,.78);max-width:44ch}
.pdp-meta{font-size:.78rem;color:rgba(229,229,229,.55)}
.pdp-meta .sku_wrapper,.pdp-meta .posted_in{display:block}
.specs-grid table.shop_attributes{width:100%;border-collapse:collapse}
.specs-grid table.shop_attributes th{text-align:left;font-weight:400;color:rgba(51,51,51,.72);padding:.85rem 0;border-bottom:1px solid var(--line-light);width:50%}
.specs-grid table.shop_attributes td{text-align:right;font-weight:600;padding:.85rem 0;border-bottom:1px solid var(--line-light)}
.specs-grid table.shop_attributes td p{margin:0}

/* --- productoverzicht --- */
.hz ul.products{display:grid;gap:1px;background:var(--line-light);border:1px solid var(--line-light);margin:0;padding:0;list-style:none}
.hz ul.products li.product{background:var(--white);margin:0!important;padding:clamp(1rem,2vw,1.35rem)!important;width:auto!important;float:none!important;text-align:left;position:relative;transition:background var(--t-comp) var(--ease)}
.hz ul.products li.product:hover{background:var(--paper)}
.hz ul.products li.product a img{aspect-ratio:4/3;object-fit:cover;width:100%;margin-bottom:.9rem;background:var(--graphite)}
.hz ul.products li.product .woocommerce-loop-product__title{font-size:1.02rem;font-weight:700;line-height:1.32;letter-spacing:-.015em;padding:0;margin:0 0 .5rem}
.hz ul.products li.product .price{font-size:1.28rem;font-weight:800;letter-spacing:-.025em;color:var(--brass);display:flex;gap:.6rem;align-items:baseline;flex-wrap:wrap}
.hz ul.products li.product .price del{font-size:.86rem;color:rgba(51,51,51,.5);font-weight:400;opacity:1}
.hz ul.products li.product .price ins{text-decoration:none;background:none}
.hz ul.products li.product .button,.hz ul.products li.product .added_to_cart{display:inline-flex;align-items:center;min-height:44px;padding:0 1.15rem;margin-top:.8rem;border-radius:999px;background:transparent;border:1px solid var(--line-light);color:var(--ink);font-size:.86rem;font-weight:600;text-decoration:none}
.hz ul.products li.product .button:hover{background:var(--ink);color:var(--white);border-color:var(--ink)}
.hz ul.products li.product .onsale{position:absolute;left:0;top:0;margin:0;border-radius:0;background:var(--brass);color:var(--white);font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;padding:.45rem .7rem;min-height:0;min-width:0;line-height:1.2}
.hz .woocommerce-ordering select{min-height:44px;border:1px solid var(--line-light);border-radius:999px;padding:0 1rem;background:var(--white)}
.hz .woocommerce-ordering{margin-bottom:1.5rem}
@media (min-width:760px){.hz ul.products{grid-template-columns:1fr 1fr}}
@media (min-width:1100px){.hz ul.products{grid-template-columns:repeat(4,1fr)}}

/* --- gerelateerde producten --- */
.hz-related .related>h2,.hz-related h2{font-size:0;margin:0}

.hdr-icons{display:flex;align-items:center;gap:.5rem}
.hz .elementor-widget-button .elementor-button,.hz .elementor-button-wrapper .elementor-button{border-radius:999px!important}
.hdr-actions>.elementor-element,.hdr-actions .elementor-widget{width:auto}

.navpill{width:auto;justify-self:center;flex:none}
.site-header{justify-content:center}
.site-header>.e-con-inner{align-items:center;justify-content:center}
.site-header .hdr-grid{align-self:center}
.hdr-actions{justify-self:end}
@media (max-width:1099px){.navpill{display:none}}

.hz :where(.elementor-widget-text-editor p){color:inherit}
.cat-go{border-radius:50%!important}
