:root{
  --white:#FFFFFF;--soft:#F9F9F9;--line:#DFDFDF;
  --text:#324F4D;--muted:#324F4D;--rose:#BB6765;--pink:#F4C9C7;--green:#324F4D;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scrollbar-gutter:stable}
body{font-family:'Jost',sans-serif;background:linear-gradient(180deg,var(--white) 0%,var(--soft) 46%,var(--white) 100%);color:var(--text);font-weight:300;min-height:100vh;overflow-x:hidden}
img{max-width:100%}
a{color:inherit}
.nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(18px);border-bottom:1px solid var(--pink);display:flex;align-items:center;justify-content:space-between;gap:1.35rem;padding:14px 4vw}
.logo{display:flex;align-items:center;text-decoration:none;min-width:132px;flex-shrink:0}
.logo img{height:34px;max-width:150px;object-fit:contain;display:block}
.menu-toggle{position:fixed;left:-9999px;top:auto;width:1px;height:1px;opacity:0;pointer-events:none;appearance:none;-webkit-appearance:none}
.menu-button{display:none;width:42px;height:42px;border:1px solid rgba(187,103,101,.42);border-radius:4px;background:rgba(244,201,199,.2);align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer}
.menu-button span{width:20px;height:1.5px;background:var(--text);display:block;transition:transform .25s,opacity .25s}
.nav-links{display:flex;align-items:center;justify-content:center;gap:1.2rem;list-style:none}
.nav-links a{font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;position:relative;font-weight:400;white-space:nowrap}
.nav-links a::after{content:'';position:absolute;left:0;right:0;bottom:-4px;height:1px;background:var(--rose);transform:scaleX(0);transform-origin:right;transition:transform .25s}
.nav-links a:hover::after,.nav-links a.active::after{transform:scaleX(1);transform-origin:left}
.shop-link{font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--rose);text-decoration:none;border:1px solid var(--rose);padding:.52rem 1.05rem;font-weight:400;white-space:nowrap;transition:background .25s,color .25s,border-color .25s}
.shop-link:hover{background:var(--rose);color:var(--white)}
.page-hero{position:relative;overflow:hidden;padding:8rem 6vw 6.4rem;background:linear-gradient(112deg,var(--white) 0%,var(--white) 48%,rgba(244,201,199,.46) 100%);border-bottom:1px solid rgba(244,201,199,.75)}
.page-hero::before{content:'';position:absolute;inset:0 0 0 auto;width:44%;background:linear-gradient(145deg,rgba(187,103,101,.18),rgba(244,201,199,.62));clip-path:polygon(26% 0,100% 0,100% 100%,0 100%);z-index:0}
.page-hero::after{content:'';position:absolute;left:6vw;bottom:0;width:160px;height:3px;background:var(--rose);z-index:1}
.page-hero>*{position:relative;z-index:2}
.eyebrow{font-size:.64rem;letter-spacing:.34em;text-transform:uppercase;color:var(--rose);margin-bottom:1rem;font-weight:400}
h1,h2,h3{font-family:'Cormorant Garamond',serif;font-weight:300;color:var(--text)}
h1{font-size:clamp(3rem,7vw,6rem);line-height:.95;max-width:760px}
h1 em,h2 em{font-style:italic;color:var(--rose)}
.lead{max-width:560px;color:var(--muted);font-size:.95rem;line-height:1.9;margin-top:1.6rem}
.section{padding:6rem 6vw}
.section.tint{background:linear-gradient(180deg,rgba(244,201,199,.34),var(--white))}
.grid{display:grid;gap:1.6rem}
.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.card{background:rgba(255,255,255,.94);border:1px solid rgba(244,201,199,.85);border-radius:6px;padding:2rem;box-shadow:0 16px 44px rgba(58,47,42,.04)}
.card h3{font-size:1.45rem;margin-bottom:.75rem}
.card p,.card li{color:var(--muted);font-size:.88rem;line-height:1.8}
.about-visual-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:1.4rem;align-items:stretch}
.about-image-stack{display:grid;grid-template-columns:1fr 1fr;gap:.9rem}
.about-image-stack img{width:100%;height:100%;min-height:320px;object-fit:cover;border:1px solid rgba(244,201,199,.85);border-radius:6px;background:var(--soft);box-shadow:0 18px 46px rgba(58,47,42,.055)}
.about-image-stack img:nth-child(2){margin-top:2.5rem}
.press-card{background:linear-gradient(135deg,rgba(244,201,199,.28),rgba(255,255,255,.94));border-color:rgba(187,103,101,.28)}
.button{display:inline-block;margin-top:1.4rem;background:var(--rose);color:var(--white);border:1px solid var(--rose);padding:.85rem 1.8rem;text-decoration:none;text-transform:uppercase;letter-spacing:.2em;font-size:.68rem;font-weight:400;transition:background .25s,border-color .25s,color .25s}
.button:hover{background:var(--green);border-color:var(--green)}
.button.secondary{background:rgba(244,201,199,.35);color:var(--rose)}
.button.secondary:hover{background:var(--rose);color:var(--white);border-color:var(--rose)}
.product-card{overflow:hidden;padding:0;cursor:pointer;perspective:1400px}
.product-card img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;background:var(--soft)}
.product-card img{image-rendering:auto;filter:none}
.flip-front img{object-fit:contain;object-position:center center;padding:1.75rem;background:#fff}
.flip-back img{object-fit:cover;padding:0;object-position:center center}
.flip-media{position:relative;aspect-ratio:4/5;transform-style:preserve-3d;transition:transform .88s cubic-bezier(.19,1,.22,1)}
.product-card.flip-ready:hover .flip-media{transform:none}
.product-card.no-click-flip .flip-media{transform:none!important}
.flip-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden;background:var(--soft);transform:translateZ(0)}
.flip-face img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;display:block}
.flip-face.flip-front img{height:calc(100% - 108px);object-fit:contain;object-position:center center;padding:1.35rem 1.35rem .35rem;background:#fff}
.product-card[data-product-type="lipstick"] .flip-face.flip-front img{object-fit:cover;object-position:center center;padding:0}
.flip-back{transform:perspective(900px) rotateY(-12deg) scale(.985) translateZ(1px)}
.flip-caption{position:absolute;left:1rem;right:1rem;bottom:1rem;background:rgba(255,255,255,.92);border:1px solid rgba(244,201,199,.82);border-radius:6px;padding:.85rem .95rem;color:var(--text);box-shadow:0 10px 28px rgba(58,47,42,.05)}
.flip-caption span{display:block;font-family:'Cormorant Garamond',serif;font-size:1.1rem;line-height:1.1;color:var(--rose)}
.flip-caption small{display:block;margin-top:.35rem;font-size:.68rem;line-height:1.5;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}
.flip-back .flip-caption{background:var(--rose);border-color:var(--rose);color:var(--white);text-align:center;bottom:1rem}
.flip-back .flip-caption span{color:var(--white);font-family:'Jost',sans-serif;font-size:.72rem;letter-spacing:.22em;text-transform:uppercase}
.product-info{padding:1.35rem}
.product-swatch-row{display:flex;align-items:center;gap:.45rem;margin:0 0 .8rem}
.product-swatch-row span{width:22px;height:22px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px rgba(187,103,101,.32),0 8px 18px rgba(50,79,77,.08);display:block}
.price{color:var(--rose);font-weight:400;letter-spacing:.08em;margin-top:.35rem}
.price span{font-weight:500}
.price s{margin-left:.55rem;color:rgba(50,79,77,.46);font-size:.88em;font-weight:300;letter-spacing:.04em}
.product-actions{display:grid;grid-template-columns:1fr 1fr;gap:.65rem;margin-top:1.2rem}
.product-actions .button{margin-top:0;padding:.82rem .75rem;text-align:center;font-size:.58rem;letter-spacing:.13em;white-space:normal;display:flex;align-items:center;justify-content:center;min-height:46px}
.product-actions .product-add{font-family:'Jost',sans-serif;cursor:pointer}
.product-card:hover .product-view{border-color:var(--green)}
.faq{border-top:1px solid var(--pink);padding:1.55rem 0}
.faq:last-child{border-bottom:1px solid var(--pink)}
.faq h3{font-size:1.28rem;margin-bottom:.45rem}
.faq p{color:var(--muted);font-size:.9rem;line-height:1.8}
.contact-list{list-style:none}
.contact-list li{margin-bottom:.75rem}
.form{display:grid;gap:.9rem}
.form input,.form textarea{width:100%;border:1px solid var(--line);background:var(--white);padding:.9rem 1rem;font-family:'Jost',sans-serif;font-size:.9rem;color:var(--text)}
.form textarea{min-height:150px;resize:vertical}
footer{background:var(--rose);color:rgba(255,255,255,.86);padding:4rem 6vw 2rem}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:2rem;margin-bottom:3rem}
.footer-logo{font-family:'Cormorant Garamond',serif;color:var(--white);font-size:1.5rem;text-decoration:none;letter-spacing:.08em}
.footer-logo em{color:var(--white);font-style:italic}
footer h4{color:var(--white);font-size:.64rem;letter-spacing:.22em;text-transform:uppercase;margin-bottom:1rem;font-weight:400}
footer p,footer a{font-size:.82rem;line-height:1.8}
footer p{color:rgba(255,255,255,.86)}
footer a{display:block;color:rgba(255,255,255,.84);text-decoration:none;margin:.4rem 0}
footer a:hover{color:var(--white)}
.foot-bottom{border-top:1px solid rgba(255,255,255,.26);padding-top:1.5rem;font-size:.68rem;color:rgba(255,255,255,.78)}

