/* Wesley's Witgoed shell polish v1
   Header, navigation, mobile action bar and footer only. */
:root{
  --ww-shell-navy:#07324b;
  --ww-shell-navy-2:#0b3c58;
  --ww-shell-blue:#0ea5e9;
  --ww-shell-orange:#ff641f;
  --ww-shell-line:#dbe7ee;
  --ww-shell-soft:#f6fafc;
  --ww-shell-shadow:0 12px 34px rgba(7,50,75,.10);
}
#header{background:#fff}
#header-module{position:relative}
#navbar{border-bottom:1px solid rgba(7,50,75,.08);box-shadow:0 5px 16px rgba(7,50,75,.08)}
#navbar .nav_wrapper{border-radius:12px 12px 0 0}
#navbar .menu_nav>li>a{border-radius:9px;transition:background-color .18s ease,color .18s ease,transform .18s ease}
#navbar .menu_nav>li>a:hover,#navbar .menu_nav>li>a:focus-visible{background:rgba(255,255,255,.16);outline:none}
#navbar .menu_nav>li>a:active{transform:translateY(1px)}
#main{min-width:0}
#footer{border-top:5px solid var(--ww-shell-orange)}
#footer-wrapper{background:linear-gradient(135deg,var(--ww-shell-navy),#082f49 58%,#0b3c58)}
#footer a{transition:color .18s ease,background-color .18s ease,border-color .18s ease,transform .18s ease}
#footer a:hover,#footer a:focus-visible{color:#fff;outline:none}
#footer-left a:hover,#footer-left a:focus-visible{transform:translateX(3px);border-color:rgba(255,255,255,.38)!important;background:rgba(255,255,255,.06)}
#footer-center a:hover,#footer-center a:focus-visible,#footer-right a:hover,#footer-right a:focus-visible{text-decoration:underline;text-underline-offset:3px}
#footerbottom{border-top:1px solid rgba(7,50,75,.10)}
#credits{background:#06283c}
#credits a{text-underline-offset:3px}
.footerbar-col>a{position:relative}
.wwh-stock-stage{background:#fff}
.wwh-stock-slide.is-active{z-index:2}
.wwh-stock-slide .wwh-stock-info h3{color:var(--ww-shell-navy);letter-spacing:-.02em}
.wwh-stock-slide .wwh-stock-button{background:var(--ww-shell-orange)!important;border-radius:10px!important;box-shadow:0 8px 18px rgba(255,100,31,.22)}
.wwh-stock-slide .wwh-stock-button:hover{filter:brightness(.95);transform:translateY(-1px)}
@media (min-width:768px){
  #header{position:relative;z-index:101}
  #navbar{position:sticky;top:0;z-index:1000;background:#fff}
  #footer-wrapper>.container{padding-top:8px;padding-bottom:8px}
}
@media (max-width:767px){
  html{scroll-padding-top:72px}
  body{padding-bottom:78px!important}
  #top{display:none!important}
  #header{min-height:70px!important;box-shadow:0 4px 18px rgba(7,50,75,.08);position:relative;z-index:1002}
  #header-module{min-height:70px!important;padding-inline:14px!important}
  #navbar{position:sticky;top:0;z-index:1001;background:#fff;border-bottom:1px solid var(--ww-shell-line);box-shadow:0 7px 20px rgba(7,50,75,.10)}
  #navbar .nav_wrapper{min-height:58px;padding:6px 12px!important;border-radius:0}
  #navbar .menu-icon{width:46px!important;height:46px!important;min-width:46px;border:1px solid var(--ww-shell-line)!important;border-radius:12px!important;background-color:#fff!important;box-shadow:0 4px 12px rgba(7,50,75,.08);cursor:pointer}
  #navbar .menu_nav{max-height:calc(100vh - 150px);overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--ww-shell-line);border-radius:0 0 16px 16px;background:#fff;box-shadow:0 18px 42px rgba(7,50,75,.18);scrollbar-width:thin}
  #navbar .menu_nav>li{border-bottom:1px solid #edf3f6}
  #navbar .menu_nav>li:last-child{border-bottom:0}
  #navbar .menu_nav>li>a{display:flex!important;align-items:center;min-height:50px;padding:12px 15px!important;border-radius:0;color:var(--ww-shell-navy)!important;font-weight:800}
  #navbar .menu_nav>li>a:hover,#navbar .menu_nav>li>a:focus-visible{background:#eef8fc!important;color:#086891!important}
  #navbar .menu_nav ul{background:var(--ww-shell-soft);border:0!important;box-shadow:none!important}
  #navbar .menu_nav ul a{display:flex;align-items:center;min-height:46px;padding:10px 18px 10px 26px!important;color:#31586d!important}
  #handheld-footerbar{position:fixed!important;left:10px!important;right:10px!important;bottom:10px!important;z-index:99999!important;display:flex!important;align-items:center;justify-content:space-around;width:auto!important;min-height:62px;padding:5px!important;border:1px solid rgba(255,255,255,.18);border-radius:18px;background:rgba(7,50,75,.97);box-shadow:0 16px 38px rgba(3,25,38,.28);backdrop-filter:blur(12px)}
  #handheld-footerbar .footerbar-col{display:flex!important;flex:1 1 0;align-items:center;justify-content:center;min-width:0;height:52px}
  #handheld-footerbar .footerbar-col>a{display:flex!important;align-items:center;justify-content:center;width:100%!important;min-width:48px;min-height:48px;margin:0!important;border:0!important;border-radius:13px!important;background:transparent!important;color:#fff!important}
  #handheld-footerbar .footerbar-col>a:hover,#handheld-footerbar .footerbar-col>a:focus-visible{background:rgba(255,255,255,.12)!important;outline:none}
  #handheld-footerbar img{width:30px!important;height:30px!important;object-fit:contain}
  #handheld-footerbar i{color:#fff!important;font-size:21px}
  #handheld-footerbar [id^="aantal"],#handheld-footerbar #quantity_products{position:absolute;top:2px;right:calc(50% - 22px);display:grid;place-items:center;min-width:18px;height:18px;padding:0 4px;border:2px solid var(--ww-shell-navy);border-radius:999px;background:var(--ww-shell-orange);color:#fff;font-size:10px;font-weight:900;line-height:1}
  #footer{margin-bottom:70px}
  #footer-wrapper{padding:8px 0 18px}
  #footer-mobiel{display:grid;gap:14px;padding:14px 12px}
  #footer-mobiel .moduletable{margin:0!important;padding:17px!important;border:1px solid rgba(255,255,255,.14);border-radius:15px;background:rgba(255,255,255,.045)}
  #footerbottom .container{overflow-x:auto;padding:12px;scrollbar-width:thin}
  #credits .container{display:grid!important;gap:8px;padding:14px!important;text-align:center}
  #credits .left,#credits .right{float:none!important;width:100%!important;text-align:center!important}
  .wwh-main{gap:22px!important}
  .wwh-title{font-size:clamp(38px,11vw,54px)!important;line-height:1.02!important}
  .wwh-actions{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  .wwh-actions .wwh-btn{width:100%!important;justify-content:center}
  .wwh-stock-slider{border-radius:16px!important;box-shadow:var(--ww-shell-shadow)}
}
@media (max-width:420px){
  #handheld-footerbar{left:7px!important;right:7px!important;bottom:7px!important;border-radius:16px}
  #handheld-footerbar .footerbar-col>a{min-width:44px;min-height:46px}
  .wwh-title{font-size:clamp(35px,10.5vw,46px)!important}
}
@media (prefers-reduced-motion:reduce){
  #navbar *,#footer *,#handheld-footerbar *,.wwh-stock-slide *{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}

/* Mobile navigation hardening 2026-09-02 */
@media (max-width:767px){
  #navbar #handheld-footerbar,
  #navbar #handheld-footerbar.active{
    position:fixed!important;
    top:auto!important;
    left:10px!important;
    right:10px!important;
    bottom:10px!important;
    display:flex!important;
    float:none!important;
    width:auto!important;
    height:62px!important;
    min-height:62px!important;
    max-height:62px!important;
    margin:0!important;
    padding:5px!important;
    overflow:visible!important;
    border-radius:18px!important;
  }
  #navbar .nav_wrapper .menu-icon,
  #navbar .nav_wrapper .menu-icon.active{
    width:46px!important;
    min-width:46px!important;
    max-width:46px!important;
    height:46px!important;
    min-height:46px!important;
    max-height:46px!important;
    margin:0!important;
    padding:0!important;
  }
}
@media (max-width:420px){
  #navbar #handheld-footerbar,
  #navbar #handheld-footerbar.active{
    left:7px!important;
    right:7px!important;
    bottom:7px!important;
  }
}

