:root{
  --op-bg:#09090b;
  --op-black:#000000;
  --op-surface:#111113;
  --op-soft:#141417;
  --op-border:rgba(255,255,255,.08);
  --op-white:#ffffff;
  --op-off:#f7f4ee;
  --op-muted:#b8b0a8;
  --op-pink:#ec4899;
  --op-font-serif:"Bodoni Moda", "Playfair Display", Georgia, serif;
  --op-font-sans:"Space Grotesk", "Montserrat", Arial, sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--op-bg);color:var(--op-off);font-family:var(--op-font-sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision;overflow-x:hidden}a{color:inherit;text-decoration:none;transition:.22s ease}a:hover{color:var(--op-pink)}img{max-width:100%;height:auto}.screen-reader-text{position:absolute;left:-9999px}.op-container{width:min(1260px,calc(100% - 56px));margin-inline:auto}.op-announcement{height:28px;background:#000;color:#fff;text-align:center;display:flex;align-items:center;justify-content:center;padding:0 1rem;font-size:.66rem;letter-spacing:.32em;text-transform:uppercase;font-weight:900;position:relative;z-index:1001}.op-header{position:sticky;top:0;z-index:1000;background:rgba(0,0,0,.98);border-bottom:1px solid var(--op-border);backdrop-filter:blur(14px)}.op-header.is-scrolled{box-shadow:0 16px 40px rgba(0,0,0,.38)}.op-header__inner{width:min(1280px,calc(100% - 96px));margin-inline:auto;height:64px;display:grid;grid-template-columns:280px 1fr 240px;align-items:center;gap:20px}.op-brand{display:inline-flex;flex-direction:column;align-items:flex-start;line-height:1;justify-self:start}.op-brand img{max-height:52px;width:auto}.op-brand__name{font-family:var(--op-font-serif);font-size:1.25rem;letter-spacing:.36em;text-transform:uppercase;font-weight:700;color:#fff;white-space:nowrap}.op-brand__tagline{font-size:.48rem;letter-spacing:.44em;text-transform:uppercase;font-weight:900;color:var(--op-pink);margin-top:.26rem;margin-left:.3rem}.op-nav{justify-self:center}.op-nav__list{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:clamp(2rem,4vw,4.2rem)}.op-nav__list a{font-size:.68rem;letter-spacing:.32em;text-transform:uppercase;font-weight:900;color:#fff}.op-nav__list .current-menu-item>a,.op-nav__list a:hover,.home .op-nav__list li:first-child a{color:var(--op-pink)}.op-header-actions{justify-self:end;display:flex;align-items:center;gap:1.35rem}.op-header-actions a{display:inline-flex;align-items:center;justify-content:center;color:#fff;position:relative}.op-header-actions svg{width:21px;height:21px;stroke-width:1.7}.op-cart-count{position:absolute;top:-8px;right:-9px;min-width:16px;height:16px;border-radius:999px;background:var(--op-pink);color:#fff;font-size:.55rem;font-weight:900;display:flex;align-items:center;justify-content:center}.op-menu-toggle{display:none;background:transparent;border:0;padding:0;cursor:pointer}.op-menu-toggle span{display:block;width:24px;height:2px;background:#fff;margin:5px 0}.site-main{background:#09090b}.op-page-content{min-height:55vh}.op-hero-shell{background:#09090b;padding-top:78px}.op-hero{position:relative;width:100%;height:72vh;min-height:560px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#111;border-top:1px solid rgba(255,255,255,.04);border-bottom:1px solid var(--op-border)}.op-hero__media{position:absolute;inset:0;background:linear-gradient(rgba(0,0,0,.18),rgba(0,0,0,.22)),url("https://lh3.googleusercontent.com/aida-public/AB6AXuDh5XTXQUGljwYjwr3iz4uAso2JoEtdbGHdAL4rsgsVGf9GZBDXcHesGf4aJvf6HkknAo-nTOWfNWMcgz0HytB16GJdpCo6n5S9jBo2OHN8q0s63Y4bcWoAupTWQMToKVA9Q0HKObxSyuAxUAHwlTXo-cepjooXoQfZLfS8wltiuDzxDC8RSNaU_-YdfUsSvqmanMEuWQmJyomAU5q5mwn8tr-4Enwj5k0DI3ZOHrKwQx33kceAx7TVYVndvLtCqyCa_G0ONhHtHiFW") center/cover no-repeat;filter:saturate(.88) contrast(1.04);transform:scale(1.01)}.op-hero__content{position:relative;z-index:2;text-align:center;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 1rem}.op-kicker{display:block;margin:0 0 1rem;font-family:var(--op-font-sans);font-size:.68rem;line-height:1.4;text-transform:uppercase;letter-spacing:.34em;font-weight:900;color:rgba(247,244,238,.72)}.op-hero h1,.op-statement h2,.op-split h2,.op-section h2,.op-page-header h1,.op-shop-hero h1,.woocommerce-products-header__title,.product_title{font-family:var(--op-font-serif);font-weight:400;color:#fff;line-height:.94;letter-spacing:-.05em}.op-hero h1{font-size:clamp(4.8rem,8.7vw,9.7rem);text-transform:uppercase;margin:0;text-shadow:0 18px 54px rgba(0,0,0,.45)}.op-hero p:not(.op-kicker){font-family:var(--op-font-serif);font-size:clamp(1.2rem,2.1vw,1.95rem);line-height:1.25;margin:.7rem 0 0;color:rgba(255,255,255,.94)}.op-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:2.7rem}.op-btn,.button,.wp-element-button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.added_to_cart{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:1rem 2.45rem;border-radius:3px;border:1px solid rgba(255,255,255,.72);font-family:var(--op-font-sans);font-size:.68rem;letter-spacing:.29em;text-transform:uppercase;font-weight:900;cursor:pointer;transition:.25s ease}.op-btn--primary,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{background:#000;color:#fff;border-color:#000;box-shadow:0 12px 26px rgba(0,0,0,.36)}.op-btn--secondary{background:rgba(255,255,255,.08);color:#fff;backdrop-filter:blur(3px)}.op-btn:hover,.button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{background:var(--op-pink)!important;border-color:var(--op-pink)!important;color:#fff!important;transform:translateY(-2px)}.op-coordinates{position:absolute;z-index:3;left:3.6rem;bottom:2.1rem;color:rgba(247,244,238,.72);font-family:monospace;font-size:.58rem;letter-spacing:.18em;text-transform:uppercase;background:rgba(0,0,0,.22);padding:.45rem .7rem;border-radius:2px}.op-statement{position:relative;text-align:center;overflow:hidden;background:#141417;padding:clamp(6rem,11vw,10rem) 1rem;border-bottom:1px solid var(--op-border);border-top:1px solid var(--op-border)}.op-statement:before{content:"";position:absolute;left:-60px;top:-70px;width:210px;height:210px;background:radial-gradient(circle,var(--op-pink),transparent 64%);opacity:.11}.op-statement .op-container{max-width:920px}.op-statement h2{font-size:clamp(3.1rem,7vw,7.3rem);margin:0}.op-statement__line{width:66px;height:1px;background:var(--op-pink);margin:2.25rem auto}.op-statement p:not(.op-kicker){max-width:760px;margin:0 auto;color:#d0cbc6;font-size:clamp(1rem,1.35vw,1.12rem);font-weight:600;line-height:1.75}.op-statement .op-actions{margin-top:2.7rem}.op-statement .op-btn--primary{background:var(--op-pink);border-color:var(--op-pink);box-shadow:0 8px 32px rgba(236,72,153,.34)}.op-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(3rem,6vw,6rem);align-items:center;padding:clamp(5.5rem,10vw,9rem) 0;background:#09090b}.op-split__image{aspect-ratio:4/5;background:url("https://lh3.googleusercontent.com/aida-public/AB6AXuBnMgNILoAs6ciQ1udHJXZUlusmRmmTXwAN0KnkAiW51zFOAlyxZoCbk-1s72-4OIGUIpDJOw-t7U8v16HflJge1lpZgtD_E8mv1_fmqBLQrnbchK0d1o4efDrFgGBoeFo7JAmPlSSw0l2wbSAXjFm4oxEQ3ph6ttuytYqywQ4aCCXB4TEvxyvkRjIxtDCcDWFfCGVjfVjVdNxV9XzKEtqF8xj3QJ9EwuTw9Al-4EAhb9r0tYB0jNjLWlRUa1kWSnoIHAPdYE4tGzQi") center/cover no-repeat;border-radius:4px;box-shadow:0 34px 70px rgba(0,0,0,.42);overflow:hidden}.op-split h2{font-size:clamp(3rem,5.4vw,5.3rem);margin:0 0 1.5rem}.op-split p:not(.op-kicker){color:#cfc9c3;max-width:620px;font-size:1rem;line-height:1.8;font-weight:500}.op-link{display:inline-block;margin-top:1.4rem;border-bottom:1px solid rgba(255,255,255,.42);padding-bottom:.36rem;font-size:.68rem;letter-spacing:.28em;text-transform:uppercase;font-weight:900}.op-inclusion{min-height:55vh;background:#000;position:relative;display:flex;align-items:center;overflow:hidden;border-top:1px solid var(--op-border);border-bottom:1px solid var(--op-border)}.op-inclusion:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 40%,rgba(236,72,153,.18),transparent 38%),radial-gradient(circle at 20% 80%,rgba(255,255,255,.08),transparent 35%);opacity:.65}.op-inclusion .op-container{position:relative;z-index:1;text-align:center;max-width:900px}.op-inclusion h2{font-family:var(--op-font-serif);font-size:clamp(3.2rem,6.8vw,7rem);line-height:.95;margin:0;color:#fff;font-weight:400;letter-spacing:-.05em}.op-section{padding:clamp(5rem,9vw,8rem) 0;background:#09090b}.op-section__head{text-align:center;max-width:820px;margin:0 auto 3.3rem}.op-section h2{font-size:clamp(3rem,6vw,6.4rem);margin:0 0 1rem}.op-section__head p{color:#cfc9c3}.op-product-grid,.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.op-product-card,.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{background:#101013;border:1px solid var(--op-border);padding:.75rem;float:none!important;width:auto!important;margin:0!important;position:relative;transition:.25s ease;border-radius:0;overflow:hidden}.op-product-card:hover,.woocommerce ul.products li.product:hover{transform:translateY(-4px);border-color:rgba(236,72,153,.58)}.op-product-card__image,.woocommerce ul.products li.product img{width:100%;aspect-ratio:4/5;object-fit:cover;background:linear-gradient(135deg,#222,#080808);display:block}.op-product-card:nth-child(1) .op-product-card__image{background:linear-gradient(rgba(0,0,0,.1),rgba(0,0,0,.25)),url("https://lh3.googleusercontent.com/aida-public/AB6AXuAWRBd_IFUKtpAtFmI9CxXI4I7Bv_-gBBEc5AbNeOzUNl6fCynsmwStERDVQUc6cM8qGu-VBDfHnpRBwMDeFwzaxfLHeK_ptuvC3Sxu4niD8O9pF5ecFj1lI9LDDam60byz5MZRoCUVfO_lzZRno18IwRdYTH6YSE1RPW701EhqzOftChXcC2obYVxOxMsawXekcOAnYnLGTQnVXt-WlPLBw4Q0AyOwm-24dp5IYWPA8JNp8iYg_5Fd77DrpV9XzJdsAkUOBQkL9Q-k") 0% 0%/300% 200%}.op-product-card:nth-child(2) .op-product-card__image{background:linear-gradient(rgba(0,0,0,.1),rgba(0,0,0,.25)),url("https://lh3.googleusercontent.com/aida-public/AB6AXuAWRBd_IFUKtpAtFmI9CxXI4I7Bv_-gBBEc5AbNeOzUNl6fCynsmwStERDVQUc6cM8qGu-VBDfHnpRBwMDeFwzaxfLHeK_ptuvC3Sxu4niD8O9pF5ecFj1lI9LDDam60byz5MZRoCUVfO_lzZRno18IwRdYTH6YSE1RPW701EhqzOftChXcC2obYVxOxMsawXekcOAnYnLGTQnVXt-WlPLBw4Q0AyOwm-24dp5IYWPA8JNp8iYg_5Fd77DrpV9XzJdsAkUOBQkL9Q-k") 33.333% 0%/300% 200%}.op-product-card:nth-child(3) .op-product-card__image{background:linear-gradient(rgba(0,0,0,.1),rgba(0,0,0,.25)),url("https://lh3.googleusercontent.com/aida-public/AB6AXuAWRBd_IFUKtpAtFmI9CxXI4I7Bv_-gBBEc5AbNeOzUNl6fCynsmwStERDVQUc6cM8qGu-VBDfHnpRBwMDeFwzaxfLHeK_ptuvC3Sxu4niD8O9pF5ecFj1lI9LDDam60byz5MZRoCUVfO_lzZRno18IwRdYTH6YSE1RPW701EhqzOftChXcC2obYVxOxMsawXekcOAnYnLGTQnVXt-WlPLBw4Q0AyOwm-24dp5IYWPA8JNp8iYg_5Fd77DrpV9XzJdsAkUOBQkL9Q-k") 66.666% 0%/300% 200%}.op-product-card:nth-child(4) .op-product-card__image{background:linear-gradient(rgba(0,0,0,.1),rgba(0,0,0,.25)),url("https://lh3.googleusercontent.com/aida-public/AB6AXuAWRBd_IFUKtpAtFmI9CxXI4I7Bv_-gBBEc5AbNeOzUNl6fCynsmwStERDVQUc6cM8qGu-VBDfHnpRBwMDeFwzaxfLHeK_ptuvC3Sxu4niD8O9pF5ecFj1lI9LDDam60byz5MZRoCUVfO_lzZRno18IwRdYTH6YSE1RPW701EhqzOftChXcC2obYVxOxMsawXekcOAnYnLGTQnVXt-WlPLBw4Q0AyOwm-24dp5IYWPA8JNp8iYg_5Fd77DrpV9XzJdsAkUOBQkL9Q-k") 0% 100%/300% 200%}.woocommerce ul.products li.product .woocommerce-loop-product__title,.op-product-card h3{font-size:.92rem;color:#fff;font-weight:800;margin:.9rem 0 .2rem;letter-spacing:.03em;padding:0!important}.woocommerce ul.products li.product .price,.op-product-card p{color:var(--op-muted)!important;font-weight:700}.op-product-badge,.onsale{position:absolute!important;top:1rem!important;left:1rem!important;right:auto!important;background:var(--op-pink)!important;color:#fff!important;border-radius:999px!important;font-size:.55rem!important;letter-spacing:.14em;text-transform:uppercase;font-weight:900;padding:.35rem .58rem!important;line-height:1!important;z-index:3;min-height:auto!important;min-width:auto!important}.op-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.op-story-card{min-height:310px;padding:1.5rem;background:#111;border:1px solid var(--op-border);display:flex;flex-direction:column;justify-content:flex-end}.op-story-card span{color:var(--op-pink);font-size:.68rem;letter-spacing:.28em;text-transform:uppercase;font-weight:900}.op-story-card h3{font-family:var(--op-font-serif);font-size:2rem;font-weight:400;line-height:1.05;margin:.8rem 0 0;color:#fff}.op-footer{background:#141417;border-top:1px solid var(--op-border);padding:clamp(4rem,8vw,7rem) 0 2rem}.op-footer__grid{display:grid;grid-template-columns:1.4fr .7fr .8fr 1.2fr;gap:3rem}.op-footer__brand{font-family:var(--op-font-serif);font-size:2rem;text-transform:uppercase;letter-spacing:.16em;margin:0 0 1rem;color:#fff}.op-muted{color:var(--op-muted)}.op-footer h3{font-size:.68rem;letter-spacing:.28em;text-transform:uppercase;color:#fff;margin:0 0 1rem}.op-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:.55rem}.op-footer a,.op-footer p{font-size:.88rem}.op-newsletter{display:flex;border-bottom:1px solid rgba(255,255,255,.25);padding-bottom:.35rem}.op-newsletter input{flex:1;min-width:0;background:transparent;border:0;color:#fff;outline:0;padding:.75rem 0}.op-newsletter button{background:transparent;color:#fff;border:0;text-transform:uppercase;letter-spacing:.2em;font-size:.68rem;font-weight:900;cursor:pointer}.op-newsletter button:hover{color:var(--op-pink)}.op-footer__bottom{border-top:1px solid rgba(255,255,255,.08);margin-top:4rem;padding-top:1.25rem;display:flex;justify-content:space-between;gap:1rem;color:var(--op-muted);font-size:.78rem}.op-woo-main{padding:clamp(4rem,8vw,7rem) 0}.op-page-header,.op-shop-hero{padding:clamp(5rem,8vw,8rem) 0 3rem;text-align:center;background:#09090b}.op-page-header h1,.op-shop-hero h1,.woocommerce-products-header__title{font-size:clamp(3.2rem,7vw,7.8rem);margin:0}.woocommerce-result-count,.woocommerce-ordering{color:var(--op-muted)}.woocommerce div.product{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4rem}.woocommerce div.product div.images,.woocommerce div.product div.summary{width:auto!important;float:none!important}.woocommerce div.product p.price,.woocommerce div.product span.price{color:#fff;font-size:1.8rem}.woocommerce div.product form.cart .button{background:var(--op-pink)!important;border-color:var(--op-pink)!important}.quantity input{background:#0f0f11;border:1px solid var(--op-border);color:#fff;padding:.8rem}.woocommerce-message,.woocommerce-info,.woocommerce-error{background:#111!important;border-top-color:var(--op-pink)!important;color:#fff!important}.woocommerce table.shop_table{border-color:var(--op-border)!important;color:#fff}.woocommerce table.shop_table th,.woocommerce table.shop_table td{border-color:var(--op-border)!important}.woocommerce input.input-text,.woocommerce textarea,.woocommerce select{background:#0f0f11!important;border:1px solid var(--op-border)!important;color:#fff!important;padding:.9rem!important}.woocommerce-checkout #payment{background:#111!important;color:#fff!important}
@media (max-width:1024px){.op-header__inner{width:min(100% - 36px,1280px);grid-template-columns:1fr auto 1fr;height:68px}.op-brand{justify-self:center;grid-column:2}.op-nav{position:absolute;top:68px;left:0;right:0;background:#000;border-top:1px solid var(--op-border);border-bottom:1px solid var(--op-border);display:none;padding:1rem 1.5rem}.op-nav.is-open{display:block}.op-nav__list{flex-direction:column;align-items:flex-start;gap:1.25rem}.op-menu-toggle{display:block;justify-self:start;grid-column:1}.op-header-actions{grid-column:3}.op-header-actions a:nth-child(2){display:none}.op-hero-shell{padding-top:42px}.op-hero{height:70vh;min-height:520px}.op-split{grid-template-columns:1fr}.op-product-grid,.products{grid-template-columns:repeat(2,minmax(0,1fr))}.op-footer__grid{grid-template-columns:1fr 1fr}.woocommerce div.product{grid-template-columns:1fr}.op-card-grid{grid-template-columns:1fr}}
@media (max-width:680px){.op-announcement{height:auto;min-height:30px;font-size:.55rem;letter-spacing:.18em}.op-header__inner{width:calc(100% - 28px);height:62px}.op-brand__name{font-size:1rem;letter-spacing:.22em}.op-brand__tagline{font-size:.42rem;letter-spacing:.28em}.op-header-actions{gap:.8rem}.op-header-actions svg{width:19px;height:19px}.op-hero-shell{padding-top:24px}.op-hero{height:74vh;min-height:500px}.op-hero h1{font-size:clamp(3.1rem,16vw,5.4rem)}.op-actions{width:100%}.op-btn,.button,.wp-element-button{width:100%;padding:1rem 1.25rem}.op-coordinates{display:none}.op-statement{padding:5rem 1rem}.op-statement h2{font-size:clamp(2.55rem,14vw,4.5rem)}.op-split{padding:4.5rem 0}.op-split h2{font-size:2.9rem}.op-inclusion h2{font-size:3rem}.op-product-grid,.products{grid-template-columns:1fr}.op-footer__grid{grid-template-columns:1fr}.op-footer__bottom{flex-direction:column;align-items:flex-start}.op-container{width:calc(100% - 32px)}}


/* =========================
   V4: páginas WooCommerce y Nuestra Historia más editoriales
   ========================= */
.op-archive-hero{
  position:relative;
  overflow:hidden;
  text-align:center;
  background:#09090b;
  border-bottom:1px solid var(--op-border);
  padding:clamp(6.4rem,10vw,10.5rem) 0 clamp(4.2rem,7vw,7rem);
}
.op-archive-hero:before{
  content:"";
  position:absolute;
  inset:auto -10% -45% -10%;
  height:70%;
  background:radial-gradient(circle at 50% 50%,rgba(236,72,153,.18),transparent 54%);
  opacity:.8;
  pointer-events:none;
}
.op-archive-hero .op-container{position:relative;z-index:1;max-width:1050px;}
.op-archive-hero h1{
  font-family:var(--op-font-serif);
  color:#fff;
  font-size:clamp(4.2rem,9.5vw,10.8rem);
  line-height:.9;
  letter-spacing:-.07em;
  font-weight:400;
  margin:0;
  text-transform:none;
}
.op-archive-hero p:not(.op-kicker){
  max-width:720px;
  margin:1.35rem auto 0;
  color:#d5d0ca;
  font-size:clamp(1rem,1.4vw,1.22rem);
  line-height:1.7;
  font-weight:500;
}
.op-shop-hero-v4{padding-top:clamp(5.6rem,9vw,8rem);}
.woocommerce-products-header{display:none!important;}
.woocommerce .op-woo-main{
  padding:clamp(3rem,6vw,5rem) 0 clamp(6rem,9vw,8rem);
}
.woocommerce .woocommerce-notices-wrapper{margin-bottom:1.5rem;}
.woocommerce .woocommerce-result-count{
  float:none!important;
  margin:0 0 2rem!important;
  color:rgba(247,244,238,.68);
  font-size:.72rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  font-weight:800;
}
.woocommerce .woocommerce-ordering{
  float:none!important;
  margin:-4.2rem 0 2.4rem auto!important;
  width:max-content;
}
.woocommerce .woocommerce-ordering select,
.woocommerce select.orderby{
  background:#111113!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:0!important;
  min-height:50px;
  padding:.85rem 2.9rem .85rem 1.05rem!important;
  font-family:var(--op-font-sans)!important;
  font-size:.68rem!important;
  letter-spacing:.16em;
  text-transform:uppercase;
  font-weight:800;
}
.woocommerce ul.products{
  margin:0!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(1.2rem,2vw,1.8rem)!important;
}
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  background:#111113!important;
  border:1px solid rgba(255,255,255,.10)!important;
  padding:.8rem .8rem 1.1rem!important;
  width:auto!important;
  margin:0!important;
  float:none!important;
  min-height:100%;
}
.woocommerce ul.products li.product a img{
  margin:0 0 1rem!important;
  width:100%!important;
  aspect-ratio:4/5;
  object-fit:cover;
  background:#efefec;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family:var(--op-font-sans)!important;
  color:#fff!important;
  font-size:1rem!important;
  line-height:1.25!important;
  letter-spacing:.02em!important;
  text-transform:none!important;
  font-weight:800!important;
  padding:0!important;
  margin:.45rem 0 .25rem!important;
}
.woocommerce ul.products li.product .price{
  color:#d9d2ca!important;
  font-family:var(--op-font-sans)!important;
  font-size:.94rem!important;
  font-weight:800!important;
  margin:.3rem 0 1rem!important;
}
.woocommerce ul.products li.product .button{
  width:100%;
  min-height:52px;
  margin-top:.6rem!important;
  border-radius:0!important;
  background:#000!important;
  border-color:#000!important;
  color:#fff!important;
}
.op-product-badge{
  top:1.05rem!important;
  left:1.05rem!important;
  background:var(--op-pink)!important;
  color:#fff!important;
  font-size:.55rem!important;
  letter-spacing:.12em!important;
}
.op-page-hero-v4{min-height:34vh;display:flex;align-items:center;}
.op-story-hero{min-height:42vh;}
.op-story-manifesto{
  background:#141417;
  border-top:1px solid var(--op-border);
  border-bottom:1px solid var(--op-border);
  padding:clamp(5rem,8vw,8rem) 0;
}
.op-story-grid{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:clamp(2rem,6vw,6rem);
  align-items:start;
}
.op-story-manifesto h2{
  font-family:var(--op-font-serif);
  color:#fff;
  font-size:clamp(3.4rem,7vw,7.4rem);
  line-height:.93;
  letter-spacing:-.06em;
  font-weight:400;
  margin:0;
}
.op-story-copy p{
  color:#d5d0ca;
  font-size:clamp(1rem,1.35vw,1.18rem);
  line-height:1.85;
  margin:0 0 1.2rem;
}
.op-story-cards{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
  padding-top:clamp(4rem,7vw,6rem);
  padding-bottom:clamp(5rem,8vw,7rem);
}
.op-story-card{
  background:#111113;
  border:1px solid rgba(255,255,255,.10);
  padding:clamp(1.4rem,2.4vw,2.2rem);
  min-height:250px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  transition:.25s ease;
}
.op-story-card:hover{border-color:rgba(236,72,153,.55);transform:translateY(-4px);}
.op-story-card span{
  color:var(--op-pink);
  font-size:.68rem;
  letter-spacing:.28em;
  font-weight:900;
  margin-bottom:auto;
}
.op-story-card h3{
  font-family:var(--op-font-serif);
  color:#fff;
  font-size:clamp(2rem,3.2vw,3.5rem);
  line-height:1;
  font-weight:400;
  letter-spacing:-.04em;
  margin:2rem 0 1rem;
}
.op-story-card p{color:#cfc9c3;margin:0;line-height:1.7;}
.op-page-body-v4{
  padding-top:clamp(3rem,5vw,5rem);
  padding-bottom:clamp(4rem,7vw,7rem);
}
.op-page-body-v4:empty{display:none;}
@media (max-width:900px){
  .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));}
  .woocommerce .woocommerce-ordering{margin:0 0 2rem!important;width:100%;}
  .woocommerce .woocommerce-ordering select{width:100%;}
  .op-story-grid,.op-story-cards{grid-template-columns:1fr;}
}
@media (max-width:560px){
  .op-archive-hero h1{font-size:clamp(3.4rem,18vw,5.2rem);}
  .woocommerce ul.products{grid-template-columns:1fr;}
  .op-archive-hero{padding-inline:0;}
}