@media(min-width:861px){
  .nav{
    display:grid;
    grid-template-columns:minmax(170px,1fr) auto minmax(170px,1fr);
    align-items:center;
    gap:1.2rem;
  }
  .nav .logo{grid-column:1;justify-self:start}
  .nav .nav-links{
    grid-column:2;
    justify-self:center;
    gap:clamp(1rem,1.85vw,1.55rem);
  }
  .nav > .shop-link,
  .nav > .cart-icon-group{
    grid-column:3;
    justify-self:end;
  }
  .nav-links a em{font-style:italic;color:var(--rose)}
}
@media(min-width:861px) and (max-width:980px){
  .nav{grid-template-columns:minmax(118px,1fr) auto minmax(90px,1fr);gap:.55rem;padding-left:2vw;padding-right:2vw}
  .nav .nav-links{gap:.62rem}
  .nav-links a{font-size:.56rem;letter-spacing:.12em}
  .shop-link{padding:.45rem .62rem;font-size:.56rem;letter-spacing:.12em}
}

@media(prefers-reduced-motion:no-preference){
  .button,.shop-link,.menu-button span,.nav-links a::after,
  .flip-media,.product-card,.card,.cart-launcher,.cart-nav-icon{
    transition-timing-function:cubic-bezier(.19,1,.22,1)!important;
  }
}
@media(max-width:860px){
  .nav{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.7rem;padding:11px 5vw}
  .logo{min-width:0;grid-column:1;grid-row:1}
  .logo img{height:32px;max-width:136px}
  .menu-button{display:flex;grid-column:2;grid-row:1}
  .menu-toggle:checked + .menu-button span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
  .menu-toggle:checked + .menu-button span:nth-child(2){opacity:0}
  .menu-toggle:checked + .menu-button span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
  .nav-links{grid-column:1/-1;width:100%;display:none;grid-template-columns:1fr;gap:.55rem;padding:.45rem 0 .35rem;max-height:calc(100dvh - 68px);overflow:auto}
  .menu-toggle:checked ~ .nav-links{display:grid}
  .nav-links a{display:block;border:1px solid rgba(244,201,199,.95);background:rgba(244,201,199,.24);padding:.82rem .5rem;text-align:center;font-size:.62rem;letter-spacing:.15em;border-radius:4px}
  .nav-links a::after{display:none}
  .nav-links a.active{background:var(--rose);border-color:var(--rose);color:var(--white)}
  .shop-link{display:none}
  .page-hero{padding:4.2rem 7vw 4rem}
  .page-hero::before{width:72%;opacity:.75}
  .page-hero::after{left:7vw;width:110px}
  h1{font-size:clamp(2.65rem,13vw,3.8rem);max-width:100%}
  .lead{font-size:.9rem;line-height:1.75}
  .grid.two,.grid.three,.footer-grid{grid-template-columns:1fr}
  .about-visual-grid,.about-image-stack{grid-template-columns:1fr}
  .about-image-stack img{min-height:260px}
  .about-image-stack img:nth-child(2){margin-top:0}
  .section{padding:4.5rem 7vw}
  .card{padding:1.45rem;overflow:hidden}
  .card p,.card li{font-size:.92rem;line-height:1.75;overflow-wrap:anywhere}
  .button{width:100%;text-align:center;padding:.88rem 1rem}
  .product-actions{grid-template-columns:1fr}
  .footer-grid{gap:1.6rem}
}
@media(max-width:420px){
  .nav-links a{font-size:.6rem}
  .page-hero{padding-top:3.8rem}
}

