.elementor-kit-6{--e-global-color-primary:#26382F;--e-global-color-secondary:#DCE4D8;--e-global-color-text:#6C756D;--e-global-color-accent:#233027;--e-global-color-papel:#F7F5EF;--e-global-color-linea:#D8DDD6;--e-global-color-verdeclaro:#E4EADF;--e-global-color-arena:#F0EEE7;--e-global-color-blanco:#FFFFFF;--e-global-color-claro:#D6DFD7;--e-global-color-eyebrowclaro:#BDCBBD;--e-global-typography-primary-font-family:"Playfair Display";--e-global-typography-primary-font-weight:500;--e-global-typography-secondary-font-family:"DM Sans";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"DM Sans";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.8em;--e-global-typography-accent-font-family:"DM Sans";--e-global-typography-accent-font-size:12px;--e-global-typography-accent-font-weight:500;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-letter-spacing:1px;--e-global-typography-eyebrow-font-family:"DM Sans";--e-global-typography-eyebrow-font-size:10px;--e-global-typography-eyebrow-font-weight:600;--e-global-typography-eyebrow-text-transform:uppercase;--e-global-typography-eyebrow-line-height:1.4em;--e-global-typography-eyebrow-letter-spacing:2px;--e-global-typography-hero-font-family:"Playfair Display";--e-global-typography-hero-font-size:105px;--e-global-typography-hero-font-weight:600;--e-global-typography-hero-line-height:0.92em;--e-global-typography-hero-letter-spacing:-4px;--e-global-typography-display-font-family:"Playfair Display";--e-global-typography-display-font-size:68px;--e-global-typography-display-font-weight:500;--e-global-typography-display-line-height:1.02em;--e-global-typography-display-letter-spacing:-2.2px;--e-global-typography-displayxl-font-family:"Playfair Display";--e-global-typography-displayxl-font-size:100px;--e-global-typography-displayxl-font-weight:500;--e-global-typography-displayxl-line-height:0.98em;--e-global-typography-displayxl-letter-spacing:-3.5px;--e-global-typography-card-font-family:"Playfair Display";--e-global-typography-card-font-size:20px;--e-global-typography-card-font-weight:500;--e-global-typography-card-line-height:1.25em;--e-global-typography-servicio-font-family:"Playfair Display";--e-global-typography-servicio-font-size:30px;--e-global-typography-servicio-font-weight:500;--e-global-typography-servicio-line-height:1.15em;--e-global-typography-cat-font-family:"Playfair Display";--e-global-typography-cat-font-size:34px;--e-global-typography-cat-font-weight:500;--e-global-typography-cat-line-height:1.05em;--e-global-typography-contacto-font-family:"Playfair Display";--e-global-typography-contacto-font-size:25px;--e-global-typography-contacto-font-weight:500;--e-global-typography-contacto-line-height:1.3em;--e-global-typography-link-font-family:"DM Sans";--e-global-typography-link-font-size:12px;--e-global-typography-link-font-weight:500;--e-global-typography-link-text-transform:uppercase;--e-global-typography-link-letter-spacing:1.2px;--e-global-typography-small-font-family:"DM Sans";--e-global-typography-small-font-size:12px;--e-global-typography-small-font-weight:400;--e-global-typography-small-line-height:1.6em;--e-global-typography-lead-font-family:"DM Sans";--e-global-typography-lead-font-size:18px;--e-global-typography-lead-font-weight:400;--e-global-typography-lead-line-height:1.6em;--e-global-typography-brand-font-family:"Playfair Display";--e-global-typography-brand-font-size:22px;--e-global-typography-brand-font-weight:400;--e-global-typography-brand-line-height:1em;--e-global-typography-brand-letter-spacing:4px;--e-global-typography-brandsmall-font-family:"DM Sans";--e-global-typography-brandsmall-font-size:8px;--e-global-typography-brandsmall-font-weight:400;--e-global-typography-brandsmall-text-transform:uppercase;--e-global-typography-brandsmall-line-height:1em;--e-global-typography-brandsmall-letter-spacing:1.5px;--e-global-typography-menu-font-family:"DM Sans";--e-global-typography-menu-font-size:13px;--e-global-typography-menu-font-weight:400;--e-global-typography-numero-font-family:"Playfair Display";--e-global-typography-numero-font-size:56px;--e-global-typography-numero-font-weight:400;--e-global-typography-numero-font-style:italic;--e-global-typography-numero-line-height:1em;--e-global-typography-cita-font-family:"Playfair Display";--e-global-typography-cita-font-size:44px;--e-global-typography-cita-font-weight:400;--e-global-typography-cita-font-style:italic;--e-global-typography-cita-line-height:1.2em;--e-global-typography-cita-letter-spacing:-1px;--e-global-typography-precio-font-family:"DM Sans";--e-global-typography-precio-font-size:13px;--e-global-typography-precio-font-weight:600;--e-global-typography-pdptitulo-font-family:"Playfair Display";--e-global-typography-pdptitulo-font-size:52px;--e-global-typography-pdptitulo-font-weight:500;--e-global-typography-pdptitulo-line-height:1.05em;--e-global-typography-pdptitulo-letter-spacing:-1.5px;background-color:#FFFFFF;color:#233027;font-family:"DM Sans", Sans-serif;font-size:16px;}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{background-color:#26382F;font-family:"DM Sans", Sans-serif;font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:1px;color:#FFFFFF;border-radius:0px 0px 0px 0px;padding:15px 24px 15px 24px;}.elementor-kit-6 button:hover,.elementor-kit-6 button:focus,.elementor-kit-6 input[type="button"]:hover,.elementor-kit-6 input[type="button"]:focus,.elementor-kit-6 input[type="submit"]:hover,.elementor-kit-6 input[type="submit"]:focus,.elementor-kit-6 .elementor-button:hover,.elementor-kit-6 .elementor-button:focus{background-color:#233027;color:#FFFFFF;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 a{color:#233027;}.elementor-kit-6 a:hover{color:#6C756D;}.elementor-kit-6 h1{color:#233027;font-family:"Playfair Display", Sans-serif;font-weight:600;}.elementor-kit-6 h2{color:#233027;font-family:"Playfair Display", Sans-serif;font-weight:500;}.elementor-kit-6 h3{color:#233027;font-family:"Playfair Display", Sans-serif;font-weight:500;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1180px;}.e-con{--container-max-width:1180px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-6{--e-global-typography-hero-font-size:78px;--e-global-typography-display-font-size:52px;--e-global-typography-displayxl-font-size:72px;--e-global-typography-cat-font-size:30px;--e-global-typography-cita-font-size:36px;--e-global-typography-pdptitulo-font-size:42px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-6{--e-global-typography-text-font-size:15px;--e-global-typography-hero-font-size:54px;--e-global-typography-display-font-size:40px;--e-global-typography-displayxl-font-size:52px;--e-global-typography-card-font-size:17px;--e-global-typography-servicio-font-size:26px;--e-global-typography-cat-font-size:30px;--e-global-typography-contacto-font-size:22px;--e-global-typography-lead-font-size:16px;--e-global-typography-brand-font-size:18px;--e-global-typography-brandsmall-font-size:7px;--e-global-typography-numero-font-size:44px;--e-global-typography-cita-font-size:30px;--e-global-typography-pdptitulo-font-size:36px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* Es Romaní — lo que Elementor no expone como control. Clases esro-* puestas en el editor. */
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
::selection{background:#DCE4D8;color:#233027}
h1 em,h2 em,h3 em,.elementor-heading-title em{font-style:italic;font-weight:500}
.esro-header{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.esro-link .elementor-button{white-space:nowrap;transition:opacity .25s}
.esro-link .elementor-button:hover{opacity:.55}
.esro-btn .elementor-button{transition:background-color .3s,color .3s,transform .3s}
.esro-btn .elementor-button:hover{transform:translateY(-1px)}
.esro-list .elementor-icon-list-icon i{font-size:5px}

/* Tarjeta de producto (Loop Item) y fotos con zoom */
.esro-card{height:100%}
.esro-media{position:relative;overflow:hidden;aspect-ratio:4/5;background:#EEF0EA}
.esro-media>.elementor-widget-image,.esro-media>.elementor-widget-image a,.esro-media>.elementor-widget-image .elementor-widget-container{height:100%;display:block}
.esro-media img{width:100%!important;height:100%!important;object-fit:cover;display:block;transition:transform 1s cubic-bezier(.2,.7,.2,1)}
.esro-card:hover .esro-media img,.esro-media:hover img{transform:scale(1.06)}
.esro-badge{position:absolute!important;top:12px;left:12px;z-index:2;width:auto!important}
.esro-badge .elementor-heading-title{background:#fff;color:#233027;padding:6px 9px;font:600 9px/1 'DM Sans',sans-serif;letter-spacing:.12em;text-transform:uppercase}
.esro-badge:has(.elementor-heading-title:empty){display:none}
.esro-atc{position:absolute!important;left:12px;right:12px;bottom:12px;z-index:2;width:auto!important;transform:translateY(calc(100% + 16px));opacity:0;transition:transform .45s cubic-bezier(.2,.7,.2,1),opacity .3s}
.esro-card:hover .esro-atc,.esro-card:focus-within .esro-atc{transform:none;opacity:1}
.esro-atc a.button{display:block;width:100%;text-align:center;background:#fff!important;color:#233027!important;border:0!important;border-radius:0;padding:13px 10px!important;font:500 10px/1.2 'DM Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase;transition:background-color .25s,color .25s}
.esro-atc a.button:hover{background:#26382F!important;color:#fff!important}
.esro-atc a.button.loading{opacity:.6}
.esro-atc a.button.added{display:none}
.esro-atc .added_to_cart{display:block;text-align:center;background:#26382F;color:#fff;padding:13px 10px;font:500 10px/1.2 'DM Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase}
@media (hover:none),(max-width:1024px){
.esro-atc{left:auto;right:10px;bottom:10px;transform:none;opacity:1}
.esro-atc a.button,.esro-atc .added_to_cart{width:42px;height:42px;padding:0!important;border-radius:50%!important;font-size:0!important;letter-spacing:0;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px rgba(15,25,19,.18)}
.esro-atc a.button{background:#fff!important}
.esro-atc a.button::before{content:"+";font:300 26px/1 'DM Sans',sans-serif;color:#233027;margin-top:-2px}
.esro-atc .added_to_cart::before{content:"✓";font:400 16px/1 'DM Sans',sans-serif;color:#fff}}
.esro-card .woocommerce-Price-amount{white-space:nowrap}
.esro-card .elementor-widget-woocommerce-product-short-description p{margin:0}

/* Categorías en portada */
.esro-catcard{position:relative;overflow:hidden;aspect-ratio:3/4;isolation:isolate}
.esro-catcard>.elementor-widget-image{position:absolute!important;inset:0;z-index:-2;width:100%!important;height:100%}
.esro-catcard>.elementor-widget-image *{height:100%}
.esro-catcard img{width:100%!important;height:100%!important;object-fit:cover;transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}
.esro-catcard::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(15,25,19,.82) 0%,rgba(15,25,19,.2) 50%,rgba(15,25,19,0) 70%),linear-gradient(180deg,rgba(15,25,19,.35) 0%,rgba(15,25,19,0) 22%)}
.esro-catcard:hover img{transform:scale(1.07)}
.esro-more .elementor-heading-title{display:inline-block;background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;padding-bottom:4px;transition:background-size .5s}
.esro-catcard:hover .esro-more .elementor-heading-title{background-size:100% 1px}
@media(min-width:1025px){.esro-catrow>.esro-catcard:nth-child(even){margin-top:70px}}
@media(max-width:767px){.esro-catrow{overflow-x:auto;scroll-snap-type:x mandatory;margin-right:-16px!important;padding-right:16px!important;scrollbar-width:none}.esro-catrow::-webkit-scrollbar{display:none}.esro-catrow>.esro-catcard{flex:0 0 78%!important;scroll-snap-align:start}}

/* Filtro por categoría (Loop Filter) */
.esro-filter .e-filter{gap:8px 26px;justify-content:flex-start!important}
.esro-filter .e-filter-item{position:relative;padding:0 0 6px!important;background:none!important;border:0!important;font:500 12px 'DM Sans',sans-serif!important;letter-spacing:.1em;text-transform:uppercase;color:#6C756D!important;cursor:pointer}
.esro-filter .e-filter-item::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:#233027;transform:scaleX(0);transform-origin:left;transition:transform .35s}
.esro-filter .e-filter-item[aria-pressed=true]{color:#233027!important}
.esro-filter .e-filter-item[aria-pressed=true]::after,.esro-filter .e-filter-item:hover::after{transform:scaleX(1)}

/* Menú de categorías (tienda) */
.esro-catnav .elementor-nav-menu{gap:10px 28px}
.esro-catnav .elementor-nav-menu--main .elementor-item{padding:0 0 6px!important;margin:0!important;font:500 12px 'DM Sans',sans-serif!important;letter-spacing:.1em;text-transform:uppercase;color:#6C756D}
.esro-catnav .elementor-item.elementor-item-active{color:#233027;box-shadow:inset 0 -1px 0 #233027}
@media(max-width:767px){.esro-catnav .elementor-nav-menu{flex-wrap:nowrap!important;overflow-x:auto;scrollbar-width:none}}

/* Ficha de producto */
.esro-pdp .woocommerce-product-gallery{margin:0!important}
.esro-pdp .flex-control-thumbs{display:grid!important;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:10px!important}
.esro-pdp .flex-control-thumbs li{width:auto!important;margin:0!important}
.esro-pdp form.cart{display:flex;gap:10px;align-items:stretch;margin:0!important}
.esro-pdp form.cart .quantity input{height:100%;min-height:50px;width:70px;border:1px solid #D8DDD6;border-radius:0}
.esro-pdp form.cart .button{flex:1;background:#26382F!important;color:#fff!important;border-radius:0!important;padding:17px 22px!important;font:500 12px 'DM Sans',sans-serif!important;letter-spacing:.1em;text-transform:uppercase}
.esro-pdp form.cart .button:hover{background:#233027!important}
.esro-pdp .woocommerce-tabs ul.tabs{padding:0!important;margin:0 0 30px!important;border-bottom:1px solid #D8DDD6}
.esro-pdp .woocommerce-tabs ul.tabs::before,.esro-pdp .woocommerce-tabs ul.tabs li::before,.esro-pdp .woocommerce-tabs ul.tabs li::after{display:none!important}
.esro-pdp .woocommerce-tabs ul.tabs li{background:none!important;border:0!important;margin:0 28px 0 0!important;padding:0!important}
.esro-pdp .woocommerce-tabs ul.tabs li a{padding:0 0 12px!important;font:500 12px 'DM Sans',sans-serif!important;letter-spacing:.1em;text-transform:uppercase;color:#6C756D!important}
.esro-pdp .woocommerce-tabs ul.tabs li.active a{color:#233027!important;box-shadow:inset 0 -1px 0 #233027}
.esro-pdp .woocommerce-tabs .panel{color:#6C756D;line-height:1.8}
.esro-pdp .woocommerce-tabs .panel>h2:first-child{display:none}

/* Formularios */
.esro-form .elementor-field-group .elementor-field{border:0!important;border-bottom:1px solid rgba(35,48,39,.25)!important;border-radius:0!important;background:transparent!important;padding:12px 0!important;font:400 15px 'DM Sans',sans-serif;color:#233027}
.esro-form select.elementor-field,.esro-form .elementor-field-textual{border:0!important;border-bottom:1px solid rgba(35,48,39,.25)!important;border-radius:0!important;background:transparent!important;padding-left:0!important;box-shadow:none!important}
.esro-form .elementor-select-wrapper .select-caret-down-wrapper{right:0!important;color:#6C756D}
.esro-form .elementor-field:focus{border-bottom-color:#233027!important;box-shadow:none!important;outline:0}
.esro-form .elementor-field-label{font:600 10px 'DM Sans',sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#6C756D}
.esro-form .elementor-button{background:#26382F!important;border-radius:0!important;padding:17px 30px!important;font:500 12px 'DM Sans',sans-serif!important;letter-spacing:.1em;text-transform:uppercase}
.esro-form .elementor-field-type-acceptance label{font-size:12px;color:#6C756D}

/* Huecos por rellenar (se ven a propósito en staging) */
.esro-pend{background:rgba(214,170,60,.18);box-shadow:0 0 0 1px rgba(160,120,20,.35);padding:0 .25em;border-radius:2px;font-style:normal}
.esro-dark .esro-pend,.esro-hero .esro-pend{background:rgba(255,220,120,.22)}

/* Pasos */
.esro-step{border-top:1px solid rgba(35,48,39,.2)}
.esro-dark .esro-step{border-top-color:rgba(255,255,255,.25)}

/* Aparición suave al hacer scroll: solo con soporte nativo y sin "reducir movimiento" */
@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){
.esro-reveal{animation:esro-in linear both;animation-timeline:view();animation-range:entry 0% entry 30%}
@keyframes esro-in{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}}}

/* Carrito y checkout (bloques de Woo sobre Hello) */
.woocommerce-cart .site-main,.woocommerce-checkout .site-main,.woocommerce-account .site-main{max-width:1180px;margin:0 auto;padding:50px 24px 100px}
@media(max-width:767px){.woocommerce-cart .site-main,.woocommerce-checkout .site-main,.woocommerce-account .site-main{padding:32px 16px 70px}}
.woocommerce-cart .page-header .entry-title,.woocommerce-checkout .page-header .entry-title,.woocommerce-account .page-header .entry-title{font:500 clamp(40px,5vw,64px)/1 'Playfair Display',serif;letter-spacing:-.03em;margin:0 0 30px}
body .wp-block-woocommerce-cart.alignwide,body .wp-block-woocommerce-checkout.alignwide{margin-left:0!important;margin-right:0!important;max-width:100%!important;width:auto!important}
.wc-block-components-button:not(.is-link),.woocommerce-message .button,.woocommerce-info .button{background:#26382F!important;color:#fff!important;border-radius:0!important;font:500 12px 'DM Sans',sans-serif!important;letter-spacing:.1em;text-transform:uppercase;text-decoration:none!important;min-height:52px}
.wc-block-components-button:not(.is-link) .wc-block-components-button__text{text-decoration:none!important}
.wc-block-components-button:not(.is-link):hover{background:#233027!important}
.wc-block-components-text-input input,.wc-block-components-combobox .wc-block-components-combobox-control input,.wc-block-components-textarea,.wc-blocks-components-select .wc-blocks-components-select__select{border-radius:0!important;border-color:#D8DDD6!important}
.wc-block-components-quantity-.elementor-kit-6{border-radius:0!important}
.wc-block-cart-item__image img{aspect-ratio:4/5;object-fit:cover}
.wc-block-components-product-name{font:500 18px 'Playfair Display',serif!important;text-decoration:none!important;color:#233027!important}
.woocommerce-message .button{min-height:0;padding:10px 16px!important}
.esro-pdp .woocommerce-product-gallery__image img{aspect-ratio:4/5;object-fit:cover}

/* Woo: avisos y migas */
.woocommerce-message,.woocommerce-info{border-top-color:#26382F!important;background:#F7F5EF!important;color:#233027}
.woocommerce-message::before,.woocommerce-info::before{color:#26382F!important}
.woocommerce-breadcrumb{font-size:11px!important;letter-spacing:.08em;color:#6C756D!important}
.woocommerce-breadcrumb a{color:#6C756D!important}/* End custom CSS */