@font-face{ font-family:"Inter Fallback"; src:local("Arial"); size-adjust:107.4%; ascent-override:90.2%; descent-override:22.5%; line-gap-override:0%; }
/* Estilos compartidos por las páginas de producto, marca y ayuda de Match Point Imports */
:root{
  --ink:#121212; --ink-soft:#4F4B42; --ink-faint:#6F6B5F;
  --bg:#FAFAF7; --surface:#FFFFFF; --surface-2:#F1F0E9; --line:#E8E6DD;
  --gold:#A8813F; --gold-deep:#7E5F26; --gold-soft:#F1E7CC; --gold-ink:#3A2C0E;
  --font:"Inter","Inter Fallback","Helvetica Neue",Arial,sans-serif;
}
*{ box-sizing:border-box; }
html,body{ margin:0; padding:0; }
body{ background:var(--bg); color:var(--ink); font-family:var(--font); -webkit-font-smoothing:antialiased; line-height:1.55; }
img{ max-width:100%; display:block; }
a{ color:var(--gold-deep); }
a:hover{ color:var(--gold-ink); }
button{ font-family:inherit; }

.pg-top{ position:sticky; top:0; z-index:30; display:flex; align-items:center; gap:14px; justify-content:space-between; padding:10px clamp(14px,3vw,32px); background:rgba(250,250,247,.96); backdrop-filter:blur(8px); border-bottom:1px solid var(--line); }
.pg-brand{ display:flex; align-items:center; gap:10px; text-decoration:none; color:var(--ink); font-weight:800; font-size:13px; letter-spacing:.04em; }
.pg-brand img{ height:30px; width:auto; }
.pg-nav{ display:flex; gap:4px; margin-left:auto; overflow-x:auto; }
.pg-nav a{ white-space:nowrap; text-decoration:none; color:var(--ink-soft); font-size:13px; font-weight:600; padding:12px 10px; border-radius:8px; }
.pg-nav a:hover{ color:var(--ink); background:var(--surface-2); }
.pg-cart{ position:relative; display:flex; align-items:center; justify-content:center; width:44px; height:44px; border-radius:50%; background:var(--ink); color:var(--bg); text-decoration:none; flex:0 0 auto; }
.pg-cart:hover{ background:var(--gold-deep); color:#fff; }
.pg-cart span{ position:absolute; top:-3px; right:-3px; min-width:18px; height:18px; padding:0 4px; border-radius:999px; background:var(--gold-deep); color:#fff; font-size:10.5px; font-weight:800; line-height:18px; text-align:center; }
.pg-cart span[hidden]{ display:none; }
@media (max-width:639px){ .pg-brand span{ display:none; } }

.pp{ max-width:1100px; margin:0 auto; padding:18px clamp(14px,4vw,40px) 0; }
.crumbs{ font-size:12.5px; color:var(--ink-faint); margin-bottom:14px; }
.crumbs a{ color:var(--ink-soft); text-decoration:none; padding:8px 0; }
.crumbs a:hover{ text-decoration:underline; }
.pp h1{ font-size:clamp(24px,3.4vw,34px); line-height:1.15; letter-spacing:-.01em; margin:0 0 10px; }
.pp h2{ font-size:19px; margin:30px 0 10px; letter-spacing:-.01em; }

.pp-grid{ display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:clamp(20px,4vw,48px); align-items:start; }
@media (max-width:820px){ .pp-grid{ grid-template-columns:1fr; } }
.pp-gallery{ position:sticky; top:68px; }
@media (max-width:820px){ .pp-gallery{ position:static; } }
.pp-stage{ background:var(--surface-2); border-radius:14px; aspect-ratio:1/1; display:flex; align-items:center; justify-content:center; overflow:hidden; }
.pp-stage img{ width:100%; height:100%; object-fit:contain; }
.pp-thumbs{ display:flex; gap:8px; margin-top:10px; flex-wrap:wrap; }
.pp-thumb{ width:64px; height:64px; padding:0; border:2px solid transparent; border-radius:10px; overflow:hidden; background:var(--surface-2); cursor:pointer; }
.pp-thumb.on{ border-color:var(--ink); }
.pp-thumb img{ width:100%; height:100%; object-fit:contain; }

.pp-eyebrow{ font-size:11.5px; font-weight:700; letter-spacing:.09em; text-transform:uppercase; color:var(--gold-deep); margin-bottom:6px; }
.pp-price{ font-size:26px; font-weight:800; letter-spacing:-.01em; margin:4px 0 8px; }
.pp-badge{ display:inline-block; font-size:11.5px; font-weight:700; color:var(--ink-soft); background:var(--surface); border:1px solid var(--line); border-radius:8px; padding:5px 10px; margin-bottom:16px; }
.pp-label{ font-size:12px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--ink-soft); display:flex; gap:8px; align-items:baseline; flex-wrap:wrap; margin-bottom:8px; }
.pp-label span{ color:var(--ink-faint); font-weight:600; text-transform:none; letter-spacing:0; }
.pp-label a{ margin-left:auto; font-size:12.5px; font-weight:600; text-transform:none; letter-spacing:0; }
.pp-sizes{ display:flex; flex-wrap:wrap; gap:8px; margin-bottom:10px; }
.pp-size{ min-width:56px; height:48px; padding:0 14px; border-radius:12px; border:1.5px solid var(--line); background:var(--surface); font-size:14.5px; font-weight:700; cursor:pointer; color:var(--ink); }
.pp-size:hover{ border-color:var(--ink-faint); }
.pp-size.on{ background:var(--ink); border-color:var(--ink); color:var(--bg); }
.pp-stock{ font-size:13px; font-weight:700; color:var(--gold-deep); min-height:20px; margin-bottom:6px; }
.pp-actions{ display:flex; flex-direction:column; gap:8px; }
@media (max-width:820px){
  .pp-actions{ position:sticky; bottom:0; z-index:20; background:linear-gradient(to top, var(--bg) 78%, rgba(250,250,247,0)); padding:14px 0 calc(10px + env(safe-area-inset-bottom,0px)); margin:0 -2px; }
}
.pp-btn{ width:100%; border-radius:999px; font-weight:800; font-size:15px; cursor:pointer; padding:16px 18px; border:1.5px solid transparent; }
.pp-buy{ background:var(--gold-deep); color:#fff; }
.pp-buy:hover{ background:var(--gold-ink); }
.pp-add{ background:transparent; color:var(--ink); border-color:var(--line); padding:13px 18px; font-size:14px; }
.pp-add:hover{ border-color:var(--ink-faint); background:var(--surface-2); }
.pp-btn:disabled{ opacity:.45; cursor:not-allowed; }
.pp-hint{ font-size:12.5px; color:var(--ink-faint); min-height:18px; margin-top:6px; }
.pp-ok{ font-size:13.5px; color:#1F6B42; background:#E8F4EC; border-radius:10px; padding:10px 12px; margin-top:8px; }
.pp-ok a{ font-weight:700; }
.pp-trust{ list-style:none; margin:16px 0 0; padding:0; display:flex; flex-direction:column; gap:7px; }
.pp-trust li{ font-size:13.5px; color:var(--ink-soft); padding-left:22px; position:relative; }
.pp-trust li::before{ content:"✓"; position:absolute; left:0; color:var(--gold-deep); font-weight:800; }
.pp-help{ display:inline-block; margin-top:14px; font-size:13.5px; padding:10px 0; }
.pp-detail{ max-width:760px; }
.pp-detail p,.prose p,.prose li{ font-size:15.5px; color:#2b2b2b; }
.pp-spec{ width:100%; border-collapse:collapse; margin:10px 0 6px; font-size:14px; }
.pp-spec th,.pp-spec td{ text-align:left; padding:9px 4px; border-bottom:1px solid var(--line); vertical-align:top; }
.pp-spec th{ width:46%; color:var(--ink-faint); font-weight:600; }
.pp-related{ margin-top:10px; }

.mc-grid{ display:grid; grid-template-columns:repeat(auto-fill, minmax(200px,1fr)); gap:22px 16px; margin:14px 0 8px; }
@media (max-width:639px){ .mc-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 10px; } }
.mc{ display:flex; flex-direction:column; gap:3px; text-decoration:none; color:var(--ink); }
.mc-img{ background:var(--surface-2); border-radius:12px; aspect-ratio:1/1; display:flex; align-items:center; justify-content:center; overflow:hidden; margin-bottom:6px; }
.mc-img img{ width:100%; height:100%; object-fit:contain; transition:transform .35s ease; }
.mc:hover .mc-img img{ transform:scale(1.03); }
.mc-brand{ font-size:10.5px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--ink-faint); }
.mc-title{ font-size:13.5px; font-weight:600; color:var(--ink-soft); line-height:1.3; }
.mc-price{ font-size:15px; font-weight:800; }
.mc-last{ font-size:11.5px; font-weight:800; color:var(--gold-deep); margin-left:4px; }
.pp-brand .lead{ font-size:16px; color:var(--ink-soft); max-width:70ch; }
.pp-brand .count{ font-size:13px; color:var(--ink-faint); font-weight:600; }
.pp-info{ padding-bottom:20px; }
.prose{ max-width:760px; }
.prose ul{ padding-left:20px; }
.prose li{ margin-bottom:6px; }
.muted{ color:var(--ink-faint) !important; font-size:13px !important; }

.pp-sizes.need{ outline:2px solid var(--gold-deep); outline-offset:6px; border-radius:12px; }
.crumbs a, .pp-detail a, .prose a, .pp-trust a{ text-decoration:underline; }
.crumbs a{ text-decoration-color:rgba(0,0,0,.35); }
