.elementor-kit-72{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-color-4396a6f:#E14C79;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-72 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */:root{
    --bg:#FFF7FA;
    --surface:#FFFFFF;
    --ink:#3A2430;
    --ink-soft:#9C7C8A;
    --line:#F6D8E6;
    --primary:#D6336C;
    --primary-dark:#A8285A;
    --mustard:#D9932E;
    --mustard-dark:#A96F1C;
    --wine:#C0392B;
    --wine-light:#FCEAE7;
  }
  *{box-sizing:border-box;margin:0;padding:0;}
  body{
    background:var(--bg);
    color:var(--ink);
    font-family:'Inter',sans-serif;
    -webkit-font-smoothing:antialiased;
  }
  a{color:inherit;text-decoration:none;}
  img{max-width:100%;display:block;}
  h1,h2,h3{font-family:'Libre Franklin',sans-serif;}
  .price{font-family:'IBM Plex Mono',monospace;}
  .wrap{max-width:1240px;margin:0 auto;padding:0 24px;}

  /* stitched divider — signature element */
  .stitch{
    height:1px;
    background-image:repeating-linear-gradient(90deg, var(--line) 0 8px, transparent 8px 14px);
    margin:0;
  }
  .stitch-thick{
    height:2px;
    background-image:repeating-linear-gradient(90deg, var(--primary) 0 10px, transparent 10px 18px);
    opacity:.35;
  }

  /* utility bar */
  .utility{background:var(--primary-dark);color:#FDECF2;font-size:12.5px;letter-spacing:.02em;}
  .utility .wrap{display:flex;justify-content:center;gap:36px;padding:9px 24px;flex-wrap:wrap;}
  .utility .no-cod{color:var(--mustard);font-weight:700;}

  /* header */
  header{background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50;}
  .hamburger-btn{display:none;cursor:pointer;padding:6px;margin-right:-6px;flex-shrink:0;}
  .mobile-search{display:none;}
  .drawer-toggle-input{display:none;}
  .drawer-overlay{display:none;position:fixed;inset:0;background:rgba(20,10,15,.45);z-index:90;}
  .drawer-toggle-input:checked ~ .drawer-overlay{display:block;}
  .mobile-drawer{position:fixed;top:0;left:0;bottom:0;width:82%;max-width:320px;background:var(--surface);z-index:91;transform:translateX(-100%);transition:transform .25s ease;overflow-y:auto;box-shadow:2px 0 24px rgba(0,0,0,.18);}
  .drawer-toggle-input:checked ~ .mobile-drawer{transform:translateX(0);}
  .drawer-head{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border-bottom:1px solid var(--line);}
  .drawer-close{font-size:22px;line-height:1;color:var(--ink-soft);cursor:pointer;padding:4px 8px;}
  .drawer-links{padding:8px 0;display:flex;flex-direction:column;}
  .drawer-links a{padding:13px 20px;font-size:14.5px;font-weight:600;color:var(--ink);border-bottom:1px solid var(--line);}
  .drawer-links a.drawer-sub-link{font-weight:400;font-size:13px;color:var(--ink-soft);padding:10px 20px 10px 32px;border-bottom:none;background:var(--bg);}
  .drawer-links a.sale{color:var(--wine);}
  .drawer-foot{display:flex;border-top:1px solid var(--line);margin-top:8px;}
  .drawer-foot a{flex:1;text-align:center;padding:16px 8px;font-size:12.5px;font-weight:600;color:var(--ink);}

  /* mobile bottom tab bar — hidden on desktop, shown at the 760px breakpoint */
  .bottom-nav{display:none;}
  .bottom-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;flex:1;padding:7px 4px 6px;font-size:10.5px;font-weight:600;color:var(--ink-soft);position:relative;min-height:48px;}
  .bottom-nav-item svg{stroke:var(--ink-soft);}
  .bottom-nav-item.active,.bottom-nav-item.active svg{color:var(--primary);stroke:var(--primary);}
  .bottom-nav-item .bn-badge{position:absolute;top:2px;right:calc(50% - 18px);background:var(--wine);color:#fff;font-size:9px;font-weight:700;width:15px;height:15px;border-radius:50%;display:flex;align-items:center;justify-content:center;}
  .header-row{display:flex;align-items:center;gap:32px;padding:18px 24px;}
  .logo{font-family:'Libre Franklin',sans-serif;font-weight:900;font-size:26px;letter-spacing:.02em;color:var(--primary-dark);white-space:nowrap;}
  .logo span{color:var(--mustard-dark);}
  .search{flex:1;display:flex;align-items:center;background:var(--bg);border:1px solid var(--line);border-radius:3px;padding:10px 16px;gap:10px;}
  .search input{flex:1;background:none;border:none;outline:none;font-family:'Inter',sans-serif;font-size:14px;color:var(--ink);}
  .search input::placeholder{color:var(--ink-soft);}
  .search svg{flex-shrink:0;}
  .icon-row{display:flex;align-items:center;gap:26px;flex-shrink:0;}
  .icon-item{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:11px;color:var(--ink-soft);cursor:pointer;position:relative;}
  .icon-item svg{stroke:var(--ink);}
  .cart-count{position:absolute;top:-6px;right:-8px;background:var(--wine);color:#fff;font-size:10px;font-weight:700;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;}

  .nav-row{display:flex;gap:30px;padding:0 24px;font-size:13.5px;font-weight:500;flex-wrap:wrap;}
  .nav-item{position:relative;}
  .nav-top{display:inline-block;padding:12px 0;white-space:nowrap;color:var(--ink);border-bottom:2px solid transparent;}
  .nav-item:hover .nav-top,.nav-item:focus-within .nav-top{border-color:var(--mustard);color:var(--mustard-dark);}
  .nav-top.sale{color:var(--wine);font-weight:700;}
  .mega-panel{position:absolute;top:100%;left:0;background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:16px 20px;min-width:210px;box-shadow:0 10px 24px rgba(36,31,26,.10);opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity .15s ease,transform .15s ease;z-index:60;}
  .nav-item:hover .mega-panel,.nav-item:focus-within .mega-panel{opacity:1;visibility:visible;transform:translateY(0);}
  .mega-links{display:flex;flex-direction:column;gap:10px;margin-bottom:12px;}
  .mega-links a{font-size:13px;font-weight:400;color:var(--ink);white-space:nowrap;}
  .mega-links a:hover{color:var(--mustard-dark);}
  .mega-viewall{display:block;font-size:12px;font-weight:600;color:var(--primary);border-top:1px solid var(--line);padding-top:10px;white-space:nowrap;}

  /* promo duo */
  .promo-duo{display:grid;grid-template-columns:1.4fr 1fr;gap:16px;margin:28px 0;}
  .ship-banner{display:flex;align-items:center;justify-content:center;gap:14px;background:var(--mustard);color:#4A2E08;border-radius:6px;padding:16px 24px;margin:24px 0;flex-wrap:wrap;text-align:center;}
  .ship-banner-icon{flex-shrink:0;display:flex;}
  .ship-banner-text{font-size:15px;font-weight:700;line-height:1.4;}
  .ship-banner-text span{font-weight:400;opacity:.8;padding:0 6px;}
  .promo-card{border-radius:6px;padding:34px;display:flex;flex-direction:column;justify-content:center;gap:12px;min-height:220px;position:relative;overflow:hidden;}
  .promo-card::before{content:"";position:absolute;inset:0;background:linear-gradient(100deg, rgba(15,15,10,.72) 0%, rgba(15,15,10,.35) 55%, rgba(15,15,10,.15) 100%);z-index:0;}
  .promo-card > *{position:relative;z-index:1;}
  .promo-1{color:#fff;}
  .promo-2{color:#fff;}
  .promo-eyebrow{font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;opacity:.8;}
  .promo-title{font-family:'Libre Franklin',sans-serif;font-weight:700;font-size:28px;line-height:1.15;max-width:340px;}
  .promo-cta{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;margin-top:6px;width:fit-content;border-bottom:1px solid currentColor;padding-bottom:2px;}

  /* category strip */
  .cat-strip{display:grid;grid-template-columns:repeat(9,1fr);gap:18px;margin:36px 0 40px;}
  .cat-item{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;cursor:pointer;}
  .cat-circle{width:68px;height:68px;border-radius:50%;background:var(--surface);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;transition:border-color .15s;}
  .cat-item:hover .cat-circle{border-color:var(--mustard);}
  .cat-item:hover .cat-label{border-bottom-color:var(--mustard);}
  .cat-label{font-size:12px;font-weight:500;border-bottom:1px dashed transparent;padding-bottom:2px;}

  .section-head{display:flex;justify-content:space-between;align-items:flex-end;margin:44px 0 18px;}
  .section-eyebrow{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--mustard-dark);margin-bottom:4px;}
  .section-title{font-size:21px;font-weight:700;}
  .section-sub{font-size:13px;color:var(--ink-soft);margin-top:4px;max-width:480px;line-height:1.5;}
  .view-all{font-size:12.5px;font-weight:600;color:var(--primary);border-bottom:1px solid var(--primary);padding-bottom:1px;}

  /* deal strip */
  .deal-band{background:var(--wine-light);border:1px solid #EBCFCF;border-radius:6px;padding:22px 24px;margin:40px 0;}
  .deal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;}
  .deal-title{font-size:17px;font-weight:700;color:var(--wine);display:flex;align-items:center;gap:10px;}
  .timer{font-family:'IBM Plex Mono',monospace;font-size:13px;background:var(--wine);color:#fff;padding:5px 10px;border-radius:3px;}
  .scroll-row{display:flex;gap:14px;overflow-x:auto;padding-bottom:4px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;}
  .scroll-row::-webkit-scrollbar{height:6px;}
  .scroll-row::-webkit-scrollbar-thumb{background:var(--line);border-radius:3px;}

  .pcard{background:var(--surface);border:1px solid var(--line);border-radius:5px;flex-shrink:0;overflow:hidden;transition:border-color .15s;position:relative;}
  .pcard:hover{border-color:var(--primary);}
  .scroll-row .pcard{width:190px;scroll-snap-align:start;}
  .grid-4 .pcard{width:100%;}
  .pcard-img{aspect-ratio:1/1;background:#EFEAE0;display:flex;align-items:center;justify-content:center;position:relative;}
  .badge{position:absolute;top:8px;left:8px;background:var(--mustard);color:#4A2E08;font-size:10.5px;font-weight:700;padding:3px 7px;border-radius:2px;letter-spacing:.02em;}
  .wish{position:absolute;top:8px;right:8px;width:26px;height:26px;background:rgba(255,255,255,.9);border-radius:50%;display:flex;align-items:center;justify-content:center;}
  .pcard-body{padding:12px 12px 14px;}
  .pcard-cat{font-size:10.5px;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.05em;margin-bottom:3px;}
  .pcard-name{font-size:13.5px;font-weight:500;line-height:1.3;margin-bottom:6px;min-height:34px;}
  .pcard-rating{font-size:11px;color:var(--ink-soft);margin-bottom:6px;display:flex;align-items:center;gap:4px;}
  .rate-pill{background:#D6336C;color:#fff;font-size:10.5px;font-weight:600;padding:1px 5px;border-radius:2px;}
  .price-row{display:flex;align-items:baseline;gap:8px;}
  .price-now{font-size:15px;font-weight:600;}
  .price-old{font-size:12px;color:var(--ink-soft);text-decoration:line-through;}
  .price-off{font-size:12px;color:var(--wine);font-weight:600;}

  /* room grid */
  .room-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:18px 0 8px;}
  .room-card{position:relative;border-radius:6px;overflow:hidden;aspect-ratio:4/5;background:#DDD5C2;display:flex;align-items:flex-end;padding:20px;}
  .room-card::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg, rgba(20,15,8,.55), transparent 55%);}
  .room-label{position:relative;z-index:1;color:#fff;font-family:'Libre Franklin',sans-serif;font-weight:700;font-size:19px;}
  .room-sub{position:relative;z-index:1;color:#FDECF2;font-size:12px;margin-top:2px;}

  /* product grid */
  .grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}

  /* trust bar */
  .trust-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:52px 0;}
  .trust-item{display:flex;align-items:center;gap:12px;padding:22px 20px;border-right:1px solid var(--line);}
  .trust-item:last-child{border-right:none;}
  .trust-item.trust-highlight{background:var(--wine-light);}
  .trust-title{font-size:13px;font-weight:600;}
  .trust-sub{font-size:11.5px;color:var(--ink-soft);}


  /* footer */
  footer{background:#2B1620;color:#C9A8B8;padding:48px 0 20px;}
  .foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr 1fr;gap:32px;margin-bottom:36px;}
  .foot-logo{font-family:'Libre Franklin',sans-serif;font-weight:900;font-size:22px;color:#fff;margin-bottom:10px;}
  .foot-desc{font-size:12.5px;line-height:1.6;color:#93897A;max-width:220px;}
  .foot-head{font-size:12.5px;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.06em;margin-bottom:14px;}
  .foot-links{display:flex;flex-direction:column;gap:9px;font-size:13px;}
  .foot-links a:hover{color:#fff;}
  .foot-bottom{border-top:1px solid #322C22;padding-top:18px;display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#7A7264;flex-wrap:wrap;gap:12px;}
  .pay-icons{display:flex;gap:8px;}
  .pay-icon{background:#3D2030;border:1px solid #4F2A3D;border-radius:3px;padding:5px 9px;font-size:10.5px;font-weight:600;color:#C9A8B8;}

  @media (max-width:960px){
    .cat-strip{grid-template-columns:repeat(4,1fr);}
    .grid-4{grid-template-columns:repeat(2,1fr);}
    .room-grid{grid-template-columns:1fr;}
    .promo-duo{grid-template-columns:1fr;}
    .trust-bar{grid-template-columns:repeat(2,1fr);}
    .foot-grid{grid-template-columns:1fr 1fr;}
    .header-row{flex-wrap:nowrap;padding:14px 16px;gap:14px;}
    .hamburger-btn{display:flex;}
    .nav-row{display:none;}
    .search.desktop-search{display:none;}
    .mobile-search{display:block;padding:0 16px 14px;}
    .icon-item.desktop-only{display:none;}
    .logo{font-size:21px;}
    .utility .wrap{gap:16px;font-size:11.5px;padding:8px 16px;}
    .promo-title{font-size:22px;}
    .ship-banner-text{font-size:13.5px;}
    .bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:80;background:var(--surface);border-top:1px solid var(--line);box-shadow:0 -2px 12px rgba(58,36,48,.08);}
    body{padding-bottom:58px;}
  }

  @media (max-width:600px){
    .trust-bar{grid-template-columns:1fr;}
    .trust-item{border-right:none;border-bottom:1px solid var(--line);}
    .trust-item:last-child{border-bottom:none;}
    .foot-grid{grid-template-columns:1fr;gap:28px;}
    .wrap{padding:0 16px;}
    .video-scroll .video-card{width:44vw;min-width:44vw;}
    .scroll-row .pcard{width:150px;min-width:150px;}
    .cat-strip{grid-template-columns:repeat(3,1fr);gap:12px;}
    .cat-circle{width:56px;height:56px;font-size:20px;}
    .section-title{font-size:18px;}
    .promo-card{padding:24px;min-height:180px;}
    .wholesale-band,.deal-band{padding:22px 18px;}
    .wholesale-cta{width:100%;}
    .wholesale-cta .btn-mustard{width:100%;text-align:center;}
  }

  /* wholesale */
  .wholesale-band{background:#FFFFFF;border:1px solid var(--line);border-left:5px solid var(--mustard);border-radius:6px;padding:32px 40px;display:flex;justify-content:space-between;align-items:center;gap:24px;color:var(--ink);margin:44px 0;flex-wrap:wrap;box-shadow:0 2px 10px rgba(58,36,48,.05);}
  .wholesale-band h3{color:var(--ink);}
  .wholesale-band p{color:var(--ink-soft);}
  .wholesale-band h3{font-size:20px;font-weight:700;margin-bottom:6px;}
  .wholesale-band p{font-size:13px;opacity:.85;max-width:420px;line-height:1.5;}
  .wholesale-cta{display:flex;gap:10px;flex-wrap:wrap;flex-shrink:0;}
  .btn-mustard{background:var(--mustard);color:#4A2E08;border:none;padding:12px 22px;font-weight:700;font-size:13px;border-radius:3px;cursor:pointer;white-space:nowrap;text-decoration:none;display:inline-block;}
  .btn-outline{background:transparent;color:#FDECF2;border:1px solid rgba(239,233,220,.4);padding:12px 22px;font-weight:600;font-size:13px;border-radius:3px;cursor:pointer;white-space:nowrap;text-decoration:none;display:inline-block;}

  /* video drops */
  .video-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
  .video-scroll{display:flex;gap:14px;overflow-x:auto;padding-bottom:4px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;}
  .video-scroll::-webkit-scrollbar{height:6px;}
  .video-scroll::-webkit-scrollbar-thumb{background:var(--line);border-radius:3px;}
  .video-scroll .video-card{width:clamp(150px, 18vw, 224px);min-width:clamp(150px, 18vw, 224px);flex-shrink:0;scroll-snap-align:start;}
  .video-card{position:relative;border-radius:6px;overflow:hidden;aspect-ratio:9/16;background:#DDD5C2;display:block;}
  .video-card::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg, rgba(20,15,8,.7), transparent 55%);}
  .video-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.92);display:flex;align-items:center;justify-content:center;z-index:1;}
  .video-meta{position:absolute;bottom:10px;left:10px;right:10px;z-index:1;color:#fff;}
  .video-date{font-size:10.5px;opacity:.8;font-family:'IBM Plex Mono',monospace;}
  .video-caption{font-size:12.5px;font-weight:600;line-height:1.3;margin-top:2px;}
  .video-price{font-family:'IBM Plex Mono',monospace;font-size:11.5px;margin-top:3px;color:#FDECF2;}

  /* --- wholesale page additions --- */
  .page-head{max-width:640px;padding-top:6px;}
  .page-title{font-size:32px;font-weight:900;line-height:1.15;margin:10px 0 12px;}
  .page-sub{font-size:14.5px;color:var(--ink-soft);line-height:1.6;}
  .steps-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:6px;}
  .step-card{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:22px;}
  .step-num{font-family:'IBM Plex Mono',monospace;color:var(--mustard-dark);font-size:13px;font-weight:600;margin-bottom:10px;}
  .step-title{font-size:15px;font-weight:700;margin-bottom:6px;}
  .step-desc{font-size:13px;color:var(--ink-soft);line-height:1.55;}
  .wholesale-panel{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:28px;max-width:640px;}
  .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
  .form-field{margin-bottom:16px;display:flex;flex-direction:column;gap:6px;}
  .form-field label{font-size:12.5px;font-weight:600;color:var(--ink-soft);}
  .form-field input,.form-field textarea{border:1px solid var(--line);border-radius:3px;padding:10px 12px;font-family:'Inter',sans-serif;font-size:13.5px;color:var(--ink);background:var(--bg);outline:none;resize:vertical;}
  .form-field input:focus,.form-field textarea:focus{border-color:var(--primary);}
  .contact-band{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--line);border-radius:6px;margin:32px 0 52px;overflow:hidden;}
  .contact-item{padding:20px 22px;border-right:1px solid var(--line);}
  .contact-item:last-child{border-right:none;}
  @media (max-width:760px){
    .steps-row{grid-template-columns:1fr;}
    .form-row{grid-template-columns:1fr;}
    .contact-band{grid-template-columns:1fr;}
  }

  /* --- product page additions --- */
  .breadcrumb{font-size:12.5px;color:var(--ink-soft);margin-bottom:20px;}
  .breadcrumb a{color:var(--ink-soft);}
  .breadcrumb a:hover{color:var(--primary);}
  .pdp-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:start;}
  .pdp-gallery-main{aspect-ratio:1/1;background:#EFEAE0;border-radius:6px;margin-bottom:12px;}
  .pdp-gallery-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;}
  .pdp-thumb{aspect-ratio:1/1;background:#E4DCC9;border-radius:4px;border:1px solid var(--line);}
  .pdp-video-thumb{position:relative;overflow:hidden;}
  .pdp-video-thumb .video-play{width:32px;height:32px;}
  .pdp-video-badge{position:absolute;bottom:4px;left:4px;background:rgba(20,15,8,.75);color:#fff;font-size:9px;font-weight:700;padding:2px 5px;border-radius:2px;}
  .pdp-cat{font-size:12px;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px;}
  .pdp-title{font-size:26px;font-weight:900;line-height:1.2;margin-bottom:10px;}
  .pdp-rating{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-soft);margin-bottom:16px;}
  .pdp-price-row{display:flex;align-items:baseline;gap:10px;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid var(--line);}
  .pdp-price-now{font-size:26px;font-weight:700;}
  .pdp-price-old{font-size:15px;color:var(--ink-soft);text-decoration:line-through;}
  .pdp-price-off{font-size:13px;color:var(--wine);font-weight:600;}
  .pdp-section-label{font-size:12.5px;font-weight:600;color:var(--ink-soft);margin-bottom:8px;}
  .pdp-variants{display:flex;gap:8px;margin-bottom:22px;flex-wrap:wrap;}
  .pdp-variant{border:1px solid var(--line);border-radius:3px;padding:9px 16px;font-size:13px;font-weight:500;cursor:pointer;background:var(--surface);}
  .pdp-variant.active{border-color:var(--primary);background:var(--primary);color:#fff;}
  .pdp-qty-row{display:flex;align-items:center;gap:14px;margin-bottom:22px;}
  .pdp-qty{display:flex;align-items:center;border:1px solid var(--line);border-radius:3px;}
  .pdp-qty button{background:none;border:none;width:34px;height:38px;font-size:16px;cursor:pointer;color:var(--ink);}
  .pdp-qty span{width:32px;text-align:center;font-size:14px;font-weight:600;}
  .pdp-cta-row{display:flex;gap:12px;margin-bottom:24px;}
  .btn-primary{background:var(--primary);color:#FDECF2;border:none;padding:14px 28px;font-weight:700;font-size:14px;border-radius:3px;cursor:pointer;flex:1;}
  .btn-secondary{background:var(--surface);color:var(--primary);border:1px solid var(--primary);padding:14px 28px;font-weight:700;font-size:14px;border-radius:3px;cursor:pointer;flex:1;}
  .pdp-policy-list{display:flex;flex-direction:column;gap:10px;padding:16px 0;border-top:1px solid var(--line);}
  .pdp-policy-item{display:flex;gap:10px;font-size:12.5px;color:var(--ink-soft);align-items:flex-start;}
  .pdp-policy-item b{color:var(--ink);font-weight:600;}
  .pdp-desc{font-size:13.5px;line-height:1.7;color:var(--ink-soft);max-width:640px;margin:8px 0 40px;}
  .as-seen{display:flex;align-items:center;gap:14px;background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:14px 16px;margin-bottom:24px;}
  .as-seen-thumb{width:52px;height:70px;border-radius:4px;background-image:url('https://images.pexels.com/photos/5629138/pexels-photo-5629138.jpeg?auto=compress&cs=tinysrgb&w=600');background-size:cover;background-position:center;flex-shrink:0;position:relative;overflow:hidden;}
  .as-seen-thumb .video-play{width:26px;height:26px;}
  .as-seen-text{font-size:12.5px;color:var(--ink-soft);}
  .as-seen-text b{color:var(--ink);display:block;font-size:13px;margin-bottom:2px;}

/* ==========================================================================
   NATIVE ELEMENTOR WIDGET SUPPORT
   Elementor puts our custom class on each widget's OUTER wrapper div, not
   on the actual heading/image/icon element inside it. These rules reach
   into Elementor's own nested markup so text size, color, and image sizing
   actually apply. If your Elementor version nests markup slightly
   differently, these .elementor-kit-72s are written broad enough to still match.
   ========================================================================== */

/* Headings used as styled text (promo titles, room labels, etc.) */
.promo-title .elementor-heading-title{font-size:26px;font-weight:700;line-height:1.15;color:#fff;}
.promo-cta .elementor-heading-title{font-size:14px;font-weight:600;color:#fff;border-bottom:1px solid currentColor;display:inline-block;padding-bottom:2px;}
.room-label .elementor-heading-title{font-size:19px;font-weight:700;color:#fff;}
.ship-banner-text .elementor-heading-title{font-size:15px;font-weight:700;color:#4A2E08;text-align:center;}
.deal-title .elementor-heading-title{font-size:17px;font-weight:700;}
.pcard-name .elementor-heading-title{font-size:13.5px;font-weight:500;line-height:1.3;}
.video-caption-link .elementor-heading-title{font-size:12.5px;font-weight:600;color:#fff;line-height:1.3;}
.video-caption-link .elementor-heading-title a{color:inherit;text-decoration:none;}
.trust-title .elementor-heading-title{font-size:13px;font-weight:600;}
.step-title .elementor-heading-title{font-size:15px;font-weight:700;}
.section-title .elementor-heading-title{font-size:21px;font-weight:700;}
.page-title .elementor-heading-title{font-size:32px;font-weight:900;line-height:1.15;}

/* Image widget — product photos, category circles need to fill their box */
.pcard-img-native{position:absolute;inset:0;}
.pcard-img-native .elementor-widget-container,
.pcard-img-native img{width:100%;height:100%;object-fit:cover;}
.cat-circle{width:68px;height:68px;border-radius:50%;overflow:hidden;margin:0 auto;}
.cat-circle img{width:100%;height:100%;object-fit:cover;}

/* Icon widget — ship banner, trust bar, video play button */
.ship-banner-icon .elementor-icon{background:transparent;color:#4A2E08;font-size:24px;}
.trust-icon .elementor-icon{background:transparent;color:var(--primary);font-size:22px;}
.trust-highlight .trust-icon .elementor-icon{color:var(--wine);}
.video-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2;}
.video-play .elementor-icon{width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.92);display:flex;align-items:center;justify-content:center;color:var(--primary);font-size:16px;}

/* Text-editor overlay badges/wishlist on product cards */
.pcard-badge{position:absolute;top:8px;left:8px;z-index:2;}
.pcard-wish{position:absolute;top:8px;right:8px;z-index:2;}
.pcard-star .elementor-star-rating i{font-size:12px;}

/* Card containers — since we no longer have one HTML block per card,
   these give the native column/inner-section stack the right box shape */
.pcard{background:var(--surface);border:1px solid var(--line);border-radius:5px;overflow:hidden;transition:border-color .15s;}
.pcard:hover{border-color:var(--primary);}
.pcard-img{aspect-ratio:1/1;background:#EFEAE0;position:relative;overflow:hidden;}
.pcard-body{padding:12px 12px 14px;}
.pcard-rating-count{font-size:11px;color:var(--ink-soft);margin:2px 0 6px;}

.room-card{position:relative;border-radius:6px;overflow:hidden;aspect-ratio:4/5;display:flex;align-items:flex-end;padding:20px;}
.room-card::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg, rgba(20,15,8,.55), transparent 55%);pointer-events:none;}
.room-card > .elementor-column,.room-card .elementor-widget-wrap{position:relative;z-index:1;}

.video-card{position:relative;border-radius:6px;overflow:hidden;aspect-ratio:9/16;}
.video-card::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg, rgba(20,15,8,.7), transparent 55%);pointer-events:none;}
.video-card .elementor-column,.video-card .elementor-widget-wrap{position:relative;z-index:1;}
.video-date{position:absolute;bottom:38px;left:10px;font-size:10.5px;color:#fff;font-family:'IBM Plex Mono',monospace;z-index:2;}
.video-price{position:absolute;bottom:10px;left:10px;font-size:11.5px;color:#fff;font-family:'IBM Plex Mono',monospace;z-index:2;}
.video-caption-link{position:absolute;bottom:22px;left:10px;right:10px;z-index:2;}

/* Promo banner cards */
.promo-card{border-radius:6px;min-height:220px;display:flex;align-items:center;padding:34px;position:relative;overflow:hidden;}
.promo-card::before{content:"";position:absolute;inset:0;background:linear-gradient(100deg, rgba(15,15,10,.72) 0%, rgba(15,15,10,.35) 55%, rgba(15,15,10,.15) 100%);pointer-events:none;}
.promo-card > .elementor-container{position:relative;z-index:1;}
.promo-col{padding:0 8px;}

/* Grid rows that replace the original sliding rows — wrap instead of scroll */
.deal-grid-row,.video-grid-row{margin-bottom:16px;}
.deal-grid-row .elementor-column,.video-grid-row .elementor-column{margin-bottom:16px;}

/* Shortcode widget used as the wholesale form's placeholder container */
.wholesale-panel{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:28px;max-width:640px;}

/* Category strip is now 3 stacked section-rows (native columns can't do a
   9-across grid), so tighten the margin the original single-row grid used */
.cat-strip{margin:8px 0;}/* End custom CSS */