/* Tokens and base styles for the LIOR interface. */
:root{--bg:#050505;--panel:#0d0d0d;--panel2:#121212;--gold:#c79a4a;--gold2:#efd18d;--text:#f6f1e8;--muted:#aaa49a;--line:rgba(199,154,74,.28)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif}button,input,select{font:inherit}button,a{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.wrap{width:min(1180px,calc(100% - 30px));margin:auto}.narrow{max-width:840px}.site-header{position:sticky;top:0;z-index:30;background:rgba(5,5,5,.94);border-bottom:1px solid rgba(255,255,255,.08)}.header-inner{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{font-family:Georgia,serif;letter-spacing:.16em}.brand span{color:var(--gold);font-size:.72em}.site-header nav{display:flex;gap:22px;font-size:.76rem;text-transform:uppercase;letter-spacing:.12em}.site-header nav a:hover{color:var(--gold2)}.menu-button{display:none;background:none;border:0;color:#fff;font-size:1.4rem}.cart-button,.ghost{border:1px solid var(--line);background:transparent;color:var(--text);padding:11px 14px}.cart-button b{display:inline-grid;place-items:center;background:var(--gold);color:#111;border-radius:50%;min-width:20px;height:20px;margin-left:5px}.view{display:none}.view.active{display:block}.hero{min-height:76vh;display:grid;align-items:center;background:radial-gradient(circle at 70% 40%,rgba(199,154,74,.13),transparent 28%),linear-gradient(120deg,#050505,#100b07)}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:50px}.eyebrow{text-transform:uppercase;letter-spacing:.24em;color:var(--gold2);font-size:.72rem}.hero h1{font-family:Georgia,serif;font-weight:500;font-size:clamp(3.2rem,8vw,7.4rem);line-height:.88;margin:18px 0}.hero h1 span{color:var(--gold)}.lead{color:#c9c2b8;line-height:1.75;max-width:600px}.primary{border:1px solid var(--gold);background:var(--gold);color:#090703;padding:14px 20px;text-transform:uppercase;font-weight:800;letter-spacing:.08em}.link-button{display:inline-block}.hero-art{min-height:470px;position:relative;display:grid;place-items:center}.hero-ring{width:340px;height:340px;border:1px solid var(--line);border-radius:50%;box-shadow:0 0 80px rgba(199,154,74,.1)}.hero-mark{position:absolute;font-family:Georgia,serif;font-size:13rem;color:rgba(199,154,74,.16)}.features{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);margin-top:-25px;position:relative;background:#090909}.features div{padding:24px;border-right:1px solid var(--line)}.features div:last-child{border-right:0}.features strong,.features span{display:block}.features strong{color:var(--gold2);margin-bottom:8px}.features span{color:var(--muted);font-size:.9rem}.about-home,.section{padding:90px 0}.about-home h2,.section h2{font-family:Georgia,serif;font-weight:500;font-size:clamp(2.5rem,5vw,4.8rem);margin:10px 0}.about-home p,.big-copy{color:#bdb6ac;line-height:1.9}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:32px}.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.category-card{min-height:220px;padding:28px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(145deg,#121212,#080808);display:flex;flex-direction:column;justify-content:flex-end;transition:.2s}.category-card:hover{transform:translateY(-4px);border-color:var(--gold)}.category-card .icon{font-size:2rem}.category-card h3{font-family:Georgia,serif;font-size:1.7rem;margin:14px 0 5px}.category-card p{color:var(--muted);margin:0}.toolbar{display:flex;gap:10px;margin-bottom:22px}.toolbar input,.toolbar select{background:#0b0b0b;border:1px solid rgba(255,255,255,.1);color:#fff;padding:13px 14px}.toolbar input{flex:1}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.product-card{background:var(--panel);border:1px solid rgba(255,255,255,.07);overflow:hidden;transition:.2s}.product-card:hover{transform:translateY(-4px);border-color:var(--line)}.product-photo{aspect-ratio:4/5;background:#090909;overflow:hidden}.product-photo img{width:100%;height:100%;object-fit:cover}.product-info{padding:20px}.product-info h3{font-family:Georgia,serif;margin:0 0 6px;font-size:1.35rem}.product-info .line{color:var(--gold2);font-size:.8rem}.product-info .price{font-weight:800;margin:14px 0}.product-info button{width:100%}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:30px;padding:50px 0;border-top:1px solid rgba(255,255,255,.08)}.footer-grid div{display:grid;gap:10px}.footer-grid p,.footer-grid a{color:var(--muted)}.overlay{position:fixed;inset:0;background:rgba(0,0,0,.72);opacity:0;visibility:hidden;z-index:50}.overlay.show{opacity:1;visibility:visible}.cart-drawer{position:fixed;top:0;right:0;bottom:0;width:min(430px,94vw);background:#090909;z-index:60;transform:translateX(105%);transition:.25s;padding:22px;display:flex;flex-direction:column}.cart-drawer.show{transform:translateX(0)}.drawer-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.08)}.drawer-head button,.modal-close{background:transparent;border:0;color:#fff;font-size:2rem}.cart-items{flex:1;overflow:auto}.cart-row{display:grid;grid-template-columns:64px 1fr auto;gap:12px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.08)}.cart-row img{width:64px;height:74px;object-fit:cover}.cart-row small{color:var(--muted)}.remove-cart{background:none;border:0;color:#d99}.drawer-foot{border-top:1px solid rgba(255,255,255,.08);padding-top:16px}.drawer-foot small{color:var(--muted)}.total{display:flex;justify-content:space-between;margin-bottom:12px}.full{width:100%}.modal{position:fixed;z-index:70;top:50%;left:50%;transform:translate(-50%,-46%) scale(.98);width:min(980px,94vw);max-height:92vh;overflow:auto;background:#090909;border:1px solid var(--line);visibility:hidden;opacity:0;transition:.2s}.modal.show{visibility:visible;opacity:1;transform:translate(-50%,-50%) scale(1)}.modal-close{position:absolute;right:12px;top:8px;z-index:3}.modal-grid{display:grid;grid-template-columns:1.08fr .92fr}.gallery{background:#050505;min-height:580px}.gallery>img{width:100%;height:520px;object-fit:contain}.thumbs{display:flex;gap:8px;padding:10px;overflow:auto}.thumbs img{width:70px;height:70px;object-fit:cover;border:1px solid transparent}.thumbs img.active{border-color:var(--gold)}.modal-info{padding:36px}.modal-info h2{font-family:Georgia,serif;font-size:2.4rem;margin:10px 0}.modal-price{font-size:1.5rem;color:var(--gold2);font-weight:800}.modal-info p{color:var(--muted);line-height:1.7}.modal-info label{display:block;margin-top:18px;margin-bottom:8px;font-weight:bold}.sizes{display:flex;gap:8px;flex-wrap:wrap}.size-btn{width:48px;height:42px;background:#111;border:1px solid rgba(255,255,255,.15);color:#fff}.size-btn.active{border-color:var(--gold);color:var(--gold2)}.qty{display:flex;margin-bottom:18px}.qty button,.qty input{width:44px;height:42px;text-align:center;background:#111;border:1px solid rgba(255,255,255,.15);color:#fff}.qty input{border-inline:0}.empty{padding:35px;text-align:center;color:var(--muted);border:1px dashed var(--line)}
@media(max-width:900px){.hero-grid,.modal-grid{grid-template-columns:1fr}.hero-art{min-height:260px}.hero-ring{width:220px;height:220px}.hero-mark{font-size:8rem}.category-grid,.product-grid{grid-template-columns:1fr 1fr}.features{grid-template-columns:1fr 1fr}.features div:nth-child(2){border-right:0}.gallery{min-height:420px}.gallery>img{height:380px}}
@media(max-width:650px){.menu-button{display:block}.site-header nav{display:none;position:absolute;left:0;right:0;top:74px;background:#080808;padding:18px;flex-direction:column;border-bottom:1px solid var(--line)}.site-header nav.show{display:flex}.brand{font-size:.9rem}.cart-button{padding:9px}.hero{min-height:0;padding:60px 0}.hero h1{font-size:3.5rem}.hero-art{display:none}.features,.category-grid,.product-grid,.footer-grid{grid-template-columns:1fr}.features{margin-top:0}.features div{border-right:0;border-bottom:1px solid var(--line)}.section-head{align-items:flex-start;flex-direction:column}.toolbar{flex-direction:column}.modal-info{padding:24px}.gallery>img{height:330px}}

/* Ajuste editorial LIOR + faixa em movimento */
.editorial-hero{min-height:72vh;display:flex;align-items:center;background:radial-gradient(circle at 78% 40%,rgba(199,154,74,.10),transparent 32%),linear-gradient(120deg,#050505 0%,#0a0a0a 55%,#050505 100%);border-bottom:1px solid rgba(199,154,74,.28)}
.editorial-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(240px,.55fr);gap:70px;align-items:center;padding-top:90px;padding-bottom:90px}
.editorial-copy{max-width:900px}.editorial-copy h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(70px,10vw,154px);line-height:.72;letter-spacing:-.045em;margin:20px 0 34px}.editorial-copy h1 span{color:var(--gold2)}.editorial-copy h1 .hero-white{color:var(--text)}
.editorial-copy .lead{max-width:820px;font-size:clamp(17px,2vw,22px);line-height:1.7}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.editorial-seal{width:min(360px,34vw);aspect-ratio:1;border:1px solid rgba(239,209,141,.25);border-radius:50%;display:grid;place-items:center;justify-self:end;box-shadow:inset 0 0 80px rgba(199,154,74,.05)}.editorial-seal span{font-family:Georgia,serif;font-size:clamp(90px,14vw,190px);color:rgba(239,209,141,.58)}
.moving-strip{overflow:hidden;border-bottom:1px solid rgba(199,154,74,.28);background:#080808;color:var(--gold2);white-space:nowrap}.moving-track{display:inline-flex;min-width:max-content;animation:liorMarquee 24s linear infinite}.moving-track span{display:inline-block;padding:18px 28px;font-family:Georgia,serif;font-size:17px;letter-spacing:.1em}
@keyframes liorMarquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.cart-row-info{min-width:0;flex:1}.cart-qty{display:inline-flex;align-items:center;border:1px solid rgba(199,154,74,.3);margin:8px 0;border-radius:4px;overflow:hidden}.cart-qty button{width:32px;height:30px;border:0;background:#111;color:var(--text);font-size:18px;cursor:pointer}.cart-qty button:hover{background:var(--gold);color:#050505}.cart-qty span{min-width:34px;text-align:center;font-weight:700}.cart-row{align-items:flex-start}.cart-row .remove-cart{flex:0 0 auto}
@media(max-width:800px){.editorial-grid{grid-template-columns:1fr;padding-top:70px;padding-bottom:60px;gap:30px}.editorial-copy h1{font-size:clamp(56px,18vw,90px)}.editorial-seal{display:none}.moving-track span{font-size:14px;padding:14px 20px}}
@media(prefers-reduced-motion:reduce){.moving-track{animation:none}}


/* Ajuste final solicitado: logo textura nº 03 e layout sem sobreposição */
.features{margin-top:0}
.editorial-hero{min-height:clamp(600px,72vh,820px);overflow:hidden}
.editorial-grid{grid-template-columns:minmax(0,1.28fr) minmax(250px,.72fr);gap:clamp(32px,5vw,76px);padding-top:clamp(58px,7vh,92px);padding-bottom:clamp(58px,7vh,92px)}
.editorial-copy{min-width:0;position:relative;z-index:2}
.editorial-copy h1{font-size:clamp(64px,8.4vw,126px);line-height:.82;overflow-wrap:normal;word-break:normal;margin:18px 0 30px}
.editorial-copy .lead{font-size:clamp(16px,1.55vw,21px);max-width:760px}
.editorial-seal{width:min(350px,30vw);border:0;box-shadow:0 0 85px rgba(199,154,74,.10);overflow:visible;position:relative;z-index:1}
.editorial-seal img{width:100%;height:100%;object-fit:contain;border-radius:50%;filter:drop-shadow(0 18px 36px rgba(0,0,0,.45));transition:transform .35s ease,filter .35s ease}
.editorial-seal:hover img{transform:scale(1.025);filter:drop-shadow(0 20px 45px rgba(199,154,74,.15))}
.moving-strip{position:relative;z-index:2}
.features{position:relative;z-index:1}
@media(max-width:1050px){.editorial-grid{grid-template-columns:minmax(0,1.35fr) minmax(220px,.65fr);gap:30px}.editorial-copy h1{font-size:clamp(58px,8vw,94px)}.editorial-seal{width:min(280px,27vw)}}
@media(max-width:800px){.editorial-hero{min-height:0}.editorial-grid{grid-template-columns:1fr;padding-top:62px;padding-bottom:54px}.editorial-copy h1{font-size:clamp(52px,16vw,82px);line-height:.86}.editorial-seal{display:grid;width:min(290px,72vw);justify-self:center;margin-top:4px}.features{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.editorial-copy h1{font-size:clamp(46px,15vw,68px)}.editorial-copy .lead{font-size:16px}.editorial-seal{width:min(250px,78vw)}.features{grid-template-columns:1fr}}

/* Home final: corta-vento preto + faixas superior e inferior */
.moving-strip-top{border-top:0;border-bottom:1px solid var(--line);position:relative;z-index:35}
.moving-strip-top .moving-track span{padding:10px 28px;font-family:Arial,Helvetica,sans-serif;font-size:12px;font-weight:700;letter-spacing:.12em}
.home-feature-hero{min-height:calc(100vh - 112px);padding:46px 0;background:radial-gradient(circle at 63% 47%,rgba(255,255,255,.055),transparent 28%),radial-gradient(circle at 83% 45%,rgba(199,154,74,.10),transparent 24%),#050505;overflow:hidden}
.home-feature-grid{display:grid;grid-template-columns:minmax(330px,.9fr) minmax(360px,1.15fr) minmax(220px,.55fr);gap:34px;align-items:center;min-height:650px}
.home-feature-copy{position:relative;z-index:2}.home-feature-copy h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(54px,6vw,94px);line-height:.9;letter-spacing:-.035em;margin:20px 0 34px}.home-feature-copy h1 span{color:var(--gold2)}.home-feature-copy h1 .hero-white{color:var(--text)}
.home-feature-copy .lead{font-size:18px;max-width:560px}.home-feature-product{height:650px;display:flex;align-items:center;justify-content:center;min-width:0}.home-feature-product img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 25px 45px rgba(0,0,0,.75))}
.home-feature-seal{width:min(270px,20vw);justify-self:center;box-shadow:none;background:#050505;overflow:hidden}.home-feature-seal img{width:100%;height:100%;object-fit:cover;border-radius:50%}
@media(max-width:1050px){.home-feature-grid{grid-template-columns:1fr 1fr;min-height:0}.home-feature-seal{grid-column:1/-1;width:190px;margin-top:-15px}.home-feature-product{height:530px}}
@media(max-width:720px){.moving-strip-top .moving-track span{font-size:10px;padding:9px 18px}.home-feature-hero{padding:48px 0}.home-feature-grid{grid-template-columns:1fr;gap:20px}.home-feature-copy{text-align:center}.home-feature-copy .lead{margin-left:auto;margin-right:auto}.home-feature-copy .hero-actions{justify-content:center}.home-feature-product{height:430px;order:2}.home-feature-seal{width:150px;order:3;margin-top:0}.home-feature-copy h1{font-size:clamp(46px,15vw,70px)}}


/* V3: página inicial sem foto de produto */
.home-feature-grid{grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);min-height:620px;gap:clamp(40px,7vw,110px)}
.home-feature-copy{max-width:790px}
.home-feature-copy h1{font-size:clamp(68px,9vw,138px);line-height:.78}
.home-feature-copy .lead{max-width:720px;font-size:clamp(17px,1.7vw,22px)}
.home-feature-seal{width:min(360px,30vw);justify-self:end;background:transparent;overflow:visible}
.home-feature-seal img{object-fit:contain}
@media(max-width:900px){.home-feature-grid{grid-template-columns:1fr;min-height:0;text-align:center}.home-feature-copy{justify-self:center}.home-feature-copy .lead{margin-left:auto;margin-right:auto}.home-feature-copy .hero-actions{justify-content:center}.home-feature-seal{justify-self:center;width:min(300px,70vw);margin-top:10px}}
@media(max-width:520px){.home-feature-copy h1{font-size:clamp(50px,18vw,74px)}.home-feature-hero{padding:54px 0}.home-feature-seal{width:min(240px,72vw)}}


/* V4: ajustes solicitados no cabeçalho e na home */
.site-header .header-inner{justify-content:flex-end}
.site-header nav{margin-right:auto}
.moving-strip-top .moving-track span{padding:18px 28px;font-family:Georgia,serif;font-size:17px;font-weight:400;letter-spacing:.1em}
.home-feature-copy{transform:translateY(-76px)}
@media(max-width:720px){
  .site-header .header-inner{justify-content:space-between}
  .site-header nav{margin-right:0}
  .moving-strip-top .moving-track span{padding:14px 20px;font-size:14px}
  .home-feature-copy{transform:translateY(-22px)}
}

/* Ícones superiores: pesquisa, favoritos, sacola e conta */
.header-actions{display:flex;align-items:center;gap:16px;margin-left:auto}
.header-icon{position:relative;width:42px;height:42px;padding:5px;border:0;background:transparent;color:var(--gold);display:grid;place-items:center}
.header-icon svg{width:31px;height:31px;fill:none;stroke:currentColor;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 5px rgba(199,154,74,.18))}
.header-icon:hover{color:var(--gold2);transform:translateY(-1px)}
.header-icon b{position:absolute;right:-3px;top:-2px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:var(--gold);color:#080604;font-size:.68rem;display:grid;place-items:center}
.product-photo{border:0;width:100%;position:relative}
.product-card{position:relative;border-color:rgba(199,154,74,.55)}
.favorite-card-button{position:absolute;z-index:4;right:12px;top:12px;width:42px;height:42px;border:0;background:rgba(4,4,4,.83);color:var(--gold);display:grid;place-items:center}
.favorite-card-button svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.favorite-card-button.active{background:var(--gold);color:#080604}
.favorite-modal-button{width:100%;margin:0 0 10px;padding:13px 16px;border:1px solid var(--gold);background:transparent;color:var(--gold2);text-transform:uppercase;font-weight:800;letter-spacing:.06em}
.favorite-modal-button.active{background:var(--gold);color:#080604}
.utility-drawer{position:fixed;top:0;right:0;bottom:0;width:min(470px,96vw);background:#090909;z-index:65;transform:translateX(105%);transition:.25s;padding:22px;display:flex;flex-direction:column;border-left:1px solid var(--line)}
.utility-drawer.show{transform:translateX(0)}
.utility-body,.favorite-items{overflow:auto;flex:1;padding-top:16px}
.utility-search,.account-content input{width:100%;background:#0d0d0d;border:1px solid var(--gold);color:#fff;padding:14px;margin-bottom:15px;outline:none}
.utility-result,.favorite-row{display:grid;grid-template-columns:72px 1fr auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid rgba(199,154,74,.25)}
.utility-result img,.favorite-row img{width:72px;height:82px;object-fit:cover}
.utility-result button,.favorite-row button{border:1px solid var(--gold);background:transparent;color:var(--gold2);padding:8px 10px}
.utility-result strong,.favorite-row strong{display:block;margin-bottom:5px}
.account-modal:not(.customer-account-modal){position:fixed;z-index:70;top:50%;left:50%;transform:translate(-50%,-46%) scale(.98);width:min(520px,94vw);background:#090909;border:1px solid var(--gold);visibility:hidden;opacity:0;transition:.2s}
.account-modal:not(.customer-account-modal).show{visibility:visible;opacity:1;transform:translate(-50%,-50%) scale(1)}
.account-content{padding:38px}
.account-content h2{font-family:Georgia,serif;font-size:2.5rem;margin:8px 0}
.account-content p,.account-content small{color:var(--muted)}
.account-content label{display:block;margin:12px 0 7px;font-weight:700}
@media(max-width:650px){.header-actions{gap:5px}.header-icon{width:36px;height:38px}.header-icon svg{width:26px;height:26px}.site-header nav{top:74px}.header-inner{gap:8px}.account-content{padding:28px 22px}}


/* V5: ações do produto conforme o layout aprovado */
.product-actions{display:flex;align-items:stretch;gap:12px;margin-top:18px;width:100%}
.add-cart-compact{flex:0 1 300px;max-width:300px;min-width:0;width:auto;display:flex;align-items:center;justify-content:center;gap:12px;padding:13px 18px;min-height:54px;text-transform:uppercase;font-weight:800;letter-spacing:.055em}
.add-cart-compact svg{width:25px;height:25px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.favorite-icon-button{flex:0 0 58px;width:58px;min-height:54px;padding:0;border:1px solid var(--gold);background:transparent;color:var(--gold);display:grid;place-items:center;transition:.2s}
.favorite-icon-button svg{width:31px;height:31px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.favorite-icon-button:hover,.favorite-icon-button.active{background:var(--gold);color:#080604}
.modal-info>.favorite-modal-button{display:none!important}
@media(max-width:520px){.product-actions{gap:9px}.add-cart-compact{flex:1 1 auto;max-width:none;padding:12px 12px;font-size:.82rem;letter-spacing:.035em}.add-cart-compact svg{width:22px;height:22px}.favorite-icon-button{flex-basis:52px;width:52px}}


/* Avaliações de produtos */
.product-modal{max-height:92vh;overflow:hidden;padding:0}
.product-modal-scroll{max-height:92vh;overflow-y:auto;overscroll-behavior:contain;padding:28px}
.reviews-jump{margin-top:18px;background:transparent;border:0;color:var(--gold);font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;padding:10px 0}
.reviews-section{margin-top:38px;padding-top:32px;border-top:1px solid var(--line);scroll-margin-top:20px}
.reviews-section.is-collapsed{display:none}
.reviews-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}
.reviews-head h3{font-size:clamp(28px,4vw,46px);margin:4px 0 0}
.reviews-summary{text-align:right;display:grid;justify-items:end}
.reviews-summary strong{font-family:Georgia,serif;font-size:42px;color:var(--gold2)}
.reviews-summary small{color:var(--muted)}
.stars-display{color:var(--gold);letter-spacing:4px;font-size:20px}
.reviews-toolbar{display:flex;align-items:center;gap:12px;margin:26px 0 20px;flex-wrap:wrap}
.reviews-toolbar label{color:var(--muted)}
.reviews-toolbar select,.review-fields input,.review-fields textarea{background:#090909;color:var(--text);border:1px solid var(--line);border-radius:4px;padding:13px 14px;font:inherit}
.owner-access{margin-left:auto;background:transparent;border:1px solid var(--line);color:var(--gold2);padding:11px 14px;cursor:pointer}
.owner-access.active{background:rgba(199,154,74,.12)}
.review-form{border:1px solid var(--line);padding:22px;background:rgba(255,255,255,.015)}
.review-form h4{margin:0 0 12px;font-size:20px}
.star-picker{display:flex;gap:5px;margin-bottom:14px}
.star-picker button{font-size:30px;background:transparent;border:0;color:#555;cursor:pointer;padding:0 2px}
.star-picker button.active{color:var(--gold)}
.review-fields{display:grid;gap:10px}
.review-fields textarea{min-height:100px;resize:vertical}
.review-submit{margin-top:12px}
#reviewMessage{display:block;margin-top:9px;color:var(--gold2)}
.reviews-list{display:grid;gap:14px;margin-top:20px}
.review-card{border:1px solid var(--line);padding:20px;background:#090909}
.review-card-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.review-card strong{display:block;margin-bottom:4px}
.review-date{color:var(--muted);font-size:13px;white-space:nowrap}
.review-card p{line-height:1.65;margin:12px 0 0}
.store-badge{display:inline-block;color:var(--gold2);font-size:12px;border:1px solid var(--gold);padding:4px 7px;margin-top:10px;text-transform:uppercase;letter-spacing:.08em}
.store-reply{margin-top:14px;padding:14px;border-left:2px solid var(--gold);background:rgba(199,154,74,.06)}
.store-reply strong{color:var(--gold2)}
.owner-review-actions{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}
.owner-review-actions button{background:transparent;color:var(--gold2);border:1px solid var(--line);padding:8px 10px;cursor:pointer}
.empty-reviews{color:var(--muted);padding:22px 0}
@media(max-width:760px){.product-modal-scroll{padding:18px}.reviews-head{display:block}.reviews-summary{text-align:left;justify-items:start;margin-top:14px}.owner-access{margin-left:0}.review-card-head{display:block}.review-date{display:block;margin-top:8px}}

/* Conta do cliente e avaliações após entrega */
.account-content-wide{width:min(720px,92vw);max-height:84vh;overflow:auto}
.account-tabs{display:flex;gap:8px;margin:20px 0;border-bottom:1px solid rgba(199,154,74,.25)}
.account-tabs button{background:none;border:0;color:#aaa49a;padding:12px 14px;cursor:pointer;border-bottom:2px solid transparent;font-weight:700}
.account-tabs button.active{color:#efd18d;border-bottom-color:#c79a4a}
.account-panel{display:none}.account-panel.active{display:block}
.account-orders-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px}
.account-orders-head h3{margin:0 0 6px}.account-orders-head p{margin:0;color:#aaa49a;font-size:.92rem}
.account-orders{display:grid;gap:14px}
.account-order{border:1px solid rgba(199,154,74,.25);background:#0d0d0d;padding:16px;border-radius:12px}
.account-order-top{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}
.order-status{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;padding:6px 9px;border-radius:999px;border:1px solid rgba(199,154,74,.35);color:#efd18d}
.order-status.pending{color:#d8d0c2}.order-status.delivered{background:rgba(199,154,74,.12)}
.order-item{display:grid;grid-template-columns:56px 1fr auto;gap:12px;align-items:center;padding:10px 0;border-top:1px solid rgba(255,255,255,.07)}
.order-item img{width:56px;height:66px;object-fit:cover;border-radius:7px}.order-item strong{display:block}.order-item small{color:#aaa49a}
.order-item-actions{display:flex;gap:8px;align-items:center}.order-item-actions button{white-space:nowrap}
.review-done{font-size:.82rem;color:#efd18d}
.verified-review-note{margin:12px 0 22px;color:#aaa49a;font-size:.92rem}
.verified-badge{display:inline-flex;margin-top:8px;font-size:.74rem;text-transform:uppercase;letter-spacing:.08em;color:#efd18d}
.review-account-modal textarea{min-height:130px;width:100%;margin:14px 0;padding:14px;background:#080808;color:#f5f1e8;border:1px solid rgba(199,154,74,.28);border-radius:8px;resize:vertical}
@media(max-width:640px){.account-orders-head{display:block}.account-orders-head .owner-access{margin-top:12px}.order-item{grid-template-columns:50px 1fr}.order-item-actions{grid-column:1/-1}.account-content-wide{width:94vw}}

/* Ajustes finais: ações compactas, avaliações e filtros */
.product-actions{display:flex;align-items:center;gap:10px;max-width:360px;margin-top:14px}
.add-cart-compact{min-height:42px!important;height:42px!important;padding:0 16px!important;font-size:12px!important;letter-spacing:.08em!important;flex:0 1 245px!important;width:auto!important}
.add-cart-compact svg{width:18px!important;height:18px!important}
.favorite-icon-button{width:42px!important;height:42px!important;min-width:42px!important;padding:9px!important}
.reviews-jump{display:inline-flex!important;width:auto!important;min-height:34px!important;padding:7px 12px!important;margin-top:12px!important;font-size:11px!important;letter-spacing:.08em!important;border-radius:2px!important}
.reviews-section{padding-top:24px!important;margin-top:14px!important}
.reviews-head h3{font-size:22px!important;margin:0 0 4px!important}
.reviews-head .eyebrow{font-size:10px!important;margin-top:5px!important;margin-bottom:0!important}
.reviews-summary strong{font-size:25px!important}
.reviews-toolbar{margin-top:14px!important}
.review-card{padding:16px!important}
.verified-review-note{font-size:11px!important}

.category-filter-bar{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 24px;padding:12px;border:1px solid rgba(199,154,74,.22);background:rgba(255,255,255,.015)}
.category-filter-bar button{border:1px solid rgba(199,154,74,.32);background:#0a0a0a;color:#d7d0c3;padding:9px 14px;cursor:pointer;text-transform:uppercase;letter-spacing:.08em;font-size:11px;transition:.2s}
.category-filter-bar button:hover,.category-filter-bar button.active{background:var(--gold);border-color:var(--gold);color:#080808}
.category-card.category-hidden{display:none}
.toolbar{display:flex!important;gap:10px!important;flex-wrap:wrap!important}
.toolbar input{flex:2 1 240px!important}
.toolbar select{flex:1 1 170px!important;min-width:160px!important}
#categoryFilter{border:1px solid rgba(199,154,74,.3);background:#0a0a0a;color:#f5f1e8;padding:12px}
@media(max-width:640px){
 .product-actions{max-width:300px;gap:8px}
 .add-cart-compact{flex-basis:220px!important;padding:0 12px!important;font-size:11px!important}
 .reviews-head{gap:10px!important}
 .reviews-head h3{font-size:19px!important}
 .category-filter-bar{gap:7px;padding:9px}
 .category-filter-bar button{padding:8px 10px;font-size:10px}
}


/* Linhas de camisetas, cálculo de frete e avaliações abaixo da foto */
.shirt-line-filters{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:-6px 0 22px;padding:12px;border:1px solid rgba(199,154,74,.22);background:#090909}
.shirt-line-filters.hidden{display:none}
.shirt-line-filters span{color:#aaa49a;font-size:11px;text-transform:uppercase;letter-spacing:.1em;margin-right:4px}
.shirt-line-filters button{border:1px solid rgba(199,154,74,.35);background:#0b0b0b;color:#e6ded1;padding:8px 12px;font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.shirt-line-filters button:hover,.shirt-line-filters button.active{background:var(--gold);color:#080808;border-color:var(--gold)}
.gallery-reviews-jump{margin:6px 10px 16px!important}
.shipping-calculator{margin-top:17px;padding-top:15px;border-top:1px solid rgba(199,154,74,.22);max-width:360px}
.shipping-calculator label{margin:0 0 8px!important;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#efd18d}
.shipping-row{display:flex;gap:8px}
.shipping-row input{min-width:0;flex:1;height:40px;background:#0b0b0b;border:1px solid rgba(255,255,255,.15);color:#fff;padding:0 12px}
.shipping-row button{height:40px;border:1px solid var(--gold);background:transparent;color:var(--gold2);padding:0 14px;font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.shipping-calculator small{display:block;margin-top:8px;color:#aaa49a;line-height:1.5}
.shipping-calculator small.shipping-error{color:#e3a4a4}
.shipping-calculator small.shipping-success{color:#d7c695}
@media(max-width:650px){.gallery-reviews-jump{margin-left:10px!important}.shipping-calculator{max-width:100%}.shirt-line-filters{margin-top:0}}

/* Cotação de frete por CEP — origem Itajaí/SC */
.shipping-row button:disabled{opacity:.6;cursor:wait}
.shipping-options{display:block!important;margin-top:12px!important}
.shipping-destination{display:block;margin-bottom:9px;color:#d7c695;line-height:1.45}
.shipping-option{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 12px;margin-top:7px;border:1px solid rgba(199,154,74,.22);background:rgba(255,255,255,.018)}
.shipping-option span{display:flex;flex-direction:column;gap:2px}
.shipping-option b{font-size:12px;color:#f5f1e8;font-weight:600}
.shipping-option small{margin:0!important;color:#aaa49a!important;font-size:11px}
.shipping-option>strong{white-space:nowrap;color:#efd18d;font-size:13px}
.shipping-options em{display:block;margin-top:8px;color:#777;font-size:10px;line-height:1.4;font-style:normal}

/* Seleção de PAC ou SEDEX e resumo da sacola */
.shipping-option{width:100%;color:inherit;text-align:left;cursor:pointer}
.shipping-option:hover,.shipping-option.selected{border-color:var(--gold);background:rgba(199,154,74,.09)}
.shipping-option.selected{box-shadow:inset 3px 0 0 var(--gold)}
.cart-summary-line{display:flex;justify-content:space-between;gap:16px;padding:5px 0;color:#aaa49a;font-size:.88rem}
.cart-summary-line strong{color:#d8d0c2;text-align:right}
.drawer-foot .total{margin-top:8px;padding-top:10px;border-top:1px solid rgba(199,154,74,.22)}


/* Galeria de produto: frente, verso e detalhes */
.gallery-viewport{position:relative;height:520px;overflow:hidden;touch-action:pan-y;background:#050505;outline:none;display:grid;place-items:center}
.gallery-main-image{width:100%;height:100%;object-fit:contain;-webkit-user-select:none;user-select:none;transition:opacity .18s ease,transform .18s ease}
.gallery-main-image.changing{opacity:.25;transform:scale(.985)}
.gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:44px;height:44px;border-radius:50%;border:1px solid rgba(239,209,141,.7);background:rgba(5,5,5,.72);color:var(--gold2);font-size:2rem;line-height:1;display:grid;place-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}
.gallery-arrow:hover{background:var(--gold);color:#080604}
.gallery-prev{left:14px}.gallery-next{right:14px}
.gallery-counter{position:absolute;right:14px;bottom:14px;background:rgba(0,0,0,.72);border:1px solid rgba(255,255,255,.15);padding:7px 10px;border-radius:999px;font-size:.76rem;letter-spacing:.08em}
.swipe-hint{position:absolute;left:14px;bottom:14px;background:rgba(0,0,0,.68);padding:7px 10px;border-radius:999px;color:#d7d0c6;font-size:.72rem;letter-spacing:.06em}
.thumbs{align-items:flex-start}
.thumb-button{width:78px;background:transparent;border:1px solid transparent;color:var(--muted);padding:3px;flex:0 0 auto;text-align:center}
.thumb-button img{width:70px;height:70px;object-fit:cover;border:0}
.thumb-button span{display:block;padding:5px 2px 2px;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em}
.thumb-button.active{border-color:var(--gold);color:var(--gold2)}
@media(max-width:760px){.gallery-viewport{height:min(62vh,520px)}.gallery-arrow{width:38px;height:38px}.swipe-hint{display:block}.modal-grid{grid-template-columns:1fr}.gallery{min-height:0}}
@media(min-width:761px){.swipe-hint{opacity:.72}}


/* Galeria ajustada: peça completa sem espaço excedente */
.gallery-viewport{height:auto!important;aspect-ratio:var(--gallery-ratio,4/5);max-height:none!important;min-height:0;background:#050505}
.gallery-main-image{object-fit:contain!important;cursor:zoom-in;background:#050505}
.gallery-zoom-button{position:absolute;left:14px;bottom:14px;z-index:3;border:1px solid rgba(239,209,141,.72);background:rgba(5,5,5,.78);color:var(--gold2);padding:8px 11px;border-radius:999px;display:flex;align-items:center;gap:6px;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}
.gallery-zoom-button:hover{background:var(--gold);color:#080604}
.gallery-counter{bottom:14px}
.swipe-hint{bottom:54px}
.zoom-viewer{position:fixed;inset:0;z-index:120;background:rgba(0,0,0,.97);display:none;grid-template-rows:auto 1fr auto;color:#fff}
.zoom-viewer.show{display:grid}
.zoom-toolbar{min-height:64px;padding:10px 18px;border-bottom:1px solid rgba(255,255,255,.12);display:flex;align-items:center;justify-content:space-between;gap:16px;background:#080808}
.zoom-toolbar>span{font-family:Georgia,serif;color:var(--gold2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.zoom-actions{display:flex;align-items:center;gap:8px}
.zoom-actions button{border:1px solid rgba(255,255,255,.2);background:#111;color:#fff;min-width:40px;height:40px;padding:0 12px}
.zoom-actions button:hover{border-color:var(--gold);color:var(--gold2)}
.zoom-actions #zoomClose{font-size:1.7rem}
.zoom-actions strong{min-width:54px;text-align:center;font-size:.82rem}
.zoom-stage{overflow:auto;display:grid;place-items:center;padding:24px;touch-action:pan-x pan-y pinch-zoom}
.zoom-stage img{display:block;max-width:100%;max-height:calc(100vh - 145px);object-fit:contain;transform:scale(var(--zoom-scale,1));transform-origin:center center;transition:transform .12s ease;cursor:zoom-in}
.zoom-help{text-align:center;color:#aaa;padding:10px 15px 14px;background:#080808}
@media(max-width:760px){.gallery-viewport{height:auto!important;max-height:none!important}.gallery-zoom-button span{display:none}.zoom-toolbar{align-items:flex-start}.zoom-toolbar>span{max-width:28vw}.zoom-actions{gap:4px}.zoom-actions button{min-width:36px;height:36px;padding:0 8px}.zoom-actions #zoomReset{display:none}.zoom-stage{padding:10px}.zoom-help{font-size:.7rem}}

/* ==========================================================
   10. ÁREA DO CLIENTE — LAYOUT DEFINITIVO
   ========================================================== */
.customer-account-modal {
  position: fixed;
  z-index: 1000;
  top: 50%;
  left: 50%;
  width: min(1260px, calc(100vw - 32px));
  max-height: calc(100vh - 32px);
  overflow-y: auto;
  overflow-x: auto;
  visibility: hidden;
  opacity: 0;
  border: 1px solid var(--gold);
  background: #0a0a0a;
  color: var(--text);
  box-shadow: 0 32px 110px rgba(0, 0, 0, .84);
  transform: translate(-50%, -48%) scale(.985);
  transition: opacity .2s ease, transform .2s ease, visibility .2s ease;
}

.customer-account-modal.show {
  visibility: visible;
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
}

.customer-account-modal:not(.is-authenticated) .customer-account-shell { grid-template-columns: 1fr; }
.customer-account-modal:not(.is-authenticated) .customer-account-sidebar { display: none; }

.customer-account-modal .modal-close {
  position: fixed;
  top: 14px;
  right: 18px;
  z-index: 20;
  color: #fff;
  font-size: 34px;
  line-height: 1;
}

.customer-account-shell {
  display: grid;
  grid-template-columns: minmax(220px, 300px) minmax(0, 1fr);
  align-items: start;
  width: 100%;
  min-height: 100%;
  overflow-x: auto;
}

.customer-account-sidebar {
  min-width: 0;
  align-self: stretch;
  padding: 40px 28px 28px;
  border-right: 1px solid rgba(199, 154, 74, .65);
  background: linear-gradient(145deg, #171717 0%, #0b0b0b 65%, #080808 100%);
}

.customer-profile-head {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 0 8px 28px;
  border-bottom: 1px solid rgba(199, 154, 74, .42);
}

.customer-avatar {
  flex: 0 0 72px;
  width: 72px;
  height: 72px;
  display: grid;
  place-items: center;
  border: 2px solid var(--gold);
  border-radius: 50%;
  background: rgba(255, 255, 255, .02);
  color: var(--gold2);
  font-size: 26px;
  font-weight: 800;
}

.customer-profile-head small,
.customer-profile-head strong { display: block; }
.customer-profile-head small { color: #eee8df; font-size: 16px; }
.customer-profile-head strong { margin-top: 4px; color: #fff; font-size: 22px; line-height: 1.15; }

.customer-account-nav {
  display: grid;
  gap: 5px;
  margin-top: 20px;
}

.customer-account-nav button {
  min-height: 60px;
  width: 100%;
  display: flex;
  align-items: center;
  gap: 15px;
  padding: 14px 16px;
  border: 0;
  border-left: 3px solid transparent;
  background: transparent;
  color: #eee9df;
  text-align: left;
  font-size: 15px;
  line-height: 1.3;
  white-space: normal;
}

.customer-account-nav button span {
  width: 28px;
  color: #fff;
  font-size: 21px;
  text-align: center;
}

.customer-account-nav button:hover,
.customer-account-nav button.active {
  color: var(--gold2);
  background: linear-gradient(90deg, rgba(199,154,74,.21), rgba(199,154,74,.07));
}
.customer-account-nav button.active { border-left-color: var(--gold); }
.customer-account-nav .customer-logout {
  margin-top: 16px;
  padding-top: 22px;
  border-top: 1px solid rgba(199, 154, 74, .38);
  color: #b8b1a7;
}

.customer-account-main {
  min-width: 0;
  min-height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 48px clamp(28px, 4vw, 58px) 48px;
  overflow-x: auto;
  background:
    radial-gradient(circle at 82% 18%, rgba(199,154,74,.10), transparent 31%),
    linear-gradient(135deg, #111 0%, #090909 72%);
}

.customer-account-main h2,
.customer-account-main h3,
.customer-account-main h4 { color: var(--text); }
.customer-account-main p,
.customer-account-main small { color: var(--muted); }
.customer-account-main .eyebrow { color: var(--gold2); }


.account-auth-panel {
  width: 100%;
  max-width: 790px;
  min-width: 0;
  margin: auto;
}
.auth-brand { margin: 0 0 22px; text-align: center; }
.auth-brand img {
  width: 92px;
  height: 92px;
  margin: 0 auto 2px;
  object-fit: contain;
  filter: drop-shadow(0 8px 22px rgba(199,154,74,.16));
}
.auth-brand .eyebrow { display: none; }
.auth-brand h2 {
  margin: 10px 0;
  font: 500 clamp(32px, 4.2vw, 62px)/1.08 Georgia, 'Times New Roman', serif;
  letter-spacing: -.025em;
  white-space: normal;
  word-break: normal;
  overflow-wrap: normal;
}
.auth-brand p {
  max-width: 620px;
  margin: 0 auto;
  color: #d2cdc5;
  font-size: 15px;
  line-height: 1.55;
}

.social-login-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.social-login {
  width: 100%;
  min-width: 0;
  height: 54px;
  padding: 0 14px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.32);
  background: rgba(255,255,255,.025);
  color: #fff;
  font-weight: 500;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.social-login:hover { border-color: var(--gold2); background: rgba(199,154,74,.08); }
.social-login:disabled { cursor: default; opacity: .72; }
.social-login b { display: inline-grid; place-items: center; margin-right: 8px; font-size: 18px; }

.auth-divider {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 20px 0;
  color: #aaa;
}
.auth-divider::before,
.auth-divider::after { content: ''; flex: 1; height: 1px; background: rgba(255,255,255,.15); }
.auth-divider span { font-size: 12px; text-transform: uppercase; letter-spacing: .13em; }

.auth-form { display: grid; gap: 9px; width: 100%; }
.auth-form label { margin-top: 4px; color: #fff; font-size: 13px; font-weight: 600; }
.auth-form input,
.customer-account-main select {
  width: 100%;
  min-width: 0;
  height: 50px;
  padding: 0 14px;
  border: 1px solid rgba(255,255,255,.30);
  border-radius: 0;
  outline: 0;
  background: rgba(255,255,255,.025);
  color: #fff;
}
.auth-form input:focus,
.customer-account-main select:focus { border-color: var(--gold); }
.password-field { position: relative; width: 100%; min-width: 0; }
.password-field input { padding-right: 82px; }
.password-field button {
  position: absolute;
  top: 8px;
  right: 8px;
  height: 34px;
  border: 0;
  background: transparent;
  color: var(--gold2);
}
.auth-form .primary {
  width: 100%;
  min-height: 54px;
  margin-top: 8px;
  border: 0;
  background: linear-gradient(90deg, #d8a843, #efc45d, #d7a33c);
  color: #080604;
  font: 700 16px Georgia, 'Times New Roman', serif;
  letter-spacing: .12em;
}
.auth-link,
.auth-switch button { border: 0; background: transparent; color: var(--gold2); }
.auth-link { padding: 5px; text-align: center; }
.auth-switch { margin: 4px 0; color: #ddd6cc; text-align: center; }
.auth-message { display: block; min-height: 20px; color: #d8b66c; text-align: center; }
.auth-message.error { color: #df8b83; }
.forgot-icon { color: var(--gold); font-size: 34px; text-align: center; }

.is-hidden { display: none !important; }
.account-private-area { width: 100%; min-width: 0; }
.customer-account-sidebar.is-locked .customer-account-nav { opacity: .32; pointer-events: none; }
.customer-account-sidebar.is-locked .customer-profile-head { opacity: .72; }
.account-panel { display: none; width: 100%; }
.account-panel.active { display: block; }
.account-orders-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; margin-bottom: 18px; }
.account-orders { display: grid; gap: 18px; }
.account-order,
.detailed-order,
.account-empty-order,
.account-favorite-card { border: 1px solid rgba(199,154,74,.25); background: #111; color: var(--text); }
.account-order,
.detailed-order { padding: 20px; }
.account-order-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-bottom: 14px; border-bottom: 1px solid rgba(255,255,255,.08); }
.order-status { padding: 6px 9px; border: 1px solid rgba(199,154,74,.35); border-radius: 999px; color: var(--gold2); font-size: .78rem; text-transform: uppercase; letter-spacing: .08em; }
.order-finance-grid { display: grid; grid-template-columns: repeat(5, 1fr); border-bottom: 1px solid rgba(255,255,255,.08); }
.order-finance-grid > div { padding: 16px 12px; border-right: 1px solid rgba(255,255,255,.07); }
.order-finance-grid > div:last-child { border-right: 0; }
.order-finance-grid span,
.order-delivery-grid span { display: block; margin-bottom: 7px; color: #888; font-size: 10px; text-transform: uppercase; letter-spacing: .08em; }
.order-total-box { background: rgba(199,154,74,.07); }
.order-timeline { display: grid; grid-template-columns: repeat(7, 1fr); padding: 26px 4px 18px; }
.timeline-step { position: relative; color: #777; text-align: center; }
.timeline-step::before { content: ''; position: absolute; top: 17px; right: 50%; left: -50%; height: 3px; background: #333; }
.timeline-step:first-child::before { display: none; }
.timeline-step span { position: relative; z-index: 2; width: 34px; height: 34px; margin: auto; display: grid; place-items: center; border-radius: 50%; background: #333; color: #fff; }
.timeline-step small { display: block; margin-top: 9px; font-size: 10px; line-height: 1.25; }
.timeline-step.done::before,
.timeline-step.done span { background: var(--gold); }
.timeline-step.done small { color: var(--gold2); font-weight: 700; }
.timeline-step.current span { box-shadow: 0 0 0 5px rgba(199,154,74,.18); }
.order-delivery-grid { display: grid; grid-template-columns: 1fr 1fr 2fr; gap: 18px; margin-bottom: 18px; padding: 17px; background: #0a0a0a; }
.account-favorites { display: grid; gap: 12px; }
.account-favorite-card { display: grid; grid-template-columns: 76px 1fr auto; align-items: center; gap: 14px; padding: 12px; }
.account-favorite-card img { width: 76px; height: 86px; object-fit: contain; background: #080808; }
.account-favorite-card span { display: block; margin-top: 5px; color: var(--gold2); }
.account-favorite-card button,
.owner-access { border: 1px solid var(--gold); background: transparent; color: var(--gold2); padding: 9px 12px; }
.account-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin: 22px 0; }
.account-form-grid .wide { grid-column: 1 / -1; }
.account-form-grid label { display: block; margin-bottom: 7px; }

/* Mantém a proporção ampla em notebooks, inclusive com zoom do navegador. */
@media (max-width: 980px) and (min-width: 681px) {
  .customer-account-modal {
    width: calc(100vw - 14px);
    max-height: calc(100vh - 14px);
  }
  .customer-account-shell {
    grid-template-columns: minmax(190px, 240px) minmax(0, 1fr);
  }
  .customer-account-sidebar { padding: 30px 16px 20px; }
  .customer-account-main { min-width: 0; }
  .customer-avatar { flex-basis: 58px; width: 58px; height: 58px; }
  .customer-profile-head strong { font-size: 18px; }
  .customer-account-nav button { min-height: 52px; padding: 11px 10px; font-size: 13px; }
  .customer-account-main { padding: 22px 24px 28px; }
  .auth-brand img { width: 72px; height: 72px; }
  .auth-brand h2 { font-size: clamp(30px, 5.2vw, 48px); }
  .auth-brand p { font-size: 13px; }
  .social-login { height: 48px; padding: 0 8px; font-size: 12px; }
  .auth-divider { margin: 14px 0; }
  .auth-form input { height: 46px; }
  .auth-form .primary { min-height: 48px; }
  .order-finance-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 680px) {
  .customer-account-modal {
    width: calc(100vw - 12px);
    max-height: calc(100vh - 12px);
  }
  .customer-account-shell { display: block; }
  .customer-account-sidebar {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    height: auto;
    padding: 34px 14px 10px;
    border-right: 0;
    border-bottom: 1px solid rgba(199,154,74,.5);
  }
  .customer-profile-head { padding-bottom: 14px; }
  .customer-avatar { flex-basis: 54px; width: 54px; height: 54px; }
  .customer-account-nav { display: flex; overflow-x: auto; }
  .customer-account-nav button { min-height: 48px; padding: 10px 13px; border-left: 0; border-bottom: 3px solid transparent; }
  .customer-account-nav button.active { border-bottom-color: var(--gold); }
  .customer-account-main { width: 100%; min-width: 0; height: auto; padding: 24px 16px 36px; }
  .auth-brand h2 { white-space: normal; }
  .social-login-row { grid-template-columns: 1fr; }
  .account-form-grid,
  .order-delivery-grid { grid-template-columns: 1fr; }
  .account-form-grid .wide { grid-column: auto; }
  .account-favorite-card { grid-template-columns: 60px 1fr; }
  .account-favorite-card button { grid-column: 1 / -1; }
}

/* Bloco duplicado removido — havia duas definições conflitantes do
   mesmo modal brigando entre si, o que fazia a coluna esquerda ficar
   estreita/cortada em notebooks e com zoom do navegador. Mantida
   apenas a definição única acima, com a coluna esquerda mais larga. */

/* Pagamentos e segurança da conta */
.social-login-row.single{grid-template-columns:1fr}
.payment-method-grid{display:grid;gap:12px;margin:24px 0}
.payment-choice{display:flex;gap:14px;align-items:flex-start;padding:17px;border:1px solid rgba(255,255,255,.12);background:#0d0d0d;cursor:pointer}
.payment-choice:has(input:checked){border-color:var(--gold);box-shadow:0 0 0 1px rgba(199,154,74,.2)}
.payment-choice input{margin-top:4px;accent-color:var(--gold)}
.payment-choice span,.payment-choice b,.payment-choice small{display:block}
.payment-choice small{color:var(--muted);margin-top:5px;line-height:1.5}
.security-form{display:grid;gap:10px;max-width:560px;margin-top:22px}
.security-form>input,.security-form .password-field input{width:100%;background:#0b0b0b;border:1px solid rgba(255,255,255,.14);color:#fff;padding:13px}
.security-form .primary{margin-top:10px}


/* =========================================================
   AJUSTES LIOR — perfil, endereço, rastreio e categorias
   Mantém o menu original da loja sem adicionar "SHOP".
   ========================================================= */

/* Sobe levemente o símbolo circular da LIOR na tela inicial. */
.home-feature-seal{
  transform:translateY(-34px);
  transition:transform .25s ease;
}

/* Categorias com fotografia da própria coleção sobre fundo premium. */
.category-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.category-card{
  --category-position:center;
  position:relative;
  min-height:270px;
  padding:0;
  overflow:hidden;
  isolation:isolate;
  border:1px solid rgba(199,154,74,.42);
  background:#120d09;
  color:#fff;
  text-align:left;
  justify-content:flex-end;
  box-shadow:0 18px 42px rgba(0,0,0,.28);
}
.category-card::before{
  content:'';
  position:absolute;
  inset:-2px;
  z-index:-2;
  background-image:var(--category-image);
  background-size:cover;
  background-position:var(--category-position);
  filter:saturate(.82) contrast(1.06) brightness(.82);
  transform:scale(1.025);
  transition:transform .45s ease,filter .45s ease;
}
.category-card::after{
  content:'';
  position:absolute;
  inset:0;
  z-index:-1;
  background:
    linear-gradient(90deg,rgba(5,4,3,.97) 0%,rgba(7,5,4,.88) 36%,rgba(7,5,4,.40) 67%,rgba(7,5,4,.08) 100%),
    linear-gradient(0deg,rgba(0,0,0,.78),transparent 72%),
    radial-gradient(circle at 82% 18%,rgba(199,154,74,.17),transparent 34%);
}
.category-card:nth-child(even)::after{
  background:
    linear-gradient(270deg,rgba(5,4,3,.97) 0%,rgba(7,5,4,.88) 36%,rgba(7,5,4,.40) 67%,rgba(7,5,4,.08) 100%),
    linear-gradient(0deg,rgba(0,0,0,.78),transparent 72%),
    radial-gradient(circle at 18% 18%,rgba(199,154,74,.17),transparent 34%);
}
.category-card:hover::before{transform:scale(1.075);filter:saturate(.92) contrast(1.08) brightness(.9)}
.category-card:hover{border-color:var(--gold);box-shadow:0 22px 50px rgba(0,0,0,.38),0 0 0 1px rgba(199,154,74,.08)}
.category-card-content{
  position:relative;
  z-index:2;
  width:58%;
  min-height:270px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  padding:28px 25px;
}
.category-card:nth-child(even) .category-card-content{
  margin-left:auto;
  align-items:flex-end;
  text-align:right;
}
.category-card .icon{
  width:42px;
  height:42px;
  margin:0 0 12px;
  display:grid;
  place-items:center;
  border:1px solid rgba(199,154,74,.65);
  border-radius:50%;
  background:rgba(5,5,5,.72);
  color:var(--gold2);
  font-size:1.45rem;
  box-shadow:0 7px 24px rgba(0,0,0,.25);
}
.category-card h3{
  margin:0 0 7px;
  color:#fff;
  font-family:Georgia,'Times New Roman',serif;
  font-size:clamp(1.55rem,2.4vw,2.15rem);
  font-weight:500;
  letter-spacing:.015em;
}
.category-card p{
  margin:0;
  color:#ddd4c7;
  font-size:.88rem;
  line-height:1.55;
}
.category-card-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:17px;
  padding-bottom:4px;
  border-bottom:1px solid rgba(239,209,141,.55);
  color:var(--gold2);
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.category-card-link b{font-size:.92rem}

/* Perfil e endereço: remove qualquer fundo branco e aplica a paleta LIOR. */
#accountProfilePanel,
#accountAddressesPanel{
  max-width:920px;
  margin:0 auto;
  padding:clamp(22px,3vw,34px);
  border:1px solid rgba(199,154,74,.34);
  background:
    radial-gradient(circle at 92% 8%,rgba(199,154,74,.10),transparent 28%),
    linear-gradient(145deg,rgba(20,20,20,.98),rgba(8,8,8,.98));
  box-shadow:0 24px 60px rgba(0,0,0,.28);
}
#accountProfilePanel h2,
#accountAddressesPanel h2{margin-top:5px}
.account-form-grid{
  gap:13px;
  margin:19px 0 15px;
}
.account-form-grid label{
  margin-bottom:6px;
  color:#d8cfbf;
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.account-form-grid input,
#accountProfilePanel input,
#accountAddressesPanel input{
  width:100%;
  height:44px;
  padding:0 13px;
  border:1px solid rgba(199,154,74,.38)!important;
  border-radius:2px;
  outline:0;
  background:linear-gradient(180deg,#111,#0a0a0a)!important;
  color:#f6f1e8!important;
  caret-color:var(--gold2);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 0 0 1px rgba(0,0,0,.18);
  -webkit-text-fill-color:#f6f1e8!important;
}
.account-form-grid input::placeholder{color:#756f67;opacity:1}
.account-form-grid input:focus{
  border-color:var(--gold)!important;
  box-shadow:0 0 0 3px rgba(199,154,74,.10),inset 0 1px 0 rgba(255,255,255,.035);
}
.account-form-grid input:-webkit-autofill,
.account-form-grid input:-webkit-autofill:hover,
.account-form-grid input:-webkit-autofill:focus,
#accountProfilePanel input:-webkit-autofill,
#accountAddressesPanel input:-webkit-autofill{
  -webkit-text-fill-color:#f6f1e8!important;
  caret-color:#f6f1e8;
  -webkit-box-shadow:0 0 0 1000px #0d0d0d inset!important;
  box-shadow:0 0 0 1000px #0d0d0d inset!important;
  transition:background-color 9999s ease-out 0s;
}
#saveAccount,
#saveAddress{
  width:auto!important;
  min-width:132px;
  min-height:38px!important;
  padding:9px 17px!important;
  border:1px solid var(--gold)!important;
  background:transparent!important;
  color:var(--gold2)!important;
  font-size:.68rem!important;
  letter-spacing:.10em!important;
  box-shadow:none!important;
}
#saveAccount:hover,
#saveAddress:hover{
  background:var(--gold)!important;
  color:#080604!important;
}
#accountMessage,
#addressMessage{display:inline-block;margin-left:10px;color:#d6c391;vertical-align:middle}

/* Acompanhamento do pedido reduzido às quatro etapas solicitadas. */
.order-progress-wrap{
  margin:18px 0;
  padding:20px 18px 16px;
  border:1px solid rgba(199,154,74,.28);
  background:
    radial-gradient(circle at 92% 24%,rgba(199,154,74,.10),transparent 26%),
    linear-gradient(145deg,#0b0b0b,#111);
}
.order-progress-title{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:7px;
}
.order-progress-title>span{
  color:#f4ede1;
  font:500 1.05rem Georgia,'Times New Roman',serif;
}
.order-progress-title small{font-size:.72rem;text-align:right}
.order-timeline{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  padding:20px 4px 2px;
}
.timeline-step{min-width:0}
.timeline-step::before{
  top:20px;
  height:2px;
  background:#332d25;
}
.timeline-step span{
  width:40px;
  height:40px;
  border:1px solid rgba(199,154,74,.34);
  background:#17130f;
  color:#8d8478;
  font-size:.82rem;
}
.timeline-step.done::before{background:linear-gradient(90deg,#9f7633,var(--gold2))}
.timeline-step.done span{
  border-color:var(--gold);
  background:#0d0b08;
  color:var(--gold2);
  box-shadow:inset 0 0 0 1px rgba(199,154,74,.18);
}
.timeline-step.current span{box-shadow:0 0 0 5px rgba(199,154,74,.13),0 0 24px rgba(199,154,74,.22)}
.timeline-step.completed span{background:rgba(199,154,74,.14)}
.timeline-step small{margin-top:10px;line-height:1.25}
.timeline-step small b{
  display:block;
  color:#d9d1c4;
  font-size:.72rem;
  letter-spacing:.02em;
}
.timeline-step.done small b{color:var(--gold2)}
.timeline-step small em{
  display:block;
  margin-top:4px;
  color:#77716a;
  font-size:.60rem;
  font-style:normal;
}
.timeline-cart-icon{
  width:21px;
  height:21px;
  fill:none;
  stroke:currentColor;
  stroke-width:2.3;
  stroke-linecap:round;
  stroke-linejoin:round;
}

@media(max-width:900px){
  .home-feature-seal{transform:translateY(-18px)}
  .category-grid{grid-template-columns:1fr 1fr}
  .category-card-content{width:64%}
  .order-progress-title{align-items:flex-start;flex-direction:column;gap:5px}
  .order-progress-title small{text-align:left}
}
@media(max-width:650px){
  .home-feature-seal{transform:translateY(-10px)}
  .category-grid{grid-template-columns:1fr}
  .category-card{min-height:235px}
  .category-card-content{width:67%;min-height:235px;padding:22px 18px}
  .category-card:nth-child(even) .category-card-content{align-items:flex-start;text-align:left;margin-left:0}
  .category-card:nth-child(even)::after{
    background:linear-gradient(90deg,rgba(5,4,3,.97) 0%,rgba(7,5,4,.88) 36%,rgba(7,5,4,.40) 67%,rgba(7,5,4,.08) 100%),linear-gradient(0deg,rgba(0,0,0,.78),transparent 72%);
  }
  #accountProfilePanel,#accountAddressesPanel{padding:20px 16px}
  #saveAccount,#saveAddress{min-width:120px}
  #accountMessage,#addressMessage{display:block;margin:9px 0 0}
  .order-progress-wrap{padding:17px 10px 13px;overflow-x:auto}
  .order-timeline{min-width:520px}
}


/* =========================================================
   REFINO FINAL — cadastro completo, endereço e categorias
   ========================================================= */
.auth-register-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px 14px;
}
.auth-register-grid .wide{grid-column:1/-1}
.auth-register-grid label{display:block;margin:0 0 7px}
.auth-register-grid input{width:100%}

.account-profile-grid,
.account-address-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.account-form-grid select{
  width:100%;
  height:44px;
  padding:0 13px;
  border:1px solid rgba(199,154,74,.38)!important;
  border-radius:2px;
  background:linear-gradient(180deg,#111,#0a0a0a)!important;
  color:#f6f1e8!important;
  outline:0;
}
.account-form-grid select:focus{border-color:var(--gold)!important;box-shadow:0 0 0 3px rgba(199,154,74,.10)}
#accountProfilePanel>p:not(.eyebrow),
#accountAddressesPanel>p:not(.eyebrow){max-width:680px;margin:4px 0 0;color:#aaa49a;line-height:1.55}
.compact-save{border-radius:2px!important}

/* Cartões de categorias iguais ao modelo: foto à esquerda, conteúdo à direita. */
.category-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.category-card{
  min-height:205px;
  display:block;
  border:1px solid rgba(199,154,74,.50);
  border-radius:3px;
  background:#0b0907;
  box-shadow:0 18px 38px rgba(0,0,0,.30);
}
.category-card::before{
  inset:0 auto 0 0;
  width:60%;
  background-size:cover;
  background-position:var(--category-position);
  filter:saturate(.76) contrast(1.08) brightness(.74);
  transform:scale(1.015);
}
.category-card::after,
.category-card:nth-child(even)::after{
  background:
    linear-gradient(90deg,rgba(3,3,3,.05) 0%,rgba(4,4,4,.18) 42%,rgba(6,6,6,.92) 66%,#090909 100%),
    linear-gradient(0deg,rgba(0,0,0,.58),transparent 75%),
    radial-gradient(circle at 82% 18%,rgba(199,154,74,.12),transparent 34%);
}
.category-card-content,
.category-card:nth-child(even) .category-card-content{
  width:45%;
  min-height:205px;
  margin-left:auto;
  padding:18px 15px;
  align-items:flex-start;
  justify-content:center;
  text-align:left;
}
.category-card .icon{
  width:38px;
  height:38px;
  margin:0 0 12px;
  border-color:rgba(199,154,74,.82);
  background:rgba(8,8,8,.80);
  color:var(--gold2);
}
.category-card .icon svg{
  width:22px;
  height:22px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.45;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.category-card h3{
  margin:0 0 8px;
  color:var(--gold2);
  font-family:Arial,Helvetica,sans-serif;
  font-size:1rem;
  font-weight:700;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.category-card p{
  color:#eee8de;
  font-size:.79rem;
  line-height:1.48;
}
.category-card-link{
  margin-top:13px;
  padding:7px 10px;
  border:1px solid rgba(199,154,74,.65);
  color:var(--gold2);
  font-size:.58rem;
  letter-spacing:.08em;
  text-decoration:none;
}
.category-card-link b{font-size:.78rem}
.category-card:hover::before{transform:scale(1.055);filter:saturate(.84) contrast(1.09) brightness(.82)}

@media(max-width:980px){
  .category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .category-card{min-height:220px}
  .category-card-content,.category-card:nth-child(even) .category-card-content{min-height:220px;width:46%}
}
@media(max-width:640px){
  .auth-register-grid,
  .account-profile-grid,
  .account-address-grid{grid-template-columns:1fr}
  .auth-register-grid .wide,
  .account-form-grid .wide{grid-column:auto}
  .category-grid{grid-template-columns:1fr}
  .category-card{min-height:230px}
  .category-card::before{width:63%}
  .category-card-content,.category-card:nth-child(even) .category-card-content{width:48%;min-height:230px;padding:18px 13px}
  .category-card h3{font-size:.92rem}
}

/* =========================================================
   LIOR V3 — fundo integral nas categorias e perfil completo
   ========================================================= */
.home-feature-seal{transform:translateY(-54px)}

/* A fotografia agora ocupa o cartão inteiro, inclusive atrás do texto. */
.category-card::before{
  inset:0;
  width:100%;
  background-size:cover;
  background-position:var(--category-position);
  filter:saturate(.80) contrast(1.10) brightness(.68);
}
.category-card::after,
.category-card:nth-child(even)::after{
  background:
    linear-gradient(90deg,rgba(3,3,3,.10) 0%,rgba(3,3,3,.22) 35%,rgba(5,5,5,.72) 61%,rgba(5,5,5,.96) 100%),
    linear-gradient(0deg,rgba(0,0,0,.68),rgba(0,0,0,.04) 70%),
    radial-gradient(circle at 82% 18%,rgba(199,154,74,.14),transparent 34%);
}
.category-card-content,
.category-card:nth-child(even) .category-card-content{
  width:44%;
  margin-left:auto;
  align-items:flex-start;
  text-align:left;
  background:linear-gradient(90deg,transparent,rgba(4,4,4,.16));
}
.category-card:hover::before{filter:saturate(.88) contrast(1.12) brightness(.76)}

/* Campo de CPF com validação visual. */
.cpf-profile-field{align-self:start}
.cpf-input-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.cpf-input-row input{min-width:0}
.cpf-input-row button{
  min-width:88px;
  padding:0 13px;
  border:1px solid rgba(199,154,74,.58);
  border-radius:2px;
  background:#0a0a0a;
  color:var(--gold2);
  font-size:.67rem;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  cursor:pointer;
}
.cpf-input-row button:hover{background:var(--gold);color:#080808}
.cpf-input-row button:disabled{opacity:.65;cursor:wait}
.cpf-validation-message{display:block;margin-top:7px;color:#aaa49a;line-height:1.4}
.cpf-validation-message.success{color:#84c786}
.cpf-validation-message.error{color:#ef9a9a}
.cpf-validation-message.warning{color:#e7c375}
.cpf-validation-message.loading{color:#d7d0c3}

.gender-fieldset{
  display:flex;
  flex-wrap:wrap;
  gap:10px 18px;
  margin:0;
  padding:13px 14px;
  border:1px solid rgba(199,154,74,.30);
  background:linear-gradient(180deg,#111,#0a0a0a);
}
.gender-fieldset legend{padding:0 7px;color:#d8cfbf;font-size:.72rem;font-weight:700}
.gender-fieldset label{display:inline-flex;align-items:center;gap:7px;margin:0;color:#eee8de;cursor:pointer}
.gender-fieldset input{width:auto!important;height:auto!important;accent-color:var(--gold)}

@media(max-width:980px){
  .category-card-content,.category-card:nth-child(even) .category-card-content{width:48%}
}
@media(max-width:640px){
  .home-feature-seal{transform:translateY(-30px)}
  .category-card::before{width:100%}
  .category-card-content,.category-card:nth-child(even) .category-card-content{width:54%;padding:18px 14px}
  .cpf-input-row{grid-template-columns:1fr}
  .cpf-input-row button{min-height:40px}
}


/* =========================================================
   LIOR V4 — perfil compacto e fotos garantidas nas categorias
   ========================================================= */

/* Formulário mais unido, sem o grande espaço entre CPF e contato. */
#accountProfilePanel{
  max-width:1000px;
  padding:20px 24px 18px;
}
#accountProfilePanel .eyebrow{margin:0 0 4px}
#accountProfilePanel h2{margin:0 0 6px;line-height:1.05}
#accountProfilePanel>p:not(.eyebrow){margin:0 0 9px;line-height:1.4}
.account-profile-grid{
  margin:10px 0 11px;
  column-gap:14px;
  row-gap:6px;
  align-items:start;
}
.account-profile-grid label{margin-bottom:4px}
.account-profile-grid input,
.account-profile-grid select{height:42px}
.cpf-profile-field{
  position:relative;
  align-self:start;
  padding-bottom:10px;
}
.cpf-input-row{gap:8px}
.cpf-validation-message{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  min-height:12px;
  margin:0;
  overflow:hidden;
  color:#aaa49a;
  font-size:.66rem;
  line-height:1.15;
  white-space:nowrap;
  text-overflow:ellipsis;
}
.gender-fieldset{padding:10px 12px;gap:8px 17px}
#saveAccount{margin-top:0}

/* A foto é um elemento real no cartão para funcionar em qualquer navegador. */
.category-card{
  position:relative;
  min-height:220px;
  overflow:hidden;
  isolation:isolate;
  padding:0;
}
.category-card::before{display:none!important}
.category-card-bg{
  position:absolute;
  inset:0;
  z-index:0;
  width:100%;
  height:100%;
  max-width:none;
  object-fit:cover;
  object-position:var(--category-position,center);
  filter:saturate(.88) contrast(1.08) brightness(.82);
  transform:scale(1.015);
  transition:transform .45s ease,filter .45s ease;
  pointer-events:none;
}
.category-card::after,
.category-card:nth-child(even)::after{
  display:block!important;
  z-index:1!important;
  background:
    linear-gradient(90deg,rgba(2,2,2,.05) 0%,rgba(3,3,3,.16) 37%,rgba(4,4,4,.72) 62%,rgba(4,4,4,.96) 100%),
    linear-gradient(0deg,rgba(0,0,0,.55),rgba(0,0,0,.02) 74%),
    radial-gradient(circle at 84% 18%,rgba(199,154,74,.15),transparent 34%)!important;
}
.category-card-content,
.category-card:nth-child(even) .category-card-content{
  position:relative;
  z-index:2;
  width:45%;
  min-height:220px;
  margin-left:auto;
  padding:17px 15px;
  align-items:flex-start;
  justify-content:center;
  text-align:left;
  background:transparent;
}
.category-card:hover .category-card-bg{
  transform:scale(1.06);
  filter:saturate(.96) contrast(1.10) brightness(.9);
}

@media(max-width:980px){
  .category-card,.category-card-content,.category-card:nth-child(even) .category-card-content{min-height:225px}
  .category-card-content,.category-card:nth-child(even) .category-card-content{width:48%}
}
@media(max-width:640px){
  #accountProfilePanel{padding:18px 15px}
  .account-profile-grid{row-gap:9px}
  .cpf-profile-field{padding-bottom:17px}
  .cpf-validation-message{font-size:.64rem;white-space:normal}
  .category-card,.category-card-content,.category-card:nth-child(even) .category-card-content{min-height:235px}
  .category-card-content,.category-card:nth-child(even) .category-card-content{width:53%;padding:16px 13px}
}


/* =========================================================
   LIOR V5 — hero aprovado e categorias exatamente no modelo
   ========================================================= */
.hero-final{
  min-height:0!important;
  padding:0!important;
  display:block!important;
  background:#050505!important;
  overflow:hidden;
}
.hero-final-media{
  position:relative;
  width:100%;
  max-width:1916px;
  margin:0 auto;
  background:#050505;
}
.hero-final-media>img{
  display:block;
  width:100%;
  height:auto;
  max-width:none;
}
.hero-hotspot{
  position:absolute;
  z-index:3;
  display:block;
  border:0;
  border-radius:2px;
  background:transparent;
  color:transparent;
  opacity:0;
}
.hero-hotspot:focus-visible{
  opacity:1;
  outline:3px solid var(--gold2);
  background:rgba(199,154,74,.12);
}
.hero-hotspot-collection{left:5.5%;top:77.7%;width:14.7%;height:10.2%}
.hero-hotspot-instagram{left:21.8%;top:77.7%;width:14.3%;height:10.2%}
.features{margin-top:0}

.category-grid{
  display:grid!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:14px!important;
  align-items:start;
}
.category-image-card{
  grid-column:span 2;
  min-height:0!important;
  padding:0!important;
  display:block!important;
  overflow:hidden;
  border:1px solid rgba(199,154,74,.88)!important;
  border-radius:2px;
  background:#050505!important;
  box-shadow:0 16px 34px rgba(0,0,0,.34);
  isolation:isolate;
}
.category-image-card:nth-child(4){grid-column:2 / span 2}
.category-image-card:nth-child(5){grid-column:4 / span 2}
.category-image-card::before,
.category-image-card::after{display:none!important}
.category-final-image{
  position:static!important;
  inset:auto!important;
  z-index:auto!important;
  display:block;
  width:100%!important;
  height:auto!important;
  max-width:none!important;
  object-fit:contain!important;
  object-position:center!important;
  filter:none!important;
  transform:none!important;
  transition:transform .35s ease,filter .35s ease;
  pointer-events:none;
}
.category-image-card:hover{
  transform:translateY(-3px)!important;
  border-color:var(--gold2)!important;
  box-shadow:0 22px 48px rgba(0,0,0,.48),0 0 0 1px rgba(239,209,141,.14);
}
.category-image-card:hover .category-final-image{
  transform:scale(1.012)!important;
  filter:saturate(1.04) contrast(1.02)!important;
}

@media(max-width:1000px){
  .category-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .category-image-card,
  .category-image-card:nth-child(4),
  .category-image-card:nth-child(5){grid-column:auto!important}
}
@media(max-width:640px){
  .category-grid{grid-template-columns:1fr!important;gap:12px!important}
  .hero-final-media{min-width:760px;left:50%;transform:translateX(-50%)}
  .hero-final{overflow:hidden}
}


/* Ajustes V6: categorias legíveis, retorno e checkout */
.category-image-card{height:auto!important;align-self:start!important;opacity:1!important}
.category-final-image{opacity:1!important;visibility:visible!important;filter:saturate(1.08) contrast(1.05) brightness(1.03)!important}
.category-image-card:hover .category-final-image{filter:saturate(1.12) contrast(1.06) brightness(1.05)!important}
.collection-back{margin:0 0 12px;border:1px solid rgba(199,154,74,.55);background:#080808;color:var(--gold2);padding:9px 14px;text-transform:uppercase;letter-spacing:.09em;font-size:.72rem}
.collection-back:hover{background:var(--gold);color:#080808}
.payment-modal{position:fixed;z-index:90;inset:50% auto auto 50%;transform:translate(-50%,-46%) scale(.98);width:min(760px,94vw);max-height:92vh;overflow:auto;background:#090909;border:1px solid var(--gold);visibility:hidden;opacity:0;transition:.2s;box-shadow:0 30px 90px rgba(0,0,0,.72)}
.payment-modal.show{visibility:visible;opacity:1;transform:translate(-50%,-50%) scale(1)}
.payment-shell{padding:32px}.payment-shell h2{font-family:Georgia,serif;font-size:2.3rem;margin:7px 0 18px}.payment-total{display:flex;justify-content:space-between;align-items:center;padding:15px;border:1px solid rgba(199,154,74,.28);margin-bottom:18px}.payment-total strong{font-size:1.4rem;color:var(--gold2)}
.payment-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:18px}.payment-tabs button{border:1px solid rgba(199,154,74,.38);background:#080808;color:#ddd;padding:12px;text-transform:uppercase;font-weight:700}.payment-tabs button.active{background:var(--gold);color:#080808}.payment-panel{display:none;border:1px solid rgba(199,154,74,.24);padding:20px}.payment-panel.active{display:block}.payment-panel h3{font-family:Georgia,serif;font-size:1.6rem;margin:0 0 8px}.payment-panel p{color:#bdb6ac;line-height:1.6}.pix-grid{display:grid;grid-template-columns:210px 1fr;gap:22px;align-items:center}.pix-qr{background:white;padding:12px}.pix-qr img{width:100%;height:auto}.pix-copy-row{display:flex;gap:8px}.pix-copy-row input{flex:1;background:#050505;border:1px solid rgba(199,154,74,.45);color:white;padding:12px}.pix-copy-row button{border:1px solid var(--gold);background:transparent;color:var(--gold2);padding:0 16px}.payment-panel small{display:block;margin:10px 0 16px;color:#d7c695;line-height:1.5}.payment-panel button:disabled{opacity:.55;cursor:not-allowed}
@media(max-width:650px){.pix-grid{grid-template-columns:1fr}.pix-qr{max-width:230px;margin:auto}.payment-shell{padding:22px}.payment-tabs{grid-template-columns:1fr}.category-final-image{width:100%!important}}


/* LIOR V7 — checkout seguro, sem chave Pix exposta */
.cart-drawer .drawer-foot{background:linear-gradient(180deg,#0b0b0b,#070707);border-top:1px solid rgba(199,154,74,.28);padding:22px}
.cart-field-label{display:block;color:var(--gold2);font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin:10px 0 7px}
.cart-select,.coupon-row input{width:100%;min-height:46px;background:#090909!important;color:#f4efe5!important;border:1px solid rgba(199,154,74,.42)!important;border-radius:0!important;padding:0 13px;font:inherit;outline:none}
.cart-select option{background:#090909;color:#f4efe5}.coupon-row{display:grid;grid-template-columns:1fr auto;gap:8px}.coupon-row button{background:#111;color:var(--gold2);border:1px solid rgba(199,154,74,.52);padding:0 17px;font-weight:800;text-transform:uppercase}
.cart-summary-line,.total{color:#e8e1d6}.cart-summary-line strong,.total strong{color:#fff}.drawer-foot small{color:#9f978b}
.payment-modal{width:min(900px,95vw);background:radial-gradient(circle at 80% 5%,rgba(199,154,74,.09),transparent 32%),#080808;border:1px solid rgba(199,154,74,.75)}
.payment-shell{padding:30px 34px 34px}.checkout-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.checkout-heading h2{margin-bottom:14px}.secure-checkout-badge{border:1px solid rgba(199,154,74,.45);color:#d9bc7a;padding:8px 11px;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.payment-total{background:#0c0c0c;border-color:rgba(199,154,74,.42);padding:17px 18px}.payment-total span{color:#d8d0c4}.payment-total strong{font-size:1.55rem}
.payment-loading{display:flex;gap:14px;align-items:center;padding:22px;border:1px solid rgba(199,154,74,.22);background:#0b0b0b}.payment-loading strong,.payment-loading small{display:block}.payment-loading small{color:#aaa196;margin-top:4px}
.checkout-spinner{display:inline-block;width:28px;height:28px;border:3px solid rgba(199,154,74,.22);border-top-color:var(--gold);border-radius:50%;animation:liorSpin .85s linear infinite;flex:0 0 auto}.checkout-spinner.small{width:18px;height:18px;border-width:2px}@keyframes liorSpin{to{transform:rotate(360deg)}}
.payment-config-message{padding:20px;border:1px solid rgba(239,175,70,.55);background:rgba(199,154,74,.08)}.payment-config-message strong{color:var(--gold2)}.payment-config-message p{color:#c6beb2;margin-bottom:0}.payment-config-message code{color:#fff}
.payment-brick-container{background:#090909;min-height:80px}.payment-brick-container:empty{display:none}
.pix-status-panel{display:grid;grid-template-columns:1fr 310px;gap:30px;align-items:center;border:1px solid rgba(199,154,74,.34);background:linear-gradient(135deg,#0e0e0e,#070707);padding:26px}.pix-status-panel h3,.payment-result-panel h3{font-family:Georgia,serif;font-size:2rem;margin:6px 0 10px}.pix-status-copy>p:not(.eyebrow){color:#c8c0b4;line-height:1.65}.pix-status-copy small{display:block;color:#9f978b;line-height:1.5;margin-top:14px}.pix-waiting-line{display:flex;align-items:center;gap:10px;color:#eed28d;margin-top:16px}
.pix-qr-frame{padding:14px;background:#ece8df;border:8px solid #111;outline:1px solid rgba(199,154,74,.7);box-shadow:0 18px 50px rgba(0,0,0,.5)}.pix-qr-frame img{width:100%;display:block;background:#fff;aspect-ratio:1;object-fit:contain}
.payment-status-pill{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(199,154,74,.45);padding:7px 10px;color:#e7cf91;font-size:.72rem;letter-spacing:.07em;text-transform:uppercase}.payment-status-pill i{width:8px;height:8px;border-radius:50%;background:#d4a64a;box-shadow:0 0 12px #d4a64a}.payment-status-pill.is-approved{color:#9be0ab;border-color:rgba(73,185,100,.45)}.payment-status-pill.is-approved i{background:#56c879;box-shadow:0 0 12px #56c879}
.payment-result-panel{text-align:center;padding:38px 24px;border:1px solid rgba(199,154,74,.34);background:#0b0b0b}.payment-result-icon{display:grid;place-items:center;width:62px;height:62px;border:1px solid var(--gold);border-radius:50%;margin:0 auto 16px;color:var(--gold2);font-size:1.8rem}.payment-result-panel p:not(.eyebrow){color:#c8c0b4;line-height:1.6}.payment-result-panel .full{max-width:360px;margin:22px auto 0}
#paymentBrick_container{color:#f4efe5}.payment-modal .modal-close{z-index:3}
@media(max-width:760px){.payment-shell{padding:24px 18px}.checkout-heading{display:block}.secure-checkout-badge{display:inline-block;margin-bottom:12px}.pix-status-panel{grid-template-columns:1fr}.pix-qr-frame{max-width:300px;margin:auto}.payment-shell h2{font-size:1.9rem}}


/* LIOR V7.1 — categoria filtrada em tamanho correto */
.category-grid.single-category{grid-template-columns:minmax(0,980px)!important;justify-content:center!important}
.category-grid.single-category .category-image-card{grid-column:auto!important;width:100%!important;max-width:980px!important}
.category-grid.single-category .category-final-image{width:100%!important;height:auto!important;display:block!important}
@media(max-width:1000px){.category-grid.single-category{grid-template-columns:minmax(0,1fr)!important}}

/* =========================================================
   LIOR V8 — categorias compactas e conta acessível
   ========================================================= */
#accountButton{position:relative;z-index:6;pointer-events:auto;cursor:pointer}
.customer-account-modal{pointer-events:none}
.customer-account-modal.show{pointer-events:auto}

.category-filter-bar{
  max-width:1180px;
  margin-left:auto!important;
  margin-right:auto!important;
  overflow-x:auto;
  white-space:nowrap;
}
.category-grid{
  width:100%!important;
  max-width:1180px!important;
  margin:0 auto!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:12px!important;
}
.category-image-card{
  min-width:0!important;
  width:100%!important;
  height:auto!important;
  aspect-ratio:auto!important;
  opacity:1!important;
  visibility:visible!important;
}
.category-final-image{
  width:100%!important;
  height:auto!important;
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  object-fit:cover!important;
  filter:saturate(1.12) contrast(1.06) brightness(1.08)!important;
}
.category-grid.single-category{
  display:grid!important;
  grid-template-columns:minmax(0,480px)!important;
  justify-content:center!important;
  max-width:520px!important;
}
.category-grid.single-category .category-image-card{
  grid-column:auto!important;
  max-width:480px!important;
}
.category-grid.single-category .category-final-image{
  width:100%!important;
  height:auto!important;
}

@media(max-width:1000px){
  .category-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:820px!important}
  .category-image-card,.category-image-card:nth-child(4),.category-image-card:nth-child(5){grid-column:auto!important}
}
@media(max-width:760px){
  .category-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:680px!important;gap:9px!important}
  .category-filter-bar{display:flex!important;gap:7px!important;padding:9px!important}
  .category-filter-bar button{flex:0 0 auto!important;padding:9px 12px!important;font-size:.68rem!important}
  .category-image-card{box-shadow:0 10px 24px rgba(0,0,0,.34)!important}
  .customer-account-modal{
    top:6px!important;
    left:6px!important;
    right:6px!important;
    width:auto!important;
    max-height:calc(100dvh - 12px)!important;
    transform:translateY(-8px) scale(.99)!important;
  }
  .customer-account-modal.show{transform:translateY(0) scale(1)!important}
  .customer-account-modal .modal-close{position:sticky!important;float:right;top:6px!important;right:8px!important}
}
@media(max-width:480px){
  .category-grid{grid-template-columns:1fr!important;max-width:360px!important;gap:10px!important}
  .category-image-card{max-width:360px!important;margin:0 auto!important}
  .category-grid.single-category{grid-template-columns:minmax(0,360px)!important;max-width:380px!important}
  .category-grid.single-category .category-image-card{max-width:360px!important}
}

/* =========================================================
   LIOR V9 — categorias alinhadas e filtro isolado
   ========================================================= */
.category-grid{
  max-width:1180px!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:14px!important;
  align-items:stretch!important;
}
.category-image-card,
.category-image-card:nth-child(4),
.category-image-card:nth-child(5){
  position:relative!important;
  grid-column:span 2!important;
  width:100%!important;
  aspect-ratio:8 / 5!important;
  min-height:0!important;
  height:auto!important;
  align-self:stretch!important;
  overflow:hidden!important;
  background:#050505!important;
}
.category-image-card:nth-child(4){grid-column:2 / span 2!important}
.category-image-card:nth-child(5){grid-column:4 / span 2!important}
.category-final-image{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  filter:saturate(1.04) contrast(1.03) brightness(1.02)!important;
}
.category-image-card.category-hidden{
  display:none!important;
}
.category-grid.single-category{
  display:grid!important;
  grid-template-columns:minmax(0,640px)!important;
  justify-content:center!important;
  max-width:680px!important;
}
.category-grid.single-category .category-image-card,
.category-grid.single-category .category-image-card:nth-child(4),
.category-grid.single-category .category-image-card:nth-child(5){
  display:block!important;
  grid-column:auto!important;
  width:100%!important;
  max-width:640px!important;
  aspect-ratio:8 / 5!important;
}
.category-grid.single-category .category-image-card.category-hidden{
  display:none!important;
}
@media(max-width:1000px){
  .category-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:840px!important}
  .category-image-card,
  .category-image-card:nth-child(4),
  .category-image-card:nth-child(5){grid-column:auto!important}
  .category-grid.single-category{grid-template-columns:minmax(0,600px)!important;max-width:640px!important}
}
@media(max-width:620px){
  .category-grid{grid-template-columns:1fr!important;max-width:390px!important;gap:12px!important}
  .category-image-card,
  .category-image-card:nth-child(4),
  .category-image-card:nth-child(5){grid-column:auto!important;aspect-ratio:8 / 5!important}
  .category-grid.single-category{grid-template-columns:minmax(0,390px)!important;max-width:410px!important}
  .category-grid.single-category .category-image-card{max-width:390px!important}
}

/* =========================================================
   LIOR V10 — acabamento limpo das categorias
   Remove linhas internas e preserva toda a arte sem cortes.
   ========================================================= */
.category-image-card{
  border:1px solid rgba(199,154,74,.9)!important;
  border-radius:2px!important;
  overflow:hidden!important;
  background:#040404!important;
  line-height:0!important;
  contain:paint;
}
.category-final-image{
  inset:0!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  object-fit:fill!important;
  object-position:center!important;
  transform:translateZ(0)!important;
  backface-visibility:hidden!important;
  clip-path:inset(0.5px)!important;
}
.category-image-card:hover .category-final-image{
  transform:translateZ(0) scale(1.006)!important;
}

/* =========================================================
   LIOR V11 — acabamento para celular
   Mantém a composição de desktop e ajusta somente telas móveis.
   ========================================================= */
@media (max-width:640px){
  html,body{overflow-x:hidden}
  .wrap{width:min(100% - 24px,1180px)}

  .site-header .header-inner{min-height:60px}
  .site-header nav{top:60px;padding:14px 12px;gap:3px}
  .site-header nav a{padding:10px 8px;font-size:.72rem}
  .menu-button{padding:8px;line-height:1}
  .header-actions{gap:1px}
  .header-icon{width:33px;height:36px}
  .header-icon svg{width:23px;height:23px}

  /* Exibe o banner completo: antes ele era ampliado e cortado no celular. */
  .hero-final-media{
    min-width:0!important;
    width:100%!important;
    left:auto!important;
    transform:none!important;
  }
  .hero-final-media>img{width:100%!important;height:auto!important}
  .hero-hotspot-collection{left:5.5%;top:77.7%;width:14.7%;height:10.2%}
  .hero-hotspot-instagram{left:21.8%;top:77.7%;width:14.3%;height:10.2%}

  .features{grid-template-columns:1fr 1fr;margin-top:0}
  .features div{padding:14px 12px}
  .features strong{font-size:.84rem;margin-bottom:5px}
  .features span{font-size:.75rem;line-height:1.32}

  .about-home,.section{padding:46px 0}
  .section-head{gap:14px;margin-bottom:22px}
  .section-head .ghost{width:100%;text-align:center}
  .about-home h2,.section h2{font-size:clamp(2rem,8.7vw,2.7rem);line-height:1.05}

  .toolbar{gap:8px;margin-bottom:16px}
  .toolbar input,.toolbar select{min-width:0;padding:12px 10px}
  .product-grid{gap:12px}
  .product-info{padding:15px}
  .product-info h3{font-size:1.18rem}
  .favorite-card-button{right:8px;top:8px;width:38px;height:38px}
  .favorite-card-button svg{width:24px;height:24px}

  .footer-grid{gap:24px;padding:38px 0}
  .utility-drawer{width:100%;padding:18px 14px}
}

@media (max-width:390px){
  .header-icon{width:31px}
  .header-icon svg{width:22px;height:22px}
  .features div{padding:14px 10px}
  .features span{font-size:.73rem}
}

/* Proporções específicas de iPhone: mais conteúdo visível sem afetar desktop. */
@media (max-width:430px){
  .moving-strip-top .moving-track span{padding:8px 14px!important;font-size:9px!important;letter-spacing:.07em}
  .site-header .header-inner{min-height:58px}
  .site-header nav{top:58px}
  .menu-button{font-size:1.25rem}
  .header-icon{width:32px;height:34px}
  .header-icon svg{width:22px;height:22px}
  .header-icon b{min-width:16px;height:16px;font-size:.6rem;right:-1px;top:-1px}

  .features div{padding:13px 11px}
  .features strong{font-size:.8rem}
  .features span{font-size:.72rem;line-height:1.3}

  .about-home,.section{padding:42px 0}
  .about-home h2,.section h2{font-size:clamp(2rem,9.5vw,2.55rem);line-height:1.05;margin:8px 0 14px}
  .about-home p,.big-copy{font-size:.92rem;line-height:1.65}
  .eyebrow{font-size:.62rem;letter-spacing:.19em}

  .section-head{margin-bottom:18px}
  .ghost,.primary{padding:10px 12px;font-size:.72rem}
  .product-grid{gap:10px}
  .product-info{padding:12px}
  .product-info h3{font-size:1.05rem}
  .product-info .price{margin:10px 0}
  .favorite-card-button{width:34px;height:34px}
  .favorite-card-button svg{width:21px;height:21px}
}

/* LIOR V12 — layout móvel: composição estável de 320px a 640px. */
@media (max-width:640px){
  html{font-size:16px}
  body{min-width:320px;overflow-x:clip}
  button,input,select,textarea{max-width:100%}
  .wrap{width:calc(100% - 24px);max-width:1180px}

  /* O banner acompanha a largura disponível para evitar zoom e rolagem
     horizontal artificiais em telas pequenas. */
  .hero-final-media{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    left:auto!important;
    transform:none!important;
  }
  .hero-final-media>img{width:100%!important;height:auto!important;max-width:100%!important}
  .hero-hotspot-collection{left:5.5%!important;top:77.7%!important;width:14.7%!important;height:10.2%!important}
  .hero-hotspot-instagram{left:21.8%!important;top:77.7%!important;width:14.3%!important;height:10.2%!important}

  .site-header{width:100%;overflow:visible}
  .header-inner{width:calc(100% - 16px);gap:2px}
  .header-actions{min-width:0;gap:0}
  .header-icon{flex:0 0 33px}
  .site-header nav{z-index:40;width:100%;box-shadow:0 12px 24px rgba(0,0,0,.38)}

  .section-head,.checkout-heading{min-width:0}
  .section-head .ghost,.section-head .primary{white-space:normal}
  .category-filter-bar{width:100%;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain}
  .category-filter-bar button{white-space:nowrap}
  .category-grid,.product-grid{width:100%;min-width:0}
  .product-grid{grid-template-columns:1fr!important}
  .product-card,.product-info{min-width:0}

  .modal,.payment-modal{width:calc(100vw - 16px)!important;max-width:none!important;max-height:calc(100dvh - 16px)!important}
  .modal{top:8px!important;left:8px!important;transform:scale(.98)!important}
  .modal.show{transform:scale(1)!important}
  .product-modal-scroll{max-height:calc(100dvh - 16px)!important;padding:16px 14px!important}
  .modal-info{padding:20px 0 0}
  .gallery-viewport{width:100%;min-width:0}
  .cart-drawer,.utility-drawer{width:100%!important;max-width:100%!important}
  .coupon-row{grid-template-columns:minmax(0,1fr) auto}
  .coupon-row input{min-width:0}

  .customer-account-modal{inset:6px!important;width:auto!important;max-width:none!important;max-height:calc(100dvh - 12px)!important}
  .customer-account-main{overflow-x:hidden}
  .account-form-grid,.auth-register-grid{grid-template-columns:1fr!important}
  .account-form-grid .wide,.auth-register-grid .wide{grid-column:auto!important}
  .gender-fieldset{min-width:0}
  .gender-fieldset label{display:block;margin:9px 0}
}

@media (max-width:360px){
  body{min-width:0}
  .header-inner{width:calc(100% - 10px)}
  .header-icon{flex-basis:31px;width:31px}
  .menu-button{padding:5px}
  .features{grid-template-columns:1fr}
  .features div{border-right:0;border-bottom:1px solid var(--line)}
  .coupon-row{grid-template-columns:1fr}
  .coupon-row button{min-height:42px}
}

/* Conta no celular: itens sem compressao e logo separado do titulo. */
.customer-account-nav{display:flex!important;flex-direction:column!important;min-width:0;max-width:100%;width:100%}
.customer-account-nav button{min-width:0;max-width:100%;width:100%;flex:none;overflow-wrap:anywhere}
.customer-account-nav button span{flex:0 0 28px}
@media (max-width:680px){
  .customer-account-modal,
  .customer-account-modal.show{
    transform:none!important;
  }
  .customer-account-sidebar{padding-top:46px;overflow:hidden}
  .customer-account-nav{
    display:grid;
    gap:4px;
    width:100%;
    overflow:visible;
    margin-top:16px;
  }
  .customer-account-nav button{
    min-width:0;
    min-height:48px;
    width:100%;
    flex:none;
    white-space:normal;
    overflow-wrap:anywhere;
    border-left:3px solid transparent;
    border-bottom:0;
    text-align:left;
  }
  .customer-account-nav button.active{border-left-color:var(--gold);border-bottom-color:transparent}
  .customer-account-nav .customer-logout{margin-top:10px;padding-top:14px;border-top:1px solid rgba(199,154,74,.38)}
  .customer-account-main{
    align-items:flex-start;
    padding-top:30px;
  }
  .account-auth-panel{width:100%;max-width:100%;margin:0 auto}
  .auth-brand{display:block;position:relative;margin:0 0 26px;padding-top:2px}
  .auth-brand img{display:block;position:relative;width:78px;height:78px;margin:0 auto 16px;z-index:1;flex:none}
  .auth-brand h2{position:relative;margin:0 0 12px;line-height:1.08;z-index:2}
  .auth-brand p{position:relative;z-index:2}
}