/* Shared page visual refresh: same type, same palette */
body{background:linear-gradient(180deg,var(--white) 0%,var(--soft) 42%,var(--white) 100%)}
.nav{padding:15px 5vw;background:rgba(255,255,255,.94);border-bottom:1px solid rgba(187,103,101,.18);box-shadow:0 12px 34px rgba(58,47,42,.04)}
.logo img{height:31px;max-width:142px}
.nav-links{gap:1.15rem}
.nav-links a{font-size:.64rem;letter-spacing:.19em}
.shop-link{border-radius:6px;background:rgba(244,201,199,.2);border-color:rgba(187,103,101,.55)}

.page-hero{padding:8.4rem 7vw 7rem;background:linear-gradient(118deg,var(--white) 0%,var(--white) 50%,rgba(244,201,199,.34) 50%,var(--soft) 100%);border-bottom:1px solid rgba(187,103,101,.16)}
.page-hero::before{width:46%;background:linear-gradient(145deg,rgba(244,201,199,.54),rgba(255,255,255,.12));clip-path:polygon(24% 0,100% 0,100% 100%,0 100%)}
.page-hero::after{height:2px;background:var(--rose)}
.eyebrow{letter-spacing:.32em}
h1{font-size:5.2rem}
.lead{font-size:.96rem;line-height:1.9}
.section{padding:6.8rem 7vw}
.section.tint{background:linear-gradient(180deg,rgba(244,201,199,.26),var(--white))}
.grid{gap:1.4rem}
.card{border-color:rgba(244,201,199,.82);box-shadow:0 18px 46px rgba(58,47,42,.055)}
.card h3{font-size:1.62rem}
.card p,.card li{font-size:.9rem}
.product-card img{background:var(--soft)}
.button{border-radius:4px}
footer{padding:4.8rem 7vw 2.4rem}

