/* Onions Col — sistema de diseño para Elementor · v1.1
   Paleta oficial: Carbón #13161C · Blanco frío #F6F6F6 · Borgoña #5A2734 · Rosa mineral #B5A1A7 · Tipografía: Poppins.
   Las reglas de contenedores y widgets usan :where() y las variables de Elementor, así los ajustes
   hechos en el editor (relleno, márgenes, espacio entre elementos, tipografía, colores) siempre mandan. */

body.oc{
  --oc-ink:#13161C; --oc-mist:#F6F6F6; --oc-wine:#5A2734; --oc-rose:#B5A1A7; --oc-paper:#FFFFFF;
  --oc-ink-2:#5D585C; --oc-ink-3:#76707A; --oc-hair:rgba(19,22,28,.10); --oc-wine-deep:#46202A; --oc-tbd:#9A6B12;
  --oc-font:"Poppins",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  --oc-h2:clamp(2rem,4.8vw,3.5rem); --oc-lede:clamp(1.0625rem,1.6vw,1.25rem); --oc-small:.875rem; --oc-micro:.75rem;
  --oc-r-xl:28px; --oc-r-l:18px; --oc-r-m:12px; --oc-wrap:1080px; --oc-ease:cubic-bezier(.25,.1,.25,1);
  --oc-gutter:max(22px,env(safe-area-inset-left,0px));
  --oc-sec-y:clamp(72px,11vw,140px); --oc-tight-y:clamp(10px,2vw,20px);
  background:var(--oc-paper)!important; color:var(--oc-ink); font-family:var(--oc-font); font-size:17px; line-height:1.55;
  -webkit-font-smoothing:antialiased; letter-spacing:-.003em; margin:0;
}
body.oc *,body.oc *::before,body.oc *::after{box-sizing:border-box}
:where(body.oc) a{color:inherit;text-decoration:none}
:where(body.oc) p{margin:0}
:where(body.oc) h1,:where(body.oc) h2,:where(body.oc) h3,:where(body.oc) h4{margin:0;font-family:var(--oc-font);color:inherit;text-wrap:balance}
body.oc :focus-visible{outline:2px solid var(--oc-wine);outline-offset:3px;border-radius:6px}
:where(body.oc) .elementor-heading-title,:where(body.oc) .elementor-widget-text-editor,:where(body.oc) .elementor-button{font-family:var(--oc-font)}
:where(body.oc) .elementor-widget-text-editor{color:inherit}
@media (prefers-reduced-motion:reduce){body.oc *{animation:none!important;transition:none!important}}

/* ===== Contenedores de Elementor (editables desde Diseño y Avanzado) ===== */
:where(body.oc) .e-con[class*="oc-"]{--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;--gap:0px;--row-gap:0px;--column-gap:0px}
:where(body.oc) .e-con.oc-sec{--padding-top:var(--oc-sec-y);--padding-bottom:var(--oc-sec-y)}
:where(body.oc) .e-con.oc-sec.oc-tight{--padding-top:var(--oc-tight-y);--padding-bottom:var(--oc-tight-y)}
:where(body.oc) .e-con.oc-sec.oc-top0{--padding-top:12px}
:where(body.oc) .e-con.oc-mist{background-color:var(--oc-mist)}
:where(body.oc) .e-con.oc-wrap{max-width:calc(var(--oc-wrap) + 44px);margin-inline:auto;--padding-left:var(--oc-gutter);--padding-right:var(--oc-gutter)}
:where(body.oc) .e-con.oc-stack{display:grid;--display:grid;justify-items:center;text-align:center;--gap:18px;--row-gap:18px;--column-gap:18px}
:where(body.oc) .e-con.oc-head{display:grid;--display:grid;justify-items:center;text-align:center;--gap:16px;--row-gap:16px;--column-gap:16px;--margin-bottom:clamp(40px,6vw,64px)}
:where(body.oc) .e-con.oc-ctas{--row-gap:12px;--column-gap:26px;--gap:12px 26px;--margin-top:10px}

/* Hero con textura */
:where(body.oc) .e-con.oc-hero{position:relative;overflow:hidden;isolation:isolate;--padding-top:clamp(40px,7vw,88px);--padding-bottom:clamp(48px,7vw,96px);
  background:radial-gradient(60% 70% at 82% 45%,rgba(181,161,167,.30),transparent 70%),radial-gradient(40% 50% at 8% 100%,rgba(90,39,52,.07),transparent 70%),var(--oc-mist)}
