/*
Theme Name: CraftKam Premium Handmade Clean Footer V19
Theme URI: https://craftkam.com/
Author: CraftKam
Description: Premium CraftKam handmade WooCommerce storefront based on the supplied Hanuvish structure, with editable hero slider, round categories, handmade side poster, product/category pages, cart, checkout editor, reviews, policies and backend controls.
Version: 19.0.0
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: hanuvish-premium-stable
*/

/* =========================================================
   V11.7 — Editable menus/pages compatibility
   ========================================================= */
.hps-v117-primary-menu{display:flex;align-items:center;gap:0;list-style:none;margin:0;padding:0}
.hps-v117-primary-menu>li{position:relative;margin:0;padding:0}
.hps-v117-primary-menu>li>a{display:flex;align-items:center;min-height:62px;padding:0 22px;color:inherit;text-decoration:none;font-weight:700}
.hps-v117-primary-menu .sub-menu{display:none;position:absolute;left:0;top:100%;min-width:210px;margin:0;padding:8px;background:#fff;border:1px solid #ececec;border-radius:10px;box-shadow:0 14px 36px rgba(0,0,0,.12);list-style:none;z-index:9999}
.hps-v117-primary-menu li:hover>.sub-menu{display:block}
.hps-v117-primary-menu .sub-menu a{display:block;padding:10px 12px;color:#111827;text-decoration:none;border-radius:7px}
.hps-v117-primary-menu .sub-menu a:hover{background:#fff4ed;color:var(--hps-primary,#ff5a00)}
.hps-v117-footer-menu{list-style:none;margin:0;padding:0}
.hps-v117-footer-menu li{margin:0;padding:0}
.hps-v117-footer-menu a{display:block}
.hps-v117-page-card{min-height:240px}
.hps-v117-page-content>*:first-child{margin-top:0}
.hps-v117-page-content img{max-width:100%;height:auto}
.hps-v117-shortcode-contact{max-width:100%;margin:20px 0}
.hps-v117-business-details{padding:20px;border:1px solid #e5e7eb;border-radius:14px;background:#fff}
@media(max-width:900px){.hps-v117-primary-menu{display:block}.hps-v117-primary-menu>li>a{min-height:auto;padding:12px 16px}.hps-v117-primary-menu .sub-menu{position:static;display:block;box-shadow:none;border:0;padding:0 0 0 14px}}

/* =========================================================
   V11.8 — Per-page no-code design variables
   ========================================================= */
.hps-v118-designed-page{padding-top:var(--hps-page-top,32px);padding-bottom:var(--hps-page-bottom,48px)}
.hps-v118-designed-page .hps-v118-page-shell-inner{max-width:var(--hps-page-width,1180px);width:calc(100% - 32px);margin-left:auto;margin-right:auto}
.hps-v118-designed-page .hps-v118-page-title{font-size:var(--hps-page-title-size,42px);line-height:1.15;text-align:var(--hps-page-title-align,left)}
.hps-v118-designed-page .hps-v118-page-content{font-size:var(--hps-page-content-size,16px);text-align:var(--hps-page-content-align,left)}
.hps-v118-designed-page .hps-v118-page-content p,.hps-v118-designed-page .hps-v118-page-content li{font-size:inherit}
@media(max-width:700px){
  .hps-v118-designed-page .hps-v118-page-title{font-size:var(--hps-page-title-mobile,30px)}
  .hps-v118-designed-page .hps-v118-page-shell-inner{width:calc(100% - 20px)}
}

/* =========================================================
   V12.0 — checkout editor extra lines
   ========================================================= */
.hps120-checkout-extra{margin:12px 0 6px;display:grid;gap:8px}
.hps120-checkout-extra p{margin:0;padding:10px 12px;border:1px solid #fed7aa;background:#fff7ed;color:#7c2d12;border-radius:10px;font-size:13px;font-weight:700}


/* =========================================================
   V15.0 — Full responsive polish (desktop + tablet + mobile)
   ========================================================= */
:root{--ck-brown:#8b4527;--ck-brown-dark:#4d2b1f;--ck-cream:#fffaf5;--ck-line:#ecd9ca;--ck-soft:#f8eee5}
*{box-sizing:border-box}
html,body{max-width:100%;overflow-x:hidden}
img{max-width:100%;height:auto}
.hps-shell{width:min(1480px,calc(100% - 32px))!important;margin-inline:auto!important}

/* Header scales without becoming oversized */
.hps-main-header-inner{min-height:82px!important;gap:20px!important}
.hps-logo-image{width:auto!important;max-width:132px!important;max-height:76px!important;object-fit:contain!important}
.hps-search-wrap{min-width:0!important;flex:1 1 auto!important}
.hps-primary-nav{overflow:visible!important}

/* Side poster: exact 2:5 desktop slot for 600×1500 uploads */
.ck-showcase-grid{grid-template-columns:minmax(210px,260px) minmax(0,1fr)!important;gap:20px!important;align-items:start!important}
.ck-side-banner{display:block!important;width:100%!important;aspect-ratio:2/5!important;min-height:0!important;border-radius:18px!important;overflow:hidden!important;background:var(--ck-soft)!important;box-shadow:0 8px 26px rgba(77,43,31,.10)!important;position:sticky;top:18px}
.ck-side-banner picture{display:block;width:100%;height:100%}
.ck-side-banner img{width:100%!important;height:100%!important;min-height:0!important;object-fit:cover!important;object-position:center!important;display:block!important}
.ck-product-grid-with-banner{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;min-width:0!important}
.hps-product-card{min-width:0!important;overflow:hidden}
.hps-product-image img{width:100%!important;aspect-ratio:1/1!important;object-fit:contain!important}

/* Product / cart / checkout / content pages */
.woocommerce div.product{max-width:100%!important}
.woocommerce div.product .summary,.woocommerce div.product div.images{min-width:0!important}
.woocommerce-cart-form,.cart_totals,.woocommerce-checkout,.woocommerce-account .woocommerce{max-width:100%!important}
.hps-v118-designed-page .hps-v118-page-content,.hps-v117-page-content{overflow-wrap:anywhere}

/* Footer */
.hps-footer-grid{grid-template-columns:minmax(220px,1.2fr) repeat(3,minmax(150px,1fr))!important;gap:28px!important}

@media(max-width:1180px){
  .ck-product-grid-with-banner{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .hps-shell{width:min(100% - 24px,1180px)!important}
  .hps-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

@media(max-width:900px){
  .hps-main-header-inner{min-height:72px!important;gap:12px!important;padding-block:8px!important}
  .hps-logo-image{max-width:112px!important;max-height:64px!important}
  .ck-showcase-grid{grid-template-columns:minmax(180px,220px) minmax(0,1fr)!important;gap:14px!important}
  .ck-product-grid-with-banner{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .hps-v117-primary-menu{display:flex!important;overflow-x:auto!important;white-space:nowrap!important;-webkit-overflow-scrolling:touch}
  .hps-v117-primary-menu>li>a{padding:10px 13px!important;min-height:44px!important}
}

@media(max-width:760px){
  body{font-size:15px}
  .hps-shell{width:calc(100% - 20px)!important}
  .hps-topbar-inner{font-size:11px!important;gap:8px!important;justify-content:center!important;flex-wrap:wrap!important}
  .hps-main-header-inner{display:grid!important;grid-template-columns:92px 1fr auto!important;align-items:center!important;min-height:auto!important;padding:8px 10px!important}
  .hps-logo-image{max-width:88px!important;max-height:58px!important}
  .hps-search-wrap{grid-column:1/-1!important;grid-row:2!important;width:100%!important;margin-top:8px!important}
  .hps-search-wrap form,.hps-search-form{width:100%!important}
  .hps-account-area{font-size:12px!important;white-space:nowrap!important}
  .hps-primary-nav{overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}
  .hps-primary-nav::-webkit-scrollbar{display:none}
  .hps-v117-primary-menu{display:flex!important;min-width:max-content!important;padding:0 6px!important}
  .hps-v117-primary-menu .sub-menu{display:none!important}
  .hps-v117-primary-menu>li>a{font-size:12px!important;padding:9px 11px!important}

  /* Hero 1600×400 preserves useful mobile crop */
  .hps-hero,.hps-hero picture{min-height:0!important;aspect-ratio:4/1!important;border-radius:12px!important;overflow:hidden!important}
  .hps-hero img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;min-height:0!important}

  /* Categories: touch-friendly round cards */
  .hps-category-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}
  .hps-category-card{min-width:0!important;padding:8px 4px!important;text-align:center!important}
  .hps-category-visual{width:76px!important;height:76px!important;max-width:22vw!important;max-height:22vw!important;margin-inline:auto!important;border-radius:50%!important}
  .hps-category-card>strong{font-size:11px!important;line-height:1.2!important;display:block!important}

  /* Mobile showcase: optional 1200×450 horizontal banner; desktop poster adapts if no mobile image */
  .ck-showcase-grid{grid-template-columns:1fr!important;gap:14px!important}
  .ck-side-banner{display:block!important;position:relative!important;top:auto!important;aspect-ratio:8/3!important;max-height:none!important;width:100%!important;border-radius:15px!important}
  .ck-side-banner img{object-fit:cover!important;object-position:center!important}
  .ck-product-grid-with-banner{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .hps-product-card{border-radius:13px!important}
  .hps-product-title{font-size:12px!important;line-height:1.25!important}
  .hps-product-price{font-size:13px!important}

  /* Product page stacks cleanly */
  .woocommerce div.product{display:block!important}
  .woocommerce div.product div.images,.woocommerce div.product .summary{width:100%!important;float:none!important;margin-left:0!important;margin-right:0!important}
  .single-product .product_title{font-size:28px!important;line-height:1.12!important}
  .woocommerce div.product form.cart{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
  .woocommerce div.product form.cart .button{min-height:46px!important;flex:1 1 145px!important}

  /* Cart/checkout stay within viewport */
  .woocommerce table.shop_table{display:block!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch}
  .woocommerce .cart-collaterals .cart_totals,.woocommerce-page .cart-collaterals .cart_totals{width:100%!important;float:none!important}
  .woocommerce-checkout .col2-set,.woocommerce-checkout-review-order{width:100%!important;float:none!important}
  .woocommerce form .form-row-first,.woocommerce form .form-row-last{width:100%!important;float:none!important}

  /* Designed pages */
  .hps-v118-designed-page{padding-top:18px!important;padding-bottom:28px!important}
  .hps-v118-designed-page .hps-v118-page-title{font-size:29px!important}
  .hps-v117-business-details{padding:15px!important}

  /* Footer becomes one clean column */
  .hps-footer-grid{grid-template-columns:1fr!important;gap:20px!important}
  .hps-footer{padding-left:0!important;padding-right:0!important}
}

@media(max-width:420px){
  .hps-main-header-inner{grid-template-columns:80px 1fr auto!important}
  .hps-logo-image{max-width:76px!important;max-height:52px!important}
  .hps-category-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .hps-category-visual{width:68px!important;height:68px!important}
  .ck-product-grid-with-banner{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .hps-section-head h2{font-size:22px!important}
}

/* =========================================================
   V16.0 — Dedicated FAQ Center (separate from Information)
   ========================================================= */
.ck-v16-footer-faq{border-top:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.035);padding:30px 0 32px}
.ck-v16-footer-faq-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:18px}
.ck-v16-footer-faq-head span{display:block;color:#d5a078;font-size:11px;font-weight:800;letter-spacing:.18em;margin-bottom:6px}
.ck-v16-footer-faq-head h3{margin:0;color:#fff;font-size:25px;line-height:1.15;font-family:Georgia,serif}
.ck-v16-footer-faq-head p{margin:6px 0 0;color:#d9c6bb;font-size:13px}
.ck-v16-faq-all{display:inline-flex;align-items:center;justify-content:center;color:#fff!important;text-decoration:none!important;border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:9px 14px;font-size:12px;font-weight:700;white-space:nowrap}
.ck-v16-faq-all:hover{background:#fff;color:#4d2b1f!important}
.ck-v16-footer-faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}
.ck-v16-footer-faq-grid details{border:1px solid rgba(255,255,255,.14);border-radius:12px;background:rgba(255,255,255,.045);overflow:hidden}
.ck-v16-footer-faq-grid summary{cursor:pointer;list-style:none;position:relative;color:#fff;padding:13px 42px 13px 14px;font-size:13px;font-weight:700;line-height:1.35}
.ck-v16-footer-faq-grid summary::-webkit-details-marker{display:none}
.ck-v16-footer-faq-grid summary:after{content:'+';position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:20px;font-weight:400;color:#d5a078}
.ck-v16-footer-faq-grid details[open] summary:after{content:'–'}
.ck-v16-footer-faq-grid details p{margin:0;padding:0 14px 14px;color:#d9c6bb;font-size:12.5px;line-height:1.55}

.ck-v16-faq-page{max-width:1050px;margin:0 auto;padding:8px 0 20px}
.ck-v16-faq-page-head{text-align:center;background:linear-gradient(135deg,#fff5ec,#f7e4d6);border:1px solid #ecd9ca;border-radius:22px;padding:30px 22px;margin-bottom:20px}
.ck-v16-faq-page-head span{font-size:11px;letter-spacing:.18em;font-weight:800;color:#8b4527;text-transform:uppercase}
.ck-v16-faq-page-head h2{font-family:Georgia,serif;font-size:34px;color:#4d2b1f;margin:8px 0}
.ck-v16-faq-page-head p{margin:0;color:#745649}
.ck-v16-faq-page-list{display:grid;gap:12px}
.ck-v16-faq-page-list details{background:#fff;border:1px solid #ecd9ca;border-radius:15px;box-shadow:0 6px 20px rgba(77,43,31,.05);overflow:hidden}
.ck-v16-faq-page-list summary{cursor:pointer;list-style:none;padding:17px 52px 17px 18px;font-weight:800;color:#4d2b1f;position:relative}
.ck-v16-faq-page-list summary::-webkit-details-marker{display:none}
.ck-v16-faq-page-list summary:after{content:'+';position:absolute;right:18px;top:50%;transform:translateY(-50%);width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#f8eee5;color:#8b4527;font-size:20px}
.ck-v16-faq-page-list details[open] summary:after{content:'–'}
.ck-v16-faq-page-list details p{margin:0;padding:0 18px 18px;color:#6f584c;line-height:1.7}

@media(max-width:760px){
 .ck-v16-footer-faq{padding:24px 0}
 .ck-v16-footer-faq-head{align-items:flex-start;flex-direction:column;gap:12px}
 .ck-v16-footer-faq-head h3{font-size:22px}
 .ck-v16-footer-faq-grid{grid-template-columns:1fr}
 .ck-v16-faq-all{width:100%}
 .ck-v16-faq-page-head{padding:24px 15px;border-radius:16px}
 .ck-v16-faq-page-head h2{font-size:27px}
 .ck-v16-faq-page-list summary{font-size:14px}
}


/* =========================================================
   V17.0 — Clean header categories + hybrid hover/click dropdown
   Removes duplicate category links from the header. Keeps one
   All Categories control plus Home. Desktop hover opens/closes;
   click also toggles. Mobile uses a touch-friendly panel.
   ========================================================= */
.craftkam-v17 .hps-v13-nav .hps-nav-inner{
  gap:0!important;
}
.craftkam-v17 .hps-v13-nav .hps-nav-links{
  flex:1 1 auto!important;
  display:flex!important;
  align-items:stretch!important;
  overflow:hidden!important;
}
.craftkam-v17 .hps-v17-simple-nav{
  display:flex!important;
  align-items:stretch!important;
}
.craftkam-v17 .hps-v17-home-link{
  display:flex!important;
  align-items:center!important;
  min-height:46px!important;
  padding:0 24px!important;
  color:#39261f!important;
  font-size:13px!important;
  font-weight:800!important;
  text-decoration:none!important;
  background:transparent!important;
}
.craftkam-v17 .hps-v17-home-link:hover{
  background:#fbf4ee!important;
  color:#8b4728!important;
}

/* Desktop: true hover open + click toggle. */
@media (hover:hover) and (pointer:fine) and (min-width:761px){
  .craftkam-v17 .hps-v13-nav .hps-category-dropdown:hover .hps-category-menu,
  .craftkam-v17 .hps-v13-nav .hps-category-dropdown.is-hover-open .hps-category-menu,
  .craftkam-v17 .hps-v13-nav .hps-category-dropdown.is-open .hps-category-menu{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
  }
}

/* Remove V13's anti-hover override in V17. */
.craftkam-v17 .hps-v13-nav .hps-category-dropdown:hover .hps-category-menu:not(:hover){
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
}

/* Mobile / tablet header polish */
@media(max-width:760px){
  .craftkam-v17 .hps-v13-header .hps-header-main{
    grid-template-columns:104px minmax(0,1fr) 42px!important;
    gap:8px!important;
    padding:8px 0!important;
    min-height:70px!important;
  }
  .craftkam-v17 .hps-v13-header .hps-logo{
    width:100px!important;
    min-width:100px!important;
    height:58px!important;
  }
  .craftkam-v17 .hps-v13-header .hps-logo-image{
    width:98px!important;
    max-width:98px!important;
    height:56px!important;
    max-height:56px!important;
    object-fit:contain!important;
  }
  .craftkam-v17 .hps-v13-header .hps-search{
    min-width:0!important;
    width:100%!important;
  }
  .craftkam-v17 .hps-v13-header .hps-actions{
    min-width:38px!important;
    gap:4px!important;
  }
  .craftkam-v17 .hps-v13-header .hps-cart{
    font-size:19px!important;
  }
  .craftkam-v17 .hps-v13-nav .hps-nav-inner{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 84px!important;
    height:46px!important;
    min-height:46px!important;
    width:100%!important;
  }
  .craftkam-v17 .hps-v13-nav .hps-category-dropdown{
    width:100%!important;
    flex:1 1 auto!important;
    min-width:0!important;
  }
  .craftkam-v17 .hps-v13-nav .hps-category-trigger{
    width:100%!important;
    height:46px!important;
    min-height:46px!important;
    padding:0 16px!important;
    font-size:13px!important;
    border-radius:0!important;
  }
  .craftkam-v17 .hps-v13-nav .hps-nav-links,
  .craftkam-v17 .hps-v13-nav .hps-nav-links.is-open{
    display:flex!important;
    position:static!important;
    padding:0!important;
    background:transparent!important;
    box-shadow:none!important;
    border:0!important;
    height:46px!important;
  }
  .craftkam-v17 .hps-v17-home-link{
    width:84px!important;
    min-width:84px!important;
    justify-content:center!important;
    height:46px!important;
    min-height:46px!important;
    padding:0 8px!important;
    font-size:12px!important;
    border-bottom:0!important;
  }
  .craftkam-v17 .hps-v13-nav .hps-category-menu{
    top:46px!important;
    left:0!important;
    width:calc(100vw - 20px)!important;
    max-width:none!important;
    max-height:68vh!important;
    padding:12px!important;
    border-radius:0 0 16px 16px!important;
    overflow:auto!important;
  }
  .craftkam-v17 .hps-v13-nav .hps-category-menu-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  .craftkam-v17 .hps-v13-nav .hps-category-menu-grid>a{
    grid-template-columns:42px minmax(0,1fr)!important;
    gap:8px!important;
    min-height:58px!important;
    padding:8px!important;
  }
  .craftkam-v17 .hps-v13-nav .hps-category-menu-icon{
    width:40px!important;
    height:40px!important;
  }
  .craftkam-v17 .hps-v13-nav .hps-category-menu-arrow{
    display:none!important;
  }
  .craftkam-v17 .hps-v13-nav .hps-category-menu-copy strong{
    font-size:11px!important;
    line-height:1.2!important;
  }
  .craftkam-v17 .hps-v13-nav .hps-category-menu-copy small{
    font-size:9.5px!important;
  }
}

@media(max-width:420px){
  .craftkam-v17 .hps-v13-nav .hps-category-menu-grid{
    grid-template-columns:1fr!important;
  }
  .craftkam-v17 .hps-v13-header .hps-header-main{
    grid-template-columns:92px minmax(0,1fr) 38px!important;
  }
  .craftkam-v17 .hps-v13-header .hps-logo{
    width:90px!important;min-width:90px!important;
  }
  .craftkam-v17 .hps-v13-header .hps-logo-image{
    width:88px!important;max-width:88px!important;
  }
}


/* =========================================================
   V18.0 — Header page navigation
   Keeps product categories only inside All Categories and adds
   utility/store pages: Home, Shop, Offers, Track Order, Contact.
   ========================================================= */
.craftkam-v17 .hps-v18-page-nav{
  display:flex!important;
  align-items:stretch!important;
  min-width:0!important;
  overflow:hidden!important;
  white-space:nowrap!important;
}
.craftkam-v17 .hps-v18-page-nav .hps-v18-nav-link{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:46px!important;
  padding:0 21px!important;
  color:#39261f!important;
  text-decoration:none!important;
  font-size:13px!important;
  font-weight:800!important;
  background:transparent!important;
  border:0!important;
  transition:background .18s ease,color .18s ease!important;
}
.craftkam-v17 .hps-v18-page-nav .hps-v18-nav-link:hover,
.craftkam-v17 .hps-v18-page-nav .hps-v18-nav-link:focus-visible{
  background:#fbf4ee!important;
  color:#8b4728!important;
}
@media(max-width:980px) and (min-width:761px){
  .craftkam-v17 .hps-v18-page-nav .hps-v18-nav-link{padding:0 12px!important;font-size:12px!important}
}
@media(max-width:760px){
  .craftkam-v17 .hps-v13-nav .hps-nav-inner{
    display:grid!important;
    grid-template-columns:142px minmax(0,1fr)!important;
  }
  .craftkam-v17 .hps-v18-page-nav,
  .craftkam-v17 .hps-v13-nav .hps-nav-links.hps-v18-page-nav{
    display:flex!important;
    position:static!important;
    width:100%!important;
    height:46px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:none!important;
    background:#fff!important;
  }
  .craftkam-v17 .hps-v18-page-nav::-webkit-scrollbar{display:none!important}
  .craftkam-v17 .hps-v18-page-nav .hps-v18-nav-link,
  .craftkam-v17 .hps-v18-page-nav .hps-v17-home-link{
    flex:0 0 auto!important;
    width:auto!important;
    min-width:auto!important;
    height:46px!important;
    min-height:46px!important;
    padding:0 13px!important;
    font-size:11.5px!important;
    border-left:1px solid #f1e4da!important;
  }
  .craftkam-v17 .hps-v13-nav .hps-category-trigger{
    padding:0 12px!important;
    font-size:12.5px!important;
  }
}