@media(max-width:860px){
  .nav{padding:11px 5vw}
  .nav-links{gap:.55rem}
  .page-hero{padding:4.8rem 7vw 4.4rem}
  .page-hero::before{width:78%}
  h1{font-size:3.4rem}
  .section{padding:4.8rem 7vw}
  .lead{max-width:100%}
  footer{padding:3.8rem 7vw 2rem}
}

@media(max-width:420px){
  h1{font-size:2.85rem}
  .logo img{max-width:124px}
  .nav-links a{font-size:.58rem;letter-spacing:.12em}
  .page-hero{padding:4rem 7vw 3.8rem}
  .lead{font-size:.88rem}
  .card h3{font-size:1.45rem}
}

.button:hover,
.button.secondary:hover,
.shop-link:hover{
  background:var(--green);
  border-color:var(--green);
  color:var(--white);
}

.menu-button:hover{
  border-color:var(--green);
  background:rgba(50,79,77,.1);
}

/* Final mobile pass */
@media(max-width:860px){
  html,body{width:100%;overflow-x:hidden}
  .nav{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto auto;
    align-items:center;
    gap:.75rem;
    padding:10px 5vw;
    backdrop-filter:none;
    -webkit-backdrop-filter:none;
  }
  .logo{min-width:0;grid-column:1;grid-row:1}
  .logo img{height:30px;max-width:126px}
  .cart-icon-group{grid-column:2;grid-row:1;gap:.58rem!important}
  .menu-button{display:flex;grid-column:3;grid-row:1;width:39px;height:39px}
  .nav-links{
    position:fixed;
    inset:58px 0 0 0;
    z-index:45;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:flex-start;
    gap:.72rem;
    width:auto;
    max-width:none;
    height:calc(100dvh - 58px);
    padding:2.45rem 7vw 2rem;
    overflow:auto;
    opacity:0;
    pointer-events:none;
    transform:translateY(-10px);
    background:linear-gradient(180deg,var(--white),var(--soft));
    box-shadow:0 28px 70px rgba(58,47,42,.1);
    transition:opacity .28s ease,transform .28s ease;
  }
  .menu-toggle:checked ~ .nav-links{
    opacity:1;
    pointer-events:auto;
    transform:translateY(0);
  }
  .nav-links a{
    display:block;
    width:auto;
    padding:.2rem 0;
    border:0;
    border-radius:0;
    background:transparent;
    text-align:left;
    font-family:'Cormorant Garamond',serif;
    font-size:clamp(1.25rem,6.8vw,1.7rem)!important;
    line-height:1.12!important;
    letter-spacing:.03em;
    text-transform:none;
    color:var(--green);
  }
  .nav-links a::after{display:none}
  .nav-links a.active{background:transparent;border-color:transparent;color:var(--rose)}
  .nav-links li:last-child a{font-style:italic;color:var(--rose)}
  .shop-link{display:none!important}
  .cart-icon-group .shop-link{display:flex!important}
  .page-hero{
    padding:3.9rem 7vw 3.8rem;
    background:linear-gradient(150deg,var(--white) 0%,var(--white) 58%,rgba(244,201,199,.34) 58%,var(--soft) 100%);
  }
  .page-hero::before{width:70%;opacity:.65}
  .page-hero::after{left:7vw;width:92px}
  h1{font-size:clamp(2.7rem,13vw,3.55rem);line-height:.96}
  .lead{font-size:.9rem;line-height:1.72}
  .section{padding:4rem 7vw}
  .grid.two,.grid.three,.footer-grid{grid-template-columns:1fr}
  .product-card{border-radius:8px}
  .flip-media{transform:none!important}
  .flip-back{display:none}
  .flip-front img{padding:2rem;object-fit:contain!important;object-position:center center;background:#fff}
  .product-info{padding:1.15rem}
  .product-actions{grid-template-columns:1fr;gap:.55rem}
  .product-actions .button{font-size:.6rem;letter-spacing:.12em;min-height:44px}
  .card{padding:1.25rem;border-radius:8px}
  footer{padding:3.4rem 7vw 1.8rem}
}

@media(max-width:420px){
  .logo img{max-width:116px}
  .nav-links a{font-size:clamp(1.25rem,6.8vw,1.7rem)!important}
  .page-hero{padding:3.4rem 7vw 3.3rem}
  .section{padding:3.4rem 7vw}
}

/* Shop card polish */
.grid.three{align-items:stretch}
.product-card{
  display:flex;
  flex-direction:column;
  min-width:0;
  height:100%;
}
.flip-media{
  flex:0 0 auto;
  background:#fff;
  overflow:hidden;
}
.flip-face{
  border-radius:0;
}
.flip-back{
  background:#d4cfca;
}
.flip-back img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
  transform:scale(1.025);
  transform-origin:center top;
}
.flip-back .flip-caption{
  bottom:.8rem;
}
.product-info{
  display:flex;
  flex:1;
  flex-direction:column;
  min-width:0;
  overflow:hidden;
}
.product-info h3,
.product-info p{
  overflow-wrap:anywhere;
}
.product-actions{
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:stretch;
  margin-top:auto;
  padding-top:1.1rem;
  width:100%;
  min-width:0;
}
.product-actions .button{
  width:100%;
  min-width:0;
  box-sizing:border-box;
  overflow:hidden;
  line-height:1.35;
}

