.elementor-kit-426{--e-global-color-primary:#3B2F25;--e-global-color-secondary:#8A8C5E;--e-global-color-text:#6B5F52;--e-global-color-accent:#C08552;--e-global-color-nkcream:#FAF5ED;--e-global-color-nkcrmdp:#F2E9DA;--e-global-color-nksand:#E7DCC8;--e-global-color-nkline:#E2D8C8;--e-global-color-nkwhite:#FFFFFF;--e-global-color-nkolvdk:#6F7149;--e-global-color-nkespdk:#2E251D;--e-global-color-nkmuted:#8C8073;--e-global-color-nkgold:#D8A23A;--e-global-color-nkgreen:#5B7A52;--e-global-typography-primary-font-family:"Cormorant Garamond";--e-global-typography-primary-font-size:52px;--e-global-typography-primary-font-weight:600;--e-global-typography-primary-line-height:1.12em;--e-global-typography-secondary-font-family:"Cormorant Garamond";--e-global-typography-secondary-font-size:34px;--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-line-height:1.2em;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:17px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.75em;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-size:13px;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-line-height:1.4em;--e-global-typography-accent-letter-spacing:2.2px;--e-global-typography-nkbtn-font-family:"Inter";--e-global-typography-nkbtn-font-size:16px;--e-global-typography-nkbtn-font-weight:600;--e-global-typography-nkbtn-line-height:1.2em;--e-global-typography-nkbtn-letter-spacing:0.2px;--e-global-typography-nknav-font-family:"Inter";--e-global-typography-nknav-font-size:15px;--e-global-typography-nknav-font-weight:600;--e-global-typography-nknav-line-height:1.3em;--e-global-typography-nknav-letter-spacing:0.2px;--e-global-typography-nkprice-font-family:"Inter";--e-global-typography-nkprice-font-size:20px;--e-global-typography-nkprice-font-weight:600;--e-global-typography-nkprice-line-height:1.3em;--e-global-typography-nkquote-font-family:"Cormorant Garamond";--e-global-typography-nkquote-font-size:27px;--e-global-typography-nkquote-font-weight:500;--e-global-typography-nkquote-line-height:1.45em;--e-global-typography-nksmall-font-family:"Inter";--e-global-typography-nksmall-font-size:14px;--e-global-typography-nksmall-font-weight:400;--e-global-typography-nksmall-line-height:1.6em;background-color:#FAF5ED;color:#6B5F52;font-family:"Inter", Sans-serif;font-size:17px;font-weight:400;line-height:1.75em;}.elementor-kit-426 button,.elementor-kit-426 input[type="button"],.elementor-kit-426 input[type="submit"],.elementor-kit-426 .elementor-button{background-color:#8A8C5E;font-family:"Inter", Sans-serif;font-size:16px;font-weight:600;line-height:1.2em;letter-spacing:0.2px;color:#FFFFFF;border-style:solid;border-width:0px 0px 0px 0px;border-color:#8A8C5E;border-radius:100px 100px 100px 100px;padding:17px 34px 17px 34px;}.elementor-kit-426 button:hover,.elementor-kit-426 button:focus,.elementor-kit-426 input[type="button"]:hover,.elementor-kit-426 input[type="button"]:focus,.elementor-kit-426 input[type="submit"]:hover,.elementor-kit-426 input[type="submit"]:focus,.elementor-kit-426 .elementor-button:hover,.elementor-kit-426 .elementor-button:focus{background-color:#6F7149;color:#FFFFFF;border-style:solid;border-width:0px 0px 0px 0px;border-color:#6F7149;}.elementor-kit-426 e-page-transition{background-color:#FFBC7D;}.elementor-kit-426 a{color:#8A8C5E;}.elementor-kit-426 a:hover{color:#3B2F25;}.elementor-kit-426 h1{color:#3B2F25;font-family:"Cormorant Garamond", Sans-serif;font-size:54px;font-weight:600;line-height:1.1em;}.elementor-kit-426 h2{color:#3B2F25;font-family:"Cormorant Garamond", Sans-serif;font-size:42px;font-weight:600;line-height:1.15em;}.elementor-kit-426 h3{color:#3B2F25;font-family:"Cormorant Garamond", Sans-serif;font-size:28px;font-weight:600;line-height:1.25em;}.elementor-kit-426 h4{color:#3B2F25;font-family:"Inter", Sans-serif;font-size:20px;font-weight:600;line-height:1.4em;}.elementor-kit-426 h5{color:#3B2F25;font-family:"Inter", Sans-serif;font-size:17px;font-weight:600;line-height:1.5em;}.elementor-kit-426 h6{color:#8A8C5E;font-family:"Inter", Sans-serif;font-size:13px;font-weight:700;text-transform:uppercase;line-height:1.5em;letter-spacing:1.8px;}.elementor-kit-426 img{border-radius:8px 8px 8px 8px;}.elementor-kit-426 label{color:#3B2F25;}.elementor-kit-426 input:not([type="button"]):not([type="submit"]),.elementor-kit-426 textarea,.elementor-kit-426 .elementor-field-textual{font-family:"Inter", Sans-serif;font-size:15.5px;font-weight:400;line-height:1.5em;color:#3B2F25;background-color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-color:#E2D8C8;border-radius:10px 10px 10px 10px;padding:13px 16px 13px 16px;}.elementor-kit-426 input:focus:not([type="button"]):not([type="submit"]),.elementor-kit-426 textarea:focus,.elementor-kit-426 .elementor-field-textual:focus{color:#3B2F25;background-color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-color:#8A8C5E;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1320px;}.e-con{--container-max-width:1320px;}.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);}.elementor-lightbox{background-color:rgba(46,37,29,0.92);--lightbox-ui-color:#E7DCC8;}@media(max-width:1024px){.elementor-kit-426{--e-global-typography-primary-font-size:42px;--e-global-typography-secondary-font-size:29px;--e-global-typography-text-font-size:16.5px;--e-global-typography-accent-font-size:13px;--e-global-typography-nkbtn-font-size:15.5px;--e-global-typography-nknav-font-size:15px;--e-global-typography-nkprice-font-size:19px;--e-global-typography-nkquote-font-size:24px;--e-global-typography-nksmall-font-size:14px;font-size:16.5px;}.elementor-kit-426 h1{font-size:43px;}.elementor-kit-426 h2{font-size:34px;}.elementor-kit-426 h3{font-size:25px;}.elementor-kit-426 h4{font-size:19px;}.elementor-kit-426 h5{font-size:17px;}.elementor-kit-426 h6{font-size:13px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-426{--e-global-typography-primary-font-size:33px;--e-global-typography-secondary-font-size:25px;--e-global-typography-text-font-size:16px;--e-global-typography-accent-font-size:12.5px;--e-global-typography-nkbtn-font-size:15px;--e-global-typography-nknav-font-size:15px;--e-global-typography-nkprice-font-size:18px;--e-global-typography-nkquote-font-size:21px;--e-global-typography-nksmall-font-size:13.5px;font-size:16px;}.elementor-kit-426 h1{font-size:33px;}.elementor-kit-426 h2{font-size:28px;}.elementor-kit-426 h3{font-size:23px;}.elementor-kit-426 h4{font-size:18px;}.elementor-kit-426 h5{font-size:16.5px;}.elementor-kit-426 h6{font-size:12.5px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* =============================================================================
   Nuzzle & Kip - COMPLETE site custom CSS
   -----------------------------------------------------------------------------
   This is the WHOLE stylesheet, not a fragment. It already contains the
   product-card hover actions, so do NOT paste CARD-HOVER-ACTIONS.css as well.

   Elementor > Site Settings (hamburger) > Custom CSS:
     select everything in the box, delete it, paste this file, Update.
   ============================================================================= */


/* ===== LAYOUT HARDENING =====================================================
   These rules do not rely on Elementor container defaults, on the responsive
   hide classes, or on the breakpoint settings. The header is correct with or
   without Site Settings > Custom CSS.
   ========================================================================== */
.nk-site-css-holder{display:none!important;}

/* row helpers - applied automatically by the builder.
   nk-eq  : children carry no width, so share the row evenly
   nk-cols: children have widths that, plus the gap, would overflow and wrap */
.nk-eq > .e-con{flex:1 1 0!important;width:auto!important;min-width:0!important;}
@media (max-width:1024px){.nk-eq > .e-con{flex:1 1 44%!important;}}
@media (max-width:767px){.nk-eq > .e-con{flex:1 1 100%!important;}}
/* Elementor writes flex:0 0 auto on any child given a width, which stops it
   shrinking - so a nowrap row would overflow instead of fitting. */
.nk-cols > .e-con{min-width:0!important;flex-shrink:1!important;}
@media (min-width:1025px){.nk-cols{flex-wrap:nowrap!important;}}

.nk-header-desktop > .e-con-inner{max-width:1320px;margin-inline:auto;}
.nk-head-row{display:flex!important;flex-wrap:nowrap!important;
  align-items:center!important;gap:18px!important;width:100%!important;}
.nk-head-logo{flex:0 0 auto!important;width:190px!important;}
.nk-head-logo img{max-width:100%;height:auto;display:block;}
.nk-nav{flex:1 1 auto!important;display:flex!important;flex-wrap:nowrap!important;
  align-items:center!important;justify-content:center!important;
  gap:30px!important;width:auto!important;}
.nk-head-icons{flex:0 0 auto!important;display:flex!important;
  align-items:center!important;gap:14px!important;width:auto!important;
  margin-left:auto!important;}
.nk-head-icons > *{width:auto!important;flex:0 0 auto!important;}
.nk-nav-item{position:relative!important;width:auto!important;flex:0 0 auto!important;}
.nk-nav-link .elementor-heading-title{white-space:nowrap;}
@media (min-width:1025px) and (max-width:1200px){
  .nk-nav{gap:20px!important;}
  .nk-head-logo{width:150px!important;}
  .nk-nav-link .elementor-heading-title{font-size:14px!important;}
}

/* desktop / mobile bars - not dependent on elementor-hidden-* classes */
@media (max-width:1024px){.nk-header-desktop{display:none!important;}}
@media (min-width:1025px){.nk-header-mobile{display:none!important;}}
.nk-head-row-mobile{display:flex!important;flex-wrap:nowrap!important;
  align-items:center!important;justify-content:space-between!important;
  width:100%!important;gap:10px!important;}
.nk-head-row-mobile > *{width:auto!important;flex:0 0 auto!important;}
.nk-head-row-mobile .nk-m-logo{flex:1 1 auto!important;text-align:center;}
.nk-head-row-mobile .nk-m-logo img{max-width:150px;height:auto;
  margin-inline:auto;display:block;}

/* ---- mega panel -----------------------------------------------------------
   Closed state is display:none, not opacity/visibility, and the panel also
   carries Elementor's own hidden-desktop/tablet/mobile classes. So it stays
   collapsed even when this stylesheet never loads - the worst case is a menu
   that does not open, never a header blown open by two panels in flow.
   The reveal below is the only rule that puts it back on screen.          */
.nk-mega{display:none!important;position:absolute!important;
  top:100%!important;left:50%!important;transform:translate(-50%,0);
  width:640px!important;max-width:calc(100vw - 40px)!important;
  z-index:999!important;padding-top:16px!important;}
/* hover intent is on the whole item, not just the link, and the .elementor-kit-426 is a
   descendant one - a boxed nav item nests the panel inside .e-con-inner. */
@media (min-width:1025px){
  .nk-nav-item:hover .nk-mega,.nk-nav-item:focus-within .nk-mega{
    display:flex!important;animation:nk-mega-in .2s ease both;}
}
@keyframes nk-mega-in{
  from{opacity:0;transform:translate(-50%,8px);}
  to{opacity:1;transform:translate(-50%,0);}
}
@media (prefers-reduced-motion:reduce){
  .nk-nav-item:hover .nk-mega,.nk-nav-item:focus-within .nk-mega{animation:none;}
}
.nk-mega-inner{width:100%!important;}
/* share the row evenly *after* the gap - 50%+50%+gap would overflow and wrap */
.nk-mega-row{flex-wrap:nowrap!important;}
.nk-mega-col{flex:1 1 0!important;width:auto!important;min-width:0!important;}

/* ================= Nuzzle & Kip - global CSS ================= */
:root{
  --nk-espresso:#3B2F25; --nk-espresso-d:#2E251D; --nk-olive:#8A8C5E;
  --nk-olive-d:#6F7149;  --nk-taupe:#6B5F52;      --nk-tan:#C08552;
  --nk-cream:#FAF5ED;    --nk-cream-deep:#F2E9DA; --nk-sand:#E7DCC8;
  --nk-line:#E2D8C8;     --nk-muted:#8C8073;      --nk-white:#fff;
  --nk-radius:16px;
}
body{-webkit-font-smoothing:antialiased;}
a{transition:color .2s ease;}
img{max-width:100%;height:auto;}

/* ---------- announcement bar ---------- */
.nk-ann{display:flex;gap:26px;justify-content:center;align-items:center;
  font-size:13px;letter-spacing:.3px;color:#fff;line-height:1.4;text-align:center;}
.nk-ann span{white-space:nowrap;}
.nk-ann span+span::before{content:"\2022";margin-right:26px;opacity:.55;}
@media (max-width:880px){
  .nk-ann{display:block;position:relative;height:19px;overflow:hidden;}
  .nk-ann span{position:absolute;inset:0;display:block;opacity:0;
    animation:nk-ann-rotate 21s infinite both;white-space:normal;font-size:12.5px;}
  /* if animations are disabled, the first message stays visible */
  .nk-ann span:first-child{opacity:1;}
  @media (prefers-reduced-motion:reduce){
    .nk-ann span{animation:none;}
    .nk-ann span:not(:first-child){opacity:0;}
  }
  .nk-ann span:nth-child(2){animation-delay:7s;}
  .nk-ann span:nth-child(3){animation-delay:14s;}
  .nk-ann span+span::before{display:none;}
}
@keyframes nk-ann-rotate{
  0%,1%{opacity:0;transform:translateY(6px);}
  4%,30%{opacity:1;transform:translateY(0);}
  34%,100%{opacity:0;transform:translateY(-6px);}
}

/* ---------- header + mega menu (cosmetics; layout is in HEADER_CSS) ------- */
.nk-header{position:relative;z-index:100;}
.nk-nav-link .elementor-heading-title,.nk-nav-link a{
  color:var(--nk-espresso);font-family:Inter,sans-serif;font-size:15px;font-weight:600;
  letter-spacing:.2px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;}
.nk-nav-link:hover .elementor-heading-title{color:var(--nk-olive);}
.nk-has-mega>.e-con-inner>.nk-nav-link .elementor-heading-title::after,
.nk-has-mega .nk-nav-link .elementor-heading-title::after{
  content:"";width:6px;height:6px;border-right:1.6px solid currentColor;
  border-bottom:1.6px solid currentColor;transform:rotate(45deg) translateY(-2px);
  display:inline-block;margin-left:7px;transition:transform .2s ease;}
.nk-nav-item:hover .nk-nav-link .elementor-heading-title::after{transform:rotate(225deg) translateY(2px);}
.nk-mega-inner{background:#fff;border:1px solid var(--nk-line);border-radius:14px;
  box-shadow:0 24px 60px rgba(59,47,37,.13);padding:30px 34px!important;}
.nk-mega-col .elementor-heading-title{font-family:Inter,sans-serif!important;
  font-size:11.5px!important;font-weight:700!important;letter-spacing:1.8px!important;
  text-transform:uppercase;color:var(--nk-olive)!important;}
.nk-mega-links .elementor-icon-list-item a{font-size:15px;color:var(--nk-espresso);}
.nk-mega-links .elementor-icon-list-item a:hover{color:var(--nk-olive);}
.nk-mega-foot{border-top:1px solid var(--nk-line);margin-top:6px;padding-top:14px;
  font-size:14px;}
.nk-mega-foot a{color:var(--nk-olive);font-weight:600;text-decoration:none;}
.nk-mega-foot a:hover{text-decoration:underline;}
@media (max-width:1024px){.nk-mega{display:none!important;}}
.nk-head-icons a{color:var(--nk-espresso);}
.nk-head-icons a:hover{color:var(--nk-olive);}

/* ---------- buttons / links ---------- */
.nk-arrow{font-family:Inter,sans-serif;font-size:14px;font-weight:600;
  color:var(--nk-olive);letter-spacing:.2px;}
.nk-card:hover .nk-arrow{text-decoration:underline;}
.nk-textlink a{color:var(--nk-olive);font-weight:600;text-decoration:underline;
  text-underline-offset:3px;}

/* ---------- cards ---------- */
.nk-card{overflow:hidden;transition:transform .25s ease,box-shadow .25s ease;}
.nk-card:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(59,47,37,.12);}
.nk-card-img img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;}
.nk-tag{position:absolute;top:14px;left:14px;z-index:2;background:var(--nk-tan);
  color:#fff;font-family:Inter,sans-serif;font-size:11px;font-weight:700;
  letter-spacing:1.2px;text-transform:uppercase;padding:6px 12px;border-radius:100px;}