/* Mobile off-canvas menu correction 2026-09-02 */
@media (max-width:767px){
  #navbar{
    min-height:58px!important;
    background:#fff!important;
  }
  #navbar .nav_wrapper{
    position:relative!important;
    min-height:58px!important;
    background:#fff!important;
  }
  #navbar #hnav.menu_nav{
    position:fixed!important;
    top:0!important;
    right:-110%!important;
    bottom:auto!important;
    left:auto!important;
    z-index:100003!important;
    display:block!important;
    float:none!important;
    width:min(86vw,360px)!important;
    max-width:360px!important;
    height:100dvh!important;
    min-height:100vh!important;
    max-height:100dvh!important;
    margin:0!important;
    padding:64px 0 88px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    box-sizing:border-box!important;
    border:0!important;
    border-left:1px solid var(--ww-shell-line)!important;
    border-radius:0!important;
    background:#fff!important;
    box-shadow:-18px 0 42px rgba(3,25,38,.24)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transition:right .24s ease,opacity .2s ease,visibility .2s ease!important;
  }
  #navbar #hnav.menu_nav.active{
    right:0!important;
    width:min(86vw,360px)!important;
    height:100dvh!important;
    max-height:100dvh!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
  #navbar .nav_wrapper .menu-icon,
  #navbar .nav_wrapper .menu-icon.active{
    position:absolute!important;
    top:6px!important;
    right:12px!important;
    z-index:100004!important;
    float:none!important;
    background:var(--ww-shell-navy)!important;
    border-color:rgba(255,255,255,.22)!important;
  }
  #navbar .menu-icon::after{
    content:""!important;
    display:none!important;
  }
  #navbar .menu-icon::before{
    top:10px!important;
    right:8px!important;
    width:28px!important;
    height:4px!important;
    border-top:14px double #fff!important;
    border-bottom:4px solid #fff!important;
    transform:none!important;
  }
  body.menu-open{
    overflow:hidden!important;
  }
}

