:root{--ink:#2b2620;--olive:#6b6b45;--cream:#f6f1e7;--sand:#ede0cc;--rose:#f2e0d8;--terra:#c96f4a}
body.store-body{margin:0;background:var(--cream);color:var(--ink);font-family:"Jost",Arial,sans-serif}
/* Prototype reveal classes — ensure immediate 100% visibility */
.reveal-fade-up,
.reveal-fade-in,
.reveal-slide-r,
.reveal-scale {
    opacity: 1 !important;
    transform: none !important;
}
/* Header, topbar, nav, and trust ticker are styled with prototype Tailwind utility classes */
.store-main{min-height:58vh}
.store-container{width:min(1160px,calc(100% - 48px));margin-inline:auto}
.store-section{padding:68px 0}
.store-kicker{margin:0 0 10px;color:var(--olive);font-size:11px;letter-spacing:.17em;text-transform:uppercase}
.store-title{margin:0 0 18px;font:300 clamp(36px,5vw,58px)/1.08 "Fraunces",Georgia,serif}
.store-subtitle{max-width:690px;color:var(--olive);font-size:16px;line-height:1.75}
.store-hero{position:relative;display:flex;min-height:520px;align-items:center;overflow:hidden;padding:60px 8%;background:var(--sand)}
.store-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.store-hero:after{position:absolute;inset:0;background:linear-gradient(90deg,rgba(var(--cream-rgb),.94),rgba(var(--cream-rgb),.68) 48%,transparent);content:""}
.store-hero-copy{position:relative;z-index:1;width:min(550px,100%)}
.store-hero-copy h1{margin:8px 0 20px;font:300 clamp(43px,6vw,72px)/1.03 "Fraunces",Georgia,serif}
.store-hero-copy p{max-width:470px;color:rgba(var(--ink-rgb),.78);font-size:16px;line-height:1.7}
.store-button,.store-button-outline{display:inline-flex;min-height:44px;align-items:center;justify-content:center;padding:12px 20px;border:1px solid var(--terra);border-radius:99px;background:var(--terra);color:var(--cream);font-size:11px;font-weight:600;letter-spacing:.12em;text-align:center;text-decoration:none;text-transform:uppercase;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .15s ease,box-shadow .2s ease}
.store-button:hover{background:color-mix(in srgb,var(--terra) 80%,#000);border-color:color-mix(in srgb,var(--terra) 80%,#000);color:var(--cream);transform:translateY(-2px);box-shadow:0 8px 20px rgba(var(--ink-rgb),.22)}
.store-button-outline{background:transparent;color:var(--ink);border-color:rgba(var(--ink-rgb),.4);transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .15s ease,box-shadow .2s ease}
.store-button-outline:hover{background:var(--terra);border-color:var(--terra);color:var(--cream);transform:translateY(-2px);box-shadow:0 8px 20px rgba(var(--ink-rgb),.18)}
.store-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.store-card{min-width:0;overflow:hidden;border-radius:14px;background:#fffdf8;box-shadow:0 5px 25px rgba(var(--ink-rgb),.07);transition:transform .2s,box-shadow .2s}
.store-card:hover{transform:translateY(-4px);box-shadow:0 14px 32px rgba(var(--ink-rgb),.12)}
.store-card-image{display:block;aspect-ratio:1/1;overflow:hidden;background:var(--sand)}
.store-product-card-image{position:relative;aspect-ratio:1/1;overflow:hidden;background:var(--sand)}
.store-product-card-image>a{display:block;width:100%;height:100%}
.store-product-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.store-card:hover .store-product-card-image img{transform:scale(1.04)}
.store-product-card-image form{position:absolute;top:12px;right:12px}
.store-favourite-button{display:grid;width:38px;height:38px;place-items:center;border:1px solid rgba(var(--ink-rgb),.1);border-radius:50%;background:rgba(255,253,248,.92);color:var(--terra);font-size:20px;cursor:pointer;transition:transform .2s,background .2s}
.store-favourite-button:hover{transform:scale(1.12);background:#fff}
.store-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.store-card:hover .store-card-image img{transform:scale(1.04)}
.store-card-copy{padding:16px}
.store-card-copy h3{margin:0 0 6px;font:300 21px/1.2 "Fraunces",Georgia,serif}
.store-card-copy p{margin:0 0 11px;color:var(--olive);font-size:13px;line-height:1.55}
.store-price{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:10px 0;color:var(--ink);font-size:15px}
.store-price del{color:var(--olive);font-size:13px}
.store-price small{padding:4px 8px;border-radius:20px;background:var(--terra);color:#fff;font-size:10px}
.store-card-actions{display:flex;gap:8px;margin-top:12px}
.store-card-actions form{flex:1}
.store-card-actions .store-button{width:100%;padding:9px 10px;font-size:10px}
.store-chip{display:inline-block;margin:3px;padding:7px 11px;border-radius:30px;background:var(--sand);color:var(--ink);font-size:12px}
.store-highlight{background:var(--sand)}
.store-two-col{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.store-detail-image{width:100%;max-height:620px;object-fit:cover;border-radius:18px;background:var(--sand)}
.store-detail-copy{padding:36px;border-radius:16px;background:var(--rose)}
.store-detail-copy h1{font:300 clamp(36px,4vw,50px)/1.1 "Fraunces",Georgia,serif}
.store-body-copy{color:rgba(var(--ink-rgb),.78);font-size:15px;line-height:1.8;white-space:pre-line}
.store-detail-price{font:300 25px "Fraunces",Georgia,serif}
.store-detail-price del{margin-left:8px;color:var(--olive);font:14px "Jost",sans-serif}
.store-list{display:grid;gap:14px;padding:0;list-style:none}
.store-list li{padding:16px;border-bottom:1px solid rgba(var(--ink-rgb),.14)}
.store-filter{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin:24px 0}
.store-filter label,.store-form label{display:grid;flex:1;gap:6px;color:var(--olive);font-size:12px}
.store-form{display:grid;gap:16px;max-width:680px}
.store-form input,.store-form textarea,.store-form select,.store-filter select,.store-filter input{width:100%;min-height:42px;padding:10px;border:1px solid rgba(var(--ink-rgb),.2);border-radius:6px;background:#fffdf8;color:var(--ink)}
.store-form textarea{min-height:130px}
.store-payment-methods{display:grid;gap:12px;margin:0;padding:18px;border:1px solid rgba(var(--ink-rgb),.16);border-radius:12px;background:#fffdf8}
.store-payment-methods legend{padding:0 7px;color:var(--ink);font:400 20px "Fraunces",Georgia,serif}
.store-form .store-payment-method{display:flex;flex:initial;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:13px 15px;border:1px solid rgba(var(--ink-rgb),.14);border-radius:9px;background:#fff;color:var(--ink);font-size:14px;cursor:pointer;transition:border-color .2s,background-color .2s,box-shadow .2s}
.store-form .store-payment-method:has(input:checked){border-color:var(--terra);background:#fbf4ee;box-shadow:0 0 0 2px rgba(var(--terra-rgb),.12)}
.store-form .store-payment-method input[type=radio]{flex:0 0 18px;width:18px;height:18px;min-height:18px;margin:0;padding:0;border:0;border-radius:50%;background:transparent;accent-color:var(--terra)}
.store-payment-instructions,.store-payment-disclaimer{margin:0;color:var(--olive);font-size:13px;line-height:1.6}
.store-payment-disclaimer{font-size:12px}
.store-payment-instructions{padding:11px 13px;border-radius:8px;background:var(--cream)}
.store-form #payment-reference-field[hidden]{display:none}
.store-form .store-account-create{display:flex;flex:initial;align-items:center;gap:9px;width:max-content;max-width:100%;color:var(--olive);font-size:13px;cursor:pointer}
.store-form .store-account-create input[type=checkbox],.store-form .store-account-registration-choice input[type=checkbox]{flex:0 0 17px;width:17px;height:17px;min-height:17px;margin:0;padding:0;border:1px solid rgba(var(--ink-rgb),.35);border-radius:4px;background:#fff;accent-color:var(--terra)}
.store-table-wrap{overflow-x:auto}
.store-table{width:100%;border-collapse:collapse;background:#fffdf8}
.store-table th,.store-table td{padding:13px;border-bottom:1px solid rgba(var(--ink-rgb),.1);text-align:left}
.store-table img{width:64px;height:64px;object-fit:cover;border-radius:7px}
.store-notice{margin:18px auto;padding:13px 16px;border:1px solid rgba(var(--olive-rgb),.24);border-radius:8px;background:var(--sand);color:var(--ink)}
.store-error{border-color:rgba(var(--terra-rgb),.42);background:var(--rose);color:var(--ink)}
/* Footer styling is handled by Tailwind utility classes matching prototype */
.store-pagination{display:flex;justify-content:center;gap:8px;margin-top:28px}
.store-pagination a,.store-pagination span{padding:8px 12px;border-radius:6px;background:#fffdf8}
.store-empty{padding:24px;text-align:center;color:var(--olive)}
.faq-row{padding:17px 0;border-bottom:1px solid rgba(var(--ink-rgb),.16)}
.faq-row summary{display:flex;justify-content:space-between;gap:18px;cursor:pointer;list-style:none;font:300 20px "Fraunces",Georgia,serif}
.faq-row summary::-webkit-details-marker{display:none}
.faq-row summary:after{content:"+";color:var(--terra);font:24px "Jost",sans-serif}
.faq-row[open] summary:after{content:"−"}
.faq-row p{margin:14px 0 0;padding-top:13px;border-top:1px solid rgba(var(--ink-rgb),.12);color:var(--olive);font-size:14px;line-height:1.75}
.store-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0}
.store-tabs a{padding:9px 14px;border-bottom:2px solid var(--terra);color:var(--olive)}
.store-announcement-rotator{display:none}
@media(max-width:1023px){.store-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.store-container{width:calc(100% - 36px)}.store-section{padding:48px 0}.store-hero{min-height:570px;align-items:flex-end;padding:34px 22px}.store-hero:after{background:linear-gradient(0deg,rgba(var(--cream-rgb),.97),rgba(var(--cream-rgb),.72) 48%,rgba(var(--cream-rgb),.1))}.store-hero-copy h1{font-size:46px}.store-hero-copy p{font-size:14px}.store-card-grid{gap:12px}.store-card-copy{padding:11px}.store-card-copy h3{font-size:18px}.store-card-copy p{font-size:12px}.store-card-actions{flex-direction:column}.store-detail-copy{padding:22px}.store-two-col{grid-template-columns:1fr;gap:20px}.store-price{font-size:14px}}

.store-home-marquee{overflow:hidden;padding:15px 0;border-block:1px solid rgba(var(--ink-rgb),.08);background:var(--sand)}
.store-home-marquee-track{display:flex;width:max-content;align-items:center;gap:48px;animation:store-marquee 34s linear infinite}
.store-home-marquee-track>span{display:flex;flex-shrink:0;align-items:center;gap:48px;color:var(--ink);font-size:11px;letter-spacing:.2em;text-transform:uppercase;white-space:nowrap}
.store-home-marquee-track i{color:var(--terra);font-size:15px;font-style:normal}
.store-home-marquee:hover .store-home-marquee-track{animation-play-state:paused}
@keyframes store-marquee{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.store-home-marquee-track{animation:none;transform:none}.store-home-marquee-track>span[aria-hidden=true]{display:none}}
.store-search-overlay{position:fixed;inset:0;z-index:100;display:block;padding:0;background:rgba(var(--cream-rgb),.97);backdrop-filter:blur(8px);opacity:0;pointer-events:none;transition:opacity .2s}
.store-search-overlay.is-open{opacity:1;pointer-events:auto}
.store-search-header{display:flex;align-items:center;gap:16px;padding:24px 6vw 16px;border-bottom:1px solid rgba(var(--ink-rgb),.1)}
.store-search-header form{flex:1}
.store-search-header input{width:100%;border:0;outline:0;background:transparent;color:var(--ink);font:22px "Jost",Arial,sans-serif}
.store-search-header button{border:0;background:transparent;color:var(--olive);font-size:12px;letter-spacing:.12em;cursor:pointer}
.store-search-content{padding:32px 6vw}
.store-search-content>p:first-child{margin:0 0 24px;color:var(--olive);font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.store-search-content>div{display:flex;flex-wrap:wrap;gap:12px}
.store-search-content>div>a{padding:8px 16px;border-radius:999px;background:var(--sand);color:var(--ink);font-size:13px}
.store-search-hint{margin-top:32px;color:var(--olive);font:300 italic 20px "Fraunces",Georgia,serif}
/* Footer, WhatsApp, and navigation mobile styles handled by prototype HTML & interactive.css */

.store-home-hero{background:var(--cream)}
.store-home-hero-desktop{position:relative;display:flex;min-height:82vh;align-items:center;overflow:hidden}
.store-home-hero-desktop>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.store-home-hero-desktop>div:nth-child(2){position:absolute;inset:0;background:linear-gradient(90deg,rgba(var(--cream-rgb),.93),rgba(var(--cream-rgb),.76) 44%,rgba(var(--cream-rgb),.18) 72%,transparent)}
.store-home-hero-copy{position:relative;z-index:1;box-sizing:border-box;width:100%;max-width:1152px;margin:0 auto;padding:64px 56px}
.store-home-hero-decoration{position:absolute;top:-64px;left:-64px;width:200px;height:240px;background:var(--terra);opacity:.06;pointer-events:none}
.store-home-hero-copy>.store-kicker{margin-bottom:12px;color:var(--olive);font-size:13px;letter-spacing:.18em}
.store-home-hero-copy h1{max-width:780px;margin:0 0 24px;color:var(--ink);font:500 60px/1.08 "Fraunces",Georgia,serif}
.store-home-hero-copy h1 em{font-weight:500;font-style:italic}
.store-home-section-heading h2 em,.store-home-centered-heading h2 em,.store-home-dermatologist h2 em,.store-home-guide h2 em{font-weight:300}
.store-home-hero-description{max-width:448px;margin:0 0 40px;color:var(--ink);font-size:16px;line-height:1.75;opacity:.78}
.store-home-hero-description p{margin:0 0 .75em}
.store-home-hero-description p:last-child{margin-bottom:0}
.store-home-hero-copy>div:last-child{display:flex;flex-wrap:wrap;gap:12px}
.store-home-hero-copy .store-button,.store-home-hero-copy .store-button-outline{min-width:180px;padding:14px 28px;font-size:13px;letter-spacing:.05em}
.store-home-container{width:min(1152px,calc(100% - 48px));margin-inline:auto}
.store-home-section{position:relative;overflow:hidden;padding:112px 24px}
.store-home-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:48px}
.store-home-section-heading h2,.store-home-centered-heading h2,.store-home-faqs h2{margin:0;color:var(--ink);font:500 48px/1.25 "Fraunces",Georgia,serif}
.store-home-section .store-kicker,.store-home-method .store-kicker,.store-home-dermatologist .store-kicker,.store-home-guide .store-kicker,.store-home-final-copy .store-kicker{margin-bottom:12px;font-size:16px;line-height:24px;letter-spacing:.18em}
.store-home-section-heading .store-button-outline{flex-shrink:0}
.store-home-section-heading>div{max-width:680px}
.store-section-subheading{margin-top:12px;color:var(--olive);font-size:15px;line-height:1.6}
.store-section-subheading p{margin:0;color:inherit}
.store-section-subheading p+p{margin-top:8px}
.store-home-centered-heading .store-section-subheading{max-width:560px;margin-inline:auto}
.store-home-method .store-home-centered-heading .store-section-subheading{color:var(--sand)!important;opacity:.88}
.store-home-faqs .store-section-subheading{margin-top:-28px;margin-bottom:36px}
.store-home-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.store-home-product{min-width:0}
.store-home-product-image{position:relative;overflow:hidden;margin-bottom:14px;border-radius:12px;background:var(--sand);aspect-ratio:4/5}
.store-home-product-image>a{display:block;width:100%;height:100%}
.store-home-product-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.store-home-product-image form{position:absolute;top:12px;right:12px}
.store-home-product-image .store-favourite-button{width:36px;height:36px;border:0;opacity:0;transform:translateY(-4px) scale(.92);background:var(--terra);color:var(--ink);box-shadow:0 2px 8px rgba(var(--ink-rgb),.2);transition:opacity .2s,transform .2s}
.store-home-product:hover .store-favourite-button,.store-home-product-image .store-favourite-button[aria-pressed=true]{opacity:1;transform:none}
.store-home-product:focus-within{z-index:1;transform:translateY(-5px);background:rgba(var(--sand-rgb),.62);box-shadow:0 14px 30px rgba(var(--ink-rgb),.12)}
.store-home-product:focus-within .store-favourite-button{opacity:1;transform:none}
.store-home-product-copy h3{min-height:2.75rem;margin:0 0 4px;color:var(--ink);font:300 17px/1.35 "Fraunces",Georgia,serif}
.store-home-product-copy h3 a{color:inherit}
.store-home-product-rating{margin:0 0 4px;color:var(--olive);font-size:11px}
.store-home-product-rating span,.store-home-review-stars,.store-product-rating-stars{color:var(--terra);letter-spacing:.08em}
.store-home-product-price{margin:0 0 12px;color:var(--ink);font-size:15px;font-weight:500}
.store-home-product-copy>.store-button-outline{margin-top:4px}
.store-home-product-copy form .store-button,.store-home-routine-grid form .store-button,.store-creator-card>form .store-button{width:100%;min-height:42px;padding:10px 12px;font-size:11px}
.store-home-problem{overflow:hidden;background:var(--sand)}
.store-home-problem-main{position:relative;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(190px,.72fr) minmax(300px,1fr);align-items:center;gap:clamp(18px,3vw,48px);width:min(1400px,calc(100% - 80px));min-height:460px;margin:0 auto;padding:46px 0 34px}
.store-home-problem-copy{position:relative;z-index:1}
.store-home-problem-kicker{margin:0 0 28px;color:var(--olive);font-size:13px;font-weight:500;letter-spacing:.2em;text-transform:uppercase}
.store-home-problem-copy h2{margin:0 0 28px;color:var(--ink);font:italic 500 clamp(38px,4.1vw,64px)/1.13 "Fraunces",Georgia,serif}
.store-home-problem-copy>p:last-child{max-width:470px;margin:0;color:var(--olive);font-size:17px;line-height:1.65}
.store-home-problem-serum{position:relative;display:grid;min-height:370px;place-items:center}
.store-home-problem-serum img{display:block;width:100%;height:370px;object-fit:contain;mix-blend-mode:multiply;filter:drop-shadow(8px 12px 8px rgba(var(--ink-rgb),.16))}
.store-home-problem-shelf{position:relative;display:flex;min-height:330px;flex-direction:column;justify-content:flex-end;padding:18px 18px 20px;border:1px solid rgba(var(--ink-rgb),.08);border-radius:48% 48% 9px 9px / 28% 28% 9px 9px;background:radial-gradient(ellipse at 50% 30%,rgba(255,255,255,.42),transparent 68%);box-shadow:inset 0 -1px rgba(var(--ink-rgb),.12)}
.store-home-problem-shelf-title{position:absolute;top:14px;left:0;width:100%;margin:0;color:var(--ink);font:italic 400 25px/1.15 "Fraunces",Georgia,serif;text-align:center}
.store-home-problem-shelf-image-wrap{position:relative;display:flex;align-items:flex-end;justify-content:center;height:225px;padding:0 8px 10px;border-bottom:5px solid rgba(var(--olive-rgb),.28)}
.store-home-problem-shelf-image{display:block;width:auto;max-width:100%;height:100%;max-height:215px;object-fit:contain;margin:0 auto;filter:drop-shadow(0 6px 14px rgba(var(--ink-rgb),.12))}
.store-home-problem-products{position:relative;display:flex;height:225px;align-items:flex-end;justify-content:center;gap:clamp(5px,1vw,15px);padding:0 8px 10px;border-bottom:5px solid rgba(var(--olive-rgb),.28)}
.problem-product{position:relative;display:flex;flex:0 1 43px;align-items:flex-end;justify-content:center;min-width:22px;height:140px;filter:drop-shadow(3px 5px 3px rgba(var(--ink-rgb),.14));transform:rotate(var(--tilt,0deg))}
.problem-product b{position:absolute;bottom:0;width:100%;height:84%;border:1px solid rgba(var(--ink-rgb),.13);border-radius:7px 7px 9px 9px;background:linear-gradient(90deg,rgba(var(--ink-rgb),.14),rgba(255,255,255,.32) 25%,rgba(255,255,255,.06) 76%,rgba(var(--ink-rgb),.13)),var(--product-color,var(--cream))}
.problem-product i{position:absolute;z-index:1;bottom:80%;width:54%;height:22%;border:1px solid rgba(var(--ink-rgb),.12);border-radius:4px 4px 1px 1px;background:var(--product-cap,var(--ink))}
.problem-product b:after{position:absolute;top:35%;right:4px;left:4px;height:23px;border-top:1px solid rgba(var(--ink-rgb),.16);border-bottom:1px solid rgba(var(--ink-rgb),.12);background:rgba(255,253,248,.58);content:""}
.problem-product-dropper{height:166px;--tilt:-7deg;--product-color:#c28a59;--product-cap:#292722}
.problem-product-dropper i{height:30%;border-radius:9px 9px 2px 2px}
.problem-product-tube{height:155px;--tilt:8deg;--product-color:#f6f1e7;--product-cap:#c8b9a5}
.problem-product-tube b{clip-path:polygon(12% 0,88% 0,100% 88%,85% 100%,15% 100%,0 88%)}
.problem-product-pump{height:181px;--tilt:3deg;--product-color:#e4d7c8;--product-cap:#e8e0d5}
.problem-product-pump i{width:28%;height:28%;border-radius:5px 5px 0 0}
.problem-product-jar{height:103px;--tilt:-4deg;--product-color:#efe4d5;--product-cap:#292722}
.problem-product-jar b{height:62%;border-radius:8px 8px 12px 12px}
.problem-product-jar i{bottom:58%;width:104%;height:17%;border-radius:4px}
.problem-product-serum{height:132px;--tilt:5deg;--product-color:#a96734;--product-cap:#30291f}
.problem-product-serum i{height:28%}
.problem-product-toner{height:191px;--tilt:-6deg;--product-color:#d9d1c4;--product-cap:#2e2b27}
.problem-product-toner i{width:35%;height:16%}
.problem-product-cream{height:111px;--tilt:5deg;--product-color:#f5eee4;--product-cap:#bfb49f}
.problem-product-cream b{height:64%;border-radius:9px 9px 11px 11px}
.problem-product-cream i{bottom:60%;width:105%;height:14%;border-radius:4px}
.problem-product-mini{height:126px;--tilt:-9deg;--product-color:#bc7645;--product-cap:#282621}
.problem-product-mini i{height:25%}
.store-home-problem-note{margin:12px 0 0;color:var(--olive);font-size:11px;letter-spacing:.1em;text-align:center;text-transform:uppercase}
.store-home-problem-callout{position:absolute;top:49px;left:58%;z-index:2;color:var(--ink);font:italic 400 26px/1.18 "Fraunces",Georgia,serif;text-align:center}
.store-home-problem-callout svg{position:absolute;top:45px;left:50%;width:114px;height:72px;transform:translateX(-35%)}
.store-home-problem-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;padding:30px max(40px,calc((100% - 1400px)/2));border-top:1px solid rgba(var(--ink-rgb),.1)}
.store-home-problem-stats>div{display:grid;justify-items:center;gap:6px}
.store-home-problem-stats strong{color:var(--terra);font:italic 500 40px/1 "Fraunces",Georgia,serif}
.store-home-problem-stats span{color:var(--olive);font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.store-creator-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.store-creator-card{min-width:0;overflow:hidden;padding:0 0 16px;border-radius:18px;background:var(--sand);box-shadow:0 4px 24px var(--ink)1a}
.store-creator-video{position:relative;overflow:hidden;aspect-ratio:9/14}
.store-creator-video:after{position:absolute;inset:0;background:linear-gradient(0deg,rgba(var(--ink-rgb),.65),transparent 50%);content:"";pointer-events:none}
.store-creator-video video{width:100%;height:100%;object-fit:cover}
.store-creator-video>span{position:absolute;top:12px;left:12px;z-index:1;padding:5px 10px;border-radius:99px;background:rgba(var(--cream-rgb),.9);color:var(--ink);font-size:11px;font-weight:600}
.store-creator-video>p{position:absolute;right:14px;bottom:14px;left:14px;z-index:1;margin:0;color:var(--cream);font:italic 13px/1.4 "Fraunces",Georgia,serif}
.store-creator-product{display:flex;align-items:center;gap:9px;margin:12px 14px;font-size:12px}
.store-creator-product img{width:36px;height:36px;border-radius:8px;object-fit:cover}
.store-creator-card>form{margin:0 14px}
.store-home-philosophy{overflow:hidden;padding:0 56px;background:var(--cream)}
.store-home-philosophy-inner{display:grid;width:min(1152px,100%);min-height:clamp(520px,70vh,800px);grid-template-columns:repeat(2,minmax(0,1fr));margin:0 auto}
.store-home-philosophy-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:80px clamp(56px,6.25vw,80px)}
.store-home-philosophy-copy>p:first-child{margin:0 0 20px;color:var(--terra);font-size:11px;letter-spacing:.22em;text-transform:uppercase}
.store-home-philosophy-copy h2{margin:0 0 28px;color:var(--ink);font:italic 300 clamp(38.4px,4vw,56px)/1.12 "Fraunces",Georgia,serif}
.store-home-philosophy-copy>p:not(:first-child){max-width:460px;margin:0 0 32px;color:var(--olive);font-size:15px;line-height:1.8}
.store-home-philosophy-copy>em{color:var(--terra);font:italic 300 17px "Fraunces",Georgia,serif}
.store-home-philosophy-media{display:flex;min-height:420px;align-items:center;justify-content:center;padding:56px 48px}
.store-home-philosophy-media video{width:100%;max-width:448px;max-height:600px;aspect-ratio:4/5;border-radius:18px;object-fit:cover}
.store-home-concern-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.store-home-concern{display:flex;min-width:0;flex-direction:column;overflow:hidden;border-radius:12px;background:transparent;color:var(--ink);box-shadow:none;transition:box-shadow .3s,transform .3s}
.store-home-concern:hover,.store-home-concern:focus-visible{transform:translateY(-4px);box-shadow:0 12px 32px rgba(var(--ink-rgb),.14)}
.store-home-concern-image{position:relative;overflow:hidden;aspect-ratio:1/1;background:var(--sand)}
.store-home-concern-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.store-home-concern:hover .store-home-concern-image img,.store-home-concern:focus-visible .store-home-concern-image img{transform:scale(1.05)}
.store-home-concern-overlay{position:absolute;inset:0;background:rgba(var(--rose-rgb),.3);opacity:0;transition:opacity .3s}
.store-home-concern:hover .store-home-concern-overlay,.store-home-concern:focus-visible .store-home-concern-overlay{opacity:1}
.store-home-concern-image>span{position:absolute;top:14px;left:14px;padding:6px 14px;border-radius:99px;background:rgba(43,38,32,0.85);color:#fffdf8;font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;backdrop-filter:blur(6px);box-shadow:0 2px 8px rgba(0,0,0,0.2);z-index:2}
.store-home-concern>div:last-child{display:flex;flex:1;flex-direction:column;padding:16px 16px 20px;background:var(--cream);transition:background-color .3s}
.store-home-concern:hover>div:last-child,.store-home-concern:focus-visible>div:last-child{background:var(--rose)}
.store-home-concern h3{min-height:44px;margin:0 0 4px;color:var(--ink);font:300 18px/1.35 "Fraunces",Georgia,serif}
.store-home-concern>div>p{min-height:48px;margin:0 0 12px;color:var(--olive);font-size:13px;line-height:1.6}
.store-home-concern>div>span{align-self:flex-start;margin-top:auto;padding:8px 16px;border:1px solid rgba(var(--ink-rgb),.22);border-radius:99px;color:var(--olive);font-size:11px;letter-spacing:.12em;text-transform:uppercase;transition:color .2s,border-color .2s}
.store-home-concern:hover>div>span,.store-home-concern:focus-visible>div>span{border-color:var(--terra);color:var(--terra)}
.store-home-centered-heading{text-align:center;margin-bottom:56px}
.store-home-section .store-home-centered-heading h2{line-height:1}
.store-home-method>.store-home-centered-heading{margin-bottom:80px}
.store-home-review-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.store-home-review-grid article{display:flex;min-height:293px;flex-direction:column;padding:24px;border-radius:16px;background:var(--sand)}
.store-home-review-stars{font-size:14px}
.store-home-review-grid article>p{flex:1;margin:16px 0 20px;color:var(--ink);font:300 16px/1.625 "Fraunces",Georgia,serif}
.store-home-review-author{display:flex;align-items:center;gap:12px;padding-top:16px;border-top:1px solid rgba(var(--ink-rgb),.12)}
.store-home-review-author img,.store-home-review-author>span{display:flex;width:36px;height:36px;flex:0 0 36px;align-items:center;justify-content:center;border:2px solid var(--rose);border-radius:50%;object-fit:cover;color:var(--terra);font-size:13px}
.store-home-review-author>div{display:flex;flex-direction:column;gap:2px}
.store-home-review-author strong{color:var(--ink);font-size:13px}
.store-home-review-author small{color:var(--olive);font-size:11px}
.store-home-dermatologist{background:var(--sand)}
.store-home-dermatologist-inner{display:grid;width:min(1152px,100%);grid-template-columns:repeat(2,minmax(0,1fr));margin:0 auto}
.store-home-dermatologist-inner>img{width:100%;height:100%;min-height:520px;object-fit:cover}
.store-home-dermatologist-inner>div{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:80px 56px}
.store-home-dermatologist h2{margin:0 0 24px;color:var(--ink);font:500 48px/1.1 "Fraunces",Georgia,serif}
.store-home-dermatologist-inner>div>p:not(.store-kicker){margin:0;color:var(--olive);font-size:16px;line-height:26px}
.store-home-dermatologist-inner>div>.store-kicker{margin-bottom:12px;font-size:16px;line-height:24px;letter-spacing:.18em}
.store-home-dermatologist-inner>div>.store-kicker+h2+p{margin-bottom:16px}
.store-home-dermatologist-inner>div>p:not(.store-kicker)+p{margin-bottom:32px}
.store-home-badges{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 32px}
.store-home-badges span{padding:8px 12px;border:1px solid rgba(var(--ink-rgb),.16);border-radius:99px;background:var(--cream);color:var(--ink);font-size:11px}
.store-home-dermatologist .store-button{min-height:52px;padding:14px 28px;font-size:13px}
.store-home-method{padding:112px 24px;background:var(--ink)}
.store-home-method .store-home-centered-heading h2{color:var(--sand)}
.store-home-method .store-home-centered-heading .store-kicker,.store-home-method .store-kicker{color:var(--sand);opacity:.85}
.store-home-method-steps{display:grid;max-width:1024px;gap:96px;margin:0 auto}
.store-home-method-steps article{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:64px}
.store-home-method-steps article:nth-child(even)>div{order:2}
.store-home-method-steps article>div>span{display:block;margin-bottom:14px;color:var(--terra);font:italic 300 clamp(120px,17.2vw,220px)/1 "Fraunces",Georgia,serif;opacity:.48}
.store-home-method-steps h3{margin:0 0 12px;color:var(--sand);font:300 42px "Fraunces",Georgia,serif}
.store-home-method-steps article>div>p,
.store-home-method-steps .store-body-copy,
.store-home-method-steps .store-body-copy p{color:var(--sand) !important;font-size:14px;line-height:1.8;opacity:.88}
.store-home-method-steps article>div>small{color:var(--terra);font-size:11px;letter-spacing:.18em;text-transform:uppercase}
.store-home-method-steps .store-button{display:table;margin-top:18px}
.store-home-method-steps article>img{width:100%;aspect-ratio:1/1;border-radius:18px;object-fit:cover}
.store-home-routine-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.store-home-routine-grid article{overflow:hidden;border-radius:16px;background:var(--sand);box-shadow:0 4px 20px rgba(var(--ink-rgb),.08)}
.store-home-routine-grid article>a{display:block;color:var(--ink)}
.store-home-routine-image{overflow:hidden;aspect-ratio:3/4}
.store-home-routine-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.store-home-routine-grid article:hover .store-home-routine-image img,.store-home-routine-grid article:focus-within .store-home-routine-image img{transform:scale(1.06)}
.store-home-routine-copy{padding:16px 16px 8px}
.store-home-routine-copy>span{color:var(--terra);font-size:10px;letter-spacing:.12em;text-transform:uppercase}
.store-home-routine-copy h3{min-height:44px;margin:6px 0;color:var(--ink);font:300 17px/1.35 "Fraunces",Georgia,serif}
.store-home-routine-copy>div{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}
.store-home-routine-copy>div>strong{font-size:14px}
.store-home-routine-copy>div>b{padding:5px 9px;border-radius:99px;background:var(--terra);color:var(--cream);font-size:10px;font-weight:400}
.store-home-routine-copy>p{margin:8px 0;color:rgba(var(--ink-rgb),.55);font-size:11px}
.store-home-routine-grid>article>form{margin:0 16px 16px}
.store-home-guide{display:grid;min-height:612px;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:0;padding:0 max(24px,calc((100vw - 1152px)/2));background:var(--sand)}
.store-home-guide>img{width:100%;height:100%;object-fit:cover;object-position:center}
.store-home-guide>div{padding:80px 56px 80px 48px}
.store-home-guide h2{margin:0 0 16px;color:var(--ink);font:500 48px/1.25 "Fraunces",Georgia,serif}
.store-home-guide>div>p:not(.store-kicker){margin:0 0 32px;color:var(--olive);font-size:16px;line-height:26px}
.store-home-guide-form{display:flex;flex-direction:column;gap:12px}
.store-home-guide-form input{width:100%;min-height:56px;padding:16px 20px;border:1px solid rgba(var(--ink-rgb),.18);border-radius:999px;background:var(--cream);color:var(--ink);font-size:14px;outline:none}
.store-home-guide-form input:focus-visible{border-color:var(--terra);box-shadow:0 0 0 3px rgba(var(--terra-rgb),.16)}
.store-home-guide-form input::placeholder{color:rgba(var(--ink-rgb),.56)}
.store-home-guide-form .store-button{min-height:60px;padding:16px 24px;font-size:13px;letter-spacing:.14em}
.store-home-guide-error{color:#a33b2a;font-size:13px}
.store-home-guide-success{padding:40px 32px;border-radius:16px;background:var(--rose)}
.store-home-guide-success p:first-child{margin:0 0 8px;color:var(--terra);font:italic 300 24px/1.25 "Fraunces",Georgia,serif}
.store-home-guide-success p:last-child{margin:0;color:var(--olive);font-size:14px;line-height:1.6}
.store-home-article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.store-home-article-grid>a{overflow:hidden;border-radius:14px;background:#fffdf8;color:var(--ink);box-shadow:0 5px 25px var(--ink)12;transition:transform .2s}
.store-home-article-grid>a:hover{transform:translateY(-4px)}
.store-home-article-grid img{width:100%;aspect-ratio:4/3;object-fit:cover}
.store-home-article-grid>a>div{padding:18px}
.store-home-article-grid p{color:var(--olive);font-size:10px;letter-spacing:.13em;text-transform:uppercase}
.store-home-article-grid h3{margin:9px 0 16px;font:300 22px/1.3 "Fraunces",Georgia,serif}
.store-home-article-grid span{color:var(--terra);font-size:12px}
.store-home-faqs{max-width:672px}
.store-home-faqs h2{margin-bottom:48px;font-size:36px;font-weight:300;line-height:1.111}
.store-home-faqs .faq-row{padding:0;border-bottom:1px solid rgba(var(--ink-rgb),.16)}
.store-home-faqs .faq-row{border-radius:10px}
.store-home-final-cta{overflow:hidden;padding:0 24px;background:var(--ink)}
.store-home-final-cta>div{display:grid;width:min(1152px,100%);min-height:568px;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;margin:0 auto}
.store-home-final-image{position:relative;display:flex;min-height:520px;align-items:flex-end;justify-content:center}
.store-home-final-image img{position:relative;z-index:1;width:auto;max-width:100%;max-height:540px;margin-bottom:60px;object-fit:contain;object-position:bottom}
.store-home-final-image>span{position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(to right,transparent 60%,var(--ink) 100%)}
.store-home-final-copy{position:relative;z-index:3;display:flex;flex-direction:column;justify-content:flex-end;padding:40px 56px 40px 32px}
.store-home-final-copy .store-kicker{color:var(--sand);opacity:.85}
.store-home-final-copy h2{margin:0 0 32px;color:var(--sand);font:500 60px/1.1 "Fraunces",Georgia,serif}
.store-home-final-copy .store-body-copy,
.store-home-final-copy .store-body-copy p,
.store-home-final-copy>p:not(.store-kicker){max-width:420px;margin:0 0 40px;color:var(--sand) !important;font-size:15px;line-height:1.65;opacity:.88}
.store-home-final-copy .store-body-copy strong,
.store-home-final-copy .store-body-copy b,
.store-home-final-copy .store-body-copy em{color:var(--sand)}
.store-home-final-copy>div{display:flex;flex-wrap:wrap;gap:16px}
.store-home-whatsapp{display:inline-flex;align-items:center;justify-content:center;padding:15px 24px;border:1px solid rgba(var(--cream-rgb),.3);border-radius:99px;color:var(--sand);font-size:13px;letter-spacing:.12em;text-transform:uppercase;transition:background-color .2s,border-color .2s}
.store-home-whatsapp:hover{border-color:var(--sand);background:rgba(var(--cream-rgb),.08)}

.store-product-page{padding-bottom:48px}
.store-product-breadcrumb{padding:24px 24px 8px}
.store-product-breadcrumb>div{width:min(1152px,100%);margin:0 auto}
.store-product-breadcrumb a{color:var(--olive);font-size:13px}
.store-product-breadcrumb>a,.store-product-breadcrumb>div>a{display:inline-block;margin-bottom:12px;font-weight:500}
.store-product-breadcrumb p{margin:0;color:var(--olive);font-size:13px}
.store-product-breadcrumb p span{color:var(--ink)}
.store-product-main{display:grid;width:min(1152px,calc(100% - 48px));grid-template-columns:1fr 1fr;align-items:start;gap:64px;margin:0 auto;padding:32px 0 48px}
.store-product-main-image{overflow:hidden;border-radius:16px;background:var(--sand);aspect-ratio:4/5}
.store-product-main-image img{width:100%;height:100%;object-fit:cover}
.store-product-thumbnails{display:flex;gap:8px;margin-top:12px}
.store-product-thumbnails button{width:72px;height:84px;overflow:hidden;padding:0;border:2px solid var(--terra);border-radius:9px;background:var(--sand)}
.store-product-thumbnails img{width:100%;height:100%;object-fit:cover}
.store-product-information{padding-top:2px}
.store-product-subtitle{margin:0 0 12px;color:var(--olive);font-size:14px;letter-spacing:.12em;text-transform:uppercase}
.store-product-information h1{margin:0 0 12px;color:var(--ink);font:500 clamp(38px,4vw,56px)/1.12 "Fraunces",Georgia,serif}
.store-product-pack{margin:0 0 20px;color:var(--olive);font-size:16px}
.store-product-rating{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.store-product-rating>span{color:var(--terra);font-size:17px;letter-spacing:.08em}
.store-product-rating p{margin:0;color:var(--olive);font-size:15px}
.store-product-price{margin:0 0 12px;color:var(--ink);font:500 32px/1.1 "Fraunces",Georgia,serif}
.store-product-payment{margin:0 0 22px;color:var(--olive);font-size:15px;line-height:1.8}
.store-product-purchase{display:flex;gap:12px;margin:0 0 14px}
.store-product-purchase>.store-button{flex:1;min-height:52px;font-size:14px}
.store-product-quantity{display:flex;min-width:124px;align-items:center;justify-content:center;overflow:hidden;border:1px solid rgba(var(--ink-rgb),.18);border-radius:999px}
.store-product-quantity button{padding:12px 15px;color:var(--ink);font-size:18px;cursor:pointer}
.store-product-quantity input{width:34px;padding:0;border:0;outline:0;background:transparent;color:var(--ink);font-size:15px;text-align:center;appearance:textfield}
.store-product-quantity input::-webkit-inner-spin-button,.store-product-quantity input::-webkit-outer-spin-button{margin:0;appearance:none}
.store-product-delivery{margin:0 0 22px;color:var(--olive);font-size:14px;line-height:1.8;text-align:center}
.store-product-cod{display:flex;align-items:center;gap:10px;padding:12px;border-radius:12px;background:var(--rose)}
.store-product-cod>span{color:var(--terra)}
.store-product-cod p{margin:0;color:var(--ink);font-size:14px;line-height:1.6}
.store-product-favourite{margin-top:14px}
.store-product-favourite .store-button-outline{min-height:38px;padding:9px 16px;font-size:10px}
.store-product-content{width:min(896px,calc(100% - 48px));margin:24px auto 0}
.store-product-tabs{display:flex;gap:32px;overflow-x:auto;border-bottom:1px solid rgba(var(--ink-rgb),.12);scrollbar-width:none}
.store-product-tabs button{flex-shrink:0;padding:0 0 14px;border-bottom:2px solid transparent;background:transparent;color:var(--olive);font-size:15px;cursor:pointer}
.store-product-tabs button[aria-selected=true]{border-color:var(--terra);color:var(--ink);font-weight:600}
.store-product-panels{padding:30px 0}
.store-product-panels[hidden],.store-product-panels [hidden]{display:none!important}
.store-product-overview{margin:0 0 26px;color:var(--olive);font-size:16px;line-height:1.8}
.store-product-highlight{display:grid;gap:10px;margin:0 0 28px;padding:20px;border-radius:14px;background:var(--rose)}
.store-product-highlight>p{margin:0 0 4px;color:var(--terra);font-size:11px;letter-spacing:.14em;text-transform:uppercase}
.store-product-highlight>span{color:var(--ink);font-size:14px;line-height:1.7}
.store-product-benefits{display:grid;gap:13px;margin:0 0 26px}
.store-product-benefits li{display:flex;align-items:flex-start;gap:12px;color:var(--olive);font-size:15px;line-height:1.7}
.store-product-benefits li>i,.store-product-usage li>i{width:6px;height:6px;flex-shrink:0;margin-top:10px;border-radius:50%;background:var(--terra)}
.store-product-benefits li.store-product-benefit-heading{padding-top:12px;color:var(--ink);font:300 22px "Fraunces",Georgia,serif}
.store-product-accordion{padding:17px 0;border-bottom:1px solid rgba(var(--ink-rgb),.15)}
.store-product-accordion summary{display:flex;align-items:center;justify-content:space-between;gap:18px;color:var(--ink);font:300 20px "Fraunces",Georgia,serif;cursor:pointer;list-style:none}
.store-product-accordion summary::-webkit-details-marker{display:none}
.store-product-accordion summary:after{color:var(--terra);content:"+";font:24px "Jost",Arial,sans-serif}
.store-product-accordion[open] summary:after{content:"−"}
.store-product-accordion>p{margin:14px 0 0;padding-top:13px;border-top:1px solid rgba(var(--ink-rgb),.12);color:var(--olive);font-size:14px;line-height:1.8}
.store-product-usage{display:grid;gap:18px;margin:0 0 28px}
.store-product-usage li{display:flex;align-items:flex-start;gap:14px;color:var(--olive);font-size:15px;line-height:1.8}
.store-product-suitable{padding:20px;border-radius:14px;background:var(--sand)}
.store-product-suitable h2{margin:0 0 14px;color:var(--ink);font:300 22px "Fraunces",Georgia,serif}
.store-product-suitable p{display:flex;gap:10px;margin:6px 0;color:var(--olive);font-size:15px}
.store-product-suitable p span{color:var(--terra)}
.store-product-reviews{display:grid;gap:18px}
.store-product-reviews article{padding:22px;border-radius:14px;background:var(--sand)}
.store-product-reviews blockquote{margin:12px 0 18px;color:var(--ink);font:italic 300 17px/1.6 "Fraunces",Georgia,serif}
.store-product-reviews hr{margin:0 0 12px;border:0;border-top:1px solid rgba(var(--ink-rgb),.12)}
.store-product-reviews article>p{margin:0;color:var(--olive);font-size:13px}
.store-product-reviews article>small{display:inline-block;margin-top:8px;padding:5px 10px;border-radius:99px;background:var(--rose);color:var(--terra);font-size:10px;letter-spacing:.08em;text-transform:uppercase}
.store-product-cross-sell{width:min(896px,calc(100% - 48px));margin:30px auto 0;padding-top:34px;border-top:1px solid rgba(var(--ink-rgb),.1)}
.store-product-cross-sell-heading{margin-bottom:24px}
.store-product-cross-sell h2{margin:0 0 8px;color:var(--ink);font:300 28px "Fraunces",Georgia,serif}
.store-product-cross-sell-heading p{margin:0;color:var(--olive);font-size:14px}
.store-product-cross-sell .store-home-product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.store-product-sticky{display:none}

@media(max-width:899px){
    .store-home-hero-desktop{min-height:82vh}
    .store-home-hero-copy h1{font-size:60px}
    .store-home-problem-main{grid-template-columns:minmax(0,1fr) minmax(0,1fr);width:calc(100% - 64px);gap:24px}
    .store-home-problem-copy{grid-column:1/-1;max-width:680px}
    .store-home-problem-copy h2{max-width:680px}
    .store-home-problem-serum{min-height:310px}
    .store-home-problem-serum img{height:310px}
    .store-home-problem-shelf{min-height:300px}
    .store-home-problem-callout{position:static;display:block;grid-column:1/-1;padding:8px 0;border-top:1px solid rgba(var(--ink-rgb),.1);font-size:23px}
    .store-home-problem-callout svg{display:none}
    .store-home-problem-stats{padding-inline:32px}
    .store-home-section{padding:112px 56px}
    .store-home-section .store-home-container{width:100%}
    .store-home-dermatologist{padding:0 56px}
    .store-home-method{padding:112px 56px}
    .store-home-guide{padding-right:56px;padding-left:56px}
    .store-home-final-cta{padding-right:56px;padding-left:56px}
    .store-product-main{gap:32px}
    .store-product-information h1{font-size:42px}
    .store-product-payment{font-size:13px}
    .store-product-quantity{min-width:102px}
    .store-product-quantity button{padding-inline:11px}
}
@media(min-width:768px) and (max-width:1023px){
    .store-home-section-heading h2,.store-home-centered-heading h2,.store-home-faqs h2,.store-home-dermatologist h2,.store-home-guide h2,.store-home-final-copy h2{font-size:clamp(32px,4.1vw,40px);line-height:1.2}
    .store-home-method-steps h3{font-size:clamp(18px,2.2vw,22px);line-height:1.25}
    .store-home-method-steps article>div>p,
    .store-home-method-steps .store-body-copy,
    .store-home-method-steps .store-body-copy p{font-size:16px;line-height:26px}
    .store-home-method-steps article>div>small{font-size:11px;line-height:24px}
    .store-home-final-copy>p:not(.store-kicker),
    .store-home-final-copy .store-body-copy,
    .store-home-final-copy .store-body-copy p{font-size:16px;line-height:26px}
}
@media(min-width:768px) and (max-width:899px){
    .store-home-method-steps .store-button{min-height:48px;padding:12px 24px;font-size:12px}
    .store-home-final-copy .store-button,.store-home-whatsapp{min-height:56px;padding:16px 32px;font-size:16px;line-height:24px}
    .store-home-whatsapp{min-height:58px}
}
@media(max-width:767px){
    .store-home-hero-desktop>img{position:relative;inset:auto;height:56vw;min-height:200px;max-height:340px}
    .store-home-hero-desktop{min-height:0;align-items:flex-start;flex-direction:column}
    .store-home-hero-desktop>div:nth-child(2){display:none}
    .store-home-hero-copy{width:100%;padding:48px 24px}
    .store-home-hero-copy>.store-kicker{margin-bottom:12px;font-size:13px;line-height:normal}
    .store-home-hero-copy h1{margin-bottom:24px;font-size:48px;font-weight:500}
    .store-home-hero-description{margin-bottom:40px;font-size:16px;line-height:26px}
    .store-home-hero-copy .store-button,.store-home-hero-copy .store-button-outline{min-width:0;min-height:44px;padding:14px 28px;font-size:13px;line-height:normal}
    .store-home-section{padding:80px 24px}
    .store-home-container{width:100%}
    .store-home-section-heading{align-items:flex-start;flex-direction:column;margin-bottom:48px}
    .store-home-section-heading h2,.store-home-centered-heading h2{font-size:36px}
    .store-home-faqs h2{font-size:36px}
    .store-home-section-heading .store-button-outline{align-self:flex-start}
    .store-home-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}
    .store-home-product-copy h3{font-size:16px}
    .store-home-product-image .store-favourite-button{width:34px;height:34px;opacity:1;transform:none}
    .store-home-problem-main{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:end;width:min(100% - 32px,560px);gap:14px;padding:36px 0 24px}
    .store-home-problem-copy{grid-column:1/-1;margin-bottom:8px}
    .store-home-problem-kicker{margin-bottom:12px;font-size:11px;letter-spacing:.18em}
    .store-home-problem-copy h2{margin-bottom:14px;font-size:clamp(28px,7.5vw,42px);line-height:1.15}
    .store-home-problem-description,.store-home-problem-copy>p:last-child{font-size:15px !important;line-height:1.6;color:var(--olive)}
    .store-home-problem-serum{min-height:0;height:270px;display:flex;align-items:flex-end;justify-content:center;padding-bottom:2px}
    .store-home-problem-serum img{height:auto;max-height:260px;width:auto;max-width:100%;object-fit:contain;filter:drop-shadow(4px 10px 8px rgba(var(--ink-rgb),.16))}
    .store-home-problem-shelf{min-height:0;height:270px;display:flex;flex-direction:column;justify-content:space-between;align-items:center;padding:16px 10px 14px;border-radius:96px 96px 14px 14px;box-sizing:border-box}
    .store-home-problem-shelf-title{position:static;top:auto;left:auto;width:100%;margin:0 0 4px;font:italic 400 clamp(16px,4vw,20px)/1.2 "Fraunces",Georgia,serif;text-align:center}
    .store-home-problem-shelf-image-wrap{height:146px;max-height:150px;width:100%;padding:0 4px 6px;border-bottom:3px solid rgba(var(--olive-rgb),.28);display:flex;align-items:flex-end;justify-content:center}
    .store-home-problem-shelf-image{max-height:140px;width:auto;max-width:100%;object-fit:contain}
    .store-home-problem-products{height:146px;gap:3px;padding:0 4px 6px;border-bottom:3px solid rgba(var(--olive-rgb),.28)}
    .problem-product{flex-basis:22px;min-width:14px}
    .problem-product-dropper{height:110px}
    .problem-product-tube{height:100px}
    .problem-product-pump{height:120px}
    .problem-product-jar{height:72px}
    .problem-product-serum{height:86px}
    .problem-product-toner{height:124px}
    .problem-product-cream{height:74px}
    .problem-product-mini{height:82px}
    .store-home-problem-note{margin:6px 0 0;font-size:clamp(8px,2.2vw,10px);letter-spacing:.08em;line-height:1.35;text-align:center}
    .store-home-problem-callout{position:static;display:block;grid-column:1/-1;margin:10px 0 0;padding:16px 8px 0;border-top:1px solid rgba(var(--ink-rgb),.1);font:italic 400 clamp(19px,5vw,24px)/1.2 "Fraunces",Georgia,serif;text-align:center}
    .store-home-problem-callout svg{display:none}
    .store-home-problem-stats{padding:22px 14px;gap:8px}
    .store-home-problem-stats strong{font-size:clamp(26px,6.5vw,34px)}
    .store-home-problem-stats span{font-size:clamp(8.5px,2.2vw,10px);letter-spacing:.08em;text-align:center}
    .store-creator-grid{display:flex;overflow-x:auto;gap:14px;padding-bottom:14px;scroll-snap-type:x mandatory;scrollbar-width:none}
    .store-creator-grid::-webkit-scrollbar{display:none}
    .store-creator-card{flex:0 0 272px;scroll-snap-align:start}
    .store-home-philosophy{padding:0 24px}
    .store-home-philosophy-inner{grid-template-columns:1fr;min-height:0}
    .store-home-philosophy-copy{padding:64px 32px}
    .store-home-philosophy-media{min-height:420px;padding:40px 32px}
    .store-home-philosophy-media video{max-width:360px}
    .store-home-concern-grid{grid-template-columns:1fr;gap:14px}
    .store-home-concern-grid{grid-template-columns:1fr}
    .store-home-review-grid{display:flex;overflow-x:auto;gap:14px;padding-bottom:12px;scroll-snap-type:x mandatory;scrollbar-width:none}
    .store-home-review-grid article{flex:0 0 280px;scroll-snap-align:start}
    .store-home-dermatologist{padding:0 24px}
    .store-home-dermatologist-inner{grid-template-columns:1fr}
    .store-home-dermatologist-inner>img{min-height:0;max-height:440px;aspect-ratio:4/3}
    .store-home-dermatologist-inner>div{padding:64px 32px}
    .store-home-dermatologist h2{font-size:36px}
    .store-home-method{padding:80px 24px}
    .store-home-method-steps{gap:64px}
    .store-home-method>.store-home-centered-heading{margin-bottom:64px}
    .store-home-method-steps article{grid-template-columns:1fr;gap:20px}
    .store-home-method-steps article:nth-child(even)>div{order:0}
    .store-home-method-steps article>div>span{font-size:180px}
    .store-home-method-steps h3{font-size:34px}
    .store-home-method-steps article>img{aspect-ratio:4/3}
    .store-home-routine-grid{grid-template-columns:1fr;gap:20px}
    .store-home-routine-copy{padding:12px 12px 8px}
    .store-home-routine-grid>article>form{margin:0 12px 12px}
    .store-home-guide{min-height:0;grid-template-columns:1fr;gap:22px;padding:36px 24px 44px}
    .store-home-guide>img{display:none}
    .store-home-guide>div{padding:0}
    .store-home-final-cta{padding:0 24px}
    .store-home-final-cta>div{grid-template-columns:1fr}
    .store-home-final-cta>div{min-height:560px}
    .store-home-final-image{display:none}
    .store-home-final-copy{min-height:560px;padding:40px 0}
    .store-home-final-copy h2{font-size:42px}
    .store-home-reviews,.store-home-guide{min-height:641px}
    .store-home-guide{min-height:692px}
    .store-home-article-grid{grid-template-columns:1fr;gap:14px}
    .store-product-breadcrumb{padding:20px 20px 0}
    .store-product-main{width:100%;grid-template-columns:1fr;gap:22px;padding:20px 20px 34px}
    .store-product-main-image{border-radius:12px}
    .store-product-information h1{font-size:38px}
    .store-product-price{font-size:30px}
    .store-product-content,.store-product-cross-sell{width:calc(100% - 40px)}
    .store-product-tabs{gap:22px}
    .store-product-tabs button{font-size:14px}
    .store-product-cross-sell .store-home-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .store-product-sticky{position:fixed;right:0;bottom:0;left:0;z-index:35;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 16px;border-top:1px solid rgba(var(--ink-rgb),.1);background:var(--cream)}
    .store-product-sticky>span{color:var(--ink);font:400 16px "Fraunces",Georgia,serif}
    .store-product-sticky .store-button{min-width:55%;padding:12px;font-size:11px}
    .store-product-page{padding-bottom:72px}
}
@media(hover:none){
    .store-home-product-image .store-favourite-button{opacity:1;transform:none}
}
/* Main Navigation Bar Links */
.store-nav-links {
    position: relative;
}
.store-nav-link {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 13px;
    border-radius: 999px;
    color: var(--ink);
    font-family: var(--font-sans, "Jost", Arial, sans-serif);
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    text-decoration: none;
    white-space: nowrap;
    transition: color 0.22s cubic-bezier(0.4, 0, 0.2, 1),
                background-color 0.22s cubic-bezier(0.4, 0, 0.2, 1),
                transform 0.18s ease;
}
.store-nav-link > span {
    position: relative;
    z-index: 1;
}
.store-nav-link .store-nav-arrow {
    transition: transform 0.24s cubic-bezier(0.4, 0, 0.2, 1);
}
.store-nav-link:hover,
.store-nav-link:focus-visible {
    color: var(--terra);
    background-color: rgba(var(--terra-rgb), 0.08);
}
.store-shop-menu:hover #shop-menu-link .store-nav-arrow,
.store-shop-menu.is-active #shop-menu-link .store-nav-arrow {
    transform: rotate(180deg);
}
.store-nav-link::after {
    content: "";
    position: absolute;
    bottom: 3px;
    left: 14px;
    right: 14px;
    height: 2px;
    background-color: var(--terra);
    border-radius: 99px;
    transform: scaleX(0);
    transform-origin: center;
    transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.2s ease;
    opacity: 0;
    pointer-events: none;
}
.store-nav-link:hover::after {
    transform: scaleX(0.75);
    opacity: 0.65;
}
.store-nav-link.is-active,
.store-nav-link[aria-current="page"] {
    color: var(--terra) !important;
    font-weight: 600;
    background-color: rgba(var(--terra-rgb), 0.11);
}
.store-nav-link.is-active::after,
.store-nav-link[aria-current="page"]::after {
    transform: scaleX(1);
    opacity: 1;
}
.store-links a.is-active { color: var(--terra); }
.store-shop-concerns{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:24px 0}
.store-shop-concerns>span{margin-right:4px;color:var(--olive);font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.store-chip{transition:background .2s,color .2s}
.store-chip:hover,.store-chip.is-active{background:var(--terra);color:#fff}
.store-blog-categories{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 28px}
.store-faq-content{max-width:850px}
.store-faq-contact{margin-top:48px;padding:32px;border-radius:16px;background:var(--rose)}
.store-faq-contact h2{margin:0 0 8px;font:300 30px "Fraunces",Georgia,serif}
.store-faq-contact p{margin:0 0 20px;color:var(--olive);font-size:14px}
.store-contact-content{align-items:start}
.store-contact-copy{padding:0}
.store-contact-intro{max-width:560px;margin:0 0 39px;color:var(--olive);font-size:15px;line-height:1.75}
.store-contact-methods{display:grid;gap:29px}
.store-contact-method{display:flex;min-width:0;align-items:flex-start;gap:16px;padding:0;border:0;border-radius:0;background:transparent}
.store-contact-method-icon{display:grid;flex:0 0 40px;width:40px;height:40px;place-items:center;border-radius:50%;background:var(--sand);color:var(--terra)}
.store-contact-method-icon svg{width:20px;height:20px}
.store-contact-method-icon--whatsapp{color:#08c86a}
.store-contact-method>div{display:grid;min-width:0;gap:3px}
.store-contact-method>div>span:not(.store-contact-detail-value){color:var(--olive);font-size:14px;font-weight:400;letter-spacing:.12em;text-transform:uppercase}
.store-contact-method a,.store-contact-detail-value,.store-contact-method p{overflow-wrap:anywhere;margin:0;color:var(--ink);font-size:14px;line-height:1.5;text-decoration:none}
.store-contact-method a{font-weight:500}
.store-contact-method p{color:var(--olive);font-weight:400}
.store-contact-method a:hover{color:var(--terra);text-decoration:underline}
.store-contact-empty{margin:0;color:var(--olive);font-size:13px;line-height:1.7}
.store-contact-form-card{padding:0;border:0;border-radius:0;background:transparent}
.store-contact-content .store-contact-form{width:100%;max-width:none;gap:18px}
.store-contact-form label{gap:9px;color:var(--olive);font-size:15px;font-weight:400;letter-spacing:.1em;text-transform:uppercase}
.store-contact-form input,.store-contact-form select,.store-contact-form textarea{min-height:58px;padding:16px 20px;border:1px solid rgba(var(--ink-rgb),.12);border-radius:999px;background:var(--sand);color:var(--ink);font:14px "Jost",Arial,sans-serif;letter-spacing:normal;text-transform:none}
.store-contact-form select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--olive) 50%),linear-gradient(135deg,var(--olive) 50%,transparent 50%);background-position:calc(100% - 22px) 25px,calc(100% - 16px) 25px;background-repeat:no-repeat;background-size:6px 6px,6px 6px}
.store-contact-form input::placeholder,.store-contact-form textarea::placeholder{color:rgba(var(--ink-rgb),.55);opacity:1}
.store-contact-form textarea{min-height:154px;border-radius:16px;resize:vertical}
.store-contact-form .store-button{width:100%;min-height:56px;margin-top:4px;font-size:13px}
.store-cms-content,.store-article-content{max-width:850px}
.store-article-content>.store-body-copy{margin:24px 0 32px;font-size:16px;line-height:1.9}
.store-article-content>.store-button-outline{margin-top:12px}
.store-hero+[id],.store-section[id]{scroll-margin-top:100px}
.store-concern-routines{display:grid;gap:24px}
.store-concern-routine{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);overflow:hidden;border-radius:16px;background:#fffdf8;box-shadow:0 5px 25px rgba(var(--ink-rgb),.07)}
.store-concern-routine-image{display:block;min-height:100%;overflow:hidden;background:var(--sand)}
.store-concern-routine-image img,.store-concern-learning-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s}
.store-concern-routine-image:hover img,.store-concern-learning-image:hover img{transform:scale(1.04)}
.store-concern-routine>div{padding:32px}
.store-concern-routine h3{margin:0 0 10px;font:300 30px/1.2 "Fraunces",Georgia,serif}
.store-concern-routine>div>p:not(.store-kicker){color:var(--olive);font-size:14px;line-height:1.7}
.store-concern-steps{display:grid;gap:10px;margin:20px 0;padding:0;list-style:none}
.store-concern-steps li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;padding-bottom:10px;border-bottom:1px solid rgba(var(--ink-rgb),.12);font-size:13px}
.store-concern-steps li span{color:var(--olive);font-size:11px;text-transform:uppercase}
.store-concern-learning{display:grid;grid-template-columns:1fr .8fr;align-items:center;gap:48px}
.store-concern-learning-image{display:block;overflow:hidden;min-height:340px;border-radius:16px;background:var(--sand)}
.store-concern-body{max-width:850px}
.store-concern-cta{padding:48px;border-radius:18px;background:var(--rose);text-align:center}
.store-concern-cta h2{margin:8px auto 12px;font:300 clamp(32px,4vw,46px)/1.15 "Fraunces",Georgia,serif}
.store-concern-cta>p:not(.store-kicker){margin:0 auto 22px;color:var(--olive);font-size:14px}
.store-mobile-menu > a {
    display: flex;
    align-items: center;
    padding: 10px 14px;
    border-radius: 8px;
    color: var(--ink);
    text-decoration: none;
    transition: color 0.2s ease, background-color 0.2s ease, padding-left 0.2s ease;
}
.store-mobile-menu > a:hover {
    color: var(--terra);
    background-color: rgba(var(--terra-rgb), 0.06);
    padding-left: 18px;
}
.store-mobile-menu > a.is-active {
    color: var(--terra) !important;
    font-weight: 600;
    background-color: rgba(var(--terra-rgb), 0.10);
}
.store-checkout-container{max-width:1000px}
.store-checkout-grid{align-items:start;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:44px}
.store-checkout-form{max-width:none;padding:30px;border:1px solid rgba(var(--ink-rgb),.12);border-radius:14px;background:#fffdf8}
.store-account-registration{display:grid;gap:8px;margin:2px 0;padding:16px;border:1px solid rgba(var(--ink-rgb),.14);border-radius:10px;background:var(--cream)}
.store-account-registration legend{padding:0 6px;color:var(--ink);font:300 18px/1.3 "Fraunces",Georgia,serif}
.store-account-registration>p{margin:0;color:var(--olive);font-size:12px;line-height:1.5}
.store-account-registration-choice{display:flex!important;align-items:center;gap:10px;color:var(--ink)!important;font-size:13px!important;cursor:pointer}
.store-account-registration-choice input[type=checkbox]{flex:0 0 17px;width:17px;min-height:17px;margin:0;accent-color:var(--terra)}
#checkout-account-passwords{gap:12px;margin-top:8px}
#checkout-account-passwords label{display:grid}
.store-order-summary{position:sticky;top:112px;padding:28px}
.store-order-summary>p,.store-cart-summary>p{display:flex;justify-content:space-between;gap:20px;color:var(--olive);font-size:14px;line-height:1.5}
.store-order-summary strong,.store-cart-summary strong{color:var(--ink);text-align:right}
.store-order-summary h3{display:flex;justify-content:space-between;gap:20px;font-size:18px}
.store-order-summary h3 strong{font-weight:600}
.store-order-summary hr,.store-cart-summary hr{margin:18px 0;border:0;border-top:1px solid rgba(var(--ink-rgb),.18)}
.store-cart-summary{width:min(460px,100%);margin:24px 0 0 auto}
.store-cart-summary>.store-button{width:100%}
.store-discount-form{display:grid;gap:8px;margin:0 0 22px;padding:16px;border:1px solid rgba(var(--ink-rgb),.12);border-radius:8px;background:rgba(255,253,248,.72)}
.store-discount-form>label{color:var(--olive);font-size:13px}
.store-discount-form>div{display:flex;gap:8px}
.store-discount-form input{width:100%;min-width:0;min-height:42px;padding:9px 11px;border:1px solid rgba(var(--ink-rgb),.2);border-radius:5px;background:#fffdf8;color:var(--ink)}
.store-discount-form button{white-space:nowrap}
.store-discount-form button:disabled,.store-discount-form input:disabled{opacity:.65}
.store-form-error{color:#a83428;font-size:12px}
.store-applied-discount{margin:0 0 16px;padding:12px;border-radius:7px;background:#e2eddf;color:#42603b}
.store-applied-discount>div,.store-applied-discount p{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0;font-size:13px;font-weight:600}
.store-applied-discount form{margin:0}
.store-applied-discount button,.store-discount-return a{padding:0;border:0;background:transparent;color:#42603b;text-decoration:underline;cursor:pointer;font:inherit}
.store-applied-discount small{display:block;margin-top:5px;font-size:11px}
.store-discount-return{font-size:12px!important}
.store-discount-return a{color:var(--olive)}
.store-body-copy p{margin:0 0 1em}
.store-body-copy p:last-child{margin-bottom:0}
.store-card-excerpt{margin:0 0 12px;color:var(--olive);font-size:13px;line-height:1.55}
.store-card-excerpt p{margin:0 0 .5em}
.store-card-excerpt p:last-child{margin-bottom:0}
.store-body-copy h2,.store-body-copy h3,.store-body-copy h4{margin:1.25em 0 .5em;color:var(--ink);font-family:var(--font-serif,Georgia,serif);font-weight:400;line-height:1.2}
.store-body-copy ul,.store-body-copy ol{padding-left:1.5em}
.store-body-copy blockquote{margin:1em 0;padding-left:1em;border-left:2px solid var(--terracotta,var(--terra));color:var(--olive)}
.store-home-review-grid article>.store-home-review-quote{position:relative;flex:1;margin:16px 0 20px;padding:0 12px;color:var(--ink);font:300 16px/1.625 "Fraunces",Georgia,serif}
.store-home-review-quote:before,.store-home-review-quote:after{position:absolute;color:var(--terracotta,var(--terra));font:300 25px/1 "Fraunces",Georgia,serif}
.store-home-review-quote:before{top:-3px;left:0;content:"“"}
.store-home-review-quote:after{right:0;bottom:-4px;content:"”"}
.store-track-content,.store-confirmation-content{width:min(760px,calc(100% - 48px));margin-inline:auto}
.store-track-content>.store-form{max-width:none;padding:30px;border-radius:14px;background:#fffdf8;box-shadow:0 5px 25px rgba(var(--ink-rgb),.07)}
.store-track-result{margin-top:25px}
.store-confirmation-content>.store-detail-copy{margin:24px 0}
.store-confirmation-actions{display:flex;flex-wrap:wrap;gap:10px}
@media(max-width:600px){
    .store-shop-concerns{align-items:flex-start}
    .store-shop-concerns>span{width:100%}
    .store-faq-contact{padding:24px}
    .store-concern-routine{grid-template-columns:1fr}
    .store-concern-routine-image{aspect-ratio:4/3}
    .store-concern-routine>div{padding:22px}
    .store-concern-learning{grid-template-columns:1fr;gap:24px}
    .store-concern-learning-image{min-height:0;aspect-ratio:4/3}
    .store-concern-cta{padding:34px 22px}
}
@media(max-width:760px){
    .store-checkout-grid{grid-template-columns:1fr;gap:22px}
    .store-order-summary{position:static}
    .store-checkout-form,.store-track-content>.store-form{padding:22px}
}

.store-home-method-steps .method-step-count{font-size:clamp(100px,12vw,124px)!important;line-height:.9!important;margin-bottom:12px!important}
.creators-carousel-controls{display:none}
.store-home-reviews .store-home-review-grid.testimonial-carousel-track{display:flex!important;width:100%;gap:20px;overflow:visible;padding:0;will-change:transform}
.store-home-reviews .testimonial-carousel-viewport{overflow:hidden;margin:0 -4px;padding:4px;touch-action:pan-y;cursor:grab}
.store-home-reviews .testimonial-carousel-viewport:active{cursor:grabbing}
.store-home-reviews .testimonial-carousel-track>.testimonial-slide{flex:0 0 calc((100% - 40px)/3);min-width:0;min-height:267px;user-select:none}
.store-home-reviews .testimonial-carousel-track>.testimonial-slide[aria-hidden=true]{pointer-events:none}
.store-home-reviews .testimonial-carousel-controls{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:24px}
.testimonial-carousel-arrow{display:grid;width:42px;height:42px;place-items:center;border:1px solid rgba(var(--ink-rgb),.25);border-radius:50%;background:var(--cream);color:var(--ink);font:24px/1 "Jost",Arial,sans-serif;transition:background-color 180ms ease,color 180ms ease,border-color 180ms ease}
.testimonial-carousel-arrow:hover,.testimonial-carousel-arrow:focus-visible{border-color:var(--terra);background:var(--terra);color:var(--cream)}
.testimonial-carousel-dots{display:flex;align-items:center;justify-content:center;gap:8px}
.testimonial-carousel-dot{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:rgba(var(--olive-rgb),.35);transition:width 180ms ease,border-radius 180ms ease,background-color 180ms ease}
.testimonial-carousel-dot.is-active{width:22px;border-radius:999px;background:var(--terra)}

@media(max-width:1023px){
    .store-home-creators .creators-carousel-viewport{min-width:0;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y}
    .store-home-creators .creators-carousel-viewport::-webkit-scrollbar,.store-home-reviews .testimonial-carousel-viewport::-webkit-scrollbar{display:none}
    .store-home-creators .store-creator-grid{display:flex!important;width:max-content;min-width:100%;gap:20px;overflow:visible;padding:0 2px 12px}
    .store-home-creators .store-creator-grid>.store-creator-card{flex:0 0 min(82vw,288px);scroll-snap-align:start}
    .store-home-creators .creators-carousel-controls{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:12px}
    .creators-carousel-arrow{display:grid;width:40px;height:40px;place-items:center;border:1px solid rgba(var(--ink-rgb),.25);border-radius:50%;background:var(--cream);color:var(--ink);font:23px/1 "Jost",system-ui,sans-serif;transition:background-color 180ms ease,color 180ms ease,border-color 180ms ease}
    .creators-carousel-arrow:hover:not(:disabled),.creators-carousel-arrow:focus-visible{border-color:var(--terra);background:var(--terra);color:var(--cream)}
    .creators-carousel-arrow:disabled{cursor:default;opacity:.4}
    .creators-carousel-dots{display:flex;align-items:center;justify-content:center;gap:8px}
    .creators-carousel-dot{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:rgba(var(--olive-rgb),.35);transition:width 180ms ease,border-radius 180ms ease,background-color 180ms ease}
    .creators-carousel-dot.is-active{width:22px;border-radius:999px;background:var(--terra)}
}

@media(max-width:900px){
    .store-home-reviews .testimonial-carousel-track>.testimonial-slide{flex-basis:calc((100% - 20px)/2)}
}

@media(max-width:767px){
    .store-home-reviews{min-height:0}
}

@media(max-width:600px){
    .store-home-reviews .testimonial-carousel-viewport{overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none;scroll-snap-type:x mandatory}
    .store-home-reviews .testimonial-carousel-track{width:max-content;min-width:100%;gap:16px;transform:none!important}
    .store-home-reviews .testimonial-carousel-track>.testimonial-slide{flex:0 0 calc(100vw - 52px);scroll-snap-align:start}
    .store-home-reviews .testimonial-carousel-controls{gap:14px}
}

@media(max-width:767px){
    .store-home-reviews{min-height:689px}
    .store-home-philosophy-copy>p:first-child{font-size:16px;line-height:24px}
    .store-home-philosophy-copy>p:not(:first-child){font-size:16px;line-height:26px}
    .store-home-philosophy-copy>em{font-size:16px;line-height:24px}
    .store-home-philosophy-media video{max-width:274px}
    .store-home-method .store-home-centered-heading h2{max-width:300px;margin-inline:auto;line-height:1.25}
    .store-home-method-steps article{gap:40px}
    .store-home-method-steps h3{margin-bottom:16px;font-size:36px;line-height:40px}
    .store-home-method-steps article>div>p{margin:0 0 24px;font-size:16px;line-height:26px}
    .store-home-method-steps article>div>small{font-size:16px;line-height:24px}
    .store-home-method-steps article>img{aspect-ratio:1/1}
    .store-home-method-steps .store-button{min-height:48px;margin-top:20px;padding:12px 24px;font-size:16px;line-height:24px}
    .store-home-reviews .store-home-section-heading h2{line-height:1.111}
    .store-home-reviews .testimonial-carousel-track>.testimonial-slide{min-height:283px}
}

@media(min-width:768px) and (max-width:1023px){
    .store-home-creators .store-home-section-heading>div{max-width:375px}
    .store-home-creators .creators-carousel-viewport{min-height:588px}
    .store-home-reviews{min-height:697px}
    .store-home-method-steps h3{margin-bottom:16px}
    .store-home-method-steps article>div>p{margin-bottom:24px}
    .store-home-method-steps article>div>small{font-size:16px;line-height:24px}
    .store-home-method-steps .store-button{margin-top:20px;font-size:16px;line-height:24px}
}

@media(prefers-reduced-motion:reduce){
    .creators-carousel-arrow,.creators-carousel-dot,.testimonial-carousel-track,.testimonial-carousel-arrow,.testimonial-carousel-dot{transition:none!important}
}

.store-card.product-card,.store-home-product.product-card{
    position:relative;
    z-index:0;
    overflow:visible;
    margin:-8px;
    padding:8px;
    border-radius:16px;
    background:transparent;
    box-shadow:none;
    transition:transform 220ms ease,background-color 220ms ease,box-shadow 220ms ease;
}
.store-card.product-card:hover,.store-card.product-card:focus-within,.store-home-product.product-card:hover,.store-home-product.product-card:focus-within{
    z-index:1;
    transform:translateY(-5px);
    background:rgba(var(--sand-rgb),.62);
    box-shadow:0 14px 30px rgba(var(--ink-rgb),.12);
}
.store-card.product-card .store-product-card-image{border-radius:12px}
.store-card.product-card:hover .store-product-card-image img,.store-card.product-card:hover .store-card-image img,.store-home-product.product-card:hover .store-home-product-image img{transform:none}
.store-card.product-card .store-favourite-button,.store-home-product.product-card .store-favourite-button{width:36px;height:36px;border:0;background:var(--terra);color:var(--ink);box-shadow:0 2px 8px rgba(var(--ink-rgb),.2)}
.store-card.product-card:hover .store-favourite-button,.store-card.product-card:focus-within .store-favourite-button,.store-home-product.product-card:hover .store-favourite-button,.store-home-product.product-card:focus-within .store-favourite-button{opacity:1;transform:none}

.store-card.routine-index-card{
    background:var(--sand);
    box-shadow:0 2px 8px rgba(var(--ink-rgb),.06);
    transition:transform 300ms ease,box-shadow 300ms ease,background-color 300ms ease;
}
.store-card.routine-index-card:hover,.store-card.routine-index-card:focus-within,.store-concern-routine:hover,.store-concern-routine:focus-within{
    transform:translateY(-6px);
    background:var(--rose);
    box-shadow:0 16px 40px rgba(var(--ink-rgb),.16);
}
.store-card.routine-index-card .store-card-image img,.store-concern-routine-image img{transition:transform 500ms ease}
.store-card.routine-index-card:hover .store-card-image img,.store-card.routine-index-card:focus-within .store-card-image img,.store-concern-routine:hover .store-concern-routine-image img,.store-concern-routine:focus-within .store-concern-routine-image img{transform:scale(1.06)}
.store-card.routine-index-card .store-card-copy,.store-concern-routine>div{transition:background-color 300ms ease}
.store-card.routine-index-card:hover .store-card-copy,.store-card.routine-index-card:focus-within .store-card-copy,.store-concern-routine:hover>div,.store-concern-routine:focus-within>div{background:var(--rose)}
.store-card.routine-index-card .store-card-copy h2 a,.store-card.routine-index-card .store-card-copy h3 a,.store-concern-routine h3 a{transition:color 300ms ease}
.store-card.routine-index-card:hover .store-card-copy h2 a,.store-card.routine-index-card:hover .store-card-copy h3 a,.store-card.routine-index-card:focus-within .store-card-copy h2 a,.store-card.routine-index-card:focus-within .store-card-copy h3 a,.store-concern-routine:hover h3 a,.store-concern-routine:focus-within h3 a{color:var(--terra)}

.store-card.skin-school-article-card{
    overflow:visible;
    margin:-10px;
    padding:10px;
    border-radius:16px;
    background:transparent;
    box-shadow:none;
    transition:transform 240ms ease,background-color 240ms ease,box-shadow 240ms ease;
}
.store-card.skin-school-article-card:hover,.store-card.skin-school-article-card:focus-within{
    transform:translateY(-4px);
    background:rgba(var(--sand-rgb),.45);
    box-shadow:0 12px 28px rgba(var(--ink-rgb),.1);
}
.store-card.skin-school-article-card .store-card-image img{transition:transform 500ms ease}
.store-card.skin-school-article-card:hover .store-card-image img,.store-card.skin-school-article-card:focus-within .store-card-image img{transform:scale(1.05)}

.product-detail-accordion.faq-row{padding:0;border-bottom:1px solid rgba(var(--ink-rgb),.16)}
.accordion-content{opacity:0;max-height:0;transition:max-height .35s ease,opacity .35s ease;overflow:hidden}
.accordion-content.open{opacity:1 !important;max-height:2500px !important}
.accordion-content p{color:var(--olive);font-size:14px;line-height:1.65;padding-bottom:18px;padding-right:24px}
.store-concern-routine{transition:transform 300ms ease,background-color 300ms ease,box-shadow 300ms ease}
.store-product-reviews article{transition:transform 240ms ease,background-color 240ms ease,box-shadow 240ms ease}
.store-product-reviews article:hover,.store-product-reviews article:focus-within{transform:translateY(-3px);background:rgba(var(--sand-rgb),.62);box-shadow:0 12px 28px rgba(var(--ink-rgb),.1)}

@media(hover:none){
    .store-card.product-card .store-favourite-button,.store-home-product.product-card .store-favourite-button{opacity:1;transform:none}
}
@media(prefers-reduced-motion:reduce){
    .store-card.product-card,.store-home-product.product-card,.store-card.routine-index-card,.store-concern-routine,.store-card.skin-school-article-card,.store-product-reviews article,
    .store-card.product-card img,.store-home-product.product-card img,.store-card.routine-index-card img,.store-concern-routine img,.store-card.skin-school-article-card img{transition:none!important}
}

.store-title{font:500 clamp(32px,4.1vw,48px)/1.15 "Fraunces",Georgia,serif}
.store-hero{min-height:519px}
.store-hero-copy h1{font:500 clamp(41px,4.6875vw,60px)/1.25 "Fraunces",Georgia,serif}
.store-hero--compact,.store-hero--about{min-height:469px}
.store-hero--track{min-height:402px}
.store-hero--track .store-hero-copy h1{font-size:48px}
.store-hero--large-title .store-hero-copy h1,.store-hero--about .store-hero-copy h1{font-size:72px;line-height:1.06}
.store-hero--concern{min-height:630px}
.store-hero--concern .store-hero-copy h1{font-size:48px}
.store-hero--article .store-hero-copy h1{font-size:48px}
.store-product-information h1{font:500 48px/1.25 "Fraunces",Georgia,serif}

.store-shop-product-grid,.store-routine-grid,.store-article-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.store-favourites-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.store-concern-product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}

.store-routine-detail .store-routine-intro-copy h1{margin:0 0 14px;font:500 clamp(36px,4.6875vw,60px)/1.15 "Fraunces",Georgia,serif}
.store-routine-detail .store-routine-intro .store-detail-image{aspect-ratio:4/5}
.store-routine-detail .store-routine-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.store-routine-detail .store-routine-steps li{padding:24px;border:1px solid rgba(var(--ink-rgb),.1);border-radius:14px;background:var(--cream)}
.store-routine-detail .store-routine-steps li .store-kicker{margin-bottom:8px;color:var(--terra)}
.store-routine-detail .store-routine-steps li h3{margin:0 0 10px;font:500 22px/1.25 "Fraunces",Georgia,serif}
.store-routine-detail .store-routine-steps li h3 a{color:var(--ink);transition:color .2s}
.store-routine-detail .store-routine-steps li h3 a:hover{color:var(--terra)}

.store-form input,.store-form select,.store-filter input,.store-filter select{
    border-radius:999px;
    font:14px "Jost",Arial,sans-serif;
    transition:border-color .2s,box-shadow .2s;
}
.store-form textarea{border-radius:14px;font:14px/1.6 "Jost",Arial,sans-serif;transition:border-color .2s,box-shadow .2s}
.store-form input:focus-visible,.store-form select:focus-visible,.store-form textarea:focus-visible,.store-filter input:focus-visible,.store-filter select:focus-visible{
    border-color:var(--terra);
    outline:0;
    box-shadow:0 0 0 3px rgba(var(--terra-rgb),.16);
}
.store-button,.store-button-outline{transition:background-color .2s,border-color .2s,color .2s,transform .2s}
.store-button:focus-visible,.store-button-outline:focus-visible{outline:2px solid var(--ink);outline-offset:3px}

@media(max-width:1023px){
    .store-hero--concern{min-height:681px}
    .store-hero-copy h1,.store-hero--large-title .store-hero-copy h1,.store-hero--about .store-hero-copy h1,.store-hero--concern .store-hero-copy h1,.store-hero--article .store-hero-copy h1,.store-hero--track .store-hero-copy h1,.store-product-information h1{
        font-size:41px;
        line-height:1.15;
    }
    .store-shop-product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
    .store-routine-grid,.store-article-grid,.store-favourites-grid,.store-concern-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:600px){
    .store-title{font-size:36px;line-height:1.15}
    .store-hero{min-height:519px}
    .store-hero--compact,.store-hero--about{min-height:469px}
    .store-hero--track{min-height:402px}
    .store-hero--concern{min-height:calc(100vh + 42px)}
    .store-hero-copy h1{font-size:48px;line-height:1.25}
    .store-hero--large-title .store-hero-copy h1,.store-hero--about .store-hero-copy h1{font-size:48px;line-height:1.06}
    .store-hero--concern .store-hero-copy h1,.store-hero--article .store-hero-copy h1{font-size:36px;line-height:1.25}
    .store-hero--track .store-hero-copy h1{font-size:48px;line-height:1.25}
    .store-shop-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .store-routine-grid,.store-article-grid{grid-template-columns:1fr}
    .store-favourites-grid,.store-concern-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .store-routine-detail .store-routine-intro-copy h1{font-size:36px;line-height:1.25}
    .store-product-information h1{font-size:36px;line-height:1.25}
    .store-routine-detail .store-routine-steps{grid-template-columns:1fr}
    .store-routine-detail .store-routine-steps li{padding:18px}
}

.store-page-section-copy .store-title{margin-bottom:20px}
.store-page-section-copy .store-body-copy{margin:0 0 24px}
.store-page-section-copy>.store-button,.store-page-section-copy>.store-button-outline{margin:6px 8px 0 0}
.store-page-section-image{display:block;width:100%;max-height:620px;aspect-ratio:4/5;border-radius:16px;object-fit:cover}
.store-page-section-copy-only{max-width:850px}
.store-page-section--principles{background:var(--sand)}
.store-page-section-heading{max-width:780px;margin:0 auto 40px;text-align:center}
.store-page-section-heading .store-title{margin-bottom:14px}
.store-page-section-heading .store-subtitle{margin:0 auto}
.store-principle-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:18px}
.store-principle-grid article{min-height:210px;padding:26px;border:1px solid rgba(var(--ink-rgb),.1);border-radius:14px;background:var(--cream)}
.store-principle-grid article>span{display:block;margin-bottom:18px;color:var(--terra);font:italic 300 36px/1 "Fraunces",Georgia,serif}
.store-principle-grid h3{margin:0 0 10px;font:500 22px/1.25 "Fraunces",Georgia,serif}
.store-principle-grid p{margin:0;color:var(--olive);font-size:14px;line-height:1.7}
.store-page-section--gallery{overflow:hidden;padding:0;background:var(--sand)}
.store-page-section--gallery img{display:block;width:100%;max-height:680px;object-fit:cover}
.store-page-section--creators{background:var(--cream)}
.store-page-section--guide{margin:0}
.store-page-section--cta .store-concern-cta{max-width:850px}
.store-page-section--cta .store-concern-cta .store-button{margin-top:8px}
.store-featured-article{background:var(--sand)}
.store-featured-article .store-container{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:48px}
.store-featured-article-image{display:block;overflow:hidden;aspect-ratio:4/3;border-radius:14px;background:var(--cream)}
.store-featured-article-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.store-featured-article-image:hover img{transform:scale(1.04)}
.store-featured-article .store-title a{color:inherit}
.store-featured-article .store-button-outline{margin-top:18px}
.store-faq-contact-section .store-faq-contact{margin-top:0}
.store-faq-contact{text-align:center}
.store-faq-contact .store-button{margin-top:8px}
.store-favourites-heading{display:flex;min-height:256px;align-items:center}
.store-favourites-heading .store-title{margin:0}
.store-favourites-content{padding-top:24px}
.store-routine-schedule{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:32px 0 0;padding:0;list-style:none}
.store-routine-schedule li{display:flex;align-items:flex-start;gap:18px;padding:24px;border-radius:14px;background:var(--sand)}
.store-routine-schedule li>span{color:var(--terra);font:italic 300 36px/1 "Fraunces",Georgia,serif}
.store-routine-schedule li>p{margin:0;color:var(--ink);font-size:15px;line-height:1.7}
.store-routine-testimonials{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.store-routine-testimonials article{display:flex;min-height:220px;flex-direction:column;padding:24px;border-radius:14px;background:var(--cream);transition:transform .24s,background-color .24s,box-shadow .24s}
.store-routine-testimonials article:hover{transform:translateY(-3px);background:rgba(var(--sand-rgb),.62);box-shadow:0 12px 28px rgba(var(--ink-rgb),.1)}
.store-routine-testimonials blockquote{flex:1;margin:18px 0;color:var(--ink);font:300 18px/1.55 "Fraunces",Georgia,serif}
.store-routine-testimonials article>p{margin:0;color:var(--olive);font-size:12px}
.store-routine-final-cta{background:var(--ink)}
.store-routine-final-cta .store-concern-cta{background:transparent}
.store-routine-final-cta .store-kicker{color:var(--terra)}
.store-routine-final-cta h2{color:var(--sand)}
.store-routine-final-cta .store-concern-cta>p:not(.store-kicker){color:var(--sand);opacity:.8}
.store-routine-final-price{margin:0 0 22px;color:var(--sand);font:500 25px "Fraunces",Georgia,serif}
.store-routine-final-price span{font:12px "Jost",Arial,sans-serif;opacity:.75}
.store-routine-final-cta form{margin:0}

@media(max-width:1023px){
    .store-page-section--split .store-two-col{gap:28px}
    .store-featured-article .store-container{gap:30px}
    .store-routine-detail .store-routine-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:600px){
    .store-page-section-heading{margin-bottom:26px}
    .store-principle-grid{grid-template-columns:1fr}
    .store-page-section--gallery img{min-height:260px}
    .store-featured-article .store-container{grid-template-columns:1fr;gap:24px}
    .store-favourites-heading{min-height:209px}
    .store-routine-schedule,.store-routine-testimonials{grid-template-columns:1fr}
    .store-routine-schedule li{padding:18px}
    .store-routine-testimonials article{min-height:190px;padding:20px}
}

.store-hero--about .store-hero-copy h1{line-height:1.25}
.store-home-product-copy h3{font-weight:500;line-height:1.375}
.store-home-concern h3{font-weight:500;line-height:1.375}
.store-home-philosophy-copy h2{font-weight:500}
.store-home-method-steps h3{font:500 36px/40px "Fraunces",Georgia,serif}
.store-home-routine-grid h3{font:500 17px/23.375px "Fraunces",Georgia,serif}
.store-home-faqs h2{font-weight:500;line-height:40px}
.store-home-reviews .store-home-centered-heading h2{line-height:48px}
.store-page-section--routines .store-principle-grid h3{font:500 20px/28px "Fraunces",Georgia,serif}
.store-card-copy h3{font:500 17px/1.375 "Fraunces",Georgia,serif}
.store-routine-grid .store-card-copy h2{font:500 17px/1.375 "Fraunces",Georgia,serif}
.store-page-section--split:nth-of-type(2) .store-page-section-copy .store-title{font:500 60px/1.25 "Fraunces",Georgia,serif}
.store-page-section--split:nth-of-type(3) .store-page-section-copy .store-title{font:500 60px/1.25 "Fraunces",Georgia,serif}

@media(min-width:1024px){
    .store-home-hero-copy h1{font-size:72px}
}

@media(min-width:1280px){
    .store-home-hero-copy{padding-right:0;padding-left:0}
}

.store-account-page{min-height:70vh;padding:58px 24px 100px;background:var(--cream)}
.store-account-container{width:min(1120px,100%);margin:0 auto}
.store-account-welcome{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;width:min(1120px,100%);margin:0 auto 30px;padding:20px 0 28px;border-bottom:1px solid rgba(var(--ink-rgb),.14)}
.store-account-welcome .store-kicker,.store-auth-card>.store-kicker,.store-auth-aside .store-kicker{margin:0 0 12px;color:var(--olive);font-size:11px;letter-spacing:.2em}
.store-account-welcome h1,.store-auth-card h1{margin:0;color:var(--ink);font:300 clamp(38px,5vw,58px)/1.12 "Fraunces",Georgia,serif}
.store-account-welcome h1 em,.store-auth-card h1 em{color:var(--terra);font-weight:300}
.store-account-welcome>div>p:last-child{margin:12px 0 0;color:var(--olive);font-size:14px;line-height:1.65}
.store-account-welcome>form{flex:0 0 auto}
.store-account-layout{display:grid;grid-template-columns:220px minmax(0,1fr);align-items:start;gap:28px}
.store-account-sidebar{position:sticky;top:24px;display:grid;gap:20px;padding:19px;border:1px solid rgba(var(--ink-rgb),.11);border-radius:14px;background:#fffdf8}
.store-account-identity{display:flex;min-width:0;align-items:center;gap:12px;padding:2px 0 17px;border-bottom:1px solid rgba(var(--ink-rgb),.1)}
.store-account-avatar{display:grid;flex:0 0 42px;width:42px;height:42px;place-items:center;border-radius:50%;background:var(--sand);color:var(--terra);font:400 20px/1 "Fraunces",Georgia,serif}
.store-account-identity>div{display:grid;min-width:0;gap:4px}
.store-account-identity strong{display:-webkit-box;overflow:hidden;color:var(--ink);font-size:13px;font-weight:500;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.store-account-identity>div>span{overflow:hidden;color:var(--olive);font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.store-account-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.store-account-summary article{display:grid;min-width:0;gap:8px;padding:17px 19px;border:1px solid rgba(var(--ink-rgb),.1);border-radius:12px;background:#fffdf8}
.store-account-summary span,.store-account-label{color:var(--olive);font-size:10px;font-weight:600;letter-spacing:.15em;text-transform:uppercase}
.store-account-summary strong{overflow-wrap:anywhere;color:var(--ink);font:400 22px/1.1 "Fraunces",Georgia,serif}
.store-account-content{display:grid;min-width:0;gap:27px}
.store-account-nav{display:grid;gap:5px}
.store-account-nav a{display:flex;min-height:42px;align-items:center;justify-content:space-between;gap:9px;padding:9px 11px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--ink);font-size:12px;text-decoration:none;transition:background .2s,border-color .2s,color .2s}
.store-account-nav a:hover,.store-account-nav a:focus-visible{border-color:rgba(var(--ink-rgb),.09);background:var(--cream);color:var(--terra)}
.store-account-nav-count{display:grid;min-width:21px;height:21px;place-items:center;border-radius:50%;background:var(--sand);color:var(--olive);font-size:10px}
.store-account-help{display:grid;gap:6px;margin-top:2px;padding:14px;border-radius:9px;background:var(--cream);color:var(--olive);font-size:11px;text-decoration:none}
.store-account-help strong{color:var(--terra);font-size:12px;font-weight:500}
.store-account-section{min-width:0;scroll-margin-top:24px}
.store-account-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px}
.store-account-section-heading .store-kicker{margin:0 0 5px;color:var(--olive);font-size:10px;letter-spacing:.18em}
.store-account-section-heading h2{margin:0;color:var(--ink);font:400 30px/1.2 "Fraunces",Georgia,serif}
.store-account-section-heading>a,.store-account-text-link{color:var(--terra);font-size:13px;text-decoration:none}
.store-account-section-heading>a:hover,.store-account-text-link:hover{ text-decoration:underline}
.store-account-order-list,.store-account-address-list{display:grid;gap:14px}
.store-account-order,.store-account-section{border-radius:12px}
.store-account-order{padding:22px 24px;border:1px solid rgba(var(--ink-rgb),.12);background:#fffdf8}
.store-account-order-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:15px;border-bottom:1px solid rgba(var(--ink-rgb),.1)}
.store-account-order-top h3{margin:5px 0;color:var(--ink);font:500 20px/1.3 "Fraunces",Georgia,serif}
.store-account-order-top p{margin:0;color:var(--olive);font-size:12px}
.store-account-status{flex:0 0 auto;padding:7px 11px;border:1px solid rgba(var(--olive-rgb),.18);border-radius:99px;background:rgba(var(--olive-rgb),.08);color:var(--olive);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.store-account-status--cancelled{border-color:rgba(173,87,56,.18);background:rgba(173,87,56,.08);color:#ad5738}
.store-account-order-items{display:grid;gap:7px;padding:14px 0}
.store-account-order-items p{display:flex;justify-content:space-between;gap:12px;margin:0;color:var(--ink);font-size:13px}
.store-account-order-items span{flex:0 0 auto;color:var(--olive)}
.store-account-order-bottom{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:14px;border-top:1px solid rgba(var(--ink-rgb),.1)}
.store-account-order-bottom p{display:flex;align-items:baseline;gap:10px;margin:0;color:var(--olive);font-size:12px}
.store-account-order-bottom strong{color:var(--ink);font:500 19px "Fraunces",Georgia,serif}
.store-account-order-bottom .store-button-outline{min-height:38px;padding:9px 14px;font-size:10px}
.store-account-empty{display:grid;justify-items:center;padding:42px 22px;border:1px dashed rgba(var(--ink-rgb),.2);border-radius:12px;background:rgba(255,253,248,.65);text-align:center}
.store-account-empty>span{color:var(--terra);font-size:28px}
.store-account-empty h3{margin:10px 0 4px;color:var(--ink);font:400 24px "Fraunces",Georgia,serif}
.store-account-empty p{max-width:420px;margin:0 0 18px;color:var(--olive);font-size:13px;line-height:1.6}
.store-account-empty .store-button{padding:12px 18px}
.store-account-lower-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px}
.store-account-lower-grid>.store-account-section{min-width:0;padding:21px;border:1px solid rgba(var(--ink-rgb),.11);border-radius:12px;background:#fffdf8}
.store-account-form{width:100%;max-width:none;gap:13px}
.store-account-form label,.store-auth-form label{color:var(--ink);font-size:12px;font-weight:500}
.store-account-form label small,.store-auth-form label small{color:var(--olive);font-size:11px;font-weight:400}
.store-account-form input,.store-account-form textarea,.store-auth-form input{min-height:44px;border:1px solid rgba(var(--ink-rgb),.16);background:#fff}
.store-account-form textarea{min-height:94px}
.store-account-form .store-button,.store-auth-form .store-button{width:100%;margin-top:3px}
.store-account-text-link{display:inline-block;margin-top:16px}
.store-account-address{padding:17px;border:1px solid rgba(var(--ink-rgb),.11);border-radius:9px;background:var(--cream)}
.store-account-address-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.store-account-address-heading h3{margin:0;color:var(--ink);font:500 17px "Fraunces",Georgia,serif}
.store-account-address-heading p{margin:4px 0 0;color:var(--olive);font-size:11px}
.store-account-address>p{margin:13px 0;color:var(--ink);font-size:13px;line-height:1.6}
.store-account-default{flex:0 0 auto;padding:5px 8px;border-radius:99px;background:rgba(var(--olive-rgb),.12);color:var(--olive);font-size:9px;font-weight:600;letter-spacing:.1em}
.store-account-address-actions{display:flex;flex-wrap:wrap;align-items:center;gap:13px}
.store-account-address-actions form{margin:0}
.store-account-text-button{padding:0;border:0;background:none;color:var(--terra);font:500 12px "Jost",Arial,sans-serif;cursor:pointer}
.store-account-text-button--danger{color:#ad5738}
.store-account-address details summary,.store-account-add-address>summary{color:var(--ink);font-size:12px;font-weight:500;cursor:pointer}
.store-account-address details[open]{flex-basis:100%;padding-top:14px}
.store-account-address details[open] .store-account-form{margin-top:12px}
.store-account-add-address{margin-top:14px;padding:14px;border:1px dashed rgba(var(--ink-rgb),.22);border-radius:9px;background:#fffdf8}
.store-account-add-address>summary{display:flex;align-items:center;gap:8px;list-style:none}
.store-account-add-address>summary::-webkit-details-marker{display:none}
.store-account-add-address>summary span{color:var(--terra);font-size:17px}
.store-account-add-address[open] .store-account-form{margin-top:18px}
.store-account-address-empty{margin:0;padding:14px;border-radius:8px;background:var(--cream);color:var(--olive);font-size:13px;line-height:1.6}
.store-account-checkbox{display:flex!important;grid-auto-flow:column;grid-template-columns:17px 1fr;align-items:center;justify-content:start;gap:9px!important;width:max-content;max-width:100%;cursor:pointer}
.store-account-checkbox input{width:17px!important;height:17px;min-height:17px!important;margin:0;accent-color:var(--terra)}
.store-auth-page{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.78fr);align-items:stretch;gap:clamp(36px,8vw,112px);width:min(1080px,calc(100% - 48px));min-height:590px;margin:56px auto 100px}
.store-auth-page--single{display:block;min-height:0;width:min(560px,calc(100% - 40px));margin-top:70px}
.store-auth-card{align-self:center;width:100%;max-width:520px;margin:0 auto;padding:36px;border:1px solid rgba(var(--ink-rgb),.12);border-radius:14px;background:#fffdf8;box-shadow:0 18px 50px rgba(var(--ink-rgb),.06)}
.store-auth-card>.store-auth-back{display:inline-block;margin:0 0 34px;color:var(--olive);font-size:12px;text-decoration:none}
.store-auth-card>.store-auth-back:hover{color:var(--terra)}
.store-auth-card h1{font-size:clamp(38px,4.6vw,52px)}
.store-auth-intro{margin:12px 0 24px;color:var(--olive);font-size:14px;line-height:1.7}
.store-auth-form{max-width:none;gap:16px}
.store-auth-options{display:flex;align-items:center;justify-content:space-between;gap:12px}
.store-auth-options>a,.store-auth-switch a{color:var(--terra);font-size:12px;text-decoration:none}
.store-auth-options>a:hover,.store-auth-switch a:hover{ text-decoration:underline}
.store-auth-form>.store-button{min-height:48px;margin-top:4px}
.store-auth-switch{margin:22px 0 0;padding-top:20px;border-top:1px solid rgba(var(--ink-rgb),.1);color:var(--olive);font-size:13px;text-align:center}
.store-auth-guest{display:block;margin-top:15px;color:var(--olive);font-size:11px;text-align:center;text-decoration:none}
.store-auth-guest:hover{color:var(--terra)}
.store-auth-aside{position:relative;display:flex;overflow:hidden;flex-direction:column;justify-content:center;align-items:flex-start;min-height:450px;padding:48px;border-radius:14px;background:var(--sand)}
.store-auth-aside:after{position:absolute;right:-90px;bottom:-155px;width:360px;height:420px;border-radius:60% 40% 70% 30%/40% 50% 60% 40%;background:rgba(var(--terra-rgb),.07);content:"";transform:rotate(-24deg);pointer-events:none}
.store-auth-aside-mark{margin-bottom:auto;color:rgba(var(--ink-rgb),.12);font:300 110px/.8 "Fraunces",Georgia,serif}
.store-auth-aside .store-kicker{margin-top:50px}
.store-auth-aside h2{max-width:390px;margin:0;color:var(--ink);font:400 clamp(30px,3.5vw,42px)/1.18 "Fraunces",Georgia,serif}
.store-auth-aside>p:not(.store-kicker){max-width:360px;margin:15px 0 23px;color:var(--olive);font-size:14px;line-height:1.75}
.store-auth-aside>a{position:relative;z-index:1;color:var(--terra);font-size:13px;font-weight:500;text-decoration:none}
.store-auth-aside>a span{margin-left:5px}
@media(max-width:800px){
    .store-account-layout{grid-template-columns:1fr;gap:18px}
    .store-account-sidebar{position:static;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px}
    .store-account-identity{padding:0;border:0}
    .store-account-nav{grid-column:1/-1;grid-row:2;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding-top:10px;border-top:1px solid rgba(var(--ink-rgb),.1)}
    .store-account-nav a{justify-content:center;padding:8px 5px;font-size:11px}
    .store-account-nav-count{display:none}
    .store-account-help{grid-column:2;grid-row:1;margin:0;padding:9px 11px}
    .store-account-content{gap:20px}
    .store-account-lower-grid{grid-template-columns:1fr}
    .store-auth-page{grid-template-columns:minmax(0,1fr) minmax(260px,.8fr);gap:24px}
    .store-auth-card{padding:28px}
    .store-auth-aside{padding:32px}
}
@media(max-width:600px){
    .store-account-page{padding:32px 16px 64px}
    .store-account-welcome{align-items:flex-start;flex-direction:column;margin-bottom:18px;padding-top:8px}
    .store-account-welcome h1{font-size:40px}
    .store-account-summary{gap:7px}
    .store-account-summary article{gap:6px;padding:12px 10px}
    .store-account-summary span{font-size:8px;letter-spacing:.08em}
    .store-account-summary strong{font-size:17px}
    .store-account-sidebar{gap:10px}
    .store-account-nav a{min-height:38px;font-size:10px}
    .store-account-help{font-size:10px}
    .store-account-help strong{font-size:11px}
    .store-account-section-heading h2{font-size:26px}
    .store-account-order{padding:16px}
    .store-account-order-bottom{align-items:flex-start;flex-direction:column}
    .store-account-lower-grid>.store-account-section{padding:18px}
    .store-auth-page{grid-template-columns:1fr;width:calc(100% - 32px);margin:28px auto 64px}
    .store-auth-page--single{width:calc(100% - 32px);margin-top:34px}
    .store-auth-card{padding:24px 20px}
    .store-auth-card>.store-auth-back{margin-bottom:24px}
    .store-auth-aside{display:none}
}
.store-page-section--cta .store-concern-cta h2{font:500 36px/40px "Fraunces",Georgia,serif}
.store-product-cross-sell h2{font:500 24px/32px "Fraunces",Georgia,serif}
.store-routine-detail .store-routine-intro-copy h1{line-height:1.25}
.store-routine-steps-section .store-title{font:500 36px/40px "Fraunces",Georgia,serif}
.store-routine-schedule-section .store-title{font:500 48px/1 "Fraunces",Georgia,serif}
.store-routine-testimonials-section .store-title{font:500 48px/1.2 "Fraunces",Georgia,serif}
.store-featured-article .store-title{font:500 36px/1.25 "Fraunces",Georgia,serif}
.store-faq-content h2.font-serif{font:500 24px/32px "Fraunces",Georgia,serif}
.store-faq-contact h2{font:500 30px/1.2 "Fraunces",Georgia,serif}
.store-favourites-heading h1.store-title{font:500 48px/1.25 "Fraunces",Georgia,serif}
.store-cms-content>h1.store-title{font:500 48px/48px "Fraunces",Georgia,serif}
#shop-products>.store-container>.store-title{font:500 24px/32px "Fraunces",Georgia,serif}

@media(min-width:768px) and (max-width:1023px){
    .store-home-hero-copy h1{font-size:clamp(40px,5vw,60px);line-height:1.08}
    .store-home-philosophy-copy h2{font-size:clamp(32px,4.1vw,40px);line-height:1.2}
    .store-home-product-copy h3,.store-card-copy h3{font-size:clamp(18px,2.2vw,22px);line-height:1.25}
    .store-home-concern h3{font-size:clamp(18px,2.2vw,22px);line-height:1.25}
    .store-page-section--routines .store-principle-grid h3{font-size:clamp(18px,2.2vw,22px);line-height:1.25}
    .store-home-method-steps h3{font-size:clamp(18px,2.2vw,22px);line-height:1.25}
    .store-home-routine-grid h3{font-size:clamp(18px,2.2vw,22px);line-height:1.25}
    .store-home-reviews .store-home-centered-heading h2,.store-home-faqs h2{font-size:clamp(32px,4.1vw,40px);line-height:1.2}
    .store-page-section--split:nth-of-type(2) .store-page-section-copy .store-title,
    .store-page-section--split:nth-of-type(3) .store-page-section-copy .store-title,
    .store-page-section--cta .store-concern-cta h2,.store-featured-article .store-title,
    .store-favourites-heading h1.store-title,#shop-products>.store-container>.store-title,
    .store-routine-steps-section .store-title,.store-routine-schedule-section .store-title,
    .store-routine-testimonials-section .store-title,.store-faq-content h2.font-serif{
        font-size:clamp(32px,4.1vw,40px);
        line-height:1.2;
    }
    .store-cms-content>h1.store-title{font-size:clamp(40px,5vw,48px);line-height:1.15}
    .store-routine-grid .store-card-copy h2{font-size:clamp(32px,4.1vw,40px);line-height:1.2}
    .store-principle-grid h3,.store-principle-grid article>h3{font-size:clamp(18px,2.2vw,22px);line-height:1.25}
    .store-product-cross-sell h2{font-size:clamp(32px,4.1vw,40px);line-height:1.2}
    .store-faq-contact h2{font-size:clamp(32px,4.1vw,40px);line-height:1.2}
    .store-hero--about .store-hero-copy h1{line-height:1.15}
    .store-routine-detail .store-routine-intro-copy h1{font-size:clamp(40px,5vw,48px);line-height:1.15}
}

@media(max-width:767px){
    .store-home-hero-copy h1{font-size:48px;line-height:1.08}
}

@media(max-width:600px){
    .store-hero--about .store-hero-copy h1{line-height:1.25}
    .store-home-product-copy h3{font-size:17px;line-height:1.375}
    .store-home-concern h3{font-size:18px;line-height:1.375}
    .store-home-philosophy-copy h2{font-size:38.4px;line-height:1.12}
    .store-home-concerns-section .store-home-section-heading h2{font-size:36px;line-height:1.25}
    .store-home-method-steps h3{font-size:36px;line-height:40px}
    .store-page-section--routines .store-principle-grid h3{font-size:20px;line-height:28px}
    .store-home-routine-grid h3{font-size:17px;line-height:23.375px}
    .store-home-faqs h2{font-size:36px;line-height:40px}
    .store-home-reviews .store-home-centered-heading h2{font-size:36px;line-height:40px}
    .store-home-guide h2{font-size:36px;line-height:45px}
    .store-home-final-copy h2{font-size:36px;line-height:39.6px}
    .store-card-copy h3{font-size:17px;line-height:1.375}
    .store-routine-grid .store-card-copy h2{font-size:17px;line-height:1.375}
    .store-page-section--split:nth-of-type(2) .store-page-section-copy .store-title{font-size:36px;line-height:1.25}
    .store-page-section--split:nth-of-type(3) .store-page-section-copy .store-title{font-size:48px;line-height:1.25}
    .store-page-section--cta .store-concern-cta h2{font-size:36px;line-height:40px}
    .store-routine-steps-section .store-title{font-size:30px;line-height:36px}
    .store-routine-schedule-section .store-title{font-size:36px;line-height:40px}
    .store-routine-testimonials-section .store-title{font-size:36px;line-height:1.2}
    .store-featured-article .store-title{font-size:30px;line-height:1.25}
    .store-faq-content h2.font-serif{font-size:24px;line-height:32px}
    .store-favourites-heading h1.store-title{font-size:36px;line-height:1.25}
    .store-cms-content>h1.store-title{font-size:36px;line-height:40px}
    #shop-products>.store-container>.store-title{font-size:24px;line-height:32px}
    .store-product-cross-sell h2{font-size:24px;line-height:32px}
}

/* Chrome, Safari, Edge, Opera: hide number input spinners */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
input[type=number] {
    -moz-appearance: textfield;
}

/* Canonical Pill Buttons */
.btn-terracotta {
    background-color: var(--terra);
    border: 1px solid var(--terra);
    color: var(--cream);
    border-radius: 9999px;
    font-weight: 600;
    letter-spacing: 0.1em;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    cursor: pointer;
    transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease;
}

.btn-outline {
    border: 1px solid var(--ink);
    color: var(--ink);
    background-color: transparent;
    border-radius: 9999px;
    font-weight: 600;
    letter-spacing: 0.1em;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    cursor: pointer;
    transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease;
}

/* Universal button hover states for all primary and theme buttons */
.store-button,
.btn-terracotta,
a.store-button,
a.btn-terracotta,
button.store-button,
button.btn-terracotta,
button:not(:disabled)[style*="--terra"],
a[style*="--terra"] {
    background-color: var(--terra);
    border-color: var(--terra);
    color: var(--cream);
    cursor: pointer;
    transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease;
}

.store-button:hover,
.btn-terracotta:hover,
a.store-button:hover,
a.btn-terracotta:hover,
button.store-button:hover,
button.btn-terracotta:hover,
button:not(:disabled)[style*="--terra"]:hover,
a[style*="--terra"]:hover {
    background-color: color-mix(in srgb, var(--terra) 80%, #000) !important;
    border-color: color-mix(in srgb, var(--terra) 80%, #000) !important;
    color: var(--cream) !important;
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(var(--ink-rgb), 0.22) !important;
    filter: none !important;
}

.store-button:active,
.btn-terracotta:active,
a.store-button:active,
a.btn-terracotta:active,
button.store-button:active,
button.btn-terracotta:active,
button:not(:disabled)[style*="--terra"]:active,
a[style*="--terra"]:active {
    transform: translateY(0);
    box-shadow: 0 2px 8px rgba(var(--ink-rgb), 0.16) !important;
}

.store-button-outline:hover,
a.store-button-outline:hover,
button.store-button-outline:hover {
    background-color: var(--terra) !important;
    border-color: var(--terra) !important;
    color: var(--cream) !important;
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(var(--ink-rgb), 0.18) !important;
    filter: none !important;
}

.btn-outline:hover,
a.btn-outline:hover,
button.btn-outline:hover {
    background-color: var(--rose) !important;
    border-color: var(--ink) !important;
    color: var(--ink) !important;
    transform: translateY(-1px);
    box-shadow: 0 6px 14px rgba(var(--ink-rgb), 0.10) !important;
    filter: none !important;
}

.btn-outline:active,
a.btn-outline:active,
button.btn-outline:active {
    transform: translateY(0);
}

.store-bag-action:hover {
    background-color: color-mix(in srgb, var(--terra) 80%, #000) !important;
    transform: scale(1.06);
    box-shadow: 0 6px 16px rgba(var(--ink-rgb), 0.2) !important;
}

button[aria-label*="favourites"]:hover,
button[aria-label*="Favourites"]:hover,
.store-favourite-button:hover,
.routine-icons:hover {
    background-color: color-mix(in srgb, var(--terra) 80%, #000) !important;
    transform: scale(1.08) !important;
    box-shadow: 0 4px 14px rgba(var(--ink-rgb), 0.25) !important;
    filter: none !important;
}
/* ========================================================
   GLOBAL WEBSITE TYPOGRAPHY (Configured via Theme Settings)
   ======================================================== */
:root {
    --font-size-h1: 48px;
    --font-size-h2: 36px;
    --font-size-h3: 22px;
    --font-size-h4: 18px;
    --font-size-h5: 16px;
    --font-size-h6: 14px;
    --font-size-p: 15px;
}

body.store-body h1,
.store-hero-copy h1,
.store-home-hero-copy h1,
.store-detail-copy h1,
.store-product-information h1,
.store-favourites-heading h1,
.store-cms-content > h1,
.store-routine-detail h1,
.store-title {
    font-size: var(--font-size-h1) !important;
}

body.store-body h2,
.store-home-section-heading h2,
.store-home-centered-heading h2,
.store-home-philosophy-copy h2,
.store-home-problem-copy h2,
.store-home-dermatologist h2,
.store-home-guide h2,
.store-home-faqs h2,
.store-home-final-copy h2,
.store-concern-cta h2,
.store-product-suitable h2,
.store-product-cross-sell h2,
.store-faq-contact h2,
.store-routine-grid .store-card-copy h2,
.store-routine-testimonials-section .store-title {
    font-size: var(--font-size-h2) !important;
}

body.store-body h3,
.store-card-copy h3,
.store-home-product-copy h3,
.store-home-concern h3,
.store-home-method-steps h3,
.store-home-routine-copy h3,
.store-home-article-grid h3,
.store-principle-grid h3,
.store-concern-routine h3 {
    font-size: var(--font-size-h3) !important;
}

body.store-body h4 {
    font-size: var(--font-size-h4) !important;
}

body.store-body h5 {
    font-size: var(--font-size-h5) !important;
}

body.store-body h6 {
    font-size: var(--font-size-h6) !important;
}

/* Normal text and paragraphs */
body.store-body p,
.store-body-copy,
.store-hero-copy p,
.store-article-content > .store-body-copy,
.store-routine-copy p,
.store-product-copy p,
.store-faq-contact p,
.store-concern-routine > div > p:not(.store-kicker),
.store-concern-cta > p:not(.store-kicker),
.store-contact-intro,
.store-home-guide p,
.store-home-dermatologist p,
.store-home-final-copy p,
.store-home-philosophy-copy p,
.store-home-problem-copy p,
.store-faq-item-a p {
    font-size: var(--font-size-p) !important;
}

/* On small screens, use configurable mobile typography font sizes */
@media (max-width: 767px) {
    body.store-body h1,
    .store-hero-copy h1,
    .store-home-hero-copy h1,
    .store-detail-copy h1,
    .store-product-information h1,
    .store-favourites-heading h1,
    .store-cms-content > h1,
    .store-routine-detail h1,
    .store-title {
        font-size: var(--font-size-h1-mobile, 32px) !important;
    }

    body.store-body h2,
    .store-home-section-heading h2,
    .store-home-centered-heading h2,
    .store-home-philosophy-copy h2,
    .store-home-problem-copy h2,
    .store-home-dermatologist h2,
    .store-home-guide h2,
    .store-home-faqs h2,
    .store-home-final-copy h2,
    .store-concern-cta h2,
    .store-product-suitable h2,
    .store-product-cross-sell h2,
    .store-faq-contact h2,
    .store-routine-grid .store-card-copy h2,
    .store-routine-testimonials-section .store-title {
        font-size: var(--font-size-h2-mobile, 26px) !important;
    }

    body.store-body h3,
    .store-card-copy h3,
    .store-home-product-copy h3,
    .store-home-concern h3,
    .store-home-method-steps h3,
    .store-home-routine-copy h3,
    .store-home-article-grid h3,
    .store-principle-grid h3,
    .store-concern-routine h3 {
        font-size: var(--font-size-h3-mobile, 18px) !important;
    }

    body.store-body h4 {
        font-size: var(--font-size-h4-mobile, 16px) !important;
    }

    body.store-body h5 {
        font-size: var(--font-size-h5-mobile, 14px) !important;
    }

    body.store-body h6 {
        font-size: var(--font-size-h6-mobile, 13px) !important;
    }

    body.store-body p,
    .store-body-copy,
    .store-hero-copy p,
    .store-article-content > .store-body-copy,
    .store-routine-copy p,
    .store-product-copy p,
    .store-faq-contact p,
    .store-concern-routine > div > p:not(.store-kicker),
    .store-concern-cta > p:not(.store-kicker),
    .store-contact-intro,
    .store-home-guide p,
    .store-home-dermatologist p,
    .store-home-final-copy p,
    .store-home-philosophy-copy p,
    .store-home-problem-copy p,
    .store-faq-item-a p {
        font-size: var(--font-size-p-mobile, 14px) !important;
    }
}

/* Avoid floating WhatsApp button overlapping mobile sticky Add to Cart bar */
@media (max-width: 767px) {
    body:has(.store-product-sticky) #floating-whatsapp-btn,
    body:has(.store-product-sticky) .floating-whatsapp-btn,
    body.has-product-sticky #floating-whatsapp-btn,
    body.has-product-sticky .floating-whatsapp-btn,
    #floating-whatsapp-btn.has-sticky-offset {
        bottom: 5.25rem !important;
    }
}

/* Mobile Navigation & Mega Menu Submenu */
.store-mobile-nav-group {
    border-bottom: 1px solid rgba(var(--ink-rgb), 0.08);
}
.store-mobile-nav-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.store-mobile-nav-header > a {
    flex: 1;
    display: flex;
    align-items: center;
    padding: 12px 4px;
    color: var(--ink);
    text-decoration: none;
    font-size: 15px;
    font-weight: 500;
}
.store-mobile-nav-toggle {
    background: transparent;
    border: none;
    color: var(--ink);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px 10px;
    border-radius: 6px;
}
.store-mobile-nav-toggle:hover {
    background-color: rgba(var(--ink-rgb), 0.05);
}
.store-mobile-chevron {
    transition: transform 0.2s ease;
}
.store-mobile-submenu {
    padding: 6px 4px 16px;
}
.store-mobile-submenu a {
    text-decoration: none !important;
    border-bottom: none !important;
}

@media(max-width: 360px) {
    .store-home-problem-main {
        width: calc(100% - 20px) !important;
        gap: 8px !important;
    }
    .store-home-problem-serum,
    .store-home-problem-shelf {
        height: 240px !important;
    }
    .store-home-problem-serum img {
        max-height: 230px !important;
    }
    .store-home-problem-shelf {
        padding: 12px 6px 10px !important;
    }
    .store-home-problem-shelf-image-wrap,
    .store-home-problem-products {
        height: 125px !important;
    }
    .store-home-problem-shelf-image {
        max-height: 120px !important;
    }
}


/* Announcement Top Bar Typography & Responsive Font Sizes */
.store-topbar #store-announcement,
.store-topbar p {
    font-family: 'Jost', system-ui, sans-serif !important;
    font-weight: 500 !important;
    font-size: var(--topbar-fs-desktop, 13px) !important;
    line-height: 1.4 !important;
    letter-spacing: 0.04em !important;
    text-transform: none !important;
}
@media (max-width: 767px) {
    .store-topbar #store-announcement,
    .store-topbar p {
        font-size: var(--topbar-fs-mobile, 15px) !important;
    }
}
