:root{font-family:'DM Sans',Arial,sans-serif;color:var(--tb-ink);background:var(--tb-canvas);font-synthesis:none}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--tb-ink);background:var(--tb-canvas);line-height:1.55}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
:focus-visible{outline:3px solid var(--tb-green);outline-offset:4px}
.skip-link{position:absolute;left:1rem;top:-5rem;background:#fff;color:var(--tb-ink);padding:.65rem 1rem;z-index:20}
.skip-link:focus{top:1rem}
.announcement{background:var(--tb-ink);color:#fff;text-align:center;padding:.53rem 1rem;font-size:.69rem;letter-spacing:.22em;text-transform:uppercase}
.site-header{background:var(--tb-canvas);border-bottom:1px solid var(--tb-line);position:relative;z-index:5}
.header-inner{max-width:1440px;min-height:88px;margin:auto;padding:0 clamp(1.2rem,4vw,4.5rem);display:flex;align-items:center;gap:2.5rem}
.brand{display:inline-flex;align-items:center;gap:.75rem;font-size:1.08rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}
.brand-mark{display:grid;place-items:center;width:37px;height:37px;border:1px solid currentColor;border-radius:50%;font-family:'Playfair Display',Georgia,serif;font-size:.78rem;letter-spacing:-.08em;padding-right:.11rem}
.desktop-nav{display:flex;align-items:center;gap:clamp(1rem,2.7vw,2.8rem);margin:auto}
.desktop-nav a,.mobile-nav nav a{font-size:.78rem;text-transform:uppercase;letter-spacing:.14em;font-weight:700;position:relative}
.desktop-nav a:after{content:'';position:absolute;left:0;right:100%;bottom:-.55rem;height:1px;background:currentColor;transition:right .2s ease}
.desktop-nav a:hover:after,.desktop-nav a[aria-current=page]:after{right:0}
.header-cta{border:1px solid var(--tb-ink);padding:.75rem 1.1rem;font-size:.71rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;display:flex;gap:1rem;align-items:center;transition:background .2s,color .2s}
.header-cta:hover{background:var(--tb-ink);color:#fff}
.mobile-nav{display:none}
.content-wrap{width:min(1280px,calc(100% - 7vw));margin-inline:auto}
.eyebrow{font-size:.67rem;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--tb-green);margin:0 0 1.15rem}
h1,h2,h3,p{margin-top:0}
h1,h2{font-family:'Playfair Display',Georgia,serif;font-weight:400;letter-spacing:-.035em;line-height:1.08}
h1{font-size:clamp(3rem,6vw,6.7rem)}
h2{font-size:clamp(2.5rem,4.8vw,5.2rem)}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:2.6rem;padding:1rem 1.3rem;min-height:52px;font-size:.72rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;transition:transform .2s ease,background .2s ease}
.button:hover{transform:translateY(-3px)}
.button-dark{background:var(--tb-green);color:#fff}
.button-light{background:#fff;color:var(--tb-ink)}
.text-link{display:inline-flex;gap:3rem;border-bottom:1px solid currentColor;padding-bottom:.55rem;font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.text-link:hover{color:var(--tb-green)}
.hero{display:grid;grid-template-columns:44% 56%;min-height:min(700px,65vw);background:var(--tb-soft)}
.hero-copy{padding:clamp(3rem,7vw,8rem) clamp(2rem,7vw,9rem);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;position:relative;background:linear-gradient(130deg,var(--tb-soft),var(--tb-line))}
.hero-copy h1{max-width:8.5ch;margin-bottom:1.4rem}
.hero-intro{max-width:38ch;font-size:clamp(.96rem,1.15vw,1.12rem);margin-bottom:2.5rem}
.hero-index{position:absolute;left:clamp(2rem,7vw,9rem);bottom:2.2rem;font-size:.65rem;font-weight:700;letter-spacing:.22em}
.hero-image{background:color-mix(in srgb,var(--tb-green) 22%,var(--tb-canvas)) url('images/topbeauty-hero-skincare.webp') center center / cover no-repeat;min-height:520px}
.style-strip{display:flex;justify-content:center;align-items:center;gap:clamp(1.5rem,6vw,7rem);padding:1.1rem 1.2rem;border-bottom:1px solid var(--tb-line);font-size:.67rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;white-space:nowrap}
.strip-star{font-size:1.1rem;color:var(--tb-green)}
.story-section{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2.5rem,8vw,9rem);align-items:center;padding-block:clamp(5rem,10vw,11rem)}
.story-image{position:relative}
.story-image img{width:100%;height:min(680px,53vw);object-fit:cover;object-position:center 28%}
.image-caption{position:absolute;right:-1.4rem;bottom:1.4rem;writing-mode:vertical-rl;font-size:.62rem;font-weight:700;letter-spacing:.2em}
.story-copy{max-width:490px}
.story-copy h2{max-width:10ch}
.story-copy>p:not(.eyebrow){font-size:1.08rem;max-width:45ch;color:var(--tb-deep);line-height:1.8;margin:2rem 0 2.6rem}
.values-section{padding-bottom:clamp(5rem,9vw,10rem)}
.section-heading{text-align:center;max-width:600px;margin:0 auto 3.5rem}
.section-heading h2{margin-bottom:1rem}
.section-heading>p:last-child{color:var(--tb-muted)}
.values-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--tb-line);border-bottom:1px solid var(--tb-line)}
.values-grid article{padding:3rem clamp(1.5rem,3vw,4rem)}
.values-grid article+article{border-left:1px solid var(--tb-line)}
.value-number{display:block;font-family:'Playfair Display',Georgia,serif;font-size:3.5rem;color:var(--tb-green);margin-bottom:2.5rem}
.values-grid h3{font-family:'Playfair Display',Georgia,serif;font-weight:500;font-size:1.55rem;margin-bottom:.7rem}
.values-grid p{color:var(--tb-muted);font-size:.92rem;margin:0;max-width:28ch}
.closing-banner{background:var(--tb-green);color:#fff;text-align:center;padding:clamp(4rem,8vw,8rem) 1.5rem}
.closing-banner .eyebrow{color:var(--tb-soft)}
.closing-banner h2{max-width:12ch;margin:0 auto 2.4rem}
.site-footer{background:var(--tb-ink);color:color-mix(in srgb,var(--tb-green) 6%,white);padding:5rem clamp(1.2rem,4vw,4.5rem) 1.5rem}
.footer-inner{max-width:1280px;margin:auto;display:grid;grid-template-columns:2fr 1fr 1.2fr;gap:3rem;padding-bottom:6rem}
.footer-brand .brand{font-size:1.4rem}
.footer-brand p,.footer-inner>div:last-child p{max-width:25ch;color:var(--tb-line);font-size:.85rem;margin:1.5rem 0}
.footer-inner h2{font-family:'DM Sans',Arial,sans-serif;font-size:.71rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;margin:0 0 1.4rem}
.footer-inner nav{display:flex;flex-direction:column;align-items:flex-start;gap:.75rem}
.footer-inner nav a,.footer-inner>div:last-child>a,.footer-inner>div:last-child>span{font-size:.86rem;color:var(--tb-line)}
.footer-inner a:hover{text-decoration:underline;text-underline-offset:4px}
.footer-bottom{max-width:1280px;margin:auto;border-top:1px solid var(--tb-muted);padding-top:1.3rem;display:flex;justify-content:space-between;gap:1rem;font-size:.69rem;letter-spacing:.14em;text-transform:uppercase;color:var(--tb-line)}
.page-intro{padding-block:clamp(5rem,9vw,10rem) 4rem;max-width:1280px}
.page-intro h1{max-width:12ch}.page-intro>p:last-child{max-width:50ch;font-size:1.1rem;color:var(--tb-muted)}
.shop-pending{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(2rem,8vw,8rem);padding-bottom:9rem}
.shop-pending-image{height:440px;overflow:hidden;background:var(--tb-line)}.shop-pending-image img{width:100%;height:100%;object-fit:cover;object-position:center 25%}
.shop-pending h2{max-width:10ch}.shop-pending p:not(.eyebrow){max-width:43ch;line-height:1.8;color:var(--tb-muted);margin-bottom:2rem}
.about-hero{display:grid;grid-template-columns:1fr .8fr;align-items:center;gap:8%;padding-block:clamp(5rem,9vw,9rem)}
.about-hero h1{max-width:11ch}.lead{max-width:50ch;color:var(--tb-muted);font-size:clamp(1.05rem,1.5vw,1.32rem);line-height:1.75}
.about-hero-image{height:650px;background:var(--tb-soft);overflow:hidden}.about-hero-image img{height:100%;width:100%;object-fit:cover;object-position:center 25%}
.about-story{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;border-top:1px solid var(--tb-line);padding-block:7rem 9rem}
.large-asterisk{font-size:clamp(10rem,22vw,25rem);line-height:1;color:var(--tb-green);font-family:Georgia,serif;text-align:center}
.about-story h2{max-width:10ch}.about-story p:not(.eyebrow){max-width:48ch;color:var(--tb-muted);line-height:1.8;margin:1.5rem 0 2rem}
.contact-hero,.not-found{min-height:65vh;padding-block:clamp(6rem,11vw,12rem);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.contact-hero h1,.not-found h1{max-width:11ch}.contact-hero .button{margin-top:2rem}.contact-address{font-size:.82rem;margin-top:1rem;color:var(--tb-muted)}
@media(max-width:1050px){.desktop-nav{gap:1.1rem}.header-cta{display:none}.hero-copy{padding:4rem}.hero-index{left:4rem}.hero{min-height:570px}}
@media(max-width:760px){.header-inner{min-height:72px;padding:0 1.25rem;justify-content:space-between}.desktop-nav{display:none}.mobile-nav{display:block;position:relative}.mobile-nav summary{list-style:none;cursor:pointer;font-size:.77rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;padding:.6rem 0}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav summary span{padding-left:.5rem}.mobile-nav nav{position:absolute;right:-1.25rem;top:calc(100% + 1rem);width:min(90vw,320px);background:var(--tb-canvas);box-shadow:0 15px 30px color-mix(in srgb,var(--tb-deep) 13%,transparent);padding:1.5rem;display:flex;flex-direction:column;gap:1.2rem}.content-wrap{width:min(100% - 2.5rem,600px)}.hero{display:flex;flex-direction:column-reverse}.hero-image{min-height:390px;background-position:center 35%}.hero-copy{min-height:420px;padding:3.5rem 1.5rem 5rem}.hero-copy h1{font-size:clamp(3.3rem,11vw,5rem)}.hero-index{left:1.5rem;bottom:1.3rem}.style-strip{gap:1.2rem;overflow:hidden;justify-content:flex-start}.style-strip span:nth-last-child(-n+2){display:none}.story-section,.shop-pending,.about-hero,.about-story{grid-template-columns:1fr;gap:2.7rem}.story-section{padding-block:5rem}.story-image img{height:520px}.story-copy{max-width:none}.values-grid{grid-template-columns:1fr}.values-grid article{padding:2rem .5rem}.values-grid article+article{border-left:0;border-top:1px solid var(--tb-line)}.value-number{margin-bottom:.5rem}.footer-inner{grid-template-columns:1fr 1fr;gap:3rem;padding-bottom:3rem}.footer-brand{grid-column:1/-1}.about-hero-image{height:500px}.about-story{padding-block:4rem 6rem}.large-asterisk{display:none}.shop-pending{padding-bottom:5rem}.shop-pending-image{height:400px}}
@media(max-width:490px){.announcement{font-size:.58rem}.brand{font-size:.88rem}.brand-mark{width:32px;height:32px}.hero-image{min-height:310px}.footer-inner{grid-template-columns:1fr}.footer-brand{grid-column:auto}.footer-bottom{flex-direction:column}.story-image img{height:430px}}

.header-actions{display:flex;align-items:center;gap:1.2rem;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}.header-actions a:hover,.product-view:hover{color:var(--tb-green)}.header-actions [data-cart-count]{display:inline-grid;place-items:center;min-width:1.3rem;height:1.3rem;padding:0 .2rem;border-radius:50%;background:var(--tb-green);color:#fff;font-size:.62rem}.product-view{font-size:.71rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid currentColor;padding-bottom:.2rem}.product-card h3 a:hover{color:var(--tb-green)}
.crumbs{display:flex;gap:.8rem;padding-top:2rem;font-size:.76rem;color:var(--tb-muted)}.crumbs a{text-decoration:underline}.product-detail{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:clamp(2rem,5vw,6rem);padding-top:2rem;padding-bottom:7rem}.gallery-main{background:var(--tb-soft);aspect-ratio:4/5;display:grid;place-items:center;overflow:hidden}.gallery-main img{width:100%;height:100%;object-fit:cover}.gallery-thumbs{display:flex;gap:.8rem;margin-top:.9rem;overflow:auto}.gallery-thumb{border:2px solid transparent;padding:0;width:78px;height:90px;cursor:pointer;background:var(--tb-soft);flex:none}.gallery-thumb.is-active{border-color:var(--tb-green)}.gallery-thumb img{width:100%;height:100%;object-fit:cover}.purchase-panel{padding-top:2rem}.purchase-panel h1{font-size:clamp(2.8rem,4.5vw,5rem);line-height:1.08;margin:.5rem 0 1.2rem}.detail-price{font-family:'Playfair Display',Georgia,serif;font-size:1.8rem;margin:0 0 1.8rem}.detail-description{color:var(--tb-muted);line-height:1.8;margin-bottom:2rem}.purchase-panel form{display:grid;gap:.85rem}.purchase-panel label,.cart-summary label{font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.purchase-panel select,.purchase-panel input,.cart-summary input,.cart-item input{font:inherit;padding:.85rem;border:1px solid var(--tb-line);background:#fff;color:var(--tb-ink);max-width:100%}.purchase-panel input[type=number]{width:100px}.purchase-panel .button{width:100%;cursor:pointer;border:0}.purchase-panel .button:disabled{opacity:.55;cursor:not-allowed}.stock-note{font-size:.78rem;color:var(--tb-muted);margin:.2rem 0}.wishlist-button{background:none;border:1px solid var(--tb-line);min-height:48px;cursor:pointer;font:inherit;font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em}.form-feedback{min-height:1.4rem;font-size:.85rem}.purchase-info{border-top:1px solid var(--tb-line);margin-top:2rem;padding-top:1rem;color:var(--tb-muted);font-size:.85rem}.purchase-info p{margin:.4rem 0}
.cart-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,350px);gap:clamp(2rem,5vw,5rem);padding-bottom:7rem}.cart-item{display:grid;grid-template-columns:100px minmax(140px,1fr) auto auto auto;gap:1.1rem;align-items:center;border-top:1px solid var(--tb-line);padding:1.3rem 0}.cart-photo{width:100px;height:120px;background:var(--tb-soft)}.cart-photo img{width:100%;height:100%;object-fit:cover}.cart-item h2{font-size:1.12rem;margin:0 0 .4rem}.cart-item p{margin:.2rem 0;font-size:.8rem;color:var(--tb-muted)}.cart-item form{display:grid;gap:.4rem}.cart-item form label{font-size:.72rem}.cart-item input{width:70px;padding:.5rem}.cart-item button,.coupon-form button,.wishlist-item button{border:1px solid var(--tb-line);background:transparent;padding:.5rem .8rem;cursor:pointer;font:inherit;font-size:.75rem}.cart-remove{border:0!important;text-decoration:underline;background:none!important}.cart-summary{border-top:3px solid var(--tb-ink);padding-top:1.1rem}.cart-summary h2{font-family:'Playfair Display',Georgia,serif;font-size:2rem;margin:0 0 1.3rem}.cart-summary>p:not(.form-feedback){display:flex;justify-content:space-between;gap:1rem;font-size:.9rem}.cart-summary .cart-total{border-top:1px solid var(--tb-line);padding-top:1rem;font-size:1.1rem!important}.cart-summary .muted{display:block!important;color:var(--tb-muted);font-size:.78rem!important}.cart-summary form{margin-top:2rem}.coupon-form{display:flex;gap:.4rem;margin-top:.5rem}.coupon-form input{min-width:0;flex:1}.cart-summary .button{width:100%;margin-top:1.3rem}.cart-summary .button[aria-disabled=true]{opacity:.5;pointer-events:none}.wishlist-section{padding-bottom:7rem}.wishlist-item{display:grid;grid-template-columns:120px 1fr;gap:1.4rem;border-top:1px solid var(--tb-line);padding:1.2rem 0;max-width:800px}.wishlist-item>a{width:120px;height:145px;background:var(--tb-soft)}.wishlist-item img{width:100%;height:100%;object-fit:cover}.wishlist-item h2{font-size:1.3rem;margin:.2rem 0}.wishlist-item p{margin:.3rem 0}.wishlist-item button{margin:.7rem .5rem 0 0}.wishlist-section>.button{margin-top:2rem;cursor:pointer;border:0}
.cart-clear{border:0;background:none;text-decoration:underline;font:inherit;color:var(--tb-muted);cursor:pointer;padding:.5rem 0}

.checkout-intro{padding-bottom:2.5rem}.checkout-layout,.order-success-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,380px);gap:clamp(2rem,5vw,6rem);padding-bottom:7rem;align-items:start}.checkout-form{display:grid;gap:1rem}.checkout-form h2,.checkout-review h2,.bank-instructions h2{font-family:'Playfair Display',Georgia,serif;font-size:2rem;font-weight:500;margin:2rem 0 .4rem}.checkout-form h2:first-child{margin-top:0}.checkout-form label{display:grid;gap:.35rem;font-size:.75rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.checkout-form input,.checkout-form select,.checkout-form textarea{font:inherit;padding:.85rem;border:1px solid var(--tb-line);background:#fff;color:var(--tb-ink);width:100%;box-sizing:border-box}.checkout-fields{display:grid;gap:1rem}.checkout-fields.two{grid-template-columns:1fr 1fr}.checkout-check{display:flex!important;align-items:center;gap:.6rem;letter-spacing:normal!important;text-transform:none!important;font-size:.85rem!important}.checkout-check input{width:auto!important}.billing-details{border:1px solid var(--tb-line);padding:1rem}.billing-details summary{cursor:pointer;font-size:.83rem;font-weight:700}.billing-details[open]{display:grid;gap:1rem}.billing-details .checkout-fields{margin-top:1rem}.checkout-radio{display:flex!important;align-items:center;gap:1rem;border:1px solid var(--tb-line);padding:1rem;margin-bottom:.7rem;cursor:pointer;text-transform:none!important;letter-spacing:normal!important;font-size:.85rem!important}.checkout-radio input{width:auto!important;flex:none}.checkout-radio span{display:grid;gap:.2rem;flex:1}.checkout-radio small,.checkout-items small{display:block;font-weight:400;color:var(--tb-muted);font-size:.75rem}.checkout-radio>strong{white-space:nowrap}.checkout-form>.button,.checkout-review .button{border:0;cursor:pointer;margin-top:1rem}.checkout-form .button:disabled,.checkout-review .button:disabled{opacity:.55;cursor:not-allowed}.checkout-summary{position:sticky;top:1rem}.checkout-items{list-style:none;padding:0;margin:0 0 1.2rem}.checkout-items li{display:flex;justify-content:space-between;gap:1rem;padding:.8rem 0;border-bottom:1px solid var(--tb-line);font-size:.84rem}.checkout-items li strong{font-weight:700}.review-block{border-top:1px solid var(--tb-line);padding:1rem 0 1.5rem;position:relative}.review-block h2{margin:.3rem 0 .6rem}.review-block p{line-height:1.7;color:var(--tb-muted)}.review-block>a{position:absolute;right:0;top:1.2rem;text-decoration:underline;font-size:.8rem}.review-block form{display:grid}.bank-instructions{background:var(--tb-soft);padding:1.6rem;margin-top:1.5rem}.bank-instructions h2{margin:0 0 1rem}.bank-instructions p{line-height:1.7}.bank-instructions dl{margin:1.5rem 0}.bank-instructions dl>div{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--tb-line);padding:.65rem 0}.bank-instructions dt{color:var(--tb-muted)}.bank-instructions dd{font-weight:700;margin:0;text-align:right}.order-success-intro h1{max-width:14ch}.order-success-intro>p:last-child{max-width:58ch}.order-actions{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;margin-top:2rem}.order-actions button{border:1px solid var(--tb-line);background:none;padding:1rem 1.3rem;cursor:pointer;font:inherit}.alert{background:var(--tb-soft);padding:.8rem 1rem;color:var(--tb-deep)}
@media(max-width:900px){.checkout-layout,.order-success-layout{grid-template-columns:1fr}.checkout-summary{position:static;max-width:600px}}@media(max-width:560px){.checkout-fields.two{grid-template-columns:1fr}.checkout-radio{align-items:flex-start}.checkout-radio>strong{font-size:.75rem}.bank-instructions{padding:1rem}}
@media print{.site-header,.site-footer,.announcement,.order-actions,.skip-link{display:none!important}.order-success-layout{display:block}.bank-instructions{break-inside:avoid}}
@media(max-width:850px){.product-detail,.cart-layout{grid-template-columns:1fr}.purchase-panel{padding-top:0}.cart-summary{max-width:500px}.cart-item{grid-template-columns:90px 1fr auto;align-items:start}.cart-photo{width:90px;height:110px}.cart-item form{grid-column:2}.cart-item .cart-remove{grid-column:3;grid-row:2}.cart-item strong{grid-column:3;grid-row:1}.header-actions{margin-left:auto;margin-right:1rem}}@media(max-width:520px){.cart-item{grid-template-columns:78px 1fr}.cart-photo{width:78px;height:96px}.cart-item strong{grid-column:2;grid-row:2}.cart-item form{grid-column:2;grid-row:3}.cart-item .cart-remove{grid-column:2;grid-row:4;text-align:left}.header-actions{gap:.6rem;font-size:.68rem;margin-right:.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
.featured-section{padding-bottom:clamp(5rem,9vw,10rem)}.featured-link{text-align:center;margin:2.5rem 0 0}.shop-intro{padding-bottom:2rem}.shop-layout{display:grid;grid-template-columns:minmax(220px,270px) 1fr;gap:clamp(2rem,4vw,5rem);padding-bottom:7rem;align-items:start}.shop-filters{border-top:1px solid var(--tb-line);padding-top:1.3rem;position:sticky;top:1rem}.shop-filters h2{font-family:'DM Sans',Arial,sans-serif;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.15em;margin-bottom:1.4rem}.shop-filters label{display:block;font-size:.74rem;font-weight:700;letter-spacing:.05em;margin-bottom:1rem}.shop-filters input,.shop-filters select{display:block;width:100%;margin:.35rem 0 0;padding:.8rem .7rem;border:1px solid var(--tb-line);border-radius:0;background:#fff;color:var(--tb-ink);font:inherit}.shop-filters .button{width:100%;border:0;cursor:pointer}.filter-prices{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.clear-filters{display:inline-block;margin-top:1rem;font-size:.7rem;text-decoration:underline;text-underline-offset:4px;text-transform:uppercase;letter-spacing:.12em}.results-heading{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--tb-line);padding-bottom:1rem;margin-bottom:1.7rem}.results-heading h2{font-size:clamp(1.8rem,3vw,2.4rem);margin:0}.results-heading span{font-size:.75rem;color:var(--tb-muted);white-space:nowrap}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem 1.2rem}.featured-section .product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.product-photo{height:clamp(210px,24vw,390px);position:relative;background:var(--tb-soft);overflow:hidden}.product-photo img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.product-card:hover .product-photo img{transform:scale(1.035)}.product-no-image{height:100%;display:grid;place-items:center;color:var(--tb-muted);font-family:'Playfair Display',Georgia,serif;font-size:1.4rem;text-align:center;padding:1rem}.product-badge{position:absolute;left:.6rem;top:.6rem;background:#fff;color:var(--tb-ink);font-size:.6rem;font-weight:700;letter-spacing:.06em;padding:.35rem .5rem;text-transform:uppercase}.product-meta{padding:.9rem .15rem}.product-meta .eyebrow{font-size:.58rem;margin-bottom:.35rem}.product-meta h3{font-family:'Playfair Display',Georgia,serif;font-size:1.18rem;font-weight:500;margin:0 0 .5rem;line-height:1.3}.product-meta p{font-size:.78rem;margin:0}.product-meta del{color:var(--tb-muted);margin-left:.4rem}.empty-collection{background:var(--tb-soft);padding:clamp(2rem,5vw,5rem);min-height:340px;display:flex;flex-direction:column;justify-content:center}.empty-collection h3{font-family:'Playfair Display',Georgia,serif;font-weight:400;font-size:2.4rem;margin-bottom:1rem}.empty-collection p:last-child{max-width:42ch;color:var(--tb-muted)}.shop-error{grid-column:1/-1;background:var(--tb-soft);color:var(--tb-deep);padding:1rem}.shop-pagination{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center;margin-top:3rem}.shop-pagination a{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--tb-line);font-size:.8rem}.shop-pagination a[aria-current=page]{background:var(--tb-ink);color:#fff}
@media(max-width:950px){.product-grid,.featured-section .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.shop-layout{grid-template-columns:230px 1fr}.product-photo{height:320px}}
@media(max-width:760px){.shop-layout{display:block}.shop-filters{position:static;padding:1.2rem;margin-bottom:2rem;border:1px solid var(--tb-line)}.product-grid,.featured-section .product-grid{gap:1.4rem .8rem}.product-photo{height:clamp(210px,58vw,380px)}}
@media(max-width:440px){.product-photo{height:230px}.product-meta h3{font-size:1rem}.product-meta p{font-size:.7rem}.product-badge{font-size:.52rem}.shop-filters{margin-inline:-.2rem}}
@media(max-width:1050px){.header-inner{min-height:72px;padding:0 1.25rem;justify-content:space-between;gap:1rem}.desktop-nav{display:none}.mobile-nav{display:block;position:relative}.mobile-nav summary{list-style:none;cursor:pointer;font-size:.77rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;padding:.6rem 0}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav summary span{padding-left:.5rem}.mobile-nav nav{position:absolute;right:-1.25rem;top:calc(100% + 1rem);width:min(90vw,320px);background:var(--tb-canvas);box-shadow:0 15px 30px color-mix(in srgb,var(--tb-deep) 13%,transparent);padding:1.5rem;display:flex;flex-direction:column;gap:1.2rem}}