/* Disable generic four-icon mobile dock 2026-09-02 */
@media (max-width:767px){
  #navbar #handheld-footerbar,
  #navbar #handheld-footerbar.active{
    display:none!important;
  }
  body{
    padding-bottom:0!important;
  }
  body.ww-product-sticky-active{
    padding-bottom:88px!important;
  }
}

/* Compact integrated mobile header 2026-09-02 */
@media (max-width:767px){
  #header{
    display:block!important;
    height:64px!important;
    min-height:64px!important;
    background:#fff!important;
    box-shadow:0 3px 16px rgba(7,50,75,.10)!important;
  }
  #header-module{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:100%!important;
    height:64px!important;
    min-height:64px!important;
    margin:0 auto!important;
    padding:0 72px 0 14px!important;
    box-sizing:border-box!important;
  }
  #header-module .ww-header-brand{
    display:flex!important;
    width:auto!important;
    min-width:0!important;
    height:56px!important;
    margin:0!important;
  }
  #header-module #search,
  #header-module .ww-header-actions,
  #header-module > .modulecheck,
  #header-module > .module.right{
    display:none!important;
  }
  #navbar{
    position:relative!important;
    top:auto!important;
    height:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  #navbar > .nav_wrapper.container{
    position:relative!important;
    height:0!important;
    min-height:0!important;
    margin:0 auto!important;
    padding:0!important;
    overflow:visible!important;
    border:0!important;
    background:transparent!important;
  }
  #navbar > .nav_wrapper.container > .menu-icon,
  #navbar > .nav_wrapper.container > .menu-icon.active{
    position:fixed!important;
    top:9px!important;
    right:12px!important;
    width:46px!important;
    min-width:46px!important;
    max-width:46px!important;
    height:46px!important;
    min-height:46px!important;
    max-height:46px!important;
    margin:0!important;
    border:1px solid #dbe7ee!important;
    border-radius:12px!important;
    background:#07324b!important;
    box-shadow:0 5px 15px rgba(7,50,75,.16)!important;
  }
}
@media (max-width:360px){
  #header-module{
    padding-left:10px!important;
    padding-right:66px!important;
  }
  #header-module .ww-brand-name{
    font-size:18px!important;
  }
}

