@import url("https://fonts.googleapis.com/css2?family=Manrope:wght@400;600;700;800;900&family=Playfair+Display:wght@600;700;800&display=swap");
:root{--bg:#fff8f3;--surface:#fff;--surface-soft:#fff1ea;--surface-warm:#fff6f0;--primary:#e56f8e;--primary-dark:#b85d64;--primary-soft:#f9dcdc;--accent:#f6b6a6;--ink:#342626;--muted:#7d6461;--border:#ead8cf;--border-soft:#f2e4dd;--success:#3a7a5e;--danger:#b74242;--container:1200px;--radius:16px;--radius-lg:20px;--shadow:0 18px 44px rgba(66,39,36,.08);--ink-heading:#241742;--ink-nav:#2f2347;--primary-deep:#9d465d;--primary-mid:#b84d69;--primary-bright:#e35e83;--accent-rose:#bd5274;--radius-sm:12px;--radius-md:16px;--radius-xl:24px;--radius-pill:999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-9:36px;--space-10:40px;--space-11:48px;--space-12:64px;--section-y:64px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Manrope,Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.65;overflow-x:hidden}img,video{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.container{width:min(100% - 32px,var(--container));margin-inline:auto}.skip-link{position:absolute;left:12px;top:-80px;background:var(--ink);color:#fff;padding:10px 14px;border-radius:10px;z-index:999}.skip-link:focus{top:12px}.site-header{position:sticky;top:0;z-index:40;background:rgba(255,248,243,.9);backdrop-filter:blur(18px);border-bottom:1px solid rgba(234,216,207,.75)}.header-inner{height:76px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px}.brand{display:inline-flex;align-items:center;line-height:1;min-width:0}.brand-logo{display:block;width:160px;height:auto;max-height:54px;object-fit:contain}.brand-mark{display:none}.nav{display:flex;align-items:center;justify-content:center;gap:24px;font-weight:800;color:var(--ink-nav)}.nav a{padding:10px 0;border-bottom:2px solid transparent}.nav a[aria-current="page"],.nav a:hover{border-color:var(--primary);color:var(--primary-deep)}.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}.cart-link,.menu-toggle{min-width:48px;height:48px;border:1px solid var(--border);background:rgba(255,255,255,.75);border-radius:999px;display:inline-grid;place-items:center;font-weight:900}.cart-wrap{position:relative}.cart-count{position:absolute;right:-4px;top:-4px;min-width:20px;height:20px;border-radius:999px;background:var(--primary);color:#fff;font-size:12px;line-height:20px;text-align:center}.menu-toggle{display:none}.btn{min-height:48px;padding:0 18px;border-radius:999px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;text-align:center;line-height:1;font-weight:900;cursor:pointer;white-space:nowrap;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.btn:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--primary-dark);outline-offset:3px}.btn:hover{transform:translateY(-1px)}.btn-primary{background:linear-gradient(135deg,#d95e83,#f08b78);color:#fff;box-shadow:0 14px 28px rgba(216,94,131,.22)}.btn-secondary{background:#fff;color:var(--ink);border-color:var(--border);box-shadow:0 10px 22px rgba(66,39,36,.06)}.btn-ghost{background:transparent;color:var(--primary-deep)}.btn[disabled]{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}.section{padding:64px 0}.section-compact{padding:44px 0}.eyebrow{display:inline-flex;align-items:center;min-height:34px;padding:0 14px;border:1px solid var(--border);border-radius:999px;background:rgba(255,255,255,.64);color:var(--accent-rose);font-weight:900}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}.section-title{font-size:42px;line-height:1.15;margin:8px 0 0;color:var(--ink-heading)}.section-copy{max-width:760px;margin:8px 0 0;color:var(--muted);font-size:17px}.soft-band{background:linear-gradient(180deg,rgba(255,255,255,.62),rgba(255,241,234,.42));border-block:1px solid rgba(234,216,207,.5)}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.product-card{border-radius:var(--radius-lg);padding:14px;background:rgba(255,255,255,.66);border:1px solid rgba(234,216,207,.82);box-shadow:0 16px 34px rgba(66,39,36,.07);display:flex;flex-direction:column;gap:12px;min-width:0;transition:transform .18s ease,box-shadow .18s ease}.product-card:hover{box-shadow:0 22px 42px rgba(66,39,36,.1);transform:translateY(-2px)}.product-media{border-radius:16px;background:linear-gradient(135deg,#fffdfb,#fff4f8);display:grid;place-items:center;overflow:hidden;aspect-ratio:1/1;padding:8px}.product-media img{width:100%;height:100%;object-fit:contain}.product-card.storybook .product-media{aspect-ratio:3/4}.product-card.nameslip .product-media{aspect-ratio:16/10}.product-card h3{font-size:20px;line-height:1.25;margin:0;color:var(--ink-heading)}.product-card p{margin:0;color:var(--muted);font-size:14px;line-height:1.45}.card-actions{display:grid;grid-template-columns:.9fr 1.1fr;gap:10px;margin-top:auto}.btn-small{min-height:44px;padding:0 14px;font-size:14px}.badge-row{display:flex;flex-wrap:wrap;gap:8px}.badge{font-size:12px;line-height:1;padding:8px 10px;border-radius:999px;background:rgba(249,220,220,.6);color:#a94e68;font-weight:900}.site-footer{border-top:1px solid var(--border);padding:48px 0;background:rgba(255,255,255,.55)}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:28px}.footer-grid h3,.footer-grid h4{margin:0 0 10px;color:var(--ink-heading)}.footer-grid p,.footer-grid a{color:var(--muted);font-weight:700}.footer-grid a{display:block;margin:7px 0}.trust-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.trust-item{padding:16px;border-radius:var(--radius);background:rgba(255,255,255,.68);border:1px solid var(--border-soft)}.trust-item strong{display:block;color:var(--ink-heading)}.trust-item span{display:block;color:var(--muted);font-size:14px;line-height:1.45}.answer-block{display:grid;grid-template-columns:1fr 1fr;gap:18px}.answer-card{padding:22px;border-radius:var(--radius-lg);background:rgba(255,255,255,.68);border:1px solid var(--border-soft)}.answer-card h3{margin:0 0 8px;color:var(--ink-heading)}.answer-card p{margin:0;color:var(--muted)}
@media(max-width:1023px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{grid-template-columns:repeat(2,1fr)}.section-title{font-size:34px}.trust-strip,.answer-block{grid-template-columns:1fr 1fr}}
@media(max-width:767px){.header-inner{height:68px;grid-template-columns:minmax(0,1fr) auto auto}.brand-logo{width:128px;max-height:46px}.menu-toggle{display:grid}.nav{position:absolute;left:16px;right:16px;top:76px;display:none;grid-template-columns:1fr;background:rgba(255,255,255,.95);border:1px solid var(--border);border-radius:16px;padding:12px;box-shadow:var(--shadow);justify-content:stretch}.nav.is-open{display:grid}.nav a{padding:12px;border-bottom:1px solid var(--border-soft)}.header-actions{justify-self:end}.section{padding:44px 0}.section-compact{padding:32px 0}.section-head{align-items:flex-start;flex-direction:column}.section-title{font-size:30px;line-height:1.16}.section-copy{font-size:16px}.product-grid{grid-template-columns:1fr;gap:18px}.product-card{border-radius:18px}.card-actions{grid-template-columns:1fr}.footer-grid,.trust-strip,.answer-block{grid-template-columns:1fr}.btn{white-space:normal;min-height:50px}}
@media(max-width:374px){.container{width:min(100% - 28px,var(--container))}.section-title{font-size:28px}.brand-logo{width:112px}.product-card h3{font-size:19px}.btn{font-size:14px;padding-inline:14px}}
@media(max-width:1023px){.header-inner{height:68px;grid-template-columns:minmax(0,1fr) auto auto}.brand-logo{width:140px;max-height:48px}.menu-toggle{display:grid}.nav{position:absolute;left:18px;right:18px;top:76px;display:none;grid-template-columns:1fr;background:rgba(255,255,255,.96);border:1px solid var(--border);border-radius:18px;padding:12px;box-shadow:var(--shadow);justify-content:stretch}.nav.is-open{display:grid}.nav a{padding:12px;border-bottom:1px solid var(--border-soft)}.header-actions{justify-self:end}}
@media(max-width:767px){.brand-logo{width:128px;max-height:46px}.nav{left:16px;right:16px;top:76px}}
@media(max-width:374px){.brand-logo{width:112px}}
.product-card.nameslip .card-actions{grid-template-columns:1fr}.product-card.nameslip h3{text-align:center}.product-card.nameslip .btn{width:100%}
.product-card{position:relative;background:linear-gradient(145deg,rgba(255,255,255,.72),rgba(255,247,251,.44));backdrop-filter:blur(14px)}.product-media{background:transparent;padding:0;overflow:visible}.product-media img{filter:drop-shadow(0 12px 18px rgba(52,38,38,.12))}.product-card.storybook .product-media,.product-card.calendar .product-media{aspect-ratio:1/1}.product-card.name-slip .product-media{aspect-ratio:16/10}.product-card h3{text-align:center}.card-actions{grid-template-columns:1fr}.card-actions .btn{width:100%}.quick-view-btn{position:absolute;right:12px;top:12px;z-index:6;width:34px;height:34px;border-radius:999px;border:1px solid rgba(234,216,207,.85);background:rgba(255,255,255,.88);color:var(--primary-deep);box-shadow:0 10px 22px rgba(66,39,36,.13);font-weight:900;line-height:1;display:grid;place-items:center;cursor:pointer}.quick-view-btn:hover{transform:translateY(-1px);background:#fff}.quick-modal{position:fixed;inset:0;z-index:120;display:none;place-items:center;padding:24px;background:rgba(24,17,35,.78);backdrop-filter:blur(10px)}.quick-modal.is-open{display:grid}.quick-modal-panel{position:relative;width:min(92vw,980px);max-height:88vh;display:grid;place-items:center}.quick-modal img{width:auto;max-width:100%;max-height:84vh;object-fit:contain;border-radius:22px;background:#fff;box-shadow:0 28px 90px rgba(0,0,0,.4)}.quick-modal-close{position:absolute;right:-12px;top:-12px;width:44px;height:44px;border-radius:999px;border:1px solid rgba(255,255,255,.55);background:#fff;color:var(--ink-heading);font-size:24px;font-weight:900;cursor:pointer;box-shadow:0 16px 40px rgba(0,0,0,.25)}@media(max-width:767px){.quick-modal{padding:14px}.quick-modal-close{right:4px;top:4px}.quick-modal img{max-height:78vh;border-radius:16px}.quick-view-btn{width:32px;height:32px;right:10px;top:10px}}
.quick-view-btn{font-size:0}
.quick-view-icon{display:block;width:18px;height:18px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%239d465d' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.5-6 10-6 10 6 10 6-3.5 6-10 6S2 12 2 12Z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center/contain no-repeat}
.product-card.sticker .product-media{aspect-ratio:2/3}
@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}

/* Dimple typography polish */
:root{--display-font:"Playfair Display",Georgia,"Times New Roman",serif;--body-font:"Manrope",Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body{font-family:var(--body-font)}
.section-title,.category-hero h1,.answer-card h3,.product-detail h1,.dimple-title-row h2,.dimple-preview__header h3,.dimple-step__text h3,.flow-label{font-family:var(--display-font);letter-spacing:0;font-weight:700}

/* V70 header, cards, and micro-interaction polish */
.site-header{background:rgba(255,250,247,.92);box-shadow:0 8px 30px rgba(82,52,42,.045)}
.header-inner{height:78px;gap:28px}
.nav{gap:36px;font-size:15px}
.header-actions{gap:12px}
.google-signin{min-height:44px;padding:0 16px;border-radius:999px;border:1px solid rgba(234,216,207,.9);background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,246,250,.72));box-shadow:0 12px 28px rgba(66,39,36,.07);display:inline-flex;align-items:center;gap:9px;font-weight:900;color:var(--ink-nav);white-space:nowrap}
.google-mark{width:22px;height:22px;border-radius:999px;background:#fff;color:#4285f4;display:inline-grid;place-items:center;font-weight:900;font-size:14px;box-shadow:inset 0 0 0 1px rgba(66,39,36,.08)}
.cart-wrap{min-height:46px;padding:0 16px;border:1px solid rgba(234,216,207,.9);background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(255,247,251,.74));border-radius:999px;display:inline-flex;align-items:center;gap:9px;box-shadow:0 14px 32px rgba(66,39,36,.08);font-weight:900;color:var(--ink-nav)}
.cart-wrap:hover,.google-signin:hover{transform:translateY(-1px);box-shadow:0 18px 36px rgba(66,39,36,.11)}
.cart-icon{width:20px;height:20px;display:block;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%232f2347' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='8' cy='21' r='1'/%3E%3Ccircle cx='19' cy='21' r='1'/%3E%3Cpath d='M2.05 2.05h2l2.66 12.42a2 2 0 0 0 2 1.58h8.94a2 2 0 0 0 1.95-1.57L21 7H5.12'/%3E%3C/svg%3E") center/contain no-repeat}
.cart-count{right:-7px;top:-9px;box-shadow:0 6px 14px rgba(216,94,131,.26);font-weight:900}
.product-card{transform-style:preserve-3d;will-change:transform}
.product-card:hover{transform:translateY(-6px) perspective(900px) rotateX(1.4deg);box-shadow:0 28px 58px rgba(66,39,36,.13)}
.btn:hover{transform:translateY(-2px);box-shadow:0 18px 34px rgba(216,94,131,.22)}
.btn-secondary:hover{box-shadow:0 16px 30px rgba(66,39,36,.1)}
@media(max-width:1180px){.nav{gap:24px}.google-signin span:last-child{display:none}.google-signin{width:46px;padding:0;justify-content:center}}
@media(max-width:767px){.header-inner{height:70px;gap:10px}.google-signin{display:none}.cart-wrap{min-width:46px;width:46px;height:46px;padding:0;justify-content:center}.cart-label{display:none}.nav{top:78px}.menu-toggle{font-size:0}.menu-toggle::before{content:"Menu";font-size:14px}}

/* V73 — support FAB, footer polish, payment badges */
.support-fab{position:fixed;right:18px;bottom:18px;z-index:60;display:inline-flex;align-items:center;gap:8px;min-height:54px;padding:0 18px;border-radius:var(--radius-pill);background:linear-gradient(135deg,#27c06a,#1faf5e);color:#fff;font-weight:900;text-decoration:none;box-shadow:0 16px 34px rgba(31,160,90,.34);transition:transform .18s ease,box-shadow .18s ease}
.support-fab:hover{transform:translateY(-2px);box-shadow:0 20px 42px rgba(31,160,90,.42)}
.support-fab .support-fab-icon{font-size:20px;line-height:1}
@media (max-width:767px){.support-fab{right:14px;bottom:14px;width:54px;min-width:54px;padding:0;justify-content:center}.support-fab .support-fab-label{display:none}}
.site-footer{padding:56px 0 0}
.footer-grid{padding-bottom:8px}
.footer-grid h3{font-family:var(--display-font);font-size:24px}
.footer-grid a{transition:color .15s ease}
.footer-grid a:hover{color:var(--primary-deep)}
.footer-bottom{margin-top:36px;border-top:1px solid var(--border);padding:18px 0 22px}
.footer-bottom .container{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.footer-bottom p{margin:0;color:var(--muted);font-size:13px;font-weight:700}
.payment-badges{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.payment-badges span{padding:6px 10px;border-radius:8px;background:var(--surface);border:1px solid var(--border-soft);font-size:11px;font-weight:900;color:var(--ink-nav)}

/* V73 — toast notifications + sticky-aware FAB */
.toast-wrap{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:200;display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none}
.toast{min-width:200px;max-width:90vw;padding:12px 18px;border-radius:14px;background:var(--ink-heading);color:#fff;font-weight:800;font-size:14px;box-shadow:0 18px 40px rgba(36,23,66,.3);opacity:0;transform:translateY(12px);transition:opacity .25s ease,transform .25s ease}
.toast.is-in{opacity:1;transform:translateY(0)}
.toast-success{background:linear-gradient(135deg,#27c06a,#1faf5e)}
.toast-error{background:linear-gradient(135deg,#e0566f,#c2415a)}
@media (max-width:767px){.body-has-sticky .toast-wrap{bottom:96px}.body-has-sticky .support-fab{bottom:84px}}

/* V97 - refined readable menu typography */
.nav{
  font-family:"Manrope",Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:15.5px;
  font-weight:850;
  letter-spacing:.01em;
}
.nav a{
  position:relative;
  border-bottom:0;
  padding:10px 0;
  transition:color .18s ease;
}
.nav a::after{
  content:"";
  position:absolute;
  left:50%;
  right:50%;
  bottom:4px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--primary),var(--accent));
  transition:left .2s ease,right .2s ease;
}
.nav a[aria-current="page"],
.nav a:hover{
  border-color:transparent;
  color:var(--primary-deep);
}
.nav a[aria-current="page"]::after,
.nav a:hover::after{
  left:0;
  right:0;
}
@media(max-width:1023px){
  .nav{
    font-size:15px;
    font-weight:850;
  }
  .nav a::after{
    display:none;
  }
}

/* V75 — footer polish + static page beautification */

/* Footer: real breathing room, container padding on every page, refined dividers */
.site-footer{
  margin-top:var(--space-12);
  padding:0;
  background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(255,247,242,.92));
  border-top:1px solid var(--border-soft);
}
.site-footer > .footer-grid,
.site-footer > .footer-grid.container{
  padding:64px 24px 40px;
  gap:48px;
}
.site-footer .footer-grid h3{font-family:var(--display-font);font-size:26px;line-height:1.2;color:var(--ink-heading)}
.site-footer .footer-grid h4{font-size:14px;text-transform:uppercase;letter-spacing:.1em;color:var(--primary-deep);margin:0 0 14px}
.site-footer .footer-grid a{margin:9px 0;font-size:15px;color:var(--ink);font-weight:600;transition:color .15s ease,transform .15s ease}
.site-footer .footer-grid a:hover{color:var(--primary-deep);transform:translateX(2px)}
.site-footer .footer-grid p{margin:0;font-size:15px;line-height:1.6;color:var(--muted)}
.footer-bottom{margin-top:0;padding:20px 24px 28px;border-top:1px solid var(--border-soft);background:rgba(255,255,255,.45)}
.footer-bottom .container{padding:0}
.footer-bottom p{font-size:13px}

/* Non-home pages: give plain content sections a polished hero feel and proper section rail */
:not(.home-page) > main > section.section > .container{
  width:min(100% - 32px,1080px);
  margin-inline:auto;
}
:not(.home-page) > main > section.section{
  padding:clamp(40px,7vw,72px) 0 clamp(40px,6vw,64px);
}
:not(.home-page) > main > section.section:first-of-type{
  background:radial-gradient(circle at 12% 0%,rgba(249,220,220,.34),transparent 30%),radial-gradient(circle at 88% 6%,rgba(205,190,235,.22),transparent 26%),linear-gradient(180deg,rgba(255,255,255,.72),rgba(255,248,243,.18) 70%,transparent);
  padding-top:clamp(56px,9vw,96px);
  margin-bottom:0;
  border-bottom:1px solid var(--border-soft);
}
:not(.home-page) > main > section.section:first-of-type .eyebrow{margin-bottom:14px}
:not(.home-page) > main > section.section:first-of-type .section-title,
:not(.home-page) > main > section.section:first-of-type h1.section-title{
  font-family:var(--display-font);
  font-size:clamp(32px,4.2vw,52px);
  line-height:1.08;
  letter-spacing:-.01em;
  margin:6px 0 14px;
  color:var(--ink-heading);
}
:not(.home-page) > main > section.section:first-of-type .section-copy{
  font-size:18px;
  line-height:1.6;
  color:var(--muted);
  max-width:680px;
}

/* Refined card grids used by FAQs / Contact / How-it-works / Policies */
.section .answer-block{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:32px}
.section .answer-card{
  padding:28px;
  border-radius:var(--radius-xl);
  background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(255,247,251,.62));
  border:1px solid var(--border-soft);
  box-shadow:0 14px 36px rgba(66,39,36,.06);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.section .answer-card:hover{transform:translateY(-3px);box-shadow:0 22px 46px rgba(66,39,36,.1);border-color:rgba(229,111,142,.32)}
.section .answer-card h3{font-family:var(--display-font);font-size:22px;line-height:1.25;margin:0 0 10px;color:var(--ink-heading)}
.section .answer-card p{margin:0;color:var(--muted);font-size:15px;line-height:1.6}
@media (max-width:767px){.section .answer-block{grid-template-columns:1fr;gap:14px}.section .answer-card{padding:22px}}

/* Static pages: give the inline 'margin-top:28px' wrappers a token rhythm */
:not(.home-page) > main > section.section .container > div[style*="margin-top"]{margin-top:36px !important}

/* Long text bodies on policy pages */
:not(.home-page) > main > section.section .container p:not(.eyebrow):not(.section-copy){
  color:var(--ink);
  font-size:16px;
  line-height:1.7;
}

/* V76 — Footer consistency: clear top boundary + brand contact block */

/* Distinct top edge: pink gradient line + soft surface tint so the footer
   always reads as a deliberate, self-contained section on every page. */
.site-footer{
  position:relative;
  margin-top:var(--space-12);
  background:linear-gradient(180deg,#fff7f1 0%,#fff3ec 100%);
  border-top:0;
  box-shadow:inset 0 1px 0 rgba(234,216,207,.65);
}
.site-footer::before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;height:3px;
  background:linear-gradient(90deg,var(--primary) 0%,var(--accent) 45%,var(--primary-deep) 100%);
  opacity:.85;
}

/* Brand contact block injected into the first footer column */
.footer-brand-contact{margin-top:14px;display:grid;gap:6px;font-size:14px;font-weight:600;color:var(--ink)}
.footer-brand-contact a{color:var(--primary-deep);font-weight:800;transition:color .15s ease,transform .15s ease;display:inline-block;margin:0!important}
.footer-brand-contact a:hover{color:var(--primary-bright);transform:translateX(2px)}
.footer-brand-contact span{color:var(--muted);font-weight:700}

/* Sharpen the footer-bottom: 2-line layout with brand mark + payments */
.footer-bottom{margin-top:8px;padding:24px 24px 32px;border-top:1px solid var(--border-soft);background:rgba(255,255,255,.5)}
.footer-bottom .container{padding:0;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.footer-bottom .footer-bottom-left{display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:13px;font-weight:700}
.footer-bottom .footer-bottom-left strong{color:var(--ink-heading);font-family:var(--display-font);font-size:16px;font-weight:700}
.footer-bottom .footer-bottom-left .dot{width:4px;height:4px;border-radius:50%;background:var(--border);display:inline-block}
.payment-badges span{padding:7px 11px;background:#fff;border:1px solid var(--border-soft);box-shadow:0 4px 10px rgba(66,39,36,.05)}

@media (max-width:767px){
  .site-footer > .footer-grid,
  .site-footer > .footer-grid.container{padding:48px 20px 32px;gap:32px}
  .footer-bottom{padding:20px 20px 28px}
  .footer-bottom .container{flex-direction:column;align-items:flex-start;gap:14px}
}

/* V77 — top offer strip */
.offer-strip{
  display:flex;align-items:center;justify-content:center;gap:8px;
  padding:9px 16px;
  background:linear-gradient(90deg,var(--primary-deep) 0%,var(--primary) 50%,var(--primary-bright) 100%);
  color:#fff;font-size:13px;font-weight:800;line-height:1.3;text-align:center;
}
.offer-strip strong{font-weight:900;letter-spacing:.02em}
.offer-strip .offer-code{padding:2px 8px;border:1px dashed rgba(255,255,255,.7);border-radius:6px;font-weight:900}
@media (max-width:767px){.offer-strip{font-size:11.5px;padding:8px 12px;gap:6px}}

/* V78 — long-form policy / legal article layout */
.policy-section{padding-top:8px!important}
.policy-body{width:min(100% - 32px,820px);margin:8px auto 0}
.policy-body .policy-updated{display:inline-block;margin:0 0 8px;padding:6px 12px;border-radius:999px;background:var(--surface-soft);color:var(--primary-deep);font-size:13px;font-weight:800}
.policy-body h2{font-family:var(--display-font);font-size:clamp(19px,2.3vw,25px);line-height:1.25;color:var(--ink-heading);margin:30px 0 8px}
.policy-body h3{font-size:16px;color:var(--ink-heading);margin:18px 0 4px;font-weight:900}
.policy-body p,.policy-body li{color:var(--ink);font-size:16px;line-height:1.75}
.policy-body p{margin:8px 0}
.policy-body ul{margin:8px 0;padding-left:22px}
.policy-body li{margin:6px 0}
.policy-body a{color:var(--primary-deep);font-weight:700;text-decoration:underline;text-underline-offset:2px}
.policy-body .policy-intro{font-size:17px;color:var(--muted)}
.policy-toc{margin:18px 0 6px;padding:18px 20px;border-radius:var(--radius-lg);background:linear-gradient(145deg,rgba(255,255,255,.9),rgba(255,247,251,.6));border:1px solid var(--border-soft)}
.policy-toc strong{display:block;color:var(--ink-heading);margin-bottom:8px}
.policy-toc ol{margin:0;padding-left:20px;columns:2;column-gap:28px}
.policy-toc a{font-weight:600}
@media (max-width:600px){.policy-toc ol{columns:1}}

/* V79 — premium mobile header buttons: Menu (hamburger) + Cart as matching circles */
@media (max-width:767px){
  .menu-toggle,.cart-wrap{
    width:46px;min-width:46px;height:46px;padding:0;
    display:grid;place-items:center;border-radius:999px;
    border:1px solid var(--border-soft);
    background:linear-gradient(180deg,#fff,rgba(255,247,251,.85));
    box-shadow:0 10px 22px rgba(66,39,36,.08);
  }
  .menu-toggle{color:var(--ink-nav);font-size:0}
  .menu-toggle::before{
    content:"";display:block;width:18px;height:13px;
    background:
      linear-gradient(currentColor,currentColor) left top/100% 2.2px no-repeat,
      linear-gradient(currentColor,currentColor) left center/100% 2.2px no-repeat,
      linear-gradient(currentColor,currentColor) left bottom/100% 2.2px no-repeat;
  }
  .cart-wrap .cart-count{right:-3px;top:-3px}
}

/* Account / profile area */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.google-mark.has-photo{background-size:cover;background-position:center;color:transparent}
.account-section{padding:24px 0 56px}
.account-section .account-root{margin-top:0}
.account-root{margin-top:28px}
.account-layout{display:grid;grid-template-columns:268px minmax(0,1fr);gap:24px;align-items:start}
.account-card,.account-sidebar{border:1px solid var(--border-soft);background:#fff;box-shadow:0 16px 38px rgba(66,39,36,.06);border-radius:var(--radius-xl)}

/* Sidebar */
.account-sidebar{position:sticky;top:96px;padding:20px;display:grid;gap:16px}
.account-profile{display:grid;gap:6px;justify-items:start;padding-bottom:16px;border-bottom:1px solid var(--border-soft)}
.account-avatar{width:60px;height:60px;border-radius:999px;background:var(--primary-soft);display:grid;place-items:center;color:var(--primary-deep);font-weight:900;font-size:24px;object-fit:cover}
.account-profile strong{color:var(--ink-heading);font-size:17px;line-height:1.25}
.account-profile small{color:var(--muted);font-weight:700;font-size:13px;word-break:break-word}
.account-nav{display:grid;gap:4px}
.account-nav-item{display:flex;align-items:center;gap:12px;min-height:44px;padding:0 14px;border-radius:14px;color:var(--ink);font-weight:800;font-size:15px;transition:background .15s ease,color .15s ease}
.account-nav-item:hover{background:var(--surface-soft);color:var(--primary-deep)}
.account-nav-item[aria-current="page"]{background:var(--primary-soft);color:var(--primary-deep)}
.account-nav-icon{font-size:17px;width:20px;text-align:center;opacity:.85}
.account-signout{margin-top:6px;min-height:42px;padding:0 16px;border-radius:var(--radius-pill);border:1px solid var(--border);background:#fff;color:var(--primary-deep);font-weight:900;cursor:pointer;transition:background .15s ease}
.account-signout:hover{background:var(--surface-soft)}

/* Main column */
.account-main{min-width:0;display:grid;gap:20px}
.account-card{padding:24px}
.account-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.account-card-head h2,.account-card>h2{margin:0;color:var(--ink-heading);font-family:var(--display-font);font-size:21px;line-height:1.2}
.account-link{background:none;border:none;padding:0;color:var(--primary-deep);font-weight:900;font-size:14px;cursor:pointer;text-decoration:none}
.account-link:hover{text-decoration:underline}

/* Hero + section heads */
.account-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:26px;border-radius:var(--radius-xl);background:linear-gradient(135deg,var(--primary-soft),#fff);border:1px solid var(--border-soft)}
.account-hero h1{margin:4px 0 6px;font-family:var(--display-font);font-size:clamp(24px,3vw,30px);color:var(--ink-heading)}
.account-hero p{margin:0;color:var(--muted);font-weight:600}
.account-hero .eyebrow{color:var(--primary-deep)}
.account-section-head h1{margin:0 0 4px;font-family:var(--display-font);font-size:clamp(23px,2.6vw,28px);color:var(--ink-heading)}
.account-section-head p{margin:0;color:var(--muted);font-weight:600}

/* Stat tiles */
.account-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.account-stat{display:grid;gap:2px;padding:18px;border-radius:var(--radius-lg);border:1px solid var(--border-soft);background:#fff;box-shadow:0 12px 28px rgba(66,39,36,.05);cursor:pointer;text-align:left;transition:transform .15s ease,box-shadow .15s ease}
.account-stat:hover{transform:translateY(-2px);box-shadow:0 18px 36px rgba(66,39,36,.09)}
.account-stat strong{font-family:var(--display-font);font-size:30px;color:var(--primary-deep);line-height:1}
.account-stat span{color:var(--muted);font-weight:800;font-size:13px}

.account-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.account-help-card p{color:var(--muted);margin:0 0 14px}
.account-help-card small{display:block;margin-top:12px;color:var(--muted);font-weight:700}
.account-help-card a{color:var(--primary-deep);font-weight:800}

/* Orders */
.account-orders{display:grid;gap:16px}
.account-order{border:1px solid var(--border-soft);border-radius:var(--radius-lg);background:#fff;overflow:hidden}
.account-order-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;background:var(--surface-soft);border-bottom:1px solid var(--border-soft)}
.account-order-id{display:block;font-weight:900;color:var(--ink-heading);font-size:15px}
.account-order-date{display:block;color:var(--muted);font-weight:700;font-size:12.5px;margin-top:2px}
.account-badge{font-size:12px;font-weight:900;padding:5px 12px;border-radius:var(--radius-pill);white-space:nowrap}
.account-badge.is-pending{background:#fff3e0;color:#9a6207}
.account-badge.is-progress{background:#e7f0ff;color:#2456b0}
.account-badge.is-done{background:#e3f5ec;color:var(--success)}
.account-badge.is-cancelled{background:#fdecec;color:var(--danger)}
.account-order-items{list-style:none;margin:0;padding:14px 18px;display:grid;gap:12px}
.account-order-item{display:flex;align-items:center;gap:12px;min-width:0}
.account-order-item img,.account-order-thumb{width:52px;height:52px;border-radius:12px;object-fit:cover;background:var(--primary-soft);display:grid;place-items:center;font-size:22px;flex:0 0 auto}
.account-order-item-text{display:grid;gap:2px;min-width:0}
.account-order-item-text strong{color:var(--ink-heading);font-size:15px;line-height:1.3;word-break:break-word}
.account-order-item-text small{color:var(--muted);font-weight:700;font-size:12.5px}
.account-order-more{color:var(--muted);font-weight:800;font-size:13px}
.account-order-foot{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:14px 18px;border-top:1px solid var(--border-soft)}
.account-order-foot span{display:block;color:var(--muted);font-weight:700;font-size:12px}
.account-order-foot strong{color:var(--ink-heading);font-size:15px}
.account-order-total strong{color:var(--primary-deep);font-size:17px}
.account-order-ship{text-align:right}

/* Addresses */
.account-address-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.account-address{border:1px solid var(--border-soft);border-radius:var(--radius-lg);padding:18px;background:#fff;display:grid;gap:6px}
.account-address.is-compact{border:none;padding:0;box-shadow:none}
.account-address-head{display:flex;align-items:center;gap:10px}
.account-address-head strong{color:var(--ink-heading)}
.account-tag{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;color:var(--primary-deep);background:var(--primary-soft);padding:3px 9px;border-radius:var(--radius-pill)}
.account-address-lines{margin:0;color:var(--ink);line-height:1.6;font-weight:600}
.account-address-phone{margin:0;color:var(--muted);font-weight:700;font-size:13.5px}
.account-address small{color:var(--muted);font-weight:700;font-size:12.5px}
.account-hint{color:var(--muted);font-weight:600;font-size:13.5px}
.account-hint a{color:var(--primary-deep);font-weight:800}

/* Payments */
.account-pay-note{display:flex;gap:14px;align-items:flex-start;margin-bottom:16px}
.account-pay-icon{font-size:26px;flex:0 0 auto}
.account-pay-note h2{margin:0 0 6px;font-size:19px;color:var(--ink-heading);font-family:var(--display-font)}
.account-pay-note p{margin:0;color:var(--muted)}
.account-pay-methods{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}
.account-pay-pill{padding:8px 16px;border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface-soft);color:var(--ink-heading);font-weight:800;font-size:13.5px}

/* Photos */
.account-photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.account-photo{border:1px solid var(--border-soft);border-radius:var(--radius-lg);overflow:hidden;background:#fff;display:flex;flex-direction:column}
.account-photo-media{aspect-ratio:1;background:var(--primary-soft);display:grid;place-items:center}
.account-photo-media img{width:100%;height:100%;object-fit:cover}
.account-photo-thumb{font-size:34px}
.account-photo-body{padding:14px;display:grid;gap:4px}
.account-photo-body strong{color:var(--ink-heading);font-size:14.5px;line-height:1.3;word-break:break-word}
.account-photo-body small{color:var(--muted);font-weight:700;font-size:12.5px}
.account-photo-body a{color:var(--primary-deep);font-weight:800}
.account-photo-delete{margin-top:6px;justify-self:start;background:none;border:none;padding:0;color:var(--danger);font-weight:800;font-size:13px;cursor:pointer}
.account-photo-delete:hover{text-decoration:underline}

/* Previews */
.account-preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.account-preview{border:1px solid var(--border-soft);border-radius:var(--radius-lg);overflow:hidden;background:#fff;display:flex;flex-direction:column}
.account-preview-media{aspect-ratio:1;background:var(--primary-soft);display:grid;place-items:center;overflow:hidden}
.account-preview-media img{width:100%;height:100%;object-fit:cover;transition:transform 0.3s ease}
.account-preview-media img:hover{transform:scale(1.04)}
.account-preview-thumb{font-size:34px}
.account-preview-body{padding:14px;display:flex;flex-direction:column;gap:4px;flex:1}
.account-preview-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.account-preview-head strong{color:var(--ink-heading);font-size:14.5px;line-height:1.3;word-break:break-word}
.account-preview small{color:var(--muted);font-weight:700;font-size:12.5px}
.account-preview .account-link{margin-top:auto;padding-top:8px}

/* Profile */
.account-profile-row{display:flex;align-items:center;gap:16px;margin-bottom:18px}
.account-avatar-lg{width:72px;height:72px;font-size:28px}
.account-profile-row strong{display:block;color:var(--ink-heading);font-size:18px}
.account-profile-row span{color:var(--muted);font-weight:700}
.account-detail-list{margin:0;display:grid;gap:1px;border:1px solid var(--border-soft);border-radius:var(--radius);overflow:hidden}
.account-detail-list>div{display:flex;justify-content:space-between;gap:14px;padding:14px 16px;background:#fff}
.account-detail-list dt{margin:0;color:var(--muted);font-weight:700}
.account-detail-list dd{margin:0;color:var(--ink-heading);font-weight:800}
.account-toggle{display:flex;gap:12px;align-items:flex-start;cursor:pointer}
.account-toggle input{margin-top:3px;width:18px;height:18px;accent-color:var(--primary)}
.account-toggle span{color:var(--ink);font-weight:600;line-height:1.5}
.account-card .account-toggle+.account-hint{margin-top:12px;display:block}
.account-card .account-signout{margin-top:14px}

/* Sign in panel */
.account-signin{max-width:560px;margin:8px auto;text-align:center;padding:36px 28px;border:1px solid var(--border-soft);border-radius:var(--radius-xl);background:linear-gradient(160deg,#fff,var(--surface-soft));box-shadow:0 16px 38px rgba(66,39,36,.06)}
.account-signin h1{margin:6px 0 10px;font-family:var(--display-font);font-size:clamp(24px,3vw,30px);color:var(--ink-heading)}
.account-signin p{margin:0 auto 22px;color:var(--muted);max-width:420px;line-height:1.6}
.btn-google{display:inline-flex;align-items:center;gap:10px}
.btn-google .google-mark{width:22px;height:22px;border-radius:999px;background:#fff;color:var(--primary-deep);display:grid;place-items:center;font-weight:900;font-size:13px}
.account-signin-points{list-style:none;margin:24px auto 0;padding:0;display:grid;gap:10px;max-width:300px;text-align:left}
.account-signin-points li{color:var(--ink);font-weight:700;font-size:14.5px}
.preview-signin-modal{position:fixed;inset:0;z-index:230;display:grid;place-items:center;padding:24px;background:rgba(30,24,38,.58);backdrop-filter:blur(10px)}
body.modal-open{overflow:hidden}
.preview-signin-panel{position:relative;width:min(92vw,560px);padding:38px 30px 34px;border:1px solid #f5c8d6;border-radius:28px;background:linear-gradient(160deg,#fff,#fff7fb);box-shadow:0 30px 90px rgba(36,23,66,.22);text-align:center}
.preview-signin-close{position:absolute;right:18px;top:18px;width:42px;height:42px;border:1px solid #f6c9d6;border-radius:999px;background:#fff;color:var(--primary-deep);font-size:28px;line-height:1;cursor:pointer}
.preview-signin-logo{display:block;width:132px;height:auto;margin:0 auto 22px}
.preview-signin-kicker{margin:0 0 8px;color:var(--primary);font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.preview-signin-panel h2{margin:0 0 10px;font-family:var(--display-font);font-size:clamp(28px,4vw,38px);color:var(--ink-heading)}
.preview-signin-panel p:not(.preview-signin-kicker){margin:0 auto 22px;max-width:420px;color:var(--muted);font-weight:800;line-height:1.55}

/* Empty states + notices */
.account-empty-state{text-align:center;padding:34px 20px;display:grid;gap:8px;justify-items:center}
.account-empty-icon{font-size:38px}
.account-empty-state strong{color:var(--ink-heading);font-size:17px}
.account-empty-state p{color:var(--muted);margin:0 auto;max-width:380px}
.account-empty-state .btn{margin-top:8px}
.account-notice{padding:34px;border:1px solid var(--border-soft);border-radius:var(--radius-xl);background:#fff;text-align:center;box-shadow:0 16px 38px rgba(66,39,36,.06)}
.account-notice h2{margin:0 0 8px;font-family:var(--display-font);color:var(--ink-heading)}
.account-notice p{margin:0;color:var(--muted)}

/* Loading skeleton */
.account-skel{display:block;border-radius:8px;background:linear-gradient(90deg,#f1e6e0 25%,#f8f0eb 37%,#f1e6e0 63%);background-size:400% 100%;animation:accountShimmer 1.4s ease infinite}
.account-skel-avatar{width:60px;height:60px;border-radius:999px}
.account-skel-line{height:13px;margin:6px 0}
.account-skel-block{height:120px;margin-top:14px}
@keyframes accountShimmer{0%{background-position:100% 0}100%{background-position:0 0}}

@media(max-width:1023px){
  .account-layout{grid-template-columns:1fr}
  .account-sidebar{position:static}
  .account-nav{grid-auto-flow:column;grid-auto-columns:max-content;overflow-x:auto;gap:6px;-webkit-overflow-scrolling:touch}
  .account-nav-item{white-space:nowrap}
  .account-grid-2{grid-template-columns:1fr}
}
@media(max-width:640px){
  .account-card{padding:18px}
  .account-stats{grid-template-columns:1fr 1fr 1fr;gap:10px}
  .account-stat{padding:14px}
  .account-stat strong{font-size:24px}
  .account-address-grid,.account-photo-grid,.account-preview-grid{grid-template-columns:1fr}
  .account-photo-grid{grid-template-columns:1fr 1fr}
  .account-order-foot{flex-direction:column;align-items:flex-start;gap:8px}
  .account-order-ship{text-align:left}
}

/* SEO Phase 1 — blog list + article layout */
.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:8px}
.blog-card{display:flex;flex-direction:column;border-radius:var(--radius-xl);border:1px solid var(--border-soft);background:linear-gradient(145deg,#fff,#fff7fb);box-shadow:0 14px 36px rgba(66,39,36,.06);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}
.blog-card:hover{transform:translateY(-4px);box-shadow:0 22px 48px rgba(66,39,36,.1)}
.blog-card-body{padding:20px;display:flex;flex-direction:column;gap:8px;flex:1}
.blog-card .tag{color:var(--primary-deep);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.blog-card h2{font-family:var(--display-font);font-size:20px;line-height:1.25;margin:0;color:var(--ink-heading)}
.blog-card p{margin:0;color:var(--muted);font-size:14px;line-height:1.55}
.blog-card a.read{color:var(--primary-deep);font-weight:800;margin-top:auto;text-decoration:none}
@media(max-width:1023px){.blog-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.blog-grid{grid-template-columns:1fr}}
.article-body{width:min(100% - 32px,760px);margin:8px auto 0}
.article-meta{color:var(--muted);font-size:13px;font-weight:700;margin:0 0 6px}
.article-body h2{font-family:var(--display-font);font-size:clamp(20px,2.4vw,26px);color:var(--ink-heading);margin:28px 0 8px}
.article-body p{font-size:16px;line-height:1.75;color:var(--ink);margin:8px 0}
.article-body ul{padding-left:22px;margin:8px 0}
.article-body li{font-size:16px;line-height:1.7;color:var(--ink);margin:6px 0}
.article-body a{color:var(--primary-deep);font-weight:700;text-decoration:underline}
.article-cta{margin:30px 0 0;padding:22px;border-radius:var(--radius-lg);background:linear-gradient(135deg,var(--primary),var(--accent));color:#fff;text-align:center}
.article-cta h3{margin:0 0 12px;font-family:var(--display-font);color:#fff;font-size:22px}
.article-cta .btn{background:#fff;color:var(--primary-deep)}

/* ===== V88 — Mobile navigation drawer, animated hamburger & compact footer ===== */
.nav-extra{display:none}
.nav-backdrop{position:fixed;inset:0;background:rgba(40,24,28,.42);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s ease;z-index:38}
.nav-backdrop.is-visible{opacity:1;visibility:visible}
body.nav-locked{overflow:hidden}

@media (max-width:1023px){
  /* Animated hamburger — three bars geometrically centred, morph to an X when open */
  .menu-toggle{position:relative;z-index:60;font-size:0}
  .menu-toggle::before,.menu-toggle::after{content:none !important}
  .menu-toggle .ham{display:block;position:relative;width:20px;height:14px}
  .menu-toggle .ham i{position:absolute;left:0;right:0;height:2.2px;border-radius:2px;background:var(--ink-heading);transition:transform .28s ease,opacity .18s ease,top .28s ease}
  .menu-toggle .ham i:nth-child(1){top:0}
  .menu-toggle .ham i:nth-child(2){top:5.9px}
  .menu-toggle .ham i:nth-child(3){top:11.8px}
  .menu-toggle.is-open .ham i:nth-child(1){top:5.9px;transform:rotate(45deg)}
  .menu-toggle.is-open .ham i:nth-child(2){opacity:0}
  .menu-toggle.is-open .ham i:nth-child(3){top:5.9px;transform:rotate(-45deg)}

  /* Floating drawer panel */
  .nav{position:fixed;left:12px;right:12px;top:80px;z-index:45;display:grid !important;grid-template-columns:1fr;gap:2px;background:#fff;border:1px solid var(--border-soft);border-radius:22px;padding:10px;box-shadow:0 28px 60px rgba(66,39,36,.22);opacity:0;visibility:hidden;transform:translateY(-12px) scale(.985);transform-origin:top center;transition:opacity .24s ease,transform .24s ease,visibility .24s ease;max-height:calc(100dvh - 96px);overflow-y:auto;-webkit-overflow-scrolling:touch}
  .nav.is-open{opacity:1;visibility:visible;transform:translateY(0) scale(1)}
  .nav a{display:flex;align-items:center;gap:12px;padding:14px 16px;border:0 !important;border-radius:14px;font-size:16px;font-weight:800;color:var(--ink-heading);text-decoration:none}
  .nav a:active{background:var(--surface-soft)}
  .nav a[aria-current="page"]{background:var(--primary-soft);color:var(--primary-deep)}
  .nav-extra{display:grid;gap:8px;margin-top:8px;padding-top:12px;border-top:1px solid var(--border-soft)}
  .nav-extra-link{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;font-weight:800;color:var(--ink-heading);background:var(--surface-soft);text-decoration:none}
  .nav-extra-link:active{background:var(--primary-soft)}
  .nav-extra-ico{font-size:18px;line-height:1}
  .nav a.nav-extra-cta{margin-top:2px;width:100%;justify-content:center;color:#fff}
}

/* Compact, tidy footer on phones — brand on top, link groups in a 2-up grid */
@media (max-width:767px){
  .site-footer{padding:28px 0 30px}
  .footer-grid{grid-template-columns:1fr 1fr;gap:18px 14px}
  .footer-grid>div:first-child{grid-column:1 / -1}
  .footer-grid>div:first-child p{font-size:13.5px;line-height:1.5;margin:0}
  .footer-grid h3{font-size:20px;margin:0 0 6px}
  .footer-grid h4{font-size:13.5px;letter-spacing:.02em;margin:0 0 4px}
  .footer-grid p{margin:0;font-size:13.5px;line-height:1.5}
  .footer-grid a{margin:4px 0;font-size:14px}
}

/* V89 — coordinated header/footer cleanup */
.site-footer{padding:0!important}
.site-footer > .footer-grid,
.site-footer > .footer-grid.container{padding-bottom:24px}
.footer-brand-contact{margin-top:10px}
.footer-bottom{
  margin-top:0;
  padding:9px 16px calc(9px + env(safe-area-inset-bottom));
  background:#fff;
  border-top:1px solid var(--border-soft);
}
.footer-bottom .container{justify-content:center}
.footer-bottom .footer-bottom-left{
  justify-content:center;
  gap:0;
  width:100%;
  font-size:12.5px;
  line-height:1.35;
  text-align:center;
}

@media (max-width:1023px){
  .header-inner{
    grid-template-columns:minmax(0,1fr) auto auto auto;
    gap:8px;
  }
  .header-actions{display:contents}
  .google-signin{
    order:2;
    width:46px;
    min-width:46px;
    height:46px;
    padding:0;
    display:inline-flex;
    justify-content:center;
    gap:0;
  }
  .google-signin span:last-child{display:none}
  .google-mark{width:24px;height:24px}
  .menu-toggle{order:3}
  .cart-wrap{order:4}
  .brand{order:1}
  .cart-label{display:none}
  .nav{order:5}
}

@media (max-width:767px){
  .site-footer > .footer-grid,
  .site-footer > .footer-grid.container{padding:34px 20px 22px}
  .footer-bottom{padding:8px 14px calc(8px + env(safe-area-inset-bottom))}
  .footer-bottom .container{align-items:center}
  .header-inner{height:68px}
  .brand-logo{width:118px;max-height:42px}
  .google-signin,.menu-toggle,.cart-wrap{
    width:42px;
    min-width:42px;
    height:42px;
  }
  .google-mark{width:23px;height:23px}
}

/* ===== V89 — Footer social links (Instagram / Facebook / Pinterest) ===== */
.footer-bottom .container{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.footer-social{display:inline-flex;align-items:center;gap:10px}
.footer-social a{width:38px;height:38px;display:inline-grid;place-items:center;border-radius:var(--radius-pill);border:1px solid var(--border-soft);background:#fff;color:var(--primary-deep);box-shadow:0 6px 16px rgba(66,39,36,.06);transition:transform .15s ease,background .15s ease,color .15s ease,box-shadow .15s ease}
.footer-social a:hover{transform:translateY(-2px);background:var(--primary-deep);color:#fff;box-shadow:0 12px 24px rgba(157,70,93,.22)}
.footer-social svg{display:block}
@media (max-width:767px){
  .footer-bottom .container{flex-direction:column;gap:14px;text-align:center}
  .footer-social{justify-content:center}
}

/* V90 — keep floating support clear of sticky bars, badges, and footer content */
.support-fab{
  bottom:calc(22px + env(safe-area-inset-bottom));
}
@media (max-width:1023px){
  .support-fab{
    right:16px;
    bottom:calc(22px + env(safe-area-inset-bottom));
  }
}
@media (max-width:767px){
  body:not(.body-has-sticky){
    padding-bottom:88px;
  }
  .support-fab{
    right:14px;
    bottom:calc(18px + env(safe-area-inset-bottom));
  }
  .body-has-sticky .support-fab{
    bottom:calc(104px + env(safe-area-inset-bottom));
  }
  .body-has-sticky .toast-wrap{
    bottom:calc(118px + env(safe-area-inset-bottom));
  }
}

/* V91 — production polish: Google sign-in, footer socials, compact mobile drawer */
.google-signin,
.btn-google{
  background:#fff!important;
  border-color:#dadce0!important;
  color:#3c4043!important;
  box-shadow:0 10px 24px rgba(60,64,67,.08)!important;
}
.google-signin:hover,
.btn-google:hover{
  box-shadow:0 12px 28px rgba(60,64,67,.14)!important;
}
.google-mark{
  position:relative;
  overflow:hidden;
  color:transparent!important;
  background:#fff!important;
  box-shadow:inset 0 0 0 1px rgba(60,64,67,.14)!important;
}
.google-mark::before{
  content:"";
  position:absolute;
  inset:4px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath fill='%23EA4335' d='M24 9.5c3.54 0 6.71 1.22 9.21 3.6l6.85-6.85C35.9 2.38 30.47 0 24 0 14.62 0 6.51 5.38 2.56 13.22l7.98 6.19C12.43 13.72 17.74 9.5 24 9.5z'/%3E%3Cpath fill='%234285F4' d='M46.98 24.55c0-1.57-.15-3.09-.38-4.55H24v9.02h12.94c-.58 2.96-2.26 5.48-4.78 7.18l7.73 6c4.51-4.18 7.09-10.36 7.09-17.65z'/%3E%3Cpath fill='%23FBBC05' d='M10.53 28.59c-.48-1.45-.76-2.99-.76-4.59s.27-3.14.76-4.59l-7.98-6.19C.92 16.46 0 20.12 0 24s.92 7.54 2.56 10.78l7.97-6.19z'/%3E%3Cpath fill='%2334A853' d='M24 48c6.48 0 11.93-2.13 15.89-5.81l-7.73-6c-2.15 1.45-4.92 2.3-8.16 2.3-6.26 0-11.57-4.22-13.47-9.91l-7.98 6.19C6.51 42.62 14.62 48 24 48z'/%3E%3Cpath fill='none' d='M0 0h48v48H0z'/%3E%3C/svg%3E") center/contain no-repeat;
}
.google-mark.has-photo::before,
.google-mark.has-initial::before{
  display:none;
}
.google-mark.has-photo{
  background-size:cover!important;
  background-position:center!important;
}
.google-mark.has-initial{
  color:var(--primary-deep)!important;
  display:inline-grid;
  place-items:center;
}
.footer-social-block{
  margin-top:18px;
}
.footer-social-block h4{
  margin:0 0 10px!important;
}
.footer-social{
  display:inline-flex;
  align-items:center;
  gap:12px;
}
.footer-social a{
  width:46px;
  height:46px;
  display:inline-grid!important;
  place-items:center;
  border-radius:var(--radius-pill);
  border:1px solid var(--border-soft);
  background:#fff;
  color:var(--primary-deep);
  box-shadow:0 8px 18px rgba(66,39,36,.07);
  transition:transform .15s ease,background .15s ease,color .15s ease,box-shadow .15s ease;
}
.footer-social a:hover{
  transform:translateY(-2px);
  background:var(--primary-deep);
  color:#fff;
  box-shadow:0 14px 28px rgba(157,70,93,.24);
}
.footer-social svg{display:block}
.footer-bottom .footer-social{
  display:none!important;
}
@media (max-width:1023px){
  .nav{
    left:14px!important;
    right:14px!important;
    top:74px!important;
    gap:1px!important;
    max-height:min(78dvh,520px)!important;
    padding:8px!important;
    border-radius:18px!important;
  }
  .nav a{
    min-height:42px!important;
    padding:9px 12px!important;
    border-radius:12px!important;
    font-size:14px!important;
    line-height:1.25!important;
  }
  .nav-extra{
    gap:6px!important;
    margin-top:5px!important;
    padding-top:7px!important;
  }
  .nav-extra-link{
    min-height:40px!important;
    padding:8px 12px!important;
    border-radius:12px!important;
    font-size:13.5px!important;
  }
  .nav a.nav-extra-cta{
    min-height:40px!important;
    padding:0 12px!important;
    font-size:13.5px!important;
  }
}
@media (max-width:767px){
  .footer-social-block{
    margin-top:14px;
  }
  .footer-social{
    gap:10px;
  }
  .footer-social a{
    width:44px;
    height:44px;
  }
}

/* V94 product-card image hover swap */
.product-card.has-hover-swap .product-media img{
  transition:opacity .16s ease,transform .22s ease,filter .22s ease;
}
.product-card.has-hover-swap .product-media img.is-swapping{
  opacity:.18;
}
@media (prefers-reduced-motion:reduce){
  .product-card.has-hover-swap .product-media img{
    transition:none;
  }
}

/* V95 remove the mobile-only empty page tail below the footer */
@media (max-width: 767px) {
  body:not(.body-has-sticky) {
    padding-bottom: 0 !important;
  }
}

/* V96 WhatsApp support button */
.support-fab {
  min-height: 52px;
  padding: 0 17px;
  gap: 9px;
  border: 1px solid rgba(255, 255, 255, .22);
  background: #25d366 !important;
  color: #fff;
  box-shadow: 0 16px 34px rgba(37, 211, 102, .32);
}

.support-fab:hover {
  background: #1ebe5d !important;
  box-shadow: 0 20px 42px rgba(37, 211, 102, .42);
}

.support-fab .support-fab-icon {
  display: inline-grid;
  width: 26px;
  height: 26px;
  place-items: center;
  font-size: 0;
}

.support-fab .support-fab-icon svg {
  display: block;
  width: 26px;
  height: 26px;
}

.support-fab .support-fab-label {
  line-height: 1;
}

@media (max-width: 767px) {
  .support-fab {
    width: 56px;
    min-width: 56px;
    min-height: 56px;
    padding: 0;
    border-radius: 999px;
  }

  .support-fab .support-fab-icon,
  .support-fab .support-fab-icon svg {
    width: 29px;
    height: 29px;
  }
}

/* V97 - keep WhatsApp clear of mobile product actions */
@media (max-width: 767px) {
  .body-product-page .support-fab {
    right: 12px;
    bottom: 104px;
    transform: scale(.92);
    transform-origin: right bottom;
  }

  .body-product-page.body-has-sticky .support-fab {
    bottom: 116px;
  }
}

/* V99 - PayU legal footer and policy page polish */
.footer-grid-legal {
  grid-template-columns: 1.1fr 1.45fr .75fr .75fr .95fr;
  align-items: start;
  gap: 26px;
}

.site-footer > .footer-grid,
.site-footer > .footer-grid.container {
  padding: 44px 24px 28px;
}

.footer-brand p,
.footer-legal p,
.footer-legal address {
  color: var(--muted);
  font-style: normal;
  line-height: 1.55;
  margin: 8px 0 0;
}

.footer-legal strong {
  color: var(--ink-heading);
}

.footer-legal a,
.site-footer a {
  overflow-wrap: anywhere;
}

.footer-legal p a {
  display: inline;
  margin: 0;
}

.footer-bottom {
  border-top: 1px solid rgba(114, 70, 88, .12);
  padding: 16px 0 20px;
  background: rgba(255, 248, 250, .7);
}

.footer-bottom-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  font-size: 13px;
  color: var(--muted);
}

.footer-bottom-left {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.footer-bottom-left strong {
  color: var(--ink-heading);
}

.footer-bottom-left .dot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: rgba(214, 89, 126, .55);
}

.footer-social {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.footer-social a {
  font-weight: 800;
  color: var(--primary-deep);
}

.breadcrumb {
  display: flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 20px;
  font-size: 13px;
  font-weight: 800;
  color: var(--muted);
}

.breadcrumb a {
  color: var(--primary-deep);
}

.policy-page {
  padding: 44px 0 58px;
  background: linear-gradient(180deg, #fffaf7 0%, #fff 100%);
}

.policy-container {
  width: min(100% - 32px, 1040px);
  margin: 0 auto;
}

.policy-hero {
  margin-bottom: 28px;
}

.policy-hero h1 {
  margin: 8px 0 12px;
  font-size: clamp(32px, 4vw, 52px);
  line-height: 1;
  color: var(--ink-heading);
}

.policy-hero p {
  max-width: 760px;
  color: var(--muted);
  font-size: 17px;
  line-height: 1.65;
}

.policy-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.policy-card {
  padding: 22px;
  border: 1px solid rgba(229, 111, 142, .18);
  border-radius: 18px;
  background: rgba(255, 255, 255, .9);
  box-shadow: 0 14px 32px rgba(104, 53, 74, .06);
}

.policy-card h2 {
  margin: 0 0 10px;
  font-size: 22px;
  line-height: 1.2;
  color: var(--ink-heading);
}

.policy-card h3 {
  margin: 18px 0 8px;
  font-size: 17px;
  color: var(--ink-heading);
}

.policy-card p,
.policy-card li {
  color: var(--text);
  font-size: 15px;
  line-height: 1.7;
}

.policy-card ul {
  padding-left: 20px;
  margin: 10px 0 0;
}

.policy-wide {
  grid-column: 1 / -1;
}

.policy-list {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.policy-list li {
  padding: 10px 12px;
  border-radius: 12px;
  background: rgba(255, 246, 250, .8);
}

.contact-reasons-section {
  margin-top: 18px;
  padding: 24px;
  border: 1px solid rgba(229, 111, 142, .16);
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(255, 255, 255, .95), rgba(255, 248, 243, .75));
  box-shadow: 0 14px 32px rgba(104, 53, 74, .05);
}

.contact-reasons-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 16px;
}

.contact-reasons-head h2 {
  margin: 0;
  font-size: 24px;
  line-height: 1.2;
  color: var(--ink-heading);
}

.contact-reasons-head p {
  max-width: 520px;
  margin: 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.55;
}

.contact-reasons {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.contact-reason {
  min-height: 138px;
  padding: 18px;
  border: 1px solid rgba(114, 70, 88, .12);
  border-radius: 14px;
  background: #fff;
}

.contact-reason span {
  display: block;
  margin-bottom: 8px;
  color: var(--primary-deep);
  font-size: 13px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.contact-reason p {
  margin: 0;
  color: var(--ink);
  font-size: 15px;
  line-height: 1.55;
}

@media (max-width: 960px) {
  .footer-grid-legal {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .footer-legal {
    grid-column: 1 / -1;
  }

  .policy-grid {
    grid-template-columns: 1fr;
  }

  .contact-reasons-head {
    display: block;
  }

  .contact-reasons-head p {
    margin-top: 6px;
  }

  .contact-reasons {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .footer-grid-legal {
    grid-template-columns: 1fr;
  }

  .footer-bottom-inner {
    align-items: flex-start;
    flex-direction: column;
  }

  .policy-page {
    padding: 30px 0 44px;
  }

  .policy-hero h1 {
    font-size: 31px;
  }

  .policy-card {
    padding: 18px;
    border-radius: 16px;
  }

  .policy-card h2 {
    font-size: 20px;
  }

  .contact-reasons-section {
    padding: 18px;
  }
}
