:root{
        --ip-bg:#FFFFFF;
        --ip-surface:#F5F5F5;
        --ip-ink:#000000;
        --ip-accent:#171717;
        --ip-muted:#555555;
        --ip-border:#E5E5E5;
        --ip-heading-font:Arial, Georgia, serif;
        --ip-body-font:Arial, sans-serif;
    }
    .ip-topbar,.ip-header,.ip-navrow,.ip-footer{ font-family: var(--ip-body-font); box-sizing:border-box; }
    .ip-topbar *,.ip-header *,.ip-navrow *,.ip-footer *{ box-sizing:border-box; }

    /* Top bar */
    .ip-topbar{ background:var(--ip-ink); color:#fff; padding:12px 0; overflow:hidden; }
    .ip-topbar-track{ display:flex; align-items:center; width:max-content; gap:70px; animation: ip-marquee-x 16s linear infinite; }
    .ip-topbar-item{ display:flex; align-items:center; gap:10px; font-size:16px; font-weight:700; letter-spacing:0.04em; text-transform:uppercase; color:#F5F5F5; white-space:nowrap; }
    .ip-topbar-item i{ font-size:15px; color:#171717; }
    @keyframes ip-marquee-x{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }

    /* Main header row */
    .ip-header{ background:var(--ip-bg); border-bottom:1px solid var(--ip-border); padding:8px 24px; }
    .ip-header-inner{ max-width:1400px; margin:0 auto; display:flex; align-items:center; gap:32px; }
    .ip-logo img{ display:block; height:40px; width:auto; }
    .ip-search-wrap{ flex:1; max-width:560px; margin:0 auto; }
    .ip-search{ position:relative; }
    .ip-search input{ width:100%; background:var(--ip-surface); border:1px solid var(--ip-border); border-radius:999px; padding:12px 20px 12px 44px; font-family:var(--ip-body-font); font-size:14px; color:var(--ip-ink); outline:none; transition:border-color .2s ease; }
    .ip-search input:focus{ border-color:var(--ip-accent); }
    .ip-search input::placeholder{ color:var(--ip-muted); }
    .ip-search i{ position:absolute; left:17px; top:50%; transform:translateY(-50%); color:var(--ip-muted); font-size:14px; }
    .ip-header-actions{ display:flex; align-items:center; gap:16px; flex-shrink:0; }
    .ip-action{ display:flex; flex-direction:column; align-items:center; gap:3px; color:var(--ip-ink); text-decoration:none; font-size:11px; letter-spacing:.02em; }
    .ip-action i{ font-size:18px; color:var(--ip-ink); }
    .ip-action:hover i, .ip-action:hover{ color:var(--ip-accent); }
    .ip-action:hover i{ color:var(--ip-accent); }
    .ip-cart-pill{ display:flex; align-items:center; gap:8px; background:var(--ip-ink); color:#fff; border-radius:999px; padding:8px 14px; text-decoration:none; font-size:13px; font-weight:500; position:relative; }
    .ip-cart-pill i{ font-size:15px; color:#fff; }
    .ip-cart-pill:hover{ background:var(--ip-accent); }
    .ip-cart-badge{ position:absolute; top:-6px; right:-6px; background:#fff; color:var(--ip-ink); border-radius:999px; font-size:10.5px; font-weight:600; min-width:18px; height:18px; display:flex; align-items:center; justify-content:center; padding:0 4px; }

    /* Nav row */
    .ip-navrow{ background:var(--ip-surface); border-bottom:1px solid var(--ip-border); padding:0 24px; }
    .ip-navrow-inner{ max-width:1400px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; gap:24px; }
    .ip-shopall{ display:flex; align-items:center; gap:9px; background:var(--ip-accent); color:#fff; border:none; border-radius:999px; padding:12px 20px; font-family:var(--ip-body-font); font-size:13.5px; font-weight:600; text-decoration:none; margin:10px 0; flex-shrink:0; cursor:pointer; }
    .ip-shopall i:last-child{ font-size:10px; }
    .ip-navlinks{ display:flex; align-items:center; gap:30px; list-style:none; margin:0; padding:0; }
    .ip-navlinks a{ color:var(--ip-ink); text-decoration:none; font-size:14px; font-weight:500; padding:16px 0; position:relative; }
    .ip-navlinks a::after{ content:''; position:absolute; left:0; right:0; bottom:11px; height:2px; background:var(--ip-accent); transform:scaleX(0); transition:transform .2s ease; }
    .ip-navlinks a:hover{ color:var(--ip-accent); }
    .ip-navlinks a:hover::after{ transform:scaleX(1); }
    .ip-phone{ display:flex; align-items:center; gap:10px; color:var(--ip-muted); font-size:14px; flex-shrink:0; text-decoration:none; }
    .ip-phone i{ width:30px; height:30px; border-radius:50%; background:#fff; border:1px solid var(--ip-border); display:flex; align-items:center; justify-content:center; color:var(--ip-accent); font-size:12px; }
    .ip-phone strong{ color:var(--ip-ink); font-weight:600; }

    /* Shop-all dropdown */
    .ip-shopall-wrap{ position:relative; }
    .ip-shopall-menu{ position:absolute; top:calc(100% - 4px); left:0; background:#fff; border:1px solid var(--ip-border); border-radius:10px; box-shadow:0 16px 40px rgba(23,23,23,0.12); min-width:230px; padding:10px; opacity:0; visibility:hidden; transform:translateY(6px); transition:all .18s ease; z-index:60; }
    .ip-shopall-wrap:hover .ip-shopall-menu, .ip-shopall-menu.ip-open{ opacity:1; visibility:visible; transform:translateY(0); }
    .ip-shopall-menu a{ display:block; padding:10px 12px; border-radius:6px; color:var(--ip-ink); text-decoration:none; font-size:14px; }
    .ip-shopall-menu a:hover{ background:var(--ip-surface); color:var(--ip-accent); }

    /* Mobile toggle */
    .ip-burger{ display:none; background:none; border:none; font-size:20px; color:var(--ip-ink); cursor:pointer; padding:4px; }
    .ip-mobile-panel{ display:none; }

    @media (max-width: 900px){
        .ip-search-wrap{ display:none; }
        .ip-header-inner{ position:relative; justify-content:space-between; }
        .ip-logo{ position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); z-index:1; }
        .ip-logo img{ height:22px; }
        .ip-header-actions{ display:contents; gap:14px; }
        .ip-header-actions .ip-action{ display:none; }
        .ip-cart-pill span:not(.ip-cart-badge){ display:none; }
        .ip-cart-pill{ padding:10px 12px; }
        .ip-burger{ display:block; order:-1; }
        .ip-navrow-inner{ flex-wrap:wrap; padding:10px 0; }
        .ip-navlinks{ display:none; }
        .ip-phone span.ip-phone-text{ display:none; }
        .ip-shopall{ margin:10px 0; padding:10px 16px; }
        .ip-mobile-panel{ display:block; max-height:0; overflow:hidden; transition:max-height .25s ease; background:#fff; border-bottom:1px solid var(--ip-border); }
        .ip-mobile-panel.ip-open{ max-height:520px; }
        .ip-mobile-panel-inner{ padding:16px 24px 24px; display:flex; flex-direction:column; gap:4px; }
        .ip-mobile-panel .ip-search{ margin-bottom:14px; }
        .ip-mobile-panel input{ width:100%; background:var(--ip-surface); border:1px solid var(--ip-border); border-radius:999px; padding:12px 20px 12px 44px; font-size:14px; }
        .ip-mobile-panel a{ padding:12px 4px; border-bottom:1px solid var(--ip-border); color:var(--ip-ink); text-decoration:none; font-size:15px; }
    }

    /* Footer */
    .ip-footer{ background:var(--ip-ink); color:#E5E5E5; margin-top:40px; }
    .ip-footer-main{ max-width:1400px; margin:0 auto; padding:64px 24px 40px; display:grid; grid-template-columns:1.3fr 1fr 1fr 1.1fr; gap:40px; }
    .ip-footer-brand .ip-footer-logo{ display:inline-block; background:#fff; padding:12px 18px; border-radius:8px; line-height:0; margin-bottom:18px; }
    .ip-footer-brand .ip-footer-logo img{ display:block; height:32px; width:auto; }
    .ip-footer-brand p{ font-size:13.5px; line-height:1.7; color:#8A8A8A; margin:0; max-width:280px; }
    .ip-footer h4{ font-family:var(--ip-heading-font); font-weight:700; color:#fff; font-size:15px; letter-spacing:.02em; margin:0 0 22px; }
    .ip-footer-links{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:13px; }
    .ip-footer-links a{ display:flex; align-items:center; gap:8px; color:#8A8A8A; text-decoration:none; font-size:14px; transition:color .2s ease; }
    .ip-footer-links a i{ font-size:9px; color:#171717; }
    .ip-footer-links a:hover{ color:#fff; }
    .ip-footer-contact{ list-style:none; margin:0 0 6px; padding:0; display:flex; flex-direction:column; gap:18px; }
    .ip-footer-contact li{ display:flex; align-items:flex-start; gap:12px; font-size:13.5px; line-height:1.6; color:#E5E5E5; }
    .ip-footer-contact li a{ color:#E5E5E5; text-decoration:none; }
    .ip-footer-contact li a:hover{ color:#fff; }
    .ip-footer-contact li strong{ color:#fff; font-weight:600; }
    .ip-footer-icon{ flex-shrink:0; width:30px; height:30px; border-radius:50%; background:rgba(255,255,255,0.08); display:flex; align-items:center; justify-content:center; color:#171717; font-size:13px; margin-top:1px; }
    .ip-footer-hours{ margin-top:6px; padding-top:18px; border-top:1px solid rgba(255,255,255,0.1); font-size:13.5px; line-height:1.8; color:#E5E5E5; }
    .ip-footer-hours-title{ color:#fff; font-weight:600; margin-bottom:4px; display:flex; align-items:center; gap:8px; }
    .ip-footer-bottom{ border-top:1px solid rgba(255,255,255,0.1); }
    .ip-footer-bottom-inner{ max-width:1400px; margin:0 auto; padding:22px 24px; display:flex; align-items:center; justify-content:space-between; gap:18px; flex-wrap:wrap; }
    .ip-footer-bottom-left{ display:flex; align-items:center; gap:16px; flex-wrap:wrap; }
    .ip-footer-copy{ font-size:12.5px; color:#8A8A8A; }
    .ip-footer-badges{ display:flex; align-items:center; }
    .ip-footer-badges .dmca-badge{ display:inline-block; line-height:0; opacity:0.9; transition:opacity .2s ease; }
    .ip-footer-badges .dmca-badge:hover{ opacity:1; }
    .ip-footer-badges .dmca-badge img{ height:34px; width:auto; display:block; border-radius:4px; }
    .ip-footer-payments{ background:#fff; border-radius:10px; padding:14px 20px; display:inline-flex; align-items:center; line-height:0; }
    .ip-footer-payments img{ height:90px; width:auto; display:block; }
    @media (max-width:560px){ .ip-footer-bottom-inner{ justify-content:flex-start; } .ip-footer-payments img{ height:70px; } }

    @media (max-width: 900px){
        .ip-footer-main{ grid-template-columns:1fr 1fr; gap:36px 24px; }
    }
    @media (max-width: 560px){
        .ip-footer-main{ grid-template-columns:1fr; padding:48px 24px 32px; gap:40px; text-align:left; }
        .ip-footer-brand{ display:flex; flex-direction:column; align-items:flex-start; }
        .ip-footer-brand p{ max-width:320px; }
        .ip-footer-links{ align-items:flex-start; }
        .ip-footer-contact{ align-items:flex-start; }
        .ip-footer-hours{ text-align:left; }
        .ip-footer-hours-title{ justify-content:flex-start; }
    }
    

    /* Homepage sections */
    .elementor-element-2d36341{ gap:0 !important; row-gap:0 !important; column-gap:0 !important; }
    .ip-section{ padding:32px 24px; }
    .ip-section-inner{ max-width:1400px; margin:0 auto; }
    .ip-section-head{ text-align:center; max-width:620px; margin:0 auto 32px; }
    .ip-section-head h2{ font-family:var(--ip-heading-font); font-weight:700; font-size:36px; color:var(--ip-ink); margin:0 0 14px; line-height:1.15; }
    .ip-section-head p{ font-size:16px; color:var(--ip-muted); line-height:1.6; margin:0; }
    .ip-eyebrow{ display:block; font-size:12.5px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:var(--ip-accent); margin-bottom:10px; }

    /* Hero text readability: gradient overlay + text-shadow instead of a solid box */
    .ip-hero-textbox{ max-width:640px; margin:0 !important; }
    .ip-hero-textbox .elementor-heading-title{ text-shadow:0 2px 18px rgba(0,0,0,0.55), 0 1px 3px rgba(0,0,0,0.6); }
    .ip-hero-textbox p{ text-shadow:0 1px 10px rgba(0,0,0,0.55); }
    .elementor-element-426404b .elementor-background-overlay{ background:linear-gradient(100deg, rgba(4,28,56,0.72) 0%, rgba(4,28,56,0.45) 38%, rgba(4,28,56,0.12) 65%, rgba(4,28,56,0) 85%) !important; }
    /* Static fallback image sits behind the video at all times; video fades in only once it is actually playing, so if it fails/blocks/errors the image stays visible instead of a blank box or stuck play icon. */
    .elementor-element-426404b{ background-image:url('../img/hero-verdanton.webp') !important; background-size:cover !important; background-position:center !important; }
    .elementor-element-426404b video.elementor-background-video-hosted{ opacity:0; transition:opacity .6s ease; }
    .elementor-element-426404b video.ip-video-ready{ opacity:1; }
    @media (max-width:767px){ .elementor-element-426404b video{ display:none !important; } }
    @media (max-width:900px){ .ip-hero-textbox{ max-width:100%; } }

    /* Categories */
    .ip-cats{ background:var(--ip-bg); }
    .ip-cats-viewport{ overflow:hidden; cursor:grab; -webkit-user-select:none; user-select:none; }
    .ip-cats-viewport.ip-dragging{ cursor:grabbing; }
    .ip-cats-track{ display:flex; gap:24px; width:max-content; will-change:transform; }
    .ip-cats-track a{ -webkit-user-drag:none; user-drag:none; }
    .ip-cat-card{ position:relative; display:block; width:320px; flex:0 0 320px; border-radius:12px; overflow:hidden; aspect-ratio:3/4; text-decoration:none; background:var(--ip-surface); }
    .ip-cat-card img{ width:100%; height:100%; object-fit:cover; transition:transform .5s ease; display:block; }
    .ip-cat-card:hover img{ transform:scale(1.06); }
    .ip-cat-card::after{ content:''; position:absolute; inset:0; background:linear-gradient(to top, rgba(23,23,23,0.78) 0%, rgba(23,23,23,0.05) 50%); }
    .ip-cat-label{ position:absolute; left:22px; right:22px; bottom:20px; display:flex; align-items:center; justify-content:space-between; color:#fff; font-family:var(--ip-heading-font); font-weight:700; font-size:18px; z-index:2; }
    .ip-cat-label i{ font-size:14px; transition:transform .3s ease; }
    .ip-cat-card:hover .ip-cat-label i{ transform:translateX(5px); }

    @media (max-width:900px){ .ip-cat-card{ width:260px; flex:0 0 260px; } }
    @media (max-width:560px){ .ip-cat-card{ width:200px; flex:0 0 200px; aspect-ratio:1/1; } .ip-cat-label{ font-size:14px; left:14px; right:14px; bottom:14px; } .ip-cats-track{ gap:14px; } }

    /* Products: homepage grid/card shell (Popular Right Now section) */
    .ip-products{ background:var(--ip-surface); }
    .ip-products ul.products{ display:grid !important; grid-template-columns:repeat(4,1fr); gap:24px; list-style:none; margin:0 0 40px; padding:0; }
    .ip-products ul.products::before, .ip-products ul.products::after{ content:none !important; display:none !important; }
    .ip-products ul.products li.product{ background:#fff; border:1px solid var(--ip-border); border-radius:12px; padding:18px; text-align:left; transition:box-shadow .25s ease, transform .25s ease; width:100% !important; max-width:100% !important; float:none !important; margin:0 !important; }
    .ip-products ul.products li.product:hover{ box-shadow:0 16px 32px rgba(23,23,23,0.08); transform:translateY(-3px); }
    .ip-products ul.products li.product img{ border-radius:8px; margin-bottom:14px; display:block; width:100%; height:auto; aspect-ratio:1/1; object-fit:cover; }

    /* Products: title + price colors + add-to-cart -- uniform everywhere (homepage, shop, category archives) */
    ul.products li.product .woocommerce-loop-product__title{ font-family:var(--ip-heading-font); font-weight:600; font-size:15px; line-height:1.35; color:var(--ip-ink) !important; margin:0 0 6px; }
    ul.products li.product .price{ color:var(--ip-accent) !important; font-weight:800 !important; font-size:16px !important; }
    ul.products li.product .price ins{ text-decoration:none; }
    ul.products li.product .price del{ color:var(--ip-muted); font-weight:400; font-size:13px; opacity:.8; margin-right:6px; }
    ul.products li.product .button{ display:block; text-align:center; margin-top:14px; background:#EBEBEB !important; color:var(--ip-ink) !important; border:none !important; border-radius:999px; padding:11px 16px; font-size:13.5px; font-weight:600; text-decoration:none; transition:background .2s ease, color .2s ease; }
    ul.products li.product .button:hover{ background:var(--ip-accent) !important; color:#fff !important; }
    ul.products li.product .onsale{ background:var(--ip-accent); color:#fff; border-radius:999px; font-size:11px; font-weight:600; min-height:auto; min-width:auto; padding:5px 10px; line-height:1; top:14px; left:14px; }
    ul.products li.product .star-rating{ display:none; }

    .ip-view-all{ text-align:center; }
    .ip-view-all a{ display:inline-flex; align-items:center; gap:10px; background:var(--ip-accent); color:#fff; text-decoration:none; padding:14px 28px; border-radius:6px; font-family:var(--ip-body-font); font-weight:600; font-size:14.5px; }
    .ip-view-all a:hover{ background:var(--ip-ink); }
    @media (max-width:900px){ .ip-products ul.products{ grid-template-columns:repeat(2,1fr); } }
    @media (max-width:560px){ .ip-products ul.products{ grid-template-columns:1fr; } .ip-products ul.products li.product:nth-child(n+7){ display:none !important; } }

    /* Storytelling */
    .ip-story{ background:var(--ip-bg); }
    .ip-story-inner{ display:grid; grid-template-columns:1fr 1fr; gap:72px; align-items:flex-start; max-width:1400px; margin:0 auto; }
    .ip-story img{ width:100%; border-radius:12px; display:block; aspect-ratio:4/3.2; object-fit:cover; }
    .ip-story-text h2{ font-family:var(--ip-heading-font); font-weight:700; font-size:34px; color:var(--ip-ink); line-height:1.18; margin:0 0 20px; }
    .ip-story-text p{ font-size:16px; line-height:1.7; color:var(--ip-muted); margin:0 0 16px; }
    .ip-story-cta{ display:inline-flex; align-items:center; gap:8px; margin-top:10px; color:var(--ip-ink); text-decoration:none; font-weight:600; font-size:15px; border-bottom:2px solid var(--ip-accent); padding-bottom:3px; }
    .ip-story-cta:hover{ color:var(--ip-accent); }
    @media (max-width:900px){ .ip-story-inner{ grid-template-columns:1fr; gap:32px; } }

    /* Why Choose Us */
    .ip-why{ background:var(--ip-accent); }
    .ip-why-bar{ max-width:1400px; margin:0 auto; display:grid; grid-template-columns:repeat(4,1fr); gap:0 28px; }
    .ip-why-cell{ display:flex; align-items:center; justify-content:center; gap:16px; padding:28px 10px; }
    .ip-why-cell i{ font-size:28px; color:#fff; flex-shrink:0; width:32px; text-align:center; }
    .ip-why-text{ text-align:center; }
    .ip-why-text strong{ display:block; font-family:var(--ip-heading-font); font-weight:700; font-size:13.5px; letter-spacing:.03em; text-transform:uppercase; color:#fff; margin-bottom:4px; }
    .ip-why-text span{ display:block; font-size:13px; color:rgba(255,255,255,0.8); }
    @media (max-width:900px){ .ip-why-bar{ grid-template-columns:repeat(2,1fr); } .ip-why-cell{ border-right:none; border-bottom:1px solid rgba(255,255,255,0.15); } }
    @media (max-width:560px){ .ip-why-bar{ grid-template-columns:1fr; } .ip-why-cell{ padding:20px 24px; border-bottom:1px solid rgba(255,255,255,0.15); } }

    /* Mobile sticky bottom tab bar */
    .ip-mobile-tabbar{ display:none; }
    @media (max-width:767px){
        .ip-mobile-tabbar{ display:flex; position:fixed; left:0; right:0; bottom:0; z-index:99999; background:#fff; border-top:1px solid var(--ip-border); box-shadow:0 -4px 16px rgba(23,23,23,0.10); padding:6px 4px calc(6px + env(safe-area-inset-bottom)); }
        .ip-tab-item{ flex:1; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3px; text-decoration:none; color:var(--ip-muted); font-size:10.5px; font-weight:600; padding:4px 2px; }
        .ip-tab-item i{ font-size:18px; line-height:1; }
        .ip-tab-item.is-active, .ip-tab-item:hover{ color:var(--ip-accent); }
        .ip-tab-cart-wrap{ position:relative; display:inline-flex; }
        .ip-tab-badge{ position:absolute; top:-6px; right:-9px; background:var(--ip-accent); color:#fff; font-size:9px; font-weight:700; line-height:1; min-width:15px; height:15px; border-radius:999px; display:flex; align-items:center; justify-content:center; padding:0 3px; }
        body{ padding-bottom:64px; }
    }

    /* Product page: shipping estimate block */
    .ip-ship-estimate{ display:flex; align-items:flex-start; gap:12px; background:var(--ip-surface); border:1px solid var(--ip-border); border-radius:10px; padding:14px 16px; margin:16px 0; }
    .ip-ship-estimate i{ font-size:18px; color:var(--ip-accent); margin-top:2px; }
    .ip-ship-estimate strong{ display:block; color:var(--ip-ink); font-size:14.5px; margin-bottom:2px; }
    .ip-ship-estimate span{ display:block; color:var(--ip-muted); font-size:13px; }
    .ip-ship-estimate span a{ color:var(--ip-accent); text-decoration:underline; }