/* Compact mobile header actions 2026-09-02 */
.ww-mobile-search-button{display:none}
@media (max-width:767px){
  #header #header-module{padding-right:198px!important}
  #header #header-module .ww-header-brand{
    display:flex!important;
    max-width:calc(100vw - 210px)!important;
    overflow:hidden!important;
  }
  #header #header-module .ww-brand-name{
    overflow:hidden!important;
    font-size:18px!important;
    text-overflow:ellipsis!important;
  }
  #header #header-module .ww-brand-sub{
    font-size:6.5px!important;
    letter-spacing:.08em!important;
  }
  #header #header-module .ww-header-actions{
    position:fixed!important;
    top:12px!important;
    right:112px!important;
    z-index:100006!important;
    display:flex!important;
    align-items:center!important;
    gap:6px!important;
    width:82px!important;
    height:40px!important;
    margin:0!important;
    padding:0!important;
  }
  #header #header-module .ww-header-actions #wishlistdiv{
    display:flex!important;
    width:38px!important;
    height:40px!important;
    margin:0!important;
    padding:0!important;
  }
  #header #header-module .ww-header-actions .ww-accountbtn{display:none!important}
  #header #header-module .ww-header-actions a.wishlistje,
  #header #header-module .ww-header-actions #jshop_module_cart a.ww-cartbtn{
    position:relative!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 0 38px!important;
    width:38px!important;
    min-width:38px!important;
    max-width:38px!important;
    height:40px!important;
    min-height:40px!important;
    max-height:40px!important;
    margin:0!important;
    padding:0!important;
    box-sizing:border-box!important;
    border:1px solid #dbe7ee!important;
    border-radius:10px!important;
    background:#fff!important;
    color:#07324b!important;
    box-shadow:0 4px 12px rgba(7,50,75,.10)!important;
  }
  #header #header-module .ww-header-actions #jshop_module_cart{
    display:block!important;
    width:38px!important;
    min-width:38px!important;
    height:40px!important;
    margin:0!important;
  }
  #header #header-module .ww-header-actions .ww-cart-info{
    position:absolute!important;
    inset:0!important;
    display:block!important;
    width:38px!important;
    height:40px!important;
    font-size:0!important;
    pointer-events:none!important;
  }
  #header #header-module .ww-header-actions .ww-cart-count{
    position:absolute!important;
    top:-6px!important;
    right:-5px!important;
    display:grid!important;
    place-items:center!important;
    min-width:18px!important;
    height:18px!important;
    padding:0 4px!important;
    border:2px solid #fff!important;
    border-radius:999px!important;
    background:#ff641f!important;
    color:#fff!important;
    font-size:0!important;
    font-weight:900!important;
    line-height:1!important;
  }
  #header #header-module .ww-header-actions #jshop_quantity_products{
    display:inline!important;
    color:#fff!important;
    font-size:10px!important;
  }
  #header #header-module .ww-header-actions .ww-cart-sum,
  #header #header-module .ww-header-actions .ww-cart-chevron{display:none!important}
  #header #header-module .ww-header-actions i{
    width:auto!important;
    margin:0!important;
    color:#07324b!important;
    font-size:18px!important;
  }
  #header #header-module .ww-header-actions #aantalwishlist{
    top:-6px!important;
    right:-5px!important;
    min-width:18px!important;
    height:18px!important;
    border:2px solid #fff!important;
    background:#ff641f!important;
    color:#fff!important;
    font-size:10px!important;
  }
  #navbar .ww-mobile-search-button{
    position:fixed!important;
    top:12px!important;
    right:64px!important;
    z-index:100006!important;
    display:grid!important;
    place-items:center!important;
    width:40px!important;
    height:40px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid #dbe7ee!important;
    border-radius:10px!important;
    background:#fff!important;
    color:#07324b!important;
    box-shadow:0 4px 12px rgba(7,50,75,.10)!important;
    cursor:pointer!important;
  }
  #navbar .ww-mobile-search-button i{
    width:auto!important;
    margin:0!important;
    color:#07324b!important;
    font-size:18px!important;
  }
}
@media (max-width:380px){
  #header #header-module{padding-right:184px!important}
  #header #header-module .ww-header-brand{max-width:calc(100vw - 194px)!important}
  #header #header-module .ww-brand-name{font-size:16px!important}
  #header #header-module .ww-brand-sub{display:none!important}
  #header #header-module .ww-header-actions{right:108px!important;gap:4px!important;width:76px!important}
  #navbar .ww-mobile-search-button{right:60px!important;width:38px!important}
}