@media(max-width:860px){
  .product-card{height:auto}
  .product-card .flip-media{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:.7rem;
    aspect-ratio:auto;
    overflow:visible;
    background:transparent;
  }
  .product-card .flip-face{
    position:relative;
    inset:auto;
    aspect-ratio:4/5;
    transform:none!important;
    border:1px solid rgba(244,201,199,.82);
    border-radius:8px;
    overflow:hidden;
  }
  .product-card .flip-back{
    display:block;
  }
  .product-card .flip-face img,
  .product-card .flip-face.flip-front img,
  .product-card .flip-back img{
    width:100%;
    height:100%;
    padding:0!important;
    object-fit:cover!important;
    object-position:center top;
    transform:none;
  }
  .product-card .flip-face.flip-front img{
    object-fit:contain!important;
    background:#fff;
    padding:.9rem!important;
  }
  .product-card .flip-caption{
    left:.5rem;
    right:.5rem;
    bottom:.5rem;
    padding:.55rem .6rem;
  }
  .product-card .flip-caption span{
    font-size:.68rem;
    letter-spacing:.14em;
  }
  .product-card .flip-caption small{
    display:none;
  }
  .product-info{display:block}
  .product-actions{
    grid-template-columns:1fr;
    margin-top:1rem;
    padding-top:0;
  }
}