:where(body.oc) .e-con.oc-hero::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:repeating-radial-gradient(circle at 80% 50%,transparent 0 30px,rgba(90,39,52,.085) 30px 31.5px);-webkit-mask-image:radial-gradient(circle at 80% 50%,#000 0,rgba(0,0,0,.6) 35%,transparent 68%);mask-image:radial-gradient(circle at 80% 50%,#000 0,rgba(0,0,0,.6) 35%,transparent 68%)}
:where(body.oc) .e-con.oc-hero::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.5;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.35 0 0 0 0 0.25 0 0 0 0 0.28 0 0 0 .09 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
:where(body.oc) .e-con.oc-h4grid{display:grid;--display:grid;grid-template-columns:1.25fr .75fr;align-items:center;--gap:clamp(24px,4vw,48px);--row-gap:clamp(24px,4vw,48px);--column-gap:clamp(24px,4vw,48px)}
:where(body.oc) .e-con.oc-h4copy{display:grid;--display:grid;align-content:center;--gap:20px;--row-gap:20px;--column-gap:20px}
:where(body.oc) .e-con.oc-h4copy > *{animation:oc-fade .9s var(--oc-ease) both}
:where(body.oc) .e-con.oc-h4copy > *:nth-child(2){animation-delay:.06s}
:where(body.oc) .e-con.oc-h4copy > *:nth-child(3){animation-delay:.12s}
:where(body.oc) .e-con.oc-h4copy > *:nth-child(4){animation-delay:.18s}
@keyframes oc-fade{from{opacity:.001;transform:translateY(10px)}to{opacity:1;transform:none}}

/* Paneles */
:where(body.oc) .e-con.oc-panel{background-color:var(--oc-mist);border-radius:var(--oc-r-xl);display:grid;--display:grid;grid-template-columns:1.1fr .9fr;align-items:center;
  --padding-top:clamp(24px,5vw,64px);--padding-right:clamp(24px,5vw,64px);--padding-bottom:clamp(24px,5vw,64px);--padding-left:clamp(24px,5vw,64px);
  --gap:clamp(28px,5vw,64px);--row-gap:clamp(28px,5vw,64px);--column-gap:clamp(28px,5vw,64px)}
:where(body.oc) .e-con.oc-pl,:where(body.oc) .e-con.oc-pr{display:grid;--display:grid;align-content:center;--gap:14px;--row-gap:14px;--column-gap:14px}
:where(body.oc) .e-con.oc-panel.oc-ink{background-color:var(--oc-ink);color:#F6F6F6}
:where(body.oc) .oc-panel.oc-ink .oc-lede{color:#B9B7BC}
:where(body.oc) .oc-panel.oc-ink .oc-eyebrow .elementor-heading-title,:where(body.oc) .oc-panel.oc-ink .oc-w{color:var(--oc-rose)}
:where(body.oc) .oc-panel.oc-ink .oc-list dl div{border-color:rgba(246,246,246,.14)}
:where(body.oc) .oc-panel.oc-ink .oc-list dt{color:#9C9AA1}
:where(body.oc) .oc-panel.oc-ink .oc-list dd{color:#F6F6F6}
:where(body.oc) .e-con.oc-phead{--padding-top:clamp(56px,9vw,104px);--padding-bottom:clamp(36px,5vw,56px)}

@media (max-width:860px){
  :where(body.oc) .e-con.oc-h4grid,:where(body.oc) .e-con.oc-panel{grid-template-columns:1fr}
  :where(body.oc) .e-con.oc-hero::before{background:repeating-radial-gradient(circle at 50% 78%,transparent 0 24px,rgba(90,39,52,.08) 24px 25.5px);-webkit-mask-image:radial-gradient(circle at 50% 78%,#000 0,transparent 65%);mask-image:radial-gradient(circle at 50% 78%,#000 0,transparent 65%)}
}
@media (max-width:600px){
  :where(body.oc) .e-con.oc-ctas{--row-gap:4px;--gap:4px 26px}
}

/* ===== Widgets de Elementor (tipografía y colores editables) ===== */
:where(body.oc) .oc-w{color:var(--oc-wine)}
:where(body.oc) .elementor-widget.oc-eyebrow .elementor-heading-title,:where(body.oc) .oc-eyebrow-t{font-size:var(--oc-small);font-weight:500;color:var(--oc-wine);letter-spacing:.01em;line-height:1.4}
:where(body.oc) .elementor-widget.oc-h1 .elementor-heading-title{font-size:clamp(2.6rem,6vw,4.75rem);line-height:1;letter-spacing:-.045em;font-weight:600;color:var(--oc-ink)}
:where(body.oc) .elementor-widget.oc-h2 .elementor-heading-title{font-size:var(--oc-h2);line-height:1.08;letter-spacing:-.03em;font-weight:600;color:var(--oc-ink)}
:where(body.oc) .elementor-widget.oc-bigline .elementor-heading-title,:where(body.oc) .oc-big{font-size:clamp(2.75rem,7vw,5rem);font-weight:600;line-height:.95;letter-spacing:-.045em;color:inherit}
:where(body.oc) .elementor-widget.oc-bigline.oc-sm .elementor-heading-title,:where(body.oc) .oc-big.oc-sm{font-size:clamp(2rem,4.5vw,3.25rem);letter-spacing:-.04em;line-height:1}
:where(body.oc) .elementor-widget.oc-bigline.oc-pdt .elementor-heading-title{font-size:clamp(2.25rem,5vw,3.75rem);line-height:1}
:where(body.oc) .elementor-widget.oc-bignum .elementor-heading-title,:where(body.oc) .oc-bignum-t{font-size:clamp(4.5rem,11vw,8rem);font-weight:600;line-height:.85;letter-spacing:-.06em;color:var(--oc-wine);font-variant-numeric:tabular-nums}
:where(body.oc) .elementor-widget.oc-lede,:where(body.oc) .oc-lede{font-size:var(--oc-lede);line-height:1.45;color:var(--oc-ink-2);letter-spacing:-.01em}
:where(body.oc) .oc-muted{color:var(--oc-ink-2)}
:where(body.oc) .oc-small{font-size:var(--oc-small)}
:where(body.oc) .elementor-widget.oc-note,:where(body.oc) .oc-note{font-size:var(--oc-small);color:var(--oc-ink-3);text-align:center;margin-top:28px}
:where(body.oc) .elementor-widget.oc-center{text-align:center}

/* Botones (widget Botón con clase) */
:where(body.oc) .oc-btn-primary .elementor-button,:where(body.oc) .oc-btn-light .elementor-button,body.oc a.oc-btn{display:inline-flex;align-items:center;justify-content:center;font-family:var(--oc-font);font-size:17px;font-weight:500;line-height:1.2;border-radius:980px;padding:14px 26px;min-height:48px;border:0;transition:background .2s var(--oc-ease),transform .2s var(--oc-ease);fill:currentColor}
:where(body.oc) .oc-btn-primary .elementor-button,body.oc a.oc-btn{background-color:var(--oc-wine);color:#fff}
:where(body.oc) .oc-btn-primary .elementor-button:hover,:where(body.oc) .oc-btn-primary .elementor-button:focus,body.oc a.oc-btn:hover{background-color:var(--oc-wine-deep);color:#fff}
:where(body.oc) .oc-btn-light .elementor-button{background-color:#fff;color:var(--oc-ink)}
:where(body.oc) .oc-btn-light .elementor-button:hover{background-color:var(--oc-mist);color:var(--oc-ink)}
:where(body.oc) .oc-btn-primary .elementor-button:active,:where(body.oc) .oc-btn-light .elementor-button:active,body.oc a.oc-btn:active{transform:scale(.98)}
:where(body.oc) .oc-lnk .elementor-button,body.oc a.oc-lnk-a{background:none;padding:0;min-height:0;border-radius:0;color:var(--oc-wine);font-family:var(--oc-font);font-size:17px;font-weight:500;display:inline-flex;align-items:center;gap:2px}
:where(body.oc) .oc-lnk .elementor-button::after,body.oc a.oc-lnk-a::after{content:"›";font-size:1.25em;line-height:1;transform:translateY(-1px);transition:transform .2s var(--oc-ease)}
:where(body.oc) .oc-lnk .elementor-button:hover,body.oc a.oc-lnk-a:hover{text-decoration:underline;text-underline-offset:4px;color:var(--oc-wine)}
:where(body.oc) .oc-lnk .elementor-button:hover::after,body.oc a.oc-lnk-a:hover::after{transform:translate(2px,-1px)}
@media (max-width:600px){
  :where(body.oc) .oc-ctas .oc-btn-primary .elementor-button,:where(body.oc) .oc-ctas .oc-btn-light .elementor-button{width:100%}
  :where(body.oc) .oc-ctas .oc-lnk .elementor-button-wrapper{text-align:center}
  :where(body.oc) .oc-ctas .oc-lnk .elementor-button{justify-content:center;padding:10px 0;width:100%}
}

/* Listas de datos (Editor de texto con <dl>) */
body.oc .oc-list dl{margin:0;display:grid}
body.oc .oc-list dl div{display:grid;grid-template-columns:140px 1fr;gap:12px;padding:15px 0;border-bottom:1px solid var(--oc-hair);font-size:.9375rem}
body.oc .oc-list dl div:first-child{border-top:1px solid var(--oc-hair)}
body.oc .oc-list dt{color:var(--oc-ink-3);font-weight:400}
body.oc .oc-list dd{margin:0;font-weight:500;min-width:0}
body.oc .oc-tbd{display:inline-flex;align-items:center;gap:8px;color:var(--oc-ink-3);font-weight:400}
body.oc .oc-tbd::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--oc-tbd);flex:none}

/* Pasos */
body.oc .oc-steps ol{list-style:none;margin:0;padding:0;border-top:1px solid var(--oc-hair);counter-reset:oc}
body.oc .oc-steps li{display:grid;grid-template-columns:40px 1fr;gap:16px;align-items:start;padding:16px 0;border-bottom:1px solid var(--oc-hair);margin:0;counter-increment:oc}
body.oc .oc-steps li::before{content:counter(oc);width:36px;height:36px;border-radius:50%;box-shadow:inset 0 0 0 1.5px var(--oc-wine);color:var(--oc-wine);font-weight:600;font-size:.9375rem;display:grid;place-items:center}
body.oc .oc-steps strong{display:block;font-weight:500}
body.oc .oc-steps span{color:var(--oc-ink-2);font-size:var(--oc-small)}

/* ===== Fotos y video (widget HTML) ===== */
body.oc .oc-media{position:relative;border-radius:var(--oc-r-xl);background:#ECEAEB;display:grid;place-content:center;justify-items:center;gap:12px;text-align:center;padding:20px;overflow:hidden;width:100%;max-width:100%;aspect-ratio:16/9;min-width:0}
body.oc .oc-media img,body.oc .oc-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
body.oc .oc-media .oc-mi{width:56px;height:56px;border-radius:50%;background:rgba(255,255,255,.8);display:grid;place-items:center;color:var(--oc-ink)}
body.oc .oc-media .oc-mi svg{width:22px;height:22px}
body.oc .oc-media .oc-ml{font-size:var(--oc-micro);color:var(--oc-ink-3);max-width:32ch;line-height:1.5}
body.oc .oc-media.oc-tall{aspect-ratio:4/5}
body.oc .oc-media.oc-wide,body.oc .oc-media.oc-band{aspect-ratio:21/9}
body.oc .oc-media.oc-mt{margin-top:18px}
body.oc .oc-media.oc-dark{background:#24272D}
body.oc .oc-media.oc-dark .oc-ml{color:#A4A2A8}
body.oc .oc-media.oc-dark .oc-mi{background:rgba(255,255,255,.12);color:#F6F6F6}
body.oc .oc-hmedia{position:relative;min-width:0}
body.oc .oc-float-card{position:absolute;left:16px;bottom:16px;z-index:2;background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:var(--oc-r-l);padding:16px 22px 14px;box-shadow:0 12px 30px -16px rgba(19,22,28,.35)}
body.oc .oc-float-card .oc-bignum-t{font-size:clamp(2.75rem,5vw,3.75rem)}
body.oc .oc-float-card .oc-small{margin-top:6px;color:var(--oc-ink-2)}
body.oc .oc-band-media{position:relative;width:100%}
body.oc .e-con > .elementor-widget-html{width:100%;flex-shrink:0}
body.oc .oc-band-txt{position:absolute;left:clamp(20px,4vw,48px);bottom:clamp(20px,4vw,44px);z-index:2;display:grid;gap:8px;color:#F6F6F6}
body.oc .oc-band-txt .oc-eyebrow-t,body.oc .oc-band-txt .oc-w{color:var(--oc-rose)}
body.oc .oc-gallery{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;gap:18px;margin-bottom:18px}
body.oc .oc-gallery .oc-media{aspect-ratio:auto}
body.oc .oc-gallery .oc-g-main{grid-row:1/3;aspect-ratio:4/3}
@media (max-width:860px){body.oc .oc-media.oc-tall,body.oc .oc-media.oc-wide{aspect-ratio:4/3}body.oc .oc-media.oc-band{aspect-ratio:4/5}}
@media (max-width:700px){
  body.oc .oc-gallery{grid-template-columns:none;grid-template-rows:none;grid-auto-flow:column;grid-auto-columns:86%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
  body.oc .oc-gallery::-webkit-scrollbar{display:none}
  body.oc .oc-gallery .oc-media,body.oc .oc-gallery .oc-g-main{aspect-ratio:4/5;grid-row:auto;scroll-snap-align:start}
}

/* ===== Listas automáticas de productos (shortcodes) ===== */
body.oc .oc-cgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
body.oc .oc-ccard{background:var(--oc-mist);border-radius:var(--oc-r-xl);padding:clamp(24px,4vw,40px);display:grid;gap:18px;align-content:start;min-width:0}
body.oc .oc-ccard .oc-big a{transition:color .3s var(--oc-ease)}
body.oc .oc-ccard .oc-big a:hover{color:var(--oc-wine)}
body.oc .oc-plist{list-style:none;margin:0;padding:0;border-top:1px solid var(--oc-hair)}
body.oc .oc-plist li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--oc-hair);font-size:.9375rem;margin:0}
body.oc .oc-plist li > a:first-child{font-weight:500;min-width:0}
body.oc .oc-plist li > a:first-child:hover{color:var(--oc-wine)}
body.oc .oc-plist .oc-q{flex:none;font-size:.8125rem;font-weight:500;color:var(--oc-wine);background:#fff;border-radius:99px;padding:6px 14px;transition:background .2s,color .2s}
body.oc .oc-plist .oc-q:hover{background:var(--oc-wine);color:#fff}
body.oc .oc-plist .oc-soft{color:var(--oc-ink-3);font-size:var(--oc-small)}
body.oc .oc-pgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
body.oc .oc-pcard{background:var(--oc-mist);border-radius:var(--oc-r-xl);padding:clamp(22px,3vw,30px);display:grid;gap:14px;align-content:start;min-width:0}
body.oc .oc-pcard h3{font-size:1.5rem;letter-spacing:-.025em;line-height:1.12;font-weight:600;color:var(--oc-ink)}
body.oc .oc-pcard h3 a:hover{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1.5px}
body.oc .oc-pcard .oc-list dl div{grid-template-columns:1fr auto;padding:11px 0}
body.oc .oc-pcard .oc-list dd{text-align:right}
body.oc .oc-ctas-h{display:flex;flex-wrap:wrap;gap:12px 26px;align-items:center;margin-top:4px}
body.oc .oc-groups{display:grid;gap:clamp(56px,8vw,96px)}
body.oc .oc-group{display:grid;gap:24px}
body.oc .oc-group-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap}
body.oc .oc-empty{color:var(--oc-ink-3);font-size:var(--oc-small);text-align:center;padding:24px 0}
@media (max-width:900px){body.oc .oc-pgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:700px){body.oc .oc-cgrid{grid-template-columns:1fr}}
@media (max-width:600px){
  body.oc .oc-pgrid{grid-template-columns:1fr}
  body.oc .oc-ctas-h{flex-direction:column;align-items:stretch;gap:4px}
  body.oc .oc-ctas-h a.oc-btn{width:100%}
  body.oc .oc-ctas-h a.oc-lnk-a{justify-content:center;padding:10px 0}
}

/* Ruta y selector de categorías */
body.oc .oc-crumbs{font-size:var(--oc-micro);color:var(--oc-ink-3);display:flex;gap:8px;justify-content:center;flex-wrap:wrap}
body.oc .oc-crumbs.oc-left{justify-content:flex-start;margin-bottom:24px}
body.oc .oc-crumbs a:hover{color:var(--oc-ink)}
body.oc .oc-seg{display:inline-flex;flex-wrap:wrap;justify-content:center;gap:4px;background:var(--oc-mist);border-radius:99px;padding:4px;margin-top:10px}
body.oc .oc-seg a{font-size:.875rem;font-weight:500;color:var(--oc-ink-2);padding:8px 18px;border-radius:99px;transition:background .2s,color .2s}
body.oc .oc-seg a:hover{color:var(--oc-ink)}
body.oc .oc-seg a[aria-current="page"]{background:#fff;color:var(--oc-ink);box-shadow:0 1px 3px rgba(19,22,28,.12)}
body.oc .oc-legal{max-width:680px;margin-inline:auto;display:grid;gap:30px}
body.oc .oc-legal h2{font-size:1.25rem;letter-spacing:-.015em;margin-bottom:6px;font-weight:600}
body.oc .oc-legal p{color:var(--oc-ink-2)}

/* Celular: listas de datos */
@media (max-width:600px){
  body.oc .oc-list dl div,body.oc .oc-pcard .oc-list dl div{grid-template-columns:1fr;gap:2px}
  body.oc .oc-list dt{font-size:.75rem}
  body.oc .oc-pcard .oc-list dd{text-align:left}
  body.oc .oc-media.oc-wide{aspect-ratio:4/3}
}

/* ===== Cabecera ===== */
body.oc .oc-header{position:sticky;top:var(--wp-admin--admin-bar--height,0px);z-index:50;background:rgba(246,246,246,.78);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid var(--oc-hair)}
body.oc .oc-header-in{display:flex;align-items:center;gap:28px;height:54px;max-width:1284px;margin-inline:auto;padding:0 var(--oc-gutter);position:relative}
body.oc .oc-logo img{height:22px;width:auto;display:block}
body.oc .oc-nav{display:flex;gap:26px;margin-left:auto;font-size:.8125rem}
body.oc .oc-nav a{color:var(--oc-ink-2);transition:color .2s}
body.oc .oc-nav a:hover,body.oc .oc-nav a[aria-current="page"]{color:var(--oc-ink)}
body.oc .oc-pill{font-size:.8125rem;font-weight:500;background:var(--oc-wine);color:#fff!important;border-radius:99px;padding:6px 14px;transition:background .2s}
body.oc .oc-pill:hover{background:var(--oc-wine-deep)}
body.oc .oc-burger{display:none;margin-left:auto;background:none;border:0;width:40px;height:40px;cursor:pointer;color:var(--oc-ink);place-items:center;padding:0}
body.oc .oc-burger:hover,body.oc .oc-burger:focus{background:none;color:var(--oc-ink)}
@media (max-width:820px){
  body.oc .oc-nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--oc-mist);flex-direction:column;gap:0;font-size:1.5rem;font-weight:600;padding:12px var(--oc-gutter) 28px;border-bottom:1px solid var(--oc-hair);letter-spacing:-.02em}
  body.oc .oc-nav.open{display:flex}
  body.oc .oc-nav a{padding:10px 0;color:var(--oc-ink)}
  body.oc .oc-burger{display:grid}
  body.oc .oc-header .oc-pill{display:none}
}

/* ===== Pie ===== */
body.oc .oc-footer{background:var(--oc-mist);font-size:var(--oc-micro);color:var(--oc-ink-3)}
body.oc .oc-footer-in{max-width:calc(var(--oc-wrap) + 44px);margin-inline:auto;padding:22px var(--oc-gutter) 28px;display:grid;gap:18px}
body.oc .oc-fnote{padding-bottom:16px;border-bottom:1px solid var(--oc-hair);line-height:1.6}
body.oc .oc-fcols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
body.oc .oc-fcols h4{font-size:var(--oc-micro);font-weight:600;color:var(--oc-ink);margin-bottom:10px}
body.oc .oc-fcols ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
body.oc .oc-fcols a{color:var(--oc-ink-2)}
body.oc .oc-fcols a:hover{text-decoration:underline;color:var(--oc-ink)}
body.oc .oc-fbase{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding-top:16px;border-top:1px solid var(--oc-hair)}
body.oc .oc-fbase .oc-legal-l{display:flex;gap:14px}
body.oc .oc-fbase a:hover{text-decoration:underline}
@media (max-width:700px){body.oc .oc-fcols{grid-template-columns:1fr 1fr}}

/* ===== Barra móvil ===== */
body.oc .oc-mbar{display:none}
@media (max-width:720px){
  body.oc .oc-mbar{display:flex;gap:8px;position:fixed;left:max(12px,env(safe-area-inset-left,0px));right:max(12px,env(safe-area-inset-right,0px));bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:55;padding:6px;border-radius:99px;background:rgba(255,255,255,.82);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);box-shadow:0 10px 30px -10px rgba(19,22,28,.3),inset 0 0 0 1px var(--oc-hair)}
  body.oc .oc-mbar a{flex:1;display:grid;place-items:center;min-height:44px;border-radius:99px;font-size:.875rem;font-weight:500;color:var(--oc-ink)}
  body.oc .oc-mbar a.oc-go{background:var(--oc-wine);color:#fff;flex:1.3}
  body.oc{padding-bottom:80px}
}

/* ===== Formulario de cotización ===== */
body.oc .oc-formwrap{max-width:720px;margin-inline:auto}
body.oc form.oc-q{display:grid;gap:18px;margin:0}
body.oc .oc-group-card{background:#fff;border-radius:var(--oc-r-xl);padding:clamp(22px,4vw,36px);display:grid;gap:18px}
body.oc .oc-group-card h2{font-size:1.375rem;letter-spacing:-.02em;font-weight:600}
body.oc .oc-hint{font-size:var(--oc-small);color:var(--oc-ink-3);margin-top:-10px}
body.oc .oc-f2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
body.oc label.oc-f{display:grid;gap:7px;font-size:var(--oc-small);font-weight:500;color:var(--oc-ink-2);min-width:0;margin:0}
body.oc label.oc-f .oc-opt{font-weight:400;color:var(--oc-ink-3)}
body.oc .oc-q input[type=text],body.oc .oc-q input[type=tel],body.oc .oc-q input[type=email],body.oc .oc-q input[type=number],body.oc .oc-q select,body.oc .oc-q textarea{font-family:var(--oc-font);font-size:17px;color:var(--oc-ink);background:var(--oc-mist);border:1px solid transparent;border-radius:var(--oc-r-m);padding:13px 15px;width:100%;min-width:0;min-height:52px;box-shadow:none;transition:border-color .2s,background .2s,box-shadow .2s;-webkit-appearance:none;appearance:none;margin:0}
body.oc .oc-q select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%2376707A' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 15px center;padding-right:38px}
body.oc .oc-q input:focus,body.oc .oc-q select:focus,body.oc .oc-q textarea:focus{outline:none;background-color:#fff;border-color:var(--oc-wine);box-shadow:0 0 0 4px rgba(90,39,52,.12)}
body.oc .oc-q textarea{min-height:110px;resize:vertical}
body.oc .oc-lines{display:grid;gap:12px}
body.oc .oc-line{display:grid;grid-template-columns:1.8fr 1.2fr .9fr 1fr 44px;gap:10px;align-items:end}
body.oc .oc-line > *{min-width:0}
body.oc .oc-line + .oc-line{padding-top:12px;border-top:1px solid var(--oc-hair)}
body.oc .oc-rm{width:44px;height:52px;border:0;background:none;color:var(--oc-ink-3);cursor:pointer;border-radius:var(--oc-r-m);display:grid;place-items:center;padding:0}
body.oc .oc-rm:hover,body.oc .oc-rm:focus{color:#9B1C1C;background:var(--oc-mist)}
body.oc .oc-rm svg{width:18px;height:18px}
body.oc .oc-add{justify-self:start;background:none;border:0;font-family:var(--oc-font);font-weight:500;color:var(--oc-wine);cursor:pointer;padding:4px 0;font-size:.9375rem}
body.oc .oc-add:hover,body.oc .oc-add:focus{text-decoration:underline;text-underline-offset:4px;background:none;color:var(--oc-wine)}
body.oc .oc-segctl{display:flex;flex-wrap:wrap;gap:6px;background:var(--oc-mist);border-radius:var(--oc-r-m);padding:5px}
body.oc .oc-segctl input{position:absolute;opacity:0;pointer-events:none}
body.oc .oc-segctl label{flex:1 1 auto;text-align:center;padding:9px 14px;border-radius:9px;cursor:pointer;font-size:.9375rem;font-weight:500;color:var(--oc-ink-2);transition:background .2s,color .2s;margin:0}
body.oc .oc-segctl input:checked + label{background:#fff;color:var(--oc-ink);box-shadow:0 1px 3px rgba(19,22,28,.14)}
body.oc .oc-segctl input:focus-visible + label{outline:2px solid var(--oc-wine);outline-offset:1px}
body.oc .oc-check{display:grid;grid-template-columns:22px 1fr;gap:12px;font-size:var(--oc-small);color:var(--oc-ink-2);align-items:start;text-align:left;max-width:520px;margin:0}
body.oc .oc-check input{width:20px;height:20px;margin:1px 0 0;accent-color:var(--oc-wine)}
body.oc .oc-check a{color:var(--oc-wine);text-decoration:underline;text-underline-offset:3px}
body.oc .oc-err{color:#9B1C1C;font-size:var(--oc-small);font-weight:500;text-align:center}
body.oc .oc-submit{display:grid;gap:14px;justify-items:center;text-align:center;padding-top:8px}
body.oc .oc-submit .oc-send{font-family:var(--oc-font);font-size:17px;font-weight:500;border:0;border-radius:980px;padding:14px 26px;min-height:48px;min-width:260px;background:var(--oc-wine);color:#fff;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:10px}
body.oc .oc-submit .oc-send:hover,body.oc .oc-submit .oc-send:focus{background:var(--oc-wine-deep);color:#fff}
body.oc .oc-submit .oc-send svg{width:20px;height:20px}
body.oc .oc-fine{font-size:var(--oc-micro);color:var(--oc-ink-3);max-width:48ch}
body.oc .oc-done{background:#fff;border-radius:var(--oc-r-xl);padding:clamp(28px,5vw,56px);display:grid;gap:20px;text-align:center;justify-items:center}
body.oc .oc-done .oc-ok{width:64px;height:64px;border-radius:50%;background:var(--oc-wine);color:#fff;display:grid;place-items:center}
body.oc .oc-done .oc-ok svg{width:30px;height:30px}
body.oc .oc-done h2{font-size:clamp(1.875rem,4vw,2.75rem);letter-spacing:-.03em;font-weight:600}
body.oc .oc-wa{background:var(--oc-mist);border-radius:var(--oc-r-m);padding:16px 18px;font-size:.9375rem;white-space:pre-wrap;word-break:break-word;text-align:left;width:100%}
body.oc .oc-done .oc-actions{display:flex;flex-wrap:wrap;gap:12px 24px;justify-content:center;align-items:center}
body.oc .oc-done .oc-actions a.oc-send{font-size:17px;font-weight:500;border-radius:980px;padding:14px 26px;background:var(--oc-wine);color:#fff}
body.oc .oc-done .oc-actions button{font-family:var(--oc-font);background:none;border:0;color:var(--oc-wine);font-weight:500;font-size:17px;cursor:pointer;padding:0}
@media (max-width:600px){body.oc .oc-f2{grid-template-columns:1fr}}
@media (max-width:700px){body.oc .oc-line{grid-template-columns:1fr 1fr}body.oc .oc-line .oc-lp{grid-column:1/-1}body.oc .oc-line .oc-rm{grid-column:2;justify-self:end}}

/* ===== Cabecera y pie como plantillas de Elementor (editables) ===== */
body.oc .oc-header-tpl{position:sticky;top:var(--wp-admin--admin-bar--height,0px);z-index:50}
:where(body.oc) .e-con.oc-header{position:relative;background-color:rgba(246,246,246,.78);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid var(--oc-hair)}
:where(body.oc) .e-con.oc-header-in{max-width:1284px;margin-inline:auto;min-height:54px;--padding-left:var(--oc-gutter);--padding-right:var(--oc-gutter);--gap:28px;--row-gap:28px;--column-gap:28px}
:where(body.oc) .oc-logo-w img{width:131px;height:auto;display:block}
:where(body.oc) .oc-header-in > .oc-logo-w{flex:none}
:where(body.oc) .oc-header-in > .oc-nav-w{margin-left:auto;width:auto}
:where(body.oc) .oc-nav-w .elementor-icon-list-text{font-size:.8125rem;color:var(--oc-ink-2);transition:color .2s}
:where(body.oc) .oc-nav-w a:hover .elementor-icon-list-text,:where(body.oc) .oc-nav-w a[aria-current="page"] .elementor-icon-list-text{color:var(--oc-ink)}
:where(body.oc) .oc-header-in > .oc-pill-w{flex:none;width:auto}
:where(body.oc) .oc-pill-w .elementor-button{font-family:var(--oc-font);font-size:.8125rem;font-weight:500;line-height:1.3;background-color:var(--oc-wine);color:#fff;border-radius:99px;padding:6px 14px;transition:background .2s}
:where(body.oc) .oc-pill-w .elementor-button:hover{background-color:var(--oc-wine-deep);color:#fff}
:where(body.oc) .oc-header-in > .oc-burger-w{display:none;flex:none;width:auto;margin-left:auto}
body.oc .e-con.oc-header-in > .elementor-widget.oc-burger-w,body.oc .e-con.oc-header-in > .elementor-widget.oc-logo-w,body.oc .e-con.oc-header-in > .elementor-widget.oc-pill-w{width:auto;max-width:none;flex:0 0 auto}
@media (max-width:820px){
  :where(body.oc) .oc-header-in > .oc-nav-w,:where(body.oc) .oc-header-in > .oc-pill-w{display:none}
  :where(body.oc) .oc-header-in > .oc-burger-w{display:block}
  body.oc .oc-header.oc-open .oc-header-in > .oc-nav-w{display:block;position:absolute;left:0;right:0;top:100%;margin:0;background:var(--oc-mist);padding:12px var(--oc-gutter) 28px;border-bottom:1px solid var(--oc-hair)}
  body.oc .oc-header.oc-open .oc-nav-w .elementor-widget-container{overflow:visible}
  body.oc .oc-header.oc-open .oc-nav-w .elementor-icon-list-items{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start!important;margin:0!important}
  body.oc .oc-header.oc-open .oc-nav-w .elementor-icon-list-item > a{justify-content:flex-start}
  body.oc .oc-header.oc-open .oc-nav-w .elementor-icon-list-item{margin:0!important;padding:10px 0!important}
  body.oc .oc-header.oc-open .oc-nav-w .elementor-icon-list-item::after{display:none}
  body.oc .oc-header.oc-open .oc-nav-w .elementor-icon-list-text{font-size:1.5rem;font-weight:600;letter-spacing:-.02em;color:var(--oc-ink)}
}
:where(body.oc) .e-con.oc-footer{background-color:var(--oc-mist);color:var(--oc-ink-3)}
:where(body.oc) .e-con.oc-footer-in{max-width:calc(var(--oc-wrap) + 44px);margin-inline:auto;--padding-top:22px;--padding-bottom:28px;--padding-left:var(--oc-gutter);--padding-right:var(--oc-gutter);--gap:18px;--row-gap:18px;--column-gap:18px}
:where(body.oc) .elementor-widget.oc-fnote{font-size:var(--oc-micro);line-height:1.6;color:var(--oc-ink-3);padding-bottom:16px;border-bottom:1px solid var(--oc-hair)}
:where(body.oc) .e-con.oc-fcols{display:grid;--display:grid;grid-template-columns:repeat(4,minmax(0,1fr));--gap:24px;--row-gap:24px;--column-gap:24px}
:where(body.oc) .e-con.oc-fcol{--gap:10px;--row-gap:10px;--column-gap:10px}
:where(body.oc) .elementor-widget.oc-fh .elementor-heading-title{font-size:var(--oc-micro);font-weight:600;color:var(--oc-ink);line-height:1.4}
:where(body.oc) .elementor-widget.oc-flinks{font-size:var(--oc-micro);color:var(--oc-ink-2)}
:where(body.oc) .oc-flinks ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
:where(body.oc) .oc-flinks li{margin:0}
:where(body.oc) .oc-flinks a:hover,:where(body.oc) .oc-flegal a:hover{text-decoration:underline;color:var(--oc-ink)}
:where(body.oc) .e-con.oc-fbase{padding-top:16px;border-top:1px solid var(--oc-hair);--gap:12px;--row-gap:12px;--column-gap:12px}
:where(body.oc) .elementor-widget.oc-fsmall{font-size:var(--oc-micro);color:var(--oc-ink-3);width:auto}
:where(body.oc) .oc-flegal p{display:flex;gap:14px;flex-wrap:wrap}
@media (max-width:700px){:where(body.oc) .e-con.oc-fcols{grid-template-columns:1fr 1fr}}

/* Redes sociales en el pie */
body.oc .oc-social{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}
body.oc .oc-social a{width:36px;height:36px;border-radius:50%;display:inline-grid;place-items:center;color:var(--oc-ink);background:#fff;box-shadow:inset 0 0 0 1px var(--oc-hair);transition:background .2s,color .2s}
body.oc .oc-social a:hover,body.oc .oc-social a:focus-visible{background:var(--oc-wine);color:#fff;text-decoration:none}
body.oc .oc-social svg{width:18px;height:18px;display:block}
:where(body.oc) .elementor-widget.oc-fsocial p{margin:0}