/* Reliable mobile header controls — click layer and search panel 2026-09-02 */
@media (max-width:767px){
  #navbar{
    z-index:100005!important;
    pointer-events:none!important;
  }
  #navbar .menu-icon,
  #navbar .ww-mobile-search-button{
    pointer-events:auto!important;
    touch-action:manipulation!important;
  }
  #navbar #hnav.menu_nav{
    pointer-events:none!important;
  }
  #navbar #hnav.menu_nav.active{
    pointer-events:auto!important;
  }
  #header-search-bar,
  #header-search-bar.ww-search-open{
    position:fixed!important;
    top:64px!important;
    right:0!important;
    left:0!important;
    z-index:100007!important;
    width:100%!important;
    margin:0!important;
    padding:10px 12px!important;
    background:#fff!important;
    border-top:1px solid #dbe7ee!important;
    border-bottom:1px solid #dbe7ee!important;
    box-shadow:0 10px 24px rgba(7,50,75,.16)!important;
    box-sizing:border-box!important;
  }
  #header-search-bar.ww-search-open{
    display:block!important;
  }
  #header-search-bar .search-inner{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
  }
}


/* Mobile regression repair 2026-09-03 */
@media (max-width:767px){
  html,
  body{
    max-width:100%!important;
    overflow-x:clip!important;
  }

  /* Keep the complete mobile header in normal document flow.
     This prevents checkout/cart content from sliding underneath it. */
  body#fixed #fixer,
  body#fixed.sticky #fixer,
  #fixer.fixed{
    position:sticky!important;
    top:0!important;
    right:auto!important;
    left:auto!important;
    z-index:100000!important;
    display:block!important;
    width:100%!important;
    height:64px!important;
    min-height:64px!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    background:#fff!important;
    box-shadow:0 3px 16px rgba(7,50,75,.10)!important;
  }
  #fixer #header{
    position:relative!important;
    z-index:2!important;
    width:100%!important;
    height:64px!important;
    min-height:64px!important;
    overflow:visible!important;
    background:#fff!important;
  }
  #fixer #header-module{
    position:relative!important;
    z-index:2!important;
    height:64px!important;
    min-height:64px!important;
    overflow:visible!important;
    background:#fff!important;
  }

  /* Header actions belong to the sticky header, not to the viewport. */
  #header #header-module .ww-header-actions{
    position:absolute!important;
    top:12px!important;
    right:112px!important;
    z-index:6!important;
    pointer-events:auto!important;
  }
  #navbar{
    position:relative!important;
    z-index:5!important;
    pointer-events:none!important;
  }
  #navbar > .nav_wrapper.container{
    position:relative!important;
    z-index:5!important;
    pointer-events:none!important;
  }
  #navbar .ww-mobile-search-button,
  #navbar > .nav_wrapper.container > .menu-icon,
  #navbar > .nav_wrapper.container > .menu-icon.active{
    position:absolute!important;
    top:-52px!important;
    z-index:8!important;
    pointer-events:auto!important;
    touch-action:manipulation!important;
  }
  #navbar .ww-mobile-search-button{
    right:64px!important;
  }
  #navbar > .nav_wrapper.container > .menu-icon,
  #navbar > .nav_wrapper.container > .menu-icon.active{
    right:12px!important;
  }
  #navbar #hnav.menu_nav{
    top:0!important;
    z-index:7!important;
  }
  #navbar #hnav.menu_nav.active{
    pointer-events:auto!important;
  }

  /* Search panel opens directly underneath the 64px header. */
  #header-search-bar,
  #header-search-bar.ww-search-open{
    top:64px!important;
    z-index:100001!important;
  }

  /* QuickCheckout: never expose the anti-spam honeypot to customers. */
  #checkoutForm #user_first_name,
  #checkoutForm input[name="user_first_name"]{
    position:absolute!important;
    left:-10000px!important;
    display:none!important;
    width:1px!important;
    height:1px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    opacity:0!important;
    pointer-events:none!important;
  }

  /* QuickCheckout order preview: convert the desktop table into product cards. */
  html body #checkoutForm #jshop_previews{
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
  }
  html body #checkoutForm #jshop_previews table.cart,
  html body #checkoutForm #jshop_previews table.jshop_subtotal{
    display:block!important;
    float:none!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    table-layout:auto!important;
    border-collapse:separate!important;
  }
  html body #checkoutForm #jshop_previews table.cart tbody,
  html body #checkoutForm #jshop_previews table.jshop_subtotal tbody{
    display:block!important;
    width:100%!important;
  }
  html body #checkoutForm #jshop_previews table.cart > tbody > tr:first-child{
    display:none!important;
  }
  html body #checkoutForm #jshop_previews table.cart > tbody > tr.jshop_prod_cart{
    display:grid!important;
    grid-template-columns:86px minmax(0,1fr)!important;
    column-gap:14px!important;
    row-gap:8px!important;
    width:100%!important;
    margin:0 0 12px!important;
    padding:14px!important;
    box-sizing:border-box!important;
    border:1px solid #dbe7ee!important;
    border-radius:13px!important;
    background:#fff!important;
    box-shadow:0 5px 16px rgba(7,50,75,.06)!important;
  }
  html body #checkoutForm #jshop_previews table.cart > tbody > tr.jshop_prod_cart > td{
    display:block!important;
    float:none!important;
    width:auto!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    text-align:left!important;
    vertical-align:top!important;
  }
  html body #checkoutForm #jshop_previews table.cart td.jshop_img_description_center{
    grid-column:1!important;
    grid-row:1 / span 4!important;
  }
  html body #checkoutForm #jshop_previews table.cart td.jshop_img_description_center img{
    display:block!important;
    width:86px!important;
    height:86px!important;
    max-width:86px!important;
    margin:0!important;
    padding:3px!important;
    box-sizing:border-box!important;
    object-fit:contain!important;
    border:1px solid #e4edf2!important;
    border-radius:10px!important;
    background:#fff!important;
  }
  html body #checkoutForm #jshop_previews table.cart td.product_name,
  html body #checkoutForm #jshop_previews table.cart td.single_price,
  html body #checkoutForm #jshop_previews table.cart td.quantity,
  html body #checkoutForm #jshop_previews table.cart td.total_price{
    grid-column:2!important;
  }
  html body #checkoutForm #jshop_previews table.cart td.product_name .prodname{
    display:block!important;
    margin:0 0 5px!important;
    color:#07324b!important;
    font-size:16px!important;
    font-weight:800!important;
    line-height:1.25!important;
    overflow-wrap:anywhere!important;
  }
  html body #checkoutForm #jshop_previews table.cart .short_description{
    display:none!important;
  }
  html body #checkoutForm #jshop_previews table.cart .jshop_cart_attribute{
    margin:2px 0!important;
    color:#667784!important;
    font-size:12px!important;
    line-height:1.35!important;
  }
  html body #checkoutForm #jshop_previews table.cart td.single_price .data,
  html body #checkoutForm #jshop_previews table.cart td.quantity .data,
  html body #checkoutForm #jshop_previews table.cart td.total_price .data{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    width:100%!important;
    color:#516273!important;
    font-size:13px!important;
  }
  html body #checkoutForm #jshop_previews table.cart td.single_price .data::before{
    content:"Prijs"!important;
  }
  html body #checkoutForm #jshop_previews table.cart td.quantity .data::before{
    content:"Aantal"!important;
  }
  html body #checkoutForm #jshop_previews table.cart td.total_price .data::before{
    content:"Totaal"!important;
    font-weight:800!important;
    color:#07324b!important;
  }
  html body #checkoutForm #jshop_previews table.cart td.total_price .data{
    padding-top:7px!important;
    border-top:1px solid #edf3f6!important;
    color:#b42318!important;
    font-size:16px!important;
    font-weight:900!important;
  }
  html body #checkoutForm #jshop_previews table.cart .mobile-cart-inline{
    display:none!important;
  }

  /* Totals stay in a clean two-column summary below the products. */
  html body #checkoutForm #jshop_previews table.jshop_subtotal{
    margin-top:6px!important;
    padding:10px 14px!important;
    box-sizing:border-box!important;
    border:1px solid #dbe7ee!important;
    border-radius:13px!important;
    background:#fff!important;
  }
  html body #checkoutForm #jshop_previews table.jshop_subtotal tr{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    width:100%!important;
    padding:10px 0!important;
    border-bottom:1px solid #edf3f6!important;
  }
  html body #checkoutForm #jshop_previews table.jshop_subtotal tr:last-child{
    border-bottom:0!important;
  }
  html body #checkoutForm #jshop_previews table.jshop_subtotal td{
    display:block!important;
    width:auto!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    color:#516273!important;
    font-size:14px!important;
    text-align:left!important;
  }
  html body #checkoutForm #jshop_previews table.jshop_subtotal td.value{
    margin-left:auto!important;
    color:#263746!important;
    text-align:right!important;
    white-space:nowrap!important;
  }
  html body #checkoutForm #jshop_previews table.jshop_subtotal tr.total td{
    color:#07324b!important;
    font-size:16px!important;
    font-weight:900!important;
  }

  /* Cart page safety: keep cards and summary inside the viewport. */
  body.winkelwagen .cart-page-2025,
  body.winkelwagen .cart-grid-layout,
  body.winkelwagen .cart-items-list,
  body.winkelwagen .summary-card-sticky{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  body.winkelwagen .cart-grid-layout{
    grid-template-columns:minmax(0,1fr)!important;
  }
  body.winkelwagen .cart-page-2025 .cart-item-card{
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  body.winkelwagen .cart-page-2025 .card-details{
    min-width:0!important;
    overflow-wrap:anywhere!important;
  }
}

@media (max-width:380px){
  #header #header-module .ww-header-actions{
    right:108px!important;
  }
  #navbar .ww-mobile-search-button{
    right:60px!important;
  }
  #navbar > .nav_wrapper.container > .menu-icon,
  #navbar > .nav_wrapper.container > .menu-icon.active{
    right:8px!important;
  }
}