@media(min-width:861px){
  .product-card .flip-media{
    transform:none!important;
    transform-style:preserve-3d;
  }
  .product-card .flip-face{
    backface-visibility:hidden!important;
    -webkit-backface-visibility:hidden!important;
    transform-style:preserve-3d;
    transition:transform .78s cubic-bezier(.19,1,.22,1),opacity .28s ease;
    will-change:auto;
  }
  .product-card .flip-front{
    z-index:2;
    opacity:1;
    transform:none;
  }
  .product-card .flip-back{
    z-index:1;
    opacity:0;
    transform:perspective(900px) rotateY(-12deg) scale(.985) translateZ(1px);
  }
  .product-card .flip-back img{
    position:absolute;
    inset:auto;
    left:50%;
    top:50%;
    object-position:50% 50%!important;
    transform:translate(-50%,-50%);
    transform-origin:center center;
  }
  /* The supplied model PNGs contain large white bands above and below the
     photograph. Frame and center their photographic area like the bundle. */
  .product-card .flip-back img[src*="assets/catalog/"][src$=".png"]{
    width:155%;
    height:155%;
    transform:translate(-50%,-50%);
    transform-origin:center center;
  }
  .product-card.flip-ready:hover .flip-front{
    opacity:0;
    transform:perspective(900px) rotateY(12deg) scale(.985) translateZ(1px);
    transition-duration:.42s;
  }
  .product-card.flip-ready:hover .flip-back{
    z-index:3;
    opacity:1;
    transform:none;
  }
  .product-card.no-click-flip .flip-front{
    opacity:1!important;
    transform:none!important;
  }
  .product-card.no-click-flip .flip-back{
    opacity:0!important;
    transform:perspective(900px) rotateY(-12deg) scale(.985) translateZ(1px)!important;
  }
}

/* Final interaction stability pass */
:where(a,button,.button,.card,.product-card,.product-actions .button,.menu-button,.nav-links a,.shop-link){
  -webkit-tap-highlight-color:transparent;
}
:where(a,button,.button,.menu-button,.cart-nav-icon,.cart-launcher):focus-visible{
  outline:2px solid rgba(50,79,77,.72);
  outline-offset:4px;
}
.grid,.card,.product-card,.product-info{
  min-width:0;
}
.section,.page-hero,main,footer{
  max-width:100%;
  overflow-x:clip;
}
.card,.button,.shop-link,.nav-links a::after,.menu-button span,.product-card .flip-face,.product-card img{
  transition-timing-function:cubic-bezier(.19,1,.22,1)!important;
}
.product-card{
  transition:transform .34s cubic-bezier(.19,1,.22,1),box-shadow .34s cubic-bezier(.19,1,.22,1),border-color .34s cubic-bezier(.19,1,.22,1);
}
@media(hover:hover) and (pointer:fine){
  .product-card:hover{
    transform:translateY(-4px);
  }
}
@media(hover:none),(pointer:coarse){
  .product-card:hover,
  .card:hover{
    transform:none!important;
  }
  .product-card .flip-media,
  .product-card .flip-face{
    transition:none!important;
  }
}
@media(max-width:860px){
  .nav-links{
    scrollbar-width:none;
    overscroll-behavior:contain;
  }
  .product-card .flip-media{
    align-items:stretch;
  }
  .product-card .flip-face{
    box-shadow:0 14px 34px rgba(58,47,42,.045);
  }
  .product-card .flip-caption{
    pointer-events:none;
  }
}