/* V5: Elementor safe mode compatibility */
.op-elementor-safe-page,
.op-elementor-page{background:#09090b;min-height:60vh;}
body.elementor-editor-active .op-announcement,
body.elementor-editor-active .op-header,
body.elementor-editor-active .op-footer{display:none!important;}
body.op-elementor-blank-safe{background:#09090b;}
body.op-elementor-blank-safe .site-main{min-height:100vh;}

/* Elementor safe area for WooCommerce shop editor */
.op-shop-elementor-safe{min-height:520px;padding:80px 0;background:#08090a;}
.op-empty-elementor-area{min-height:420px;border:1px dashed rgba(255,255,255,.18);}

/* V7 final stability fixes */
.op-shop-hero-v4 p:not(.op-kicker){display:none!important;}
.op-elementor-shop-page{background:#09090b;min-height:70vh;}
.op-shop-editable-hero{padding-top:clamp(5rem,8vw,8rem);padding-bottom:clamp(3.2rem,6vw,5.2rem);}
.op-editable-products-fallback{padding:clamp(3rem,6vw,5rem) 0 clamp(6rem,9vw,8rem);}
body.elementor-editor-active .op-elementor-shop-page{background:#09090b;}
body.elementor-editor-active .op-announcement,
body.elementor-editor-active .op-header,
body.elementor-editor-active .op-footer{display:none!important;}

/* Make normal Elementor pages inherit the same premium black canvas */
.elementor-page .site-main{background:#09090b;}
.elementor-section-wrap{background:#09090b;}

/* WooCommerce archive cannot be edited as a normal Elementor page; this keeps it visually stable. */
.woocommerce.archive .op-archive-hero h1,
.woocommerce-shop .op-archive-hero h1{ text-align:center; }
.woocommerce.archive .op-woo-main,
.woocommerce-shop .op-woo-main{ width:min(1260px,calc(100% - 56px)); margin-inline:auto; }

@media (max-width: 768px){
  .op-header__inner{width:min(100% - 28px,1280px);grid-template-columns:1fr auto auto;height:auto;min-height:66px;}
  .op-brand__name{font-size:1rem;letter-spacing:.26em;}
  .op-brand__tagline{font-size:.42rem;}
  .op-header-actions{gap:.9rem;}
  .op-announcement{font-size:.54rem;letter-spacing:.18em;height:auto;min-height:28px;line-height:1.4;padding:.45rem .75rem;}
}

/* ------------------------------------------------------------
   Final clean Elementor/WooCommerce mode
   Removes fixed page/shop/story hero spacing so Elementor controls pages.
------------------------------------------------------------ */
.op-elementor-clean-page,
.op-clean-page-article {
  background: #09090b;
  min-height: 0;
}

.op-clean-page-article > .entry-content,
.op-clean-page-article > .elementor,
.op-elementor-clean-page .elementor {
  margin-top: 0 !important;
}

/* Hide old automatic title/hero sections if they are still present via cache. */
.op-page-hero-v4,
.op-story-manifesto,
.op-story-cards,
.op-shop-hero-v4,
.op-archive-hero {
  display: none !important;
  min-height: 0 !important;
  height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
}

.op-page-body-v4,
.op-entry-content {
  width: 100%;
  max-width: none;
  padding: 0;
  margin: 0;
}

.op-woo-clean-archive,
.op-woo-clean-template {
  padding-top: clamp(2.5rem, 5vw, 5rem);
}

body.elementor-editor-active .op-woo-clean-archive,
body.elementor-editor-active .op-woo-clean-template,
body.elementor-editor-active .op-elementor-clean-page {
  padding-top: 0 !important;
}


/* ------------------------------------------------------------
   V8 header/logo stability fix
   Fixes custom logo output, header alignment and mobile layout.
------------------------------------------------------------ */
.op-announcement{
  position:relative!important;
  z-index:1002!important;
}
.op-header{
  position:sticky!important;
  top:0!important;
  z-index:1001!important;
  background:#000!important;
  border-bottom:1px solid rgba(231,225,207,.12)!important;
  overflow:visible!important;
}
.op-header__inner{
  width:min(1280px,calc(100% - 96px))!important;
  height:78px!important;
  min-height:78px!important;
  margin-inline:auto!important;
  display:grid!important;
  grid-template-columns:minmax(190px,260px) minmax(0,1fr) minmax(128px,190px)!important;
  align-items:center!important;
  gap:28px!important;
}
.op-brand{
  grid-column:1!important;
  justify-self:start!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:auto!important;
  max-width:260px!important;
  min-width:0!important;
  overflow:visible!important;
  line-height:1!important;
}
.op-brand__logo,
.op-brand img,
.op-brand .custom-logo{
  display:block!important;
  width:auto!important;
  height:auto!important;
  max-width:190px!important;
  max-height:56px!important;
  object-fit:contain!important;
}
.op-brand__name{
  font-size:1.18rem!important;
  letter-spacing:.34em!important;
  white-space:nowrap!important;
}
.op-brand__tagline{
  display:block!important;
}
.op-nav{
  grid-column:2!important;
  justify-self:center!important;
  align-self:center!important;
  width:100%!important;
}
.op-nav__list{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:clamp(2.2rem,4vw,4.8rem)!important;
}
.op-nav__list a{
  white-space:nowrap!important;
  font-size:.64rem!important;
  letter-spacing:.32em!important;
  line-height:1.2!important;
  padding:0!important;
}
.op-header-actions{
  grid-column:3!important;
  justify-self:end!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:1.25rem!important;
  min-width:128px!important;
  width:auto!important;
  position:relative!important;
}
.op-header-actions a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:22px!important;
  height:22px!important;
  color:#fff!important;
  flex:0 0 auto!important;
}
.op-header-actions svg{
  width:20px!important;
  height:20px!important;
  stroke-width:1.7!important;
}
.op-cart-count{
  top:-9px!important;
  right:-10px!important;
}

@media (max-width:1024px){
  .op-header__inner{
    width:calc(100% - 36px)!important;
    height:70px!important;
    min-height:70px!important;
    grid-template-columns:42px minmax(0,1fr) auto!important;
    gap:14px!important;
  }
  .op-menu-toggle{
    display:block!important;
    grid-column:1!important;
    justify-self:start!important;
  }
  .op-brand{
    grid-column:2!important;
    justify-self:center!important;
    max-width:190px!important;
  }
  .op-brand__logo,
  .op-brand img,
  .op-brand .custom-logo{
    max-width:150px!important;
    max-height:46px!important;
  }
  .op-nav{
    grid-column:1 / -1!important;
    position:absolute!important;
    top:70px!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    background:#000!important;
    border-top:1px solid rgba(231,225,207,.12)!important;
    border-bottom:1px solid rgba(231,225,207,.12)!important;
    display:none!important;
    padding:1.2rem 1.4rem!important;
  }
  .op-nav.is-open{display:block!important;}
  .op-nav__list{
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:1.15rem!important;
  }
  .op-header-actions{
    grid-column:3!important;
    justify-self:end!important;
    gap:.85rem!important;
    min-width:auto!important;
  }
  .op-header-actions a:nth-child(1){display:none!important;}
  .op-header-actions a:nth-child(2){display:inline-flex!important;}
  .op-header-actions svg{width:19px!important;height:19px!important;}
}
@media (max-width:520px){
  .op-announcement{font-size:.52rem!important;letter-spacing:.14em!important;line-height:1.25!important;padding:.42rem .8rem!important;}
  .op-header__inner{
    width:calc(100% - 24px)!important;
    height:64px!important;
    min-height:64px!important;
    grid-template-columns:38px minmax(0,1fr) auto!important;
  }
  .op-brand{max-width:150px!important;}
  .op-brand__logo,
  .op-brand img,
  .op-brand .custom-logo{
    max-width:118px!important;
    max-height:38px!important;
  }
  .op-brand__name{font-size:.88rem!important;letter-spacing:.18em!important;}
  .op-brand__tagline{font-size:.38rem!important;letter-spacing:.18em!important;}
  .op-header-actions{gap:.65rem!important;}
  .op-header-actions a{width:20px!important;height:20px!important;}
  .op-header-actions svg{width:18px!important;height:18px!important;}
  .op-cart-count{min-width:15px!important;height:15px!important;font-size:.5rem!important;line-height:15px!important;}
  .op-nav{top:64px!important;}
}


/* V9: Customizer-controlled header logo sizing */
.op-header__inner{
  height:var(--op-header-height,88px)!important;
  min-height:var(--op-header-height,88px)!important;
  grid-template-columns:minmax(160px, calc(var(--op-logo-width-desktop,220px) + 60px)) minmax(0,1fr) 180px!important;
}
.op-brand{
  width:calc(var(--op-logo-width-desktop,220px) + 20px)!important;
  max-width:calc(var(--op-logo-width-desktop,220px) + 20px)!important;
  overflow:visible!important;
}
.op-brand__logo,
.op-brand img{
  display:block!important;
  width:var(--op-logo-width-desktop,220px)!important;
  max-width:var(--op-logo-width-desktop,220px)!important;
  height:auto!important;
  max-height:var(--op-logo-max-height,62px)!important;
  object-fit:contain!important;
}
.op-header-actions{min-width:150px!important;}
@media (max-width:1024px){
  .op-header__inner{
    height:72px!important;
    min-height:72px!important;
    grid-template-columns:1fr auto 1fr!important;
  }
  .op-brand{
    width:var(--op-logo-width-mobile,150px)!important;
    max-width:var(--op-logo-width-mobile,150px)!important;
  }
  .op-brand__logo,
  .op-brand img{
    width:var(--op-logo-width-mobile,150px)!important;
    max-width:var(--op-logo-width-mobile,150px)!important;
    max-height:48px!important;
  }
}
@media (max-width:680px){
  .op-brand__logo,
  .op-brand img{max-height:42px!important;}
  .op-header-actions{gap:.7rem!important;min-width:auto!important;}
}


/* V10: Customizer-controlled menu typography */
.op-nav__list a{
  font-family:var(--op-menu-font, var(--op-font-sans))!important;
  font-size:var(--op-menu-size-desktop,11px)!important;
  font-weight:var(--op-menu-weight,800)!important;
  letter-spacing:var(--op-menu-letter-spacing,4px)!important;
}
@media (max-width:1024px){
  .op-nav__list a{
    font-size:var(--op-menu-size-mobile,13px)!important;
  }
}


/* =====================================================
   CSS personalizado aportado por el usuario - integrado en V11
   ===================================================== */
/* Arreglar productos relacionados en página de producto */
.single-product .related.products {
  width: 100% !important;
  max-width: 1200px !important;
  margin: 80px auto 0 auto !important;
  clear: both !important;
  overflow: visible !important;
  padding: 0 24px !important;
}

.single-product .related.products h2 {
  font-family: "Bodoni Moda", "Playfair Display", serif !important;
  font-size: clamp(38px, 5vw, 76px) !important;
  line-height: 0.95 !important;
  color: #E7E1CF !important;
  margin-bottom: 40px !important;
}

.single-product .related.products ul.products {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 32px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.single-product .related.products ul.products li.product {
  width: 100% !important;
  max-width: none !important;
  float: none !important;
  margin: 0 !important;
  clear: none !important;
  background: #080808 !important;
  border: 1px solid rgba(231,225,207,0.12) !important;
  padding: 16px !important;
  overflow: visible !important;
}

.single-product .related.products ul.products li.product img {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 4 / 5 !important;
  object-fit: cover !important;
  display: block !important;
}

.single-product .related.products .woocommerce-loop-product__title {
  color: #E7E1CF !important;
  font-size: 16px !important;
  margin-top: 16px !important;
}

.single-product .related.products .price {
  color: #E13E8A !important;
  font-weight: 700 !important;
}

/* Responsive */
@media (max-width: 921px) {
  .single-product .related.products ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 600px) {
  .single-product .related.products ul.products {
    grid-template-columns: 1fr !important;
  }

  .single-product .related.products {
    padding: 0 18px !important;
  }
}
/* Evitar que el layout de producto corte columnas */
.single-product .site-main,
.single-product .content-area,
.single-product .woocommerce,
.single-product div.product {
  overflow: visible !important;
}

.single-product .related.products {
  display: block !important;
}
/* Tabs WooCommerce producto - estilo Only Paquita */
.single-product .woocommerce-tabs {
  max-width: 1200px !important;
  margin: 80px auto !important;
  padding: 0 24px !important;
  color: #E7E1CF !important;
}

/* Contenedor de pestañas */
.single-product .woocommerce-tabs ul.tabs {
  display: flex !important;
  gap: 14px !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 0 40px 0 !important;
  overflow-x: auto !important;
}

/* Quitar estilos feos por defecto */
.single-product .woocommerce-tabs ul.tabs::before,
.single-product .woocommerce-tabs ul.tabs li::before,
.single-product .woocommerce-tabs ul.tabs li::after {
  display: none !important;
  content: none !important;
}

/* Cada pestaña */
.single-product .woocommerce-tabs ul.tabs li {
  background: transparent !important;
  border: 1px solid rgba(231, 225, 207, 0.22) !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  transition: all 0.25s ease !important;
}

/* Enlaces */
.single-product .woocommerce-tabs ul.tabs li a {
  display: block !important;
  padding: 16px 24px !important;
  color: #E7E1CF !important;
  font-family: "Montserrat", "Inter", sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 2.5px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
}

/* Hover */
.single-product .woocommerce-tabs ul.tabs li:hover {
  border-color: #E13E8A !important;
  background: rgba(225, 62, 138, 0.08) !important;
}

.single-product .woocommerce-tabs ul.tabs li:hover a {
  color: #E13E8A !important;
}

/* Pestaña activa */
.single-product .woocommerce-tabs ul.tabs li.active {
  background: #E13E8A !important;
  border-color: #E13E8A !important;
}

.single-product .woocommerce-tabs ul.tabs li.active a {
  color: #ffffff !important;
}

/* Panel de contenido */
.single-product .woocommerce-Tabs-panel {
  background: #080808 !important;
  border: 1px solid rgba(231, 225, 207, 0.12) !important;
  padding: 48px !important;
  color: #E7E1CF !important;
}

/* Títulos dentro del panel */
.single-product .woocommerce-Tabs-panel h2 {
  font-family: "Bodoni Moda", "Playfair Display", serif !important;
  font-size: clamp(34px, 4vw, 64px) !important;
  line-height: 0.95 !important;
  color: #E7E1CF !important;
  margin: 0 0 28px 0 !important;
}

/* Texto dentro del panel */
.single-product .woocommerce-Tabs-panel p,
.single-product .woocommerce-Tabs-panel li {
  font-family: "Inter", "Montserrat", sans-serif !important;
  font-size: 16px !important;
  line-height: 1.7 !important;
  color: #E7E1CF !important;
}

/* Responsive móvil */
@media (max-width: 768px) {
  .single-product .woocommerce-tabs {
    margin: 50px auto !important;
    padding: 0 18px !important;
  }

  .single-product .woocommerce-tabs ul.tabs {
    gap: 10px !important;
    margin-bottom: 24px !important;
  }

  .single-product .woocommerce-tabs ul.tabs li a {
    padding: 13px 16px !important;
    font-size: 10px !important;
    letter-spacing: 1.6px !important;
    white-space: nowrap !important;
  }

  .single-product .woocommerce-Tabs-panel {
    padding: 28px 22px !important;
  }
}/* TIENDA ONLY PAQUITA - GRID MODERNO */
.woocommerce ul.products,
.elementor-widget-shortcode ul.products {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 56px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.woocommerce ul.products li.product,
.elementor-widget-shortcode ul.products li.product {
  width: 100% !important;
  margin: 0 !important;
  float: none !important;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Imagen más grande y editorial */
.woocommerce ul.products li.product a img,
.elementor-widget-shortcode ul.products li.product a img {
  width: 100% !important;
  height: 620px !important;
  object-fit: cover !important;
  object-position: center !important;
  margin: 0 0 22px 0 !important;
  transition: transform 0.45s ease, opacity 0.45s ease !important;
  background: #111 !important;
}

/* Hover elegante */
.woocommerce ul.products li.product:hover a img,
.elementor-widget-shortcode ul.products li.product:hover a img {
  transform: scale(1.035) !important;
  opacity: 0.88 !important;
}

/* Nombre producto */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.elementor-widget-shortcode ul.products li.product .woocommerce-loop-product__title {
  font-family: "Space Grotesk", "Montserrat", sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px !important;
  color: #E7E1CF !important;
  padding: 0 !important;
  margin: 0 0 8px 0 !important;
}

/* Precio */
.woocommerce ul.products li.product .price,
.elementor-widget-shortcode ul.products li.product .price {
  font-family: "Space Grotesk", "Montserrat", sans-serif !important;
  color: #E7E1CF !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  margin-bottom: 18px !important;
}

/* Texto IVA incluido */
.woocommerce ul.products li.product .price small,
.elementor-widget-shortcode ul.products li.product .price small {
  color: #E13E8A !important;
  font-size: 11px !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
}

/* Botón */
.woocommerce ul.products li.product .button,
.elementor-widget-shortcode ul.products li.product .button {
  width: 100% !important;
  background: #000000 !important;
  color: #ffffff !important;
  border: 1px solid rgba(231,225,207,0.25) !important;
  border-radius: 0 !important;
  padding: 18px 22px !important;
  font-family: "Space Grotesk", "Montserrat", sans-serif !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: 4px !important;
  text-transform: uppercase !important;
  text-align: center !important;
  transition: all 0.25s ease !important;
}

.woocommerce ul.products li.product .button:hover,
.elementor-widget-shortcode ul.products li.product .button:hover {
  background: #E13E8A !important;
  border-color: #E13E8A !important;
  color: #ffffff !important;
}

/* Etiqueta genderless */
.woocommerce span.onsale,
.woocommerce ul.products li.product .onsale {
  background: #E13E8A !important;
  color: #fff !important;
  border-radius: 999px !important;
  padding: 7px 13px !important;
  min-height: auto !important;
  min-width: auto !important;
  line-height: 1 !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  top: 16px !important;
  left: 16px !important;
  right: auto !important;
}

/* Móvil */
@media (max-width: 768px) {
  .woocommerce ul.products,
  .elementor-widget-shortcode ul.products {
    grid-template-columns: 1fr !important;
    gap: 42px !important;
  }

  .woocommerce ul.products li.product a img,
  .elementor-widget-shortcode ul.products li.product a img {
    height: 520px !important;
  }

  .woocommerce ul.products li.product .button,
  .elementor-widget-shortcode ul.products li.product .button {
    padding: 17px 18px !important;
    font-size: 10px !important;
    letter-spacing: 3px !important;
  }
}

@media (max-width: 480px) {
  .woocommerce ul.products li.product a img,
  .elementor-widget-shortcode ul.products li.product a img {
    height: 430px !important;
  }
}
/* Quitar hueco negro antes del primer producto */
.woocommerce ul.products::before,
.woocommerce ul.products::after,
.elementor-widget-shortcode ul.products::before,
.elementor-widget-shortcode ul.products::after {
  display: none !important;
  content: none !important;
}

/* Forzar grid correcto en shortcode de tienda */
.woocommerce ul.products,
.elementor-widget-shortcode ul.products {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 56px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Evitar estilos antiguos de WooCommerce */
.woocommerce ul.products li.product,
.elementor-widget-shortcode ul.products li.product {
  float: none !important;
  clear: none !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}

/* Imagen editorial grande */
.woocommerce ul.products li.product a img,
.elementor-widget-shortcode ul.products li.product a img {
  width: 100% !important;
  height: 620px !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
}

/* Móvil */
@media (max-width: 768px) {
  .woocommerce ul.products,
  .elementor-widget-shortcode ul.products {
    grid-template-columns: 1fr !important;
    gap: 42px !important;
  }

  .woocommerce ul.products li.product a img,
  .elementor-widget-shortcode ul.products li.product a img {
    height: 480px !important;
  }
}@media (max-width: 980px) {

  body,
  .site,
  #page {
    background: #000 !important;
  }

  header,
  .site-header,
  .main-header,
  .header,
  #masthead,
  .woocommerce .site-header {
    background: #000 !important;
    width: 100% !important;
    border-bottom: 1px solid rgba(255,255,255,.15) !important;
    overflow: visible !important;
  }

  header *,
  .site-header *,
  #masthead * {
    box-sizing: border-box !important;
  }

  .site-header .container,
  .header-container,
  .header-inner,
  .main-header-inner,
  .mobile-header,
  .mobile-header-inner {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 95px !important;
    padding: 0 22px !important;
    display: grid !important;
    grid-template-columns: 44px 1fr 92px !important;
    align-items: center !important;
    gap: 0 !important;
    background: #000 !important;
  }

  .site-branding,
  .logo,
  .site-logo,
  .custom-logo-link {
    grid-column: 2 !important;
    justify-self: center !important;
    text-align: center !important;
  }

  .custom-logo,
  .site-logo img,
  .logo img {
    max-width: 115px !important;
    height: auto !important;
    display: block !important;
  }

  .menu-toggle,
  .mobile-menu-toggle,
  .hamburger,
  .navbar-toggler,
  button[class*="menu"],
  button[class*="toggle"] {
    grid-column: 1 !important;
    justify-self: start !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    width: 34px !important;
    height: 34px !important;
    padding: 0 !important;
    margin: 0 !important;
    color: #fff !important;
  }

  .menu-toggle *,
  .mobile-menu-toggle *,
  .hamburger *,
  .navbar-toggler *,
  button[class*="menu"] *,
  button[class*="toggle"] * {
    background: #fff !important;
    color: #fff !important;
  }

  .header-icons,
  .header-actions,
  .site-header-cart,
  .account-link,
  .cart-link,
  .woocommerce-account-link {
    grid-column: 3 !important;
    justify-self: end !important;
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    color: #fff !important;
  }

  .site-header a,
  .site-header svg,
  #masthead a,
  #masthead svg {
    color: #fff !important;
    fill: none !important;
    stroke: #fff !important;
  }

  .cart-count,
  .count,
  .woocommerce-Price-amount + .count {
    background: #ff4f93 !important;
    color: #fff !important;
  }

  .main-navigation,
  .mobile-navigation,
  .mobile-menu,
  .nav-menu,
  .menu,
  .offcanvas-menu,
  .woocommerce .main-navigation {
    background: #000 !important;
    width: 100% !important;
    max-width: 100% !important;
    left: 0 !important;
    right: 0 !important;
    border-top: 1px solid rgba(255,255,255,.12) !important;
  }

  .main-navigation ul,
  .mobile-navigation ul,
  .mobile-menu ul,
  .nav-menu,
  .menu {
    width: 100% !important;
    padding: 34px 46px !important;
    margin: 0 !important;
    background: #000 !important;
  }

  .main-navigation li,
  .mobile-navigation li,
  .mobile-menu li,
  .nav-menu li,
  .menu li {
    list-style: none !important;
    margin: 0 0 34px 0 !important;
  }

  .main-navigation a,
  .mobile-navigation a,
  .mobile-menu a,
  .nav-menu a,
  .menu a {
    color: #fff !important;
    font-size: 15px !important;
    letter-spacing: 9px !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
  }

  .main-navigation .current-menu-item > a,
  .mobile-navigation .current-menu-item > a,
  .mobile-menu .current-menu-item > a {
    color: #ff4f93 !important;
  }
}@media (max-width: 980px) {

  #masthead,
  .site-header {
    background: #000 !important;
    height: 135px !important;
    padding: 0 !important;
    position: relative !important;
  }

  .site-branding,
  .custom-logo-link {
    position: absolute !important;
    top: 38px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    z-index: 5 !important;
  }

  .custom-logo,
  .site-logo img {
    max-width: 115px !important;
  }

  .menu-toggle,
  .mobile-menu-toggle,
  .hamburger,
  button[class*="menu"],
  button[class*="toggle"] {
    position: absolute !important;
    left: 24px !important;
    bottom: 18px !important;
    top: auto !important;
    background: transparent !important;
    border: 0 !important;
    z-index: 6 !important;
  }

  .header-icons,
  .header-actions,
  .site-header-cart,
  .account-link,
  .cart-link,
  .woocommerce-account-link {
    position: absolute !important;
    right: 24px !important;
    bottom: 18px !important;
    top: auto !important;
    display: flex !important;
    align-items: center !important;
    gap: 18px !important;
    z-index: 6 !important;
  }

  .main-navigation,
  .mobile-navigation,
  .mobile-menu,
  .offcanvas-menu {
    position: absolute !important;
    top: 135px !important;
    left: 0 !important;
    width: 100% !important;
    background: #000 !important;
    z-index: 999 !important;
  }

  .hero,
  .home-hero,
  .page-hero,
  .wp-block-cover,
  .elementor-section:first-of-type {
    margin-top: 0 !important;
  }
}

/* =====================================================
   ONLY PAQUITA V11 - CORRECCIONES FINALES INTEGRADAS
   ===================================================== */

/* 1) Tipografías controladas desde el personalizador */
body,
p,
li,
input,
textarea,
select,
.woocommerce,
.woocommerce p,
.woocommerce div.product,
.elementor-widget-text-editor,
.op-page-content,
.op-story-copy p,
.op-shop-copy,
.woocommerce-Tabs-panel p,
.woocommerce-Tabs-panel li {
  font-family: var(--op-body-font, var(--op-font-sans)) !important;
  font-size: var(--op-body-size, 16px);
}

h1,
h2,
h3,
.op-hero h1,
.op-statement h2,
.op-split h2,
.op-section h2,
.op-page-header h1,
.op-shop-hero h1,
.op-archive-hero h1,
.op-story-manifesto h2,
.op-story-card h3,
.woocommerce-products-header__title,
.product_title,
.single-product .woocommerce-tabs .woocommerce-Tabs-panel h2,
.single-product .related.products h2 {
  font-family: var(--op-title-font, var(--op-font-serif)) !important;
}

.op-archive-hero h1,
.op-page-header h1,
.op-shop-hero h1 {
  font-size: clamp(3.6rem, 9vw, var(--op-title-size, 92px)) !important;
}

button,
.button,
.op-btn,
.wp-element-button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.elementor-button,
.add_to_cart_button {
  font-family: var(--op-button-font, var(--op-font-sans)) !important;
}

.op-nav__list a,
.op-nav a,
.op-header .menu a {
  font-family: var(--op-menu-font, var(--op-font-sans)) !important;
  font-size: var(--op-menu-size-desktop, 11px) !important;
  font-weight: var(--op-menu-weight, 800) !important;
  letter-spacing: var(--op-menu-letter-spacing, 4px) !important;
}

@media (max-width: 1024px) {
  .op-nav__list a,
  .op-nav a,
  .op-header .menu a {
    font-size: var(--op-menu-size-mobile, 13px) !important;
  }
}

/* 2) Menos hueco negro arriba en páginas internas */
.op-archive-hero,
.op-page-header,
.op-page-hero,
.op-inner-hero,
.only-paquita-page-hero,
.op-shop-hero-v4,
.op-page-hero-v4,
.op-story-hero {
  padding-top: var(--op-inner-hero-top, 90px) !important;
  padding-bottom: var(--op-inner-hero-bottom, 90px) !important;
  min-height: auto !important;
}

.site-main,
#primary,
.content-area,
.op-page-content,
.op-woo-main {
  margin-top: 0 !important;
}

body.page .op-elementor-clean-page,
body.elementor-page .op-page-content {
  padding-top: 0 !important;
}

@media (max-width: 768px) {
  .op-archive-hero,
  .op-page-header,
  .op-page-hero,
  .op-inner-hero,
  .only-paquita-page-hero,
  .op-shop-hero-v4,
  .op-page-hero-v4,
  .op-story-hero {
    padding-top: max(55px, calc(var(--op-inner-hero-top, 90px) * .68)) !important;
    padding-bottom: max(55px, calc(var(--op-inner-hero-bottom, 90px) * .68)) !important;
  }
}

/* 3) Header estable + logo editable desde personalizador */
.op-header__inner {
  height: var(--op-header-height, 88px) !important;
  min-height: var(--op-header-height, 88px) !important;
  grid-template-columns: minmax(170px, calc(var(--op-logo-width-desktop, 220px) + 70px)) minmax(0, 1fr) 170px !important;
  align-items: center !important;
}
.op-brand {
  width: calc(var(--op-logo-width-desktop, 220px) + 20px) !important;
  max-width: calc(var(--op-logo-width-desktop, 220px) + 20px) !important;
  justify-self: start !important;
  overflow: visible !important;
}
.op-brand__logo,
.op-brand img {
  width: var(--op-logo-width-desktop, 220px) !important;
  max-width: var(--op-logo-width-desktop, 220px) !important;
  max-height: var(--op-logo-max-height, 62px) !important;
  height: auto !important;
  object-fit: contain !important;
}
.op-nav { justify-self: center !important; }
.op-header-actions {
  justify-self: end !important;
  min-width: 132px !important;
  display: flex !important;
  justify-content: flex-end !important;
}
@media (max-width: 1024px) {
  .op-header__inner {
    grid-template-columns: 42px minmax(0, 1fr) auto !important;
    height: 78px !important;
    min-height: 78px !important;
  }
  .op-brand {
    width: var(--op-logo-width-mobile, 150px) !important;
    max-width: var(--op-logo-width-mobile, 150px) !important;
    justify-self: center !important;
  }
  .op-brand__logo,
  .op-brand img {
    width: var(--op-logo-width-mobile, 150px) !important;
    max-width: var(--op-logo-width-mobile, 150px) !important;
    max-height: 52px !important;
  }
  .op-nav { top: 78px !important; }
}
@media (max-width: 520px) {
  .op-header__inner {
    height: 68px !important;
    min-height: 68px !important;
  }
  .op-nav { top: 68px !important; }
  .op-brand__logo,
  .op-brand img { max-height: 44px !important; }
}

/* 4) WooCommerce: evitar huecos fantasma y productos cortados */
.woocommerce ul.products::before,
.woocommerce ul.products::after,
.elementor-widget-shortcode ul.products::before,
.elementor-widget-shortcode ul.products::after {
  display: none !important;
  content: none !important;
}
.woocommerce ul.products,
.elementor-widget-shortcode ul.products,
.single-product .related.products ul.products {
  list-style: none !important;
}

/* 5) Checkout/tablas/formularios más coherentes */
.woocommerce-checkout-review-order-table,
.woocommerce-cart-form table,
.woocommerce table.shop_table {
  background: #080808 !important;
}

/* 6) El editor de Elementor no debe heredar márgenes raros del tema */
body.elementor-editor-active .op-page-content,
body.elementor-editor-active .site-main {
  padding-top: 0 !important;
}


/* Editable footer menus */
.op-footer-menu,
.op-footer-social-menu {
	list-style: none;
	margin: 0;
	padding: 0;
}

.op-footer-social-menu {
	display: inline-flex;
	gap: .35em;
	align-items: center;
}

.op-footer-social-menu li {
	display: inline-flex;
	margin: 0;
}

.op-footer-social-menu li + li::before {
	content: "·";
	margin: 0 .35em 0 0;
	color: #E7E1CF;
}


/* Footer individual menu reset */
.op-footer-menu {
	list-style: none;
	margin: 0;
	padding: 0;
}
.op-footer-menu li {
	list-style: none;
}
.op-footer__socials a {
	color: inherit;
	text-decoration: none;
}