/* Wesley's Witgoed — definitieve shell/header/footer repair 2026-09-03 */
#footer,#footertop,#footerbottom{border-top:0!important}
#footer-wrapper{border-top:3px solid var(--ww-shell-orange)!important}

@media(max-width:767px){
  /* Compacte geïntegreerde header: wit vlak, blauwe bediening. */
  #navbar > .nav_wrapper.container > .menu-icon,
  #navbar > .nav_wrapper.container > .menu-icon.active{
    width:46px!important;min-width:46px!important;max-width:46px!important;
    height:46px!important;min-height:46px!important;max-height:46px!important;
    padding:0!important;border:1px solid #cddde6!important;border-radius:11px!important;
    background:#fff!important;box-shadow:0 4px 12px rgba(7,50,75,.10)!important;
  }
  #navbar .menu-icon:before,
  #navbar .menu-icon:after{
    content:""!important;position:absolute!important;left:10px!important;right:auto!important;
    width:24px!important;height:3px!important;border:0!important;border-radius:3px!important;
    background:#07324b!important;transform-origin:center!important;transition:transform .2s ease,top .2s ease,box-shadow .2s ease!important;
  }
  #navbar .menu-icon:before{display:block!important;top:13px!important;box-shadow:0 8px 0 #07324b,0 16px 0 #07324b!important}
  #navbar .menu-icon:after{display:none!important;top:21px!important}
  #navbar .menu-icon.active:before{top:21px!important;box-shadow:none!important;transform:rotate(45deg)!important}
  #navbar .menu-icon.active:after{display:block!important;transform:rotate(-45deg)!important}
  #navbar .ww-mobile-search-button{border-color:#cddde6!important;background:#fff!important;color:#07324b!important}
  .header-search-button{background:#0ea0e7!important}

  /* Het eerste submenu opent echt onder de gekozen hoofdgroep. */
  #navbar #hnav.menu_nav>li.parent>a{position:relative!important;padding-right:48px!important}
  #navbar #hnav.menu_nav>li.parent>a:after{
    content:"+"!important;position:absolute!important;right:16px!important;top:50%!important;
    display:grid!important;place-items:center!important;width:26px!important;height:26px!important;
    transform:translateY(-50%)!important;border:1px solid #cddde6!important;border-radius:8px!important;
    background:#fff!important;color:#07324b!important;font-size:20px!important;font-weight:800!important;line-height:1!important;
  }
  #navbar #hnav.menu_nav>li.parent.open>a:after{content:"−"!important;background:#eaf6fb!important;color:#087bab!important}
  #navbar #hnav.menu_nav>li.parent>.sub_open{
    position:static!important;display:block!important;width:100%!important;max-height:0!important;
    margin:0!important;padding:0!important;overflow:hidden!important;opacity:0!important;visibility:hidden!important;
    border:0!important;background:#f5f9fb!important;box-shadow:none!important;
    transition:max-height .28s ease,opacity .2s ease!important;
  }
  #navbar #hnav.menu_nav>li.parent.open>.sub_open{
    max-height:520px!important;opacity:1!important;visibility:visible!important;
    border-top:1px solid #dce7ed!important;border-bottom:1px solid #dce7ed!important;
  }
  #navbar #hnav.menu_nav>li.parent>.sub_open>ul{
    position:static!important;display:block!important;width:100%!important;margin:0!important;padding:7px 0!important;
    border:0!important;background:transparent!important;box-shadow:none!important;opacity:1!important;visibility:visible!important;
  }
  #navbar #hnav.menu_nav>li.parent>.sub_open>ul>li{display:block!important;width:100%!important;margin:0!important;border:0!important}
  #navbar #hnav.menu_nav>li.parent>.sub_open>ul>li>a{
    display:flex!important;align-items:center!important;min-height:46px!important;padding:8px 20px!important;
    color:#23485c!important;font-weight:750!important;background:transparent!important;
  }
  #navbar #hnav.menu_nav>li.parent>.sub_open>ul>li>a img{width:32px!important;height:32px!important;margin-right:10px!important;object-fit:contain!important}
  #navbar #hnav.menu_nav>li.parent>.sub_open .sub_open{display:none!important}
}


