
:root{
  --black:#0b0b0b;
  --ink:#171717;
  --muted:#6d6d68;
  --line:#deded8;
  --soft:#f4f4ef;
  --white:#fff;
  --radius:22px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
button{cursor:pointer}
.site-header,.checkout-header{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid #ecece8;position:sticky;top:0;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);z-index:20}
.brand{font-weight:900;letter-spacing:.16em;font-size:1.02rem}
.top-nav{display:flex;align-items:center;gap:26px;font-size:.94rem}
.cart-trigger{border:0;background:transparent;padding:8px 0}
.cart-count{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#111;color:#fff;font-size:.72rem;margin-left:6px}
.hero{min-height:640px;padding:88px 7vw 72px;display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center}
.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:800;color:#77766f;margin:0 0 14px}
.hero h1,.checkout-title h1,.detail-copy h1{font-size:clamp(3rem,7vw,6.9rem);line-height:.92;letter-spacing:-.065em;margin:0}
.hero-text{font-size:1.15rem;line-height:1.65;color:#5c5c57;max-width:640px;margin:30px 0 34px}
.primary-link{display:inline-block;border-bottom:1px solid #111;padding-bottom:5px;font-weight:700}
.hero-art{display:grid;gap:18px}
.hero-card{min-height:230px;background:#f0f0eb;border-radius:28px;padding:28px;display:flex;justify-content:space-between;flex-direction:column}
.hero-card span{font-size:.76rem;letter-spacing:.18em;font-weight:800}
.hero-card strong{font-size:1.7rem;line-height:1.1;max-width:280px}
.hero-card.inverse{background:#0b0b0b;color:#fff;transform:translateX(-42px)}
.trust-strip{border-top:1px solid #e9e9e5;border-bottom:1px solid #e9e9e5;display:grid;grid-template-columns:repeat(4,1fr);padding:22px 5vw;font-size:.82rem;text-transform:uppercase;letter-spacing:.11em;font-weight:800;text-align:center}
.shop-section,.process-section{padding:100px 7vw}
.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:44px;gap:30px}
.section-head h2{font-size:clamp(2.3rem,5vw,4.5rem);letter-spacing:-.055em;margin:0}
.section-head>p{max-width:420px;color:var(--muted);line-height:1.55}
.product-card{max-width:720px}
.product-media{display:block;background:var(--soft);border-radius:28px;overflow:hidden}
.product-placeholder{height:620px;display:flex;flex-direction:column;justify-content:space-between;padding:28px;background:linear-gradient(145deg,#f5f5f0,#e6e6df);position:relative}
.product-placeholder.large{height:720px}
.condition-pill{align-self:flex-start;background:#111;color:white;border-radius:999px;padding:8px 12px;font-size:.7rem;letter-spacing:.12em;font-weight:900}
.shoe-wordmark{font-size:clamp(3.2rem,7vw,7rem);font-weight:900;letter-spacing:-.07em;line-height:.8;max-width:80%}
.product-placeholder small{color:#73736c}
.product-info{display:flex;justify-content:space-between;gap:20px;padding:22px 2px 16px}
.product-info h3{font-size:1.35rem;margin:5px 0 0}
.product-meta{font-size:.82rem;color:var(--muted);margin:0}
.price{font-weight:800;font-size:1.1rem}
.product-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.primary-button,.secondary-button{min-height:52px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-weight:750;padding:0 20px;border:1px solid #111}
.primary-button{background:#111;color:#fff}
.secondary-button{background:#fff;color:#111}
.primary-button.full{width:100%}
.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.process-grid article{background:#f6f6f2;border-radius:20px;padding:28px;min-height:250px}
.process-grid span{font-size:.74rem;font-weight:900;letter-spacing:.12em}
.process-grid h3{margin:55px 0 12px;font-size:1.35rem}
.process-grid p{color:var(--muted);line-height:1.55}
footer{padding:45px 7vw;border-top:1px solid #e7e7e2;display:flex;justify-content:space-between;gap:30px;color:#676762}
footer strong{color:#111;letter-spacing:.12em}
.cart-drawer{position:fixed;inset:0 0 0 auto;width:min(460px,92vw);background:#fff;z-index:40;transform:translateX(105%);transition:.28s ease;box-shadow:-30px 0 80px rgba(0,0,0,.12)}
.cart-drawer.open{transform:translateX(0)}
.overlay{position:fixed;inset:0;background:rgba(0,0,0,.32);z-index:30}
.cart-panel{padding:28px;height:100%}
.cart-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e9e9e4;padding-bottom:18px}
.cart-header h2{margin:0;font-size:1.45rem}
.cart-header button{border:0;background:transparent;font-size:2rem}
.cart-empty{padding:80px 0;text-align:center;color:var(--muted)}
.cart-line{display:grid;grid-template-columns:64px 1fr auto;gap:14px;align-items:center;padding:24px 0;border-bottom:1px solid #ededE8}
.cart-line p{margin:5px 0 0;color:var(--muted);font-size:.82rem}
.mini-product{width:64px;height:72px;background:#efefe9;border-radius:12px;display:grid;place-items:center;font-weight:900}
.mini-product.big{width:82px;height:92px}
.cart-total,.summary-row,.summary-total{display:flex;justify-content:space-between;padding:16px 0}
.cart-total{border-bottom:1px solid #ecece7;margin-bottom:18px}
.product-page{padding:70px 7vw 100px}
.product-detail{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:start}
.detail-copy{position:sticky;top:110px}
.detail-copy h1{font-size:clamp(3rem,5vw,5.2rem)}
.detail-price{font-size:1.55rem;font-weight:850;margin:26px 0}
.detail-row{display:flex;justify-content:space-between;border-top:1px solid #e6e6e0;padding:16px 0}
.description{line-height:1.7;color:var(--muted);margin:24px 0}
.microcopy{font-size:.78rem;color:#77766f;margin-top:12px}
.accordion{margin-top:36px;border-top:1px solid #e5e5df}
.accordion details{padding:18px 0;border-bottom:1px solid #e5e5df}
.accordion summary{font-weight:750;cursor:pointer}
.accordion p{line-height:1.6;color:var(--muted)}
.checkout-body{background:#f5f5f1}
.checkout-header{position:static}
.checkout-header>span{font-size:.82rem;color:#76766f}
.checkout-layout{max-width:1320px;margin:0 auto;padding:54px 5vw 90px;display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:44px;align-items:start}
.back-link{font-size:.85rem;color:#686862}
.checkout-title{margin:38px 0}
.checkout-title h1{font-size:clamp(2.7rem,5vw,4.8rem)}
.checkout-title>p:last-child{color:var(--muted)}
.checkout-card{background:#fff;border:1px solid #e7e7e1;border-radius:24px;padding:28px;margin-bottom:16px}
.step-head{display:flex;gap:18px;margin-bottom:28px}
.step-head>span{flex:0 0 34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#111;color:#fff;font-size:.72rem;font-weight:850}
.step-head h2{margin:2px 0 6px;font-size:1.28rem}
.step-head p{margin:0;color:var(--muted);font-size:.9rem}
label{display:grid;gap:8px;font-size:.84rem;font-weight:700;margin-bottom:16px}
input,textarea{width:100%;border:1px solid #dcdcd6;border-radius:14px;padding:14px 15px;background:#fff;outline:0}
input:focus,textarea:focus{border-color:#111;box-shadow:0 0 0 3px rgba(0,0,0,.05)}
.field-grid.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.fulfillment-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.choice-card{display:grid;grid-template-columns:auto 1fr auto;align-items:start;gap:12px;border:1px solid #dcdcd5;border-radius:18px;padding:18px;cursor:pointer;margin:0;font-size:inherit}
.choice-card.active{border-color:#111;box-shadow:0 0 0 1px #111}
.choice-card input{width:auto;margin-top:4px}
.choice-card div{display:grid;gap:5px}
.choice-card span{font-size:.78rem;color:var(--muted);font-weight:500}
.note-box,.cash-box,.secure-note{background:#f5f5f0;border-radius:16px;padding:18px;margin-top:16px}
.note-box p,.cash-box p,.secure-note p{margin:6px 0 0;color:var(--muted);line-height:1.5;font-size:.86rem}
.delivery-fields{margin-top:20px}
.cash-box{display:flex;gap:15px;align-items:flex-start}
.cash-icon{width:48px;height:48px;border-radius:50%;background:#111;color:#fff;display:grid;place-items:center;font-size:.7rem;font-weight:900}
.policy-check{display:flex;align-items:flex-start;gap:12px;font-weight:500;line-height:1.5;margin:0 0 20px}
.policy-check input{width:19px;height:19px;margin-top:2px;accent-color:#111}
.policy-check a{text-decoration:underline}
.large-button{min-height:58px;font-size:1rem}
.centered{text-align:center}
.order-summary{position:sticky;top:28px;background:#fff;border:1px solid #e6e6df;border-radius:24px;padding:26px;box-shadow:0 12px 44px rgba(0,0,0,.045)}
.order-summary h2{font-size:1.6rem;margin:0 0 22px}
.summary-product{display:grid;grid-template-columns:82px 1fr auto;gap:12px;align-items:center;padding-bottom:22px;border-bottom:1px solid #e9e9e4}
.summary-product p{font-size:.77rem;color:var(--muted);margin:5px 0 0}
.summary-row{font-size:.9rem;border-bottom:1px solid #eeeeea}
.summary-total{font-size:1.15rem;padding-top:20px}
.success-modal{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:100;display:grid;place-items:center;padding:20px}
.success-modal[hidden]{display:none}
.success-card{background:#fff;width:min(520px,100%);border-radius:26px;padding:34px;text-align:center}
.success-mark{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:#111;color:#fff;margin:0 auto 20px;font-size:1.4rem}
.success-card h2{font-size:2rem;letter-spacing:-.04em;margin:0 0 12px}
.success-card>p{color:var(--muted);line-height:1.55}
.order-ref{background:#f4f4ef;padding:12px;border-radius:12px}
@media(max-width:900px){
  .hero,.product-detail,.checkout-layout{grid-template-columns:1fr}
  .hero-art{display:none}
  .trust-strip{grid-template-columns:1fr 1fr;gap:14px}
  .process-grid{grid-template-columns:1fr}
  .detail-copy,.order-summary{position:static}
  .order-summary{order:-1}
  .product-placeholder,.product-placeholder.large{height:520px}
}
@media(max-width:620px){
  .site-header,.checkout-header{padding:0 20px;height:68px}
  .top-nav>a{display:none}
  .hero,.shop-section,.process-section,.product-page{padding-left:20px;padding-right:20px}
  .hero{padding-top:60px;min-height:auto}
  .hero h1{font-size:3.5rem}
  .trust-strip{font-size:.68rem}
  .section-head{display:block}
  .product-actions,.field-grid.two,.fulfillment-options{grid-template-columns:1fr}
  .checkout-layout{padding:30px 16px 70px}
  .checkout-card{padding:20px;border-radius:18px}
  .order-summary{border-radius:18px;padding:20px}
  .summary-product{grid-template-columns:62px 1fr}
  .summary-product>strong{grid-column:2}
  .mini-product.big{width:62px;height:70px}
  footer{flex-direction:column}
}


/* ===== MEDIOUSAO · HEADER V2 ===== */
.med-header{
  height:82px;
  padding:0 5vw;
  display:grid;
  grid-template-columns:minmax(220px,1fr) auto minmax(220px,1fr);
  align-items:center;
  gap:32px;
  border-bottom:1px solid #ecece7;
  background:rgba(255,255,255,.97);
  backdrop-filter:blur(14px);
}
.med-brand{
  justify-self:start;
  display:inline-flex;
  flex-direction:column;
  gap:5px;
  line-height:1;
}
.med-brand-name{
  font-size:1.18rem;
  font-weight:950;
  letter-spacing:.20em;
  color:#0b0b0b;
}
.med-brand-loc{
  font-size:.56rem;
  font-weight:750;
  letter-spacing:.13em;
  text-transform:uppercase;
  color:#8a8a83;
}
.med-nav{
  justify-self:center;
  display:flex;
  align-items:center;
  gap:38px;
}
.med-nav a{
  position:relative;
  padding:29px 0 27px;
  font-size:.82rem;
  font-weight:700;
  color:#1b1b1b;
}
.med-nav a::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:19px;
  width:0;
  height:1px;
  background:#111;
  transform:translateX(-50%);
  transition:width .18s ease;
}
.med-nav a:hover::after{width:100%}

.med-actions{
  justify-self:end;
  display:flex;
  align-items:center;
  gap:16px;
}
.med-help{
  font-size:.79rem;
  font-weight:650;
  color:#6f6f69;
}
.med-cart{
  min-height:42px;
  padding:0 11px 0 16px;
  border:1px solid #d9d9d3;
  border-radius:999px;
  background:#fff;
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:.80rem;
  font-weight:780;
  transition:border-color .18s ease, background .18s ease, transform .18s ease;
}
.med-cart:hover{
  border-color:#111;
  background:#fafaf7;
  transform:translateY(-1px);
}
.med-cart .cart-count{
  width:23px;
  height:23px;
  margin:0;
  background:#111;
  color:#fff;
  font-size:.67rem;
}

@media(max-width:820px){
  .med-header{
    height:72px;
    grid-template-columns:1fr auto;
    padding:0 18px;
    gap:16px;
  }
  .med-nav,.med-help{display:none}
  .med-brand-name{font-size:1.02rem}
  .med-brand-loc{font-size:.50rem}
  .med-cart{
    min-height:39px;
    padding:0 9px 0 13px;
  }
}


/* ===== MEDIOUSAO · HEADER MINIMAL ===== */
.minimal-header{
  grid-template-columns:1fr auto 1fr;
}
.minimal-nav{
  justify-self:center;
}
.minimal-nav a{
  position:relative;
  display:inline-block;
  padding:29px 0 27px;
  font-size:.82rem;
  font-weight:700;
}
.minimal-nav a::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:19px;
  width:0;
  height:1px;
  background:#111;
  transform:translateX(-50%);
  transition:width .18s ease;
}
.minimal-nav a:hover::after{width:100%}
.minimal-header>.med-cart{
  justify-self:end;
}
@media(max-width:820px){
  .minimal-header{
    grid-template-columns:1fr auto;
  }
  .minimal-nav{display:none}
}


/* ===== MEDIOUSAO · PROFILE ICON ===== */
.minimal-actions{
  justify-self:end;
  display:flex;
  align-items:center;
  gap:10px;
}
.profile-menu-wrap{
  position:relative;
}
.profile-trigger{
  width:42px;
  height:42px;
  border-radius:50%;
  border:1px solid #d9d9d3;
  background:#fff;
  display:grid;
  place-items:center;
  padding:0;
  color:#111;
  transition:border-color .18s ease, background .18s ease, transform .18s ease;
}
.profile-trigger:hover{
  border-color:#111;
  background:#fafaf7;
  transform:translateY(-1px);
}
.profile-trigger svg{
  width:20px;
  height:20px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.65;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.profile-menu{
  position:absolute;
  right:0;
  top:52px;
  min-width:190px;
  padding:10px;
  background:#fff;
  border:1px solid #e1e1dc;
  border-radius:16px;
  box-shadow:0 16px 40px rgba(0,0,0,.10);
  z-index:60;
}
.profile-menu[hidden]{display:none}
.profile-menu-title{
  margin:4px 8px 8px;
  font-size:.70rem;
  font-weight:850;
  letter-spacing:.11em;
  text-transform:uppercase;
  color:#8a8a83;
}
.profile-menu-item{
  width:100%;
  border:0;
  background:transparent;
  text-align:left;
  padding:11px 10px;
  border-radius:10px;
  font-size:.82rem;
  font-weight:700;
  color:#171717;
}
.profile-menu-item:hover{
  background:#f4f4ef;
}
@media(max-width:820px){
  .minimal-actions{gap:8px}
  .profile-trigger{
    width:39px;
    height:39px;
  }
  .profile-trigger svg{
    width:19px;
    height:19px;
  }
  .profile-menu{
    right:-52px;
    top:48px;
  }
}


/* ===== HEADER: PERFIL + CARRITO A LA DERECHA ===== */
.minimal-header{
  grid-template-columns:1fr auto 1fr;
}
.minimal-actions{
  justify-self:stretch;
  width:100%;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
}
.profile-menu-wrap{
  order:1;
  flex:0 0 auto;
}
.med-cart{
  order:2;
  flex:0 0 auto;
  margin-left:0;
}
@media(min-width:821px){
  .minimal-header{
    padding-right:24px;
  }
}
@media(max-width:820px){
  .minimal-header{
    padding-right:14px;
  }
  .minimal-actions{
    justify-self:end;
    width:auto;
  }
}


/* ===== MEDIOUSAO · BLACK HEADER ===== */
.med-black-header{
  height:76px;
  padding:0 24px;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  background:#050505;
  color:#fff;
  border-bottom:1px solid rgba(255,255,255,.10);
  position:sticky;
  top:0;
  z-index:80;
}
.med-header-side{display:flex;align-items:center;gap:8px}
.med-header-left{justify-self:start}
.med-header-right{justify-self:end}
.med-header-brand{
  justify-self:center;
  font-size:1.02rem;
  font-weight:950;
  letter-spacing:.22em;
  color:#fff;
}
.med-icon-btn{
  position:relative;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:0;
  background:transparent;
  color:#fff;
  border-radius:50%;
  padding:0;
}
.med-icon-btn:hover{background:rgba(255,255,255,.09)}
.med-icon-btn svg{
  width:21px;height:21px;
  fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;
}
.med-icon-count{
  position:absolute;
  right:0;
  top:1px;
  width:17px;height:17px;
  display:grid;place-items:center;
  border-radius:50%;
  background:#fff;color:#000;
  font-size:.58rem;font-weight:900;
}
.med-menu-wrap,.med-search-wrap{position:relative}
.med-dropdown{
  position:absolute;top:52px;left:0;
  min-width:210px;padding:10px;
  border:1px solid #222;background:#0b0b0b;color:#fff;
  border-radius:14px;box-shadow:0 20px 50px rgba(0,0,0,.3);
}
.med-dropdown[hidden],.med-search-panel[hidden]{display:none}
.med-dropdown a{
  display:block;padding:12px 12px;border-radius:9px;font-size:.84rem;font-weight:650;
}
.med-dropdown a:hover{background:#191919}
.med-search-panel{
  position:fixed;left:0;right:0;top:76px;
  background:#050505;color:#fff;
  padding:26px max(24px,6vw) 32px;
  border-top:1px solid #161616;border-bottom:1px solid #222;
  z-index:75;
}
.med-search-panel label{
  display:block;margin:0 0 10px;
  font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:#989898;
}
.med-search-box{display:grid;grid-template-columns:1fr auto;gap:8px}
.med-search-box input{
  margin:0;background:#111;color:#fff;border:1px solid #333;border-radius:12px;
  font-size:1.05rem;padding:14px 16px;
}
.med-search-box button{
  width:50px;border:1px solid #333;border-radius:12px;background:#111;color:#fff;font-size:1.4rem;
}
.med-search-results{padding-top:14px;color:#aaa;font-size:.86rem}

/* ===== FAVORITES ===== */
.favorite-product-card{position:relative}
.favorite-button{
  width:44px;height:44px;
  border-radius:50%;border:1px solid #d9d9d2;background:#fff;
  display:grid;place-items:center;padding:0;color:#111;z-index:5;
}
.favorite-product-card>.favorite-button{
  position:absolute;top:18px;right:18px;
}
.detail-favorite{
  float:right;margin:0 0 14px 14px;
}
.favorite-button svg{
  width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round;
}
.favorite-button.saved{
  background:#111;color:#fff;border-color:#111;
}
.favorite-button.saved svg{fill:currentColor}
.favorite-button:hover{transform:translateY(-1px)}

/* ===== ACCOUNT ===== */
.account-shell{
  max-width:1320px;margin:0 auto;padding:70px 5vw 110px;
  display:grid;grid-template-columns:280px minmax(0,1fr);gap:70px;
}
.account-sidebar{position:sticky;top:120px;align-self:start}
.account-eyebrow{
  margin:0 0 10px;font-size:.68rem;text-transform:uppercase;letter-spacing:.15em;
  font-weight:850;color:#878780;
}
.account-sidebar h1{
  margin:0 0 32px;font-size:2.7rem;letter-spacing:-.055em;
}
.account-nav{display:grid;gap:4px}
.account-nav-item{
  border:0;background:transparent;text-align:left;padding:13px 14px;border-radius:10px;
  font-weight:700;color:#55554f;display:flex;align-items:center;justify-content:space-between;
}
.account-nav-item:hover,.account-nav-item.active{background:#f2f2ed;color:#111}
.account-nav-item span{
  min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#111;color:#fff;
  display:grid;place-items:center;font-size:.66rem;
}
.logout-item{margin-top:16px;color:#777}
.account-panel{display:none}
.account-panel.active{display:block}
.account-panel-head{border-bottom:1px solid #e7e7e1;padding-bottom:28px;margin-bottom:28px}
.account-panel-head h2{margin:0 0 9px;font-size:clamp(2.2rem,4vw,4rem);letter-spacing:-.055em}
.account-panel-head>p:last-child{margin:0;color:#6d6d67;line-height:1.55}
.account-info-card{
  border:1px solid #e4e4df;border-radius:20px;padding:24px;background:#fff;
  display:grid;gap:0;
}
.account-info-card>div{
  display:flex;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid #eeeeea;
}
.account-info-card span{color:#777770;font-size:.84rem}
.account-secondary-button{
  justify-self:start;margin-top:22px;border:1px solid #111;border-radius:999px;
  background:#fff;padding:12px 18px;font-weight:750;
}
.empty-state{
  min-height:330px;background:#f5f5f0;border-radius:22px;padding:34px;
  display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;
}
.empty-state.compact{min-height:230px}
.empty-state>span{margin-bottom:auto;font-size:.7rem;letter-spacing:.14em;font-weight:850}
.empty-state h3{font-size:1.45rem;margin:0 0 9px}
.empty-state p{margin:0 0 18px;color:#6e6e68;line-height:1.55;max-width:520px}
.empty-state a{text-decoration:underline;text-underline-offset:4px;font-weight:700}
.reservation-state-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px;
}
.reservation-state-grid article{
  border:1px solid #e3e3dd;border-radius:16px;padding:20px;min-height:145px;
}
.reservation-state-grid span{font-size:.8rem;font-weight:850}
.reservation-state-grid p{font-size:.84rem;color:#707069;line-height:1.5;margin:28px 0 0}
.saved-products-grid{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:18px;
}
.saved-card{
  position:relative;border:1px solid #e3e3de;border-radius:18px;overflow:hidden;background:#fff;
}
.saved-card-media{
  min-height:260px;background:#efefe9;display:flex;align-items:end;padding:18px;
  font-weight:950;font-size:2.7rem;letter-spacing:-.06em;
}
.saved-card-copy{padding:18px}
.saved-card-copy p{margin:4px 0 0;color:#73736c;font-size:.82rem}
.saved-card-copy strong{font-size:1.05rem}
.saved-card .favorite-button{position:absolute;right:14px;top:14px}
.settings-list{display:grid;border-top:1px solid #e5e5df}
.settings-list button{
  border:0;border-bottom:1px solid #e5e5df;background:#fff;padding:22px 4px;
  display:flex;align-items:center;justify-content:space-between;text-align:left;
}
.settings-list button div{display:grid;gap:6px}
.settings-list button span{font-size:.82rem;color:#74746d;font-weight:500}
.settings-list button b{font-size:1.5rem;font-weight:400}

@media(max-width:820px){
  .med-black-header{height:68px;padding:0 12px}
  .med-header-brand{font-size:.86rem;letter-spacing:.17em}
  .med-icon-btn{width:39px;height:39px}
  .med-search-panel{top:68px}
  .account-shell{grid-template-columns:1fr;padding:38px 18px 80px;gap:28px}
  .account-sidebar{position:static}
  .account-sidebar h1{font-size:2.35rem;margin-bottom:20px}
  .account-nav{
    display:flex;overflow:auto;gap:8px;padding-bottom:4px;
    scrollbar-width:none;
  }
  .account-nav::-webkit-scrollbar{display:none}
  .account-nav-item{white-space:nowrap;border:1px solid #e1e1dc;background:#fff}
  .logout-item{margin-top:0}
  .reservation-state-grid{grid-template-columns:1fr}
  .saved-products-grid{grid-template-columns:1fr}
}


/* ===== MEDIOUSAO · CART MODERN WHITE ===== */
.med-cart-drawer{
  width:min(480px,100vw) !important;
  background:#fff !important;
  color:#111 !important;
  box-shadow:-28px 0 70px rgba(0,0,0,.13) !important;
  z-index:95 !important;
}
.med-cart-panel{
  height:100%;
  padding:0 !important;
  display:flex;
  flex-direction:column;
  background:#fff;
}
.med-cart-header{
  min-height:96px;
  padding:24px 26px 20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  border-bottom:1px solid #e9e9e5;
}
.med-cart-kicker{
  margin:0 0 4px;
  font-size:.61rem;
  line-height:1;
  letter-spacing:.16em;
  text-transform:uppercase;
  font-weight:850;
  color:#8a8a83;
}
.med-cart-header h2{
  margin:0;
  font-size:1.72rem;
  letter-spacing:-.045em;
  color:#111;
}
.med-cart-close{
  width:42px;
  height:42px;
  border-radius:50%;
  border:1px solid #e1e1dc !important;
  background:#fff !important;
  color:#111 !important;
  display:grid;
  place-items:center;
  font-size:1.6rem !important;
  line-height:1;
  transition:background .18s ease,border-color .18s ease,transform .18s ease;
}
.med-cart-close:hover{
  background:#f4f4ef !important;
  border-color:#111 !important;
  transform:rotate(2deg);
}
.med-cart-empty{
  flex:1;
  padding:46px 30px 34px !important;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  text-align:left !important;
  color:#111 !important;
}
.med-cart-empty-icon{
  width:54px;
  height:54px;
  border:1px solid #dfdfda;
  border-radius:50%;
  display:grid;
  place-items:center;
  margin-bottom:24px;
}
.med-cart-empty-icon svg{
  width:22px;
  height:22px;
  fill:none;
  stroke:#111;
  stroke-width:1.5;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.med-cart-empty h3{
  margin:0 0 8px;
  font-size:1.35rem;
  letter-spacing:-.035em;
}
.med-cart-empty p{
  margin:0 0 24px;
  color:#73736d;
  line-height:1.55;
  max-width:290px;
}
.med-cart-shop-link{
  display:inline-flex;
  min-height:44px;
  align-items:center;
  justify-content:center;
  padding:0 18px;
  border:1px solid #111;
  border-radius:999px;
  font-weight:750;
  font-size:.84rem;
}
.med-cart-filled{
  min-height:0;
  flex:1;
  display:flex;
  flex-direction:column;
}
.med-cart-product{
  display:grid;
  grid-template-columns:84px minmax(0,1fr) auto;
  gap:16px;
  align-items:start;
  padding:26px;
  border-bottom:1px solid #ecece7;
}
.med-cart-thumb{
  width:84px;
  height:98px;
  border-radius:14px;
  background:#efefe9;
  display:flex;
  align-items:flex-end;
  padding:12px;
  color:#111;
  font-size:1.35rem;
  font-weight:950;
  letter-spacing:-.06em;
}
.med-cart-product-copy{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.med-cart-product-name{
  font-size:1rem;
  font-weight:800;
  letter-spacing:-.015em;
  color:#111;
  line-height:1.3;
}
.med-cart-product-copy p{
  margin:5px 0 10px;
  font-size:.78rem;
  color:#777770;
}
.med-cart-qty{
  font-size:.72rem;
  color:#8a8a84;
  margin-bottom:10px;
}
.med-cart-remove{
  border:0;
  background:transparent;
  color:#111;
  padding:0;
  font-size:.76rem;
  font-weight:750;
  text-decoration:underline;
  text-underline-offset:3px;
}
.med-cart-price{
  font-size:.91rem;
  white-space:nowrap;
  padding-top:1px;
}
.med-cart-summary{
  padding:22px 26px;
  border-bottom:1px solid #ecece7;
}
.med-cart-summary-row{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:center;
  font-size:.94rem;
}
.med-cart-summary-row strong{
  font-size:1rem;
}
.med-cart-shipping-note{
  margin:10px 0 0;
  color:#767670;
  font-size:.76rem;
  line-height:1.5;
}
.med-cart-footer{
  margin-top:auto;
  padding:22px 26px 26px;
  background:#fff;
}
.med-cart-checkout{
  min-height:56px;
  width:100%;
  padding:0 20px;
  border-radius:14px;
  background:#111;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  font-size:.9rem;
  font-weight:800;
  transition:transform .18s ease,background .18s ease;
}
.med-cart-checkout:hover{
  background:#000;
  transform:translateY(-1px);
}
.med-cart-footer>p{
  margin:12px 0 0;
  text-align:center;
  color:#81817a;
  font-size:.7rem;
}
.med-cart-overlay{
  background:rgba(0,0,0,.42) !important;
  backdrop-filter:blur(2px);
  z-index:90 !important;
}

@media(max-width:620px){
  .med-cart-drawer{width:100vw !important}
  .med-cart-header{min-height:82px;padding:20px 18px 17px}
  .med-cart-header h2{font-size:1.5rem}
  .med-cart-product{grid-template-columns:74px minmax(0,1fr);padding:20px 18px}
  .med-cart-thumb{width:74px;height:88px}
  .med-cart-price{
    grid-column:2;
    padding-top:0;
    margin-top:-2px;
  }
  .med-cart-summary{padding:20px 18px}
  .med-cart-footer{padding:18px}
}


/* ===== CART ACTIONS ===== */
.med-cart-actions{
  display:grid;
  grid-template-columns:1fr 1.35fr;
  gap:10px;
}
.med-cart-continue{
  min-height:56px;
  width:100%;
  border-radius:14px;
  border:1px solid #111;
  background:#fff;
  color:#111;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0 16px;
  font-size:.86rem;
  font-weight:800;
  transition:background .18s ease,transform .18s ease;
}
.med-cart-continue:hover{
  background:#f4f4ef;
  transform:translateY(-1px);
}
.med-cart-actions .med-cart-checkout{
  min-height:56px;
}
@media(max-width:420px){
  .med-cart-actions{
    grid-template-columns:1fr;
  }
}


/* ===== MEDIOUSAO · CATEGORY BUTTONS ===== */
.category-strip{
  padding:0 7vw 18px;
  background:#fff;
}
.category-strip-inner{
  display:flex;
  align-items:center;
  gap:9px;
  overflow-x:auto;
  padding:6px 0 4px;
  scrollbar-width:none;
}
.category-strip-inner::-webkit-scrollbar{display:none}
.category-chip{
  flex:0 0 auto;
  min-height:42px;
  padding:0 18px;
  border-radius:999px;
  border:1px solid #111;
  background:#fff;
  color:#111;
  font-size:.79rem;
  font-weight:800;
  letter-spacing:.01em;
  transition:background .18s ease,color .18s ease,transform .18s ease;
}
.category-chip:hover{
  transform:translateY(-1px);
}
.category-chip.active{
  background:#111;
  color:#fff;
}
.category-empty-state{
  padding:46px 0 10px;
  color:#76766f;
  font-size:.92rem;
}
.category-empty-state p{margin:0}
@media(max-width:620px){
  .category-strip{
    padding-left:20px;
    padding-right:0;
  }
  .category-strip-inner{
    padding-right:20px;
  }
  .category-chip{
    min-height:40px;
    padding:0 16px;
  }
}


/* ===== SHOP EYEBROW SMALL ===== */
.shop-eyebrow{
  font-size:.62rem !important;
  letter-spacing:.17em !important;
  margin-bottom:10px !important;
}


/* ===== MEDIOUSAO · SOPHISTICATED POLISH V1 ===== */

/* Global rhythm */
body{
  color:#0d0d0d;
}
.hero,
.shop-section,
.process-section{
  max-width:1600px;
  margin-left:auto;
  margin-right:auto;
}

/* Header refinement */
.med-black-header{
  height:78px;
  padding-left:28px;
  padding-right:28px;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.med-header-brand{
  font-size:.98rem;
  letter-spacing:.23em;
}
.med-header-side{
  gap:6px;
}
.med-icon-btn{
  width:40px;
  height:40px;
}
.med-icon-btn svg{
  width:20px;
  height:20px;
  stroke-width:1.45;
}

/* Hero refinement */
.hero{
  min-height:610px;
  padding-top:96px;
  padding-bottom:90px;
  grid-template-columns:1.15fr .85fr;
  gap:90px;
}
.hero h1{
  max-width:900px;
  font-size:clamp(3.8rem,6.8vw,7.4rem);
  line-height:.91;
  letter-spacing:-.067em;
  font-weight:850;
}
.hero-text{
  max-width:610px;
  margin-top:28px;
  margin-bottom:32px;
  font-size:1.05rem;
  line-height:1.72;
  color:#62625c;
}
.primary-link{
  font-size:.85rem;
  letter-spacing:.01em;
  padding-bottom:4px;
  border-bottom-width:1px;
}

/* Categories: quieter and more premium */
.category-strip{
  padding-top:14px;
  padding-bottom:16px;
  border-top:1px solid #efefeb;
}
.category-strip-inner{
  gap:8px;
}
.category-chip{
  min-height:38px;
  padding:0 15px;
  border-color:#cfcfc9;
  font-size:.74rem;
  font-weight:720;
  letter-spacing:.015em;
  background:#fff;
}
.category-chip:hover{
  border-color:#111;
}
.category-chip.active{
  border-color:#111;
  background:#111;
  color:#fff;
}

/* Shop heading */
.shop-section{
  padding-top:82px;
}
.shop-eyebrow{
  color:#8c8c85 !important;
  font-size:.58rem !important;
  letter-spacing:.19em !important;
  margin-bottom:12px !important;
}
.section-head{
  align-items:end;
  margin-bottom:38px;
}
.section-head h2{
  font-size:clamp(2.9rem,4.7vw,5.3rem);
  line-height:.95;
  letter-spacing:-.062em;
  font-weight:820;
}
.section-head>p{
  max-width:360px;
  font-size:.88rem;
  line-height:1.62;
  color:#72726c;
}

/* Product presentation */
.product-card{
  max-width:820px;
  position:relative;
}
.product-media{
  border-radius:18px;
  background:#f3f3ef;
}
.product-placeholder{
  height:650px;
  padding:24px;
  border-radius:18px;
  background:
    linear-gradient(155deg,#f6f6f2 0%,#e9e9e2 100%);
}
.condition-pill{
  padding:7px 10px;
  font-size:.62rem;
  letter-spacing:.14em;
  border-radius:999px;
}
.shoe-wordmark{
  font-size:clamp(3.8rem,7vw,7.7rem);
  letter-spacing:-.075em;
  line-height:.78;
}
.product-info{
  padding-top:18px;
  padding-bottom:13px;
}
.product-info h3{
  margin-top:4px;
  font-size:1.22rem;
  letter-spacing:-.025em;
}
.product-meta{
  font-size:.74rem;
  color:#808079;
}
.price{
  font-size:1rem;
  font-weight:760;
}
.product-actions{
  max-width:480px;
  grid-template-columns:1fr 1.05fr;
  gap:8px;
}
.primary-button,
.secondary-button{
  min-height:48px;
  border-radius:999px;
  font-size:.79rem;
  font-weight:760;
}

/* Favorite button: subtler */
.favorite-button{
  width:40px;
  height:40px;
  border-color:#d8d8d2;
  box-shadow:0 4px 18px rgba(0,0,0,.035);
}
.favorite-product-card>.favorite-button{
  top:16px;
  right:16px;
}
.favorite-button svg{
  width:19px;
  height:19px;
  stroke-width:1.45;
}

/* Trust strip */
.trust-strip{
  padding-top:19px;
  padding-bottom:19px;
  border-color:#ecece7;
  font-size:.69rem;
  letter-spacing:.14em;
}

/* Footer refinement */
footer{
  border-top-color:#e9e9e4;
  padding-top:40px;
  padding-bottom:40px;
  font-size:.82rem;
}

/* Mobile */
@media(max-width:820px){
  .med-black-header{
    height:68px;
    padding-left:12px;
    padding-right:12px;
  }
  .hero{
    padding-top:58px;
    padding-bottom:58px;
    gap:30px;
  }
  .hero h1{
    font-size:clamp(3.15rem,14vw,4.7rem);
    line-height:.92;
  }
  .hero-text{
    font-size:.96rem;
    line-height:1.62;
  }
  .category-strip{
    padding-top:10px;
  }
  .category-chip{
    min-height:36px;
    padding:0 14px;
  }
  .shop-section{
    padding-top:64px;
  }
  .section-head{
    margin-bottom:28px;
  }
  .product-placeholder{
    height:500px;
    border-radius:16px;
  }
  .product-media{
    border-radius:16px;
  }
  .product-actions{
    grid-template-columns:1fr;
    max-width:none;
  }
}


/* ===== MEDIOUSAO · REFINED HOW TO BUY ===== */
.refined-process{
  padding-top:110px;
  padding-bottom:110px;
}
.process-intro{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);
  gap:70px;
  align-items:end;
  padding-bottom:42px;
  border-bottom:1px solid #e8e8e3;
}
.process-eyebrow{
  font-size:.58rem;
  letter-spacing:.19em;
  margin-bottom:12px;
}
.process-intro h2{
  margin:0;
  max-width:720px;
  font-size:clamp(3rem,5vw,5.5rem);
  line-height:.94;
  letter-spacing:-.062em;
  font-weight:820;
}
.process-intro>p{
  margin:0 0 7px;
  max-width:430px;
  color:#70706a;
  font-size:.92rem;
  line-height:1.7;
}
.refined-process-grid{
  display:grid;
}
.refined-process-item{
  min-height:190px;
  display:grid;
  grid-template-columns:120px minmax(0,1fr);
  gap:30px;
  align-items:center;
  padding:34px 0;
  border-bottom:1px solid #e8e8e3;
}
.process-number{
  align-self:start;
  padding-top:5px;
  font-size:.68rem;
  letter-spacing:.14em;
  font-weight:850;
  color:#8b8b84;
}
.process-copy{
  display:grid;
  grid-template-columns:minmax(220px,.55fr) minmax(300px,1fr);
  gap:50px;
  align-items:start;
}
.process-copy h3{
  margin:0;
  font-size:1.5rem;
  line-height:1.2;
  letter-spacing:-.035em;
  font-weight:780;
}
.process-copy p{
  margin:0;
  max-width:560px;
  color:#6f6f69;
  font-size:.9rem;
  line-height:1.7;
}
@media(max-width:820px){
  .refined-process{
    padding-top:78px;
    padding-bottom:78px;
  }
  .process-intro{
    grid-template-columns:1fr;
    gap:24px;
    padding-bottom:30px;
  }
  .process-intro h2{
    font-size:clamp(2.7rem,12vw,4.1rem);
  }
  .refined-process-item{
    grid-template-columns:54px 1fr;
    gap:14px;
    min-height:auto;
    padding:28px 0;
  }
  .process-copy{
    grid-template-columns:1fr;
    gap:10px;
  }
  .process-copy h3{
    font-size:1.28rem;
  }
}


/* ===== MEDIOUSAO · SERVICE CONFIDENCE ===== */
.service-confidence{
  max-width:1600px;
  margin:0 auto;
  padding:34px 7vw 36px;
  border-top:1px solid #ecece7;
  border-bottom:1px solid #ecece7;
  background:#fff;
}
.service-confidence-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:32px;
  margin-bottom:28px;
}
.service-eyebrow{
  margin:0;
  font-size:.56rem;
  letter-spacing:.19em;
  color:#8a8a84;
}
.service-confidence-head>p:last-child{
  margin:0;
  color:#777770;
  font-size:.82rem;
}
.service-confidence-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border-top:1px solid #e8e8e3;
}
.service-confidence-item{
  min-height:160px;
  padding:22px 24px 20px 0;
  border-right:1px solid #e8e8e3;
  display:grid;
  grid-template-columns:38px 1fr;
  gap:16px;
  align-items:start;
}
.service-confidence-item:not(:first-child){
  padding-left:24px;
}
.service-confidence-item:last-child{
  border-right:0;
  padding-right:0;
}
.service-index{
  padding-top:4px;
  font-size:.62rem;
  letter-spacing:.14em;
  font-weight:850;
  color:#9a9a93;
}
.service-confidence-item h3{
  margin:0 0 12px;
  font-size:1.05rem;
  letter-spacing:-.025em;
  font-weight:780;
}
.service-confidence-item p{
  margin:0;
  color:#70706a;
  font-size:.82rem;
  line-height:1.6;
  max-width:250px;
}
@media(max-width:980px){
  .service-confidence-grid{
    grid-template-columns:1fr 1fr;
  }
  .service-confidence-item{
    border-bottom:1px solid #e8e8e3;
  }
  .service-confidence-item:nth-child(2){
    border-right:0;
  }
  .service-confidence-item:nth-child(3),
  .service-confidence-item:nth-child(4){
    border-bottom:0;
  }
  .service-confidence-item:nth-child(3){
    padding-left:0;
  }
}
@media(max-width:620px){
  .service-confidence{
    padding-left:20px;
    padding-right:20px;
  }
  .service-confidence-head{
    display:block;
  }
  .service-confidence-head>p:last-child{
    margin-top:8px;
  }
  .service-confidence-grid{
    grid-template-columns:1fr;
  }
  .service-confidence-item,
  .service-confidence-item:not(:first-child){
    min-height:auto;
    padding:20px 0;
    border-right:0;
    border-bottom:1px solid #e8e8e3;
  }
  .service-confidence-item:last-child{
    border-bottom:0;
  }
}


/* ===== MEDIOUSAO · FOOTER ===== */
.med-footer{
  background:#050505;
  color:#fff;
  padding:64px 7vw 28px;
  border-top:1px solid #111;
}
.med-footer-top{
  max-width:1600px;
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(260px,.9fr) minmax(0,1.5fr);
  gap:90px;
  padding-bottom:58px;
}
.med-footer-brand-block{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.med-footer-brand{
  font-size:1.2rem;
  font-weight:950;
  letter-spacing:.22em;
  color:#fff;
  margin-bottom:20px;
}
.med-footer-brand-block p{
  margin:0 0 10px;
  max-width:330px;
  color:#b0b0aa;
  font-size:.88rem;
  line-height:1.6;
}
.med-footer-brand-block span{
  color:#73736d;
  font-size:.71rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.med-footer-nav{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:40px;
}
.med-footer-nav>div{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.med-footer-label{
  margin:0 0 16px;
  color:#73736d;
  font-size:.61rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  font-weight:850;
}
.med-footer-nav a{
  color:#fff;
  font-size:.82rem;
  line-height:1;
  margin:0 0 14px;
  opacity:.92;
}
.med-footer-nav a:hover{
  opacity:.62;
}
.med-footer-bottom{
  max-width:1600px;
  margin:0 auto;
  padding-top:22px;
  border-top:1px solid #1d1d1d;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:24px;
  color:#767670;
  font-size:.69rem;
}
.med-footer-bottom p{
  margin:0;
}
.med-footer-legal{
  display:flex;
  gap:20px;
}
.med-footer-legal a,
.med-footer-email{
  color:#8c8c85;
}
.med-footer-email{
  justify-self:end;
}
@media(max-width:820px){
  .med-footer{
    padding:48px 20px 22px;
  }
  .med-footer-top{
    grid-template-columns:1fr;
    gap:42px;
    padding-bottom:40px;
  }
  .med-footer-nav{
    grid-template-columns:1fr 1fr;
    gap:30px 22px;
  }
  .med-footer-bottom{
    grid-template-columns:1fr;
    gap:10px;
    align-items:start;
  }
  .med-footer-legal{
    order:2;
  }
  .med-footer-email{
    justify-self:start;
    order:3;
  }
}
@media(max-width:480px){
  .med-footer-nav{
    grid-template-columns:1fr;
  }
}


/* ===== MEDIOUSAO · UPCOMING CAROUSEL ===== */
.upcoming-section{
  max-width:1600px;
  margin:0 auto;
  padding:96px 7vw 110px;
}
.upcoming-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:30px;
  margin-bottom:32px;
}
.upcoming-eyebrow{
  font-size:.58rem;
  letter-spacing:.19em;
  margin-bottom:12px;
  color:#8b8b84;
}
.upcoming-head h2{
  margin:0;
  font-size:clamp(2.9rem,4.7vw,5.2rem);
  line-height:.95;
  letter-spacing:-.062em;
  font-weight:820;
}
.upcoming-controls{
  display:flex;
  gap:8px;
}
.upcoming-arrow{
  width:44px;
  height:44px;
  border-radius:50%;
  border:1px solid #d5d5cf;
  background:#fff;
  color:#111;
  display:grid;
  place-items:center;
  font-size:1rem;
  transition:border-color .18s ease,background .18s ease,transform .18s ease;
}
.upcoming-arrow:hover{
  border-color:#111;
  background:#f5f5f0;
  transform:translateY(-1px);
}
.upcoming-viewport{
  overflow:hidden;
}
.upcoming-track{
  display:flex;
  gap:16px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  scrollbar-width:none;
  padding-bottom:4px;
}
.upcoming-track::-webkit-scrollbar{display:none}
.upcoming-card{
  flex:0 0 clamp(230px,22vw,310px);
  scroll-snap-align:start;
  min-width:0;
}
.upcoming-media{
  width:100%;
  height:auto;
  aspect-ratio:1 / 1;
  border-radius:18px;
  padding:20px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  color:#fff;
  position:relative;
  overflow:hidden;
}
.upcoming-media>img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.upcoming-media.tone-1{
  background:linear-gradient(150deg,#171717,#050505);
}
.upcoming-media.tone-2{
  background:linear-gradient(150deg,#242424,#0c0c0c);
}
.upcoming-media.tone-3{
  background:linear-gradient(150deg,#111,#2a2a2a);
}
.upcoming-status{
  align-self:flex-start;
  border:1px solid rgba(255,255,255,.28);
  border-radius:999px;
  padding:7px 10px;
  font-size:.58rem;
  letter-spacing:.16em;
  font-weight:850;
}
.upcoming-number{
  position:absolute;
  top:20px;
  right:20px;
  font-size:.62rem;
  letter-spacing:.14em;
  color:#8c8c8c;
  font-weight:800;
}
.upcoming-media strong{
  font-size:clamp(2.8rem,5vw,5.3rem);
  line-height:.82;
  letter-spacing:-.07em;
}
.upcoming-copy{
  padding:16px 2px 0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}
.upcoming-copy h3{
  margin:0 0 5px;
  font-size:1.05rem;
  letter-spacing:-.02em;
}
.upcoming-copy p{
  margin:0;
  color:#7b7b74;
  font-size:.76rem;
}
.reserve-button{
  flex:0 0 auto;
  min-height:40px;
  padding:0 16px;
  border-radius:999px;
  border:1px solid #111;
  background:#fff;
  color:#111;
  font-size:.76rem;
  font-weight:800;
}
.reserve-button.reserved{
  background:#111;
  color:#fff;
}
@media(max-width:620px){
  .upcoming-section{
    padding:72px 20px 82px;
  }
  .upcoming-head{
    align-items:center;
  }
  .upcoming-controls{
    gap:6px;
  }
  .upcoming-arrow{
    width:40px;
    height:40px;
  }
  .upcoming-card{
    flex-basis:60vw;
    max-width:240px;
  }
  .upcoming-media{
    height:auto;
    aspect-ratio:1 / 1;
  }
}


/* ===== RESERVATION PRODUCTS GRID ===== */
.reservation-products-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin:20px 0;
}
.reservation-product-card{
  border:1px solid #e3e3de;
  border-radius:18px;
  overflow:hidden;
  background:#fff;
}
.reservation-product-media{
  height:220px;
  background:#111;
  color:#fff;
  padding:18px;
  display:flex;
  align-items:flex-end;
  font-size:2rem;
  font-weight:900;
  letter-spacing:-.05em;
}
.reservation-product-copy{
  padding:18px;
}
.reservation-product-copy span{
  display:inline-block;
  margin-bottom:10px;
  font-size:.62rem;
  letter-spacing:.13em;
  font-weight:850;
  text-transform:uppercase;
}
.reservation-product-copy h3{
  margin:0 0 6px;
  font-size:1rem;
}
.reservation-product-copy p{
  margin:0;
  color:#74746e;
  font-size:.8rem;
}
@media(max-width:620px){
  .reservation-products-grid{
    grid-template-columns:1fr;
  }
}


/* ===== MEDIOUSAO · REFINED PRODUCT PAGE ===== */
.refined-product-page{
  padding:62px 5vw 110px;
  max-width:1600px;
  margin:0 auto;
}
.refined-product-detail{
  display:grid;
  grid-template-columns:minmax(0,1.12fr) minmax(420px,.88fr);
  gap:78px;
  align-items:start;
}
.refined-product-gallery{
  min-width:0;
}
.refined-product-main-media{
  position:relative;
  height:760px;
  border-radius:20px;
  background:linear-gradient(150deg,#f5f5f1,#e7e7e0);
  overflow:hidden;
  padding:22px;
}
.refined-product-condition{
  position:absolute;
  left:22px;
  top:22px;
  z-index:4;
  background:#111;
  color:#fff;
  border-radius:999px;
  padding:7px 10px;
  font-size:.59rem;
  letter-spacing:.15em;
  font-weight:850;
}
.refined-product-favorite{
  position:absolute;
  right:22px;
  top:22px;
  z-index:4;
}
.refined-product-placeholder{
  height:100%;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:18px 8px 8px;
}
.refined-product-placeholder span,
.refined-product-placeholder strong{
  display:block;
  font-size:clamp(4rem,8vw,8.7rem);
  line-height:.77;
  letter-spacing:-.08em;
  font-weight:900;
}
.refined-product-placeholder strong{
  color:#2a2a29;
}
.refined-product-placeholder small{
  margin-top:28px;
  color:#7d7d76;
  font-size:.76rem;
}
.refined-product-thumbs{
  display:flex;
  gap:8px;
  margin-top:12px;
}
.product-thumb{
  width:64px;
  height:52px;
  border-radius:10px;
  border:1px solid #d9d9d3;
  background:#fff;
  color:#777770;
  font-size:.67rem;
  font-weight:800;
}
.product-thumb.active{
  border-color:#111;
  color:#111;
}
.refined-product-info{
  position:sticky;
  top:110px;
}
.refined-product-topline{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  margin-bottom:16px;
}
.refined-product-eyebrow{
  margin:0;
  font-size:.57rem;
  letter-spacing:.17em;
}
.refined-product-id{
  color:#9a9a93;
  font-size:.61rem;
  letter-spacing:.12em;
  font-weight:760;
}
.refined-product-info h1{
  margin:0;
  font-size:clamp(3.2rem,5.6vw,6.2rem);
  line-height:.91;
  letter-spacing:-.068em;
  font-weight:850;
}
.refined-product-price{
  margin:26px 0 28px;
  font-size:1.45rem;
  font-weight:800;
}
.refined-product-specs{
  border-top:1px solid #e6e6e0;
  border-bottom:1px solid #e6e6e0;
}
.refined-product-specs>div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:15px 0;
}
.refined-product-specs>div+div{
  border-top:1px solid #eeeeea;
}
.refined-product-specs span{
  color:#74746d;
  font-size:.78rem;
}
.refined-product-specs strong{
  font-size:.82rem;
}
.refined-product-description{
  padding:24px 0 22px;
}
.refined-product-description p{
  margin:0;
  max-width:570px;
  color:#666660;
  line-height:1.72;
  font-size:.91rem;
}
.refined-product-actions{
  display:grid;
  grid-template-columns:1fr;
}
.refined-add-cart{
  width:100%;
  min-height:56px;
  border-radius:14px;
  font-size:.88rem;
}
.refined-product-microcopy{
  margin:11px 0 30px;
  text-align:center;
  color:#85857e;
  font-size:.69rem;
}
.refined-product-accordion{
  border-top:1px solid #e6e6e0;
}
.refined-product-accordion details{
  border-bottom:1px solid #e6e6e0;
}
.refined-product-accordion summary{
  list-style:none;
  cursor:pointer;
  padding:18px 0;
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:center;
  font-size:.84rem;
  font-weight:780;
}
.refined-product-accordion summary::-webkit-details-marker{display:none}
.refined-product-detail-copy{
  padding:0 0 20px;
}
.refined-product-detail-copy p{
  margin:0 0 9px;
  color:#707069;
  line-height:1.62;
  font-size:.82rem;
}
.refined-product-detail-copy p:last-child{
  margin-bottom:0;
}

@media(max-width:980px){
  .refined-product-detail{
    grid-template-columns:1fr;
    gap:42px;
  }
  .refined-product-info{
    position:static;
  }
  .refined-product-main-media{
    height:650px;
  }
}
@media(max-width:620px){
  .refined-product-page{
    padding:24px 18px 80px;
  }
  .refined-product-main-media{
    height:510px;
    border-radius:16px;
    padding:16px;
  }
  .refined-product-condition{
    left:16px;
    top:16px;
  }
  .refined-product-favorite{
    right:16px;
    top:16px;
  }
  .refined-product-thumbs{
    overflow-x:auto;
  }
  .refined-product-info h1{
    font-size:clamp(3rem,14vw,4.7rem);
  }
}


/* ===== MEDIOUSAO · REFINED CHECKOUT ===== */
.med-checkout-body{
  margin:0;
  background:#f6f6f2;
  color:#111;
}
.med-checkout-header{
  height:72px;
  padding:0 28px;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  background:#050505;
  color:#fff;
}
.med-checkout-back{
  justify-self:start;
  color:#fff;
  font-size:1.15rem;
}
.med-checkout-brand{
  justify-self:center;
  color:#fff;
  font-size:.95rem;
  font-weight:950;
  letter-spacing:.22em;
}
.med-checkout-secure{
  justify-self:end;
  font-size:.67rem;
  color:#a9a9a3;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.med-checkout-shell{
  max-width:1380px;
  margin:0 auto;
  padding:58px 5vw 100px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 390px;
  gap:46px;
  align-items:start;
}
.med-checkout-intro{
  padding:0 0 34px;
}
.med-checkout-eyebrow{
  font-size:.58rem;
  letter-spacing:.18em;
}
.med-checkout-intro h1{
  margin:0;
  font-size:clamp(3.1rem,5.2vw,5.6rem);
  line-height:.92;
  letter-spacing:-.064em;
  font-weight:850;
}
.med-checkout-intro>p:last-child{
  margin:18px 0 0;
  max-width:600px;
  color:#6f6f68;
  font-size:.92rem;
  line-height:1.65;
}
.med-checkout-form{
  display:grid;
  gap:14px;
}
.med-checkout-section{
  background:#fff;
  border:1px solid #e5e5df;
  border-radius:20px;
  padding:26px;
}
.med-step-head{
  display:grid;
  grid-template-columns:40px 1fr;
  gap:16px;
  align-items:start;
  margin-bottom:26px;
}
.med-step-head>span{
  width:34px;
  height:34px;
  border-radius:50%;
  background:#111;
  color:#fff;
  display:grid;
  place-items:center;
  font-size:.64rem;
  font-weight:850;
}
.med-step-head h2{
  margin:1px 0 5px;
  font-size:1.22rem;
  letter-spacing:-.025em;
}
.med-step-head p{
  margin:0;
  color:#797972;
  font-size:.82rem;
}
.med-checkout-section label{
  display:grid;
  gap:8px;
  margin-bottom:14px;
  font-size:.75rem;
  font-weight:750;
}
.med-checkout-section label>span:first-child{
  color:#55554f;
}
.med-checkout-section input,
.med-checkout-section textarea{
  width:100%;
  min-height:48px;
  border:1px solid #d9d9d3;
  border-radius:12px;
  background:#fff;
  color:#111;
  padding:13px 14px;
  outline:0;
  box-shadow:none;
}
.med-checkout-section textarea{
  resize:vertical;
}
.med-checkout-section input:focus,
.med-checkout-section textarea:focus{
  border-color:#111;
  box-shadow:0 0 0 3px rgba(0,0,0,.045);
}
.med-field-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.med-fulfillment-options{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.med-choice-card{
  margin:0 !important;
  display:grid !important;
  grid-template-columns:auto 1fr auto;
  gap:12px;
  align-items:start;
  padding:18px !important;
  border:1px solid #d9d9d3;
  border-radius:16px;
  cursor:pointer;
  transition:border-color .18s ease,box-shadow .18s ease;
}
.med-choice-card.active{
  border-color:#111;
  box-shadow:0 0 0 1px #111;
}
.med-choice-card input{
  width:auto;
  min-height:0;
  margin:4px 0 0;
  accent-color:#111;
}
.med-choice-copy{
  display:grid;
  gap:6px;
}
.med-choice-copy strong{
  font-size:.84rem;
}
.med-choice-copy span{
  font-size:.72rem;
  line-height:1.45;
  color:#777770;
  font-weight:500;
}
.med-choice-card>b{
  white-space:nowrap;
  font-size:.76rem;
}
.med-info-note{
  margin-top:16px;
  padding:16px 17px;
  border-radius:14px;
  background:#f4f4ef;
}
.med-info-note-label{
  display:block;
  margin-bottom:6px;
  font-size:.64rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-weight:850;
}
.med-info-note p{
  margin:0;
  color:#6d6d66;
  font-size:.79rem;
  line-height:1.55;
}
.med-delivery-fields{
  margin-top:18px;
}
.med-cash-payment{
  display:grid;
  grid-template-columns:48px 1fr auto;
  gap:15px;
  align-items:center;
  padding:18px;
  border:1px solid #111;
  border-radius:16px;
}
.med-cash-mark{
  width:48px;
  height:48px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#111;
  color:#fff;
  font-size:.66rem;
  font-weight:900;
}
.med-cash-payment strong{
  font-size:.88rem;
}
.med-cash-payment p{
  margin:5px 0 0;
  color:#777770;
  font-size:.75rem;
  line-height:1.45;
}
.med-selected-pill{
  padding:6px 9px;
  border-radius:999px;
  background:#111;
  color:#fff;
  font-size:.58rem;
  letter-spacing:.07em;
  text-transform:uppercase;
  font-weight:850;
}
.med-policy-check{
  display:flex !important;
  flex-direction:row !important;
  gap:11px !important;
  align-items:flex-start !important;
  margin:0 0 20px !important;
  font-weight:500 !important;
  line-height:1.55;
}
.med-policy-check input{
  flex:0 0 auto;
  width:18px !important;
  height:18px !important;
  min-height:0 !important;
  margin:2px 0 0 !important;
  accent-color:#111;
}
.med-policy-check>span{
  color:#55554f !important;
}
.med-policy-check a{
  text-decoration:underline;
  text-underline-offset:3px;
}
.med-confirm-order{
  width:100%;
  min-height:58px;
  border:0;
  border-radius:14px;
  background:#111;
  color:#fff;
  padding:0 20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  font-size:.88rem;
  font-weight:820;
  transition:transform .18s ease,background .18s ease;
}
.med-confirm-order:hover{
  background:#000;
  transform:translateY(-1px);
}
.med-confirm-note{
  margin:10px 0 0;
  text-align:center;
  color:#8a8a83;
  font-size:.68rem;
}
.med-order-summary{
  position:sticky;
  top:26px;
  background:#fff;
  border:1px solid #e4e4df;
  border-radius:20px;
  padding:24px;
}
.med-summary-head{
  padding-bottom:20px;
  border-bottom:1px solid #e9e9e4;
}
.med-summary-head .eyebrow{
  margin-bottom:8px;
  font-size:.57rem;
  letter-spacing:.16em;
}
.med-summary-head h2{
  margin:0;
  font-size:1.55rem;
  letter-spacing:-.04em;
}
.med-summary-product{
  display:grid;
  grid-template-columns:72px 1fr auto;
  gap:12px;
  align-items:center;
  padding:22px 0;
  border-bottom:1px solid #e9e9e4;
}
.med-summary-thumb{
  width:72px;
  height:82px;
  border-radius:12px;
  background:#efefe9;
  display:flex;
  align-items:flex-end;
  padding:11px;
  font-weight:900;
  font-size:1.25rem;
  letter-spacing:-.05em;
}
.med-summary-product-copy{
  display:grid;
  gap:5px;
}
.med-summary-product-copy strong{
  font-size:.84rem;
}
.med-summary-product-copy span{
  font-size:.69rem;
  color:#7e7e77;
}
.med-summary-product>strong{
  font-size:.78rem;
  white-space:nowrap;
}
.med-summary-lines{
  padding:12px 0;
  border-bottom:1px solid #e9e9e4;
}
.med-summary-lines>div{
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding:7px 0;
  font-size:.77rem;
  color:#686862;
}
.med-summary-total{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:18px 0 20px;
}
.med-summary-total span{
  font-size:.82rem;
}
.med-summary-total strong{
  font-size:1.15rem;
}
.med-summary-assurance{
  padding:16px;
  border-radius:14px;
  background:#f4f4ef;
}
.med-summary-assurance span{
  font-size:.7rem;
  font-weight:850;
}
.med-summary-assurance p{
  margin:5px 0 0;
  color:#74746d;
  font-size:.72rem;
  line-height:1.5;
}
.med-summary-edit{
  display:inline-block;
  margin-top:18px;
  color:#777770;
  font-size:.72rem;
  text-decoration:underline;
  text-underline-offset:3px;
}
.med-success-card{
  border-radius:22px;
}

@media(max-width:980px){
  .med-checkout-shell{
    grid-template-columns:1fr;
  }
  .med-order-summary{
    position:static;
    order:-1;
  }
}
@media(max-width:620px){
  .med-checkout-header{
    height:66px;
    padding:0 14px;
  }
  .med-checkout-brand{
    font-size:.82rem;
  }
  .med-checkout-secure{
    font-size:.55rem;
  }
  .med-checkout-shell{
    padding:32px 14px 70px;
    gap:22px;
  }
  .med-checkout-intro{
    padding-bottom:20px;
  }
  .med-checkout-intro h1{
    font-size:clamp(2.9rem,13vw,4.2rem);
  }
  .med-checkout-section{
    padding:20px 17px;
    border-radius:16px;
  }
  .med-field-grid,
  .med-fulfillment-options{
    grid-template-columns:1fr;
  }
  .med-cash-payment{
    grid-template-columns:44px 1fr;
  }
  .med-selected-pill{
    grid-column:2;
    justify-self:start;
  }
  .med-order-summary{
    border-radius:16px;
    padding:18px;
  }
}


/* ===== MEDIOUSAO · ACCOUNT REFINED FINAL ===== */
.refined-account-shell{
  max-width:1500px;
  grid-template-columns:300px minmax(0,1fr);
  gap:72px;
  padding-top:72px;
}
.refined-account-sidebar{
  top:112px;
}
.account-identity{
  display:grid;
  grid-template-columns:54px 1fr;
  gap:14px;
  align-items:center;
  padding-bottom:28px;
  margin-bottom:20px;
  border-bottom:1px solid #e7e7e2;
}
.account-avatar{
  width:54px;
  height:54px;
  border-radius:50%;
  background:#111;
  color:#fff;
  display:grid;
  place-items:center;
  font-size:1rem;
  font-weight:900;
}
.account-identity .account-eyebrow{
  margin-bottom:3px;
}
.account-identity h1{
  margin:0 0 4px;
  font-size:1.45rem;
  letter-spacing:-.04em;
}
.account-email{
  color:#85857e;
  font-size:.72rem;
}
.refined-account-nav{
  gap:2px;
}
.refined-account-nav .account-nav-item{
  min-height:44px;
  padding:0 12px;
  border-radius:9px;
  font-size:.8rem;
}
.account-nav-label{
  background:transparent !important;
  color:inherit !important;
  padding:0 !important;
  height:auto !important;
  min-width:0 !important;
  display:inline !important;
  border-radius:0 !important;
  font-size:inherit !important;
}
.account-count-badge{
  min-width:22px !important;
  height:22px !important;
  padding:0 6px !important;
  border-radius:999px !important;
  display:grid !important;
  place-items:center !important;
  background:#111 !important;
  color:#fff !important;
  font-size:.62rem !important;
}
.refined-account-content{
  min-width:0;
}
.refined-account-content .account-panel-head{
  padding-bottom:30px;
  margin-bottom:30px;
}
.refined-account-content .account-panel-head h2{
  font-size:clamp(3rem,5vw,5.4rem);
  line-height:.92;
  letter-spacing:-.064em;
  font-weight:840;
}
.refined-account-grid{
  display:grid;
  grid-template-columns:1.55fr 1fr;
  gap:14px;
}
.refined-account-card{
  border:1px solid #e3e3dd;
  border-radius:18px;
  background:#fff;
}
.account-primary-card{
  grid-row:span 3;
  padding:22px;
}
.refined-card-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding-bottom:16px;
  border-bottom:1px solid #e8e8e3;
}
.refined-card-head>span{
  font-size:.68rem;
  letter-spacing:.13em;
  text-transform:uppercase;
  font-weight:850;
  color:#7d7d76;
}
.refined-card-head button{
  border:0;
  background:transparent;
  text-decoration:underline;
  text-underline-offset:3px;
  font-size:.72rem;
  font-weight:750;
}
.refined-info-row{
  padding:20px 0;
  border-bottom:1px solid #eeeeea;
  display:flex;
  justify-content:space-between;
  gap:30px;
}
.refined-info-row span{
  color:#777770;
  font-size:.77rem;
}
.refined-info-row strong{
  font-size:.8rem;
  text-align:right;
}
.account-summary-card{
  min-height:130px;
  padding:20px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}
.refined-summary-number{
  font-size:2rem;
  letter-spacing:-.05em;
  font-weight:820;
}
.account-summary-card strong{
  font-size:.82rem;
}
.account-summary-card p{
  margin:4px 0 0;
  color:#7b7b74;
  font-size:.72rem;
}
.refined-order-table{
  border-top:1px solid #e5e5df;
}
.refined-order-table-head{
  display:grid;
  grid-template-columns:1.1fr .8fr .8fr .6fr;
  gap:16px;
  padding:13px 0;
  border-bottom:1px solid #e5e5df;
  color:#878780;
  font-size:.61rem;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-weight:850;
}
.refined-empty-row{
  min-height:300px;
  padding:38px 0;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  align-items:flex-start;
}
.refined-empty-row strong{
  font-size:1.35rem;
  letter-spacing:-.03em;
}
.refined-empty-row p{
  margin:8px 0 20px;
  color:#777770;
  font-size:.85rem;
}
.refined-empty-row a{
  font-size:.78rem;
  font-weight:750;
}
.reservation-legend{
  display:flex;
  flex-wrap:wrap;
  gap:16px 24px;
  padding:0 0 20px;
  border-bottom:1px solid #e8e8e3;
  margin-bottom:20px;
}
.reservation-legend span{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:.69rem;
  color:#6f6f69;
}
.legend-dot{
  width:7px;
  height:7px;
  border-radius:50%;
  display:block;
}
.reserved-dot{background:#111}
.available-dot{background:#a5a59e}
.finished-dot{background:#deded8}
.refined-reservation-grid,
.refined-saved-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.refined-empty-state{
  border:1px solid #e5e5df;
  background:#fafaf7;
  min-height:250px;
  border-radius:18px;
}
.empty-index{
  margin-bottom:auto;
  color:#9a9a93;
  font-size:.62rem;
  letter-spacing:.13em;
  font-weight:850;
}
.refined-settings-list{
  border-top:1px solid #e5e5df;
}
.refined-settings-list button{
  width:100%;
  min-height:88px;
  padding:18px 4px;
  border:0;
  border-bottom:1px solid #e5e5df;
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:space-between;
  text-align:left;
}
.refined-settings-list button div{
  display:grid;
  gap:5px;
}
.refined-settings-list strong{
  font-size:.9rem;
}
.refined-settings-list span{
  color:#777770;
  font-size:.76rem;
  font-weight:500;
}
.refined-settings-list b{
  font-size:1.1rem;
  font-weight:400;
}
.settings-note{
  margin-top:26px;
  padding:18px;
  border-radius:14px;
  background:#f4f4ef;
}
.settings-note span{
  font-size:.62rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-weight:850;
}
.settings-note p{
  margin:7px 0 0;
  color:#72726b;
  font-size:.77rem;
  line-height:1.55;
}

/* ===== AUTH ===== */
.auth-body{
  margin:0;
  background:#f5f5f1;
  color:#111;
}
.auth-shell{
  max-width:1260px;
  margin:0 auto;
  padding:80px 5vw 110px;
  display:grid;
  grid-template-columns:1fr 500px;
  gap:100px;
  align-items:start;
}
.auth-intro{
  padding-top:40px;
}
.auth-intro h1{
  margin:0;
  max-width:650px;
  font-size:clamp(4rem,7vw,7.5rem);
  line-height:.88;
  letter-spacing:-.072em;
  font-weight:850;
}
.auth-intro>p:last-child{
  margin:24px 0 0;
  max-width:480px;
  color:#6e6e67;
  line-height:1.7;
  font-size:.95rem;
}
.auth-card{
  background:#fff;
  border:1px solid #e4e4df;
  border-radius:20px;
  padding:26px;
}
.auth-tabs{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:4px;
  padding:4px;
  background:#f3f3ee;
  border-radius:12px;
  margin-bottom:30px;
}
.auth-tab{
  min-height:42px;
  border:0;
  border-radius:9px;
  background:transparent;
  color:#70706a;
  font-size:.76rem;
  font-weight:780;
}
.auth-tab.active{
  background:#111;
  color:#fff;
}
.auth-form{
  display:none;
}
.auth-form.active{
  display:block;
}
.auth-form-head{
  margin-bottom:26px;
}
.auth-form-head h2{
  margin:0 0 7px;
  font-size:2rem;
  letter-spacing:-.045em;
}
.auth-form-head p{
  margin:0;
  color:#777770;
  font-size:.82rem;
}
.auth-form label{
  display:grid;
  gap:8px;
  margin-bottom:15px;
}
.auth-form label>span{
  font-size:.73rem;
  font-weight:750;
  color:#55554f;
}
.auth-form input:not([type="checkbox"]){
  width:100%;
  min-height:50px;
  border:1px solid #d8d8d2;
  border-radius:12px;
  padding:13px 14px;
  outline:0;
}
.auth-form input:focus{
  border-color:#111;
  box-shadow:0 0 0 3px rgba(0,0,0,.045);
}
.auth-primary{
  width:100%;
  min-height:54px;
  margin-top:6px;
  border:0;
  border-radius:13px;
  background:#111;
  color:#fff;
  padding:0 18px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  font-size:.84rem;
  font-weight:820;
}
.auth-text-action{
  display:block;
  margin:16px auto 0;
  border:0;
  background:transparent;
  color:#6d6d67;
  font-size:.73rem;
  text-decoration:underline;
  text-underline-offset:3px;
}
.auth-policy{
  display:flex !important;
  grid-template-columns:none !important;
  align-items:flex-start;
  gap:10px !important;
  font-weight:500 !important;
  line-height:1.5;
}
.auth-policy input{
  flex:0 0 auto;
  width:18px;
  height:18px;
  margin-top:1px;
  accent-color:#111;
}
.auth-policy span{
  color:#666660 !important;
}
.auth-demo-note{
  margin-top:24px;
  padding-top:18px;
  border-top:1px solid #e7e7e2;
}
.auth-demo-note span{
  font-size:.58rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  font-weight:850;
  color:#999991;
}
.auth-demo-note p{
  margin:6px 0 0;
  color:#777770;
  font-size:.72rem;
}

@media(max-width:900px){
  .refined-account-shell{
    grid-template-columns:1fr;
    gap:30px;
  }
  .refined-account-sidebar{
    position:static;
  }
  .refined-account-grid{
    grid-template-columns:1fr 1fr;
  }
  .account-primary-card{
    grid-column:1 / -1;
    grid-row:auto;
  }
  .auth-shell{
    grid-template-columns:1fr;
    gap:40px;
    padding-top:48px;
  }
  .auth-intro{
    padding-top:0;
  }
}
@media(max-width:620px){
  .refined-account-grid{
    grid-template-columns:1fr;
  }
  .account-primary-card{
    grid-column:auto;
  }
  .refined-reservation-grid,
  .refined-saved-grid{
    grid-template-columns:1fr;
  }
  .auth-shell{
    padding:38px 16px 80px;
  }
  .auth-intro h1{
    font-size:clamp(3.2rem,15vw,5rem);
  }
  .auth-card{
    padding:20px;
    border-radius:16px;
  }
}


/* ===== MEDIOUSAO · HOME DARK ===== */
body.home-dark{
  background:#050505;
  color:#fff;
}
body.home-dark main{
  background:#050505;
}
body.home-dark .hero,
body.home-dark .shop-section,
body.home-dark .upcoming-section,
body.home-dark .refined-process,
body.home-dark .service-confidence,
body.home-dark .category-strip{
  background:#050505;
  color:#fff;
}
body.home-dark .hero h1,
body.home-dark .section-head h2,
body.home-dark .upcoming-head h2,
body.home-dark .process-intro h2,
body.home-dark .process-copy h3,
body.home-dark .service-confidence-item h3{
  color:#fff;
}
body.home-dark .hero-text,
body.home-dark .section-head>p,
body.home-dark .upcoming-copy p,
body.home-dark .process-intro>p,
body.home-dark .process-copy p,
body.home-dark .service-confidence-head>p:last-child,
body.home-dark .service-confidence-item p{
  color:#aaa9a2;
}
body.home-dark .eyebrow,
body.home-dark .shop-eyebrow,
body.home-dark .upcoming-eyebrow,
body.home-dark .process-eyebrow,
body.home-dark .service-eyebrow,
body.home-dark .process-number,
body.home-dark .service-index{
  color:#777770 !important;
}
body.home-dark .primary-link{
  color:#fff;
  border-bottom-color:#fff;
}

/* category bar */
body.home-dark .category-strip{
  border-top-color:#1e1e1e;
}
body.home-dark .category-chip{
  background:transparent;
  color:#fff;
  border-color:#3b3b38;
}
body.home-dark .category-chip:hover{
  border-color:#fff;
}
body.home-dark .category-chip.active{
  background:#fff;
  color:#050505;
  border-color:#fff;
}

/* product card */
body.home-dark .product-info h3 a,
body.home-dark .product-info h3,
body.home-dark .price{
  color:#fff;
}
body.home-dark .product-meta{
  color:#85857e;
}
body.home-dark .secondary-button{
  background:transparent;
  color:#fff;
  border-color:#fff;
}
body.home-dark .primary-button{
  background:#fff;
  color:#050505;
  border-color:#fff;
}
body.home-dark .product-media{
  background:#ecece6;
}
body.home-dark .product-placeholder{
  background:linear-gradient(145deg,#f5f5f0,#ddddD6);
  color:#111;
}
body.home-dark .favorite-button{
  background:#fff;
  color:#111;
  border-color:#fff;
}
body.home-dark .favorite-button.saved{
  background:#111;
  color:#fff;
  border-color:#111;
}

/* upcoming */
body.home-dark .upcoming-arrow{
  background:#0d0d0d;
  color:#fff;
  border-color:#30302d;
}
body.home-dark .upcoming-arrow:hover{
  background:#181818;
  border-color:#fff;
}
body.home-dark .upcoming-copy h3{
  color:#fff;
}
body.home-dark .reserve-button{
  background:transparent;
  color:#fff;
  border-color:#fff;
}
body.home-dark .reserve-button.reserved{
  background:#fff;
  color:#050505;
}

/* how to buy */
body.home-dark .process-intro,
body.home-dark .refined-process-item{
  border-color:#202020;
}
body.home-dark .refined-process-item{
  color:#fff;
}

/* confidence */
body.home-dark .service-confidence{
  border-color:#202020;
}
body.home-dark .service-confidence-grid{
  border-top-color:#202020;
}
body.home-dark .service-confidence-item{
  border-color:#202020;
}

/* empty category message */
body.home-dark .category-empty-state{
  color:#85857e;
}

/* footer joins seamlessly with homepage */
body.home-dark .med-footer{
  border-top-color:#191919;
}

/* slightly softer black panels */
body.home-dark .hero-card{
  background:#111;
  color:#fff;
}
body.home-dark .hero-card.inverse{
  background:#ededE7;
  color:#111;
}

@media(max-width:620px){
  body.home-dark .category-strip{
    border-top-color:#191919;
  }
}


/* ===== MEDIOUSAO · HOME DARK POLISH ===== */

/* Overall dark canvas */
body.home-dark{
  background:#050505;
}
body.home-dark .hero,
body.home-dark .category-strip,
body.home-dark .shop-section,
body.home-dark .upcoming-section,
body.home-dark .refined-process,
body.home-dark .service-confidence{
  max-width:1600px;
  margin-left:auto;
  margin-right:auto;
}

/* Hero */
body.home-dark .hero{
  border-bottom:1px solid #181818;
}
body.home-dark .hero-copy{
  max-width:900px;
}
body.home-dark .hero h1{
  color:#fff;
  text-wrap:balance;
}
body.home-dark .hero-text{
  color:#9d9d96;
  max-width:600px;
}
body.home-dark .hero-art{
  gap:12px;
}
body.home-dark .hero-card{
  border:1px solid #202020;
  background:#0b0b0b;
  color:#fff;
  box-shadow:none;
}
body.home-dark .hero-card.inverse{
  background:#efefe9;
  color:#111;
  border-color:#efefe9;
}
body.home-dark .hero-card span{
  color:#7d7d76;
}
body.home-dark .hero-card.inverse span{
  color:#777770;
}

/* Category section */
body.home-dark .category-strip{
  padding-top:18px;
  padding-bottom:24px;
  border-bottom:1px solid #171717;
}
body.home-dark .category-chip{
  backdrop-filter:none;
  transition:background .18s ease,color .18s ease,border-color .18s ease;
}
body.home-dark .category-chip:not(.active):hover{
  background:#0f0f0f;
}

/* Shop */
body.home-dark .shop-section{
  border-bottom:1px solid #171717;
}
body.home-dark .section-head{
  padding-bottom:4px;
}
body.home-dark .shop-eyebrow{
  color:#6f6f69 !important;
}
body.home-dark .product-card{
  max-width:900px;
}
body.home-dark .product-media{
  border:1px solid #202020;
  background:#f2f2ed;
}
body.home-dark .product-placeholder{
  border-radius:17px;
}
body.home-dark .product-info{
  border-bottom:1px solid #181818;
}
body.home-dark .product-info h3{
  color:#fff;
}
body.home-dark .product-actions{
  padding-top:12px;
}
body.home-dark .secondary-button{
  border-color:#44443f;
  color:#fff;
}
body.home-dark .secondary-button:hover{
  border-color:#fff;
}
body.home-dark .primary-button{
  background:#fff;
  color:#050505;
  border-color:#fff;
}
body.home-dark .primary-button:hover{
  background:#e9e9e4;
}

/* Upcoming carousel */
body.home-dark .upcoming-section{
  border-bottom:1px solid #171717;
}
body.home-dark .upcoming-card{
  border-radius:18px;
}
body.home-dark .upcoming-media{
  border:1px solid #242424;
}
body.home-dark .upcoming-copy{
  padding-top:15px;
}
body.home-dark .upcoming-copy h3{
  color:#fff;
  font-weight:760;
}
body.home-dark .upcoming-copy p{
  color:#777770;
}
body.home-dark .reserve-button{
  border-color:#454540;
}
body.home-dark .reserve-button:hover{
  border-color:#fff;
}
body.home-dark .reserve-button.reserved{
  background:#fff;
  color:#050505;
  border-color:#fff;
}

/* How to buy */
body.home-dark .refined-process{
  border-bottom:1px solid #171717;
}
body.home-dark .process-intro{
  border-bottom-color:#202020;
}
body.home-dark .refined-process-item{
  border-bottom-color:#202020;
}
body.home-dark .process-number{
  color:#5f5f5a;
}
body.home-dark .process-copy p{
  color:#96968f;
}

/* Confidence block */
body.home-dark .service-confidence{
  border-top:0;
  border-bottom:1px solid #171717;
}
body.home-dark .service-confidence-head{
  margin-bottom:32px;
}
body.home-dark .service-confidence-grid{
  border-top-color:#202020;
}
body.home-dark .service-confidence-item{
  border-color:#202020;
}
body.home-dark .service-confidence-item h3{
  color:#fff;
}
body.home-dark .service-confidence-item p{
  color:#8f8f88;
}

/* Footer transition */
body.home-dark .med-footer{
  margin-top:0;
  background:#020202;
  border-top:0;
}
body.home-dark .med-footer-top{
  border-top:0;
}

/* Mobile dark refinements */
@media(max-width:820px){
  body.home-dark .hero{
    border-bottom-color:#171717;
  }
  body.home-dark .hero-art{
    display:none;
  }
  body.home-dark .category-strip{
    padding-bottom:20px;
  }
  body.home-dark .shop-section,
  body.home-dark .upcoming-section,
  body.home-dark .refined-process{
    padding-top:72px;
    padding-bottom:72px;
  }
  body.home-dark .service-confidence{
    padding-top:34px;
    padding-bottom:34px;
  }
  body.home-dark .product-info{
    padding-top:16px;
  }
}


/* ===== NOVEDADES · REFINED TITLE ===== */
.shop-section .shop-eyebrow{
  font-size:.82rem !important;
  letter-spacing:.14em !important;
  margin-bottom:0 !important;
  font-weight:800;
}
body.home-dark .shop-section .shop-eyebrow{
  color:#f2f2ed !important;
}
.shop-section .section-head{
  align-items:center;
}


/* ===== HOME DARK · CATEGORY BUTTONS ===== */
body.home-dark .category-chip{
  background:#fff !important;
  color:#050505 !important;
  border-color:#fff !important;
}
body.home-dark .category-chip:hover{
  background:#f0f0eb !important;
  color:#050505 !important;
  border-color:#f0f0eb !important;
}
body.home-dark .category-chip.active{
  background:#050505 !important;
  color:#fff !important;
  border-color:#fff !important;
}


/* ===== NOVEDADES · RESPONSIVE PRODUCT GRID ===== */
.shop-section .novelties-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:34px 18px;
  align-items:start;
}
.shop-section .novelties-grid .product-card{
  width:100%;
  max-width:none;
  min-width:0;
}
.shop-section .novelties-grid .product-media{
  width:100%;
}
.shop-section .novelties-grid .product-placeholder{
  width:100%;
  height:auto;
  aspect-ratio:4 / 5;
  min-height:0;
}
.shop-section .novelties-grid .shoe-wordmark{
  font-size:clamp(2rem,3.7vw,4.7rem);
  max-width:95%;
}
.shop-section .novelties-grid .product-info{
  align-items:flex-start;
}
.shop-section .novelties-grid .product-info h3{
  font-size:1rem;
}
.shop-section .novelties-grid .product-meta{
  font-size:.68rem;
}
.shop-section .novelties-grid .price{
  font-size:.92rem;
  white-space:nowrap;
}
.shop-section .novelties-grid .product-actions{
  grid-template-columns:1fr;
}
.shop-section .novelties-grid .primary-button,
.shop-section .novelties-grid .secondary-button{
  min-height:44px;
  padding:0 12px;
  font-size:.72rem;
}

@media(max-width:760px){
  .shop-section .novelties-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:26px 10px;
  }
  .shop-section .novelties-grid .product-placeholder{
    aspect-ratio:4 / 5;
    padding:13px;
    border-radius:14px;
  }
  .shop-section .novelties-grid .condition-pill{
    padding:5px 7px;
    font-size:.5rem;
  }
  .shop-section .novelties-grid .shoe-wordmark{
    font-size:clamp(1.65rem,9vw,3.1rem);
    line-height:.82;
  }
  .shop-section .novelties-grid .product-placeholder small{
    font-size:.58rem;
  }
  .shop-section .novelties-grid .product-info{
    display:block;
    padding:12px 1px 9px;
  }
  .shop-section .novelties-grid .product-info h3{
    font-size:.86rem;
    line-height:1.18;
  }
  .shop-section .novelties-grid .product-meta{
    font-size:.58rem;
  }
  .shop-section .novelties-grid .price{
    margin:7px 0 0;
    font-size:.8rem;
  }
  .shop-section .novelties-grid .product-actions{
    gap:7px;
  }
  .shop-section .novelties-grid .primary-button,
  .shop-section .novelties-grid .secondary-button{
    min-height:40px;
    padding:0 8px;
    font-size:.64rem;
  }
}


/* ===== MEDIOUSAO · FEATURED PRODUCT CAROUSEL ===== */
.featured-carousel-section{
  padding:64px 5vw 56px;
  overflow:hidden;
}
.featured-carousel-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:40px;
  margin-bottom:30px;
}
.featured-carousel-head>div:first-child{
  max-width:720px;
}
.featured-carousel-head h2{
  margin:4px 0 0;
  font-size:clamp(2.1rem,4vw,4rem);
  line-height:.96;
  letter-spacing:-.055em;
  font-weight:820;
}
.featured-eyebrow{
  margin:0;
  font-size:.72rem;
  letter-spacing:.14em;
}
.featured-intro{
  margin:14px 0 0;
  max-width:600px;
  font-size:.84rem;
  line-height:1.55;
}
.featured-carousel-controls{
  display:flex;
  gap:8px;
  flex:0 0 auto;
}
.featured-arrow{
  width:43px;
  height:43px;
  border-radius:50%;
  display:grid;
  place-items:center;
  cursor:pointer;
  font-size:1rem;
  transition:background .18s ease,border-color .18s ease;
}
.featured-carousel-viewport{
  overflow:hidden;
}
.featured-carousel-track{
  display:flex;
  gap:14px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
  overscroll-behavior-inline:contain;
  padding-bottom:4px;
}
.featured-carousel-track::-webkit-scrollbar{
  display:none;
}
.featured-product-card{
  flex:0 0 clamp(220px,21vw,300px);
  scroll-snap-align:start;
  min-width:0;
}
.featured-product-media{
  position:relative;
  aspect-ratio:1 / 1;
  border-radius:18px;
  padding:18px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  overflow:hidden;
  color:inherit;
  text-decoration:none;
  background:#111;
}
.featured-product-media.has-photo{
  padding:0;
}
.featured-product-image{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}
.featured-product-media strong{
  display:block;
  max-width:90%;
  font-size:clamp(2.1rem,4vw,4.3rem);
  line-height:.82;
  letter-spacing:-.07em;
  font-weight:900;
}
.featured-product-media small{
  margin-top:14px;
  font-size:.61rem;
  opacity:.56;
}
.featured-category{
  position:absolute;
  top:16px;
  left:16px;
  padding:6px 8px;
  border-radius:999px;
  font-size:.5rem;
  letter-spacing:.13em;
  font-weight:900;
}
.tone-fragrance{
  background:linear-gradient(145deg,#ecebe3,#c8c5b8);
  color:#111;
}
.tone-cream{
  background:linear-gradient(145deg,#f1ede3,#d7cbbb);
  color:#111;
}
.tone-accessory{
  background:linear-gradient(145deg,#dfdfdc,#b9b9b4);
  color:#111;
}
.tone-fragrance-2{
  background:linear-gradient(145deg,#eee8dc,#c5b69e);
  color:#111;
}
.tone-cream-2{
  background:linear-gradient(145deg,#ede9e1,#cdc4b6);
  color:#111;
}
.tone-accessory-2{
  background:linear-gradient(145deg,#e8e8e3,#c5c6c0);
  color:#111;
}
.featured-product-media .featured-category{
  background:#111;
  color:#fff;
}
.featured-product-copy{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:18px;
  padding:14px 2px 0;
}
.featured-product-copy h3{
  margin:0;
  font-size:.95rem;
  letter-spacing:-.02em;
}
.featured-product-copy h3 a{
  color:inherit;
  text-decoration:none;
}
.featured-product-copy>span{
  white-space:nowrap;
  padding-top:17px;
  font-size:.67rem;
}

/* dark homepage treatment */
body.home-dark .featured-carousel-section{
  max-width:1600px;
  margin-left:auto;
  margin-right:auto;
  background:#050505;
  color:#fff;
  border-bottom:1px solid #171717;
}
body.home-dark .featured-carousel-head h2,
body.home-dark .featured-product-copy h3{
  color:#fff;
}
body.home-dark .featured-eyebrow{
  color:#f2f2ed !important;
}
body.home-dark .featured-intro,
body.home-dark .featured-product-copy>span{
  color:#85857e;
}
body.home-dark .featured-arrow{
  background:#0d0d0d;
  color:#fff;
  border:1px solid #30302d;
}
body.home-dark .featured-arrow:hover{
  background:#181818;
  border-color:#fff;
}

@media(max-width:760px){
  .featured-carousel-section{
    padding:46px 18px 44px;
  }
  .featured-carousel-head{
    align-items:flex-end;
    gap:16px;
    margin-bottom:24px;
  }
  .featured-carousel-head h2{
    font-size:2.35rem;
  }
  .featured-intro{
    font-size:.76rem;
    max-width:300px;
  }
  .featured-carousel-controls{
    display:none;
  }
  .featured-carousel-track{
    gap:10px;
    margin-right:-18px;
    padding-right:18px;
  }
  .featured-product-card{
    flex-basis:58vw;
    max-width:245px;
  }
  .featured-product-media{
    border-radius:15px;
    padding:14px;
  }
  .featured-product-media strong{
    font-size:clamp(2.2rem,11vw,3.7rem);
  }
  .featured-product-copy{
    padding-top:12px;
  }
  .featured-product-copy h3{
    font-size:.86rem;
  }
  .featured-product-copy>span{
    font-size:.6rem;
  }
}


/* ===== MEDIOUSAO · MOBILE LAYOUT SAFETY ===== */
@media(max-width:900px){
  .refined-account-shell,
  .refined-account-sidebar,
  .refined-account-content{
    min-width:0;
    width:100%;
    max-width:100%;
  }
  .refined-account-nav{
    min-width:0;
    max-width:100%;
  }
}
@media(max-width:620px){
  .hero,
  .hero-copy{
    min-width:0;
    width:100%;
    max-width:100%;
  }
  .hero h1{
    font-size:clamp(3rem,13vw,3.35rem);
    overflow-wrap:break-word;
  }
}


/* ===== ACCOUNT · BACK / CLOSE CONTROLS ===== */
.account-page-controls{
  position:sticky;
  top:0;
  z-index:55;
  max-width:1500px;
  margin:0 auto;
  padding:16px 5vw 0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  pointer-events:none;
}
.account-back-control,
.account-close-control{
  pointer-events:auto;
  height:42px;
  border:1px solid #deded8;
  background:#fff;
  color:#111;
  box-shadow:0 6px 22px rgba(0,0,0,.045);
}
.account-back-control{
  border-radius:999px;
  padding:0 15px;
  display:flex;
  align-items:center;
  gap:8px;
  font-size:.72rem;
  font-weight:800;
  cursor:pointer;
}
.account-back-control span:first-child{
  font-size:1rem;
  line-height:1;
}
.account-close-control{
  width:42px;
  border-radius:50%;
  display:grid;
  place-items:center;
  font-size:1.45rem;
  line-height:1;
  text-decoration:none;
}
.account-back-control:hover,
.account-close-control:hover{
  border-color:#111;
}
.refined-account-shell{
  padding-top:36px;
}

@media(max-width:620px){
  .account-page-controls{
    padding:12px 14px 0;
  }
  .account-back-control{
    height:40px;
    padding:0 13px;
  }
  .account-close-control{
    width:40px;
    height:40px;
    font-size:1.35rem;
  }
  .refined-account-shell{
    padding-top:24px;
  }
}


/* ===== HEADER · PROFILE ICON VISUAL ALIGNMENT ===== */
.med-profile-link svg{
  transform:translateY(-2px);
}


/* ===== MEDIOUSAO · ADMIN PANEL ===== */
.admin-body{margin:0;background:#f5f5f1;color:#111}
.admin-topbar{height:72px;padding:0 28px;background:#050505;color:#fff;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:80}
.admin-brand{color:#fff;font-weight:950;letter-spacing:.22em;font-size:.92rem}
.admin-topbar-actions{display:flex;align-items:center;gap:18px}
.admin-demo-badge{border:1px solid #3a3a37;border-radius:999px;padding:6px 9px;color:#a3a39c;font-size:.54rem;letter-spacing:.12em;font-weight:850}
.admin-exit{color:#fff;font-size:.73rem}
.admin-shell{max-width:1540px;margin:0 auto;padding:56px 4vw 100px;display:grid;grid-template-columns:260px minmax(0,1fr);gap:62px;align-items:start}
.admin-sidebar{position:sticky;top:112px}
.admin-sidebar-head{padding-bottom:22px;border-bottom:1px solid #dfdfd9;margin-bottom:14px}
.admin-eyebrow{margin:0 0 6px;color:#85857e;font-size:.58rem;font-weight:850;text-transform:uppercase;letter-spacing:.14em}
.admin-sidebar-head h1{margin:0;font-size:2rem;letter-spacing:-.05em}
.admin-nav{display:grid;gap:3px}
.admin-nav-item{min-height:43px;padding:0 12px;border:0;border-radius:9px;background:transparent;color:#686862;text-align:left;font-size:.78rem;font-weight:720}
.admin-nav-item.active{background:#111;color:#fff}
.admin-sidebar-note{margin-top:28px;padding:16px;border-radius:13px;background:#ebebe6}
.admin-sidebar-note strong{font-size:.72rem}
.admin-sidebar-note p{margin:6px 0 0;color:#72726b;font-size:.68rem;line-height:1.5}
.admin-panel{display:none}
.admin-panel.active{display:block}
.admin-panel-head{padding-bottom:30px;margin-bottom:30px;border-bottom:1px solid #deded8}
.admin-panel-head h2{margin:0;font-size:clamp(3.2rem,5.8vw,6.5rem);line-height:.9;letter-spacing:-.07em;font-weight:850}
.admin-panel-head>p:last-child{margin:15px 0 0;color:#74746d;font-size:.86rem}
.admin-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:28px}
.admin-stat-card{min-height:175px;padding:19px;border:1px solid #dfdfd9;border-radius:16px;background:#fff;display:flex;flex-direction:column;justify-content:space-between}
.admin-stat-card>span{color:#85857e;font-size:1.65rem;font-weight:820;letter-spacing:-.04em}
.admin-stat-card strong{display:block;margin-top:auto;font-size:.8rem}
.admin-stat-card p{margin:5px 0 0;color:#7b7b74;font-size:.69rem;line-height:1.4}
.admin-stat-card-dark{background:#111;border-color:#111;color:#fff}
.admin-stat-card-dark>span,.admin-stat-card-dark p{color:#aaa9a2}
.admin-action-list{border-top:1px solid #deded8}
.admin-action-list button{width:100%;min-height:88px;padding:16px 4px;border:0;border-bottom:1px solid #deded8;background:transparent;display:flex;justify-content:space-between;align-items:center;text-align:left}
.admin-action-list button div{display:grid;gap:4px}
.admin-action-list strong{font-size:.88rem}
.admin-action-list span{color:#777770;font-size:.73rem;font-weight:500}
.admin-action-list b{font-size:1.1rem;font-weight:400}
.admin-editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:22px;align-items:start}
.admin-editor-card,.admin-preview-card{background:#fff;border:1px solid #dfdfd9;border-radius:18px;padding:22px}
.admin-editor-title{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:18px;margin-bottom:22px;border-bottom:1px solid #e8e8e3}
.admin-editor-title span{color:#8c8c85;font-size:.6rem;letter-spacing:.12em}
.admin-editor-title h3{margin:4px 0 0;font-size:1.2rem;letter-spacing:-.03em}
.admin-live-pill{padding:6px 9px;border-radius:999px;background:#111;color:#fff!important;font-size:.52rem!important;font-weight:850}
.admin-form label{display:grid;gap:7px;margin-bottom:14px}
.admin-form label>span{color:#55554f;font-size:.69rem;font-weight:750}
.admin-form input,.admin-form select,.admin-form textarea,.admin-inline-fields input{width:100%;min-height:47px;border:1px solid #d7d7d1;border-radius:11px;background:#fff;color:#111;padding:11px 12px;outline:0}
.admin-form textarea{resize:vertical}
.admin-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.admin-toggle-row,.admin-setting-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 0;border-top:1px solid #e8e8e3}
.admin-toggle-row>div,.admin-setting-row>div{display:grid;gap:4px}
.admin-toggle-row strong,.admin-setting-row strong{font-size:.8rem}
.admin-toggle-row span,.admin-setting-row span{color:#777770;font-size:.69rem}
.admin-switch{display:block!important;margin:0!important}
.admin-switch input{position:absolute;opacity:0;pointer-events:none}
.admin-switch>span{position:relative;width:42px;height:24px;border-radius:999px;background:#d0d0ca;display:block}
.admin-switch>span:after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;left:3px;top:3px;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.18);transition:.2s ease}
.admin-switch input:checked+span{background:#111}
.admin-switch input:checked+span:after{transform:translateX(18px)}
.admin-save-row{display:flex;gap:8px;padding-top:18px}
.admin-primary,.admin-secondary{min-height:46px;border-radius:11px;padding:0 15px;font-size:.75rem;font-weight:800}
.admin-primary{border:1px solid #111;background:#111;color:#fff}
.admin-secondary{border:1px solid #d7d7d1;background:#fff;color:#111}
.admin-preview-card{position:sticky;top:112px}
.admin-product-preview{margin-top:14px}
.admin-preview-media{position:relative;aspect-ratio:4/5;border-radius:15px;background:linear-gradient(145deg,#f2f2ed,#d9d9d1);padding:16px;display:flex;flex-direction:column;justify-content:flex-end;color:#111}
.admin-preview-media>span{position:absolute;left:14px;top:14px;padding:5px 7px;border-radius:999px;background:#111;color:#fff;font-size:.48rem;font-weight:850;letter-spacing:.12em}
.admin-preview-media strong{font-size:2.9rem;line-height:.82;letter-spacing:-.07em}
.admin-preview-copy{padding-top:13px}
.admin-preview-copy h3{margin:0;font-size:.94rem}
.admin-preview-copy p{margin:4px 0 9px;color:#7c7c75;font-size:.66rem}
.admin-preview-copy>strong{font-size:.8rem}
.admin-featured-list,.admin-upcoming-list{display:grid;gap:9px}
.admin-list-item{min-height:92px;display:grid;grid-template-columns:42px minmax(0,1fr) 34px;gap:12px;align-items:center;padding:13px 14px;border:1px solid #dfdfd9;border-radius:14px;background:#fff}
.admin-list-index{color:#999991;font-size:.62rem;font-weight:850}
.admin-inline-fields{display:grid;grid-template-columns:.7fr 1.25fr .8fr;gap:9px}
.admin-inline-fields-two{grid-template-columns:1fr 1.2fr}
.admin-inline-fields label{display:grid;gap:5px}
.admin-inline-fields label span{color:#777770;font-size:.59rem;font-weight:720}
.admin-inline-fields input{min-height:41px;padding:9px 10px;font-size:.73rem}
.admin-remove-item{width:32px;height:32px;border:1px solid #dfdfd9;border-radius:50%;background:#fff;color:#111;font-size:1rem}
.admin-add-item{margin-top:14px}
.admin-settings-block{border-top:1px solid #deded8}
.admin-setting-row{min-height:85px;border-bottom:1px solid #deded8}
.admin-warning-note{margin-top:28px;padding:18px;border-radius:14px;background:#ecece7}
.admin-warning-note strong{font-size:.72rem}
.admin-warning-note p{margin:6px 0 0;color:#6f6f69;font-size:.72rem;line-height:1.55}
.admin-toast{position:fixed;right:22px;bottom:22px;z-index:100;padding:12px 15px;border-radius:10px;background:#111;color:#fff;font-size:.72rem;font-weight:750;box-shadow:0 10px 28px rgba(0,0,0,.16)}
.account-admin-entry{margin-top:28px;min-height:100px;padding:20px;border-radius:15px;background:#111;color:#fff;display:flex;justify-content:space-between;align-items:center;gap:20px}
.account-admin-entry>div{display:grid;gap:4px}
.account-admin-entry .account-admin-kicker{color:#85857e;font-size:.56rem;font-weight:850;letter-spacing:.13em;text-transform:uppercase}
.account-admin-entry strong{font-size:.9rem}
.account-admin-entry p{margin:0;color:#aaa9a2;font-size:.7rem}
.account-admin-entry b{font-size:1.15rem;font-weight:400}

@media(max-width:980px){
  .admin-shell{grid-template-columns:1fr;gap:28px}
  .admin-sidebar{position:static}
  .admin-nav{display:flex;overflow-x:auto;padding-bottom:4px}
  .admin-nav-item{flex:0 0 auto;padding:0 14px}
  .admin-sidebar-note{display:none}
  .admin-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-editor-layout{grid-template-columns:1fr}
  .admin-preview-card{position:static}
}
@media(max-width:620px){
  .admin-topbar{height:64px;padding:0 14px}
  .admin-brand{font-size:.8rem}
  .admin-demo-badge{display:none}
  .admin-shell{padding:30px 14px 70px}
  .admin-panel-head h2{font-size:clamp(3rem,15vw,4.6rem)}
  .admin-summary-grid{grid-template-columns:1fr 1fr;gap:8px}
  .admin-stat-card{min-height:145px;padding:15px}
  .admin-form-grid{grid-template-columns:1fr;gap:0}
  .admin-editor-card,.admin-preview-card{padding:17px;border-radius:15px}
  .admin-inline-fields,.admin-inline-fields-two{grid-template-columns:1fr}
  .admin-list-item{grid-template-columns:32px minmax(0,1fr) 30px;align-items:start}
  .admin-upcoming-list .admin-list-item{grid-template-columns:32px minmax(0,1fr)}
  .admin-save-row{flex-direction:column}
  .admin-primary,.admin-secondary{width:100%}
}


/* ===== MEDIOUSAO · SEPARATE ADMIN LOGIN ===== */
.admin-login-body{
  margin:0;
  min-height:100vh;
  background:#050505;
  color:#fff;
}
.admin-login-topbar{
  height:72px;
  padding:0 28px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  border-bottom:1px solid #191919;
}
.admin-login-brand{
  color:#fff;
  font-size:.92rem;
  font-weight:950;
  letter-spacing:.22em;
}
.admin-login-close{
  width:42px;
  height:42px;
  border:1px solid #292929;
  border-radius:50%;
  color:#fff;
  display:grid;
  place-items:center;
  font-size:1.4rem;
  line-height:1;
}
.admin-login-shell{
  width:min(1380px,92vw);
  min-height:calc(100vh - 72px);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1fr) 470px;
  gap:110px;
  align-items:center;
  padding:70px 0 90px;
}
.admin-login-intro{
  max-width:750px;
}
.admin-login-intro h1{
  margin:0;
  font-size:clamp(4.5rem,8vw,8.8rem);
  line-height:.83;
  letter-spacing:-.075em;
  font-weight:860;
}
.admin-login-intro>p:nth-of-type(2){
  max-width:540px;
  margin:25px 0 0;
  color:#96968f;
  font-size:.95rem;
  line-height:1.7;
}
.admin-login-device-note{
  margin-top:46px;
  max-width:430px;
  padding-top:18px;
  border-top:1px solid #242424;
}
.admin-login-device-note span{
  font-size:.59rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  font-weight:850;
  color:#fff;
}
.admin-login-device-note p{
  margin:7px 0 0;
  color:#777770;
  font-size:.74rem;
  line-height:1.55;
}
.admin-login-card{
  background:#fff;
  color:#111;
  border-radius:22px;
  padding:28px;
}
.admin-login-card-head{
  margin-bottom:28px;
}
.admin-login-card-head h2{
  margin:0 0 7px;
  font-size:2rem;
  letter-spacing:-.045em;
}
.admin-login-card-head>p:last-child{
  margin:0;
  color:#777770;
  font-size:.8rem;
}
.admin-login-form label{
  display:grid;
  gap:8px;
  margin-bottom:16px;
}
.admin-login-form label>span{
  color:#55554f;
  font-size:.71rem;
  font-weight:760;
}
.admin-login-form input:not([type="checkbox"]){
  width:100%;
  min-height:50px;
  border:1px solid #d8d8d2;
  border-radius:12px;
  padding:13px 14px;
  outline:0;
  background:#fff;
  color:#111;
}
.admin-login-form input:not([type="checkbox"]):focus{
  border-color:#111;
  box-shadow:0 0 0 3px rgba(0,0,0,.045);
}
.admin-password-field{
  position:relative;
}
.admin-password-field input{
  padding-right:74px !important;
}
.admin-password-field button{
  position:absolute;
  right:7px;
  top:50%;
  transform:translateY(-50%);
  min-width:58px;
  height:36px;
  border:0;
  border-radius:9px;
  background:#f0f0eb;
  color:#111;
  font-size:.67rem;
  font-weight:780;
}
.admin-remember-row{
  display:flex !important;
  flex-direction:row !important;
  align-items:center;
  gap:9px !important;
  margin:3px 0 20px !important;
}
.admin-remember-row input{
  width:17px;
  height:17px;
  accent-color:#111;
}
.admin-remember-row span{
  color:#6d6d67 !important;
  font-weight:550 !important;
}
.admin-login-submit{
  width:100%;
  min-height:56px;
  border:0;
  border-radius:13px;
  background:#111;
  color:#fff;
  padding:0 18px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  font-size:.82rem;
  font-weight:820;
}
.admin-login-demo{
  margin:18px 0 0;
  padding-top:17px;
  border-top:1px solid #e8e8e3;
  color:#898982;
  font-size:.66rem;
  line-height:1.55;
}
.admin-logout-button{
  border:0;
  background:transparent;
  cursor:pointer;
  font-family:inherit;
}
.admin-body .admin-exit{
  color:#fff;
}

@media(max-width:900px){
  .admin-login-shell{
    grid-template-columns:1fr;
    gap:50px;
    align-items:start;
    padding-top:55px;
  }
  .admin-login-intro{
    max-width:690px;
  }
  .admin-login-card{
    width:min(100%,560px);
  }
}
@media(max-width:620px){
  .admin-login-topbar{
    height:64px;
    padding:0 14px;
  }
  .admin-login-brand{
    font-size:.8rem;
  }
  .admin-login-close{
    width:40px;
    height:40px;
  }
  .admin-login-shell{
    width:auto;
    min-height:calc(100vh - 64px);
    padding:40px 14px 70px;
    gap:35px;
  }
  .admin-login-intro h1{
    font-size:clamp(3.8rem,18vw,5.7rem);
  }
  .admin-login-intro>p:nth-of-type(2){
    font-size:.82rem;
    margin-top:20px;
  }
  .admin-login-device-note{
    margin-top:30px;
  }
  .admin-login-card{
    width:100%;
    padding:21px;
    border-radius:18px;
  }
  .admin-login-card-head h2{
    font-size:1.7rem;
  }
}


/* ===== MOBILE HEADER · PROFILE + CART SPACING ===== */
@media(max-width:820px){
  .med-header-right{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:0 !important;
    width:auto !important;
  }
  .med-header-right .med-icon-btn{
    margin:0 !important;
  }
  .med-header-right .med-profile-link{
    margin-right:-3px !important;
  }
}


/* ===== MEDIOUSAO · MOBILE COMPACT TYPOGRAPHY ===== */
@media(max-width:620px){

  /* Hero: less oversized, no horizontal spill */
  .hero{
    padding:42px 18px 48px !important;
    min-height:auto !important;
  }
  .hero .eyebrow{
    margin-bottom:11px;
    font-size:.58rem;
    letter-spacing:.15em;
  }
  .hero h1{
    max-width:100%;
    font-size:clamp(2.55rem,10.8vw,3.05rem) !important;
    line-height:.94 !important;
    letter-spacing:-.055em !important;
    overflow-wrap:normal !important;
    word-break:normal;
  }
  .hero-text{
    max-width:100%;
    margin:20px 0 25px !important;
    font-size:.86rem !important;
    line-height:1.55 !important;
  }
  .hero .primary-link{
    font-size:.79rem;
  }

  /* General homepage vertical rhythm */
  body.home-dark .shop-section,
  body.home-dark .upcoming-section,
  body.home-dark .refined-process{
    padding-top:54px !important;
    padding-bottom:54px !important;
  }

  /* Próximamente */
  .upcoming-head{
    margin-bottom:22px;
  }
  .upcoming-head h2{
    font-size:2.05rem !important;
    line-height:.96;
  }

  /* Cómo comprar */
  .refined-process{
    padding-left:18px;
    padding-right:18px;
  }
  .process-intro{
    gap:16px;
    padding-bottom:22px;
  }
  .process-intro h2{
    font-size:2.15rem !important;
    line-height:.97;
  }
  .process-intro>p{
    font-size:.79rem;
    line-height:1.55;
  }
  .refined-process-item{
    grid-template-columns:38px 1fr;
    gap:10px;
    padding:21px 0;
  }
  .process-copy h3{
    font-size:1.05rem;
  }
  .process-copy p{
    font-size:.77rem;
    line-height:1.55;
  }

  /* Destacados carousel: visible and more compact */
  .featured-carousel-section{
    padding:54px 18px 58px !important;
  }
  .featured-carousel-head{
    margin-bottom:20px;
  }
  .featured-carousel-head h2{
    font-size:2rem !important;
    line-height:.97;
  }
  .featured-intro{
    margin-top:10px;
    max-width:290px;
    font-size:.72rem !important;
    line-height:1.5;
  }
  .featured-product-card{
    flex-basis:58vw !important;
    max-width:245px !important;
  }
  .featured-product-media strong{
    font-size:clamp(1.8rem,8.8vw,2.85rem) !important;
  }
  .featured-product-copy h3{
    font-size:.78rem !important;
  }
  .featured-product-copy>span{
    font-size:.56rem !important;
  }

  /* Confidence & service */
  .service-confidence{
    padding:30px 18px 34px !important;
  }
  .service-confidence-head{
    margin-bottom:19px !important;
  }
  .service-confidence-head>p:last-child{
    margin-top:6px !important;
    font-size:.73rem !important;
  }
  .service-confidence-item,
  .service-confidence-item:not(:first-child){
    grid-template-columns:30px 1fr;
    gap:10px;
    padding:17px 0 !important;
  }
  .service-confidence-item h3{
    margin-bottom:7px;
    font-size:.95rem !important;
  }
  .service-confidence-item p{
    max-width:none;
    font-size:.74rem !important;
    line-height:1.5;
  }
  .service-index{
    font-size:.56rem;
  }
}


/* ===== MOBILE CART · VISIBLE ACTIONS + IOS SAFE AREA ===== */
.med-cart-empty[hidden],
.med-cart-filled[hidden]{
  display:none !important;
}

.med-cart-drawer{
  height:100dvh !important;
  max-height:100dvh !important;
  overflow:hidden !important;
}

.med-cart-panel{
  height:100dvh !important;
  max-height:100dvh !important;
  overflow:hidden !important;
}

.med-cart-filled{
  min-height:0;
  overflow-y:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}

.med-cart-footer{
  position:sticky;
  bottom:0;
  z-index:5;
  margin-top:auto;
  border-top:1px solid #ecece7;
  box-shadow:0 -10px 28px rgba(255,255,255,.96);
}

@media(max-width:620px){
  .med-cart-header{
    flex:0 0 auto;
  }

  .med-cart-filled{
    padding-bottom:0;
  }

  .med-cart-product{
    padding-top:18px;
    padding-bottom:18px;
  }

  .med-cart-summary{
    padding-top:17px;
    padding-bottom:17px;
  }

  .med-cart-footer{
    padding:14px 14px calc(14px + env(safe-area-inset-bottom)) !important;
  }

  .med-cart-actions{
    grid-template-columns:1fr 1.15fr !important;
    gap:8px !important;
  }

  .med-cart-continue,
  .med-cart-actions .med-cart-checkout{
    min-height:50px !important;
    border-radius:12px;
    font-size:.72rem !important;
    padding-left:10px;
    padding-right:10px;
  }

  .med-cart-footer>p{
    margin-top:9px;
    font-size:.61rem;
  }
}

@media(max-width:390px){
  .med-cart-actions{
    grid-template-columns:1fr !important;
  }

  .med-cart-continue,
  .med-cart-actions .med-cart-checkout{
    min-height:47px !important;
  }
}


/* ===== MOBILE · FULL WIDTH / NO HORIZONTAL SHIFT ===== */
html,
body{
  width:100%;
  max-width:100%;
  overflow-x:clip;
}

@supports not (overflow:clip){
  html,
  body{
    overflow-x:hidden;
  }
}

@media(max-width:820px){
  body.home-dark,
  body.home-dark main,
  .med-black-header,
  .med-footer{
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
  }

  body.home-dark .hero,
  body.home-dark .category-strip,
  body.home-dark .shop-section,
  body.home-dark .upcoming-section,
  body.home-dark .refined-process,
  body.home-dark .featured-carousel-section,
  body.home-dark .service-confidence{
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
  }

  .featured-carousel-viewport{
    width:100%;
    max-width:100%;
    overflow:hidden;
  }

  .featured-carousel-track{
    width:100%;
    max-width:100%;
    margin-right:0 !important;
    padding-right:18px;
  }

  .category-strip{
    max-width:100%;
    overflow:hidden;
  }

  .category-strip-inner{
    max-width:100%;
  }
}


/* ===== HEADER SEARCH · CLEAN PANEL WITHOUT X ===== */
.med-search-panel{
  left:0 !important;
  right:0 !important;
  width:100% !important;
  max-width:100% !important;
  background:#050505 !important;
  border-top:1px solid #1d1d1d !important;
  border-bottom:1px solid #242424 !important;
}

.med-search-box{
  display:block !important;
  width:100%;
}

.med-search-box input{
  width:100% !important;
  max-width:100% !important;
  min-height:58px;
  margin:0 !important;
  background:#101010 !important;
  color:#fff !important;
  border:1px solid #323232 !important;
  border-radius:14px !important;
  padding:15px 17px !important;
  font-size:1rem !important;
}

.med-search-box input::placeholder{
  color:#8a8a85;
  opacity:1;
}

.med-search-panel label{
  margin-bottom:12px !important;
}

@media(max-width:620px){
  .med-search-panel{
    top:68px !important;
    padding:25px 18px 28px !important;
  }

  .med-search-panel label{
    font-size:.6rem !important;
    letter-spacing:.16em !important;
  }

  .med-search-box input{
    min-height:54px;
    border-radius:13px !important;
    font-size:.91rem !important;
  }
}




/* ===== HOME · STATIC LARGE SEARCH ===== */
.home-static-search{
  width:100%;
  max-width:100%;
  margin:0;
  background:#050505;
  border-top:1px solid #171717;
  border-bottom:1px solid #1f1f1f;
  padding:16px 5vw 18px;
}
.home-static-search-inner{
  width:min(1500px,100%);
  margin:0 auto;
}
.home-static-search label{
  display:block;
  margin-bottom:11px;
  color:#8b8b84;
  font-size:.61rem;
  font-weight:850;
  letter-spacing:.17em;
  text-transform:uppercase;
}
.home-static-search input{
  display:block;
  width:100%;
  min-height:44px;
  height:44px;
  border:1px solid #343431;
  border-radius:999px;
  background:#0d0d0d;
  color:#fff;
  padding:9px 19px;
  font-size:1rem;
  outline:0;
  -webkit-appearance:none;
  appearance:none;
}
.home-static-search input::placeholder{
  color:#8a8a84;
  opacity:1;
}
.home-static-search input:focus{
  border-color:#fff;
  box-shadow:0 0 0 1px #fff;
}
.home-static-search-results{
  padding-top:9px;
  color:#aaa9a2;
  font-size:.76rem;
}
.home-static-search-results:empty{
  display:none;
}

@media(max-width:620px){
  .home-static-search{
    padding:14px 18px 16px;
  }
  .home-static-search label{
    margin-bottom:10px;
    font-size:.58rem;
  }
  .home-static-search input{
    min-height:42px;
    height:42px;
    border-radius:999px;
    padding:8px 17px;
    font-size:.92rem;
  }
  .med-header-left{
    justify-content:flex-start !important;
  }
}


/* ===== FINAL POLISH · MOBILE FOOTER ===== */
@media(max-width:620px){
  .med-footer{
    padding:34px 18px calc(18px + env(safe-area-inset-bottom)) !important;
  }
  .med-footer-top{
    gap:28px !important;
    padding-bottom:28px !important;
  }
  .med-footer-brand{
    margin-bottom:10px !important;
    font-size:1rem !important;
  }
  .med-footer-brand-block p{
    margin-bottom:6px !important;
    max-width:260px;
    font-size:.74rem !important;
    line-height:1.45 !important;
  }
  .med-footer-brand-block span{
    font-size:.57rem !important;
  }
  .med-footer-nav{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:16px 10px !important;
  }
  .med-footer-label{
    margin-bottom:10px !important;
    font-size:.53rem !important;
  }
  .med-footer-nav a{
    margin-bottom:9px !important;
    font-size:.66rem !important;
    line-height:1.25 !important;
  }
  .med-footer-bottom{
    grid-template-columns:1fr auto !important;
    gap:9px 14px !important;
    padding-top:16px !important;
    font-size:.58rem !important;
  }
  .med-footer-legal{
    justify-self:end;
    gap:12px !important;
    order:initial !important;
  }
  .med-footer-email{
    grid-column:1/-1;
    justify-self:start !important;
    order:initial !important;
  }
}

/* ===== SEARCH · PRODUCT RESULTS ===== */
.home-static-search-results{
  display:grid;
  gap:1px;
  margin-top:10px;
  padding-top:0 !important;
  border-radius:13px;
  overflow:hidden;
}
.home-static-search-results:empty{
  display:none;
}
.search-result-item{
  min-height:62px;
  padding:11px 13px;
  background:#0d0d0d;
  color:#fff;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  border-top:1px solid #1d1d1d;
}
.search-result-item:first-child{
  border-top:0;
}
.search-result-copy{
  min-width:0;
  display:grid;
  gap:4px;
}
.search-result-copy strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:.78rem;
}
.search-result-copy span{
  color:#85857e;
  font-size:.63rem;
}
.search-result-price{
  color:#fff;
  white-space:nowrap;
  font-size:.72rem;
  font-weight:800;
}
.search-result-empty{
  padding:15px 13px;
  background:#0d0d0d;
  color:#85857e;
  font-size:.72rem;
}

/* ===== ADMIN · MULTI PRODUCT MANAGER ===== */
.admin-products-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
}
.admin-products-head>div{
  min-width:0;
}
.admin-product-manager{
  display:grid;
  gap:18px;
}
.admin-product-list-card{
  padding:16px;
  border:1px solid #dfdfd9;
  border-radius:16px;
  background:#fff;
}
.admin-list-card-head{
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:center;
  padding:2px 2px 13px;
  border-bottom:1px solid #e8e8e3;
}
.admin-list-card-head strong{
  font-size:.78rem;
}
.admin-list-card-head span{
  color:#85857e;
  font-size:.65rem;
}
.admin-product-list{
  display:grid;
}
.admin-product-row{
  width:100%;
  min-height:68px;
  padding:11px 2px;
  border:0;
  border-bottom:1px solid #eeeeea;
  background:transparent;
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto auto;
  gap:12px;
  align-items:center;
  text-align:left;
}
.admin-product-row:last-child{
  border-bottom:0;
}
.admin-product-row.active{
  background:#f5f5f1;
}
.admin-product-row-index{
  color:#999991;
  font-size:.59rem;
  font-weight:850;
  text-align:center;
}
.admin-product-row-copy{
  min-width:0;
  display:grid;
  gap:4px;
}
.admin-product-row-copy strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:.78rem;
}
.admin-product-row-copy span{
  color:#85857e;
  font-size:.63rem;
}
.admin-product-row-price{
  white-space:nowrap;
  font-size:.7rem;
  font-weight:800;
}
.admin-product-row-state{
  min-width:58px;
  padding:5px 7px;
  border-radius:999px;
  background:#111;
  color:#fff;
  font-size:.49rem;
  font-weight:850;
  text-align:center;
  letter-spacing:.08em;
}
.admin-product-row-state.hidden-product{
  background:#deded8;
  color:#55554f;
}
.admin-product-editor-layout{
  grid-template-columns:minmax(0,1fr) 320px;
}
.admin-danger{
  min-height:46px;
  border:1px solid #d5d5cf;
  border-radius:11px;
  background:#fff;
  color:#55554f;
  padding:0 15px;
  font-size:.75rem;
  font-weight:800;
}
.admin-danger:hover{
  border-color:#111;
  color:#111;
}

@media(max-width:900px){
  .admin-products-head{
    align-items:flex-start;
  }
  .admin-product-editor-layout{
    grid-template-columns:1fr;
  }
}
@media(max-width:620px){
  .admin-products-head{
    display:block;
  }
  .admin-products-head .admin-primary{
    margin-top:18px;
  }
  .admin-product-row{
    grid-template-columns:30px minmax(0,1fr) auto;
  }
  .admin-product-row-state{
    grid-column:2;
    justify-self:start;
  }
  .admin-product-row-price{
    grid-column:3;
    grid-row:1;
  }
}


.admin-live-pill-muted{
  background:#deded8 !important;
  color:#55554f !important;
}
.admin-danger:disabled{
  opacity:.42;
  cursor:not-allowed;
}


/* ===== ADMIN · PRODUCT PHOTOS ===== */
.admin-photo-manager{
  margin:8px 0 18px;
  padding:18px;
  border:1px solid #e1e1db;
  border-radius:14px;
  background:#fafaf7;
}
.admin-photo-manager-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  margin-bottom:14px;
}
.admin-photo-manager-head>div{
  display:grid;
  gap:4px;
}
.admin-photo-manager-head strong{
  font-size:.78rem;
}
.admin-photo-manager-head span{
  color:#777770;
  font-size:.67rem;
}
.admin-photo-upload{
  margin:0 !important;
  display:block !important;
  flex:0 0 auto;
}
.admin-photo-upload input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.admin-photo-upload>span{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:0 12px;
  border:1px solid #111;
  border-radius:10px;
  background:#111;
  color:#fff !important;
  font-size:.67rem !important;
  font-weight:800 !important;
  cursor:pointer;
}
.admin-photo-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:9px;
}
.admin-photo-item{
  position:relative;
  min-width:0;
}
.admin-photo-item img{
  display:block;
  width:100%;
  aspect-ratio:4/5;
  object-fit:cover;
  border-radius:11px;
  background:#ededE8;
}
.admin-cover-pill{
  position:absolute;
  top:7px;
  left:7px;
  padding:5px 6px;
  border-radius:999px;
  background:#111;
  color:#fff;
  font-size:.44rem;
  letter-spacing:.1em;
  font-weight:900;
}
.admin-photo-actions{
  display:grid;
  gap:4px;
  margin-top:6px;
}
.admin-photo-actions button{
  min-height:30px;
  border:1px solid #d8d8d2;
  border-radius:8px;
  background:#fff;
  color:#55554f;
  font-size:.57rem;
  font-weight:720;
}
.admin-photo-empty{
  grid-column:1/-1;
  min-height:110px;
  border:1px dashed #d1d1cb;
  border-radius:11px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
}
.admin-photo-empty span{
  font-size:.72rem;
  font-weight:800;
}
.admin-photo-empty p{
  margin:5px 0 0;
  color:#8a8a83;
  font-size:.63rem;
}
.admin-photo-help{
  margin:12px 0 0;
  color:#8a8a83;
  font-size:.6rem;
  line-height:1.5;
}
.admin-preview-media{
  overflow:hidden;
}
.admin-preview-photo{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:0;
}
.admin-preview-media.has-photo>span,
.admin-preview-media.has-photo>strong{
  position:relative;
  z-index:2;
}
.admin-preview-media.has-photo>strong{
  display:none;
}

/* ===== PUBLIC PRODUCT PHOTOS ===== */
.product-photo-wrap{
  position:relative;
  width:100%;
  aspect-ratio:4/5;
  overflow:hidden;
  border-radius:17px;
  background:#ededE8;
}
.product-photo{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.product-photo-wrap .condition-pill{
  position:absolute;
  top:14px;
  left:14px;
  z-index:2;
}
.product-soldout-badge{
  position:absolute;
  right:14px;
  top:14px;
  z-index:2;
  padding:6px 8px;
  border-radius:999px;
  background:#111;
  color:#fff;
  font-size:.5rem;
  letter-spacing:.1em;
  font-weight:900;
}
.refined-product-main-media.has-real-photo{
  background:#efefe9;
}
.refined-product-real-photo{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:1;
}
.refined-product-main-media.has-real-photo .refined-product-condition,
.refined-product-main-media.has-real-photo .refined-product-favorite{
  z-index:4;
}
.product-thumb{
  overflow:hidden;
  padding:0;
}
.product-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.med-cart-thumb{
  overflow:hidden;
}
.med-cart-thumb-photo{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.saved-card-media{
  overflow:hidden;
}
.saved-card-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.saved-card-media span{
  display:block;
}

@media(max-width:620px){
  .admin-photo-manager-head{
    align-items:flex-start;
    flex-direction:column;
  }
  .admin-photo-upload{
    width:100%;
  }
  .admin-photo-upload>span{
    width:100%;
  }
  .admin-photo-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}


/* ===== PRODUCT · FULLSCREEN IMAGE VIEWER ===== */

/* Main product image: show the complete product instead of cropping it */
.refined-product-main-media.has-real-photo{
  background:#f2f2ed;
  cursor:zoom-in;
}
.refined-product-real-photo{
  object-fit:contain !important;
  object-position:center center;
  padding:18px;
  background:#f2f2ed;
}

/* Fullscreen viewer */
.product-lightbox[hidden]{
  display:none !important;
}
.product-lightbox{
  position:fixed;
  inset:0;
  z-index:9999;
  width:100vw;
  height:100dvh;
}
.product-lightbox-backdrop{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.97);
}
.product-lightbox-stage{
  position:relative;
  z-index:2;
  width:100%;
  height:100%;
  display:grid;
  grid-template-columns:72px minmax(0,1fr) 72px;
  grid-template-rows:minmax(0,1fr);
  align-items:center;
  justify-items:center;
  padding:
    max(18px,env(safe-area-inset-top))
    max(18px,env(safe-area-inset-right))
    max(18px,env(safe-area-inset-bottom))
    max(18px,env(safe-area-inset-left));
}
.product-lightbox-image-wrap{
  grid-column:2;
  grid-row:1;
  width:100%;
  height:100%;
  min-width:0;
  min-height:0;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}
.product-lightbox-image-wrap img{
  display:block;
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  object-fit:contain !important;
  object-position:center center;
}
.product-lightbox-close{
  position:absolute;
  top:max(16px,env(safe-area-inset-top));
  right:max(16px,env(safe-area-inset-right));
  z-index:4;
  width:46px;
  height:46px;
  border:1px solid rgba(255,255,255,.28);
  border-radius:50%;
  background:rgba(0,0,0,.42);
  color:#fff;
  display:grid;
  place-items:center;
  font-size:1.55rem;
  line-height:1;
}
.product-lightbox-nav{
  width:48px;
  height:48px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:50%;
  background:rgba(0,0,0,.36);
  color:#fff;
  display:grid;
  place-items:center;
  font-size:1.15rem;
}
.product-lightbox-prev{
  grid-column:1;
  grid-row:1;
}
.product-lightbox-next{
  grid-column:3;
  grid-row:1;
}
html.product-lightbox-open,
html.product-lightbox-open body{
  overflow:hidden !important;
}

@media(max-width:620px){
  .refined-product-real-photo{
    padding:10px;
  }

  .product-lightbox-stage{
    grid-template-columns:1fr;
    grid-template-rows:minmax(0,1fr);
    padding:
      max(12px,env(safe-area-inset-top))
      max(8px,env(safe-area-inset-right))
      max(14px,env(safe-area-inset-bottom))
      max(8px,env(safe-area-inset-left));
  }

  .product-lightbox-image-wrap{
    grid-column:1;
    grid-row:1;
    width:100%;
    height:100%;
  }

  .product-lightbox-image-wrap img{
    object-fit:contain !important;
  }

  .product-lightbox-nav{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:42px;
    height:42px;
    z-index:4;
  }

  .product-lightbox-prev{
    left:10px;
  }

  .product-lightbox-next{
    right:10px;
  }

  .product-lightbox-close{
    width:42px;
    height:42px;
    top:max(10px,env(safe-area-inset-top));
    right:max(10px,env(safe-area-inset-right));
  }
}


.admin-login-error{
  margin:0 0 13px;
  padding:11px 12px;
  border-radius:10px;
  background:#f2f2ed;
  color:#5f5f59;
  font-size:.7rem;
  line-height:1.45;
}
.admin-login-submit:disabled{
  opacity:.58;
  cursor:wait;
}

/* ===== DESIGN FIX 05 · PERFIL MÁS CERCA DEL CARRITO ===== */
.med-header-right{
  gap:2px;
}
@media(max-width:820px){
  .med-header-right{
    gap:1px;
  }
}

/* ===== FINAL POLISH · COMPACT MOBILE HERO ===== */
@media(max-width:620px){
  .home-static-search{
    padding:12px 18px 12px !important;
  }
  .home-static-search label{
    margin-bottom:8px !important;
  }
  .home-static-search input{
    min-height:40px !important;
    height:40px !important;
  }
  body.home-dark .hero,
  .hero{
    padding:26px 18px 34px !important;
    min-height:0 !important;
  }
  .hero .eyebrow{
    margin-bottom:8px !important;
    font-size:.55rem !important;
    line-height:1.35;
  }
  .hero h1{
    font-size:clamp(2.25rem,9.6vw,2.72rem) !important;
    line-height:.93 !important;
    letter-spacing:-.052em !important;
  }
  .hero-text{
    margin:16px 0 20px !important;
    font-size:.82rem !important;
    line-height:1.48 !important;
    max-width:31rem !important;
  }
  .hero .primary-link{
    font-size:.76rem !important;
    padding-bottom:3px !important;
  }
}

/* ===== DESIGN FIX 07 · CATEGORÍAS MÁS COMPACTAS ===== */
.category-strip{
  padding-top:8px !important;
  padding-bottom:10px !important;
}
.category-strip-inner{
  gap:7px !important;
  padding-top:3px !important;
  padding-bottom:3px !important;
}
.category-chip{
  min-height:34px !important;
  padding:0 13px !important;
  font-size:.70rem !important;
  line-height:1 !important;
}
@media(max-width:620px){
  .category-strip{
    padding-top:6px !important;
    padding-bottom:8px !important;
    padding-left:18px !important;
  }
  .category-strip-inner{
    gap:6px !important;
    padding-right:18px !important;
  }
  .category-chip{
    min-height:32px !important;
    padding:0 12px !important;
    font-size:.68rem !important;
  }
}

/* ===== DESIGN FIX 08 · RITMO ENTRE DESTACADOS, CATEGORÍAS Y NOVEDADES ===== */
/* Keep these three blocks visually connected instead of feeling like separate screens. */
.featured-carousel-section:not([hidden]){
  padding-bottom:38px !important;
}
.featured-carousel-section:not([hidden]) + .category-strip{
  padding-top:6px !important;
  border-top:0 !important;
}
.category-strip + .shop-section{
  padding-top:54px !important;
}
body.home-dark .featured-carousel-section:not([hidden]){
  border-bottom:0 !important;
}
body.home-dark .featured-carousel-section:not([hidden]) + .category-strip{
  border-top:0 !important;
}

@media(max-width:620px){
  .featured-carousel-section:not([hidden]){
    padding-bottom:24px !important;
  }
  .featured-carousel-section:not([hidden]) + .category-strip{
    padding-top:3px !important;
  }
  .category-strip + .shop-section,
  body.home-dark .category-strip + .shop-section{
    padding-top:32px !important;
  }
  .shop-section .section-head{
    margin-bottom:26px !important;
  }
}

/* ===== DESIGN FIX 09 · TODAS LAS IMÁGENES DEL CATÁLOGO CUADRADAS ===== */
/* Novedades uses the same 1:1 visual language as Destacados and Próximamente. */
.shop-section .novelties-grid .product-placeholder,
.shop-section .novelties-grid .product-photo-wrap{
  width:100% !important;
  height:auto !important;
  aspect-ratio:1 / 1 !important;
}
.shop-section .novelties-grid .product-photo{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}
@media(max-width:760px){
  .shop-section .novelties-grid .product-placeholder,
  .shop-section .novelties-grid .product-photo-wrap{
    aspect-ratio:1 / 1 !important;
    border-radius:14px !important;
  }
}

/* ===== DESIGN FIX 10 · TARJETAS DE NOVEDADES MÁS LIMPIAS EN MÓVIL ===== */
/* Compact product copy/actions while keeping names readable and cards aligned. */
@media(max-width:760px){
  .shop-section .novelties-grid .product-info{
    padding:10px 1px 7px !important;
  }
  .shop-section .novelties-grid .product-info h3{
    margin-top:3px !important;
    font-size:.80rem !important;
    line-height:1.18 !important;
    letter-spacing:-.015em !important;
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    overflow:hidden;
    min-height:1.9em;
  }
  .shop-section .novelties-grid .product-meta{
    font-size:.55rem !important;
    line-height:1.2 !important;
  }
  .shop-section .novelties-grid .price{
    margin:5px 0 0 !important;
    font-size:.76rem !important;
    line-height:1.1 !important;
  }
  .shop-section .novelties-grid .product-actions{
    gap:5px !important;
  }
  .shop-section .novelties-grid .primary-button,
  .shop-section .novelties-grid .secondary-button{
    min-height:36px !important;
    padding:0 7px !important;
    font-size:.60rem !important;
    line-height:1.05 !important;
    border-radius:999px !important;
  }
  .shop-section .novelties-grid .favorite-product-card>.favorite-button{
    width:34px !important;
    height:34px !important;
    top:10px !important;
    right:10px !important;
  }
  .shop-section .novelties-grid .favorite-button svg{
    width:17px !important;
    height:17px !important;
  }
}

/* ===== MEDIOUSAO · DESIGN FIX 11 · COMPACT MOBILE PRODUCT PAGE ===== */
@media(max-width:620px){
  .refined-product-page{
    padding:18px 16px 64px;
  }

  .refined-product-detail{
    gap:26px;
  }

  /* Gallery: compact, square and consistent with product cards */
  .refined-product-main-media{
    height:auto;
    aspect-ratio:1 / 1;
    min-height:0;
    border-radius:14px;
    padding:12px;
  }

  .refined-product-real-photo{
    padding:8px !important;
  }

  .refined-product-condition{
    left:12px;
    top:12px;
    padding:6px 9px;
    font-size:.54rem;
  }

  .refined-product-favorite{
    right:12px;
    top:12px;
  }

  .refined-product-thumbs{
    gap:7px;
    margin-top:9px;
    padding-bottom:2px;
    scrollbar-width:none;
  }
  .refined-product-thumbs::-webkit-scrollbar{display:none}

  .product-thumb{
    flex:0 0 58px;
    width:58px;
    height:58px;
    border-radius:9px;
    padding:0;
    overflow:hidden;
  }
  .product-thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
  }

  /* Product information: stronger hierarchy with less vertical bulk */
  .refined-product-topline{
    margin-bottom:10px;
    gap:12px;
  }

  .refined-product-info h1{
    font-size:clamp(2.35rem,11.5vw,3.55rem);
    line-height:.93;
    letter-spacing:-.058em;
  }

  .refined-product-price{
    margin:15px 0 18px;
    font-size:1.24rem;
    line-height:1.1;
  }

  .refined-product-specs>div{
    padding:12px 0;
  }

  .refined-product-description{
    padding:17px 0 16px;
  }
  .refined-product-description p{
    font-size:.86rem;
    line-height:1.58;
  }

  .refined-add-cart{
    min-height:50px;
    border-radius:999px;
    font-size:.84rem;
  }

  .refined-product-microcopy{
    margin:9px 0 22px;
    font-size:.64rem;
  }

  .refined-product-accordion summary{
    padding:15px 0;
    font-size:.8rem;
  }

  .refined-product-detail-copy{
    padding-bottom:16px;
  }
}

/* ===== DESIGN FIX 12 · CARRITO MÓVIL MÁS COMPACTO ===== */
@media(max-width:620px){
  .med-cart-header{
    min-height:72px !important;
    padding:14px 16px 12px !important;
    gap:12px !important;
  }
  .med-cart-kicker{
    margin-bottom:3px !important;
    font-size:.55rem !important;
  }
  .med-cart-header h2{
    font-size:1.34rem !important;
    line-height:1.05 !important;
  }
  .med-cart-close{
    width:38px !important;
    height:38px !important;
    font-size:1.38rem !important;
    flex:0 0 38px;
  }

  .med-cart-empty{
    padding:30px 20px 24px !important;
  }
  .med-cart-empty-icon{
    width:48px !important;
    height:48px !important;
    margin-bottom:18px !important;
  }
  .med-cart-empty h3{
    font-size:1.18rem !important;
    margin-bottom:6px !important;
  }
  .med-cart-empty p{
    margin-bottom:18px !important;
    font-size:.82rem !important;
  }
  .med-cart-shop-link{
    min-height:42px !important;
    padding:0 17px !important;
    border-radius:999px !important;
  }

  .med-cart-product{
    grid-template-columns:72px minmax(0,1fr) !important;
    gap:12px !important;
    padding:14px 16px !important;
    align-items:start !important;
  }
  .med-cart-thumb{
    width:72px !important;
    height:72px !important;
    aspect-ratio:1 / 1;
    padding:0 !important;
    border-radius:12px !important;
  }
  .med-cart-product-name{
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    font-size:.91rem !important;
    line-height:1.22 !important;
  }
  .med-cart-product-copy p{
    margin:4px 0 6px !important;
    font-size:.71rem !important;
    line-height:1.35 !important;
  }
  .med-cart-qty{
    margin-bottom:7px !important;
    font-size:.68rem !important;
  }
  .med-cart-remove{
    font-size:.7rem !important;
  }
  .med-cart-price{
    grid-column:2 !important;
    margin-top:7px !important;
    padding-top:0 !important;
    font-size:.86rem !important;
  }

  .med-cart-summary{
    padding:14px 16px !important;
  }
  .med-cart-summary-row{
    font-size:.86rem !important;
  }
  .med-cart-summary-row strong{
    font-size:.92rem !important;
  }
  .med-cart-shipping-note{
    margin-top:7px !important;
    font-size:.68rem !important;
    line-height:1.4 !important;
  }

  .med-cart-footer{
    padding:12px 14px calc(12px + env(safe-area-inset-bottom)) !important;
  }
  .med-cart-actions{
    grid-template-columns:1fr 1.15fr !important;
    gap:8px !important;
  }
  .med-cart-continue,
  .med-cart-actions .med-cart-checkout{
    min-height:46px !important;
    border-radius:999px !important;
    font-size:.7rem !important;
    padding:0 11px !important;
  }
  .med-cart-checkout{
    gap:8px !important;
  }
  .med-cart-footer>p{
    margin-top:7px !important;
    font-size:.58rem !important;
    line-height:1.3 !important;
  }
}

@media(max-width:390px){
  .med-cart-actions{
    grid-template-columns:1fr !important;
  }
  .med-cart-continue,
  .med-cart-actions .med-cart-checkout{
    min-height:44px !important;
  }
}

/* ===== MEDIOUSAO · DESIGN FIX 13 · COMPACT MOBILE CHECKOUT ===== */
.med-summary-thumb{
  aspect-ratio:1 / 1;
  height:auto;
  overflow:hidden;
  align-items:flex-end;
}
.med-summary-thumb.has-photo{
  padding:0;
  background:#f1f1ed;
}
.med-summary-thumb img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

@media(max-width:620px){
  .med-checkout-header{
    height:58px;
    padding:0 12px;
  }
  .med-checkout-back{
    font-size:1rem;
  }
  .med-checkout-brand{
    font-size:.76rem;
    letter-spacing:.19em;
  }
  .med-checkout-secure{
    font-size:.5rem;
    letter-spacing:.055em;
  }
  .med-checkout-shell{
    padding:22px 12px 54px;
    gap:14px;
  }
  .med-checkout-intro{
    padding-bottom:12px;
  }
  .med-checkout-eyebrow{
    margin-bottom:8px;
    font-size:.54rem;
  }
  .med-checkout-intro h1{
    font-size:clamp(2.35rem,11.7vw,3.45rem);
    line-height:.94;
    letter-spacing:-.055em;
  }
  .med-checkout-intro>p:last-child{
    margin-top:11px;
    font-size:.78rem;
    line-height:1.5;
  }
  .med-checkout-form{
    gap:10px;
  }
  .med-checkout-section{
    padding:16px 14px;
    border-radius:14px;
  }
  .med-step-head{
    grid-template-columns:31px 1fr;
    gap:11px;
    margin-bottom:17px;
  }
  .med-step-head>span{
    width:29px;
    height:29px;
    font-size:.56rem;
  }
  .med-step-head h2{
    margin:0 0 3px;
    font-size:1rem;
  }
  .med-step-head p{
    font-size:.7rem;
    line-height:1.35;
  }
  .med-checkout-section label{
    gap:6px;
    margin-bottom:11px;
    font-size:.69rem;
  }
  .med-checkout-section input,
  .med-checkout-section textarea{
    min-height:44px;
    border-radius:11px;
    padding:11px 12px;
    font-size:16px;
  }
  .med-checkout-section textarea{
    min-height:78px;
  }
  .med-field-grid{
    gap:0;
  }
  .med-fulfillment-options{
    gap:8px;
  }
  .med-choice-card{
    grid-template-columns:auto minmax(0,1fr) auto;
    gap:10px;
    padding:13px !important;
    border-radius:13px;
  }
  .med-choice-copy{
    gap:4px;
  }
  .med-choice-copy strong{
    font-size:.78rem;
  }
  .med-choice-copy span{
    font-size:.66rem;
    line-height:1.35;
  }
  .med-choice-card>b{
    font-size:.7rem;
  }
  .med-info-note{
    margin-top:10px;
    padding:12px 13px;
    border-radius:12px;
  }
  .med-info-note-label{
    margin-bottom:4px;
    font-size:.57rem;
  }
  .med-info-note p{
    font-size:.69rem;
    line-height:1.45;
  }
  .med-delivery-fields{
    margin-top:12px;
  }
  .med-cash-payment{
    grid-template-columns:40px minmax(0,1fr);
    gap:11px;
    padding:13px;
    border-radius:13px;
  }
  .med-cash-mark{
    width:40px;
    height:40px;
    font-size:.58rem;
  }
  .med-cash-payment strong{
    font-size:.8rem;
  }
  .med-cash-payment p{
    margin-top:3px;
    font-size:.67rem;
  }
  .med-selected-pill{
    padding:5px 8px;
    font-size:.53rem;
  }
  .med-policy-check{
    gap:9px !important;
    margin-bottom:15px !important;
    font-size:.69rem !important;
    line-height:1.45;
  }
  .med-policy-check input{
    width:17px !important;
    height:17px !important;
  }
  .med-confirm-order{
    min-height:50px;
    border-radius:999px;
    padding:0 17px;
    font-size:.8rem;
  }
  .med-confirm-note{
    margin-top:8px;
    font-size:.61rem;
  }
  .med-order-summary{
    padding:14px;
    border-radius:14px;
  }
  .med-summary-head{
    padding-bottom:12px;
  }
  .med-summary-head .eyebrow{
    margin-bottom:5px;
    font-size:.52rem;
  }
  .med-summary-head h2{
    font-size:1.25rem;
  }
  .med-summary-product{
    grid-template-columns:56px minmax(0,1fr);
    gap:10px;
    padding:14px 0;
  }
  .med-summary-thumb{
    width:56px;
    height:56px;
    border-radius:10px;
    padding:8px;
    font-size:.95rem;
  }
  .med-summary-product-copy{
    gap:3px;
    min-width:0;
  }
  .med-summary-product-copy strong{
    overflow:hidden;
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    font-size:.76rem;
    line-height:1.25;
  }
  .med-summary-product-copy span{
    font-size:.62rem;
  }
  .med-summary-product>strong{
    grid-column:2;
    font-size:.72rem;
  }
  .med-summary-lines{
    padding:8px 0;
  }
  .med-summary-lines>div{
    padding:5px 0;
    font-size:.7rem;
  }
  .med-summary-total{
    padding:13px 0 14px;
  }
  .med-summary-total span{
    font-size:.74rem;
  }
  .med-summary-total strong{
    font-size:1rem;
  }
  .med-summary-assurance{
    padding:11px 12px;
    border-radius:11px;
  }
  .med-summary-assurance span{
    font-size:.64rem;
  }
  .med-summary-assurance p{
    margin-top:3px;
    font-size:.64rem;
    line-height:1.4;
  }
  .med-summary-edit{
    margin-top:12px;
    font-size:.66rem;
  }
}

/* ===== MEDIOUSAO · DESIGN FIX 14 · COMPACT MOBILE ACCOUNT ===== */
@media(max-width:620px){
  .account-page-controls{
    padding:10px 12px 0;
  }
  .account-back-control{
    height:38px;
    padding:0 12px;
    gap:6px;
    font-size:.68rem;
  }
  .account-close-control{
    width:38px;
    height:38px;
    font-size:1.28rem;
  }
  .refined-account-shell{
    padding:18px 14px 68px;
    gap:18px;
  }
  .account-identity{
    grid-template-columns:44px minmax(0,1fr);
    gap:11px;
    padding-bottom:16px;
    margin-bottom:12px;
  }
  .account-avatar{
    width:44px;
    height:44px;
    font-size:.88rem;
  }
  .account-identity .account-eyebrow{
    margin-bottom:2px;
    font-size:.56rem;
  }
  .account-identity h1{
    margin-bottom:2px;
    font-size:1.22rem;
  }
  .account-email{
    display:block;
    max-width:100%;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:.67rem;
  }
  .refined-account-nav{
    display:flex;
    gap:6px;
    margin:0 -14px;
    padding:0 14px 6px;
    overflow-x:auto;
    scrollbar-width:none;
  }
  .refined-account-nav::-webkit-scrollbar{display:none}
  .refined-account-nav .account-nav-item{
    flex:0 0 auto;
    min-height:38px;
    padding:0 12px;
    border:1px solid #dfdfda;
    border-radius:999px;
    background:#fff;
    font-size:.7rem;
  }
  .refined-account-nav .account-nav-item.active{
    background:#111;
    color:#fff;
    border-color:#111;
  }
  .account-count-badge{
    min-width:19px !important;
    height:19px !important;
    padding:0 5px !important;
    font-size:.56rem !important;
  }
  .refined-account-content .account-panel-head{
    padding-bottom:18px;
    margin-bottom:18px;
  }
  .refined-account-content .account-panel-head .account-eyebrow{
    margin-bottom:7px;
    font-size:.56rem;
  }
  .refined-account-content .account-panel-head h2{
    margin-bottom:7px;
    font-size:clamp(2.25rem,11vw,3rem);
    line-height:.96;
  }
  .refined-account-content .account-panel-head>p:last-child{
    max-width:34rem;
    font-size:.78rem;
    line-height:1.48;
  }
  .refined-account-grid{
    grid-template-columns:1fr;
    gap:9px;
  }
  .account-primary-card{
    grid-column:auto;
    padding:16px;
    border-radius:14px;
  }
  .refined-card-head{
    padding-bottom:12px;
  }
  .refined-card-head>span{
    font-size:.6rem;
  }
  .refined-card-head button{
    font-size:.68rem;
  }
  .refined-info-row{
    padding:13px 0;
    gap:16px;
  }
  .refined-info-row span{
    font-size:.71rem;
  }
  .refined-info-row strong{
    max-width:62%;
    font-size:.74rem;
    overflow-wrap:anywhere;
  }
  .account-summary-card{
    min-height:0;
    padding:13px 15px;
    border-radius:14px;
    flex-direction:row;
    align-items:center;
    justify-content:flex-start;
    gap:14px;
  }
  .refined-summary-number{
    flex:0 0 42px;
    font-size:1.55rem;
  }
  .account-summary-card strong{
    display:block;
    font-size:.76rem;
  }
  .account-summary-card p{
    margin-top:2px;
    font-size:.67rem;
  }
  .refined-order-table-head{
    display:none;
  }
  .refined-empty-row{
    min-height:205px;
    padding:24px 0 4px;
  }
  .refined-empty-row strong{
    font-size:1.12rem;
  }
  .refined-empty-row p{
    margin:6px 0 15px;
    font-size:.77rem;
  }
  .refined-empty-row a{
    font-size:.72rem;
  }
  .reservation-legend{
    gap:9px 14px;
    padding-bottom:14px;
    margin-bottom:14px;
  }
  .reservation-legend span{
    gap:6px;
    font-size:.62rem;
  }
  .refined-reservation-grid,
  .refined-saved-grid{
    gap:10px;
  }
  .refined-empty-state,
  .empty-state.compact{
    min-height:190px;
    padding:18px;
    border-radius:14px;
  }
  .empty-index{
    font-size:.56rem;
  }
  .refined-empty-state h3,
  .empty-state.compact h3{
    margin-bottom:6px;
    font-size:1.12rem;
  }
  .refined-empty-state p,
  .empty-state.compact p{
    margin-bottom:14px;
    font-size:.76rem;
    line-height:1.45;
  }
  .refined-empty-state a,
  .empty-state.compact a{
    font-size:.72rem;
  }
  .refined-settings-list button{
    min-height:70px;
    padding:13px 2px;
  }
  .refined-settings-list button div{
    gap:3px;
  }
  .refined-settings-list strong{
    font-size:.8rem;
  }
  .refined-settings-list span{
    font-size:.69rem;
    line-height:1.35;
  }
  .refined-settings-list b{
    font-size:1rem;
  }
  .settings-note{
    margin-top:18px;
    padding:14px;
    border-radius:12px;
  }
  .settings-note span{
    font-size:.56rem;
  }
  .settings-note p{
    margin-top:5px;
    font-size:.7rem;
    line-height:1.45;
  }
}

/* ===== MEDIOUSAO · DESIGN FIX 15 · COMPACT MOBILE AUTH ===== */
@media(max-width:620px){
  .auth-shell{
    padding:20px 14px 58px;
    gap:18px;
  }
  .auth-intro{
    padding-top:0;
  }
  .auth-intro .eyebrow{
    margin-bottom:8px;
    font-size:.56rem;
    letter-spacing:.13em;
  }
  .auth-intro h1{
    max-width:12ch;
    font-size:clamp(2.35rem,11.5vw,3.15rem);
    line-height:.92;
    letter-spacing:-.058em;
  }
  .auth-intro>p:last-child{
    margin-top:11px;
    max-width:34rem;
    font-size:.76rem;
    line-height:1.48;
  }
  .auth-card{
    padding:14px;
    border-radius:14px;
  }
  .auth-tabs{
    gap:3px;
    padding:3px;
    margin-bottom:18px;
    border-radius:999px;
  }
  .auth-tab{
    min-height:38px;
    padding:0 10px;
    border-radius:999px;
    font-size:.7rem;
  }
  .auth-form-head{
    margin-bottom:17px;
  }
  .auth-form-head h2{
    margin-bottom:4px;
    font-size:1.45rem;
    letter-spacing:-.038em;
  }
  .auth-form-head p{
    font-size:.74rem;
    line-height:1.4;
  }
  .auth-form label{
    gap:6px;
    margin-bottom:11px;
  }
  .auth-form label>span{
    font-size:.67rem;
  }
  .auth-form input:not([type="checkbox"]){
    min-height:46px;
    padding:11px 13px;
    border-radius:11px;
    font-size:16px;
  }
  .auth-primary{
    min-height:46px;
    margin-top:3px;
    padding:0 16px;
    border-radius:999px;
    font-size:.77rem;
  }
  .auth-text-action{
    margin-top:12px;
    font-size:.68rem;
  }
  .auth-policy{
    gap:8px !important;
    margin-top:2px;
    margin-bottom:12px !important;
    line-height:1.38;
  }
  .auth-policy input{
    width:17px;
    height:17px;
  }
  .auth-policy span{
    font-size:.67rem !important;
  }
  .auth-demo-note{
    margin-top:16px;
    padding-top:13px;
  }
  .auth-demo-note span{
    font-size:.54rem;
  }
  .auth-demo-note p{
    margin-top:4px;
    font-size:.66rem;
    line-height:1.4;
  }
}

/* ===== DESIGN FIX 16 · COMPACT MOBILE FOOTER ===== */
@media(max-width:620px){
  .med-footer{
    padding:28px 16px calc(14px + env(safe-area-inset-bottom)) !important;
  }
  .med-footer-top{
    gap:22px !important;
    padding-bottom:22px !important;
  }
  .med-footer-brand{
    margin-bottom:8px !important;
    font-size:.96rem !important;
    letter-spacing:.18em !important;
  }
  .med-footer-brand-block p{
    margin-bottom:5px !important;
    max-width:245px !important;
    font-size:.71rem !important;
    line-height:1.38 !important;
  }
  .med-footer-brand-block span{
    font-size:.55rem !important;
    letter-spacing:.07em !important;
  }
  .med-footer-nav{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:12px 10px !important;
  }
  .med-footer-nav>div{
    min-width:0;
  }
  .med-footer-label{
    margin-bottom:8px !important;
    font-size:.5rem !important;
    letter-spacing:.12em !important;
  }
  .med-footer-nav a{
    margin-bottom:7px !important;
    font-size:.64rem !important;
    line-height:1.22 !important;
    overflow-wrap:anywhere;
  }
  .med-footer-bottom{
    grid-template-columns:auto 1fr !important;
    gap:8px 12px !important;
    padding-top:14px !important;
    font-size:.56rem !important;
  }
  .med-footer-bottom>p{
    white-space:nowrap;
  }
  .med-footer-legal{
    justify-self:end !important;
    gap:10px !important;
  }
  .med-footer-email{
    grid-column:1/-1 !important;
    justify-self:start !important;
    font-size:.58rem !important;
  }
}

@media(max-width:360px){
  .med-footer{
    padding-left:14px !important;
    padding-right:14px !important;
  }
  .med-footer-nav{
    gap:10px 7px !important;
  }
  .med-footer-nav a{
    font-size:.61rem !important;
  }
  .med-footer-legal{
    gap:8px !important;
  }
}

/* ===== MEDIOUSAO · DESIGN FIX 17 · DESKTOP POLISH ===== */
@media(min-width:821px){
  /* Header: slightly tighter and optically balanced on desktop */
  .med-black-header{
    height:72px !important;
    padding-left:32px !important;
    padding-right:32px !important;
  }
  .med-header-brand{
    font-size:.96rem !important;
    letter-spacing:.22em !important;
  }
  .med-header-right{
    gap:0 !important;
  }
  .med-icon-btn{
    width:38px !important;
    height:38px !important;
  }
  .med-icon-btn svg{
    width:19px !important;
    height:19px !important;
  }

  /* Search: centered capsule instead of spanning the entire desktop */
  .home-static-search{
    padding:13px 7vw 15px !important;
  }
  .home-static-search-inner{
    width:min(1180px,100%) !important;
  }
  .home-static-search label{
    margin-bottom:8px !important;
    font-size:.57rem !important;
  }
  .home-static-search input{
    min-height:42px !important;
    height:42px !important;
    padding:8px 18px !important;
    font-size:.94rem !important;
  }

  /* Featured: smaller square cards and aligned with the rest of the catalog */
  .featured-carousel-section{
    padding:52px 7vw 34px !important;
  }
  .featured-carousel-head{
    margin-bottom:24px !important;
  }
  .featured-carousel-head h2{
    font-size:clamp(2rem,3.2vw,3.35rem) !important;
  }
  .featured-intro{
    margin-top:10px !important;
    max-width:540px !important;
    font-size:.78rem !important;
  }
  .featured-product-card{
    flex-basis:clamp(205px,18vw,260px) !important;
  }
  .featured-product-media{
    border-radius:16px !important;
  }
  .featured-product-copy{
    padding-top:11px !important;
  }
  .featured-product-copy h3{
    font-size:.88rem !important;
  }
  .featured-product-copy>span{
    padding-top:14px !important;
    font-size:.62rem !important;
  }

  /* Categories: compact, aligned row */
  .category-strip{
    padding-left:7vw !important;
    padding-right:7vw !important;
    padding-top:5px !important;
    padding-bottom:10px !important;
  }
  .category-strip-inner{
    max-width:1600px;
    margin:0 auto;
    gap:7px !important;
  }
  .category-chip{
    min-height:33px !important;
    padding:0 13px !important;
    font-size:.68rem !important;
  }

  /* Novedades: cleaner desktop density */
  .category-strip + .shop-section,
  body.home-dark .category-strip + .shop-section{
    padding-top:46px !important;
  }
  .shop-section .section-head{
    margin-bottom:28px !important;
  }
  .shop-section .novelties-grid{
    gap:30px 16px !important;
  }
  .shop-section .novelties-grid .product-media{
    border-radius:16px !important;
  }
  .shop-section .novelties-grid .product-info{
    padding-top:12px !important;
    padding-bottom:9px !important;
  }
  .shop-section .novelties-grid .product-info h3{
    font-size:.94rem !important;
  }
  .shop-section .novelties-grid .price{
    font-size:.86rem !important;
  }
  .shop-section .novelties-grid .primary-button,
  .shop-section .novelties-grid .secondary-button{
    min-height:40px !important;
    font-size:.68rem !important;
  }

  /* Próximamente: same restrained scale as Destacados */
  .upcoming-section{
    padding-top:74px !important;
    padding-bottom:86px !important;
  }
  .upcoming-head{
    margin-bottom:26px !important;
  }
  .upcoming-head h2{
    font-size:clamp(2.2rem,3.6vw,4rem) !important;
  }
  .upcoming-card{
    flex-basis:clamp(205px,18vw,260px) !important;
  }
  .upcoming-media{
    border-radius:16px !important;
    padding:17px !important;
  }
  .upcoming-media strong{
    font-size:clamp(2.2rem,3.8vw,4rem) !important;
  }
  .upcoming-copy{
    padding-top:12px !important;
  }
  .upcoming-copy h3{
    font-size:.92rem !important;
  }
  .upcoming-copy p{
    font-size:.69rem !important;
  }
  .reserve-button{
    min-height:36px !important;
    padding:0 14px !important;
    font-size:.68rem !important;
  }

  /* Footer: less oversized, more editorial on wide screens */
  .med-footer{
    padding:52px 7vw 24px !important;
  }
  .med-footer-top{
    grid-template-columns:minmax(240px,.85fr) minmax(0,1.35fr) !important;
    gap:72px !important;
    padding-bottom:42px !important;
  }
  .med-footer-brand{
    margin-bottom:14px !important;
    font-size:1.08rem !important;
  }
  .med-footer-brand-block p{
    max-width:310px !important;
    font-size:.80rem !important;
    line-height:1.5 !important;
  }
  .med-footer-brand-block span{
    font-size:.65rem !important;
  }
  .med-footer-nav{
    gap:32px !important;
  }
  .med-footer-label{
    margin-bottom:12px !important;
    font-size:.57rem !important;
  }
  .med-footer-nav a{
    margin-bottom:11px !important;
    font-size:.76rem !important;
  }
  .med-footer-bottom{
    padding-top:18px !important;
    font-size:.64rem !important;
  }
}


/* ===== MEDIOUSAO · DESIGN FIX 18 · CLEAN HERO + SEARCH ===== */
/* Remove the old two-column hero balance after deleting the decorative cards. */
.hero{
  grid-template-columns:minmax(0,1fr) !important;
}
.hero-copy{
  max-width:920px;
}
@media(min-width:821px){
  .hero{
    gap:0 !important;
    padding-right:10vw !important;
  }
  .hero-copy{
    max-width:900px !important;
  }
  .home-static-search{
    padding-top:12px !important;
    padding-bottom:12px !important;
  }
}


/* ===== DESIGN FIX 19 · CATEGORÍAS SIMPLIFICADAS ===== */
/* Audiencia (Hombre / Mujer / Niño) queda en la ficha del producto, no en la barra principal. */
.category-strip-inner{
  gap:10px;
}
.category-chip{
  min-height:38px;
  padding:0 20px;
  font-size:13px;
  font-weight:700;
}
@media (max-width: 760px){
  .category-strip-inner{
    gap:9px;
  }
  .category-chip{
    min-height:40px;
    padding:0 18px;
    font-size:13.5px;
  }
}


/* ===== MEDIOUSAO · DESIGN FIX 20 · MINIMAL SECTION LABELS ===== */
/* One clear label per section; the content below does the explaining. */
.featured-carousel-head,
.upcoming-head,
.process-intro,
.service-confidence-head,
.shop-section .section-head{
  align-items:center !important;
}
.featured-carousel-head,
.upcoming-head{
  margin-bottom:18px !important;
}
.shop-section .section-head{
  margin-bottom:22px !important;
}
.process-intro{
  display:block !important;
  padding-bottom:16px !important;
  margin-bottom:0 !important;
}
.service-confidence-head{
  display:block !important;
  margin-bottom:14px !important;
}
.featured-eyebrow,
.shop-eyebrow,
.upcoming-eyebrow,
.process-eyebrow,
.service-eyebrow{
  margin:0 !important;
}

/* Próximamente: smaller, cleaner cards; one card plus a useful peek of the next on mobile. */
.upcoming-media{
  padding:16px !important;
}
.upcoming-media strong{
  font-size:clamp(2rem,4vw,3.6rem) !important;
}
.upcoming-number{
  top:16px !important;
  right:16px !important;
}
.upcoming-copy{
  min-height:70px;
  padding-top:10px !important;
  gap:10px !important;
}
.upcoming-copy > div{
  min-width:0;
}
.upcoming-copy h3{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  margin-bottom:3px !important;
}
.reserve-button{
  min-height:34px !important;
  padding:0 13px !important;
}

/* Footer: enough scroll room for iPhone browser chrome. */
@media(max-width:620px){
  .featured-carousel-head,
  .upcoming-head{
    margin-bottom:14px !important;
  }
  .shop-section .section-head{
    margin-bottom:18px !important;
  }
  .process-intro{
    padding-bottom:10px !important;
  }
  .service-confidence-head{
    margin-bottom:10px !important;
  }
  .upcoming-section{
    padding-top:44px !important;
    padding-bottom:48px !important;
  }
  .upcoming-track{
    gap:12px !important;
  }
  .upcoming-card{
    flex:0 0 52vw !important;
    max-width:205px !important;
  }
  .upcoming-media{
    padding:14px !important;
    border-radius:14px !important;
  }
  .upcoming-media strong{
    font-size:clamp(1.75rem,8vw,2.45rem) !important;
  }
  .upcoming-number{
    top:14px !important;
    right:14px !important;
    font-size:.56rem !important;
  }
  .upcoming-copy{
    min-height:64px !important;
    align-items:flex-start !important;
    padding-top:9px !important;
  }
  .upcoming-copy h3{
    font-size:.78rem !important;
    line-height:1.15 !important;
  }
  .upcoming-copy p{
    font-size:.62rem !important;
    line-height:1.3 !important;
  }
  .reserve-button{
    min-height:32px !important;
    padding:0 11px !important;
    font-size:.62rem !important;
  }
  .med-footer{
    padding-bottom:calc(84px + env(safe-area-inset-bottom)) !important;
  }
}


/* ===== MEDIOUSAO · DESIGN FIX 24 · CONSISTENT NAV + SECTION LABELS ===== */
/* Keep category controls visually equal: same footprint regardless of label length. */
.category-strip-inner{
  gap:10px !important;
}
.category-chip{
  box-sizing:border-box !important;
  flex:0 0 142px !important;
  width:142px !important;
  min-width:142px !important;
  min-height:42px !important;
  padding:0 12px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  white-space:nowrap !important;
  font-size:13.5px !important;
  line-height:1 !important;
}

/* One typographic system for every main home-section label. */
.shop-eyebrow,
.featured-eyebrow,
.upcoming-eyebrow,
.process-eyebrow,
.service-eyebrow{
  margin:0 !important;
  font-size:.82rem !important;
  line-height:1.1 !important;
  letter-spacing:.14em !important;
  font-weight:800 !important;
  text-transform:uppercase !important;
}
body.home-dark .shop-eyebrow,
body.home-dark .featured-eyebrow,
body.home-dark .upcoming-eyebrow,
body.home-dark .process-eyebrow,
body.home-dark .service-eyebrow{
  color:#f2f2ed !important;
}
.process-intro,
.service-confidence-head{
  padding-bottom:14px !important;
  margin-bottom:0 !important;
}

/* Hero stays intentionally minimal: location + statement only. */
.hero-text,
.hero .primary-link{
  display:none !important;
}

/* Upcoming is swipe/drag only and uses a restrained wordmark scale. */
.upcoming-controls{
  display:none !important;
}
.upcoming-media strong{
  font-size:clamp(1.75rem,3.2vw,3rem) !important;
  line-height:.9 !important;
  max-width:100% !important;
  overflow:hidden !important;
}

/* Product placeholders should read cleanly instead of clipping on narrow cards. */
.shop-section .novelties-grid .shoe-wordmark{
  font-size:clamp(1.55rem,3.2vw,3.4rem) !important;
  line-height:.88 !important;
  max-width:100% !important;
  overflow-wrap:anywhere !important;
}

@media(max-width:760px){
  .category-strip-inner{
    gap:9px !important;
  }
  .category-chip{
    flex-basis:132px !important;
    width:132px !important;
    min-width:132px !important;
    min-height:42px !important;
    padding:0 10px !important;
    font-size:13.5px !important;
  }
  .shop-eyebrow,
  .featured-eyebrow,
  .upcoming-eyebrow,
  .process-eyebrow,
  .service-eyebrow{
    font-size:.82rem !important;
    letter-spacing:.14em !important;
  }
  .upcoming-media strong{
    font-size:clamp(1.55rem,6.4vw,2.05rem) !important;
  }
  .shop-section .novelties-grid .shoe-wordmark{
    font-size:clamp(1.35rem,6.7vw,2.15rem) !important;
    line-height:.9 !important;
  }
}


/* ===== MEDIOUSAO · FIX 26 · BRAND + DRAWER MENU ===== */
.med-wordmark{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  gap:0;
  white-space:nowrap;
  line-height:1;
}
.med-wordmark-part{display:inline-block;letter-spacing:inherit}
.med-exchange-mark{
  width:.96em;
  height:.96em;
  flex:0 0 auto;
  overflow:visible;
  color:currentColor;
}
.med-exchange-mark .exchange-arc,
.med-exchange-mark .exchange-arrow{
  fill:none;stroke:currentColor;stroke-width:2.35;stroke-linecap:round;stroke-linejoin:round;
}
.med-exchange-mark .exchange-person,
.med-exchange-mark .exchange-object{fill:currentColor;stroke:none}
.med-header-brand.med-wordmark{letter-spacing:.16em}
.med-header-brand .med-exchange-mark{font-size:1em;margin:0 -.07em 0 -.05em}
.med-footer-brand.med-wordmark{justify-content:flex-start;letter-spacing:.13em}
.med-footer-brand .med-exchange-mark{margin:0 -.07em 0 -.05em}
.med-checkout-brand.med-wordmark,.admin-brand.med-wordmark,.admin-login-brand.med-wordmark{letter-spacing:.15em}
.med-checkout-brand .med-exchange-mark,.admin-brand .med-exchange-mark,.admin-login-brand .med-exchange-mark{margin:0 -.07em 0 -.05em}

/* Full-height light drawer */
.med-menu-wrap{position:relative}
.med-menu-trigger{z-index:102}
.med-menu-icon{width:20px;height:16px;display:flex;flex-direction:column;justify-content:space-between}
.med-menu-icon i{display:block;width:20px;height:1.6px;background:currentColor;border-radius:2px;transition:transform .24s ease,opacity .18s ease,width .24s ease}
.med-menu-trigger[aria-expanded="true"] .med-menu-icon i:nth-child(1){transform:translateY(7.2px) rotate(45deg)}
.med-menu-trigger[aria-expanded="true"] .med-menu-icon i:nth-child(2){opacity:0;width:0}
.med-menu-trigger[aria-expanded="true"] .med-menu-icon i:nth-child(3){transform:translateY(-7.2px) rotate(-45deg)}
.med-menu-backdrop{
  position:fixed;inset:0;background:rgba(0,0,0,.38);opacity:0;pointer-events:none;transition:opacity .28s ease;z-index:88;
}
.med-menu-backdrop.open{opacity:1;pointer-events:auto}
.med-menu-drawer{
  position:fixed;left:0;top:0;bottom:0;width:min(420px,92vw);
  background:#f7f5ef;color:#111;z-index:100;
  transform:translateX(-102%);transition:transform .32s cubic-bezier(.22,.61,.36,1);
  padding:22px 28px 30px;display:flex;flex-direction:column;overflow-y:auto;
  box-shadow:18px 0 60px rgba(0,0,0,.14);
}
.med-menu-drawer.open{transform:translateX(0)}
body.med-menu-open{overflow:hidden}
.med-menu-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:24px;border-bottom:1px solid #d8d5cd}
.med-menu-drawer-brand{display:inline-flex;align-items:center;gap:0;font-size:.84rem;font-weight:950;letter-spacing:.14em;white-space:nowrap}
.med-menu-drawer-brand .med-exchange-mark{font-size:1em;margin:0 -.07em 0 -.05em}
.med-menu-close{width:42px;height:42px;border:1px solid #d2cfc7;border-radius:50%;background:transparent;color:#111;font-size:1.55rem;line-height:1;display:grid;place-items:center;padding:0}
.med-menu-primary{padding:24px 0 20px;display:grid}
.med-menu-main-link,.med-menu-accordion-trigger{
  min-height:54px;width:100%;display:flex;align-items:center;justify-content:space-between;
  padding:0;border:0;border-bottom:1px solid #dfdcd4;background:transparent;color:#111;
  text-align:left;text-transform:uppercase;letter-spacing:.075em;font-size:.95rem;font-weight:840;
}
.med-menu-main-link:hover,.med-menu-accordion-trigger:hover{opacity:.58}
.med-menu-chevron{font-size:1.15rem;font-weight:400;transition:transform .2s ease}
.med-menu-accordion-trigger[aria-expanded="true"] .med-menu-chevron{transform:rotate(180deg)}
.med-menu-submenu{display:grid;padding:6px 0 13px 18px;border-bottom:1px solid #dfdcd4}
.med-menu-submenu[hidden]{display:none}
.med-menu-submenu a{padding:9px 0;color:#5d5b55;font-size:.84rem;font-weight:680}
.med-menu-submenu a:hover{color:#111}
.med-menu-lower{margin-top:auto;padding-top:20px;display:grid;gap:24px}
.med-menu-section-label{margin:0 0 9px;color:#8a877f;font-size:.59rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}
.med-menu-social-links{display:flex;flex-wrap:wrap;gap:10px 18px}
.med-menu-social-links a,.med-menu-contact a{font-size:.78rem;font-weight:700;color:#111}
.med-menu-contact a{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}

/* Drawer navigation landing context */
#tienda{scroll-margin-top:92px}

/* Carteras acts as its own category and also belongs to Accesorios in JS. */

@media(max-width:620px){
  .med-header-brand.med-wordmark{font-size:.82rem;letter-spacing:.12em}
  .med-header-brand .med-exchange-mark{font-size:1.05em}
  .med-menu-drawer{width:min(350px,91vw);padding:17px 20px 24px}
  .med-menu-drawer-head{padding-bottom:18px}
  .med-menu-main-link,.med-menu-accordion-trigger{min-height:50px;font-size:.88rem}
  .med-menu-lower{padding-top:18px}
}

/* Keep the original menu trigger visible as the close X over the drawer. */
.med-menu-trigger[aria-expanded="true"]{
  position:fixed;
  left:24px;
  top:17px;
  z-index:120;
  color:#111;
  background:transparent;
}
.med-menu-close{display:none}
.med-menu-drawer-head{padding-left:48px}
@media(max-width:620px){
  .med-menu-trigger[aria-expanded="true"]{left:12px;top:13px}
  .med-menu-drawer-head{padding-left:42px}
}

/* ===== MEDIOUSAO · FIX 29 · OFFICIAL WORDMARK + SOCIAL ICONS ===== */
.med-exchange-mark{
  width:1.10em!important;
  height:1.10em!important;
  font-size:1.10em!important;
  margin:0 -.035em 0 -.02em!important;
  transform:translateY(.015em);
}
.med-exchange-mark .exchange-arc,
.med-exchange-mark .exchange-arrow{
  fill:none;
  stroke:currentColor;
  stroke-width:4.2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.med-exchange-mark .exchange-person,
.med-exchange-mark .exchange-person-body,
.med-exchange-mark .exchange-object{
  fill:currentColor;
  stroke:none;
}
.med-menu-drawer-brand .med-exchange-mark{
  width:1.13em!important;
  height:1.13em!important;
  font-size:1.13em!important;
}
.med-menu-social-links{
  display:grid!important;
  gap:10px!important;
}
.med-social-link{
  display:inline-flex!important;
  align-items:center;
  gap:10px;
  width:max-content;
  min-height:32px;
  color:#111!important;
  text-decoration:none!important;
}
.med-social-icon{
  width:20px;
  height:20px;
  flex:0 0 20px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.med-social-icon .social-fill{
  fill:currentColor;
  stroke:none;
}
.med-social-link span{
  font-size:.79rem;
  font-weight:720;
  letter-spacing:.01em;
}
@media(max-width:620px){
  .med-header-brand .med-exchange-mark{
    width:1.12em!important;
    height:1.12em!important;
    font-size:1.12em!important;
  }
  .med-social-link{min-height:34px}
  .med-social-icon{width:21px;height:21px;flex-basis:21px}
}

/* ===== MEDIOUSAO · FIX 30 · EXACT WORDMARK + VISIBLE MENU CLOSE ===== */
/* Use the exact approved wordmark artwork so the exchange O is never redrawn by CSS/SVG. */
.med-wordmark{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:visible !important;
  white-space:normal !important;
}
.med-wordmark-img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center !important;
}
.med-header-brand.med-wordmark{
  width:clamp(170px,22vw,230px) !important;
  max-width:46vw !important;
  height:36px !important;
  font-size:0 !important;
  letter-spacing:0 !important;
}
.med-footer-brand.med-wordmark,
.med-checkout-brand.med-wordmark,
.admin-brand.med-wordmark,
.admin-login-brand.med-wordmark{
  width:190px !important;
  max-width:70vw !important;
  height:34px !important;
  font-size:0 !important;
  letter-spacing:0 !important;
}
.med-menu-drawer-brand{
  width:190px !important;
  max-width:70% !important;
  height:32px !important;
  display:flex !important;
  align-items:center !important;
}
.med-menu-wordmark-img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:left center !important;
}
/* Always show a dedicated close control inside the drawer. */
.med-menu-close{
  display:grid !important;
  place-items:center !important;
  flex:0 0 42px !important;
  margin-left:auto !important;
  position:relative !important;
  z-index:122 !important;
}
.med-menu-drawer-head{
  padding-left:0 !important;
}
/* Keep the original hamburger in the header; the drawer's own X handles closing. */
.med-menu-trigger[aria-expanded="true"]{
  position:relative !important;
  left:auto !important;
  top:auto !important;
  z-index:102 !important;
  color:#fff !important;
  background:transparent !important;
}
.med-menu-trigger[aria-expanded="true"] .med-menu-icon i:nth-child(1),
.med-menu-trigger[aria-expanded="true"] .med-menu-icon i:nth-child(2),
.med-menu-trigger[aria-expanded="true"] .med-menu-icon i:nth-child(3){
  transform:none !important;
  opacity:1 !important;
  width:20px !important;
}
@media(max-width:620px){
  .med-header-brand.med-wordmark{
    width:184px !important;
    max-width:52vw !important;
    height:30px !important;
  }
  .med-menu-drawer-brand{
    width:174px !important;
    height:28px !important;
  }
  .med-menu-close{
    width:40px !important;
    height:40px !important;
    flex-basis:40px !important;
  }
}


/* ===== MEDIOUSAO · FIX 31 · LEGAL FOOTER + SOCIAL ICONS + MATCHED SECTION LABELS ===== */
/* Make these two section labels literally identical in size and rhythm. */
.process-eyebrow,
.service-eyebrow{
  font-size:.88rem !important;
  line-height:1 !important;
  letter-spacing:.15em !important;
  font-weight:800 !important;
  text-transform:uppercase !important;
  color:#f2f2ed !important;
}
.process-intro,
.service-confidence-head{
  display:flex !important;
  align-items:center !important;
  min-height:30px !important;
  padding-bottom:14px !important;
  margin-bottom:0 !important;
}

.med-footer-bottom{
  align-items:center !important;
  gap:24px !important;
}
.med-footer-legal{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:18px !important;
  flex-wrap:wrap !important;
}
.med-footer-legal a{
  white-space:nowrap !important;
}
.med-footer-social-icons{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:14px;
}
.med-footer-social-icons a{
  width:38px;
  height:38px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  display:grid;
  place-items:center;
  color:#bdbdb7;
  transition:border-color .18s ease,color .18s ease,background .18s ease;
}
.med-footer-social-icons a:hover{
  color:#fff;
  border-color:rgba(255,255,255,.5);
  background:rgba(255,255,255,.04);
}
.med-footer-social-icons svg{
  width:19px;
  height:19px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
}
.med-footer-social-icons .social-fill{
  fill:currentColor;
  stroke:none;
}

/* Standalone legal pages. */
.legal-body{
  margin:0;
  background:#f6f3ea;
  color:#111;
  min-height:100vh;
}
.legal-header{
  min-height:88px;
  padding:0 6vw;
  border-bottom:1px solid #d9d5cb;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}
.legal-brand{
  width:190px;
  height:34px;
}
.legal-back{
  font-size:.82rem;
  font-weight:750;
  text-decoration:underline;
  text-underline-offset:5px;
}
.legal-main{
  width:min(860px,88vw);
  margin:0 auto;
  padding:72px 0 110px;
}
.legal-main>.eyebrow{
  color:#77736b;
}
.legal-main h1{
  font-size:clamp(2.6rem,6vw,5rem);
  line-height:.95;
  margin:16px 0 14px;
  letter-spacing:-.045em;
}
.legal-updated{
  color:#77736b;
  margin:0 0 48px;
}
.legal-section{
  border-top:1px solid #d9d5cb;
  padding:26px 0 28px;
}
.legal-section h2{
  font-size:1.05rem;
  margin:0 0 12px;
}
.legal-section p{
  color:#55524c;
  line-height:1.65;
  margin:0;
  max-width:760px;
}
.legal-section a{
  text-decoration:underline;
  text-underline-offset:4px;
}

@media(max-width:700px){
  .process-eyebrow,
  .service-eyebrow{
    font-size:.88rem !important;
  }
  .med-footer-bottom{
    display:grid !important;
    grid-template-columns:1fr !important;
    justify-items:center !important;
    text-align:center !important;
    gap:18px !important;
  }
  .med-footer-bottom>p{
    margin:0 !important;
  }
  .med-footer-legal{
    gap:10px 18px !important;
  }
  .med-footer-social-icons{
    justify-content:center;
    gap:12px;
  }
  .med-footer-social-icons a{
    width:42px;
    height:42px;
  }
  .legal-header{
    min-height:74px;
    padding:0 20px;
  }
  .legal-brand{
    width:150px;
    height:28px;
  }
  .legal-back{
    font-size:.75rem;
  }
  .legal-main{
    width:auto;
    margin:0 22px;
    padding:50px 0 90px;
  }
  .legal-main h1{
    font-size:clamp(2.45rem,13vw,4rem);
  }
  .legal-updated{
    margin-bottom:36px;
    font-size:.8rem;
  }
}

/* ===== DESIGN FIX 32 · HEADER ACTION ICON BALANCE ===== */
/* Slightly enlarge profile + cart so their visual weight matches the menu trigger. */
.med-header-right .med-icon-btn{
  width:44px;
  height:44px;
}
.med-header-right .med-icon-btn svg{
  width:23px;
  height:23px;
  stroke-width:1.6;
}
.med-header-right .med-icon-count{
  width:18px;
  height:18px;
  right:-1px;
  top:0;
  font-size:.6rem;
}
@media(max-width:820px){
  .med-header-right .med-icon-btn{
    width:45px !important;
    height:45px !important;
  }
  .med-header-right .med-icon-btn svg{
    width:24px !important;
    height:24px !important;
    stroke-width:1.65 !important;
  }
  .med-header-right .med-icon-count{
    width:19px;
    height:19px;
    right:-1px;
    top:0;
    font-size:.62rem;
  }
}

/* ===== MEDIOUSAO · DESIGN FIX 33 · UNIFIED PRODUCT IMAGE CORNERS ===== */
/* One visual language for product imagery across shop, featured and upcoming. */
:root{
  --med-product-media-radius:16px;
}

/* Novedades / regular product cards */
.product-media,
.shop-section .novelties-grid .product-media{
  border-radius:var(--med-product-media-radius) !important;
  overflow:hidden !important;
}

/* Destacados carousel */
.featured-product-media{
  border-radius:var(--med-product-media-radius) !important;
  overflow:hidden !important;
}

/* Próximamente carousel */
.upcoming-media{
  border-radius:var(--med-product-media-radius) !important;
  overflow:hidden !important;
}

/* Product detail: keep the same subtle corner language. */
.refined-product-main-media{
  border-radius:var(--med-product-media-radius) !important;
  overflow:hidden !important;
}

@media(max-width:620px){
  .product-media,
  .shop-section .novelties-grid .product-media,
  .featured-product-media,
  .upcoming-media,
  .refined-product-main-media{
    border-radius:var(--med-product-media-radius) !important;
  }
}

/* ===== MEDIOUSAO · DESIGN FIX 34 · FINAL HEADER + FOOTER POLISH ===== */
/* Keep profile and cart visually grouped without shrinking their touch targets. */
.med-header-right{
  gap:0 !important;
}
.med-header-right .med-profile-link{
  margin-right:-7px !important;
}
.med-header-right .med-cart-icon{
  margin-left:0 !important;
}

/* Give the approved MEDIOUSAO wordmark a little more presence on desktop only. */
@media (min-width:821px){
  .med-header-brand.med-wordmark{
    width:clamp(220px,20vw,275px) !important;
    height:42px !important;
    max-width:34vw !important;
  }
}

/* Footer: copyright left, legal links centered, social icons right. */
.med-footer-bottom{
  grid-template-columns:auto 1fr auto !important;
  align-items:center !important;
  gap:18px 24px !important;
}
.med-footer-legal{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:18px !important;
  flex-wrap:wrap !important;
}
.med-footer-social-icons{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:16px !important;
  min-height:28px !important;
}
.med-footer-social-icons a{
  width:26px !important;
  height:26px !important;
  display:grid !important;
  place-items:center !important;
  color:#8c8c85 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  padding:0 !important;
}
.med-footer-social-icons a:hover{
  color:#fff !important;
  background:transparent !important;
}
.med-footer-social-icons svg{
  display:block !important;
  width:20px !important;
  height:20px !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:1.8 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}
.med-footer-social-icons .social-fill{
  fill:currentColor !important;
  stroke:none !important;
}

@media (max-width:820px){
  .med-header-right .med-profile-link{
    margin-right:-9px !important;
  }
  .med-footer-bottom{
    display:grid !important;
    grid-template-columns:1fr !important;
    justify-items:center !important;
    text-align:center !important;
    gap:14px !important;
  }
  .med-footer-bottom>p{
    margin:0 !important;
    order:1 !important;
  }
  .med-footer-legal{
    order:2 !important;
    justify-content:center !important;
    gap:10px 18px !important;
  }
  .med-footer-social-icons{
    order:3 !important;
    justify-content:center !important;
    gap:18px !important;
    margin-top:2px !important;
  }
  .med-footer-social-icons a{
    width:28px !important;
    height:28px !important;
  }
  .med-footer-social-icons svg{
    width:21px !important;
    height:21px !important;
  }
}


/* ===== MEDIOUSAO · FIX 35 · REAL ORDERS ===== */
.med-checkout-error{
  margin:0 0 12px;
  padding:12px 14px;
  border:1px solid #b43838;
  border-radius:11px;
  background:#fff2f2;
  color:#8f2020;
  font-size:.76rem;
  line-height:1.45;
}
.med-confirm-order:disabled{opacity:.65;cursor:wait}
.med-order-confirmation-body{margin:0;min-height:100vh;background:#f6f6f2;color:#111}
.med-order-confirmation-body .med-checkout-header{grid-template-columns:1fr;justify-items:center}
.med-order-confirmation-shell{min-height:calc(100vh - 72px);display:grid;place-items:center;padding:40px 18px}
.med-order-confirmation-card{width:min(620px,100%);padding:42px;border:1px solid #dfdfd9;border-radius:24px;background:#fff;text-align:center;box-shadow:0 22px 70px rgba(0,0,0,.08)}
.med-order-confirmation-mark{width:58px;height:58px;margin:0 auto 18px;border-radius:50%;display:grid;place-items:center;background:#111;color:#fff;font-size:1.5rem;font-weight:900}
.med-order-confirmation-card h1{margin:8px 0 14px;font-size:clamp(2.2rem,6vw,4rem);line-height:.95;letter-spacing:-.055em}
.med-order-confirmation-card>p:not(.eyebrow):not(.med-order-confirmation-note){margin:0 auto;max-width:470px;color:#6f6f68;line-height:1.6}
.med-order-confirmation-ref{margin:28px 0 14px;padding:16px;border-radius:14px;background:#f1f1ed;display:grid;gap:5px}
.med-order-confirmation-ref span{font-size:.58rem;letter-spacing:.13em;text-transform:uppercase;color:#7c7c75;font-weight:850}
.med-order-confirmation-ref strong{font-size:1.05rem;letter-spacing:.06em}
.med-order-confirmation-note{margin:0 0 24px;color:#777770;font-size:.76rem}
.admin-orders-head{display:flex;justify-content:space-between;gap:20px;align-items:end}
.admin-orders-list{display:grid;gap:12px}
.admin-orders-empty{padding:22px;border:1px dashed #cfcfc8;border-radius:14px;color:#777770;background:#fff}
.admin-order-card{padding:20px;border:1px solid #dfdfd9;border-radius:16px;background:#fff}
.admin-order-top{display:flex;justify-content:space-between;gap:20px;padding-bottom:16px;border-bottom:1px solid #e7e7e1}
.admin-order-top>div{display:grid;gap:4px}
.admin-order-ref{font-size:.58rem;letter-spacing:.12em;color:#777770;font-weight:850}
.admin-order-top strong{font-size:.9rem}
.admin-order-top small,.admin-order-grid small{color:#777770;font-size:.66rem}
.admin-order-total{font-size:1rem!important;white-space:nowrap}
.admin-order-grid{display:grid;grid-template-columns:1.1fr 1fr 1.2fr;gap:14px;padding:16px 0}
.admin-order-grid>div{display:grid;gap:4px;align-content:start}
.admin-order-grid span,.admin-order-actions label>span{font-size:.56rem;letter-spacing:.1em;text-transform:uppercase;color:#85857e;font-weight:850}
.admin-order-grid strong{font-size:.77rem}
.admin-order-note{margin:0;padding:12px 13px;border-radius:10px;background:#f3f3ee;color:#65655f;font-size:.7rem;line-height:1.5}
.admin-order-actions{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-top:14px;padding-top:14px;border-top:1px solid #e7e7e1}
.admin-order-actions label{display:grid;gap:6px;margin:0;min-width:180px}
.admin-order-actions select{min-height:42px;border:1px solid #d7d7d1;border-radius:10px;background:#fff;padding:8px 10px}
.admin-danger{min-height:42px;border:1px solid #e2c5c5;border-radius:10px;background:#fff;color:#8e3030;padding:0 13px;font-size:.7rem;font-weight:800}
@media(max-width:700px){
  .med-order-confirmation-shell{min-height:calc(100vh - 58px);padding:22px 12px}
  .med-order-confirmation-card{padding:28px 18px;border-radius:18px}
  .admin-orders-head{display:block}
  .admin-orders-head .admin-secondary{margin-top:14px;width:auto}
  .admin-order-grid{grid-template-columns:1fr;gap:12px}
  .admin-order-actions{align-items:stretch;flex-direction:column}
  .admin-order-actions label{min-width:0}
  .admin-order-actions .admin-danger{width:100%}
}

/* Fix 35 summary adapts cleanly after adding Pedidos. */
.admin-summary-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));}

/* ===== MEDIOUSAO · FIX 36 · ADMIN CONTROL CENTER ===== */
.admin-settings-form{
  background:#fff;border:1px solid #e2ded4;border-radius:18px;padding:22px;
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:22px
}
.admin-settings-form>label{display:grid;gap:7px}
.admin-settings-form>label>span{font-size:.76rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#66625b}
.admin-settings-form input,.admin-settings-form textarea,.admin-settings-form select,.admin-category-add input,.admin-category-row input{
  width:100%;box-sizing:border-box;border:1px solid #d8d3c9;background:#fbfaf7;border-radius:10px;padding:12px 13px;font:inherit;color:#111
}
.admin-settings-form .admin-setting-row,.admin-settings-form .admin-primary,.admin-settings-form .admin-brand-upload-grid{grid-column:1/-1}
.admin-settings-form .admin-primary{justify-self:start}
.admin-brand-upload-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.admin-brand-upload-grid>div{border:1px solid #e2ded4;border-radius:14px;padding:14px;display:grid;gap:10px;align-content:start}
.admin-brand-preview{width:100%;height:90px;object-fit:contain;background:#f4f1e8;border-radius:10px;padding:12px;box-sizing:border-box}
.admin-brand-preview.dark{background:#090909}
.admin-favicon-preview{width:64px;height:64px;object-fit:contain;border:1px solid #ddd7cb;border-radius:14px;padding:8px}
.admin-category-add{display:grid;grid-template-columns:1fr auto;gap:12px;margin-bottom:18px}
.admin-category-list{display:grid;gap:10px}
.admin-category-row{display:grid;grid-template-columns:minmax(160px,1fr) minmax(110px,.6fr) auto auto;align-items:center;gap:12px;padding:12px;border:1px solid #e2ded4;border-radius:12px;background:#fff}
.admin-category-row code{font-size:.76rem;color:#77736b;overflow:hidden;text-overflow:ellipsis}
.admin-mini-danger{width:36px;height:36px;border:1px solid #e0c7c7;background:#fff5f5;color:#8b2424;border-radius:9px;font-size:1.2rem;cursor:pointer}
@media(max-width:850px){
  .admin-settings-form{grid-template-columns:1fr}
  .admin-settings-form>label,.admin-settings-form .admin-setting-row,.admin-settings-form .admin-primary,.admin-settings-form .admin-brand-upload-grid{grid-column:1}
  .admin-brand-upload-grid{grid-template-columns:1fr}
  .admin-category-row{grid-template-columns:1fr auto auto}
  .admin-category-row code{grid-column:1/-1;grid-row:2}
}

/* ===== MEDIOUSAO · FIX 36 · PRODUCT DRAFTS + PLACEMENT ===== */
.admin-publish-grid{
  margin-top:4px;
  padding-top:16px;
  border-top:1px solid #e8e8e3;
}
.admin-field-help{
  display:block;
  margin-top:7px;
  color:#777770;
  font-size:.68rem;
  line-height:1.45;
}
.admin-draft-note{
  display:grid;
  gap:5px;
  margin:14px 0 4px;
  padding:14px 16px;
  border:1px solid #dfdfd8;
  background:#f6f6f1;
}
.admin-draft-note strong{
  font-size:.76rem;
  letter-spacing:.01em;
}
.admin-draft-note span{
  color:#6d6d66;
  font-size:.7rem;
  line-height:1.5;
}

/* ===== MEDIOUSAO · FIX 36 · OPERATIONAL ADMIN ===== */
.admin-bulk-toolbar{
  display:grid;
  grid-template-columns:auto minmax(170px,1fr) minmax(150px,.8fr) auto;
  gap:10px;
  align-items:center;
  padding:12px 14px;
  border-bottom:1px solid #e6e2d9;
  background:#f8f6f0;
}
.admin-bulk-check{display:flex;align-items:center;gap:8px;font-size:.72rem;font-weight:800;color:#5e5a53;white-space:nowrap}
.admin-bulk-toolbar select{min-height:40px;border:1px solid #d8d3c9;border-radius:9px;background:#fff;padding:8px 10px;font:inherit;font-size:.74rem}
.admin-bulk-toolbar .admin-secondary{min-height:40px}
.admin-product-row{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:stretch}
.admin-product-select-wrap{display:grid;place-items:center;border-right:1px solid #ece8df;cursor:pointer}
.admin-product-select{width:16px;height:16px}
.admin-product-row-main{width:100%;border:0;background:transparent;text-align:left;display:grid;grid-template-columns:44px minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:14px;cursor:pointer;color:inherit}
.admin-product-row.low-stock{box-shadow:inset 3px 0 0 #b88728}
.admin-product-row.out-stock{box-shadow:inset 3px 0 0 #a84949}
.admin-product-row-state.hidden-product{color:#77736b;background:#efede7}

.admin-inventory-controls{display:grid;grid-template-columns:minmax(190px,.4fr) minmax(300px,1fr);gap:14px;margin-bottom:18px}
.admin-inventory-controls>label:first-child{display:grid;gap:7px;padding:16px;border:1px solid #e2ded4;border-radius:14px;background:#fff}
.admin-inventory-controls>label:first-child span{font-size:.72rem;font-weight:850;letter-spacing:.04em;text-transform:uppercase;color:#67635c}
.admin-inventory-controls input[type="number"]{max-width:120px;border:1px solid #d8d3c9;border-radius:9px;padding:10px 12px;font:inherit}
.admin-inventory-controls .admin-setting-row{margin:0;border:1px solid #e2ded4;border-radius:14px;background:#fff;padding:16px}
.admin-inventory-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}
.admin-inventory-summary article{display:grid;gap:4px;padding:16px;border:1px solid #e2ded4;border-radius:14px;background:#fff}
.admin-inventory-summary span{font-size:1.55rem;font-weight:950;letter-spacing:-.04em}
.admin-inventory-summary strong{font-size:.74rem;text-transform:uppercase;letter-spacing:.08em}
.admin-inventory-summary small{font-size:.66rem;color:#77736b}
.admin-inventory-summary article.warning{border-color:#dfc997;background:#fffaf0}
.admin-inventory-summary article.danger{border-color:#e1bebe;background:#fff6f6}
.admin-inventory-list{display:grid;gap:10px}
.admin-inventory-row{display:grid;grid-template-columns:minmax(200px,1fr) 110px 120px auto;gap:14px;align-items:center;padding:14px 16px;border:1px solid #e2ded4;border-radius:14px;background:#fff}
.admin-inventory-row.low{border-left:4px solid #b88728}
.admin-inventory-row.out{border-left:4px solid #a84949}
.admin-inventory-row.ok{border-left:4px solid #68836c}
.admin-inventory-copy{display:grid;gap:4px;min-width:0}
.admin-inventory-copy strong{font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.admin-inventory-copy span{font-size:.64rem;color:#77736b}
.admin-inventory-state{font-size:.58rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase;color:#6c6860}
.admin-inventory-stock{display:grid;grid-template-columns:auto 1fr;gap:7px;align-items:center}
.admin-inventory-stock span{font-size:.62rem;font-weight:800;color:#77736b}
.admin-inventory-stock input{width:72px;border:1px solid #d8d3c9;border-radius:9px;padding:9px 10px;font:inherit}
.admin-inventory-edit{white-space:nowrap}

.admin-order-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) minmax(160px,220px);gap:10px;margin-bottom:14px}
.admin-order-toolbar input,.admin-order-toolbar select{width:100%;box-sizing:border-box;min-height:44px;border:1px solid #d8d3c9;border-radius:11px;background:#fff;padding:10px 12px;font:inherit}
.admin-order-top-right{display:flex;align-items:center;gap:12px}
.admin-order-status-pill{padding:6px 8px;border-radius:999px;background:#efede7;color:#67635c;font-size:.56rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.admin-order-status-pill.status-entregado{background:#e9f2e9;color:#426347}
.admin-order-status-pill.status-cancelado{background:#f7e8e8;color:#8a3c3c}
.admin-order-status-pill.status-enviado{background:#e9eef6;color:#405b7f}
.admin-order-actions-main{justify-content:flex-start}
.admin-order-actions-main label{margin-right:auto}
.admin-order-detail{padding-top:18px;margin-top:14px;border-top:1px solid #e7e7e1}
.admin-order-detail[hidden]{display:none!important}
.admin-order-detail-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:18px}
.admin-order-detail-grid>section{padding:16px;border:1px solid #e6e2d9;border-radius:13px;background:#faf9f5}
.admin-order-detail-title{margin:0 0 12px;font-size:.65rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#716d65}
.admin-order-items{display:grid;gap:8px}
.admin-order-item-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid #e8e4db}
.admin-order-item-row:last-child{border-bottom:0}
.admin-order-item-row>div{display:grid;gap:3px}
.admin-order-item-row strong{font-size:.75rem}
.admin-order-item-row span{font-size:.64rem;color:#77736b}
.admin-order-totals{display:grid;gap:7px;margin-top:12px;padding-top:12px;border-top:1px solid #ddd8ce}
.admin-order-totals span{display:flex;justify-content:space-between;gap:16px;font-size:.68rem;color:#6f6b63}
.admin-order-totals strong{color:#111}
.admin-order-data-list{display:grid;gap:9px;margin:0}
.admin-order-data-list>div{display:grid;grid-template-columns:120px minmax(0,1fr);gap:10px}
.admin-order-data-list dt{font-size:.62rem;font-weight:850;text-transform:uppercase;letter-spacing:.05em;color:#7b776e}
.admin-order-data-list dd{margin:0;font-size:.72rem;line-height:1.45;overflow-wrap:anywhere}
.admin-order-contact-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}
.admin-order-contact-actions a{text-decoration:none}
.admin-order-internal-note{display:grid;gap:7px;margin-top:14px}
.admin-order-internal-note>span{font-size:.62rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#716d65}
.admin-order-internal-note textarea{width:100%;box-sizing:border-box;resize:vertical;border:1px solid #d8d3c9;border-radius:10px;background:#fff;padding:11px 12px;font:inherit;line-height:1.5}
.admin-order-detail-actions{display:flex;justify-content:flex-end;margin-top:10px}

.admin-photo-item.dragging{opacity:.48}
.admin-photo-item.drag-over{outline:2px solid #111;outline-offset:2px}
.admin-photo-order{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:7px 8px;font-size:.58rem;color:#77736b}
.admin-photo-move-row{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.admin-cover-pill{position:absolute;left:8px;top:8px;padding:5px 7px;border-radius:999px;background:#111;color:#fff;font-size:.52rem;font-weight:900;letter-spacing:.08em;z-index:2}
.admin-photo-item{position:relative}

.admin-activity-list{display:grid;gap:0;border:1px solid #e2ded4;border-radius:15px;background:#fff;overflow:hidden}
.admin-activity-row{display:grid;grid-template-columns:12px minmax(0,1fr);gap:12px;padding:15px 17px;border-bottom:1px solid #ece8df}
.admin-activity-row:last-child{border-bottom:0}
.admin-activity-dot{width:8px;height:8px;margin-top:5px;border-radius:50%;background:#111}
.admin-activity-row>div{display:grid;gap:4px}
.admin-activity-row strong{font-size:.78rem}
.admin-activity-row p{margin:0;color:#656159;font-size:.7rem;line-height:1.45}
.admin-activity-row small{color:#8a867d;font-size:.62rem}
.admin-activity-head{display:flex;justify-content:space-between;gap:16px;align-items:end}

.med-admin-preview-banner{position:sticky;top:0;z-index:9999;display:flex;align-items:center;justify-content:center;gap:10px;padding:9px 14px;background:#f1d983;color:#17150e;border-bottom:1px solid rgba(0,0,0,.15);font-size:.72rem}
.med-admin-preview-banner strong{font-size:.64rem;letter-spacing:.12em}

@media(max-width:900px){
  .admin-bulk-toolbar{grid-template-columns:1fr 1fr}
  .admin-bulk-check{grid-column:1/-1}
  .admin-inventory-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-inventory-row{grid-template-columns:minmax(0,1fr) 100px 110px}
  .admin-inventory-edit{grid-column:1/-1;justify-self:start}
  .admin-order-detail-grid{grid-template-columns:1fr}
}
@media(max-width:650px){
  .admin-bulk-toolbar,.admin-order-toolbar,.admin-inventory-controls{grid-template-columns:1fr}
  .admin-bulk-check{grid-column:auto}
  .admin-product-row-main{grid-template-columns:34px minmax(0,1fr);gap:8px}
  .admin-product-row-price,.admin-product-row-state{grid-column:2;justify-self:start}
  .admin-inventory-summary{grid-template-columns:1fr 1fr}
  .admin-inventory-row{grid-template-columns:minmax(0,1fr) auto}
  .admin-inventory-stock{grid-column:1}
  .admin-inventory-edit{grid-column:2;grid-row:2;align-self:end}
  .admin-order-top{align-items:flex-start}
  .admin-order-top-right{display:grid;justify-items:end;gap:6px}
  .admin-order-actions-main{display:grid;grid-template-columns:1fr 1fr;align-items:end}
  .admin-order-actions-main label{grid-column:1/-1;margin:0;min-width:0}
  .admin-order-actions-main .admin-danger{width:auto}
  .admin-order-data-list>div{grid-template-columns:1fr;gap:3px}
  .admin-activity-head{display:block}
  .admin-activity-head .admin-secondary{margin-top:12px}
}

/* ===== MEDIOUSAO · FIX 36 · REAL CUSTOMER ACCOUNTS ===== */
.account-live-message{
  margin:0 0 18px;
  padding:12px 14px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.04);
  color:inherit;
  font-size:.88rem;
  line-height:1.45;
}
.account-live-message[data-type="error"]{border-color:#9f3f3f;background:rgba(159,63,63,.1);color:#f2c0c0}
.account-live-message[data-type="success"]{border-color:#4f7f5d;background:rgba(79,127,93,.1);color:#d8f1df}
.auth-card .account-live-message{color:#222;border-color:#d7d3cb;background:#f5f2ea}
.auth-card .account-live-message[data-type="error"]{color:#7c2020;border-color:#d9aaaa;background:#fff2f2}
.auth-card .account-live-message[data-type="success"]{color:#245d35;border-color:#acd0b6;background:#f1fff5}
.auth-field-note{display:block;margin-top:6px;color:#78736b;font-size:.72rem}
.auth-account-note{margin-top:22px;padding-top:20px;border-top:1px solid #ddd8ce;color:#68635b;font-size:.82rem;line-height:1.55}
.auth-account-note strong{display:block;color:#111;margin-bottom:4px}
.auth-account-note p{margin:0}
.auth-policy a{text-decoration:underline;text-underline-offset:3px}

.refined-order-table-body{display:block}
.account-order-row{
  display:grid;
  grid-template-columns:minmax(170px,1.6fr) minmax(100px,.8fr) minmax(110px,.8fr) minmax(90px,.7fr);
  gap:14px;
  align-items:center;
  padding:18px 0;
  border-top:1px solid #ddd8ce;
}
.account-order-row>div:first-child{display:flex;flex-direction:column;gap:4px;min-width:0}
.account-order-row>div:first-child strong{font-size:.92rem}
.account-order-row>div:first-child small{color:#77736b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.account-order-status{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;background:#ece8df;font-size:.7rem;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}
.account-order-status.status-entregado{background:#e5f3e8;color:#245d35}
.account-order-status.status-cancelado{background:#f6e5e5;color:#8b2f2f}
.account-order-status.status-enviado{background:#e5edf5;color:#274d72}
.account-order-details{grid-column:1/-1;padding-top:2px;color:#55524c}
.account-order-details summary{cursor:pointer;font-weight:700;font-size:.78rem;width:max-content}
.account-order-details div{padding:12px 0 0;display:grid;gap:5px}
.account-order-details p{margin:0;font-size:.82rem}

.account-setting-state{margin-left:auto;font-size:.7rem;font-style:normal;color:#77736b}
.account-session-list{margin-top:28px;border-top:1px solid #ddd8ce}
.account-session-head,.account-session-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 0;border-bottom:1px solid #ddd8ce}
.account-session-head span{font-weight:800}
.account-session-head small{color:#77736b}
.account-session-row>div{display:flex;flex-direction:column;gap:4px;min-width:0}
.account-session-row strong{font-size:.86rem}
.account-session-row span{font-size:.74rem;color:#77736b}
.account-session-row button{border:0;background:none;text-decoration:underline;text-underline-offset:4px;cursor:pointer;font:inherit;font-size:.76rem}

.account-dialog{border:0;padding:0;background:transparent;max-width:none;max-height:none}
.account-dialog::backdrop{background:rgba(0,0,0,.62);backdrop-filter:blur(3px)}
.account-dialog-card{width:min(520px,calc(100vw - 32px));background:#f6f3ea;color:#111;padding:26px;box-shadow:0 20px 70px rgba(0,0,0,.3);display:grid;gap:16px}
.account-dialog-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:8px}
.account-dialog-head span{display:block;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:#77736b;margin-bottom:6px}
.account-dialog-head h3{margin:0;font-size:1.45rem}
.account-dialog-head>button{border:0;background:none;font-size:1.65rem;line-height:1;cursor:pointer}
.account-dialog-card label{display:grid;gap:7px;font-size:.76rem;font-weight:750}
.account-dialog-card input{width:100%;box-sizing:border-box;border:1px solid #cfc9be;background:#fff;padding:12px 13px;font:inherit;color:#111}
.account-dialog-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:4px}
.account-dialog-actions .secondary-button,.account-dialog-actions .primary-button{width:auto;min-width:140px}

.order-account-prompt{margin:20px 0;padding:18px;border:1px solid rgba(255,255,255,.18);text-align:left}
.order-account-prompt strong{display:block;margin-bottom:6px}
.order-account-prompt p{margin:0 0 14px;color:inherit;opacity:.78;font-size:.88rem;line-height:1.5}

@media(max-width:760px){
  .account-order-row{grid-template-columns:1fr auto;gap:8px 16px}
  .account-order-row>span:nth-of-type(1){grid-column:1/2}
  .account-order-row>span:nth-of-type(2){grid-column:2/3;grid-row:1/2}
  .account-order-row>strong{grid-column:2/3;grid-row:2/3}
  .account-order-details{grid-column:1/-1}
  .account-dialog-card{padding:22px 18px}
  .account-dialog-actions{display:grid;grid-template-columns:1fr}
  .account-dialog-actions .secondary-button,.account-dialog-actions .primary-button{width:100%;min-width:0}
}
.refined-account-content>.account-live-message{color:#222;border-color:#d7d3cb;background:#f5f2ea}
.refined-account-content>.account-live-message[data-type="error"]{color:#7c2020;border-color:#d9aaaa;background:#fff2f2}
.refined-account-content>.account-live-message[data-type="success"]{color:#245d35;border-color:#acd0b6;background:#f1fff5}
.account-address-toolbar{display:flex;justify-content:flex-end;margin:0 0 18px}
.account-address-toolbar .primary-button{width:auto;min-width:170px}
.account-address-list{display:grid;gap:12px}
.account-address-card{border:1px solid #e3e0d8;background:#fff;border-radius:16px;padding:18px 20px}
.account-address-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:10px}
.account-address-card-head>div:first-child{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.account-address-card-head strong{font-size:.9rem}
.account-address-card-head>div:first-child span{font-size:.58rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;background:#111;color:#fff;border-radius:999px;padding:5px 7px}
.account-address-card p{margin:0;color:#666159;font-size:.8rem;line-height:1.55;max-width:720px}
.account-address-actions{display:flex;gap:10px}
.account-address-actions button{border:0;background:none;font:inherit;font-size:.72rem;text-decoration:underline;text-underline-offset:4px;cursor:pointer;color:#55524c}
.account-dialog-card textarea{width:100%;box-sizing:border-box;border:1px solid #cfc9be;background:#fff;padding:12px 13px;font:inherit;color:#111;resize:vertical;min-height:110px}
.account-dialog-check{display:flex!important;grid-template-columns:none!important;align-items:center;gap:9px!important;font-weight:650!important}
.account-dialog-check input{width:auto!important}
@media(max-width:650px){
  .account-address-toolbar{justify-content:stretch}
  .account-address-toolbar .primary-button{width:100%}
  .account-address-card-head{display:grid}
  .account-address-actions{justify-content:flex-start}
}


/* ===== FIX 36 · PUBLIC WEB CLOSING PASS ===== */
/* Category chips: dark by default, white only when selected. */
body.home-dark .category-chip{
  background:#050505 !important;
  color:#fff !important;
  border-color:#fff !important;
}
body.home-dark .category-chip:hover{
  background:#111 !important;
  color:#fff !important;
  border-color:#fff !important;
}
body.home-dark .category-chip.active{
  background:#fff !important;
  color:#050505 !important;
  border-color:#fff !important;
}

/* Simplified account landing: personal data only. */
.account-panel[data-panel="account"] .refined-account-grid{grid-template-columns:1fr !important;}
.account-panel[data-panel="account"] .account-primary-card{grid-row:auto !important;min-height:0;}

/* Order state tabs. */
.account-order-filters{
  display:flex;align-items:center;gap:8px;overflow-x:auto;padding:0 0 18px;scrollbar-width:none;
}
.account-order-filters::-webkit-scrollbar{display:none}
.account-order-filters button{
  appearance:none;border:1px solid #cfc9be;background:transparent;color:#111;border-radius:999px;
  min-height:40px;padding:0 16px;font:inherit;font-size:.76rem;font-weight:800;white-space:nowrap;cursor:pointer;
}
.account-order-filters button span{opacity:.62;margin-left:5px}
.account-order-filters button.active{background:#111;color:#fff;border-color:#111}
.account-order-filters button.active span{opacity:.82}

/* Password visibility control for customer auth/settings. */
.password-toggle-field{position:relative;width:100%;}
.password-toggle-field input{width:100% !important;padding-right:52px !important;box-sizing:border-box;}
.password-toggle-button{
  position:absolute;right:10px;top:50%;transform:translateY(-50%);width:36px;height:36px;display:grid;place-items:center;
  border:0;background:transparent;color:#6d6962;cursor:pointer;padding:0;border-radius:999px;
}
.password-toggle-button:hover{background:rgba(0,0,0,.05);color:#111}
.password-toggle-button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.password-toggle-button.is-visible{color:#111;background:rgba(0,0,0,.06)}
.auth-body .password-toggle-button{color:#77736b}

@media(max-width:760px){
  .account-order-filters{padding-bottom:14px}
  .account-order-filters button{min-height:38px;padding:0 14px}
}


/* ===== FIX 37 · FINAL PUBLIC WEB CLOSE ===== */
.med-announcement-bar{
  width:100%;
  min-height:30px;
  display:flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  padding:7px 20px 6px;
  background:#fff;
  color:#111;
  border-bottom:1px solid rgba(0,0,0,.12);
  position:relative;
  z-index:130;
  text-align:center;
  font-size:.66rem;
  line-height:1.2;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.med-announcement-bar a,
.med-announcement-bar span{color:inherit;text-decoration:none;}
.med-announcement-bar a:hover{text-decoration:underline;text-underline-offset:3px;}
.admin-settings-subsection{
  border-top:1px solid #d9d5cb;
  margin-top:8px;
  padding-top:20px;
  display:grid;
  gap:14px;
}
@media(max-width:700px){
  .med-announcement-bar{min-height:28px;padding:7px 14px 6px;font-size:.6rem;letter-spacing:.14em;}
}

/* ===== FIX 37 · MOBILE ACCOUNT + ANNOUNCEMENT FINAL POLISH ===== */
/* Keep the announcement visually centered in the viewport on small screens. */
.med-announcement-bar > a,
.med-announcement-bar > span{
  display:block;
  width:100%;
  text-align:center;
}

@media(max-width:700px){
  .med-announcement-bar{
    min-height:34px;
    padding:8px 10px 7px;
    font-size:.58rem;
    line-height:1.25;
    letter-spacing:.17em;
    justify-content:center;
    text-align:center;
  }
}

@media(max-width:620px){
  /* Account navigation: compact grid, no clipped pills. */
  .refined-account-nav{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:7px;
    margin:0 !important;
    padding:0 0 8px !important;
    overflow:visible !important;
  }
  .refined-account-nav .account-nav-item{
    width:100%;
    min-width:0;
    min-height:42px;
    padding:7px 6px;
    justify-content:center;
    text-align:center;
    border-radius:14px;
    font-size:.64rem;
    line-height:1.15;
    white-space:normal;
  }
  .refined-account-nav .account-nav-item[data-account-tab="logout"]{
    grid-column:1/-1;
  }

  /* Modern segmented status control. */
  .account-order-filters{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:4px !important;
    overflow:visible !important;
    padding:4px !important;
    margin:0 0 18px !important;
    background:#efefec;
    border:1px solid #dfddd7;
    border-radius:16px;
  }
  .account-order-filters button{
    min-width:0;
    min-height:40px !important;
    padding:7px 5px !important;
    border:0 !important;
    border-radius:12px !important;
    background:transparent !important;
    color:#55524c !important;
    font-size:.64rem !important;
    line-height:1.1;
    letter-spacing:0;
    white-space:nowrap;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:5px;
  }
  .account-order-filters button span{
    min-width:18px;
    height:18px;
    margin:0 !important;
    padding:0 4px;
    display:inline-grid;
    place-items:center;
    border-radius:999px;
    background:rgba(0,0,0,.08);
    color:inherit;
    opacity:1 !important;
    font-size:.55rem;
    font-weight:900;
  }
  .account-order-filters button.active{
    background:#111 !important;
    color:#fff !important;
    box-shadow:0 1px 0 rgba(0,0,0,.06);
  }
  .account-order-filters button.active span{
    background:#fff;
    color:#111;
  }

  /* Empty order state should sit directly below the selector. */
  .account-panel[data-panel="orders"] .refined-empty-row{
    min-height:0 !important;
    padding:28px 0 10px !important;
    justify-content:flex-start !important;
  }
  .account-panel[data-panel="orders"] .refined-order-table{
    margin-top:0;
  }
}

/* ===== FIX 37 · MOBILE ACCOUNT FINAL UI POLISH ===== */
@media(max-width:700px){
  .med-announcement-bar{
    min-height:36px !important;
    padding:0 !important;
    display:grid !important;
    place-items:center !important;
    text-align:center !important;
  }
  .med-announcement-bar > a,
  .med-announcement-bar > span{
    width:100% !important;
    box-sizing:border-box !important;
    padding:9px 14px 8px !important;
    margin:0 !important;
    text-align:center !important;
    font-size:.61rem !important;
    line-height:1.15 !important;
    letter-spacing:.18em !important;
  }
}

@media(max-width:620px){
  /* Clean horizontal account navigation. */
  .refined-account-nav{
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
    width:100% !important;
    margin:0 !important;
    padding:4px 2px 12px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    scroll-snap-type:x proximity;
    scroll-padding-inline:2px;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }
  .refined-account-nav::-webkit-scrollbar{display:none !important;}
  .refined-account-nav .account-nav-item{
    flex:0 0 auto !important;
    width:auto !important;
    min-width:auto !important;
    min-height:40px !important;
    padding:0 15px !important;
    border:1px solid #d9d6cf !important;
    border-radius:999px !important;
    background:#fff !important;
    color:#5e5a53 !important;
    font-size:.72rem !important;
    font-weight:800 !important;
    line-height:1 !important;
    white-space:nowrap !important;
    scroll-snap-align:start;
  }
  .refined-account-nav .account-nav-item.active{
    background:#111 !important;
    color:#fff !important;
    border-color:#111 !important;
  }
  .refined-account-nav .account-nav-item[data-account-tab="logout"]{
    flex:0 0 auto !important;
  }
  .refined-account-nav .account-count-badge{
    min-width:18px !important;
    height:18px !important;
    padding:0 5px !important;
    font-size:.55rem !important;
  }

  /* Premium segmented control for order states. */
  .account-order-filters{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:3px !important;
    width:100% !important;
    margin:4px 0 16px !important;
    padding:4px !important;
    box-sizing:border-box !important;
    overflow:visible !important;
    background:#efede8 !important;
    border:1px solid #ddd9d1 !important;
    border-radius:18px !important;
  }
  .account-order-filters button{
    min-width:0 !important;
    min-height:44px !important;
    padding:0 4px !important;
    border:0 !important;
    border-radius:14px !important;
    background:transparent !important;
    color:#5e5a53 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:5px !important;
    font-size:.59rem !important;
    font-weight:850 !important;
    line-height:1 !important;
    letter-spacing:-.01em !important;
    white-space:nowrap !important;
    box-shadow:none !important;
  }
  .account-order-filters button span{
    flex:0 0 auto !important;
    min-width:18px !important;
    height:18px !important;
    margin:0 !important;
    padding:0 4px !important;
    box-sizing:border-box !important;
    display:grid !important;
    place-items:center !important;
    border-radius:999px !important;
    background:rgba(0,0,0,.08) !important;
    color:inherit !important;
    font-size:.53rem !important;
    font-weight:900 !important;
    opacity:1 !important;
  }
  .account-order-filters button.active{
    background:#111 !important;
    color:#fff !important;
    box-shadow:0 1px 2px rgba(0,0,0,.12) !important;
  }
  .account-order-filters button.active span{
    background:#fff !important;
    color:#111 !important;
  }

  /* Keep order content close to the segmented control. */
  .account-panel[data-panel="orders"] .refined-order-table{
    margin-top:0 !important;
  }
  .account-panel[data-panel="orders"] .refined-empty-row{
    min-height:0 !important;
    padding:34px 0 12px !important;
    margin:0 !important;
  }
  .account-panel[data-panel="orders"] .refined-empty-row strong{
    margin-top:0 !important;
  }
}

/* ===== MEDIOUSAO · FIX 38 · FINAL ACCOUNT + ANNOUNCEMENT POLISH ===== */
/* Announcement: truly centered on both desktop and mobile. */
.med-announcement-bar{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  box-sizing:border-box !important;
  padding-left:18px !important;
  padding-right:18px !important;
  text-align:center !important;
}
.med-announcement-bar > a,
.med-announcement-bar > span{
  display:block !important;
  width:auto !important;
  max-width:100% !important;
  margin:0 auto !important;
  padding-left:0 !important;
  padding-right:0 !important;
  text-align:center !important;
  white-space:nowrap !important;
}

/* Orders: editorial tabs instead of oversized pills. */
.account-order-filters{
  width:100%;
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:0 !important;
  margin:0 0 22px !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  border-bottom:1px solid #dcd8d0 !important;
  border-radius:0 !important;
  overflow:visible !important;
}
.account-order-filters button{
  position:relative;
  min-width:0 !important;
  min-height:48px !important;
  padding:0 8px !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  color:#7a766e !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:5px !important;
  font-size:.74rem !important;
  font-weight:780 !important;
  line-height:1 !important;
  letter-spacing:0 !important;
  white-space:nowrap !important;
  box-shadow:none !important;
}
.account-order-filters button::after{
  content:"";
  position:absolute;
  left:12px;
  right:12px;
  bottom:-1px;
  height:2px;
  background:transparent;
}
.account-order-filters button span{
  min-width:0 !important;
  height:auto !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  color:inherit !important;
  border-radius:0 !important;
  font-size:.66rem !important;
  font-weight:900 !important;
  opacity:.62 !important;
}
.account-order-filters button.active{
  background:transparent !important;
  color:#111 !important;
  box-shadow:none !important;
}
.account-order-filters button.active::after{background:#111 !important;}
.account-order-filters button.active span{color:#111 !important;opacity:1 !important;}

/* More useful order details. */
.account-order-detail-card{display:grid !important;gap:14px !important;padding-top:14px !important;}
.account-order-items-detail{display:grid;gap:8px;padding-bottom:12px;border-bottom:1px solid #e4e0d8;}
.account-order-item-detail{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;}
.account-order-item-detail>div:first-child{display:grid;gap:3px;}
.account-order-item-detail strong{font-size:.82rem;}
.account-order-item-detail span{font-size:.72rem;color:#77736b;}
.account-order-meta-detail{display:grid;gap:6px;}

@media(max-width:700px){
  /* Keep the announcement optically centered and compact. */
  .med-announcement-bar{
    min-height:36px !important;
    padding:0 16px !important;
  }
  .med-announcement-bar > a,
  .med-announcement-bar > span{
    padding:9px 0 8px !important;
    font-size:.60rem !important;
    line-height:1.15 !important;
    letter-spacing:.17em !important;
  }

  /* Slightly tighter right-side header group; logo stays at approved size. */
  .med-header-right{gap:0 !important;}
  .med-header-right .med-profile-link{margin-right:-11px !important;}
  .med-header-right .med-cart-icon{margin-left:0 !important;}

  /* Account becomes a real menu on mobile. */
  .refined-account-shell{
    display:block !important;
    padding:22px 20px 72px !important;
  }
  .refined-account-sidebar{
    position:static !important;
    width:100% !important;
    margin:0 0 30px !important;
    padding:0 !important;
  }
  .account-menu-identity{
    display:grid !important;
    grid-template-columns:46px minmax(0,1fr) !important;
    gap:12px !important;
    align-items:center !important;
    margin:0 !important;
    padding:12px 0 20px !important;
    border-bottom:1px solid #dedad2 !important;
  }
  .account-menu-identity .account-avatar{
    width:46px !important;
    height:46px !important;
    font-size:.88rem !important;
  }
  .account-menu-identity .account-greeting{
    margin:0 0 3px !important;
    color:#111 !important;
    font-size:1.45rem !important;
    line-height:1 !important;
    letter-spacing:-.04em !important;
    font-weight:700 !important;
  }
  .account-menu-identity .account-greeting strong{font-weight:900 !important;}
  .account-menu-identity .account-email{
    display:block !important;
    max-width:100% !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
    color:#858078 !important;
    font-size:.72rem !important;
  }

  .account-menu-nav,
  .refined-account-nav{
    display:block !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    overflow:visible !important;
    border-bottom:1px solid #dedad2 !important;
  }
  .account-menu-nav .account-nav-item,
  .refined-account-nav .account-nav-item{
    position:relative !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    width:100% !important;
    min-width:0 !important;
    min-height:50px !important;
    margin:0 !important;
    padding:0 34px 0 2px !important;
    border:0 !important;
    border-bottom:1px solid #ebe8e1 !important;
    border-radius:0 !important;
    background:transparent !important;
    color:#222 !important;
    text-align:left !important;
    font-size:.86rem !important;
    font-weight:760 !important;
    line-height:1.1 !important;
    white-space:nowrap !important;
    box-shadow:none !important;
  }
  .account-menu-nav .account-nav-item::after,
  .refined-account-nav .account-nav-item::after{
    content:"→";
    position:absolute;
    right:4px;
    top:50%;
    transform:translateY(-50%);
    color:#9a958d;
    font-size:.86rem;
    font-weight:700;
  }
  .account-menu-nav .account-nav-item.active,
  .refined-account-nav .account-nav-item.active{
    background:transparent !important;
    color:#111 !important;
    font-weight:900 !important;
  }
  .account-menu-nav .account-nav-item.active::after,
  .refined-account-nav .account-nav-item.active::after{color:#111 !important;}
  .account-menu-nav .account-nav-item[data-account-tab="logout"],
  .refined-account-nav .account-nav-item[data-account-tab="logout"]{
    margin-top:10px !important;
    border-top:1px solid #dedad2 !important;
    border-bottom:0 !important;
    color:#77736b !important;
  }
  .account-menu-nav .account-nav-item[data-account-tab="logout"]::after,
  .refined-account-nav .account-nav-item[data-account-tab="logout"]::after{content:"×";font-size:1rem;}
  .account-count-badge{
    margin-left:auto !important;
    margin-right:2px !important;
    min-width:20px !important;
    height:20px !important;
    padding:0 6px !important;
    background:#111 !important;
    color:#fff !important;
    font-size:.56rem !important;
  }

  .refined-account-content{
    width:100% !important;
    min-width:0 !important;
    padding-top:4px !important;
  }
  .refined-account-content .account-panel-head{
    padding-bottom:18px !important;
    margin-bottom:18px !important;
  }
  .refined-account-content .account-panel-head .account-eyebrow{
    margin-bottom:8px !important;
    font-size:.58rem !important;
    letter-spacing:.18em !important;
  }
  .refined-account-content .account-panel-head h2{
    margin:0 0 8px !important;
    font-size:clamp(2.15rem,10vw,2.8rem) !important;
    line-height:.94 !important;
    letter-spacing:-.055em !important;
  }
  .refined-account-content .account-panel-head>p:last-child{
    margin:0 !important;
    font-size:.78rem !important;
    line-height:1.45 !important;
  }

  /* Four order tabs fit on one row without looking cramped. */
  .account-order-filters{
    grid-template-columns:.78fr 1.05fr 1.15fr 1fr !important;
    margin:2px 0 18px !important;
  }
  .account-order-filters button{
    min-height:44px !important;
    padding:0 3px !important;
    gap:3px !important;
    font-size:.60rem !important;
  }
  .account-order-filters button::after{left:6px !important;right:6px !important;}
  .account-order-filters button span{font-size:.54rem !important;}

  .refined-order-table{margin-top:0 !important;}
  .refined-order-table-head{display:none !important;}
  .account-order-row{
    grid-template-columns:1fr auto !important;
    gap:9px 14px !important;
    padding:18px 0 !important;
  }
  .account-order-row>div:first-child strong{font-size:.85rem !important;}
  .account-order-row>div:first-child small{font-size:.68rem !important;}
  .account-order-status{font-size:.60rem !important;padding:5px 8px !important;}
  .account-order-details summary{font-size:.72rem !important;}
  .account-order-item-detail{gap:10px !important;}
  .account-order-item-detail strong{font-size:.76rem !important;}
  .account-order-item-detail span{font-size:.66rem !important;}
  .account-order-meta-detail p{font-size:.72rem !important;}
  .account-panel[data-panel="orders"] .refined-empty-row{
    min-height:0 !important;
    padding:30px 0 8px !important;
  }

  /* Compact the account page controls so the menu is the focus. */
  .account-page-controls{padding:10px 18px 0 !important;}
  .account-back-control{height:38px !important;padding:0 12px !important;font-size:.68rem !important;}
  .account-close-control{width:38px !important;height:38px !important;font-size:1.22rem !important;}
}

@media(max-width:390px){
  .med-announcement-bar > a,
  .med-announcement-bar > span{font-size:.56rem !important;letter-spacing:.145em !important;}
  .refined-account-shell{padding-left:16px !important;padding-right:16px !important;}
  .account-order-filters button{font-size:.56rem !important;}
  .account-order-filters button span{font-size:.50rem !important;}
}

/* ===== MEDIOUSAO · FIX 38 · FINAL CATEGORY + DRAWER CLOSE ===== */
/* No category is visually selected on entry. All stay dark until the customer chooses one. */
body.home-dark .category-chip{
  background:#050505 !important;
  color:#fff !important;
  border-color:#fff !important;
}
body.home-dark .category-chip:hover{
  background:#111 !important;
  color:#fff !important;
  border-color:#fff !important;
}
body.home-dark .category-chip.active,
body.home-dark .category-chip[aria-pressed="true"]{
  background:#fff !important;
  color:#050505 !important;
  border-color:#fff !important;
}

/* Drawer must sit above the announcement bar so the brand is never clipped. */
.med-menu-backdrop{z-index:149 !important;}
.med-menu-drawer{z-index:150 !important;}
.med-menu-close{z-index:152 !important;}
.med-menu-drawer-head{
  min-height:52px !important;
  align-items:center !important;
  overflow:visible !important;
}
.med-menu-drawer-brand,
.med-menu-wordmark-img{overflow:visible !important;}
@media(max-width:620px){
  .med-menu-drawer{padding-top:20px !important;}
  .med-menu-drawer-head{min-height:50px !important;}
  .med-menu-drawer-brand{height:30px !important;}
}

/* ===== FIX 39 · STRUCTURED DELIVERY ADDRESS ===== */
.med-delivery-fields{
  display:grid;
  gap:12px;
}
.med-delivery-grid{
  grid-template-columns:1fr 1fr;
}
.med-save-address{
  display:flex !important;
  align-items:flex-start !important;
  gap:10px !important;
  padding:13px 14px !important;
  border:1px solid #dedbd3;
  border-radius:12px;
  background:#f7f5ef;
  font-size:.76rem !important;
  line-height:1.45;
  font-weight:650 !important;
}
.med-save-address input{
  width:auto !important;
  min-height:0 !important;
  margin:3px 0 0 !important;
  accent-color:#111;
}
.med-checkout-section label small,
.account-dialog-card label small{
  font:inherit;
  font-size:.82em;
  font-weight:500;
  color:#858078;
}
.account-address-form-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.account-address-copy{
  display:grid;
  gap:5px;
}
.account-address-copy p{
  margin:0;
  color:#666159;
  font-size:.8rem;
  line-height:1.5;
}
.account-address-copy b{color:#222}
.account-address-copy a,
.account-order-meta-detail a,
.admin-order-data-list a{
  color:inherit;
  text-decoration:underline;
  text-underline-offset:4px;
  font-weight:750;
}
@media(max-width:700px){
  .med-delivery-grid,
  .account-address-form-grid{
    grid-template-columns:1fr;
  }
}

/* ===== MEDIOUSAO · FIX 40 · ADMIN CLOSING ===== */
/* Summary cards are real controls, not decorative counters. */
button.admin-stat-card{
  width:100%;
  font:inherit;
  color:inherit;
  text-align:left;
  cursor:pointer;
  appearance:none;
}
button.admin-stat-card em{
  margin-top:14px;
  font-style:normal;
  font-size:.62rem;
  font-weight:850;
  letter-spacing:.06em;
  color:#5f5b54;
}
button.admin-stat-card-dark em{color:#d2d0c8}
button.admin-stat-card:hover{border-color:#b9b5ab;transform:translateY(-1px)}
button.admin-stat-card:focus-visible{outline:2px solid #111;outline-offset:3px}

.admin-bulk-selection-count{
  font-size:.68rem;
  font-weight:850;
  color:#6d685f;
  white-space:nowrap;
}
.admin-product-filter-state{
  margin:0 0 10px;
  padding:9px 11px;
  border-radius:10px;
  background:#f1efe9;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  font-size:.68rem;
  font-weight:800;
}
.admin-product-filter-state[hidden]{display:none!important}
.admin-product-filter-state button{
  border:0;
  background:none;
  font:inherit;
  text-decoration:underline;
  text-underline-offset:3px;
  cursor:pointer;
}

/* The admin preview must show the complete product, never crop it. */
.admin-preview-media{background:#efeee9!important}
.admin-preview-photo{
  object-fit:contain!important;
  object-position:center!important;
  padding:12px;
  box-sizing:border-box;
  background:#efeee9;
}
.admin-preview-media.has-photo>span{
  background:rgba(17,17,17,.9)!important;
}

/* Próximamente becomes a reusable pre-publication workspace. */
.admin-upcoming-editor-card{
  display:grid;
  grid-template-columns:120px minmax(0,1fr);
  gap:16px;
  padding:15px;
  border:1px solid #ddd9cf;
  border-radius:15px;
  background:#fff;
}
.admin-upcoming-media{
  min-height:120px;
  border-radius:12px;
  background:#efede7;
  display:grid;
  place-items:center;
  overflow:hidden;
  position:relative;
  color:#777168;
}
.admin-upcoming-media img{width:100%;height:100%;object-fit:contain;background:#efede7}
.admin-upcoming-media strong{font-size:1.3rem}
.admin-upcoming-media span{font-size:.62rem}
.admin-upcoming-fields{min-width:0;display:grid;gap:10px}
.admin-upcoming-description{display:grid;gap:6px}
.admin-upcoming-description span{font-size:.64rem;font-weight:800;color:#6e695f}
.admin-upcoming-description textarea{width:100%;resize:vertical;border:1px solid #d8d3c9;border-radius:9px;padding:9px 10px;font:inherit;font-size:.75rem}
.admin-upcoming-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.admin-upcoming-photo-count{font-size:.64rem;font-weight:800;color:#777168}

.admin-order-status-pill.status-recibido{background:#f1eee4;color:#665e45}

@media(max-width:780px){
  .admin-upcoming-editor-card{grid-template-columns:1fr}
  .admin-upcoming-media{aspect-ratio:4/3;min-height:0}
  .admin-bulk-selection-count{grid-column:1/-1}
}

/* FIX 40 · ocultar campos exclusivos de delivery */
.med-delivery-fields[hidden],
.med-save-address[hidden]{display:none !important;}

/* FIX 41 · carrito móvil debajo de la franja de Bonao */
@media (max-width:620px){
  .med-cart-drawer{
    top:36px !important;
    height:calc(100dvh - 36px) !important;
  }

  .med-cart-panel{
    height:100% !important;
    max-height:100% !important;
  }
}

/* FIX 41 · carrito siempre debajo de la franja de Bonao */
.med-cart-drawer{
  top:36px !important;
  height:calc(100dvh - 36px) !important;
  max-height:calc(100dvh - 36px) !important;
}

.med-cart-panel{
  height:100% !important;
  max-height:100% !important;
}

/* FIX 44 · RESUMEN COMERCIAL */
.admin-commercial-summary{
  margin:28px 0 34px;
  padding-top:24px;
  border-top:1px solid #dfdfd9;
}

.admin-commercial-heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:16px;
}

.admin-commercial-heading strong{
  font-size:1.15rem;
}

.admin-commercial-heading span{
  color:#777;
  font-size:.8rem;
}

.admin-commercial-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.admin-commercial-card{
  min-height:145px;
}

.admin-commercial-card > span{
  display:block;
  font-size:1.55rem;
  font-weight:700;
  line-height:1;
  margin-bottom:14px;
}

.admin-commercial-card strong{
  display:block;
  margin-bottom:6px;
}

.admin-commercial-card p{
  margin:0;
  color:#777;
  font-size:.78rem;
  line-height:1.35;
}

@media (max-width:820px){
  .admin-commercial-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:560px){
  .admin-commercial-heading{
    display:block;
  }

  .admin-commercial-heading span{
    display:block;
    margin-top:5px;
  }

  .admin-commercial-grid{
    grid-template-columns:1fr;
  }
}

/* FIX 45 · TENDENCIAS COMERCIALES */
.admin-commercial-trends{
  margin:0 0 34px;
  padding-top:24px;
  border-top:1px solid #dfdfd9;
}

.admin-trend-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.admin-trend-card{
  min-height:135px;
}

.admin-trend-card > span{
  display:block;
  font-size:1.35rem;
  font-weight:700;
  line-height:1.1;
  margin-bottom:14px;
}

.admin-trend-card strong{
  display:block;
  margin-bottom:6px;
}

.admin-trend-card p{
  margin:0;
  color:#777;
  font-size:.8rem;
  line-height:1.35;
}

@media (max-width:820px){
  .admin-trend-grid{
    grid-template-columns:1fr;
  }
}

/* FIX 46 · RENDIMIENTO POR PRODUCTO */
.admin-product-performance{
  margin:28px 0 34px;
  padding-top:24px;
  border-top:1px solid #dfdfd9;
}

.admin-product-performance-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}

@media (max-width:980px){
  .admin-product-performance-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:560px){
  .admin-product-performance-grid{
    grid-template-columns:1fr;
  }
}

/* FIX 47 · CLIENTES Y RECURRENCIA */
.admin-customer-performance{
  margin:28px 0 34px;
  padding-top:24px;
  border-top:1px solid #dfdfd9;
}

.admin-customer-performance-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

@media (max-width:820px){
  .admin-customer-performance-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:560px){
  .admin-customer-performance-grid{
    grid-template-columns:1fr;
  }
}

/* FIX 48 · CUPÓN EN CHECKOUT */
.med-coupon-box{
  margin:18px 0;
  padding:16px 0;
  border-top:1px solid #ddd;
  border-bottom:1px solid #ddd;
}

.med-coupon-box label{
  display:block;
  margin-bottom:8px;
  font-weight:600;
}

.med-coupon-field input{
  width:100%;
  min-height:46px;
  box-sizing:border-box;
  padding:0 14px;
  border:1px solid #cfcfcf;
  border-radius:10px;
  background:#fff;
  font:inherit;
  text-transform:uppercase;
}

.med-coupon-box small{
  display:block;
  margin-top:7px;
  font-size:.78rem;
  line-height:1.35;
  color:#777;
}

/* FIX 48 · ADMIN PROMOCIONES */
.admin-promo-manager{
  margin-top:32px;
  padding-top:28px;
  border-top:1px solid #dfdfd9;
}

.admin-promo-head{
  margin-bottom:18px;
}

.admin-promo-head h3{
  margin:4px 0 6px;
  font-size:1.35rem;
}

.admin-promo-head p{
  margin:0;
}

.admin-promo-form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.admin-promo-form label{
  display:flex;
  flex-direction:column;
  gap:7px;
}

.admin-promo-form input,
.admin-promo-form select{
  width:100%;
  min-height:44px;
  box-sizing:border-box;
}

.admin-promo-active{
  justify-content:flex-end;
}

.admin-promo-active input{
  width:auto;
  min-height:auto;
  align-self:flex-start;
}

.admin-promo-list-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin:28px 0 12px;
}

.admin-promo-list{
  display:grid;
  gap:10px;
}

.admin-promo-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  padding:16px;
  border:1px solid #dfdfd9;
  border-radius:14px;
  background:#fff;
}

.admin-promo-card strong{
  display:block;
  margin-bottom:5px;
}

.admin-promo-card small{
  display:block;
  color:#777;
  line-height:1.4;
}

.admin-promo-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

@media (max-width:720px){
  .admin-promo-form{
    grid-template-columns:1fr;
  }

  .admin-promo-card{
    grid-template-columns:1fr;
  }

  .admin-promo-actions{
    justify-content:flex-start;
  }
}

/* FIX 48 · ADMIN PROMOCIONES */
.admin-promo-manager{
  margin-top:32px;
  padding-top:28px;
  border-top:1px solid #dfdfd9;
}

.admin-promo-head{
  margin-bottom:18px;
}

.admin-promo-head h3{
  margin:4px 0 6px;
  font-size:1.35rem;
}

.admin-promo-head p{
  margin:0;
}

.admin-promo-form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.admin-promo-form label{
  display:flex;
  flex-direction:column;
  gap:7px;
}

.admin-promo-form input,
.admin-promo-form select{
  width:100%;
  min-height:44px;
  box-sizing:border-box;
}

.admin-promo-active{
  justify-content:flex-end;
}

.admin-promo-active input{
  width:auto;
  min-height:auto;
  align-self:flex-start;
}

.admin-promo-list-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin:28px 0 12px;
}

.admin-promo-list{
  display:grid;
  gap:10px;
}

.admin-promo-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  padding:16px;
  border:1px solid #dfdfd9;
  border-radius:14px;
  background:#fff;
}

.admin-promo-card strong{
  display:block;
  margin-bottom:5px;
}

.admin-promo-card small{
  display:block;
  color:#777;
  line-height:1.4;
}

.admin-promo-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

@media (max-width:720px){
  .admin-promo-form{
    grid-template-columns:1fr;
  }

  .admin-promo-card{
    grid-template-columns:1fr;
  }

  .admin-promo-actions{
    justify-content:flex-start;
  }
}

/* FIX 49 · MÉTODOS DE PAGO */
.med-payment-options{
  margin-top:18px;
  display:grid;
  gap:10px;
}

.med-payment-options > strong{
  margin-bottom:2px;
}

.med-payment-option{
  display:flex;
  gap:12px;
  align-items:flex-start;
  padding:14px;
  border:1px solid #d8d8d3;
  border-radius:12px;
  cursor:pointer;
}

.med-payment-option input{
  margin-top:4px;
}

.med-payment-option span{
  display:grid;
  gap:3px;
}

.med-payment-option small{
  color:#777;
  line-height:1.35;
}

.med-payment-option.active{
  border-color:#111;
}

.med-payment-option.disabled{
  opacity:.48;
  cursor:not-allowed;
}

/* ===== V7 RESERVATIONS ===== */
.admin-reservations-head{margin-top:42px;border-top:1px solid #222;padding-top:34px}
.admin-reservations-list{display:grid;gap:14px}
.admin-reservation-card{display:grid;grid-template-columns:130px 1fr;gap:18px;padding:16px;border:1px solid #262626;border-radius:18px;background:#0b0b0b}
.admin-reservation-media{width:130px;height:130px;border-radius:12px;overflow:hidden;background:#151515;display:flex;align-items:center;justify-content:center;color:#777;font-size:10px;letter-spacing:.14em;font-weight:800}
.admin-reservation-media img{width:100%;height:100%;object-fit:cover}
.admin-reservation-copy{min-width:0}
.admin-reservation-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.admin-reservation-top small{color:#666;font-size:10px}
.admin-reservation-status{display:inline-flex;padding:6px 9px;border:1px solid #3a3a3a;border-radius:999px;color:#ddd;font-size:9px;letter-spacing:.12em;font-weight:800}
.admin-reservation-copy h3{margin:10px 0 5px;font-size:20px}
.admin-reservation-copy p{margin:4px 0;color:#888;line-height:1.45}
.admin-reservation-meta{font-size:12px;color:#aaa!important}
.admin-reservation-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;align-items:center}
.admin-reservation-actions button{min-height:40px}
.admin-reservation-ready,.admin-reservation-closed{font-size:11px;color:#aaa;padding:8px 10px;border:1px solid #303030;border-radius:999px}
@media(max-width:720px){
  .admin-reservation-card{grid-template-columns:1fr}
  .admin-reservation-media{width:100%;height:190px}
}
/* Carrito compacto */
.med-cart-drawer {
  width: min(400px, 100vw) !important;
}
.med-cart-header {
  min-height: 76px !important;
  padding: 18px 20px !important;
}
.med-cart-header h2 {
  font-size: 24px !important;
}
.med-cart-empty {
  flex: 0 0 auto !important;
  margin: 20px !important;
  padding: 32px 20px !important;
  min-height: 280px !important;
  border: 1px solid #e5e5df;
  border-radius: 18px;
  align-items: center !important;
  text-align: center !important;
}
.med-cart-empty-icon {
  width: 48px !important;
  height: 48px !important;
  margin: 0 auto 18px !important;
  border-radius: 50%;
  background: #f5f5f0;
}
.med-cart-empty-icon svg {
  width: 24px !important;
  height: 24px !important;
}
.med-cart-empty h3 {
  font-size: 19px !important;
  margin: 0 0 10px !important;
}
.med-cart-empty p {
  font-size: 13px !important;
  line-height: 1.6 !important;
  max-width: 260px;
}
.med-cart-shop-link {
  min-height: 44px !important;
  padding: 12px 24px !important;
  margin-top: 20px !important;
  border-radius: 28px !important;
  font-size: 13px !important;
}
.med-cart-empty-icon {
  width: 42px !important;
  height: 42px !important;
  display: grid !important;
  place-items: center !important;
  background: #f7f7f3 !important;
  margin-bottom: 16px !important;
}
.med-cart-empty-icon svg {
  width: 21px !important;
  height: 21px !important;
}
.category-strip-inner {
  gap: 8px !important;
}
.category-strip .category-chip {
  min-height: 34px !important;
  padding: 8px 14px !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  border-radius: 20px !important;
}
/* Carrito: tamaño intermedio */
.med-cart-header h2 {
  font-size: 26px !important;
}
.med-cart-empty h3 {
  font-size: 21px !important;
}
.med-cart-empty p,
.med-cart-shop-link {
  font-size: 14px !important;
}
.med-cart-empty-icon {
  width: 46px !important;
  height: 46px !important;
}
.med-cart-empty-icon svg {
  width: 23px !important;
  height: 23px !important;
}
.category-strip .category-chip[data-category="carteras"] {
  display: none !important;
}

/* Ajuste de opciones de pago */
.med-payment-option{
  display:grid!important;
  grid-template-columns:20px minmax(0,1fr)!important;
  align-items:start!important;
  gap:12px!important;
  min-width:0;
  box-sizing:border-box;
}
.med-payment-option input[type="radio"]{
  width:20px!important;
  height:20px!important;
  min-height:0!important;
  padding:0!important;
  margin:3px 0 0!important;
  accent-color:#111;
}
.med-payment-option span{
  min-width:0;
  overflow-wrap:anywhere;
}
.med-payment-option[hidden]{
  display:none!important;
}

/* Checkout: encabezados más simples */
.med-step-head > span:first-child{
  display:none!important;
}
.med-step-head{
  display:block!important;
}
.med-step-head h2{
  font-size:22px!important;
  line-height:1.25!important;
  margin:0 0 6px!important;
}
.med-step-head p{
  font-size:14px!important;
  line-height:1.5!important;
}

/* Checkout más compacto */
@media(max-width:760px){
  .med-checkout-section{
    padding:20px!important;
    border-radius:18px!important;
  }
  .med-checkout-section input:not([type="radio"]):not([type="checkbox"]),
  .med-checkout-section textarea{
    min-height:44px!important;
    padding:10px 12px!important;
    font-size:15px!important;
  }
  .med-step-head h2{font-size:20px!important}
  .med-step-head p{font-size:13px!important}
  .med-choice-card{
    padding:14px!important;
    gap:10px!important;
    border-radius:14px!important;
  }
  .med-choice-copy strong,
  .med-choice-card b{font-size:15px!important}
  .med-choice-copy span,
  .med-info-note p,
  .med-policy-check{font-size:13px!important}
  .med-info-note{padding:14px!important}
  .med-confirm-order{
    min-height:48px!important;
    padding:12px 18px!important;
    font-size:15px!important;
  }
  .med-confirm-note{font-size:12px!important}
  .med-payment-option{
    padding:12px!important;
    font-size:14px!important;
  }
  .med-payment-option small{font-size:12px!important}
}

.med-checkout-back{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  width:44px;
  height:44px;
  border-radius:50%;
  background:rgba(255,255,255,.08);
}
.med-confirm-order > span:last-child{
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

/* Flechas comunes: navegación, menú, perfil y carrito */
.med-nav-arrow{display:inline-block;vertical-align:middle;flex-shrink:0;width:22px;height:22px;max-width:none;pointer-events:none}
.med-menu-chevron,.profile-arrow{display:inline-flex;align-items:center;justify-content:center;line-height:1}
.med-menu-chevron .med-nav-arrow,.profile-arrow .med-nav-arrow{width:18px;height:18px}
.med-menu-contact a::after{content:""!important;width:18px;height:18px;flex-shrink:0;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 5l7 7-7 7' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}
.account-menu-nav .account-nav-item::after,.refined-account-nav .account-nav-item::after{content:""!important;width:20px;height:20px;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h14m-7-7 7 7-7 7' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}

/* Confirmación de pedido más compacta */
.med-order-confirmation-shell{
  width:100%;
  max-width:620px!important;
  margin:28px auto!important;
  padding:0 16px!important;
  box-sizing:border-box;
}
.med-order-confirmation-card{
  padding:28px 24px!important;
  border-radius:20px!important;
}
.med-order-confirmation-mark{
  display:grid;
  place-items:center;
  width:44px!important;
  height:44px!important;
  font-size:24px!important;
  margin:0 auto 16px!important;
}
.med-order-confirmation-card h1{
  font-size:clamp(28px,5vw,34px)!important;
  line-height:1.15!important;
  margin:12px 0!important;
}
.med-order-confirmation-card p{
  font-size:14px!important;
  line-height:1.6!important;
}
.med-order-confirmation-card .eyebrow{
  font-size:11px!important;
}
.med-order-confirmation-ref{
  padding:14px!important;
  margin:20px 0 12px!important;
  border-radius:12px!important;
}
.med-order-confirmation-ref strong{
  font-size:18px!important;
}
.med-order-confirmation-card .order-account-prompt{
  margin:20px 0!important;
  padding:16px!important;
  font-size:14px!important;
}
.med-order-confirmation-card .primary-button,
.med-order-confirmation-card .secondary-button{
  min-height:44px!important;
  padding:10px 18px!important;
  font-size:14px!important;
  box-sizing:border-box;
}
.med-order-confirmation-card [hidden]{
  display:none!important;
}

body.med-order-confirmation-body .med-order-confirmation-card h1{
  font-size:26px!important;
  line-height:1.25!important;
  font-weight:700!important;
  letter-spacing:-.5px!important;
}
body.med-order-confirmation-body .med-order-confirmation-card{
  max-width:480px!important;
  margin:auto!important;
  padding:24px 20px!important;
}
body.med-order-confirmation-body .med-order-confirmation-card > a{
  display:flex!important;
  align-items:center;
  justify-content:center;
  width:100%!important;
  min-height:44px!important;
  margin:12px 0 0!important;
  border-radius:12px!important;
  font-size:14px!important;
}
body.med-order-confirmation-body .med-order-confirmation-card [hidden]{
  display:none!important;
}

body .service-confidence {
  padding: 32px 6vw !important;
}
body .service-confidence-head {
  margin-bottom: 16px !important;
}
body .service-eyebrow {
  font-size: 11px !important;
}
body .service-confidence-item {
  min-height: 0 !important;
  padding: 20px 16px !important;
}
body .service-confidence-item h3 {
  margin: 0 0 8px !important;
  font-size: 14px !important;
}
body .service-confidence-item p {
  margin: 0 !important;
  font-size: 12px !important;
  line-height: 1.6 !important;
}
body .med-footer {
  display: block !important;
  padding: 32px 6vw 24px !important;
}
body .med-footer-top {
  display: grid !important;
  grid-template-columns: 1fr 1.5fr !important;
  gap: 32px !important;
}
body .med-footer-brand {
  width: 155px !important;
}
body .med-footer-brand img {
  width: 100% !important;
  height: auto !important;
}
body .med-footer-brand-block p {
  font-size: 12px !important;
  line-height: 1.6 !important;
}
body .med-footer-brand-block > span,
body .med-footer-label {
  font-size: 9px !important;
}
body .med-footer-nav {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 18px !important;
}
body .med-footer-nav a {
  font-size: 12px !important;
  line-height: 1.5 !important;
  padding: 5px 0 !important;
}
body .med-footer-bottom {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: space-between !important;
  gap: 14px !important;
  margin-top: 24px !important;
  padding-top: 18px !important;
}
body .med-footer-bottom > p,
body .med-footer-legal a {
  font-size: 10px !important;
}
body .med-footer-social-icons {
  gap: 6px !important;
}
body .med-footer-social-icons a {
  width: 40px !important;
  height: 40px !important;
}
body .med-footer-social-icons svg {
  width: 18px !important;
  height: 18px !important;
}
@media (max-width: 700px) {
  body .service-confidence { padding: 24px 22px !important; }
  body .service-confidence-grid { grid-template-columns: 1fr !important; }
  body .service-confidence-item { padding: 16px 0 !important; }
  body .med-footer { padding: 26px 22px 20px !important; }
  body .med-footer-top { grid-template-columns: 1fr !important; gap: 24px !important; }
  body .med-footer-nav { gap: 12px !important; }
  body .med-footer-nav a { font-size: 11px !important; }
  body .med-footer-bottom { justify-content: center !important; text-align: center; }
}

/* Keep mobile cart and close control above the site header. */
@media(max-width:700px){
body .med-cart-drawer{position:fixed!important;top:0!important;bottom:0!important;height:100dvh!important;max-height:100dvh!important;width:min(400px,100vw)!important;z-index:10000!important}
body .med-cart-overlay{z-index:9998!important}
body .med-cart-panel{height:100%!important;max-height:100%!important}
body .med-cart-header{flex-shrink:0!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:calc(16px + env(safe-area-inset-top,0px)) 20px 16px!important;min-height:76px!important;box-sizing:border-box!important}
body .med-cart-close{position:static!important;flex:0 0 44px!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;margin:0!important;display:grid!important;place-items:center!important;font-size:26px!important;line-height:1!important;transform:none!important}
}

/* MED_MOBILE_CONTROL_COLORS_V1 */
body .refined-settings-list > button,
body .med-upcoming-detail header button,
body .med-upcoming-nav button,
body .account-dialog-head button {
  -webkit-appearance:none;
  appearance:none;
  color:#111;
  -webkit-text-fill-color:currentColor;
}
body .refined-settings-list > button:focus,
body .med-upcoming-detail header button:focus,
body .med-upcoming-nav button:focus,
body .account-dialog-head button:focus {
  outline:2px solid #111;
  outline-offset:3px;
}
body .refined-settings-list > button:focus:not(:focus-visible),
body .med-upcoming-detail header button:focus:not(:focus-visible),
body .med-upcoming-nav button:focus:not(:focus-visible),
body .account-dialog-head button:focus:not(:focus-visible) {
  outline:none;
}