.nk-card{position:relative;}
.nk-need{transition:border-color .2s ease,transform .2s ease;}
.nk-need:hover{border-color:var(--nk-olive);transform:translateY(-3px);}
.nk-need-ico{display:inline-flex;align-items:center;justify-content:center;
  width:44px;height:44px;border-radius:50%;background:var(--nk-cream-deep);
  color:var(--nk-olive);font-size:18px;}
.nk-split-card{overflow:hidden;position:relative;}
.nk-split-card img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block;}

/* ---------- section heads ---------- */
.nk-sec-head{max-width:760px;margin-inline:auto;}

/* ---------- FAQ (native details, no JS) ---------- */
.nk-faq{width:100%;}
.nk-faq-item{border:1px solid var(--nk-line);border-radius:12px;background:#fff;
  margin-bottom:12px;overflow:hidden;}
.nk-faq-item summary{cursor:pointer;list-style:none;padding:19px 56px 19px 22px;
  font-family:Inter,sans-serif;font-size:16.5px;font-weight:600;
  color:var(--nk-espresso);position:relative;}
.nk-faq-item summary::-webkit-details-marker{display:none;}
.nk-faq-item summary::after{content:"";position:absolute;right:22px;top:50%;
  width:9px;height:9px;border-right:2px solid var(--nk-olive);
  border-bottom:2px solid var(--nk-olive);transform:translateY(-70%) rotate(45deg);
  transition:transform .2s ease;}