/* Enkele strakke footeraccentlijn — 2026-09-03 */
html body #footer{border-top:0!important}
html body #footer #footer-wrapper{
  border-top:3px solid #ff641f!important;
  border-right:0!important;
  border-bottom:0!important;
  border-left:0!important;
  box-shadow:none!important;
}
html body #footer #footer-wrapper::before,
html body #footer #footer-wrapper::after{
  content:none!important;
  display:none!important;
}


/* Mobiele navigatie-afwerking — 2026-09-03 v3 */
@media(max-width:767px){
  #navbar > .nav_wrapper.container > .menu-icon,
  #navbar > .nav_wrapper.container > .menu-icon.active{
    overflow:hidden!important;
    border:1px solid #c9dbe5!important;
    background:#fff!important;
    box-shadow:0 3px 10px rgba(7,50,75,.10)!important;
  }
  #navbar .menu-icon:after{content:none!important;display:none!important}
  #navbar .menu-icon:not(.active):before{
    content:""!important;display:block!important;position:absolute!important;
    top:13px!important;left:10px!important;width:24px!important;height:3px!important;
    border:0!important;border-radius:3px!important;background:#07324b!important;
    box-shadow:0 8px 0 #07324b,0 16px 0 #07324b!important;transform:none!important;
  }
  #navbar .menu-icon.active:before{
    content:"×"!important;display:grid!important;place-items:center!important;position:absolute!important;
    inset:0!important;width:44px!important;height:44px!important;
    border:0!important;background:transparent!important;box-shadow:none!important;transform:none!important;
    color:#07324b!important;font:400 32px/1 Arial,sans-serif!important;
  }
  #navbar #hnav.menu_nav>li.parent>a:after{content:none!important;display:none!important}
  #navbar #hnav.menu_nav>li.parent.open>a:after{
    content:"−"!important;position:absolute!important;right:16px!important;top:50%!important;
    display:grid!important;place-items:center!important;width:26px!important;height:26px!important;
    transform:translateY(-50%)!important;border:1px solid #bcd5e1!important;border-radius:8px!important;
    background:#eaf6fb!important;color:#087bab!important;font-size:20px!important;font-weight:800!important;line-height:1!important;
  }
}


