:root{--green:#0b5a35;--green-dark:#073c25;--green-soft:#eaf6ef;--gold:#d6a638;--cream:#fbfaf5;--ink:#153026;--muted:#718078;--line:#e4e9e5;--shadow:0 12px 35px rgba(10,55,34,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overflow-x:hidden}a,a:hover,a:focus,a:active{text-decoration:none!important;text-decoration-line:none!important}
.site-header{position:relative;z-index:1050}.main-navbar{background:var(--green-dark);min-height:70px;box-shadow:0 6px 24px rgba(0,0,0,.12)}.brand-lockup{display:flex;align-items:center;gap:10px;color:#fff;min-width:0}.brand-logo-wrap{width:145px;height:45px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:#fff;border:1px solid rgba(255,255,255,.35);overflow:hidden}.brand-logo-wrap img{max-width:100%;max-height:100%;object-fit:contain}.brand-firework-logo{background:transparent;border:0;color:#f3cf68;font-size:1.5rem;gap:5px}.brand-copy{display:flex;flex-direction:column;line-height:1.1}.brand-copy strong{font-family:Georgia,serif;font-size:1rem}.brand-copy strong span{color:#f3cf68}.brand-copy small{color:#bcd8c8;font-size:.62rem;margin-top:4px}.header-actions{order:3}.header-contact,.header-cart-btn{height:40px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:7px}.header-contact{border:1px solid var(--gold);color:#fff;padding:0 15px;font-size:.76rem;font-weight:700}.header-contact i{color:#f4ce67}.header-cart-btn{position:relative;width:42px;color:#fff;background:rgba(255,255,255,.08);font-size:1rem}.header-cart-count{position:absolute;right:-3px;top:-5px;min-width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--gold);color:#173624;font-size:.6rem;font-weight:900;border:2px solid var(--green-dark)}.custom-toggler{border:0!important;width:42px;height:42px;padding:9px!important;display:flex;flex-direction:column;justify-content:center;gap:5px}.custom-toggler span{display:block;height:2px;width:23px;background:#fff;border-radius:4px}.navbar-nav .nav-link{color:#d8e9df!important;font-size:.8rem;font-weight:700;padding:8px 12px!important;border-radius:999px}.navbar-nav .nav-link{position:relative;text-decoration:none!important;text-decoration-line:none!important;box-shadow:none!important}.navbar-nav .nav-link:hover{background:rgba(255,255,255,.06);color:#fff!important;text-decoration:none!important}.navbar-nav .nav-link.active{background:rgba(255,255,255,.1);color:#fff!important;text-decoration:none!important}.navbar-nav .nav-link.active::after{content:"";position:absolute;left:12px;right:12px;bottom:2px;height:2px;border-radius:2px;background:var(--gold)}.mobile-nav-divider{height:1px;background:rgba(255,255,255,.12);margin:10px 0}.mobile-menu-actions{display:flex;gap:8px;margin-top:10px}.mobile-action{flex:1;text-align:center;padding:10px;border:1px solid rgba(255,255,255,.2);border-radius:10px;color:#fff;font-weight:700;font-size:.78rem}.whatsapp-action{background:#17864d;border-color:#17864d}.promo-strip{background:#ef1972;color:#fff;text-align:center;font-size:.78rem;font-weight:800;padding:10px 0}.support-strip{background:#20252b;color:#fff;text-align:center;padding:10px 0}.support-strip .container-fluid{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap}.support-label{color:#f3cf68;font-weight:800}.support-strip a{color:#fff;font-weight:700;font-size:.74rem}.support-strip a i{color:#25a65a;margin-right:4px}
.shared-page-hero{background:linear-gradient(135deg,var(--green-dark),var(--green));color:#fff;padding:48px 16px;text-align:center}.shared-page-hero h1{font-family:Georgia,serif;font-size:clamp(2rem,7vw,3.5rem);margin:0 0 8px}.shared-page-hero p{margin:0;color:#dcefe4;font-size:.95rem}.shared-content{max-width:1000px;margin:28px auto 70px;padding:0 16px}.shared-card{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:26px}.shared-card h2,.shared-card h3{font-family:Georgia,serif;color:var(--green-dark)}.shared-card p{color:#63716a;line-height:1.75}.shared-logo{width:100%;max-height:300px;object-fit:contain;border-radius:14px;background:#fafcfa}.shared-footer{background:var(--green-dark);color:#fff;text-align:center;padding:30px 16px 42px}.shared-footer h2{font-family:Georgia,serif;margin:0 0 8px}.shared-footer h2 span{color:#f3cf68}.shared-footer p{color:#c5dbce;font-size:.78rem;margin:4px 0}.shared-footer a{color:#f3cf68;font-weight:700;font-size:.78rem}
@media(max-width:767.98px){.main-navbar{min-height:64px}.brand-logo-wrap{width:112px;height:38px}.brand-copy{display:none}.header-contact{display:none!important}.promo-strip{font-size:.64rem;line-height:1.35;padding:9px 12px}.support-strip{padding:9px 8px}.support-strip .container-fluid{gap:5px 10px}.support-label{width:100%;font-size:.68rem}.support-strip a{font-size:.61rem}.shared-page-hero{padding:30px 14px}.shared-page-hero h1{font-size:2rem}.shared-page-hero p{font-size:.72rem}.shared-content{margin:18px auto 48px;padding:0 10px}.shared-card{padding:16px;border-radius:14px}.shared-card p{font-size:.75rem;line-height:1.65}.shared-footer{padding-bottom:90px}}


/* Shared navigation/page consistency fixes */
.navbar-nav .nav-link,
.navbar-nav .nav-link:hover,
.navbar-nav .nav-link:focus,
.navbar-nav .nav-link:active,
.navbar-nav .nav-link *{text-decoration:none!important;text-decoration-line:none!important;text-decoration-style:none!important;box-shadow:none!important}
.navbar-nav .nav-link.active{background:rgba(255,255,255,.10)!important;color:#fff!important}
.navbar-nav .nav-link:not(.active){background:transparent!important;color:#d8e9df!important}
.navbar-nav .nav-link:not(.active)::after{display:none!important;content:none!important}
.navbar-nav .nav-link.active::after{display:block!important;content:""!important;position:absolute;left:12px;right:12px;bottom:2px;height:2px;border-radius:2px;background:var(--gold)}
.shared-cart-dock{position:fixed;left:50%;bottom:0;transform:translateX(-50%);width:min(980px,100%);z-index:1040;background:rgba(255,255,255,.98);color:var(--ink);border:1px solid #e3e7e4;border-bottom:0;border-radius:18px 18px 0 0;box-shadow:0 -10px 30px rgba(0,0,0,.14);padding:10px 76px 10px 10px;backdrop-filter:blur(10px)}
.shared-dock-total{display:grid;grid-template-columns:repeat(3,1fr);width:100%;gap:0}.shared-dock-value{text-align:center;padding:0 8px;border-right:1px solid #e1e5e2}.shared-dock-value:last-child{border-right:0}.shared-dock-value small{display:block;color:#6d7771;font-size:.62rem;font-weight:800}.shared-dock-value strong{display:block;font-family:Georgia,serif;font-size:1rem;margin-top:3px}.shared-dock-disc{color:#d65a67}.shared-dock-action{position:absolute;right:12px;top:50%;transform:translateY(-50%)}
.shared-view-cart{position:relative;border:0;background:#ef1972;color:#fff;width:54px;height:54px;border-radius:50%;font-size:1.25rem;display:flex;align-items:center;justify-content:center;box-shadow:0 7px 18px rgba(239,25,114,.32);border:3px solid #fff}.shared-cart-count{position:absolute;top:-4px;right:-4px;width:21px;height:21px;background:var(--gold);color:#183925;border-radius:50%;font-size:.62rem;display:flex;align-items:center;justify-content:center;font-weight:900;border:2px solid #fff}
.shared-floating-contact{position:fixed;left:14px;bottom:112px;z-index:1045;display:flex;flex-direction:column;gap:8px}.shared-floating-contact a{width:45px;height:45px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 8px 18px rgba(0,0,0,.16);font-size:1rem}.shared-call-float{background:#d69f2c}.shared-wa-float{background:#1b9b57}
.shared-page-footer{margin-top:10px;background:linear-gradient(145deg,#042d1b,#0b6338);border-top:4px solid #e4b73d;color:#fff;text-align:center;padding:34px 16px 108px;position:relative;overflow:hidden}.shared-page-footer h2{margin:0;font-family:Georgia,serif;font-size:clamp(1.65rem,7vw,2.35rem);font-weight:800;line-height:1}.shared-page-footer h2 span{color:#f3cf68}.shared-page-footer p{margin:10px 0 0;color:#cce0d3;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700}.shared-page-footer a{display:inline-flex;align-items:center;gap:7px;margin-top:12px;color:#f3cf68;font-size:.72rem;font-weight:800;text-decoration:none!important;border-bottom:1px dashed rgba(243,207,104,.55);padding-bottom:3px}.shared-page-footer a:hover{color:#fff}
.shared-cart-drawer{position:fixed!important;top:0!important;right:0!important;bottom:0!important;height:100dvh!important;width:min(500px,100vw)!important;background:#f7faf8;border:0;z-index:1070!important}
.offcanvas-backdrop{z-index:1060!important}.shared-cart-drawer .cart-header{background:linear-gradient(135deg,#043b24,#08643a);color:#fff;padding:20px 22px}.shared-cart-drawer .cart-scroll-area{min-height:0;overflow-y:auto;overflow-x:hidden;max-height:calc(100dvh - 80px);padding:18px 16px 28px}.shared-cart-drawer .cart-items-section,.shared-cart-drawer .cart-summary-card,.shared-cart-drawer .checkout-card{background:#fff;border:1px solid #dfe7e2;border-radius:16px;box-shadow:0 4px 18px rgba(10,55,34,.06);padding:15px}.shared-cart-drawer .cart-section-title{display:flex;align-items:center;justify-content:space-between;color:var(--green);font-family:Georgia,serif;font-weight:900;font-size:.82rem;letter-spacing:.08em;margin-bottom:4px}.shared-cart-drawer .cart-clear{border:0;background:transparent;color:#e25b63;font-size:.72rem;font-weight:700}.shared-cart-drawer .cart-card{background:#fff;border:0;border-bottom:1px solid #e7ece9;border-radius:0;padding:14px 0 13px;margin:0;display:block}.shared-cart-drawer .cart-card:last-child{border-bottom:0}.shared-cart-drawer .cart-card-main{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:10px;align-items:center}.shared-cart-drawer .cart-thumb{width:52px;height:52px;border:1px solid #dfe7e2;border-radius:9px;object-fit:contain;background:#fff}.shared-cart-drawer .cart-item-name{font-size:.76rem;font-weight:800;line-height:1.25;color:#17382a;margin-bottom:5px}.shared-cart-drawer .cart-price-line{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.shared-cart-drawer .cart-old-price{font-size:.62rem;color:#8d9892;text-decoration:line-through}.shared-cart-drawer .cart-item-price{font-size:.64rem;color:#3d5b4d}.shared-cart-drawer .cart-item-total{font-family:Georgia,serif;font-size:.9rem;font-weight:900;color:#17382a;text-align:right;white-space:nowrap}.shared-cart-drawer .cart-card-actions{display:flex;align-items:center;justify-content:space-between;margin-top:10px}.shared-cart-drawer .cart-remove-icon{border:0;background:transparent;color:#ed646b;width:28px;height:28px}.shared-cart-drawer .cart-qty-control{display:flex;align-items:center;background:#0b6b3c;color:#fff;border-radius:9px;padding:2px;min-width:96px;justify-content:space-between}.shared-cart-drawer .cart-qty-control button{width:29px;height:29px;border:0;background:transparent;color:#fff;font-weight:900}.shared-cart-drawer .cart-qty-control span{min-width:27px;text-align:center;font-size:.72rem;font-weight:900}.shared-cart-drawer .cart-footer{background:transparent;border:0;padding:12px 0 0}.shared-cart-drawer .summary-row{display:flex;justify-content:space-between;align-items:center;padding:7px 0;color:#64736b;font-size:.74rem}.shared-cart-drawer .summary-row.total{border-top:1px solid #e5ebe7;margin-top:5px;padding-top:13px;color:#17382a;font-family:Georgia,serif;font-size:.96rem;font-weight:900}.shared-cart-drawer .min-alert{margin-top:12px;background:#fff8df;border:1px solid #ebd38b;border-radius:9px;padding:10px;text-align:center;color:#6d571b;font-size:.68rem;font-weight:700}.shared-cart-drawer .min-alert.success{background:#eaf8ee;border-color:#b8dfc2;color:#166534}.shared-cart-drawer .checkout-card{margin-top:14px}.shared-cart-drawer .checkout-title{font-family:Georgia,serif;color:var(--green);font-size:1rem;font-weight:900;margin-bottom:12px}.shared-cart-drawer .checkout-field{height:46px;border:1px solid #dfe7e2;border-radius:11px;margin-bottom:9px;font-size:.75rem}.shared-cart-drawer textarea.checkout-field{height:auto;min-height:88px}.shared-cart-drawer .checkout-submit{width:100%;height:46px;border:0;border-radius:11px;background:#0b6b3c;color:#fff;font-weight:900;margin-top:6px}.shared-cart-drawer .empty-state{text-align:center;padding:34px 10px;color:#738078}
@media(max-width:767.98px){body:has(.shared-cart-dock){padding-bottom:83px}.shared-cart-dock{padding:8px 70px 8px 4px}.shared-dock-value small{font-size:.52rem}.shared-dock-value strong{font-size:.82rem}.shared-view-cart{width:51px;height:51px}.shared-floating-contact{bottom:90px}.shared-cart-drawer{width:100vw!important}.shared-cart-drawer .cart-scroll-area{padding:10px 9px 22px}.shared-cart-drawer .cart-items-section,.shared-cart-drawer .cart-summary-card,.shared-cart-drawer .checkout-card{padding:13px}.shared-cart-drawer .cart-card-main{grid-template-columns:48px minmax(0,1fr) auto}.shared-cart-drawer .cart-thumb{width:48px;height:48px}.shared-page-footer{padding-bottom:92px}.shared-page-footer h2{font-size:1.55rem}}

/* V13: unified mobile layout + polished action icons */
html, body { width:100%; min-width:0; }

@media (max-width:767.98px){
  body{width:100%;overflow-x:hidden;-webkit-text-size-adjust:100%;}
  .site-header,.main-navbar,.promo-strip,.support-strip{width:100%;max-width:100%;}
  .main-navbar > .container-fluid{width:100%;max-width:100%;padding-left:12px!important;padding-right:12px!important;}
  .navbar-collapse{width:100%;flex-basis:100%;}
  .navbar-nav{width:100%;}
  .navbar-nav .nav-link{display:block;width:100%;text-align:left;padding:11px 12px!important;border-radius:10px;}
  .navbar-nav .nav-link.active::after{left:12px;right:auto;width:34px;bottom:5px;}

  /* Make About / FAQ / Contact occupy the full mobile viewport like Shop */
  .shared-page-hero,
  .shared-content,
  .shared-page-footer{width:100%;max-width:none!important;margin-left:0!important;margin-right:0!important;}
  .shared-page-hero{padding:34px 14px 30px;}
  .shared-page-hero h1{font-size:clamp(1.85rem,8vw,2.35rem);line-height:1.05;}
  .shared-page-hero p{font-size:.78rem;line-height:1.45;}
  .shared-content{padding:0 12px!important;margin-top:14px!important;margin-bottom:42px!important;}
  .shared-content > .row{width:100%;margin-left:0!important;margin-right:0!important;}
  .shared-content > .row > [class*="col-"]{width:100%;padding-left:0!important;padding-right:0!important;}
  .shared-card{width:100%;max-width:none;padding:17px;border-radius:15px;}
  .shared-card h2{font-size:1.55rem;line-height:1.15;}
  .shared-card h5{font-size:.9rem;line-height:1.4;}
  .shared-card p{font-size:.78rem;line-height:1.65;}
  .shared-logo{max-height:220px;width:100%;}
  .shared-page-footer{padding-left:14px;padding-right:14px;padding-bottom:92px;}

  /* Polished floating actions */
  .shared-floating-contact{left:12px;bottom:94px;gap:10px;z-index:1055;}
  .shared-floating-contact a{
    width:48px;height:48px;
    border:2px solid rgba(255,255,255,.95);
    font-size:1.2rem;
    box-shadow:0 8px 20px rgba(0,0,0,.18),0 0 0 1px rgba(0,0,0,.04);
    transition:transform .18s ease,box-shadow .18s ease;
  }
  .shared-floating-contact a:active{transform:scale(.94);}
  .shared-call-float{background:linear-gradient(145deg,#e0ad3d,#c88d19);}
  .shared-wa-float{background:linear-gradient(145deg,#22b968,#128a4a);}
  .shared-wa-float i{font-size:1.3rem;}

  /* More premium cart button */
  .shared-view-cart{
    width:56px;height:56px;
    border:3px solid #fff;
    background:linear-gradient(145deg,#f52b80,#df0e63);
    box-shadow:0 8px 22px rgba(223,14,99,.32),0 0 0 1px rgba(0,0,0,.04);
    font-size:1.3rem;
    transition:transform .18s ease,box-shadow .18s ease;
  }
  .shared-view-cart:active{transform:scale(.94);}
  .shared-cart-count{width:22px;height:22px;font-size:.63rem;top:-5px;right:-5px;}
}

/* Desktop polish for the same action buttons */
.shared-floating-contact a{
  border:2px solid rgba(255,255,255,.9);
  transition:transform .18s ease,box-shadow .18s ease;
}
.shared-floating-contact a:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(0,0,0,.2);}
.shared-call-float{background:linear-gradient(145deg,#e0ad3d,#c88d19);}
.shared-wa-float{background:linear-gradient(145deg,#22b968,#128a4a);}
.shared-view-cart{background:linear-gradient(145deg,#f52b80,#df0e63);}
.shared-view-cart:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(223,14,99,.36);}


/* V14: authoritative responsive rules for secondary pages.
   Bootstrap loads before this file; these rules deliberately win on mobile. */
.shared-page-body{margin:0!important;width:100%;min-width:0;overflow-x:hidden;background:var(--cream,#fbfaf5);}
.shared-page-body *, .shared-page-body *::before, .shared-page-body *::after{box-sizing:border-box;}
.shared-page-body a{text-decoration:none!important;}

@media (max-width: 767.98px){
  html{width:100%;min-width:100%;overflow-x:hidden;}
  body.shared-page-body{width:100%!important;min-width:100%!important;max-width:100%!important;font-size:16px!important;-webkit-text-size-adjust:100%!important;}
  body.shared-page-body .site-header,
  body.shared-page-body .main-navbar,
  body.shared-page-body .promo-strip,
  body.shared-page-body .support-strip,
  body.shared-page-body .shared-page-hero,
  body.shared-page-body .shared-content,
  body.shared-page-body .shared-page-footer{width:100%!important;max-width:none!important;}
  body.shared-page-body .shared-content{display:block!important;margin:14px 0 42px!important;padding:0 12px!important;}
  body.shared-page-body .shared-content[style]{max-width:none!important;}
  body.shared-page-body .shared-content .row{--bs-gutter-x:0!important;width:100%!important;margin-left:0!important;margin-right:0!important;}
  body.shared-page-body .shared-content .row>[class*="col-"]{width:100%!important;max-width:100%!important;flex:0 0 100%!important;padding-left:0!important;padding-right:0!important;}
  body.shared-page-body .shared-card{width:100%!important;max-width:none!important;margin:0!important;}
  body.shared-page-body .shared-page-hero{min-height:0!important;padding:34px 14px 30px!important;}
  body.shared-page-body .shared-page-hero h1{font-size:2rem!important;line-height:1.08!important;}
  body.shared-page-body .shared-page-hero p{font-size:.8rem!important;line-height:1.45!important;}

  /* Cleaner, larger touch targets for WhatsApp and cart. */
  body.shared-page-body .shared-floating-contact{left:12px!important;bottom:94px!important;gap:10px!important;z-index:1065!important;}
  body.shared-page-body .shared-floating-contact a{width:50px!important;height:50px!important;border:2px solid #fff!important;border-radius:50%!important;font-size:1.28rem!important;box-shadow:0 8px 22px rgba(0,0,0,.20)!important;}
  body.shared-page-body .shared-wa-float{background:#25D366!important;}
  body.shared-page-body .shared-wa-float i{font-size:1.42rem!important;}
  body.shared-page-body .shared-view-cart{width:58px!important;height:58px!important;border-radius:50%!important;background:#ec176d!important;border:3px solid #fff!important;font-size:1.35rem!important;box-shadow:0 9px 24px rgba(236,23,109,.36)!important;}
  body.shared-page-body .shared-cart-count{width:23px!important;height:23px!important;top:-5px!important;right:-5px!important;font-size:.65rem!important;}
}

/* V15: hard viewport reset for secondary pages.
   The secondary pages must occupy the same CSS viewport as Shop; use viewport units
   so no inherited/container width can shrink the entire page. */
html, body.shared-page-body {
  width: 100vw !important;
  min-width: 100vw !important;
  max-width: 100vw !important;
  margin: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  overflow-x: hidden !important;
}
.shared-page-root {
  display: block !important;
  width: 100vw !important;
  min-width: 100vw !important;
  max-width: 100vw !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.shared-page-body .site-header,
body.shared-page-body .main-navbar,
body.shared-page-body .promo-strip,
body.shared-page-body .support-strip,
body.shared-page-body .shared-page-hero,
body.shared-page-body .shared-content,
body.shared-page-body .shared-page-footer {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
body.shared-page-body .main-navbar > .container-fluid,
body.shared-page-body .promo-strip > .container-fluid,
body.shared-page-body .support-strip > .container-fluid {
  width: 100% !important;
  max-width: none !important;
}
@media (max-width: 767.98px) {
  body.shared-page-body { font-size: 16px !important; }
  body.shared-page-body .shared-page-root { width: 100vw !important; }
  body.shared-page-body .shared-page-hero { padding-left: 14px !important; padding-right: 14px !important; }
  body.shared-page-body .shared-content { padding-left: 12px !important; padding-right: 12px !important; }
}