.nk-faq-item[open] summary::after{transform:translateY(-30%) rotate(225deg);}
.nk-faq-item[open] summary{background:var(--nk-cream);}
.nk-faq-a{padding:2px 22px 20px;font-size:16px;line-height:1.75;color:var(--nk-taupe);}
.nk-faq-a p{margin:0 0 10px;}
.nk-faq-a ul{margin:0 0 10px 18px;}

/* ---------- reviews ---------- */
.nk-stars{color:#D8A23A;letter-spacing:3px;font-size:15px;}
.nk-rev-by{display:flex;flex-direction:column;gap:2px;font-family:Inter,sans-serif;
  font-size:14px;color:var(--nk-muted);}
.nk-rev-by strong{color:var(--nk-espresso);font-weight:600;}
.nk-rev-by em{font-style:normal;font-size:13px;}
.nk-rating-inline{display:inline-flex;align-items:center;gap:10px;
  font-family:Inter,sans-serif;font-size:14.5px;color:var(--nk-taupe);}
.nk-rating-inline b{color:var(--nk-espresso);}

/* ---------- tables (size guide, delivery) ---------- */
.nk-table{width:100%;border-collapse:collapse;font-family:Inter,sans-serif;
  font-size:15.5px;color:var(--nk-taupe);background:#fff;border-radius:12px;
  overflow:hidden;border:1px solid var(--nk-line);}
.nk-table th{background:var(--nk-cream-deep);color:var(--nk-espresso);
  font-weight:600;text-align:left;padding:14px 16px;font-size:14px;
  letter-spacing:.4px;text-transform:uppercase;}
.nk-table td{padding:14px 16px;border-top:1px solid var(--nk-line);}
.nk-table tr:nth-child(even) td{background:#FCFAF6;}
.nk-table-wrap{width:100%;overflow-x:auto;}

/* ---------- steps ---------- */
.nk-step-no{display:inline-flex;align-items:center;justify-content:center;
  width:38px;height:38px;border-radius:50%;background:var(--nk-espresso);color:#fff;
  font-family:Inter,sans-serif;font-weight:600;font-size:15px;}

/* ---------- breadcrumbs ---------- */
.nk-crumbs{font-family:Inter,sans-serif;font-size:13.5px;color:var(--nk-muted);
  text-align:center;}
.nk-crumbs a{color:var(--nk-muted);text-decoration:none;}
.nk-crumbs a:hover{color:var(--nk-olive);}

/* ---------- footer ---------- */
.nk-footer{color:#D9CFC1;}
.nk-footer .elementor-heading-title{color:#fff;}
.nk-footer a{color:#D9CFC1;text-decoration:none;}
.nk-footer a:hover{color:#fff;}
.nk-footer .elementor-icon-list-item a{font-size:15px;}
.nk-foot-head .elementor-heading-title{font-family:Inter,sans-serif!important;
  font-size:12px!important;font-weight:700!important;letter-spacing:1.8px!important;
  text-transform:uppercase;color:#B9AE9C!important;}
.nk-pay{display:flex;flex-wrap:wrap;gap:10px;align-items:center;}
.nk-pay > i{font-size:24px;color:#C9BFB0;}
.nk-chip i{font-size:16px;color:#C9BFB0;}
.nk-chip{display:inline-flex;align-items:center;gap:7px;border:1px solid #4A3F34;
  border-radius:7px;padding:6px 11px;font-family:Inter,sans-serif;font-size:12.5px;
  font-weight:600;color:#D9CFC1;background:#382E25;letter-spacing:.3px;}
.nk-bnpl{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:4px;}
.nk-bnpl .nk-logo-klarna{background:#FFB3C7;color:#0B051D;font-weight:800;
  font-family:Inter,sans-serif;font-size:13px;padding:5px 12px;border-radius:6px;
  letter-spacing:.2px;}
.nk-bnpl .nk-logo-clearpay{background:#B2FCE4;color:#0B051D;font-weight:800;
  font-family:Inter,sans-serif;font-size:13px;padding:5px 12px;border-radius:6px;
  letter-spacing:.2px;}
.nk-bnpl-note{font-size:13.5px;line-height:1.65;color:#B9AE9C;}
.nk-fineprint{color:var(--nk-muted);}
.nk-legal{font-size:13.5px;color:#A2978A;}
.nk-legal a{text-decoration:underline;text-underline-offset:3px;}

/* ---------- WooCommerce polish ---------- */
.woocommerce ul.products li.product{text-align:left;}
.woocommerce ul.products li.product a img{border-radius:14px;
  aspect-ratio:4/3;object-fit:cover;margin-bottom:14px;}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family:Inter,sans-serif!important;font-size:16px!important;font-weight:600!important;
  color:var(--nk-espresso);padding:0!important;line-height:1.45;}
.woocommerce ul.products li.product .price{font-family:Inter,sans-serif;
  font-size:16px;font-weight:600;color:var(--nk-espresso);}
.woocommerce ul.products li.product .price del{color:var(--nk-muted);font-weight:400;}
.woocommerce ul.products li.product .price ins{text-decoration:none;color:var(--nk-tan);}
.woocommerce ul.products li.product .star-rating{font-size:.8em;color:#D8A23A;}
.woocommerce ul.products li.product .button,
.woocommerce a.button,.woocommerce button.button,
.woocommerce .woocommerce-message a.button,
.woocommerce input.button,.woocommerce #respond input#submit{
  background:var(--nk-olive)!important;color:#fff!important;border-radius:100px!important;
  font-family:Inter,sans-serif!important;font-weight:600!important;font-size:14.5px!important;
  padding:13px 26px!important;letter-spacing:.2px;transition:background .2s ease;}
.woocommerce ul.products li.product .button:hover,
.woocommerce a.button:hover,.woocommerce button.button:hover,
.woocommerce input.button:hover,.woocommerce #respond input#submit:hover{
  background:var(--nk-olive-d)!important;}
.woocommerce a.button.alt,.woocommerce button.button.alt{
  background:var(--nk-espresso)!important;}
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{
  background:var(--nk-olive)!important;}
.woocommerce span.onsale{background:var(--nk-tan)!important;color:#fff;
  border-radius:100px;font-family:Inter,sans-serif;font-weight:600;font-size:12px;
  min-height:auto;line-height:1;padding:8px 13px;}
.woocommerce .woocommerce-message,.woocommerce .woocommerce-info{
  border-top-color:var(--nk-olive);background:#fff;}
.woocommerce .woocommerce-message::before,.woocommerce .woocommerce-info::before{
  color:var(--nk-olive);}
.woocommerce-error{border-top-color:var(--nk-tan);}
.woocommerce table.shop_table{border-radius:12px;border-color:var(--nk-line);}
.woocommerce-cart table.cart img{width:76px;border-radius:8px;}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,.woocommerce form .form-row select,
.select2-container .select2-selection--single{
  border:1px solid var(--nk-line);border-radius:10px;padding:12px 14px;
  font-family:Inter,sans-serif;font-size:15px;background:#fff;min-height:48px;}
.woocommerce-checkout #payment{background:var(--nk-cream-deep);border-radius:14px;}
.woocommerce div.product .product_title{font-family:"Cormorant Garamond",serif;}
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;}
.woocommerce-MyAccount-navigation li{border-bottom:1px solid var(--nk-line);}
.woocommerce-MyAccount-navigation li a{display:block;padding:13px 4px;
  font-family:Inter,sans-serif;font-size:15.5px;color:var(--nk-espresso);
  text-decoration:none;}
.woocommerce-MyAccount-navigation li.is-active a{color:var(--nk-olive);font-weight:600;}
.nk-woo-plain .woocommerce{max-width:none;}

/* ---------- wishlist / compare / quick view / swatches ---------- */
.nk-pdp-actions{align-items:center;}
.nk-pdp-actions .tinvwl-button,.nk-pdp-actions .compare,
.tinv-wishlist .tinvwl_add_to_wishlist_button,
.woocommerce a.compare.button{
  background:transparent!important;border:1px solid var(--nk-line)!important;
  color:var(--nk-espresso)!important;border-radius:100px!important;
  font-family:Inter,sans-serif!important;font-size:14px!important;
  font-weight:600!important;padding:11px 20px!important;
  display:inline-flex!important;align-items:center;gap:8px;
  text-decoration:none;transition:border-color .2s ease,color .2s ease;}
.nk-pdp-actions .tinvwl-button:hover,.woocommerce a.compare.button:hover{
  border-color:var(--nk-olive)!important;color:var(--nk-olive)!important;
  background:transparent!important;}
.tinv-wishlist .tinvwl-icon-heart,.tinvwl-icon-heart-plus{color:var(--nk-olive);}
/* ---- card actions over the thumbnail --------------------------------------
   Quick view, wishlist and compare are lifted out of the flow and stacked down
   the right-hand edge of the image, revealed on hover. The loop item is the
   positioning context; the thumbnail is 4/3 so the stack always has room.
   Only "Add to cart" is left under the price, and it fills the card.

   Note on the .elementor-kit-426s: both YITH and TI Wishlist style these buttons with
   !important of their own, so every rule here repeats classes the elements
   already carry (.products.products, .product.product) to outrank them - an
   equal-specificity !important would otherwise win on source order. No extra
   ancestor is used, because Woo puts the `woocommerce` class on <body> itself
   on archive pages and nothing can be its own descendant. TI Wishlist's loop wrapper is `.tinv-wraper`, one p: that is the
   plugin's own long-standing typo, so both spellings are targeted. */
.woocommerce ul.products.products li.product.product{position:relative;}
/* the sale flash moves left so it never sits under the stack */
.woocommerce ul.products.products li.product.product span.onsale{
  left:12px!important;right:auto!important;top:12px!important;margin:0!important;}
.woocommerce ul.products.products li.product.product a.yith-wcqv-button.yith-wcqv-button,
.woocommerce ul.products.products li.product.product .tinv-wraper,
.woocommerce ul.products.products li.product.product .tinv-wrapper,
.woocommerce ul.products.products li.product.product a.compare.compare.button{
  position:absolute!important;right:12px!important;z-index:3;
  width:40px!important;margin:0!important;float:none!important;
  transition:opacity .22s ease,transform .22s ease;}
.woocommerce ul.products.products li.product.product a.yith-wcqv-button.yith-wcqv-button{top:12px!important;}
.woocommerce ul.products.products li.product.product .tinv-wraper,
.woocommerce ul.products.products li.product.product .tinv-wrapper{top:60px!important;}
.woocommerce ul.products.products li.product.product a.compare.compare.button{top:108px!important;}
/* the round button skin, shared by all three */
.woocommerce ul.products.products li.product.product a.yith-wcqv-button.yith-wcqv-button,
.woocommerce ul.products.products li.product.product .tinvwl_add_to_wishlist_button.tinvwl_add_to_wishlist_button,
.woocommerce ul.products.products li.product.product a.compare.compare.button{
  display:flex!important;align-items:center!important;justify-content:center!important;
  width:40px!important;height:40px!important;min-width:0!important;
  padding:0!important;border:0!important;border-radius:50%!important;
  background:rgba(255,255,255,.95)!important;color:var(--nk-espresso)!important;
  box-shadow:0 2px 10px rgba(43,34,26,.18);
  font-size:0!important;line-height:1!important;text-indent:0!important;
  text-decoration:none!important;white-space:nowrap!important;overflow:hidden!important;
  transition:background .18s ease,color .18s ease;}
.woocommerce ul.products.products li.product.product a.yith-wcqv-button.yith-wcqv-button:hover,
.woocommerce ul.products.products li.product.product .tinvwl_add_to_wishlist_button.tinvwl_add_to_wishlist_button:hover,
.woocommerce ul.products.products li.product.product a.compare.compare.button:hover{
  background:var(--nk-olive)!important;color:#fff!important;}
/* icons - the labels stay in the markup for screen readers.
   Quick view and compare carry no icon of their own, so they get an SVG mask:
   it needs no icon font enqueued on the archive and it follows the text colour
   on hover. The wishlist button keeps the plugin's own glyph, which is the only
   thing that shows whether the product is already saved. */
.woocommerce ul.products.products li.product.product a.yith-wcqv-button.yith-wcqv-button::before,
.woocommerce ul.products.products li.product.product a.compare.compare.button::before{
  content:""!important;display:block!important;width:17px;height:17px;
  background-color:currentColor;
  -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
  -webkit-mask-position:center;mask-position:center;
  -webkit-mask-size:17px 17px;mask-size:17px 17px;}
.woocommerce ul.products.products li.product.product a.yith-wcqv-button.yith-wcqv-button::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23000'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M1.8%2012S5.4%205.2%2012%205.2%2022.2%2012%2022.2%2012%2018.6%2018.8%2012%2018.8%201.8%2012%201.8%2012Z'/%3E%3Ccircle%20cx='12'%20cy='12'%20r='3.1'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23000'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M1.8%2012S5.4%205.2%2012%205.2%2022.2%2012%2022.2%2012%2018.6%2018.8%2012%2018.8%201.8%2012%201.8%2012Z'/%3E%3Ccircle%20cx='12'%20cy='12'%20r='3.1'/%3E%3C/svg%3E");}
.woocommerce ul.products.products li.product.product a.compare.compare.button::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23000'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M4%208h15m-4-4%204%204-4%204M20%2016H5m4-4-4%204%204%204'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23000'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M4%208h15m-4-4%204%204-4%204M20%2016H5m4-4-4%204%204%204'/%3E%3C/svg%3E");}
/* the wishlist glyph comes from the plugin's own icon font - only resize it */
.woocommerce ul.products.products li.product.product .tinvwl_add_to_wishlist_button.tinvwl_add_to_wishlist_button::before{
  font-size:16px!important;line-height:1!important;margin:0!important;
  color:inherit!important;}
.woocommerce ul.products.products li.product.product .tinvwl_add_to_wishlist_button.tinvwl_add_to_wishlist_button .tinvwl-icon,
.woocommerce ul.products.products li.product.product .tinvwl_add_to_wishlist_button.tinvwl_add_to_wishlist_button i{
  font-size:16px!important;line-height:1!important;margin:0!important;
  color:inherit!important;}
.woocommerce ul.products.products li.product.product .tinvwl_add_to_wishlist_button.tinvwl_add_to_wishlist_button .tinvwl_add_to_wishlist-text,
.woocommerce ul.products.products li.product.product .tinvwl_add_to_wishlist-text,
.woocommerce ul.products.products li.product.product .tinvwl_add_to_wishlist_button.tinvwl_add_to_wishlist_button .tinvwl-tooltip{
  position:absolute!important;width:1px!important;height:1px!important;
  overflow:hidden!important;clip:rect(0 0 0 0);clip-path:inset(50%);
  white-space:nowrap!important;}
/* nothing sits beside Add to cart now, so let it fill the card */
.woocommerce ul.products.products li.product.product > a.button:not(.yith-wcqv-button):not(.compare),
.woocommerce ul.products.products li.product.product > .button.add_to_cart_button,
.woocommerce ul.products.products li.product.product > a.added_to_cart{
  display:block!important;width:100%!important;text-align:center!important;
  box-sizing:border-box!important;margin-top:12px!important;}
.woocommerce ul.products.products li.product.product > a.added_to_cart{
  background:transparent!important;color:var(--nk-olive)!important;
  padding:6px 0!important;font-size:14px!important;text-decoration:underline;
  box-shadow:none!important;}
/* hidden until the card is hovered - pointers only; a touch screen keeps them on.
   The reveal carries :hover/:focus-within on top of the same .elementor-kit-426s, so it
   always outranks the hidden state above. */
@media (hover:hover){
  .woocommerce ul.products.products li.product.product a.yith-wcqv-button.yith-wcqv-button,
  .woocommerce ul.products.products li.product.product .tinv-wraper,
  .woocommerce ul.products.products li.product.product .tinv-wrapper,
  .woocommerce ul.products.products li.product.product a.compare.compare.button{
    opacity:0;transform:translateX(10px);pointer-events:none;}
  .woocommerce ul.products.products li.product.product .tinv-wraper,
  .woocommerce ul.products.products li.product.product .tinv-wrapper{transition-delay:.04s;}
  .woocommerce ul.products.products li.product.product a.compare.compare.button{transition-delay:.08s;}
  .woocommerce ul.products.products li.product.product:hover a.yith-wcqv-button.yith-wcqv-button,
  .woocommerce ul.products.products li.product.product:hover .tinv-wraper,
  .woocommerce ul.products.products li.product.product:hover .tinv-wrapper,
  .woocommerce ul.products.products li.product.product:hover a.compare.compare.button,
  .woocommerce ul.products.products li.product.product:focus-within a.yith-wcqv-button.yith-wcqv-button,
  .woocommerce ul.products.products li.product.product:focus-within .tinv-wraper,
  .woocommerce ul.products.products li.product.product:focus-within .tinv-wrapper,
  .woocommerce ul.products.products li.product.product:focus-within a.compare.compare.button{
    opacity:1!important;transform:none!important;pointer-events:auto!important;}
}
/* YITH quick view */
#yith-quick-view-modal .yith-wcqv-main{border-radius:16px;overflow:hidden;}
#yith-quick-view-content div.product .price{font-family:Inter,sans-serif;
  color:var(--nk-espresso);font-weight:600;}
/* variation swatches */
.woo-variation-swatches .variable-items-wrapper .variable-item{
  border-radius:8px!important;box-shadow:0 0 0 1px var(--nk-line)!important;}
.woo-variation-swatches .variable-items-wrapper .variable-item.selected,
.woo-variation-swatches .variable-items-wrapper .variable-item:hover{
  box-shadow:0 0 0 2px var(--nk-olive)!important;}
.woo-variation-swatches .variable-items-wrapper .button-variable-item{
  min-width:auto!important;}
.woo-variation-swatches .variable-items-wrapper .button-variable-item span{
  font-family:Inter,sans-serif;font-size:14px;padding:0 6px;}

/* ---------- single product ---------- */
.nk-usp-list .elementor-icon-list-item{font-size:15.5px;}
.nk-sticky-buy{position:sticky;top:110px;}
@media (max-width:1024px){.nk-sticky-buy{position:static;}}

/* ---------- responsive ---------- */
@media (max-width:1024px){
  .nk-sec-head{max-width:100%;}
  .nk-hero-media img{aspect-ratio:16/10;}
  .nk-mega{display:none!important;}
  .nk-table th,.nk-table td{padding:12px 13px;font-size:14.5px;}
  .nk-big-num{font-size:38px;}
  .nk-quote{font-size:23px;}
}
@media (max-width:767px){
  .nk-badge-row{flex-direction:column;gap:9px;}
  .nk-faq-item summary{font-size:15.5px;padding:16px 46px 16px 17px;}
  .nk-faq-item summary::after{right:17px;}
  .nk-faq-a{padding:2px 17px 17px;font-size:15.5px;}
  .nk-card-img img,.nk-split-card img{aspect-ratio:16/10;}
  .nk-step-no{width:34px;height:34px;font-size:14px;}
  .nk-table{font-size:14px;}
  .nk-table th{font-size:12.5px;letter-spacing:.2px;}
  .nk-table th,.nk-table td{padding:10px 11px;white-space:nowrap;}
  .nk-pay{gap:8px;}
  .nk-chip{font-size:11.5px;padding:5px 9px;}
  .woocommerce ul.products[class*=columns-]{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
  .woocommerce ul.products[class*=columns-] li.product{width:100%!important;margin:0!important;float:none!important;}
  /* the stack shrinks with the card so it stays inside the 4/3 photo */
  .woocommerce ul.products.products li.product.product a.yith-wcqv-button.yith-wcqv-button,
  .woocommerce ul.products.products li.product.product .tinv-wraper,
  .woocommerce ul.products.products li.product.product .tinv-wrapper,
  .woocommerce ul.products.products li.product.product a.compare.compare.button{width:32px!important;right:8px!important;}
  .woocommerce ul.products.products li.product.product a.yith-wcqv-button.yith-wcqv-button,
  .woocommerce ul.products.products li.product.product .tinvwl_add_to_wishlist_button.tinvwl_add_to_wishlist_button,
  .woocommerce ul.products.products li.product.product a.compare.compare.button{width:32px!important;height:32px!important;}
  .woocommerce ul.products.products li.product.product a.yith-wcqv-button.yith-wcqv-button{top:8px!important;}
  .woocommerce ul.products.products li.product.product .tinv-wraper,
  .woocommerce ul.products.products li.product.product .tinv-wrapper{top:44px!important;}
  .woocommerce ul.products.products li.product.product a.compare.compare.button{top:80px!important;}
  .nk-legal{font-size:12.5px;line-height:1.9;}
}
@media (max-width:480px){
  .woocommerce ul.products[class*=columns-]{grid-template-columns:1fr;}
}

/* ---------- misc ---------- */
.nk-quote{font-family:"Cormorant Garamond",serif;font-size:27px;line-height:1.45;
  color:var(--nk-espresso);font-style:italic;}
.nk-kicker{font-family:Inter,sans-serif;font-size:13px;font-weight:600;
  letter-spacing:2.2px;text-transform:uppercase;color:var(--nk-olive);}
.nk-big-num{font-family:"Cormorant Garamond",serif;font-size:46px;line-height:1;
  color:var(--nk-espresso);}
.nk-hero-media img{border-radius:20px;width:100%;aspect-ratio:5/4;object-fit:cover;}
.nk-badge-row{display:flex;gap:18px;flex-wrap:wrap;font-family:Inter,sans-serif;
  font-size:14px;color:var(--nk-taupe);}
.nk-badge-row span{display:inline-flex;align-items:center;gap:8px;}
.nk-badge-row i{color:var(--nk-olive);}/* End custom CSS */