/* Mobiel submenu: vaste icoonkolom en tekstkolom — 2026-09-03 v4 */
@media(max-width:767px){
  #navbar #hnav.menu_nav>li.parent>.sub_open>ul>li>a{
    display:grid!important;
    grid-template-columns:36px minmax(0,1fr)!important;
    column-gap:12px!important;
    align-items:start!important;
    min-height:56px!important;
    padding:9px 20px!important;
    line-height:1.2!important;
  }
  #navbar #hnav.menu_nav>li.parent>.sub_open>ul>li>a>img{
    grid-column:1!important;
    grid-row:1!important;
    align-self:start!important;
    width:36px!important;
    height:38px!important;
    margin:0!important;
    padding:0!important;
    object-fit:contain!important;
    object-position:center top!important;
  }
  #navbar #hnav.menu_nav>li.parent>.sub_open>ul>li>a>.image-title{
    grid-column:2!important;
    grid-row:1!important;
    display:block!important;
    float:none!important;
    position:static!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    color:#ff641f!important;
    font-size:14px!important;
    font-weight:800!important;
    line-height:18px!important;
    text-align:left!important;
  }
  #navbar #hnav.menu_nav>li.parent>.sub_open>ul>li>a>.image-title:after{
    display:block!important;
    float:none!important;
    position:static!important;
    margin:2px 0 0!important;
    padding:0!important;
    color:#929292!important;
    font-size:13px!important;
    font-weight:600!important;
    line-height:16px!important;
    white-space:normal!important;
  }
}