/* Compact mobile navigation */
@media(max-width:860px){
  .nav-links{
    inset:58px 4vw auto 4vw!important;
    width:auto!important;
    height:auto!important;
    max-height:calc(100dvh - 72px)!important;
    gap:.15rem!important;
    padding:.65rem!important;
    border:1px solid rgba(244,201,199,.9);
    border-radius:8px;
    background:rgba(255,255,255,.98)!important;
    box-shadow:0 18px 44px rgba(58,47,42,.14)!important;
  }
  .nav-links a{
    width:100%!important;
    padding:.7rem .8rem!important;
    font-family:'Jost',sans-serif!important;
    font-size:.72rem!important;
    line-height:1.25!important;
    letter-spacing:.14em!important;
    text-transform:uppercase!important;
    border-radius:5px!important;
  }
  .nav-links a.active{background:rgba(244,201,199,.22)!important}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:.001ms!important;
    animation-iteration-count:1!important;
    scroll-behavior:auto!important;
    transition-duration:.001ms!important;
  }
}

/* Collection filtering, sorting and density controls */
.collection-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin:0 0 2.2rem;padding:1.1rem 0 1.4rem;border-bottom:1px solid rgba(187,103,101,.2);color:var(--rose)}
.collection-filters,.collection-view-controls{display:flex;align-items:center;gap:1.25rem}
.collection-toolbar label{display:flex;align-items:center;gap:.45rem;font-size:.82rem;color:var(--rose);white-space:nowrap}
.collection-toolbar select{max-width:190px;padding:.55rem 1.8rem .55rem .55rem;border:0;background-color:transparent;color:var(--rose);font:inherit;cursor:pointer}
.collection-toolbar select:focus-visible{outline:2px solid rgba(50,79,77,.55);outline-offset:2px}
.collection-view-controls>span{font-size:.82rem;white-space:nowrap}
.grid-density{display:flex;gap:.35rem}
.grid-density button{display:grid;width:38px;height:38px;padding:8px;border:1px solid transparent;border-radius:4px;background:transparent;grid-template-columns:repeat(2,1fr);gap:3px;cursor:pointer}
.grid-density button:last-child{grid-template-columns:repeat(3,1fr)}
.grid-density button span{display:block;border:1px solid currentColor;border-radius:1px}
.grid-density button.active{border-color:rgba(187,103,101,.25);background:rgba(244,201,199,.18)}
.collection-empty{padding:3rem 1rem;text-align:center;color:var(--deep)}
.product-card[hidden]{display:none!important}
@media(min-width:1100px){.grid.three.is-compact{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){
  .collection-toolbar{align-items:flex-start;flex-direction:column;margin-bottom:1.4rem;padding-top:.2rem}
  .collection-filters,.collection-view-controls{width:100%;justify-content:space-between;gap:.5rem;flex-wrap:wrap}
  .collection-toolbar label{font-size:.74rem}
  .collection-toolbar select{max-width:145px;padding-left:.2rem}
  .grid-density{display:none}
  .grid.three.is-compact{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){.grid.three.is-compact{grid-template-columns:1fr}}

/* Readable long-form product formula and benefit disclosures */
.pd-content h4{margin:1.1rem 0 .55rem;color:var(--deep);font-family:'Cormorant Garamond',serif;font-size:1.35rem}
.pd-content ul{display:grid;gap:.55rem;margin:.35rem 0;padding-left:1.2rem}
.pd-content li{padding-left:.2rem}
