/* UseBellaFlor 2.0 — storefront editorial premium */
*{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg:#fbfaf8;--surface:#fff;--surface-soft:#f5f2ef;--ink:#181617;--muted:#655f62;--line:#e8e3e0;
  --rose:#ad5b75;--rose-deep:#87435a;--rose-soft:#f4e9ed;--green:#2f6a4d;--black:#111;
  --container:1280px;--display:"Cormorant Garamond",Georgia,serif;--sans:"Inter",Arial,sans-serif;
  --ease:cubic-bezier(.22,.75,.22,1);--shadow:0 18px 55px rgba(24,18,20,.08)
}
html{scroll-behavior:smooth}
body{font-family:var(--sans);color:var(--ink);background:var(--bg);font-size:15px;line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased}
body.no-scroll{overflow:hidden}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{border:0;background:none;cursor:pointer}
img{display:block;max-width:100%}
input,select,textarea{border-radius:0}
.container{width:min(calc(100% - 48px),var(--container));margin-inline:auto}
.section{padding:108px 0}
.section-subtitle,.hero-kicker{display:inline-block;margin-bottom:12px;font-size:.68rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--rose-deep)}
.section-header{max-width:720px;margin:0 auto 46px;text-align:center}
.section-header h2,.home-section-heading h2,.collection-copy h2,.about-copy h2,.newsletter-box h2,.page-hero h1,.order-summary h2,.checkout-summary h2,.info-main h2{font-family:var(--display);font-weight:600;letter-spacing:-.025em;line-height:.98}
.section-header h2,.home-section-heading h2{font-size:clamp(2.6rem,4.2vw,4.2rem)}
.section-header p{max-width:560px;margin:14px auto 0;color:var(--muted)}
.text-link{display:inline-flex;align-items:center;gap:9px;font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid currentColor;padding-bottom:3px;transition:gap .25s ease,color .25s ease}
.text-link:hover{gap:13px;color:var(--rose-deep)}
.text-link.light{color:#fff}
.btn{min-height:48px;padding:0 22px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid transparent;font-size:.75rem;font-weight:600;letter-spacing:.035em;transition:background .25s ease,color .25s ease,border-color .25s ease,transform .25s ease}
.btn:hover{transform:translateY(-1px)}
.btn-dark{background:var(--ink);color:#fff}.btn-dark:hover{background:#000}
.btn-light{background:#fff;color:var(--ink);border-color:#fff}.btn-light:hover{background:transparent;color:#fff}
.btn-outline{border-color:#cbc4c1;background:transparent}.btn-outline:hover{border-color:var(--ink)}
.btn-primary{background:var(--rose-deep);color:#fff}.btn-primary:hover{background:#733449}
.btn-whatsapp{background:#1e9e5b;color:#fff}.btn-whatsapp:hover{background:#16824a}
.full{width:100%}
.muted{color:var(--muted)}

/* utility motion */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.reveal.is-visible{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* topbar + header */
.topbar{height:31px;background:#171516;color:rgba(255,255,255,.88);display:flex;align-items:center}
.topbar-content{display:flex;justify-content:center;align-items:center;gap:34px;font-size:.62rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase}
.topbar-content span+span:before{content:"";width:3px;height:3px;border-radius:50%;background:rgba(255,255,255,.42);display:inline-block;margin-right:34px;vertical-align:middle}
.header{position:sticky;top:0;z-index:1000;background:rgba(251,250,248,.96);backdrop-filter:blur(16px);border-bottom:1px solid rgba(232,227,224,.8)}
.header-content{min-height:73px;display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"brand nav actions";align-items:center;gap:36px}
.brand-wordmark{grid-area:brand;position:relative;display:inline-block;font-family:var(--display);font-size:1.78rem;font-weight:600;line-height:1;letter-spacing:-.045em;white-space:nowrap;padding-bottom:12px}
.brand-wordmark>span{color:var(--rose);font-style:italic;font-weight:500}
.brand-wordmark small{position:absolute;left:2px;bottom:0;font-family:var(--sans);font-size:.39rem;font-weight:500;letter-spacing:.26em;color:#81797c}
.nav{grid-area:nav;display:flex;align-items:center;justify-content:center;gap:20px;min-width:0}
.nav>a{position:relative;font-size:.7rem;font-weight:500;letter-spacing:.075em;text-transform:uppercase;white-space:nowrap;color:#343033;transition:color .2s ease}
.nav>a:after{content:"";position:absolute;left:0;right:0;bottom:-9px;height:1px;background:var(--ink);transform:scaleX(0);transform-origin:center;transition:transform .25s ease}
.nav>a:hover,.nav>a.active{color:var(--ink)}.nav>a:hover:after,.nav>a.active:after{transform:scaleX(1)}
.nav-search{display:none}
.header-actions{grid-area:actions;display:flex;align-items:center;justify-content:flex-end;gap:4px}
.icon-btn,.menu-toggle{width:37px;height:37px;display:grid;place-items:center;color:#292528;transition:color .2s ease,background .2s ease}
.icon-btn:hover,.menu-toggle:hover{color:var(--rose-deep);background:var(--rose-soft)}
.cart-btn{position:relative}.cart-count{position:absolute;top:1px;right:-1px;min-width:16px;height:16px;padding:0 3px;border-radius:99px;display:grid;place-items:center;background:var(--rose-deep);color:#fff;font-size:.54rem;font-weight:600;border:2px solid var(--bg)}
.menu-toggle{display:none}

/* global search */
.search-sheet{position:fixed;inset:0;z-index:1800;opacity:0;pointer-events:none;transition:opacity .25s ease}.search-sheet.active{opacity:1;pointer-events:auto}
.search-sheet-backdrop{position:absolute;inset:0;background:rgba(17,15,16,.48);backdrop-filter:blur(4px)}
.search-sheet-panel{position:relative;width:min(calc(100% - 32px),650px);margin:18px auto 0;background:var(--surface);padding:22px 24px 24px;box-shadow:var(--shadow);transform:translateY(-10px);transition:transform .25s ease}.search-sheet.active .search-sheet-panel{transform:none}
.search-sheet-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.search-sheet-head strong{font-family:var(--display);font-size:1.75rem;font-weight:600}.search-sheet-close{width:38px;height:38px;display:grid;place-items:center}
.search-sheet-form{display:grid;grid-template-columns:34px 1fr auto;align-items:center;border-bottom:1px solid var(--ink);height:52px}.search-sheet-form input{border:0;outline:0;background:transparent;min-width:0;font-size:1rem}.search-sheet-form button{padding:0 12px;height:38px;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.search-sheet-tip{margin-top:10px;color:var(--muted);font-size:.7rem}

/* editorial hero */
.hero-slider{position:relative;height:min(760px,calc(100svh - 104px));min-height:610px;background:#efeae6;overflow:hidden}
.slide{position:absolute;inset:0;display:grid;grid-template-columns:minmax(330px,.75fr) minmax(0,1.55fr);opacity:0;pointer-events:none;transition:opacity .7s ease}.slide.active{opacity:1;pointer-events:auto;z-index:1}
.hero-copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:70px clamp(34px,5vw,86px);background:#f2efeb;z-index:2}
.hero-copy h1,.hero-copy h2{font-family:var(--display);font-size:clamp(3.7rem,5.7vw,6.4rem);font-weight:500;line-height:.88;letter-spacing:-.045em;max-width:520px;margin:0 0 24px}
.hero-copy p{max-width:430px;color:#5f585b;font-size:.92rem;line-height:1.75;margin-bottom:28px}
.hero-link{display:inline-flex;align-items:center;gap:12px;font-size:.69rem;font-weight:600;letter-spacing:.11em;text-transform:uppercase;border-bottom:1px solid var(--ink);padding-bottom:4px;transition:gap .25s ease,color .25s ease}.hero-link:hover{gap:17px;color:var(--rose-deep)}
.hero-visual{position:relative;overflow:hidden;background:#d8d3d0}.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.06),transparent 18%);pointer-events:none}.hero-visual img{width:100%;height:100%;object-fit:cover;object-position:center 26%;transition:transform 7s ease}.slide.active .hero-visual img{transform:scale(1.025)}
.hero-arrow{position:absolute;z-index:7;top:50%;width:38px;height:38px;border:1px solid rgba(255,255,255,.5);display:grid;place-items:center;color:#fff;background:rgba(20,18,19,.12);backdrop-filter:blur(6px);transform:translateY(-50%);transition:background .2s ease}.hero-arrow:hover{background:rgba(20,18,19,.3)}.hero-arrow.prev{left:18px}.hero-arrow.next{right:18px}
.hero-index{position:absolute;z-index:7;left:clamp(34px,5vw,86px);bottom:34px;display:flex;align-items:center;gap:10px;font-size:.58rem;letter-spacing:.1em;color:#7a7375}.hero-index-line{width:46px;height:1px;background:#aaa1a4}

/* benefits */
.benefits{border-bottom:1px solid var(--line);background:var(--surface)}
.benefits-grid{display:grid;grid-template-columns:repeat(4,1fr);min-height:82px}
.benefit-card{display:flex;align-items:center;gap:12px;padding:16px 26px;border-right:1px solid var(--line)}.benefit-card:first-child{padding-left:0}.benefit-card:last-child{border-right:0;padding-right:0}
.benefit-card>i{font-size:.9rem;color:var(--rose-deep);width:18px;text-align:center}.benefit-card h3{font-size:.7rem;font-weight:600;letter-spacing:.02em}.benefit-card p{font-size:.64rem;color:var(--muted);margin-top:2px}

/* section headings */
.home-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:38px}.home-section-heading h2{max-width:700px}.home-section-heading>p,.heading-side p{max-width:400px;color:var(--muted);font-size:.82rem}.heading-side{display:flex;align-items:flex-end;gap:20px}

/* categories */
.categories{background:var(--bg)}
.category-mosaic{display:grid;grid-template-columns:1.2fr .9fr .9fr;gap:16px}
.category-tile{position:relative;height:530px;overflow:hidden;background:#e9e4e1}.category-tile img{width:100%;height:100%;object-fit:cover;transition:transform .75s var(--ease)}.category-tile:nth-child(1) img{object-position:center 26%}.category-tile:nth-child(2) img{object-position:center 25%}.category-tile:nth-child(3) img{object-position:center 23%}.category-tile:hover img{transform:scale(1.035)}
.category-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(14,12,13,.5),rgba(14,12,13,0) 48%)}
.category-overlay{position:absolute;left:24px;right:24px;bottom:22px;color:#fff;display:flex;align-items:end;justify-content:space-between;gap:20px}.category-overlay h3{font-family:var(--display);font-size:2.25rem;font-weight:500;line-height:1}.category-overlay>span{display:inline-flex;align-items:center;gap:8px;font-size:.61rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}

/* product cards */
.products-section,.related-products{background:#fff}.products-grid,.catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:42px 20px}
.product-card{min-width:0;background:transparent}
.product-image-wrap{position:relative;overflow:hidden;background:#f0eeec}
.product-image{display:block;position:relative;aspect-ratio:4/5;overflow:hidden;background:#edeae8}.product-image>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 25%;transition:opacity .45s ease,transform .65s var(--ease)}.product-image-secondary{opacity:0}.product-card:hover .product-image-secondary{opacity:1}.product-card:hover .product-image-primary{opacity:0}.product-card:hover .product-image>img{transform:scale(1.018)}
.product-badge{position:absolute;z-index:3;left:12px;top:12px;display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border-radius:999px;font-size:.55rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.product-badge:not(.sold-out):not(.promo-badge){background:rgba(255,255,255,.94);color:#87435a;border:1px solid rgba(135,67,90,.16);box-shadow:0 4px 14px rgba(25,18,20,.05)}.product-badge:not(.sold-out):not(.promo-badge)::before{content:"✦";font-size:.62rem;line-height:1}.product-badge.sold-out{background:#2b2729;color:#fff;box-shadow:0 4px 14px rgba(25,18,20,.08)}.product-badge.promo-badge{background:var(--rose-deep);color:#fff;box-shadow:0 4px 14px rgba(135,67,90,.14)}
.favorite-btn{position:absolute;z-index:5;top:11px;right:11px;width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.9);border:1px solid rgba(24,22,23,.08);color:#4b4548;box-shadow:0 5px 18px rgba(28,20,23,.08);transition:background .2s,color .2s,border-color .2s,transform .2s}.favorite-btn i{font-size:.88rem;transition:transform .2s ease}.favorite-btn:hover{background:#fff;color:#87435a}.favorite-btn:hover i{transform:scale(1.08)}.favorite-btn.active{background:#87435a;border-color:#87435a;color:#fff}
.product-image-cta{position:absolute;z-index:4;left:12px;right:12px;bottom:12px;min-height:40px;display:flex;align-items:center;justify-content:center;gap:8px;background:rgba(255,255,255,.95);font-size:.62rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;opacity:0;transform:translateY(8px);transition:.28s ease}.product-card:hover .product-image-cta{opacity:1;transform:none}
.product-info{padding:14px 1px 0}.product-meta-row{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:5px}.product-category{font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;color:#6f666a}.card-stock{font-size:.55rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#627069}.card-stock.low{color:#a55f3f}.card-stock.sold{color:#8d4255}
.product-info h3{font-size:.87rem;font-weight:500;line-height:1.35;margin-bottom:8px}.product-info h3 a:hover{color:var(--rose-deep)}
.card-price-row{display:flex;align-items:baseline;gap:8px}.price{font-size:.9rem;font-weight:600}.old-price{font-size:.7rem;color:#999;text-decoration:line-through}.pix-price{display:block;margin-top:3px;font-size:.62rem;color:#655f62}.pix-price i{display:none}.pix-price strong{font-weight:500;color:#5b6e60}
.product-color-summary{display:flex;align-items:center;gap:5px;margin-top:8px}.product-color-summary small{font-size:.58rem;color:var(--muted)}.color-dot{--swatch:#c7bdc1;width:12px;height:12px;border-radius:50%;background:var(--swatch);display:inline-block;border:1px solid rgba(0,0,0,.12)}.color-dot.sold-out{opacity:.35}
.product-size-summary{display:block;margin-top:6px;color:#655f62;font-size:.6rem}
.product-btn{display:inline-flex;align-items:center;gap:8px;margin-top:8px;min-height:44px;font-size:.62rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;border-bottom:1px solid #a9a2a4;padding:8px 2px 6px;transition:gap .2s ease,border-color .2s ease}.product-btn:hover{gap:11px;border-color:var(--ink)}
.section-cta{text-align:center;margin-top:44px}

/* editorial blocks */
.commerce-band{padding:54px 0;background:#1c191a;color:#fff}.commerce-band-inner{display:flex;align-items:end;justify-content:space-between;gap:36px}.commerce-band-inner>div{max-width:650px}.commerce-band span{font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:#d7c6cc}.commerce-band h2{font-family:var(--display);font-size:clamp(2rem,3.6vw,3.6rem);font-weight:500;line-height:1;margin:8px 0 10px}.commerce-band p{color:#c4bec0;font-size:.78rem;max-width:560px}
.collection-banner{background:var(--bg)}.collection-grid{display:grid;grid-template-columns:1.06fr .94fr;gap:70px;align-items:center}.collection-image{height:680px;overflow:hidden;background:#e7e3e0}.collection-image img{width:100%;height:100%;object-fit:cover;object-position:center 20%}.collection-copy{max-width:510px}.collection-copy h2{font-size:clamp(3rem,5vw,5rem);font-weight:500;line-height:.95;margin-bottom:22px}.collection-copy p{color:var(--muted);line-height:1.8;margin-bottom:26px;max-width:470px}
.about-brand{background:#fff}.about-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:center}.about-copy{max-width:520px}.about-copy h2{font-size:clamp(3rem,5vw,5rem);font-weight:500;line-height:.95;margin-bottom:24px}.about-copy>p{color:var(--muted);line-height:1.85}.about-points{display:grid;gap:9px;margin-top:24px}.about-points span{font-size:.72rem;color:#5c5658}.about-points i{font-size:.58rem;margin-right:8px;color:var(--rose-deep)}
.about-images{display:grid;grid-template-columns:1fr .55fr;gap:14px;align-items:end}.about-main{width:100%;height:650px;object-fit:cover;object-position:center 25%}.about-small{width:100%;height:410px;object-fit:cover;object-position:center 25%}
.instagram-section{background:var(--bg)}.instagram-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.instagram-grid a{position:relative;aspect-ratio:1/1.25;overflow:hidden;background:#e7e3e0}.instagram-grid img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}.instagram-grid a:hover img{transform:scale(1.025)}.instagram-grid a span{position:absolute;right:12px;bottom:12px;width:34px;height:34px;display:grid;place-items:center;background:rgba(255,255,255,.9);opacity:0;transition:.25s ease}.instagram-grid a:hover span{opacity:1}
.newsletter{padding:70px 0;background:#211d1f;color:#fff}.newsletter-box{display:grid;grid-template-columns:1fr 1.05fr;gap:70px;align-items:center}.newsletter-box h2{font-size:clamp(2.7rem,4.6vw,4.6rem);font-weight:500;line-height:.94}.newsletter-box p{color:#c8c1c3;margin-top:12px;font-size:.78rem}.newsletter .section-subtitle{color:#d9bcc6}.newsletter form{display:grid;gap:13px}.newsletter-fields{display:grid;grid-template-columns:.75fr 1.25fr;gap:10px}.newsletter input[type=text],.newsletter input[type=email]{width:100%;height:48px;background:transparent;border:0;border-bottom:1px solid #6d6568;color:#fff;outline:0}.newsletter input::placeholder{color:#9e9699}.newsletter-consent{display:flex;align-items:flex-start;gap:9px;font-size:.66rem;color:#aca5a7}.newsletter-consent input{margin-top:3px}.newsletter .btn{justify-self:start}.honeypot{display:none!important}.form-status{font-size:.7rem;color:var(--muted)}.newsletter-status{color:#d9d2d4!important;margin-top:0!important}

/* page heroes */
.page-hero{padding:78px 0 56px;background:#f1eeeb;border-bottom:1px solid var(--line)}.page-hero.compact{padding:64px 0 44px}.page-hero h1{font-size:clamp(3.3rem,6vw,6rem);font-weight:500}.page-hero p{max-width:620px;margin-top:12px;color:var(--muted);font-size:.86rem}.catalog-hero-links{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}.catalog-hero-links a{font-size:.62rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:7px 10px;border-bottom:1px solid #c6bfbc}.catalog-hero-links a:hover{border-color:var(--ink)}
.breadcrumb{background:#fff;border-bottom:1px solid var(--line)}.breadcrumb .container{min-height:44px;display:flex;align-items:center;gap:10px;overflow:hidden;font-size:.62rem;color:#837c7f}.breadcrumb i{font-size:.48rem}.breadcrumb span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#454044}

/* catalog */
.catalog-section{background:#fff}.catalog-layout{display:grid;grid-template-columns:190px minmax(0,1fr);gap:54px}.filters{position:sticky;top:102px;align-self:start}.filter-heading{display:flex;align-items:center;justify-content:space-between;padding-bottom:13px;border-bottom:1px solid var(--line)}.filter-heading h3{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.filter-heading i{font-size:.7rem;color:#9b9295}.filter-options{display:grid;gap:2px;padding:13px 0}.filter-btn{text-align:left;padding:8px 0;font-size:.72rem;color:#716a6d;transition:color .2s ease}.filter-btn:hover,.filter-btn.active{color:var(--ink);font-weight:600}.filter-note{margin-top:20px;padding-top:16px;border-top:1px solid var(--line);display:grid;gap:8px;color:var(--muted);font-size:.65rem}.filter-note i{color:var(--rose-deep)}.filter-note a{font-weight:600;color:var(--ink)}
.catalog-content{min-width:0}.catalog-toolbar{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;padding-bottom:20px;margin-bottom:26px;border-bottom:1px solid var(--line)}.catalog-toolbar p{font-size:.72rem;font-weight:600}.catalog-toolbar-note{display:block;color:var(--muted);font-size:.62rem;margin-top:4px}.catalog-toolbar-actions{display:flex;align-items:center;gap:17px}.catalog-toolbar-actions>a{font-size:.64rem;color:#665f62}.sort-control{display:flex;align-items:center;gap:8px;font-size:.62rem;color:#716a6d}.sort-control select{height:36px;border:0;border-bottom:1px solid #c9c2c0;background:transparent;outline:0;font-size:.67rem;padding:0 24px 0 4px}.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:42px 18px}.catalog-empty{grid-column:1/-1;padding:80px 20px;text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.catalog-empty i{font-size:1.2rem;color:#9a9295}.catalog-empty h3{font-family:var(--display);font-size:2rem;font-weight:500;margin:10px 0}.catalog-empty p{color:var(--muted);font-size:.75rem}

/* product detail */
.product-page{background:#fff;padding:72px 0 104px}.product-page-layout{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);gap:70px;align-items:start}.product-gallery{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px}.product-thumbs{display:flex;flex-direction:column;gap:8px}.thumb{width:72px;aspect-ratio:4/5;overflow:hidden;border:1px solid transparent;background:#efedeb;opacity:.72;transition:opacity .2s,border-color .2s}.thumb.active,.thumb:hover{opacity:1;border-color:#8b8386}.thumb img{width:100%;height:100%;object-fit:cover}.product-main-image{aspect-ratio:4/5;overflow:hidden;background:#efedeb}.product-main-image img{width:100%;height:100%;object-fit:cover;object-position:center 25%}
.product-details-box{position:sticky;top:106px;padding-top:8px}.product-title-top{display:flex;align-items:center;justify-content:space-between;gap:16px}.product-page-category{font-size:.62rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--rose-deep)}.product-page-favorite{display:inline-flex;align-items:center;gap:7px;font-size:.64rem;color:#716a6d}.product-page-favorite i{color:var(--rose-deep)}
.product-details-box h1{font-family:var(--display);font-size:clamp(3rem,4.4vw,4.8rem);font-weight:500;letter-spacing:-.035em;line-height:.92;margin:13px 0 20px}.product-price-line{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.current-price{font-size:1.16rem;font-weight:600}.product-old-price{font-size:.75rem;text-decoration:line-through;color:#999}.pix-highlight{font-size:.64rem;color:var(--green);background:#edf4ef;padding:5px 8px}.product-soldout-status{font-size:.6rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;background:#2c282a;color:#fff;padding:6px 8px}.product-soldout-status[hidden]{display:none!important}.product-payment-copy{font-size:.64rem;color:#8b8486;padding:8px 0 18px;border-bottom:1px solid var(--line)}.product-description{padding:20px 0;color:#625c5e;font-size:.82rem;line-height:1.8}
.product-service-strip{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.product-service-strip>div{display:flex;gap:10px;align-items:center;padding:13px 0}.product-service-strip>div+div{border-left:1px solid var(--line);padding-left:16px}.product-service-strip i{font-size:.78rem;color:var(--rose-deep)}.product-service-strip span{display:grid}.product-service-strip b{font-size:.65rem;font-weight:600}.product-service-strip small{font-size:.58rem;color:var(--muted)}
.mobile-size-product{display:none}.product-option-group{padding-top:22px}.option-heading{display:flex;align-items:baseline;justify-content:space-between;gap:14px}.product-option-group h3{font-size:.7rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.option-heading span{font-size:.62rem;color:var(--muted)}
.product-colors{display:flex;gap:11px;flex-wrap:wrap;margin-top:12px;padding-bottom:5px}.color-swatch{position:relative;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;border:1px solid #d3ccca;transition:.2s ease}.color-swatch>span{--swatch:#c7bdc1;width:22px;height:22px;border-radius:50%;background:var(--swatch);border:1px solid rgba(0,0,0,.07)}.color-swatch:hover,.color-swatch.active{border-color:var(--ink)}.color-swatch.active:after{content:"";position:absolute;inset:-4px;border:1px solid var(--ink);border-radius:50%}.color-swatch.unavailable{opacity:.35}.color-swatch>em{position:absolute;top:39px;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:.45rem;font-style:normal;color:#985063}
.sizes{display:flex;gap:8px;flex-wrap:wrap;margin-top:11px}.size-btn{min-width:48px;min-height:40px;padding:6px 10px;border:1px solid #d8d1cf;background:#fff;font-size:.69rem;display:grid;place-items:center;line-height:1.05;transition:.2s ease}.size-btn:hover,.size-btn.active{background:var(--ink);border-color:var(--ink);color:#fff}.size-btn>small{font-size:.48rem;font-weight:400;opacity:.72}.size-btn>em{font-size:.43rem;font-style:normal;text-transform:uppercase;color:#9e5365}.size-btn.unavailable{background:#f4f2f1!important;border-color:#e4dedc!important;color:#a49b9e!important;text-decoration:line-through;cursor:not-allowed}.size-btn.unavailable>em{color:#9e5365;text-decoration:none}
.quantity-box{margin-top:10px;width:124px;height:40px;border:1px solid #d8d1cf;display:grid;grid-template-columns:38px 1fr 38px;align-items:center;text-align:center;font-size:.72rem}.quantity-box button{height:100%}
.product-page-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:26px}.product-page-actions .btn{min-height:50px;padding:0 12px;font-size:.67rem}.product-buy-note{display:flex;gap:9px;align-items:flex-start;margin-top:12px;padding:12px 0;border-bottom:1px solid var(--line);color:var(--muted);font-size:.62rem}.product-buy-note i{color:var(--rose-deep);margin-top:2px}.product-buy-note strong{color:var(--ink)}
.product-accordion{margin-top:6px}.product-accordion details{border-bottom:1px solid var(--line)}.product-accordion summary{list-style:none;display:flex;align-items:center;justify-content:space-between;padding:15px 0;font-size:.68rem;font-weight:600;cursor:pointer}.product-accordion summary::-webkit-details-marker{display:none}.product-accordion summary i{font-size:.55rem;transition:transform .2s}.product-accordion details[open] summary i{transform:rotate(45deg)}.product-accordion details>p{font-size:.66rem;color:var(--muted);line-height:1.75;padding-bottom:10px}.product-accordion details>a{display:inline-flex;gap:7px;align-items:center;font-size:.62rem;font-weight:600;padding-bottom:14px}.product-extra-info{display:grid;grid-template-columns:1fr 1fr;gap:8px 18px;padding:0 0 15px}.product-extra-info p{font-size:.63rem;color:var(--muted)}.product-extra-info strong{color:var(--ink);font-weight:600}
.related-products .section-header{text-align:left;margin-left:0;margin-right:0}.related-products .section-header p{margin-left:0}

/* cart + mini cart */
.mini-cart{position:fixed;z-index:1600;right:0;top:0;width:min(420px,100%);height:100svh;background:#fff;display:grid;grid-template-rows:auto 1fr auto;transform:translateX(100%);transition:transform .35s var(--ease);box-shadow:-16px 0 50px rgba(20,15,17,.1)}.mini-cart.active{transform:none}.cart-overlay{position:fixed;z-index:1500;inset:0;background:rgba(19,16,17,.42);opacity:0;pointer-events:none;transition:opacity .25s}.cart-overlay.active{opacity:1;pointer-events:auto}.mini-cart-header{display:flex;align-items:center;justify-content:space-between;padding:24px;border-bottom:1px solid var(--line)}.mini-cart-header span{font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.mini-cart-header h2{font-family:var(--display);font-size:2rem;font-weight:500;line-height:1}.mini-cart-header button{width:36px;height:36px}.mini-cart-items{overflow:auto;padding:8px 24px}.mini-cart-item{display:grid;grid-template-columns:78px 1fr;gap:14px;padding:16px 0;border-bottom:1px solid var(--line)}.mini-cart-item>img{width:78px;height:104px;object-fit:cover}.mini-cart-info h4{font-size:.76rem;font-weight:500;line-height:1.35;margin-bottom:4px}.mini-cart-info small{display:block;font-size:.58rem;color:var(--muted)}.mini-cart-info p{font-size:.72rem;font-weight:600;margin:7px 0}.mini-cart-row{display:flex;align-items:center;justify-content:space-between}.mini-cart-qty{height:30px;border:1px solid var(--line);display:grid;grid-template-columns:28px 28px 28px;align-items:center;text-align:center;font-size:.64rem}.mini-cart-qty button{height:100%}.remove-mini{font-size:.7rem;color:#837b7e}.mini-cart-footer{padding:20px 24px;border-top:1px solid var(--line);background:#fff}.mini-cart-total{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;font-size:.72rem}.mini-cart-total strong{font-size:1rem}.mini-cart-footer .btn{width:100%}.mini-cart-empty{display:grid;place-items:center;text-align:center;gap:10px;padding:80px 10px;color:var(--muted)}.mini-cart-empty i{font-size:1.4rem}.mini-cart-empty p{font-size:.75rem}
.cart-page{background:#fff}.cart-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:54px;align-items:start}.cart-items{border-top:1px solid var(--line)}.cart-item{display:grid;grid-template-columns:110px 1fr auto;gap:18px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line)}.cart-item>img{width:110px;height:140px;object-fit:cover}.cart-info h3{font-size:.86rem;font-weight:500;margin-bottom:4px}.cart-info p,.cart-info small{display:block;font-size:.64rem;color:var(--muted)}.cart-subtotal{font-size:.76rem;font-weight:600}.cart-qty{margin-top:10px;width:100px;height:34px;border:1px solid var(--line);display:grid;grid-template-columns:32px 1fr 32px;align-items:center;text-align:center;font-size:.64rem}.remove-btn{margin-top:8px;font-size:.6rem;color:#8c8386}.order-summary{position:sticky;top:106px;padding:26px;background:#f5f2ef}.order-summary h2{font-size:2.1rem;font-weight:500;margin-bottom:18px}.summary-line{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px solid #ddd6d3;font-size:.72rem}.summary-line strong{font-size:.86rem}.summary-note,.secure-note{font-size:.62rem;color:var(--muted);margin-top:12px;line-height:1.65}.continue-shopping{display:inline-flex;align-items:center;gap:8px;font-size:.64rem;margin-top:15px}.empty-cart-page{text-align:center;padding:80px 20px}.empty-cart-page h2{font-family:var(--display);font-size:2.7rem;font-weight:500}.empty-cart-page p{color:var(--muted);margin:10px 0 20px}
.cart-item-unavailable{background:#fff8f8}.cart-stock-warning{display:flex!important;align-items:center;gap:5px;color:#a24457!important;font-weight:600!important}.cart-color-line{display:flex!important;align-items:center;gap:5px}.cart-color-line .color-dot{width:10px;height:10px}

/* checkout */
.checkout-page{background:#fff}.checkout-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:54px;align-items:start}.checkout-form{display:grid;gap:16px}.checkout-card{position:relative;padding:26px;border:1px solid var(--line);background:#fff}.checkout-step{position:absolute;right:22px;top:20px;font-family:var(--display);font-size:2rem;color:#d0c7ca}.checkout-card-title h2{font-family:var(--display);font-size:2.15rem;font-weight:500;line-height:1}.checkout-card-title p{font-size:.66rem;color:var(--muted);margin-top:5px}.checkout-fields{display:grid;gap:14px;margin-top:20px}.checkout-fields.two{grid-template-columns:1fr 1fr}.checkout-fields.address{grid-template-columns:1fr 120px}.checkout-fields label,.checkout-notes{display:grid;gap:6px}.checkout-fields label>span,.checkout-notes>span{font-size:.61rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.checkout-fields input,.checkout-notes textarea,.contact-form input,.contact-form textarea{width:100%;border:0;border-bottom:1px solid #cfc8c6;background:transparent;padding:10px 0;outline:0;font-size:.76rem;resize:vertical}.checkout-fields input:focus,.checkout-notes textarea:focus,.contact-form input:focus,.contact-form textarea:focus{border-color:var(--ink)}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}.choice-grid.three{grid-template-columns:repeat(3,1fr)}.choice-card input{position:absolute;opacity:0;pointer-events:none}.choice-card>span{height:100%;min-height:86px;border:1px solid var(--line);display:grid;justify-items:start;align-content:center;gap:3px;padding:14px;transition:.2s}.choice-card input:checked+span{border-color:var(--ink);background:#faf8f6}.choice-card i{font-size:.8rem;color:var(--rose-deep)}.choice-card b{font-size:.68rem}.choice-card small{font-size:.58rem;color:var(--muted)}.delivery-fields{margin-top:18px}.checkout-notes{margin-top:18px}.checkout-consent{display:flex;gap:9px;align-items:flex-start;margin-top:16px;font-size:.62rem;color:var(--muted)}.checkout-consent input{margin-top:3px}.checkout-consent a{text-decoration:underline}.checkout-submit{min-height:52px}.checkout-summary{position:sticky;top:106px;padding:27px;background:#f5f2ef}.checkout-summary h2{font-size:2.2rem;font-weight:500}.checkout-items{margin-top:17px}.checkout-item{display:grid;grid-template-columns:58px 1fr auto;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid #ddd6d3}.checkout-item img{width:58px;height:74px;object-fit:cover}.checkout-item h4{font-size:.66rem;font-weight:500}.checkout-item small{display:block;font-size:.55rem;color:var(--muted)}.checkout-item strong{font-size:.65rem}.checkout-summary-lines{margin-top:12px}.checkout-summary-lines>div{display:flex;justify-content:space-between;padding:7px 0;font-size:.65rem}.checkout-summary-total{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-top:1px solid #cfc7c4;border-bottom:1px solid #cfc7c4;margin-top:8px}.checkout-summary-total span{font-size:.7rem}.checkout-summary-total strong{font-size:1rem}.checkout-summary>p{font-size:.6rem;color:var(--muted);line-height:1.6;margin-top:12px}.checkout-summary .continue-shopping{margin-top:13px}

/* informational pages */
.info-page{background:#fff}.info-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:70px;align-items:start}.info-main{min-width:0}.info-main h2{font-size:2.6rem;font-weight:500;margin:38px 0 12px}.info-main h2:first-child{margin-top:0}.info-main h3{font-size:.82rem;margin:24px 0 8px}.info-main p,.info-main li{color:#655f61;font-size:.78rem;line-height:1.85}.info-main ul,.info-main ol{padding-left:18px;margin:10px 0}.info-aside{position:sticky;top:106px;padding:22px;background:#f5f2ef}.info-aside-icon{width:34px;height:34px;display:grid;place-items:center;color:var(--rose-deep);margin-bottom:12px}.info-aside h3{font-family:var(--display);font-size:1.8rem;font-weight:500;line-height:1}.info-aside p{font-size:.66rem;color:var(--muted);margin:8px 0 14px}.info-highlight-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:24px 0}.info-highlight-grid>div{padding:18px;border:1px solid var(--line)}
.contact-form{display:grid;gap:15px;margin-top:28px}.contact-form label{display:grid;gap:5px}.contact-form label>span{font-size:.62rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.contact-form .btn{justify-self:start}.not-found{text-align:center;padding:120px 20px}.not-found h1{font-family:var(--display);font-size:6rem;font-weight:500}.not-found h2{font-family:var(--display);font-size:2.5rem;font-weight:500}.not-found p{color:var(--muted);margin:12px 0 22px}

/* footer */
.footer{background:#f0ede9;border-top:1px solid #e1dbd8}.footer-content{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:64px;padding:70px 0 56px}.footer-brand{max-width:340px}.footer-wordmark{font-size:1.85rem}.footer-brand p{margin-top:22px;color:#6f686b;font-size:.7rem;line-height:1.75}.social-links{display:flex;gap:8px;margin-top:18px}.footer .social-links{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}.footer .social-links a{width:auto;height:38px;padding:0 12px;border:1px solid #cbc2c0;border-radius:999px;display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.45);font-size:.65rem;transition:background .2s ease,color .2s ease,border-color .2s ease}.footer .social-links a i{font-size:.9rem}.footer .social-links a span{font-size:.58rem;font-weight:600;letter-spacing:.04em}.footer .social-links .social-instagram{color:#87435a}.footer .social-links .social-whatsapp{color:#227548}.footer .social-links .social-instagram:hover{background:#87435a;color:#fff;border-color:#87435a}.footer .social-links .social-whatsapp:hover{background:#227548;color:#fff;border-color:#227548}.footer-column{display:flex;flex-direction:column;gap:8px}.footer-column h4{font-size:.62rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;margin-bottom:7px}.footer-column>a{font-size:.68rem;color:#615b5e}.footer-column>a:hover{color:var(--rose-deep)}.footer-column>p{font-size:.62rem;color:var(--muted);line-height:1.6}.footer-payment{display:grid;gap:4px;margin-top:10px}.footer-payment strong{font-size:.58rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink)}.footer-bottom{border-top:1px solid #dbd4d1}.footer-bottom .container{min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#655f62;font-size:.58rem}

/* whatsapp + toast */
.floating-whatsapp{position:fixed;z-index:1200;right:18px;bottom:18px;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:#fff;font-size:1.22rem;box-shadow:0 5px 16px rgba(28,105,62,.16);transition:transform .2s ease}.floating-whatsapp:hover{transform:translateY(-2px)}.floating-whatsapp span{display:none}.toast{position:fixed;z-index:2000;left:50%;bottom:22px;transform:translate(-50%,15px);opacity:0;pointer-events:none;background:#171516;color:#fff;padding:10px 14px;font-size:.68rem;box-shadow:var(--shadow);transition:.25s}.toast.show{opacity:1;transform:translate(-50%,0)}

/* responsive */
@media(max-width:1180px){
  .header-content{gap:24px}.nav{gap:14px}.nav>a{font-size:.64rem}.products-grid{grid-template-columns:repeat(3,1fr)}.catalog-grid{grid-template-columns:repeat(3,1fr)}
  .footer-content{gap:38px}.product-page-layout{gap:44px}.collection-grid,.about-grid{gap:50px}
}
@media(max-width:1020px){
  .container{width:min(calc(100% - 32px),var(--container))}.section{padding:82px 0}
  .header-content{min-height:66px;grid-template-columns:76px minmax(0,1fr) 76px;grid-template-areas:"menu brand actions";gap:0}.menu-toggle{grid-area:menu;display:grid;justify-self:start}.brand-wordmark{justify-self:center;font-size:1.55rem}.header-actions{width:76px;justify-self:end}.favorites-link{display:none}.icon-btn,.menu-toggle{width:36px;height:36px}
  .nav{position:absolute;top:66px;left:0;right:0;background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:none;flex-direction:column;align-items:stretch;gap:0;padding:10px 16px 18px;box-shadow:0 12px 26px rgba(20,15,17,.05)}.nav.active{display:flex}.nav>a{padding:11px 2px;font-size:.72rem;border-bottom:1px solid #f0ecea}.nav>a:after{display:none}.nav-search{display:grid;grid-template-columns:30px 1fr;align-items:center;margin-top:12px;border-bottom:1px solid #bfb8b6;padding:4px 0}.nav-search input{border:0;outline:0;background:transparent;height:36px;font-size:.8rem}
  .hero-slider{height:650px;min-height:650px}.slide{grid-template-columns:.82fr 1.18fr}.hero-copy{padding:54px 32px}.hero-copy h1,.hero-copy h2{font-size:clamp(3.2rem,6vw,4.7rem)}
  .benefits-grid{grid-template-columns:repeat(2,1fr)}.benefit-card:nth-child(2){border-right:0}.benefit-card:nth-child(-n+2){border-bottom:1px solid var(--line)}.benefit-card:first-child,.benefit-card{padding:14px 18px}.benefit-card:nth-child(odd){padding-left:0}
  .category-mosaic{grid-template-columns:1.2fr .8fr;grid-template-rows:330px 330px}.category-tile{height:auto}.category-tile-large{grid-row:1/3}.category-tile:nth-child(2){grid-column:2;grid-row:1}.category-tile:nth-child(3){grid-column:2;grid-row:2}
  .products-grid{grid-template-columns:repeat(2,1fr)}.catalog-grid{grid-template-columns:repeat(2,1fr)}
  .catalog-layout{grid-template-columns:1fr;gap:30px}.filters{position:static}.filter-heading{display:none}.filter-options{display:flex;gap:7px;overflow-x:auto;padding:0 0 8px;scrollbar-width:none}.filter-options::-webkit-scrollbar{display:none}.filter-btn{flex:0 0 auto;padding:8px 12px;border:1px solid var(--line);font-size:.62rem}.filter-btn.active{background:var(--ink);color:#fff;border-color:var(--ink)}.filter-note{display:none}
  .product-page-layout{grid-template-columns:1fr}.product-details-box{position:static;max-width:720px}.product-gallery{max-width:760px}.product-main-image{aspect-ratio:4/5}.checkout-layout,.cart-layout,.info-layout{grid-template-columns:1fr}.checkout-summary,.order-summary,.info-aside{position:static}.checkout-summary,.order-summary{max-width:620px;width:100%;margin-inline:auto}
  .footer-content{grid-template-columns:1.4fr 1fr 1fr;gap:34px}.footer-column:last-child{grid-column:2/4}.newsletter-box{gap:40px}
}
@media(max-width:760px){
  .catalog-hero-links a,.filter-btn,.continue-shopping,.text-link{min-height:44px;display:inline-flex;align-items:center}
  .footer-column>a{min-height:40px;display:flex;align-items:center}

  body{font-size:14px}.container{width:min(calc(100% - 28px),var(--container))}.section{padding:68px 0}
  .topbar{height:28px}.topbar-content{gap:18px;font-size:.55rem;white-space:nowrap}.topbar-content span+span:before{margin-right:18px}
  .brand-wordmark{font-size:1.38rem}.brand-wordmark small{font-size:.34rem}.header-actions{gap:0}
  .hero-slider{height:calc(100svh - 94px);min-height:590px;max-height:760px}.slide{display:block}.hero-copy{position:absolute;z-index:3;left:0;right:0;bottom:0;padding:90px 24px 34px;color:#fff;background:linear-gradient(0deg,rgba(18,15,16,.78) 0%,rgba(18,15,16,.45) 58%,rgba(18,15,16,0) 100%)}.hero-copy .hero-kicker{color:#f1dbe2;margin-bottom:8px}.hero-copy h1,.hero-copy h2{font-size:clamp(3.2rem,14vw,5.1rem);line-height:.88;margin-bottom:14px;max-width:550px}.hero-copy p{color:rgba(255,255,255,.86);font-size:.78rem;line-height:1.6;margin-bottom:20px;max-width:380px}.hero-link{color:#fff;border-color:#fff}.hero-visual{position:absolute;inset:0}.hero-visual:after{background:none}.hero-visual img{object-position:center 24%}.hero-arrow{top:45%;width:34px;height:34px;background:rgba(18,15,16,.1);border-color:rgba(255,255,255,.34)}.hero-arrow.prev{left:9px}.hero-arrow.next{right:9px}.hero-index{left:24px;bottom:18px;color:rgba(255,255,255,.7);display:none}
  .benefits{overflow-x:auto;scrollbar-width:none}.benefits::-webkit-scrollbar{display:none}.benefits-grid{width:max-content;display:flex;min-height:68px}.benefit-card,.benefit-card:first-child,.benefit-card:nth-child(odd){width:220px;padding:12px 16px;border-bottom:0;border-right:1px solid var(--line)}.benefit-card h3{font-size:.66rem}.benefit-card p{font-size:.58rem}
  .home-section-heading{align-items:flex-end;margin-bottom:28px}.home-section-heading h2{font-size:clamp(2.5rem,10vw,3.4rem)}.home-section-heading .section-subtitle{margin-bottom:7px}.home-section-heading>p,.heading-side p{display:none}.heading-side{display:block}
  .category-mosaic{display:grid;grid-template-columns:1fr;grid-template-rows:none;gap:10px}.category-tile,.category-tile-large,.category-tile:nth-child(2),.category-tile:nth-child(3){grid-column:auto;grid-row:auto;height:72vw;min-height:300px;max-height:500px}.category-overlay{left:18px;right:18px;bottom:16px}.category-overlay h3{font-size:2rem}
  .products-grid,.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 10px}.product-info{padding-top:10px}.product-info h3{font-size:.78rem}.product-category{display:none}.card-stock{font-size:.5rem}.product-image-cta{display:none}.product-btn{font-size:.56rem}.pix-price{font-size:.56rem}.product-size-summary{font-size:.54rem}.color-dot{width:11px;height:11px}
  .commerce-band{padding:42px 0}.commerce-band-inner{display:grid;gap:18px;align-items:start}.commerce-band h2{font-size:2.7rem}.commerce-band p{font-size:.72rem}.collection-grid{grid-template-columns:1fr;gap:34px}.collection-image{height:120vw;max-height:620px}.collection-copy{max-width:none}.collection-copy h2{font-size:3.35rem}.about-grid{grid-template-columns:1fr;gap:38px}.about-copy{order:2}.about-images{order:1;grid-template-columns:1fr .55fr}.about-main{height:110vw;max-height:600px}.about-small{height:70vw;max-height:400px}.about-copy h2{font-size:3.4rem}.instagram-grid{grid-template-columns:repeat(2,1fr);gap:8px}.instagram-grid a span{opacity:1}.newsletter-box{grid-template-columns:1fr;gap:28px}.newsletter-box h2{font-size:3.4rem}.newsletter-fields{grid-template-columns:1fr}
  .page-hero{padding:55px 0 38px}.page-hero h1{font-size:clamp(3rem,13vw,4.5rem)}.page-hero p{font-size:.76rem}.catalog-hero-links{gap:6px;margin-top:18px}.catalog-hero-links a{font-size:.55rem;padding:6px 8px}
  .catalog-toolbar{align-items:flex-start;display:grid;gap:10px}.catalog-toolbar-actions{width:100%;justify-content:space-between}.catalog-toolbar-note{display:none}.sort-control span{display:none}.sort-control select{max-width:140px}
  .product-page{padding:26px 0 68px}.product-gallery{grid-template-columns:1fr;gap:10px}.product-main-image{order:0}.product-thumbs{order:1;flex-direction:row;overflow-x:auto;scrollbar-width:none}.product-thumbs::-webkit-scrollbar{display:none}.thumb{flex:0 0 66px;width:66px}.product-details-box h1{font-size:3.15rem}.product-service-strip{grid-template-columns:1fr 1fr}.product-service-strip>div{padding:11px 0}.product-service-strip>div+div{padding-left:11px}.mobile-size-product{display:grid;grid-template-columns:68px 1fr;gap:11px;align-items:center;margin-top:22px;padding:9px;background:#f6f3f1}.mobile-size-product>img{width:68px;height:86px;object-fit:cover}.mobile-size-product-info{min-width:0;display:grid;gap:1px}.mobile-size-product-info small{font-size:.52rem;color:var(--muted)}.mobile-size-product-info strong{font-family:var(--display);font-size:1.1rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-size-product-info span{font-size:.65rem;font-weight:600}.mobile-size-product-info em{font-size:.54rem;font-style:normal;color:var(--rose-deep)}.product-page-actions{grid-template-columns:1fr}.product-extra-info{grid-template-columns:1fr}.related-products .section-header h2{font-size:2.9rem}
  .cart-item{grid-template-columns:82px 1fr}.cart-item>img{width:82px;height:106px}.cart-subtotal{grid-column:2;text-align:left}.order-summary{padding:22px}.checkout-card{padding:20px}.checkout-step{right:16px;top:14px}.checkout-fields.two,.checkout-fields.address{grid-template-columns:1fr}.choice-grid,.choice-grid.three{grid-template-columns:1fr}.choice-card>span{min-height:68px}.checkout-summary{padding:22px}
  .info-highlight-grid{grid-template-columns:1fr}.info-main h2{font-size:2.3rem}.info-aside{padding:19px}
  .footer-content{grid-template-columns:1fr 1fr;gap:36px 26px;padding:56px 0 44px}.footer-brand{grid-column:1/-1;max-width:420px}.footer-column:last-child{grid-column:auto}.footer-bottom .container{min-height:64px;align-items:flex-start;justify-content:center;flex-direction:column;gap:3px;padding:12px 0}.floating-whatsapp{width:42px;height:42px;right:12px;bottom:12px;font-size:1.08rem}.toast{max-width:calc(100% - 30px);text-align:center}
}
@media(max-width:430px){
  .container{width:min(calc(100% - 22px),var(--container))}.topbar-content span:nth-child(2){display:none}.brand-wordmark{font-size:1.25rem}.header-content{grid-template-columns:68px 1fr 68px}.header-actions{width:68px}.icon-btn,.menu-toggle{width:34px;height:34px}.header-actions .search-toggle{display:grid}.header-actions .cart-btn{display:grid}
  .hero-copy{padding:82px 18px 28px}.hero-copy h1,.hero-copy h2{font-size:3.15rem}.hero-copy p{font-size:.72rem}.hero-arrow{top:42%}
  .products-grid,.catalog-grid{grid-template-columns:1fr 1fr;gap:28px 8px}.product-image{aspect-ratio:4/5}.product-info h3{font-size:.73rem}.price{font-size:.8rem}.product-btn span{font-size:.53rem}
  .category-tile,.category-tile-large,.category-tile:nth-child(2),.category-tile:nth-child(3){height:108vw;min-height:360px}.category-overlay h3{font-size:1.85rem}
  .about-images{grid-template-columns:1fr}.about-small{display:none}.newsletter{padding:56px 0}.newsletter-box h2{font-size:3rem}
  .product-details-box h1{font-size:2.75rem}.product-price-line{align-items:flex-start}.product-service-strip{grid-template-columns:1fr}.product-service-strip>div+div{border-left:0;border-top:1px solid var(--line);padding-left:0}.product-page-favorite span{display:none}.product-page-actions .btn{width:100%}
  .footer-content{grid-template-columns:1fr;gap:28px}.footer-brand{grid-column:auto}.footer-column:last-child{grid-column:auto}
}
.checkout-empty{padding:42px 10px;text-align:center;color:var(--muted);font-size:.72rem}.checkout-empty i{display:block;font-size:1.25rem;margin-bottom:8px;color:#9a9194}
/* final component corrections */
.info-aside .btn{margin-top:8px}.summary-note,.secure-note{display:flex;align-items:flex-start;gap:8px}.summary-note p{margin:0}.secure-note{align-items:center}
.not-found>.container>span{display:inline-block;margin-bottom:10px;font-size:.65rem;font-weight:600;letter-spacing:.18em;color:var(--rose-deep)}.not-found h1{font-size:clamp(3.4rem,7vw,6rem);line-height:.92;max-width:780px;margin-inline:auto}.not-found .btn{margin:16px 4px 0}
.cart-item{grid-template-columns:110px minmax(0,1fr) 104px 92px;grid-template-rows:auto auto}.cart-item>img{grid-row:1/3}.cart-info{grid-row:1/3;min-width:0}.cart-qty{grid-column:3;grid-row:1;margin-top:0;align-self:center}.cart-subtotal{grid-column:4;grid-row:1;text-align:right;align-self:center}.remove-btn{grid-column:4;grid-row:2;justify-self:end;align-self:end;margin:0}.cart-info>span{font-size:.67rem;font-weight:600;margin-top:6px;display:block}
#finishOrder.disabled,#finishOrder[aria-disabled="true"]{opacity:.45;pointer-events:none}
@media(max-width:760px){.cart-item{grid-template-columns:82px minmax(0,1fr) auto;grid-template-rows:auto auto auto}.cart-item>img{grid-row:1/4}.cart-info{grid-column:2/4;grid-row:1}.cart-qty{grid-column:2;grid-row:2;justify-self:start}.cart-subtotal{grid-column:3;grid-row:2;text-align:right}.remove-btn{grid-column:3;grid-row:3}}


/* =========================================================
   UseBellaFlor 2.2 — consistência global, mobile e publicação
   ========================================================= */
html,body{width:100%;max-width:100%;overflow-x:hidden}
header,main,footer,section{max-width:100%}

/* Barra superior global: rosa e ambos os avisos visíveis */
.topbar{background:#ad5b75;color:#fff;border:0}
.topbar-content{color:#fff;justify-content:center}
.topbar-content span+span:before{background:rgba(255,255,255,.5)}

/* Rodapé único em todo o storefront */
.footer .home-social-links{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}
.footer .home-social-links a{
  width:auto;height:38px;padding:0 12px;border:1px solid #cbc2c0;border-radius:999px;
  display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.46);
  font-size:.65rem;transition:border-color .2s ease,color .2s ease,background .2s ease
}
.footer .home-social-links a i{font-size:.92rem}
.footer .home-social-links a:hover{border-color:var(--rose-deep);color:var(--rose-deep);background:#fff}
.footer .footer-column>a{overflow-wrap:anywhere}

/* Cabeçalho mobile: busca e carrinho nunca desaparecem */
@media(max-width:1020px){
  .header-actions{display:flex!important;align-items:center!important;visibility:visible!important;opacity:1!important}
  .header-actions .search-toggle,.header-actions .cart-btn{display:grid!important;visibility:visible!important;opacity:1!important}
  .cart-btn{position:relative!important}
}

/* Catálogo: nenhum componente pode alargar a página */
.catalog-page main,.catalog-page .page-hero,.catalog-page .catalog-section,
.catalog-page .catalog-layout,.catalog-page .catalog-content,.catalog-page .catalog-toolbar,
.catalog-page .catalog-toolbar-actions,.catalog-page .filters,.catalog-page .filter-options,
.catalog-page .catalog-grid{min-width:0;max-width:100%}
.catalog-page .catalog-grid>.product-card{min-width:0;max-width:100%;overflow:hidden}

@media(max-width:760px){
  .topbar{height:30px}
  .topbar .container{width:min(calc(100% - 16px),var(--container))}
  .topbar-content{gap:10px;font-size:.52rem;letter-spacing:.055em;white-space:nowrap;justify-content:space-between}
  .topbar-content span{display:inline-flex!important;align-items:center;min-width:0}
  .topbar-content span+span:before{margin-right:10px;flex:0 0 auto}

  .header-content{grid-template-columns:78px minmax(0,1fr) 78px}
  .header-actions{width:78px!important;gap:2px!important}
  .header-actions .icon-btn{flex:0 0 36px}

  .catalog-page .page-hero{overflow:hidden}
  .catalog-page .catalog-hero .container{min-width:0;max-width:100%}
  .catalog-page .catalog-hero-links{
    width:100%;max-width:100%;display:flex;flex-wrap:nowrap;gap:7px;
    overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;
    scrollbar-width:none;padding:0 0 7px;margin-top:18px
  }
  .catalog-page .catalog-hero-links::-webkit-scrollbar{display:none}
  .catalog-page .catalog-hero-links a{flex:0 0 auto;white-space:nowrap}

  .catalog-page .catalog-section{overflow:hidden}
  .catalog-page .catalog-section>.container{width:min(calc(100% - 24px),var(--container));max-width:100%}
  .catalog-page .catalog-layout{width:100%;grid-template-columns:minmax(0,1fr);gap:24px}
  .catalog-page .filters{width:100%;overflow:hidden}
  .catalog-page .filter-options{
    width:100%;max-width:100%;display:flex;flex-wrap:nowrap;gap:7px;
    overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;
    scrollbar-width:none;padding:0 0 7px
  }
  .catalog-page .filter-options::-webkit-scrollbar{display:none}
  .catalog-page .filter-btn{flex:0 0 auto;white-space:nowrap}

  .catalog-page .catalog-toolbar{width:100%;display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-items:start}
  .catalog-page .catalog-toolbar-actions{width:100%;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px}
  .catalog-page .catalog-toolbar-actions>a{flex:0 0 auto}
  .catalog-page .sort-control{min-width:0;max-width:100%}
  .catalog-page .sort-control select{max-width:132px;min-width:0}
  .catalog-page .catalog-grid{width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 9px}
  .catalog-page .product-image{width:100%;max-width:100%;aspect-ratio:4/5}
  .catalog-page .product-info{min-width:0}
  .catalog-page .product-info h3{overflow-wrap:anywhere}
}

@media(max-width:430px){
  .container{width:min(calc(100% - 22px),var(--container))}
  .topbar .container{width:min(calc(100% - 12px),var(--container))}
  .topbar-content{font-size:.49rem;gap:6px;letter-spacing:.045em}
  .topbar-content span:nth-child(2){display:inline-flex!important}
  .topbar-content span+span:before{margin-right:6px;width:2px;height:2px}
  .header-content{grid-template-columns:76px minmax(0,1fr) 76px}
  .header-actions{width:76px!important}
  .header-actions .icon-btn{width:36px;height:36px;flex-basis:36px}
  .catalog-page .catalog-section>.container{width:min(calc(100% - 20px),var(--container))}
  .catalog-page .catalog-grid{gap:26px 8px}
  .catalog-page .product-info h3{font-size:.72rem;line-height:1.3}
  .catalog-page .card-price-row{gap:5px;flex-wrap:wrap}
  .catalog-page .price{font-size:.78rem}
  .catalog-page .old-price{font-size:.6rem}
  .footer .home-social-links a{height:36px;padding:0 11px}
}

@media(max-width:360px){
  .topbar-content{font-size:.44rem;letter-spacing:.025em}
  .topbar-content span+span:before{display:none}
  .header-content{grid-template-columns:72px minmax(0,1fr) 72px}
  .header-actions{width:72px!important;gap:0!important}
  .header-actions .icon-btn{width:34px;height:34px;flex-basis:34px}
  .brand-wordmark{font-size:1.16rem}
}

/* =========================================================
   UseBellaFlor 2.5 — otimização, validação e acabamento final
   ========================================================= */

/* Desempenho de rolagem: evita repintura constante do header */
.header{
  background:var(--bg);
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}
.search-sheet{visibility:hidden}
.search-sheet.active{visibility:visible}
.search-sheet-backdrop{
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}
.hero-arrow{
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}

/* Entrada das seções mais leve no desktop */
.reveal{
  opacity:0;
  transform:none;
  transition:opacity .38s ease;
}
.reveal.is-visible{opacity:1}

/* Barra superior: mensagens próximas, centralizadas e estáveis */
.topbar{overflow:hidden}
.topbar .container{display:flex;justify-content:center}
.topbar-content{
  width:auto;
  max-width:100%;
  justify-content:center!important;
  gap:14px!important;
  white-space:nowrap;
}
.topbar-content span{
  display:inline-flex!important;
  align-items:center;
  flex:0 1 auto;
  min-width:0;
}
.topbar-content span+span:before{
  margin-right:14px!important;
}

/* Controles com resposta mais direta em telas touch */
button,a,.choice-card{touch-action:manipulation}
.product-image-wrap,.category-tile,.instagram-grid a{contain:paint}

/* Validação amigável de formulários */
.field-invalid > span:first-child,
.field-invalid .field-label{
  color:#a63f59!important;
}
.checkout-fields input.field-control-invalid,
.checkout-notes textarea.field-control-invalid,
.contact-form input.field-control-invalid,
.contact-form textarea.field-control-invalid,
.newsletter input.field-control-invalid{
  border-color:#a63f59!important;
}
.field-error{
  display:block;
  margin-top:2px;
  color:#a63f59;
  font-size:.62rem;
  line-height:1.45;
  letter-spacing:0;
  text-transform:none;
}
.newsletter .field-error{color:#ffd2dc}
.field-control-valid:not([type="checkbox"]):not([type="radio"]){
  border-color:#7b9c88!important;
}
.form-validation-summary{
  margin-top:8px;
  padding:9px 11px;
  border-left:2px solid #a63f59;
  background:#fbf1f4;
  color:#7b3447;
  font-size:.68rem;
  line-height:1.5;
}
.newsletter .form-validation-summary{
  background:rgba(255,255,255,.08);
  color:#ffe1e8;
  border-color:#e9a8b9;
}
.checkout-consent.field-invalid,
.newsletter-consent.field-invalid{color:#a63f59!important}
.newsletter-consent.field-invalid{color:#ffd2dc!important}

@media(max-width:760px), (pointer:coarse){
  /* Em celulares, animações/blur durante scroll pesam mais que ajudam */
  .reveal,.reveal.is-visible{
    opacity:1!important;
    transform:none!important;
    transition:none!important;
  }
  .home-carousel-dots,
  .favorite-btn,
  .hero-arrow{
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
}

@media(max-width:620px){
  .topbar{height:30px}
  .topbar .container{width:100%;padding-inline:10px}
  .topbar-content{
    gap:9px!important;
    font-size:.49rem!important;
    letter-spacing:.035em!important;
  }
  .topbar-content span+span:before{
    margin-right:9px!important;
    width:2px!important;
    height:2px!important;
  }
}

@media(max-width:380px){
  .topbar-content{
    gap:6px!important;
    font-size:.455rem!important;
    letter-spacing:.02em!important;
  }
  .topbar-content span+span:before{display:none!important}
}
.newsletter-fields .field-wrap-inline{min-width:0;display:grid;gap:4px}
.newsletter-fields .field-wrap-inline input{width:100%}


/* =========================================================
   UseBellaFlor 2.6 — cabeçalho fixo e retorno seguro do WhatsApp
   ========================================================= */
:root{--ubf-topbar-height:31px}
.topbar{
  position:sticky;
  top:0;
  z-index:1400;
}
.header{
  position:sticky;
  top:var(--ubf-topbar-height);
  z-index:1390;
}
/* Evita que elementos fixos/menus criem uma camada branca ao restaurar a página. */
html,body{min-height:100%;background:var(--bg)}
@media(max-width:760px){
  :root{--ubf-topbar-height:28px}
}
@media(max-width:620px){
  :root{--ubf-topbar-height:30px}
}


/* v2.7 — Cupons no checkout */
.checkout-coupon{margin-top:18px;padding:16px 0 15px;border-top:1px solid #ddd6d3;border-bottom:1px solid #ddd6d3}
.checkout-coupon>label{display:block;font-size:.61rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}
.checkout-coupon-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}
.checkout-coupon-form input{min-width:0;height:42px;border:1px solid #d2cbc8;background:#fff;padding:0 11px;outline:0;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em}
.checkout-coupon-form input:focus{border-color:#8b7d82}
.checkout-coupon-form button{min-width:76px;padding:0 13px;background:#252125;color:#fff;font-size:.65rem;font-weight:600;transition:.2s}
.checkout-coupon-form button:hover{background:#8f3f5e}.checkout-coupon-form button:disabled{opacity:.6;cursor:wait}
.checkout-coupon>small{display:block;margin-top:7px;color:var(--muted);font-size:.55rem;line-height:1.5}
.coupon-status{min-height:16px;margin-top:7px!important;font-size:.6rem!important;line-height:1.4!important}.coupon-status.success{color:#35714f!important}.coupon-status.error{color:#a14956!important}.coupon-status.warning{color:#8d6a3f!important}
.coupon-applied{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:9px;padding:9px 10px;background:#fff;border:1px solid #d9d1ce;font-size:.62rem}.coupon-applied[hidden]{display:none!important}.coupon-applied span{display:flex;align-items:center;gap:6px}.coupon-applied i{color:var(--rose-deep)}.coupon-applied small{font-weight:600;color:#35714f}.coupon-applied button{background:transparent;color:#796f73;font-size:.58rem;text-decoration:underline}
@media(max-width:420px){.checkout-coupon-form{grid-template-columns:1fr}.checkout-coupon-form button{height:40px}}


/* =========================================================
   UseBellaFlor 2.8 — cabeçalho realmente fixo em todas as telas
   ========================================================= */
:root{
  --ubf-topbar-height:31px;
  --ubf-header-height:73px;
  --ubf-fixed-head-height:calc(var(--ubf-topbar-height) + var(--ubf-header-height));
}
html{scroll-padding-top:calc(var(--ubf-fixed-head-height) + 12px)}
body:not(.admin-page){
  padding-top:var(--ubf-fixed-head-height);
}
body:not(.admin-page) .topbar{
  position:fixed!important;
  top:0!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  z-index:2400!important;
}
body:not(.admin-page) .header{
  position:fixed!important;
  top:var(--ubf-topbar-height)!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  z-index:2390!important;
  background:var(--bg)!important;
  transform:translateZ(0);
  -webkit-transform:translateZ(0);
}
@media(max-width:1020px){
  :root{--ubf-header-height:66px}
}
@media(max-width:760px){
  :root{--ubf-topbar-height:28px;--ubf-header-height:66px}
}
@media(max-width:620px){
  :root{--ubf-topbar-height:30px;--ubf-header-height:66px}
}


/* =========================================================
   UseBellaFlor 2.9 — camadas do cabeçalho, busca e minicarrinho
   ========================================================= */
/* O cabeçalho permanece visível; busca e carrinho começam logo abaixo dele. */
body:not(.admin-page) .search-sheet{
  top:var(--ubf-fixed-head-height)!important;
  right:0!important;
  bottom:0!important;
  left:0!important;
  height:auto!important;
  z-index:2380!important;
}
body:not(.admin-page) .search-sheet-backdrop{
  inset:0!important;
}
body:not(.admin-page) .search-sheet-panel{
  margin:18px auto 0!important;
  max-height:calc(100svh - var(--ubf-fixed-head-height) - 28px);
  overflow:auto;
}
body:not(.admin-page) .mini-cart{
  top:var(--ubf-fixed-head-height)!important;
  bottom:0!important;
  height:calc(100dvh - var(--ubf-fixed-head-height))!important;
  max-height:calc(100dvh - var(--ubf-fixed-head-height))!important;
  z-index:2380!important;
}
body:not(.admin-page) .cart-overlay{
  top:var(--ubf-fixed-head-height)!important;
  right:0!important;
  bottom:0!important;
  left:0!important;
  z-index:2370!important;
}
/* Evita que o conteúdo interno do carrinho ultrapasse a área útil. */
body:not(.admin-page) .mini-cart-items{
  min-height:0;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}
/* O topo continua acima das camadas abertas e fica sempre legível. */
body:not(.admin-page) .topbar{z-index:2400!important}
body:not(.admin-page) .header{z-index:2390!important}

@media(max-width:760px){
  body:not(.admin-page) .search-sheet-panel{
    width:min(calc(100% - 20px),650px);
    margin-top:10px!important;
    padding:18px 16px 20px;
    max-height:calc(100svh - var(--ubf-fixed-head-height) - 18px);
  }
  body:not(.admin-page) .search-sheet-head strong{font-size:1.45rem}
  body:not(.admin-page) .search-sheet-form{grid-template-columns:30px minmax(0,1fr) auto}
  body:not(.admin-page) .search-sheet-form button{padding-inline:9px;font-size:.62rem}
  body:not(.admin-page) .mini-cart{width:min(390px,100%)}
}


/* =========================================================
   UseBellaFlor 3.2 — fluxo mobile, favoritos, carrinho e promoções
   ========================================================= */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
button,a,label,.icon-btn,.menu-toggle,.filter-btn,.favorite-btn,.size-btn,.color-swatch{touch-action:manipulation}
.search-sheet-tip.error{color:#a14956!important;font-weight:600}
.search-sheet-form input[aria-invalid="true"]{color:#a14956}

/* Promoção visível e preço anterior */
.product-badge.promo-badge{white-space:nowrap;background:var(--rose-deep);color:#fff;letter-spacing:.045em}
.product-promo-status{display:inline-flex;align-items:center;min-height:24px;padding:4px 8px;background:var(--rose-soft);color:var(--rose-deep);font-size:.58rem;font-weight:700;letter-spacing:.055em;text-transform:uppercase}
.product-promo-status[hidden]{display:none!important}
.card-price-row .old-price{display:inline!important;text-decoration:line-through;color:#91898c}.product-old-price{text-decoration:line-through;color:#91898c}.product-old-price[hidden]{display:none!important}

/* Carrinho: controles de toque maiores e sempre acessíveis */
.mini-cart-row{gap:12px;min-width:0}
.mini-cart-qty{height:36px;grid-template-columns:36px 34px 36px!important;flex:0 0 auto}
.mini-cart-qty button{min-width:36px;font-size:1rem;display:grid;place-items:center;touch-action:manipulation}
.remove-mini{width:38px;height:38px;display:grid;place-items:center;flex:0 0 38px;color:#704f5b;background:#faf6f7;border:1px solid #eee5e8}
.remove-mini:hover{color:#9d405f;background:#f7e9ee}
.cart-qty button,.remove-btn{touch-action:manipulation}

/* Cupom mais visível no fluxo */
.checkout-coupon-prominent{margin:0!important;padding:20px 22px!important;border:1px solid #e6d5dc!important;background:#fff9fb;border-radius:0}
.checkout-coupon-heading{display:flex;align-items:center;gap:12px;margin-bottom:13px}
.checkout-coupon-icon{width:38px;height:38px;display:grid;place-items:center;background:var(--rose-soft);color:var(--rose-deep);flex:0 0 38px}
.checkout-coupon-heading>div{display:grid;gap:2px}.checkout-coupon-heading strong{font-family:var(--display);font-size:1.45rem;font-weight:600;line-height:1}.checkout-coupon-heading span{font-size:.65rem;color:var(--muted)}
.checkout-coupon-prominent .checkout-coupon-form input{height:46px;background:#fff;font-size:16px}
.checkout-coupon-prominent .checkout-coupon-form button{min-height:46px;padding-inline:16px}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Catálogo não pode empurrar a viewport */
.catalog-layout,.catalog-toolbar,.catalog-toolbar-actions,.catalog-grid,.products-grid,.filters,.filter-options,.product-card,.product-info{min-width:0}
.catalog-page{max-width:100vw;overflow-x:hidden}

@media(max-width:900px),(pointer:coarse){
  /* Evita o zoom automático do iOS ao focar campos sem bloquear o zoom de acessibilidade. */
  input,select,textarea,.search-sheet-form input,.nav-search input,.checkout-coupon-form input{font-size:16px!important}
  .search-sheet-form{min-height:54px;height:auto}
  .search-sheet-form button{min-height:42px}
  .favorite-btn{width:40px;height:40px}
}

@media(max-width:760px){
  .catalog-layout{display:block!important;width:100%}
  .filters{width:100%;overflow:hidden;margin-bottom:24px}
  .filter-options{display:flex!important;flex-wrap:nowrap!important;gap:8px;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;padding:2px 1px 8px;scrollbar-width:none}
  .filter-options::-webkit-scrollbar{display:none}
  .filter-btn{flex:0 0 auto!important;white-space:nowrap}
  .catalog-toolbar{width:100%;gap:12px}
  .catalog-toolbar-actions{width:100%;display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}
  .sort-control{min-width:0;max-width:100%}.sort-control select{max-width:100%;min-width:0}
  .catalog-grid,.products-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;width:100%}
  .product-image{width:100%;overflow:hidden}
  .product-image img{width:100%}
  .product-info{padding-inline:10px!important}
  .product-info h3{overflow-wrap:anywhere}
  .checkout-coupon-prominent{padding:18px!important}
  .checkout-coupon-form{grid-template-columns:minmax(0,1fr) auto}
  .mini-cart-info{min-width:0}
}
@media(max-width:420px){
  .checkout-coupon-form{grid-template-columns:1fr!important}
  .checkout-coupon-form button{width:100%}
  .mini-cart-items{padding-inline:16px!important}.mini-cart-header,.mini-cart-footer{padding-inline:16px!important}
  .mini-cart-item{grid-template-columns:70px minmax(0,1fr)!important}.mini-cart-item>img{width:70px!important;height:94px!important}
}


/* =========================================================
   UseBellaFlor 3.3 — cupom com celular separado
   ========================================================= */
.checkout-coupon-fields{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;
  gap:9px;
  align-items:end;
}
.checkout-coupon-field{
  display:grid!important;
  gap:6px;
  min-width:0;
  margin:0!important;
  text-transform:none!important;
  letter-spacing:0!important;
}
.checkout-coupon-field>span{
  font-size:.61rem;
  font-weight:650;
  color:#5f565a;
}
.checkout-coupon-field input{
  width:100%;
  min-width:0;
  height:46px;
  border:1px solid #d2cbc8;
  background:#fff;
  padding:0 11px;
  outline:0;
  font-size:16px;
  box-sizing:border-box;
}
.checkout-coupon-field input:focus{border-color:#8b7d82;box-shadow:0 0 0 3px rgba(143,63,94,.07)}
#couponCode{text-transform:uppercase;letter-spacing:.04em}
.checkout-coupon-apply{
  min-height:46px;
  padding:0 16px;
  background:#252125;
  color:#fff;
  font-size:.65rem;
  font-weight:650;
  white-space:nowrap;
}
.checkout-coupon-apply:hover{background:#8f3f5e}
.checkout-coupon-apply:disabled{opacity:.6;cursor:wait}
@media(max-width:760px){
  .checkout-coupon-fields{grid-template-columns:1fr 1fr}
  .checkout-coupon-apply{grid-column:1/-1;width:100%}
}
@media(max-width:480px){
  .checkout-coupon-fields{grid-template-columns:1fr}
  .checkout-coupon-apply{grid-column:auto}
}

/* =========================================================
   UseBellaFlor 3.4 — checkout estável, carrinho no resumo e mobile sem zoom automático
   ========================================================= */
.checkout-item-main{min-width:0}
.checkout-item-price{font-size:.65rem;font-weight:650;white-space:nowrap;align-self:start;padding-top:2px}
.checkout-item-controls{display:flex;align-items:center;gap:8px;margin-top:9px}
.checkout-item-qty{height:34px;display:grid;grid-template-columns:34px 32px 34px;border:1px solid #ddd4d7;background:#fff}
.checkout-item-qty button{display:grid;place-items:center;min-width:34px;background:#fff;color:#332d30;font-size:.95rem;touch-action:manipulation}
.checkout-item-qty button:disabled{opacity:.35;cursor:not-allowed}
.checkout-item-qty span{display:grid;place-items:center;border-inline:1px solid #eee7e9;font-size:.65rem;font-weight:700}
.checkout-item-remove{width:34px;height:34px;display:grid;place-items:center;border:1px solid #eadfe3;background:#fff8fa;color:#8e475f;touch-action:manipulation}
.checkout-item-remove:hover{background:#f7e9ee}
.checkout-submit[aria-busy="true"]{cursor:wait;opacity:.82}
.checkout-summary .cart-stock-warning{color:#a14956!important;font-weight:650;margin-top:3px}

/* Campos sempre grandes o bastante para não disparar o zoom de foco do iOS. */
@media(max-width:900px),(pointer:coarse){
  body:not(.admin-page) input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]),
  body:not(.admin-page) select,
  body:not(.admin-page) textarea{font-size:16px!important}
  body:not(.admin-page) button,
  body:not(.admin-page) a,
  body:not(.admin-page) input,
  body:not(.admin-page) select,
  body:not(.admin-page) textarea{touch-action:manipulation}
}

@media(max-width:760px){
  .checkout-page{overflow-x:hidden}
  .checkout-layout{width:100%;min-width:0;gap:20px!important}
  .checkout-form,.checkout-summary,.checkout-card,.checkout-coupon-prominent{min-width:0;max-width:100%}
  .checkout-card{padding:18px!important}
  .checkout-card-title{padding-right:28px}
  .checkout-coupon-prominent{padding:18px!important}
  .checkout-summary{padding:18px!important;margin-inline:0!important;max-width:none!important}
  .checkout-item{grid-template-columns:54px minmax(0,1fr)!important;align-items:start!important;gap:10px!important}
  .checkout-item img{width:54px!important;height:72px!important}
  .checkout-item-price{grid-column:2;justify-self:start;margin-top:7px;font-size:.72rem}
  .checkout-item-controls{flex-wrap:wrap}
  .checkout-coupon-fields{grid-template-columns:1fr!important}
  .checkout-coupon-apply{grid-column:auto!important}
  .checkout-fields.two,.checkout-fields.address,.choice-grid,.choice-grid.three{grid-template-columns:1fr!important}
}

@media(max-width:390px){
  .checkout-card,.checkout-coupon-prominent,.checkout-summary{padding:15px!important}
  .checkout-item{grid-template-columns:48px minmax(0,1fr)!important}
  .checkout-item img{width:48px!important;height:66px!important}
  .checkout-item-qty{grid-template-columns:32px 30px 32px}
  .checkout-item-qty button{min-width:32px}
}


/* UseBellaFlor v3.7 — reforço visual mobile + cache bust */
@media (max-width:760px){
  .product-card .product-badge{
    left:10px!important;top:10px!important;
    display:inline-flex!important;align-items:center!important;gap:5px!important;
    border-radius:999px!important;padding:6px 9px!important;
    font-size:.53rem!important;line-height:1!important;
  }
  .product-card .product-badge:not(.sold-out):not(.promo-badge){
    background:rgba(255,255,255,.95)!important;color:#87435a!important;
    border:1px solid rgba(135,67,90,.16)!important;
    box-shadow:0 4px 14px rgba(25,18,20,.06)!important;
  }
  .product-card .product-badge:not(.sold-out):not(.promo-badge)::before{
    content:"✦"!important;font-size:.6rem!important;line-height:1!important;
  }
  .product-card .favorite-btn{
    top:10px!important;right:10px!important;width:38px!important;height:38px!important;
    border-radius:50%!important;background:rgba(255,255,255,.92)!important;
    border:1px solid rgba(24,22,23,.08)!important;color:#4b4548!important;
    box-shadow:0 5px 18px rgba(28,20,23,.09)!important;
  }
  .product-card .favorite-btn.active{
    background:#87435a!important;border-color:#87435a!important;color:#fff!important;
  }
  .footer .social-links,
  .footer .home-social-links{display:flex!important;flex-wrap:wrap!important;gap:9px!important}
  .footer .social-links a,
  .footer .home-social-links a{
    width:auto!important;height:36px!important;padding:0 11px!important;border-radius:999px!important;
    display:inline-flex!important;align-items:center!important;gap:8px!important;
  }
}

/* v4.1 — carregamento automático do catálogo */
.catalog-auto-loader{min-height:72px;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--muted);font-size:.68rem;margin-top:22px}
.catalog-auto-loader[hidden]{display:none!important}
.catalog-auto-spinner{width:18px;height:18px;border:2px solid #ded7d4;border-top-color:var(--rose-deep);border-radius:50%;animation:catalogSpin .8s linear infinite}
@keyframes catalogSpin{to{transform:rotate(360deg)}}


/* =========================================================
   UseBellaFlor v4.5 — acabamento desktop de lançamento
   Regras exclusivas para telas maiores; o mobile permanece intacto.
   ========================================================= */
@media (min-width:1021px){
  .header-content{gap:28px}
  .nav{gap:16px}
  .nav>a{font-size:.68rem;letter-spacing:.068em}

  .catalog-page .page-hero{padding:66px 0 48px}
  .catalog-page .page-hero h1{font-size:clamp(4rem,5.3vw,5.65rem)}
  .catalog-page .catalog-hero-links{gap:10px;margin-top:22px}
  .catalog-page .catalog-section{padding-top:84px}
  .catalog-page .catalog-layout{grid-template-columns:180px minmax(0,1fr);gap:44px}
  .catalog-page .catalog-grid{gap:46px 22px}

  .product-detail-page .product-page{padding:54px 0 96px}
  .product-detail-page .product-page-layout{grid-template-columns:minmax(0,1.04fr) minmax(420px,.96fr);gap:48px}
  .product-detail-page .product-gallery{grid-template-columns:82px minmax(0,1fr);gap:16px;align-items:start}
  .product-detail-page .product-thumbs{gap:10px}
  .product-detail-page .thumb{width:82px}
  .product-detail-page .product-main-image{width:100%;max-height:760px;background:#f4f1ef}
  .product-detail-page .product-main-image img{object-position:center 20%}
  .product-detail-page .product-details-box{top:122px;padding:14px 10px 0 4px;max-width:560px}
  .product-detail-page .product-details-box h1{font-size:clamp(3.35rem,4vw,4.55rem);margin-bottom:18px}
  .product-detail-page .product-description{max-width:540px}
  .product-detail-page .product-page-actions{gap:10px}
}
@media (min-width:1021px) and (max-width:1220px){
  .header-content{gap:16px}
  .brand-wordmark{font-size:1.55rem}
  .nav{gap:9px}
  .nav>a{font-size:.60rem;letter-spacing:.05em}
  .product-detail-page .product-page-layout{grid-template-columns:minmax(0,1fr) minmax(390px,.9fr);gap:34px}
}
