/*
Theme Name: Emerylan–Flexston
Theme URI: https://emerylan.com/
Author: Emerylan–Flexston
Description: Tema propio de bloques para abrasivos industriales, compatible con WooCommerce y el plugin EF Catálogo.
Version: 2.0.25
Requires at least: 6.6
Requires PHP: 8.0
Text Domain: emerylan-flexston
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/
@font-face{font-family:Barlow;font-style:normal;font-weight:400;font-display:swap;src:url('assets/barlow-regular.woff2') format('woff2')}
@font-face{font-family:Barlow;font-style:normal;font-weight:600;font-display:swap;src:url('assets/barlow-semibold.ttf') format('truetype')}
:root{--ef-ink:#303431;--ef-wine:#771f32;--ef-paper:#fff;--ef-mist:#f3f3f1;--ef-line:#d8dbd7;--ef-muted:#5e655f;--ef-blue:#2476b5;--ef-red:#da302b;--ef-space:clamp(24px,4vw,72px);--ef-radius:4px}
*{box-sizing:border-box}
html{scroll-padding-top:24px}
body{margin:0;color:var(--ef-ink);background:var(--ef-paper);font-family:Barlow,sans-serif;font-size:18px;line-height:1.6;-webkit-tap-highlight-color:transparent}
::selection{background:var(--ef-wine);color:white}
input,textarea{caret-color:var(--ef-wine)}
:focus-visible{outline:3px solid var(--ef-blue);outline-offset:5px}
a{color:inherit;text-underline-offset:4px;text-decoration-thickness:1px}
a:hover{color:var(--ef-wine)}
button,input,textarea,select{font:inherit}
button,summary{cursor:pointer}
img{max-width:100%;height:auto;vertical-align:middle}
figure{margin:0}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-weight:600;line-height:1.08;letter-spacing:-.025em;text-wrap:balance}
h1{font-size:clamp(42px,5.2vw,76px);margin-bottom:26px}
h2{font-size:clamp(30px,3.2vw,46px);margin-bottom:22px}
h3{font-size:25px;margin-bottom:18px}
p{margin-bottom:22px}
svg{flex-shrink:0;vertical-align:middle}
.wp-site-blocks{padding:0}
.wp-site-blocks>*,.ef-home>*,.ef-page>*{margin-block-start:0}
.ef-shell{width:min(100% - var(--ef-space)*2,1280px);margin-inline:auto}
.ef-lead{font-size:clamp(18px,1.65vw,22px);line-height:1.5;color:var(--ef-muted);max-width:43ch}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link:focus{clip:auto!important;height:auto;width:auto;left:20px;top:10px;padding:12px 20px;background:white;z-index:10000}
.ef-topline{font-size:13px;background:var(--ef-ink);color:white;letter-spacing:.02em}
.ef-topline .ef-shell{display:flex;justify-content:space-between;gap:20px;padding-block:8px}
.ef-topline a{text-decoration:none;color:white}
.ef-topline a:hover{text-decoration:underline}
.ef-header{min-height:106px;display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid var(--ef-line);position:relative;z-index:20}
.ef-brand,.custom-logo-link{display:block;flex-shrink:0;width:300px;overflow:hidden}
.ef-brand img{display:block;width:100%;height:64px;object-fit:cover;object-position:center}
.custom-logo-link img{width:100%;height:64px;object-fit:contain}
.ef-menu{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:26px;font-size:16px;font-weight:600}
.ef-menu a{text-decoration:none;display:inline-block;padding-block:8px}
.ef-menu a:hover{text-decoration:underline;text-decoration-color:var(--ef-red)}
.ef-menu .sub-menu{list-style:none;padding:8px;position:absolute;background:white;border:1px solid var(--ef-line);display:none;max-width:280px}
.ef-menu li:hover>.sub-menu,.ef-menu li:focus-within>.sub-menu{display:block}
.ef-header-tools{display:flex;align-items:center;gap:20px}
.ef-header-contact{font-size:15px;font-weight:600;white-space:nowrap;display:flex;gap:12px;align-items:center;text-decoration:none;color:var(--ef-wine)}
.ef-account,.ef-cart{font-size:14px;text-decoration:none}
.ef-search summary{list-style:none;padding:10px;line-height:1}
.ef-search summary::-webkit-details-marker,.ef-mobile-menu summary::-webkit-details-marker{display:none}
.ef-search form{position:absolute;right:0;top:calc(100% + 1px);background:white;padding:24px;width:min(460px,100%);box-shadow:0 12px 30px #3034311a}
.ef-search label{font-size:15px;display:block;margin-bottom:10px}
.ef-search form>div{display:flex;gap:8px}
.ef-search input{width:100%;min-width:0}
.ef-search button{background:var(--ef-wine);color:white;border:0;border-radius:4px;padding:10px 16px}
.ef-mobile-menu{display:none}
.ef-hero{padding-block:54px 34px}
.ef-hero-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(26px,4vw,64px);align-items:center}
.ef-hero-copy{padding-block:26px}
.ef-hero-copy h1{max-width:9.8ch}
.ef-hero-copy .wp-block-buttons{margin-top:30px}
.ef-hero-photo{position:relative}
.ef-hero-photo img{width:100%;height:clamp(360px,38vw,535px);object-fit:cover;border-radius:var(--ef-radius)}
.ef-hero-photo figcaption{font-size:12px;color:var(--ef-muted);line-height:1.4;margin-top:9px;text-align:right}
.ef-process-strip{padding-block:22px;border-top:1px solid var(--ef-line);border-bottom:1px solid var(--ef-line)}
.ef-process-strip p{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0;font-size:clamp(16px,2vw,24px);font-weight:600}
.ef-process-strip span{font-weight:400;color:var(--ef-wine)}
.wp-block-buttons{gap:12px;display:flex;flex-wrap:wrap}
.wp-block-button__link,.wp-element-button,.button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.wc-block-components-button{font-family:inherit;font-size:16px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:13px 22px;border:1px solid var(--ef-wine);border-radius:var(--ef-radius);background:var(--ef-wine);color:white;text-decoration:none;line-height:1.3;transition:background-color .18s ease-out,border-color .18s ease-out}
.wp-block-button__link:hover,.wp-element-button:hover,.button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover{background:#571424;color:white;border-color:#571424}
.is-style-outline .wp-block-button__link{background:transparent;color:var(--ef-ink);border:1px solid #969d96}
.is-style-outline .wp-block-button__link:hover{background:var(--ef-mist);border-color:var(--ef-ink)}
button:disabled,.button:disabled{opacity:.5;cursor:not-allowed}
.ef-catalogue-section{padding-block:84px 90px}
.ef-section-heading{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:35px}
.ef-section-heading h2{margin:0}
.ef-section-heading p{max-width:37ch;margin:0;color:var(--ef-muted)}
.ef-families{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border-top:1px solid var(--ef-line)}
.ef-family{grid-column:span 2;padding:26px 30px 28px 0;border-bottom:1px solid var(--ef-line);min-width:0}
.ef-family:nth-child(3n+2),.ef-family:nth-child(3n+3){padding-left:30px;border-left:1px solid var(--ef-line)}
.ef-family:nth-child(n+4){grid-column:span 3}
.ef-family:nth-child(4){border-left:0;padding-left:0}
.ef-family:nth-child(5){border-left:1px solid var(--ef-line);padding-left:30px}
.ef-family h3{font-size:25px;margin-bottom:18px}
.ef-family h3 a{display:flex;justify-content:space-between;gap:20px;text-decoration:none;align-items:start}
.ef-family h3 svg{color:var(--ef-wine);margin-top:3px}
.ef-family ul{padding:0;margin:0;list-style:none;font-size:16px;line-height:1.6;color:var(--ef-muted)}
.ef-family li+li{margin-top:6px}
.ef-family li a{text-decoration:none}
.ef-family li a:hover{text-decoration:underline}
.ef-family p{font-size:16px;color:var(--ef-muted);max-width:34ch;margin-bottom:0}
.ef-bespoke{background:var(--ef-wine);color:white;padding-block:66px}
.ef-bespoke-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:70px;align-items:center}
.ef-bespoke-copy p{max-width:48ch;color:#f0dce1;margin-bottom:0}
.ef-bespoke-action{border-left:1px solid #ab6676;padding-left:60px}
.ef-bespoke-action h3{font-size:30px}
.ef-bespoke-action .wp-block-button__link{background:white;color:var(--ef-wine);border-color:white}
.ef-bespoke-action .wp-block-button__link:hover{background:#f0dce1}
.ef-company-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:90px;padding-block:90px}
.ef-company-copy p{max-width:49ch;color:var(--ef-muted)}
.ef-company-detail{align-self:center;background:var(--ef-mist);padding:38px}
.ef-company-detail p{margin-bottom:0;color:var(--ef-muted)}
.ef-final-cta{display:flex;align-items:center;justify-content:space-between;gap:35px;padding-block:35px 50px;border-top:1px solid var(--ef-line)}
.ef-final-cta h2{font-size:30px;margin:0}
.ef-footer{border-top:1px solid var(--ef-line);background:var(--ef-mist);padding-top:54px;margin-block-start:0!important}
.ef-footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:70px;padding-bottom:50px}
.ef-footer .ef-brand{max-width:300px;margin-bottom:16px}
.ef-footer h2{font-size:19px;margin-bottom:20px}
.ef-footer p{font-size:15px;color:var(--ef-muted);margin-bottom:0}
.ef-footer-grid>div>a:not(.ef-brand){display:block;font-size:16px;margin-bottom:8px;text-decoration:none}
.ef-footer .ef-menu{display:block;font-size:16px;font-weight:400}
.ef-footer .ef-menu a{padding-block:3px}
.ef-footer-bottom{border-top:1px solid var(--ef-line);padding-block:20px;display:flex;justify-content:space-between;gap:25px;font-size:13px;color:var(--ef-muted)}
.ef-footer-bottom nav{display:flex;gap:18px;flex-wrap:wrap}
.ef-content-page{padding-block:64px 90px;min-height:55vh}
.ef-content-page>h1{font-size:clamp(36px,4vw,60px);margin-bottom:35px}
.ef-content-page .wp-block-post-content{max-width:100%}
.ef-page-intro{max-width:850px;margin-bottom:52px}
.ef-page-intro .ef-lead{max-width:55ch}
.ef-two-columns{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding-block:25px 45px}
.ef-content-column h2{font-size:32px}
.ef-content-column p{max-width:60ch;color:var(--ef-muted)}
.ef-contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:80px}
.ef-contact-details h2{font-size:26px}
.ef-contact-details h3{font-size:21px;margin-top:38px}
.ef-contact-details .ef-contact-large{font-size:clamp(21px,2vw,28px);margin-bottom:8px}
.ef-contact-large a{text-decoration:none;color:var(--ef-wine)}
.ef-contact-details p{color:var(--ef-muted)}
.ef-contact-box{padding:36px;background:var(--ef-mist)}
.ef-contact-box h2{font-size:30px}
.ef-contact-form label{display:block;margin-bottom:6px;font-size:16px;font-weight:600}
input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]),textarea,select{border:1px solid #9ca39c;border-radius:3px;background:white;color:var(--ef-ink);padding:11px 13px;max-width:100%;font-size:16px;min-height:46px}
.ef-contact-form input:not([type=checkbox]),.ef-contact-form textarea{width:100%}
.ef-contact-form textarea{resize:vertical}
.ef-contact-form .ef-check{font-size:14px;font-weight:400;line-height:1.5}
.ef-check input{width:18px;height:18px;accent-color:var(--ef-wine);vertical-align:middle;margin-right:7px}
.ef-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.ef-form-status{padding:16px;background:white;border:1px solid var(--ef-line)}
.ef-shop-intro{padding-top:56px}
.ef-shop-intro .ef-families{margin-bottom:48px}
.ef-shop-intro .ef-family{padding-top:22px;padding-bottom:20px}
.ef-shop-intro .ef-page-intro{margin-bottom:34px}
.ef-woo-content{padding-bottom:70px}
.ef-product-page{padding-top:45px}
.woocommerce-breadcrumb{font-size:14px!important;color:var(--ef-muted)!important;margin-bottom:32px!important}
.woocommerce .woocommerce-products-header h1{font-size:34px}
.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering{font-size:15px;margin-bottom:30px}
.woocommerce ul.products li.product h2.woocommerce-loop-product__title{font-size:21px;padding-block:14px 8px;line-height:1.25}
.woocommerce ul.products li.product img{border-radius:4px;background:var(--ef-mist)}
.woocommerce ul.products li.product .price,.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--ef-wine);font-size:22px;font-weight:600}
.woocommerce ul.products li.product .button{margin-top:12px}
.woocommerce div.product .product_title{font-size:clamp(32px,3vw,46px)}
.woocommerce div.product .product_meta{font-size:14px;margin-top:24px}
.woocommerce div.product .quantity input{max-width:90px}
.woocommerce div.product form.cart{display:flex;flex-wrap:wrap;align-items:center;gap:15px}
.woocommerce div.product form.variations_form{display:block}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding-left:0}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:transparent;border-radius:0;border:0}
.woocommerce div.product .woocommerce-tabs .panel h2{font-size:27px}
.woocommerce table.shop_attributes{font-size:16px}
.woocommerce table.shop_attributes td,.woocommerce table.shop_attributes th{padding:12px}
.woocommerce .woocommerce-info,.woocommerce .woocommerce-message,.woocommerce .woocommerce-error{border-top-color:var(--ef-wine);background:var(--ef-mist);color:var(--ef-ink);font-size:16px}
.ef-empty{background:var(--ef-mist);padding:40px;margin-block:35px}
.ef-empty h2{font-size:30px}
.ef-empty p{max-width:65ch}
.ef-catalogue .price,.ef-catalogue .onsale,.ef-catalogue .quantity,.ef-catalogue .single_add_to_cart_button{display:none!important}
.wc-block-cart,.wc-block-checkout{font-size:16px;--wc-form-color-border:#9ca39c;--wc-form-color-text:var(--ef-ink)}
.wc-block-components-product-name{font-weight:600;color:var(--ef-ink)}
.wc-block-components-totals-item{font-variant-numeric:tabular-nums}
.wc-block-components-button:not(.is-link){border-radius:4px}
.wc-block-components-text-input input,.wc-block-components-textarea{font-size:16px!important}
@media(min-width:1500px){.ef-hero-copy h1{font-size:80px}}
@media(max-width:1150px){.ef-brand,.custom-logo-link{width:250px}.ef-header{gap:20px}.ef-header-contact{display:none}.ef-menu{gap:22px}.ef-company-grid{gap:50px}}
@media(max-width:800px){.ef-desktop-nav{display:none}.ef-mobile-menu{display:block}.ef-mobile-menu summary{list-style:none;font-weight:600;font-size:16px;padding:10px 4px}.ef-mobile-menu nav{position:absolute;left:0;right:0;top:100%;background:white;padding:20px 0;border-block:1px solid var(--ef-line)}.ef-mobile-menu .ef-menu{display:block}.ef-mobile-menu .ef-menu a{padding:10px 22px;display:block}.ef-mobile-menu .sub-menu{position:static;display:block;border:0;padding:0 0 0 15px}.ef-header{min-height:92px}.ef-header-tools{gap:10px}.ef-hero-grid{grid-template-columns:1fr 1fr;gap:24px}.ef-hero-copy h1{font-size:48px}.ef-hero-copy .wp-block-buttons{display:block}.ef-hero-copy .wp-block-button{margin-bottom:10px}.ef-hero-photo img{height:410px}.ef-section-heading{display:block}.ef-section-heading h2{margin-bottom:20px}.ef-families{grid-template-columns:1fr 1fr}.ef-family,.ef-family:nth-child(n+4){grid-column:auto}.ef-family:nth-child(n){padding:24px 24px 24px 0;border-left:0}.ef-family:nth-child(even){padding-left:24px;border-left:1px solid var(--ef-line)}.ef-family:last-child{grid-column:1/-1}.ef-bespoke-grid{gap:35px}.ef-bespoke-action{padding-left:30px}.ef-company-grid{gap:35px}.ef-company-detail{padding:25px}.ef-footer-grid{gap:35px;grid-template-columns:1.3fr 1fr}.ef-footer-grid>div:last-child{grid-column:1/-1}.ef-footer-bottom{display:block}.ef-footer-bottom nav{margin-top:12px}.ef-contact-grid{gap:35px}.ef-contact-box{padding:24px}.ef-two-columns{gap:35px}}
@media(max-width:600px){:root{--ef-space:22px}.ef-topline .ef-shell{justify-content:center;font-size:12px}.ef-topline a{display:none}.ef-header{min-height:82px;gap:12px}.ef-brand,.custom-logo-link{width:218px}.ef-brand img,.custom-logo-link img{height:52px}.ef-header-tools{gap:6px}.ef-search summary{padding:8px}.ef-search summary svg{width:20px}.ef-hero{padding-block:28px 24px}.ef-hero-grid{display:flex;flex-direction:column;align-items:stretch;gap:24px}.ef-hero-copy{padding-block:0}.ef-hero-copy h1{font-size:52px;max-width:10ch;margin-bottom:22px}.ef-hero-copy .ef-lead{font-size:19px}.ef-hero-copy .wp-block-buttons{display:flex;margin-top:24px;gap:10px}.ef-hero-copy .wp-block-button{margin-bottom:0}.ef-hero-copy .wp-block-button__link{font-size:15px;padding:12px 16px}.ef-hero-photo img{height:300px}.ef-process-strip{padding-block:16px}.ef-process-strip p{font-size:16px;gap:6px}.ef-catalogue-section{padding-block:52px 55px}.ef-section-heading{margin-bottom:28px}.ef-families{display:block}.ef-family:nth-child(n){padding:24px 0;border-left:0}.ef-family h3{font-size:25px}.ef-bespoke{padding-block:45px}.ef-bespoke-grid{display:block}.ef-bespoke-action{border-left:0;border-top:1px solid #ab6676;padding:26px 0 0;margin-top:28px}.ef-bespoke-action h3{font-size:26px}.ef-company-grid{display:block;padding-block:52px}.ef-company-detail{margin-top:32px;padding:28px}.ef-final-cta{display:block;padding-block:28px 40px}.ef-final-cta h2{margin-bottom:25px;font-size:28px}.ef-footer{padding-top:32px}.ef-footer-grid{display:block;padding-bottom:25px}.ef-footer-grid>div{margin-bottom:28px}.ef-footer .ef-brand{width:260px}.ef-footer-grid>div:first-child p{margin-top:10px}.ef-footer .ef-menu{display:grid;grid-template-columns:1fr 1fr;gap:4px 16px}.ef-footer h2{margin-bottom:12px}.ef-content-page{padding-block:35px 55px}.ef-page-intro{margin-bottom:32px}.ef-page-intro h1{font-size:42px}.ef-contact-grid,.ef-two-columns{display:block}.ef-contact-box{margin-top:32px;padding:24px}.ef-content-column{margin-bottom:30px}.ef-shop-intro{padding-top:32px}.ef-shop-intro .ef-family{padding-block:20px}.ef-shop-intro .ef-page-intro h1{font-size:42px}.ef-empty{padding:25px}.ef-empty h2{font-size:26px}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{width:100%!important;float:none;margin-right:0}.woocommerce .woocommerce-ordering{float:none}.ef-account{display:none}.ef-cart{font-size:13px}.ef-product-page{padding-top:25px}}
@media(max-width:370px){.ef-brand,.custom-logo-link{width:184px}.ef-hero-copy h1{font-size:46px}.ef-process-strip p{font-size:14px}.ef-hero-copy .wp-block-buttons{display:block}.ef-hero-copy .wp-block-button{margin-bottom:10px}}
@media(max-width:600px){.ef-shop .ef-brand,.ef-shop .custom-logo-link{width:175px}.ef-shop .ef-header{gap:8px}.ef-shop .ef-header-tools{gap:6px}}
@media(max-width:370px){.ef-shop .ef-brand,.ef-shop .custom-logo-link{width:150px}}
/* Integrated WordPress header: logo, navigation and product search. */
.ef-native-header{width:100%;max-width:none;margin:0!important;position:relative;z-index:30}
.ef-native-header>*{margin-block-start:0!important}
.ef-mobile-panel{display:none}
.wp-site-blocks>header.wp-block-template-part{position:sticky;top:0;z-index:1000}
html{scroll-padding-top:130px}
body.admin-bar .wp-site-blocks>header.wp-block-template-part{top:32px}
@media(max-width:1199px){html{scroll-padding-top:104px}}
@media(max-width:782px){body.admin-bar .wp-site-blocks>header.wp-block-template-part{top:46px}}
@media(max-width:600px){body.admin-bar .wp-site-blocks>header.wp-block-template-part{top:0}}
.ef-footer{background:var(--ef-wine);color:white;border-top-color:#a25768}
.ef-footer h2,.ef-footer a{color:white}
.ef-footer p,.ef-footer-bottom{color:#f4dfe6}
.ef-footer-bottom{border-top-color:#a25768}
.ef-footer a:hover{color:#f4dfe6;text-decoration:underline}
.ef-footer :focus-visible{outline-color:white}
.ef-footer .ef-brand,.ef-footer .custom-logo-link{padding:0 10px;background:white;border-radius:999px}
.ef-native-brand{display:grid!important;grid-template-columns:210px minmax(0,1fr) 210px;width:100%;min-height:106px;padding:16px 24px;gap:32px;background:var(--ef-wine);color:white}
.ef-native-logo{margin:0;width:100%;min-width:0}.ef-native-logo>a{display:block;width:100%;padding:0 8px;background:white;border-radius:999px;overflow:hidden}.ef-native-logo img{display:block;width:100%;height:56px;object-fit:cover}
.ef-native-tools{min-width:0;gap:10px}.ef-native-search{width:100%;margin:0}.ef-native-search .wp-block-search__inside-wrapper{padding:0;border:1px solid #adb2ad;border-radius:4px;overflow:hidden}.ef-native-search input{width:100%;min-width:0;border:0!important;min-height:42px!important;padding:8px 10px!important}.ef-native-search .wp-block-search__button{border:0;border-radius:0;background:white;color:var(--ef-wine);margin:0;padding:6px 8px;min-height:42px}
.ef-native-nav{width:100%;min-width:0;max-width:none;padding:0;background:var(--ef-wine);color:white;font-size:15px;font-weight:600;line-height:1.35}
.ef-native-nav .wp-block-navigation__container{width:auto;gap:4px;justify-content:center;align-items:center}
.ef-native-nav .wp-block-navigation-item{min-width:0;flex-shrink:0}
.ef-native-nav .wp-block-navigation-item__content,.ef-native-nav .wp-block-navigation-submenu__toggle{padding:12px 6px;min-height:48px;border-radius:6px;color:inherit;text-decoration:none;white-space:nowrap}
.ef-native-nav .wp-block-navigation-submenu__toggle{display:flex;align-items:center;gap:4px;text-align:left}
.ef-native-nav .wp-block-navigation-item__content:hover,.ef-native-nav .wp-block-navigation-submenu__toggle:hover{background:#ffffff18;color:white;text-decoration:none}
.ef-native-nav .wp-block-navigation__submenu-container{min-width:300px!important;padding:10px;background:white!important;color:var(--ef-ink)!important;border:1px solid #e5ccd2!important;border-top:3px solid var(--ef-wine)!important;border-radius:14px;box-shadow:0 14px 30px #30343124}
.ef-native-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content{padding:11px 14px;min-height:0;border-radius:8px;white-space:normal;font-size:16px;font-weight:400;line-height:1.4;color:var(--ef-ink)}
.ef-native-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover{background:#f7edf0;color:var(--ef-wine)}
.ef-native-nav :focus-visible{outline-color:white;outline-offset:-3px}
.ef-native-nav .wp-block-navigation__submenu-container :focus-visible{outline-color:var(--ef-wine)}
.ef-native-nav .ef-nav-contact{margin-left:8px}
.ef-native-nav .ef-nav-contact>.wp-block-navigation-item__content{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 14px;border:1px solid white;border-radius:8px;background:white;color:var(--ef-wine);font-weight:600}
.ef-native-nav .ef-nav-contact>.wp-block-navigation-item__content:hover{background:#f4dfe6;border-color:#f4dfe6;color:var(--ef-wine)}
.ef-native-nav .ef-nav-contact>.wp-block-navigation-item__content:focus-visible{outline-offset:4px}
@media(min-width:1200px){.ef-native-nav .wp-block-navigation__responsive-container-open{display:none!important}.ef-native-nav .wp-block-navigation__responsive-container:not(:is(.is-menu-open,.ef-motion-closing)){display:block!important}}
@media(min-width:1500px){.ef-native-brand{grid-template-columns:260px minmax(0,1fr) 240px;gap:48px;padding-inline:36px}.ef-native-nav{font-size:16px}.ef-native-nav .wp-block-navigation-item__content,.ef-native-nav .wp-block-navigation-submenu__toggle{padding-inline:6px}}
@media(max-width:1199px){
  .ef-native-brand{grid-template-columns:56px minmax(0,1fr);min-height:80px;padding:12px 20px;gap:20px}
  .ef-native-logo{width:56px;height:56px}
  .ef-native-logo>a{position:relative;height:56px;padding:0}
  /* Reuse the approved mark from the full logo without a second image asset. */
  .ef-native-logo img{position:absolute;left:0;top:-10px;width:236px;max-width:none;height:auto;object-fit:contain;clip-path:inset(0 calc(100% - 50px) 0 0)}
  .ef-native-tools{display:none!important}
  .ef-native-nav{width:auto;justify-self:end;justify-content:flex-end}
  .ef-native-nav .wp-block-navigation__responsive-container-open{display:flex!important;align-items:center;justify-content:center;min-width:48px;min-height:48px;padding:10px;color:white;border:1px solid #ffffff50;border-radius:12px}
  .ef-native-nav .wp-block-navigation__responsive-container:not(:is(.is-menu-open,.ef-motion-closing)){display:none!important}
  .ef-native-nav .wp-block-navigation__responsive-container:is(.is-menu-open,.ef-motion-closing){inset:0 0 0 auto;width:min(390px,calc(100vw - 20px));height:100dvh;padding:28px 24px;background:var(--ef-wine)!important;color:white!important;border-radius:20px 0 0 20px;box-shadow:0 0 0 100vmax #0006;overscroll-behavior:contain}
  .ef-native-nav :is(.is-menu-open,.ef-motion-closing) .wp-block-navigation__responsive-container-content{padding-top:0!important;align-items:stretch!important}
  .ef-native-nav :is(.is-menu-open,.ef-motion-closing) .wp-block-navigation__container{display:none!important}
  .ef-native-nav .wp-block-navigation__responsive-container-close{top:0;right:0;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;color:white;border:1px solid #ffffff50;border-radius:50%;background:#ffffff0c}
  .ef-native-nav :is(.is-menu-open,.ef-motion-closing) .ef-mobile-panel{display:block;width:100%;font-size:17px;font-weight:400}
  .ef-mobile-panel>*{margin-block-start:0!important}
  .ef-mobile-panel h2{margin:4px 60px 28px 0;font-size:30px;color:white;line-height:1.2}
  .ef-mobile-panel h2 a{color:inherit;text-decoration:none}
  .ef-mobile-panel p{margin:0}
  .ef-panel-search{width:100%;margin:0 0 28px!important}
  .ef-panel-search .wp-block-search__inside-wrapper{padding:0;border:1px solid #d4c7cb;background:#faf7f8;border-radius:12px;overflow:hidden}
  .ef-panel-search input{width:100%;min-width:0;min-height:48px;padding:12px!important;font-size:16px;color:var(--ef-ink);border:0!important;background:transparent}
  .ef-panel-search input::placeholder{color:#6c5c61;opacity:1}
  .ef-panel-search .wp-block-search__button{margin:0;padding:10px 12px;border:0;background:transparent;color:var(--ef-wine)}
  .ef-mobile-family{width:100%;margin:0!important;border-bottom:1px solid #a25768}
  .ef-mobile-family summary,.ef-mobile-family>p>a{position:relative;display:flex;align-items:center;min-height:58px;margin:0;padding:14px 44px 14px 0;color:white;font-size:18px;font-weight:600;line-height:1.4;text-decoration:none;list-style:none;cursor:pointer}
  .ef-mobile-family summary::-webkit-details-marker{display:none}
  .ef-mobile-family summary::before,.ef-mobile-family summary::after{content:"";position:absolute;right:8px;top:calc(50% - 1px);width:14px;height:2px;background:white}
  .ef-mobile-family summary::after{transform:rotate(90deg)}
  .ef-mobile-family[open] summary::after{display:none}
  .ef-mobile-family[open] summary{color:white}
  .ef-mobile-subcategories{margin:0!important;padding:0 0 12px 12px}
  .ef-mobile-subcategories a{display:flex;align-items:center;min-height:44px;padding:10px 12px;color:#f4dfe6;font-size:16px;line-height:1.45;text-decoration:none;border-radius:8px}
  .ef-mobile-subcategories a:hover,.ef-mobile-subcategories a:focus-visible{background:#ffffff18;color:white}
  .ef-mobile-company{margin:24px 0 0!important}
  .ef-native-nav .ef-mobile-company a{display:flex;align-items:center;min-height:52px;padding:14px 0;font-family:inherit;font-size:18px;font-weight:600;line-height:1.4;text-decoration:none;color:white}
  .ef-native-nav .ef-mobile-company>p:not(.ef-mobile-contact)>a:hover{text-decoration:underline;text-underline-offset:5px}
  .ef-native-nav .ef-mobile-company .ef-mobile-contact{margin-top:16px}
  .ef-native-nav .ef-mobile-contact a{width:100%;min-height:52px;justify-content:center;padding:12px 20px;border:1px solid white;border-radius:10px;background:white;color:var(--ef-wine)}
  .ef-native-nav .ef-mobile-contact a:hover{background:#f4dfe6;border-color:#f4dfe6;color:var(--ef-wine)}
  .ef-native-nav :is(.is-menu-open,.ef-motion-closing) :focus-visible{outline-color:white;outline-offset:2px}
  .ef-native-nav :is(.is-menu-open,.ef-motion-closing) .ef-panel-search :focus-visible{outline-color:var(--ef-wine);outline-offset:-3px}
}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}






/* Homepage 1.1.0: carousel, product folders and image slots. */
.ef-home-v2{--ef-home-ease:cubic-bezier(.23,1,.32,1)}
.ef-home-v2 [hidden]{display:none!important}
.ef-home-carousel{position:relative;isolation:isolate;width:100%;height:clamp(540px,calc(100svh - 106px),760px);overflow:hidden;background:#343936}
.ef-home-slide{position:absolute;inset:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity 600ms var(--ef-home-ease),visibility 600ms}
.ef-home-slide.is-active{opacity:1;visibility:visible;pointer-events:auto}
.ef-image-placeholder{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;overflow:hidden;background:#e7e9e5;color:#596159;border:1px dashed #a8afa7;text-align:center}
.ef-image-placeholder>span{padding:16px;font-size:14px;line-height:1.5;max-width:26ch}
.ef-image-placeholder>img,.ef-image-placeholder>.wp-block-image,.ef-image-placeholder>.wp-block-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;margin:0}
.ef-image-placeholder:has(img)>span{display:none}
.ef-slide-media{position:absolute;inset:0;min-height:100%;border:0;background:#444b46;color:#e1e5df;justify-content:flex-end;align-items:flex-start;text-align:right}
.ef-slide-media>span{position:absolute;z-index:2;right:32px;top:26px;max-width:none;padding:10px 14px;border:1px solid #ffffff45;border-radius:4px;font-size:13px}
.ef-slide-discos .ef-slide-media{background:#48504d}.ef-slide-muelas .ef-slide-media{background:#4e4849}
.ef-slide-shade{position:absolute;inset:0;background:linear-gradient(90deg,#270c16ed 0%,#371721cc 35%,#242d2866 75%,#242d2826 100%)}
.ef-slide-content{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;height:100%;padding-block:64px;color:white}
.ef-slide-content h2{max-width:16ch;margin:0 0 26px;font-size:clamp(48px,6vw,88px);line-height:1.03;letter-spacing:-.035em;text-wrap:balance;color:white}
.ef-slide-content p{max-width:48ch;margin:0 0 32px;font-size:clamp(18px,1.7vw,22px);line-height:1.5;color:#f5eaf0}
.ef-home-button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:14px 24px;border:1px solid transparent;border-radius:8px;font-size:16px;font-weight:600;line-height:1.35;text-decoration:none}
.ef-home-button-light{background:white;color:var(--ef-wine)}
.ef-home-button-light:hover{background:#f4dfe6;color:var(--ef-wine)}
.ef-home-button-wine{background:var(--ef-wine);color:white}
.ef-home-button-wine:hover{background:#571424;color:white}
.ef-home-products{padding-block:88px 96px}
.ef-home-section-intro{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:end;margin-bottom:40px}
.ef-home-section-intro h2{margin:0;font-size:clamp(36px,4vw,56px)}
.ef-home-section-intro p{max-width:55ch;margin:0 0 14px;line-height:1.6}
.ef-home-section-intro .ef-catalogue-note{margin:0;color:var(--ef-muted);font-size:14px}
.ef-folder-tabs{display:flex;gap:8px;max-width:100%;padding:8px 0 0;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#bba5ac transparent}
.ef-folder-tabs button{flex:1 0 auto;position:relative;min-height:62px;padding:16px 22px;border:1px solid var(--ef-line);border-bottom:0;border-radius:14px 14px 0 0;background:#eceeea;color:var(--ef-ink);font-size:17px;font-weight:600;line-height:1.35;white-space:nowrap}
.ef-folder-tabs button[aria-selected=true]{background:var(--ef-wine);border-color:var(--ef-wine);color:white}
.ef-folder-tabs button:hover:not([aria-selected=true]){background:#e4d8dc;color:var(--ef-wine)}
.ef-folder-tabs button:focus-visible{outline-offset:-5px}
.ef-folder-tabs button[aria-selected=true]:focus-visible{outline-color:white}
.ef-product-panel{margin:0 0 24px;padding:30px;border:1px solid var(--ef-line);border-top:3px solid var(--ef-wine);border-radius:0 0 18px 18px;background:#fafbf8}
.ef-product-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}
.ef-product-panel-heading h3{margin:0;font-size:26px}
.ef-product-panel-heading>a{min-height:44px;display:flex;align-items:center;font-size:15px;font-weight:600;color:var(--ef-wine);text-underline-offset:5px}
.ef-home-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.ef-home-product-card{min-width:0;overflow:hidden;border:1px solid #dce0d8;border-radius:14px;background:white}
.ef-home-product-card .ef-image-placeholder{aspect-ratio:4/3;border-width:0 0 1px;background:#e9ece6}
.ef-product-card-copy{padding:22px 20px 24px}
.ef-product-card-copy h4{margin:0 0 10px;font-size:20px;font-weight:600;line-height:1.25;letter-spacing:-.015em}
.ef-product-card-copy p{margin:0;font-size:15px;line-height:1.5;color:var(--ef-muted)}
.ef-home-bespoke{padding-block:80px;background:var(--ef-wine);color:white}
.ef-home-feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,6vw,88px);align-items:center}
.ef-feature-image{aspect-ratio:5/4;border-radius:16px}
.ef-home-bespoke .ef-feature-image{background:#672134;border-color:#c48e9d;color:#f4dfe6}
.ef-home-feature-copy h2{margin-bottom:26px;font-size:clamp(36px,4vw,56px)}
.ef-home-feature-copy p{max-width:54ch;margin-bottom:26px;line-height:1.65}
.ef-home-bespoke p{color:#f4dfe6}
.ef-home-company{padding-block:96px}
.ef-home-company p{color:var(--ef-muted)}
.ef-home-categories{padding-block:80px 88px;background:var(--ef-mist)}
.ef-home-categories .ef-home-section-intro{align-items:center}
.ef-home-categories .ef-home-section-intro>p{margin:0;color:var(--ef-muted)}
.ef-category-photo-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}
.ef-category-photo-card{min-width:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid #d8dcd6;border-radius:16px;background:white;color:var(--ef-ink);text-decoration:none}
.ef-category-photo-card .ef-image-placeholder{aspect-ratio:4/5;border-width:0 0 1px}
.ef-category-photo-card h3{display:flex;align-items:center;flex:1;margin:0;padding:22px 18px;min-height:96px;font-size:22px;line-height:1.25;color:inherit}
.ef-category-photo-card:hover{border-color:var(--ef-wine);color:var(--ef-wine);background:#f7edf0}
.ef-category-photo-card:focus-visible{outline-color:var(--ef-wine);outline-offset:5px}
@media(max-width:1100px){.ef-category-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.ef-home-categories{padding-block:48px 52px}.ef-category-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.ef-category-photo-card h3{padding:18px 14px;min-height:86px;font-size:20px}.ef-category-photo-card .ef-image-placeholder>span{padding:12px;font-size:13px}}
.ef-home-contact{padding-block:64px;background:#f0e7ea}
.ef-home-contact>.ef-shell{display:flex;align-items:center;justify-content:space-between;gap:40px}
.ef-home-contact h2{margin:0 0 18px;font-size:clamp(32px,3.5vw,48px)}
.ef-home-contact p{max-width:50ch;margin:0;color:#63545a}
.ef-home-contact .ef-home-button{flex-shrink:0}
@media(max-width:1100px){.ef-home-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ef-folder-tabs button{padding-inline:20px}.ef-home-section-intro{gap:36px}.ef-home-feature-grid{gap:40px}}
@media(max-width:1199px){.ef-home-carousel{height:clamp(540px,calc(100svh - 80px),760px)}}
@media(max-width:600px){.ef-home-carousel{height:calc(100svh - 80px);min-height:540px;max-height:850px}.ef-slide-content{padding-block:90px 48px}.ef-slide-content h2{font-size:clamp(42px,11vw,56px);margin-bottom:24px}.ef-slide-content p{font-size:18px;margin-bottom:28px;max-width:31ch}.ef-slide-media>span{top:20px;right:20px;left:20px;text-align:center}.ef-slide-shade{background:linear-gradient(90deg,#270c16eb,#371721b8)}.ef-home-products{padding-block:56px}.ef-home-section-intro{display:block;margin-bottom:28px}.ef-home-section-intro h2{font-size:36px;margin-bottom:24px}.ef-folder-tabs button{min-height:58px;padding:15px 20px;font-size:16px}.ef-product-panel{padding:20px 16px;border-radius:0 0 14px 14px}.ef-product-panel-heading{margin-bottom:18px;gap:12px}.ef-product-panel-heading h3{font-size:23px}.ef-home-product-grid{grid-template-columns:minmax(0,1fr);gap:20px}.ef-product-card-copy{padding:22px}.ef-home-feature-grid{display:flex;flex-direction:column;gap:30px;align-items:stretch}.ef-home-bespoke{padding-block:48px}.ef-home-bespoke .ef-home-feature-copy{order:-1}.ef-home-feature-copy h2{font-size:36px}.ef-home-company{padding-block:56px}.ef-home-contact{padding-block:44px}.ef-home-contact>.ef-shell{display:block}.ef-home-contact .ef-home-button{margin-top:28px}.ef-home-contact h2{font-size:34px}}
@media(prefers-reduced-motion:reduce){.ef-home-slide{transition:none}}



/* Supplied photography and native WooCommerce homepage products, 1.3.0. */
.ef-supplied-image{position:relative;overflow:hidden;min-width:0;background:#eceeea}
.ef-supplied-image img{display:block;width:100%;height:100%;object-fit:cover}
.ef-feature-image.ef-supplied-image img{position:absolute;inset:0}
.ef-slide-media.ef-supplied-image{position:absolute;inset:0;background:#444b46}
.ef-slide-media.ef-supplied-image img{position:absolute;inset:0;object-fit:cover;object-position:center}
.ef-home-product-grid .ef-supplied-image{aspect-ratio:4/3}
.ef-category-photo-card .ef-supplied-image{aspect-ratio:4/5;border-bottom:1px solid #d8dcd6}
.ef-category-photo-card .ef-category-product-photo img{object-fit:contain;padding:18px}
:is(.ef-home-live-products,.ef-archive-results,.ef-product-page .related,.ef-product-page .up-sells) ul.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:0;padding:0}
:is(.ef-home-live-products,.ef-archive-results,.ef-product-page .related,.ef-product-page .up-sells) ul.products::before,:is(.ef-home-live-products,.ef-archive-results,.ef-product-page .related,.ef-product-page .up-sells) ul.products::after{display:none}
:is(.ef-home-live-products,.ef-archive-results,.ef-product-page .related,.ef-product-page .up-sells) ul.products li.product{display:flex;flex-direction:column;float:none;width:auto!important;margin:0;padding:0;overflow:hidden;border:1px solid #dce0d8;border-radius:14px;background:var(--ef-ink)}
:is(.ef-home-live-products,.ef-archive-results,.ef-product-page .related,.ef-product-page .up-sells) ul.products li.product a img{display:block;width:100%;box-sizing:border-box;aspect-ratio:1;object-fit:contain;background:white;border-radius:0;padding:18px;margin:0;flex:none}
:is(.ef-home-live-products,.ef-archive-results,.ef-product-page .related,.ef-product-page .up-sells) ul.products li.product h2.woocommerce-loop-product__title{margin:0;padding:20px 18px;color:white;font-size:20px;line-height:1.3;overflow-wrap:anywhere}
:is(.ef-home-live-products,.ef-archive-results,.ef-product-page .related,.ef-product-page .up-sells) ul.products li.product .button{margin:0 18px 18px;align-self:flex-start;white-space:normal}
.ef-home-live-products .woocommerce-info,.ef-archive-results .woocommerce-info{margin:0;background:#f0e7ea;color:var(--ef-wine);border-top-color:var(--ef-wine)}
.ef-home-live-products:has(li.product) .ef-products-empty{display:none}
.ef-products-empty{margin:0;padding:24px;background:#f0e7ea;border-radius:12px;color:var(--ef-wine);line-height:1.6}
.ef-company-supplied{margin-block:0 64px;aspect-ratio:12/5;border-radius:16px}
.ef-company-supplied img{object-fit:contain}
@media(max-width:1100px){:is(.ef-home-live-products,.ef-archive-results,.ef-product-page .related,.ef-product-page .up-sells) ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){:is(.ef-home-live-products,.ef-archive-results,.ef-product-page .related,.ef-product-page .up-sells) ul.products{grid-template-columns:minmax(0,1fr)}.ef-company-supplied{aspect-ratio:5/4;margin-bottom:44px}}


/* Category archives: native WooCommerce loop and contextual navigation. */
.ef-product-archive{padding-block:32px 80px}
.ef-product-archive .ef-archive-breadcrumb{margin:0 0 20px!important;font-size:14px!important;line-height:1.6;overflow-wrap:anywhere}
.ef-product-archive .ef-archive-breadcrumb a{color:var(--ef-muted)}
.ef-product-archive .ef-archive-breadcrumb span{padding-inline:6px;color:var(--ef-muted)}
.ef-archive-title{margin:0 0 40px;font-size:clamp(34px,4vw,56px);line-height:1.12}
.ef-archive-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:40px;align-items:start}
.ef-archive-layout>*{margin-block-start:0!important}
.ef-archive-aside{min-width:0;padding:24px 16px;border:0;border-radius:14px;background:#f7f4f5}
.ef-archive-nav-group+.ef-archive-nav-group{margin-top:28px;padding-top:24px;border-top:1px solid var(--ef-line)}
.ef-archive-nav-group h2{margin:0 0 14px;font-size:20px;line-height:1.3;letter-spacing:-.015em;overflow-wrap:anywhere}
.ef-archive-navigation ul{margin:0;padding:0;list-style:none}
.ef-archive-navigation li+li{margin-top:4px}
.ef-archive-navigation li>a{display:flex;align-items:center;min-height:44px;padding:10px 12px;border-radius:8px;font-size:16px;line-height:1.4;text-decoration:none;overflow-wrap:anywhere}
.ef-archive-navigation li>a:hover{background:#e9d9de;color:var(--ef-wine)}
.ef-archive-navigation a[aria-current=page]{background:var(--ef-wine);color:white;font-weight:600}
.ef-archive-navigation .ef-archive-ancestor{background:#f0e7ea;color:var(--ef-wine);font-weight:600}
.ef-archive-parent{display:block;margin-bottom:22px;font-size:15px;line-height:1.5;color:var(--ef-wine);text-underline-offset:4px}
.ef-archive-results{min-width:0;padding:0}
.ef-archive-results ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}
:is(.ef-home-live-products,.ef-archive-results,.ef-product-page .related,.ef-product-page .up-sells) ul.products li.product .woocommerce-loop-product__link{display:flex;flex:1;flex-direction:column;color:white;text-decoration:none}
.ef-archive-results .woocommerce-products-header:empty{display:none}
.ef-archive-results .woocommerce-result-count{float:none;display:block;margin:0 0 14px}
.ef-archive-results .woocommerce-ordering{float:none;display:flex;justify-content:flex-end;margin:0 0 24px}
.ef-archive-results .woocommerce-ordering select{max-width:100%;min-height:44px;padding:10px 36px 10px 12px;border:1px solid var(--ef-line);border-radius:8px;background:white;color:var(--ef-ink);font-size:15px}
.ef-archive-results .woocommerce-pagination{margin-top:32px}
.ef-archive-results .woocommerce-pagination ul{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;border:0}
.ef-archive-results .woocommerce-pagination ul li{border:0}
.ef-archive-results .woocommerce-pagination ul li a,.ef-archive-results .woocommerce-pagination ul li span{display:grid;place-items:center;min-width:44px;min-height:44px;padding:10px;border:1px solid var(--ef-line);border-radius:8px;background:white;color:var(--ef-wine);font-size:16px}
.ef-archive-results .woocommerce-pagination ul li .current{background:var(--ef-wine);border-color:var(--ef-wine);color:white}
.ef-archive-results .woocommerce-pagination ul li a:hover{background:#f0e7ea}
.ef-archive-results .ef-empty{margin-top:0;border-radius:14px}
@media(max-width:1100px){.ef-archive-layout{grid-template-columns:260px minmax(0,1fr);gap:28px}.ef-archive-results ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:780px){.ef-product-archive{padding-block:24px 52px}.ef-archive-title{margin-bottom:28px}.ef-archive-layout{grid-template-columns:minmax(0,1fr);gap:32px}.ef-archive-aside{padding:20px}.ef-archive-navigation ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 8px}.ef-archive-navigation li+li{margin:0}.ef-archive-nav-group+.ef-archive-nav-group{margin-top:20px;padding-top:20px}}
@media(max-width:600px){.ef-archive-results ul.products{grid-template-columns:minmax(0,1fr)}.ef-archive-results .woocommerce-ordering{justify-content:flex-start}.ef-archive-results .ef-empty{padding:24px}.ef-archive-navigation ul{grid-template-columns:minmax(0,1fr)}}


/* Compact family rows; connectors belong only to their child branches. */
.ef-branched-navigation{--ef-branch-line:#d1b9c1}
.ef-branched-navigation>h2{margin:0 12px 20px;font-size:19px;line-height:1.3;letter-spacing:-.015em}
.ef-branched-navigation .ef-tree-all{display:flex;align-items:center;min-height:44px;margin:0 0 16px;padding:10px 12px;border-bottom:1px solid #dfd2d6;border-radius:0;font-size:15px;font-weight:600;text-decoration:none}
.ef-branched-navigation .ef-category-tree,.ef-branched-navigation .ef-category-tree ul{display:block;margin:0;padding:0;list-style:none}
.ef-branched-navigation .ef-category-tree ul{margin:2px 0 12px 20px;padding-left:18px}
.ef-branched-navigation .ef-category-tree li{position:relative;min-width:0;margin:0;padding:0}
.ef-category-tree>.ef-tree-node+li{margin-top:4px}
.ef-category-tree ul>.ef-tree-node::before{content:"";position:absolute;left:-18px;top:-2px;bottom:0;border-left:1px solid var(--ef-branch-line);pointer-events:none}
.ef-category-tree ul>.ef-tree-node::after{content:"";position:absolute;left:-18px;top:10px;width:14px;height:12px;border-left:1px solid var(--ef-branch-line);border-bottom:1px solid var(--ef-branch-line);border-radius:0 0 0 9px;pointer-events:none}
.ef-category-tree ul>.ef-tree-node:last-child::before{bottom:auto;height:14px}
.ef-category-tree ul>.is-current-path::after{border-color:var(--ef-wine)}
.ef-branched-navigation .ef-tree-link{display:flex;align-items:center;min-height:44px;padding:9px 12px;border-radius:8px;color:var(--ef-ink);font-size:16px;font-weight:600;line-height:1.4;text-decoration:none;overflow-wrap:normal;word-break:normal}
.ef-category-tree ul .ef-tree-link{padding:9px 10px;font-size:15px;font-weight:400}
.ef-category-tree .ef-tree-branch{margin:0;padding:0;border:0;background:transparent}
.ef-category-tree .ef-tree-branch>summary{position:relative;display:flex;align-items:center;min-height:44px;padding:0 44px 0 0;border-radius:8px;list-style:none;cursor:pointer}
.ef-category-tree summary::-webkit-details-marker{display:none}
.ef-category-tree summary>.ef-tree-link{flex:1;min-width:0}
.ef-category-tree .ef-tree-toggle{position:absolute;right:8px;top:calc(50% - 10px);width:20px;height:20px;border:0;border-radius:5px;background:transparent;color:var(--ef-wine);pointer-events:none}
.ef-category-tree .ef-tree-toggle::before,.ef-category-tree .ef-tree-toggle::after{content:"";position:absolute;left:5px;top:9px;width:10px;height:1.5px;background:currentColor}
.ef-category-tree .ef-tree-toggle::after{transform:rotate(90deg);transition:transform 160ms cubic-bezier(.23,1,.32,1)}
.ef-category-tree .ef-tree-branch[open]>summary>.ef-tree-toggle::after{transform:rotate(0deg)}
.ef-branched-navigation a[aria-current=page]{background:var(--ef-wine);color:white;font-weight:600}
.ef-category-tree summary:has(>[aria-current=page]){background:var(--ef-wine)}
.ef-category-tree summary:has(>[aria-current=page])>.ef-tree-toggle{color:white}
.ef-branched-navigation .is-current-path>details>summary>.ef-tree-link:not([aria-current=page]){color:var(--ef-wine)}
.ef-branched-navigation a:focus-visible,.ef-branched-navigation summary:focus-visible{outline:3px solid var(--ef-blue);outline-offset:2px}
@media(hover:hover) and (pointer:fine){.ef-branched-navigation .ef-tree-link:hover,.ef-branched-navigation .ef-tree-all:hover{background:#ecdee3;color:var(--ef-wine)}.ef-branched-navigation a[aria-current=page]:hover{background:#571424;color:white}.ef-category-tree summary:hover>.ef-tree-toggle{background:#ecdee3;color:var(--ef-wine)}}

/* Strong product cards, shared by category archives and the homepage. */
:is(.ef-home-live-products,.ef-archive-results,.ef-product-page .related,.ef-product-page .up-sells) ul.products li.product{border:2px solid #946170;border-radius:16px;box-shadow:0 6px 16px #35121b1f;position:relative;transition:transform 220ms cubic-bezier(.23,1,.32,1)}
:is(.ef-home-live-products,.ef-archive-results,.ef-product-page .related,.ef-product-page .up-sells) ul.products li.product a img{transition:transform 220ms cubic-bezier(.23,1,.32,1)}
:is(.ef-home-live-products,.ef-archive-results,.ef-product-page .related,.ef-product-page .up-sells) ul.products li.product .button{min-height:44px;padding:12px 16px;border:1px solid white;border-radius:8px;background:white;color:var(--ef-wine);font-weight:600;line-height:1.35;text-align:center}
:is(.ef-home-live-products,.ef-archive-results,.ef-product-page .related,.ef-product-page .up-sells) ul.products li.product:focus-within{border-color:var(--ef-wine);box-shadow:0 14px 28px #35121b33}
@media(hover:hover) and (pointer:fine){
  :is(.ef-home-live-products,.ef-archive-results,.ef-product-page .related,.ef-product-page .up-sells) ul.products li.product:hover{transform:translateY(-6px);border-color:var(--ef-wine);box-shadow:0 18px 34px #35121b3d;background:var(--ef-ink)}
  :is(.ef-home-live-products,.ef-archive-results,.ef-product-page .related,.ef-product-page .up-sells) ul.products li.product:hover a img{transform:scale(1.04)}
  :is(.ef-home-live-products,.ef-archive-results,.ef-product-page .related,.ef-product-page .up-sells) ul.products li.product:hover h2.woocommerce-loop-product__title{color:white}
  :is(.ef-home-live-products,.ef-archive-results,.ef-product-page .related,.ef-product-page .up-sells) ul.products li.product .button:hover{background:#f0e7ea;border-color:#f0e7ea;color:#571424}
}
@media(prefers-reduced-motion:reduce){.ef-category-tree .ef-tree-toggle::after,:is(.ef-home-live-products,.ef-archive-results,.ef-product-page .related,.ef-product-page .up-sells) ul.products li.product,:is(.ef-home-live-products,.ef-archive-results,.ef-product-page .related,.ef-product-page .up-sells) ul.products li.product a img{transition:none!important;transform:none!important}}

/* Keep keyboard focus visible on the graphite text panel and below the sticky header. */
:is(.ef-home-live-products,.ef-archive-results,.ef-product-page .related,.ef-product-page .up-sells) li.product .woocommerce-loop-product__link:focus-visible{outline:3px solid var(--ef-wine);outline-offset:-5px}
:is(.ef-home-live-products,.ef-archive-results,.ef-product-page .related,.ef-product-page .up-sells) li.product .woocommerce-loop-product__link:focus-visible h2{text-decoration:underline;text-underline-offset:4px}
:is(.ef-home-live-products,.ef-archive-results,.ef-product-page .related,.ef-product-page .up-sells) li.product .button:focus-visible{outline:3px solid white;outline-offset:4px}
.ef-product-archive :is(a,summary,select){scroll-margin-top:130px}
.ef-product-archive .ef-archive-breadcrumb a{display:inline-block;min-height:24px;padding-block:2px;text-underline-offset:3px}

/* Product detail: native gallery, summary, price hook and editable WooCommerce data. */
.ef-product-page{padding-top:32px}
.ef-product-page div.product{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px 56px;align-items:start}
.ef-product-page div.product::before,.ef-product-page div.product::after{display:none}
.ef-product-page div.product div.images,.ef-product-page div.product div.summary{float:none;width:100%;min-width:0;margin:0}
.ef-product-page .woocommerce-product-gallery{opacity:1!important}
.ef-product-page .woocommerce-product-gallery .flex-viewport{border:1px solid var(--ef-line);border-radius:16px;background:white}
.ef-product-page .woocommerce-product-gallery__image img{width:100%;aspect-ratio:1;object-fit:contain;background:white;border-radius:16px}
.ef-product-page .woocommerce-product-gallery .zoomImg{border-radius:0;aspect-ratio:auto}
.ef-product-page div.product div.images .flex-control-thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,88px));gap:12px;padding:14px 4px 4px;margin:0}
.ef-product-page div.product div.images .flex-control-thumbs li{float:none;width:auto;margin:0;list-style:none}
.ef-product-page div.product div.images .flex-control-thumbs img{display:block;width:100%;box-sizing:border-box;aspect-ratio:1;object-fit:contain;padding:6px;border:2px solid var(--ef-line);border-radius:10px;opacity:1;cursor:pointer}
.ef-product-page div.product div.images .flex-control-thumbs img.flex-active{border-color:var(--ef-wine)}
.ef-product-page div.images .flex-control-thumbs img:hover{border-color:var(--ef-wine)}
.ef-product-page div.images .flex-control-thumbs img:focus-visible{outline:3px solid var(--ef-blue);outline-offset:2px}
.ef-product-page div.images .woocommerce-product-gallery__trigger{top:14px;right:14px;width:44px;height:44px;border:1px solid var(--ef-line);background:white}
.ef-product-page .summary .product_title{margin:0 0 24px;font-size:clamp(30px,3.5vw,46px);line-height:1.15;overflow-wrap:anywhere}
.ef-product-page .summary .price{margin:24px 0;font-size:28px;color:var(--ef-wine)}
.ef-product-page .summary .button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:13px 22px;border-radius:8px;background:var(--ef-wine);color:white;text-decoration:none}
.ef-product-page .summary .product_meta{display:grid;gap:8px;padding-top:24px;border-top:1px solid var(--ef-line);margin-top:28px}
.ef-product-page .woocommerce-tabs,.ef-product-page .related,.ef-product-page .up-sells{grid-column:1/-1;min-width:0;width:100%}
.ef-product-page div.product .woocommerce-tabs ul.tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;border-bottom:1px solid var(--ef-line);overflow:visible}
.ef-product-page div.product .woocommerce-tabs ul.tabs::before,.ef-product-page div.product .woocommerce-tabs ul.tabs li::before,.ef-product-page div.product .woocommerce-tabs ul.tabs li::after{display:none}
.ef-product-page div.product .woocommerce-tabs ul.tabs li{margin:0;padding:0;border:0;background:var(--ef-mist);border-radius:10px 10px 0 0}
.ef-product-page div.product .woocommerce-tabs ul.tabs li a{display:flex;align-items:center;min-height:48px;padding:12px 20px;color:var(--ef-ink);text-decoration:none;font-size:17px}
.ef-product-page div.product .woocommerce-tabs ul.tabs li.active{background:var(--ef-wine)}
.ef-product-page div.product .woocommerce-tabs ul.tabs li.active a{color:white}
.ef-product-page div.product .woocommerce-tabs .panel{padding:28px 0;margin:0}
.ef-product-page .woocommerce-tabs .panel h2{font-size:28px;margin:0 0 18px}
.ef-product-page .ef-product-pending{color:var(--ef-muted);margin:0}
.ef-product-page table.shop_attributes{width:100%;border-collapse:collapse;border:1px solid var(--ef-line);font-size:16px}
.ef-product-page table.shop_attributes th,.ef-product-page table.shop_attributes td{padding:14px 18px;text-align:left;vertical-align:top;border-bottom:1px solid var(--ef-line);overflow-wrap:anywhere}
.ef-product-page table.shop_attributes th{width:35%;font-weight:600;background:var(--ef-mist)}
.ef-product-page table.shop_attributes td p{margin:0}
.ef-product-page :is(a,button,[tabindex]){scroll-margin-top:130px}
.ef-product-page .woocommerce-tabs a:focus-visible{outline-offset:-4px}
.ef-product-page .woocommerce-tabs li.active a:focus-visible{outline-color:white}
@media(max-width:780px){.ef-product-page div.product{grid-template-columns:minmax(0,1fr);gap:28px}.ef-product-page{padding-top:24px}.ef-product-page .summary .product_title{font-size:32px}.ef-product-page table.shop_attributes th,.ef-product-page table.shop_attributes td{padding:12px}.ef-product-page div.product .woocommerce-tabs ul.tabs li a{padding:12px 14px;font-size:16px}}

/* Company page: shared industrial identity, editorial sections and real photo slots. */
.ef-company-page{padding:30px 0 0}
.ef-company-page section{scroll-margin-top:130px}
.ef-company-page p{max-width:65ch}
.ef-company-breadcrumb{font-size:14px;color:var(--ef-muted);margin-bottom:32px!important}
.ef-company-breadcrumb a{display:inline-block;min-height:24px;padding-block:2px}
.ef-company-breadcrumb span[aria-hidden]{padding-inline:6px}
.ef-company-hero{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;padding-bottom:76px}
.ef-company-hero h1{font-size:clamp(40px,4.8vw,66px);line-height:1.07;max-width:17ch;margin-bottom:24px}
.ef-company-lead{font-size:21px;line-height:1.55;color:var(--ef-muted);margin-bottom:28px}
.ef-company-page .ef-company-photo{margin:0;min-width:0;background:var(--ef-mist);border-radius:16px;overflow:hidden}
.ef-company-photo img{display:block;width:100%;height:auto;object-fit:contain}
.ef-company-hero .ef-company-photo img{aspect-ratio:6/5;padding:18px}
.ef-company-brands{padding-block:64px 76px;border-top:1px solid var(--ef-line)}
.ef-company-brands>h2{max-width:24ch}
.ef-company-brands>p{color:var(--ef-muted);margin-bottom:34px}
.ef-company-brand-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px}
.ef-company-brand{padding-top:24px;border-top:1px solid var(--ef-wine)}
.ef-company-brand h3{color:var(--ef-wine);font-size:28px;margin-bottom:16px}
.ef-company-brand p{margin:0}
.ef-company-manufacture{padding-block:72px;background:var(--ef-mist)}
.ef-company-process-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:center}
.ef-company-process-copy>p{color:var(--ef-muted)}
.ef-company-process-steps{display:grid;gap:20px;margin-top:30px}
.ef-company-process-step{padding-top:18px;border-top:1px solid #c5c9c3}
.ef-company-process-step h3{font-size:21px;line-height:1.25;margin-bottom:8px}
.ef-company-process-step p{font-size:17px;line-height:1.55;margin:0}
.ef-company-placeholder{min-height:360px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:36px;border:1px dashed #969d96;border-radius:16px;background:#fff}
.ef-company-placeholder .ef-company-placeholder-title{font-size:23px;font-weight:600;line-height:1.3;color:var(--ef-ink);margin:0 0 12px}
.ef-company-placeholder p{color:var(--ef-muted);font-size:16px;line-height:1.5;max-width:31ch;margin:0}
.ef-company-solutions{display:grid;grid-template-columns:.95fr 1fr;gap:64px;align-items:center;padding-block:80px}
.ef-company-solutions .ef-company-photo img{aspect-ratio:1;padding:24px}
.ef-company-solutions-copy>p{color:var(--ef-muted)}
.ef-company-family-links{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;margin-top:28px}
.ef-company-family-links a{display:flex;align-items:center;min-height:48px;padding:12px 0;border-top:1px solid var(--ef-line);color:var(--ef-wine);font-weight:600;text-decoration:none;font-size:18px}
.ef-company-family-links a:last-child{grid-column:1/-1;border-bottom:1px solid var(--ef-line)}
.ef-company-family-links a:hover{text-decoration:underline}
.ef-company-team{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;padding-block:64px 80px;border-top:1px solid var(--ef-line)}
.ef-company-team-copy>p{color:var(--ef-muted)}
.ef-company-team .ef-company-placeholder{background:var(--ef-mist);min-height:320px}
.ef-company-rsc{display:flex;justify-content:space-between;gap:48px;align-items:center;padding-block:46px 64px;border-top:1px solid var(--ef-line)}
.ef-company-rsc-copy{max-width:700px}
.ef-company-rsc h2{font-size:32px;max-width:24ch}
.ef-company-rsc p{margin-bottom:0;color:var(--ef-muted)}
.ef-company-page .ef-company-text-link{display:inline-flex;align-items:center;min-height:48px;color:var(--ef-wine);font-weight:600;font-size:17px}
.ef-company-contact{padding-block:64px;background:var(--ef-wine);color:white}
.ef-company-contact-inner{display:flex;justify-content:space-between;gap:48px;align-items:center}
.ef-company-contact-copy{max-width:650px}
.ef-company-contact-copy h2{max-width:17ch}
.ef-company-contact-copy p{margin:0;color:#f0dce1}
.ef-company-contact .wp-block-buttons{flex-shrink:0;max-width:245px}
.ef-company-contact .wp-block-button__link{background:white;color:var(--ef-wine);border-color:white}
.ef-company-contact .is-style-outline .wp-block-button__link{background:transparent;color:white;border-color:#c68d9b}
.ef-company-contact .wp-block-button__link:hover{background:#f0dce1;color:#571424;border-color:#f0dce1}
.ef-company-contact a:focus-visible{outline-color:white}
.ef-company-page a{scroll-margin-top:130px}
@media(max-width:1000px){.ef-company-hero,.ef-company-brand-grid{gap:32px}.ef-company-process-grid,.ef-company-solutions,.ef-company-team{gap:36px}.ef-company-lead{font-size:19px}.ef-company-contact-inner{gap:32px}}
@media(max-width:780px){.ef-company-hero,.ef-company-brand-grid,.ef-company-process-grid,.ef-company-solutions,.ef-company-team{grid-template-columns:minmax(0,1fr)}.ef-company-hero{gap:32px;padding-bottom:48px}.ef-company-hero h1{font-size:clamp(38px,8vw,52px);max-width:20ch}.ef-company-hero .ef-company-photo img{aspect-ratio:4/3}.ef-company-brands{padding-block:44px 52px}.ef-company-brand-grid{gap:28px}.ef-company-manufacture{padding-block:48px}.ef-company-placeholder{min-height:260px;padding:28px}.ef-company-solutions{padding-block:52px}.ef-company-solutions .ef-company-photo{max-width:520px;width:100%;justify-self:center}.ef-company-team{padding-block:44px 52px}.ef-company-team .ef-company-placeholder{min-height:260px}.ef-company-rsc,.ef-company-contact-inner{display:block}.ef-company-rsc{padding-block:40px 48px}.ef-company-rsc>p{margin-top:20px}.ef-company-contact{padding-block:48px}.ef-company-contact .wp-block-buttons{max-width:none;margin-top:28px}.ef-company-page h2{font-size:32px}}
@media(max-width:380px){.ef-company-family-links{grid-template-columns:minmax(0,1fr)}.ef-company-page .wp-block-buttons .wp-block-button{width:100%}.ef-company-page .wp-block-button__link{width:100%}.ef-company-hero h1{font-size:38px}}

/* RSC extends the Empresa components without changing their established styling. */
.ef-rsc-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:8px;margin-bottom:40px!important;border:1px solid var(--ef-line);border-radius:16px;background:var(--ef-mist)}
.ef-rsc-nav a{display:flex;align-items:center;justify-content:center;min-height:48px;padding:12px 16px;border:0;border-radius:10px;color:var(--ef-ink);font-size:17px;font-weight:600;line-height:1.35;text-align:center;text-decoration:none}
.ef-rsc-nav a:hover{background:white;color:var(--ef-wine)}
.ef-rsc-nav a:focus-visible{outline:3px solid var(--ef-blue);outline-offset:-3px}
.ef-rsc-page section[id]{scroll-margin-top:20px}
.ef-rsc-page:has(#personas:target) .ef-rsc-nav a[href="#personas"],.ef-rsc-page:has(#calidad-etica:target) .ef-rsc-nav a[href="#calidad-etica"],.ef-rsc-page:has(#medio-ambiente:target) .ef-rsc-nav a[href="#medio-ambiente"],.ef-rsc-page:has(#innovacion:target) .ef-rsc-nav a[href="#innovacion"]{background:var(--ef-wine);color:white}
.ef-rsc-page:has(#personas:target) .ef-rsc-nav a[href="#personas"]:focus-visible,.ef-rsc-page:has(#calidad-etica:target) .ef-rsc-nav a[href="#calidad-etica"]:focus-visible,.ef-rsc-page:has(#medio-ambiente:target) .ef-rsc-nav a[href="#medio-ambiente"]:focus-visible,.ef-rsc-page:has(#innovacion:target) .ef-rsc-nav a[href="#innovacion"]:focus-visible{outline-color:white}
.ef-rsc-quality-inner{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.ef-rsc-quality-intro>p,.ef-rsc-environment-copy>p,.ef-rsc-innovation-copy>p{color:var(--ef-muted)}
.ef-rsc-quality-items{display:grid;gap:26px}
.ef-rsc-quality-item,.ef-rsc-environment-item{padding-top:20px;border-top:1px solid #c5c9c3}
.ef-rsc-quality-item h3,.ef-rsc-environment-item h3{font-size:23px;line-height:1.2;margin-bottom:12px}
.ef-rsc-quality-item p,.ef-rsc-environment-item p{margin:0}
.ef-rsc-environment{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start;padding-block:76px}
.ef-rsc-environment-items{display:grid;gap:26px}
.ef-rsc-innovation{display:grid;grid-template-columns:1.15fr 1fr;gap:64px;align-items:center;padding-block:64px 76px;border-top:1px solid var(--ef-line)}
.ef-rsc-innovation-note{padding:32px;background:var(--ef-mist);border-radius:14px}
.ef-rsc-innovation-note .ef-rsc-innovation-title{font-size:26px;font-weight:600;line-height:1.25;margin-bottom:16px;color:var(--ef-wine)}
.ef-rsc-innovation-note p:last-child{margin:0;color:var(--ef-muted)}
.ef-rsc-page .ef-company-team{padding-top:44px}
@media(max-width:1000px){.ef-rsc-quality-inner,.ef-rsc-environment,.ef-rsc-innovation{gap:36px}}
@media(max-width:780px){.ef-rsc-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:6px;margin-bottom:24px!important}.ef-rsc-nav a{padding:12px 10px;font-size:16px}.ef-rsc-quality-inner,.ef-rsc-environment,.ef-rsc-innovation{grid-template-columns:minmax(0,1fr);gap:28px}.ef-rsc-environment{padding-block:48px}.ef-rsc-innovation{padding-block:44px 52px}.ef-rsc-innovation-note{padding:26px}.ef-rsc-innovation-note .ef-rsc-innovation-title{font-size:23px}}

/* Contact extends the Empresa/RSC system; the enquiry leads the page. */
.ef-contact-first{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:64px;align-items:start;padding-block:32px 64px}
.ef-contact-first>*{margin-block-start:0}
.ef-contact-form-column h1{font-size:clamp(40px,4.4vw,60px);line-height:1.08;letter-spacing:-.025em;margin:0 0 20px}
.ef-contact-form-column .ef-company-lead{font-size:19px;line-height:1.6;margin-bottom:28px}
.ef-contact-info-panel{background:var(--ef-mist);border-radius:16px;padding:32px;min-width:0}
.ef-contact-info-panel h2{font-size:28px;line-height:1.2;margin:0 0 18px}
.ef-contact-info-panel>p{font-size:17px;color:var(--ef-muted);line-height:1.6}
.ef-contact-info{margin:28px 0;display:grid;gap:18px}
.ef-contact-info dt{font-size:15px;color:var(--ef-muted);margin-bottom:4px}
.ef-contact-info dd{margin:0;line-height:1.5}
.ef-contact-info dd>a{display:inline-flex;align-items:center;min-height:36px;font-size:clamp(18px,1.9vw,24px);font-weight:600;color:var(--ef-wine);overflow-wrap:anywhere}
.ef-contact-info-panel address{font-style:normal;line-height:1.65;color:var(--ef-muted);padding-top:24px;border-top:1px solid var(--ef-line)}
.ef-contact-form{margin:0}
.ef-contact-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px;row-gap:18px}
.ef-contact-fields p{margin:0}
.ef-contact-form label{display:block;font-size:16px;font-weight:600;margin-bottom:8px}
.ef-contact-form input:not([type=checkbox]):not([type=hidden]),.ef-contact-form select,.ef-contact-form textarea{display:block;width:100%;max-width:100%;min-width:0;min-height:48px;border:1px solid #9ca39c;border-radius:8px;padding:12px;color:var(--ef-ink);background:white;font:inherit;line-height:1.45;box-sizing:border-box}
.ef-contact-form textarea{resize:vertical;min-height:152px}
.ef-contact-form textarea::placeholder{color:var(--ef-muted);opacity:1}
.ef-contact-form .ef-contact-help{font-size:14px;color:var(--ef-muted);line-height:1.5;margin:12px 0 20px}
.ef-contact-form .ef-check{display:flex;gap:10px;align-items:start;font-size:14px;line-height:1.6;font-weight:400}
.ef-contact-form .ef-check input{flex:none;width:18px;height:18px;margin:3px 0 0;accent-color:var(--ef-wine)}
.ef-contact-form button{min-height:48px;border:0;border-radius:8px;padding:14px 24px;background:var(--ef-wine);color:white;font:inherit;font-weight:600;cursor:pointer}
.ef-contact-form button:hover:not(:disabled){background:#571424}
.ef-contact-form button:disabled{background:#5e655f;color:white;cursor:not-allowed}
.ef-contact-form :is(input,select,textarea,button):focus-visible{outline:3px solid var(--ef-blue);outline-offset:3px}
.ef-contact-page .ef-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.ef-contact-location{padding-block:0 64px}
.ef-contact-location>h2{font-size:36px;margin-bottom:28px}
.ef-contact-map-card{border:1px solid var(--ef-line);border-radius:16px;overflow:hidden}
.ef-contact-map iframe{display:block;width:100%;height:360px;border:0}
.ef-contact-map-footer{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:24px 28px;margin-block-start:0}
.ef-contact-map-footer>*{margin-block-start:0}
.ef-contact-map-copy h2{font-size:24px;line-height:1.2;margin:0 0 8px}
.ef-contact-map-copy p{margin:0;font-size:15px;color:var(--ef-muted)}
.ef-contact-map-links{display:flex;gap:12px;flex-wrap:wrap}
.ef-contact-profile-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border:1px solid var(--ef-wine);border-radius:8px;color:var(--ef-wine);font-weight:600;font-size:15px;line-height:1.4;text-align:center;text-decoration:none}
.ef-contact-profile-link:hover{background:var(--ef-wine);color:white}
.ef-contact-page section[id]{scroll-margin-top:20px}
@media(max-width:1000px){.ef-contact-first{gap:32px;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}.ef-contact-info-panel{padding:24px}.ef-contact-map-footer{align-items:start;flex-direction:column}}
@media(max-width:780px){.ef-contact-first{grid-template-columns:minmax(0,1fr);padding-block:24px 44px;gap:36px}.ef-contact-fields{grid-template-columns:minmax(0,1fr);gap:18px}.ef-contact-form-column .ef-company-lead{font-size:18px}.ef-contact-form-column h1{font-size:40px}.ef-contact-location{padding-bottom:44px}.ef-contact-location>h2{font-size:30px}.ef-contact-map iframe{height:300px}.ef-contact-map-footer{padding:24px}.ef-contact-map-links{display:grid;width:100%}.ef-contact-profile-link{width:100%}}

/* Contact cards: contained enquiry and graphite Maps footer. */
.ef-contact-form{padding:28px;border:1px solid var(--ef-line);border-radius:16px;background:var(--ef-paper)}
.ef-contact-map-card{background:var(--ef-ink);border-color:var(--ef-ink)}
.ef-contact-map-footer{color:var(--ef-paper)}
.ef-contact-map-copy h2{color:var(--ef-paper)}
.ef-contact-map-copy p{color:#e5e6e5}
.ef-contact-map-card .ef-contact-profile-link{color:var(--ef-paper);border-color:var(--ef-paper)}
.ef-contact-map-card .ef-contact-profile-link:hover{background:var(--ef-paper);color:var(--ef-wine)}
.ef-contact-map-card .ef-contact-profile-link:focus-visible{outline:3px solid var(--ef-paper);outline-offset:4px}
@media(max-width:780px){.ef-contact-form{padding:20px}}

/* Reuse the existing homepage easing for shared, optional motion. */
:root{--ef-home-ease:cubic-bezier(.23,1,.32,1);--ef-drawer-ease:cubic-bezier(.32,.72,0,1)}
@media(prefers-reduced-motion:no-preference){
  :is(.ef-home-button,.wp-element-button,.ef-contact-form button,.woocommerce a.button):not(:disabled):not([aria-disabled=true]){transition:transform 100ms var(--ef-home-ease),background-color 180ms var(--ef-home-ease),border-color 180ms var(--ef-home-ease)}
  html[data-ef-input=pointer] :is(.ef-home-button,.wp-element-button,.ef-contact-form button,.woocommerce a.button):not(:disabled):not([aria-disabled=true]):active{transform:scale(.985);transition-duration:140ms,180ms,180ms}
  @media(hover:hover) and (pointer:fine){
    .ef-category-photo-card .ef-supplied-image img{transition:transform 280ms var(--ef-home-ease)}
    .ef-category-photo-card:hover .ef-supplied-image img{transform:scale(1.025)}
  }
  @media(max-width:1199px){
    .ef-native-nav .wp-block-navigation__responsive-container:is(.is-menu-open,.ef-motion-closing){animation:none;position:fixed;overflow:auto;z-index:100000;transition:transform 360ms var(--ef-drawer-ease),opacity 240ms var(--ef-drawer-ease);transform:translateX(0);opacity:1}
    .ef-native-nav .wp-block-navigation__responsive-container.ef-motion-closing{display:flex!important;transform:translateX(100%);opacity:0;pointer-events:none;transition-duration:240ms}
    @starting-style{html[data-ef-input=pointer] .ef-native-nav .wp-block-navigation__responsive-container.is-menu-open{transform:translateX(100%);opacity:.9}}
  }
}
/* WordPress keeps focus and Escape handling; keyboard actions stay immediate. */
html[data-ef-input=keyboard] .ef-native-nav .wp-block-navigation__responsive-container:is(.is-menu-open,.ef-motion-closing){animation:none!important;transition:none!important;transform:none;opacity:1}
@media(prefers-reduced-motion:reduce){
  .ef-native-nav .wp-block-navigation__responsive-container:is(.is-menu-open,.ef-motion-closing){animation:none!important;transition:none!important;transform:none!important;opacity:1}
}

/* Language links stay inside the drawer on mobile, beside search on desktop. */
.ef-language-switcher{display:flex;justify-content:flex-end;gap:2px;align-items:center}
.ef-language-switcher a{display:inline-flex;align-items:center;justify-content:center;min-width:38px;min-height:36px;padding:6px;border:1px solid transparent;border-radius:6px;color:white;font-size:13px;font-weight:600;text-decoration:none;line-height:1}
.ef-language-switcher a:hover{background:#ffffff18;color:white;text-decoration:none}
.ef-language-switcher a[aria-current]{border-color:#ffffff90;background:#ffffff12}
.ef-language-switcher a:focus-visible{outline:3px solid white;outline-offset:2px}
@media(min-width:1200px){.ef-native-tools{display:flex;flex-direction:row;align-items:center;gap:12px}.ef-native-tools .ef-language-switcher{margin:0}.ef-native-brand{padding-block:10px}}
@media(min-width:1200px) and (max-width:1499px){html:is(:lang(en),:lang(fr)) .ef-native-brand{grid-template-columns:180px minmax(0,1fr) 170px;gap:24px}html:lang(en) .ef-native-nav{font-size:14px}}
@media(max-width:1199px){.ef-mobile-panel .ef-language-switcher{justify-content:flex-start;margin:0 0 24px;gap:8px}.ef-mobile-panel .ef-language-switcher a{min-width:48px;min-height:44px;font-size:14px}}

/* Language disclosure: native keyboard behavior, names alongside decorative flags. */
.ef-language-switcher.is-enhanced{display:block;text-align:right}
.ef-language-picker{position:relative;display:inline-block;margin:0;min-width:138px;text-align:left}
.ef-language-picker>summary{display:flex;align-items:center;gap:10px;min-height:40px;padding:8px 12px;border:1px solid #ffffff75;border-radius:8px;color:white;font-size:14px;font-weight:600;line-height:1.3;cursor:pointer;list-style:none}
.ef-language-picker>summary::-webkit-details-marker{display:none}
.ef-language-picker>summary:hover,.ef-language-picker[open]>summary{background:#ffffff15}
.ef-language-picker>summary:focus-visible{outline:3px solid white;outline-offset:3px}
.ef-language-flag{display:block;flex:none;width:26px;height:18px;object-fit:contain;border-radius:2px}
.ef-language-indicator{width:7px;height:7px;flex:none;margin-left:auto;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg)}
.ef-language-picker[open] .ef-language-indicator{transform:translateY(2px) rotate(225deg)}
.ef-language-options{position:absolute;top:calc(100% + 8px);right:0;z-index:100;min-width:204px;width:max-content;max-width:calc(100vw - 40px);list-style:none;padding:7px;margin:0;border-radius:12px;background:white;color:var(--ef-ink);box-shadow:0 12px 28px #29151c26}
.ef-language-options>li{padding:0;margin:0;list-style:none}
.ef-language-switcher.is-enhanced .ef-language-options a{display:flex;justify-content:flex-start;gap:12px;min-height:46px;width:100%;padding:10px 12px;border:0;border-radius:7px;font-size:15px;font-weight:400;line-height:1.35;color:var(--ef-ink);background:transparent;text-decoration:none;white-space:nowrap}
.ef-language-switcher.is-enhanced .ef-language-options a:hover,.ef-language-switcher.is-enhanced .ef-language-options a[aria-current]{color:var(--ef-wine);background:#f7edf0}
.ef-language-switcher.is-enhanced .ef-language-options a[aria-current]{font-weight:600}
.ef-language-switcher.is-enhanced .ef-language-options a[aria-current]::after{content:"";width:8px;height:4px;margin-left:auto;border-left:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg)}
.ef-language-switcher.is-enhanced .ef-language-options a:focus-visible{outline:3px solid var(--ef-wine);outline-offset:-3px}
@media(max-width:1199px){.ef-mobile-panel .ef-language-switcher.is-enhanced{text-align:left;margin-bottom:24px}.ef-mobile-panel .ef-language-picker{display:block;width:100%}.ef-mobile-panel .ef-language-picker>summary{min-height:48px;padding:12px 14px;font-size:16px}.ef-mobile-panel .ef-language-options{position:static;width:100%;max-width:none;margin-top:8px;box-shadow:none}.ef-mobile-panel .ef-language-switcher.is-enhanced .ef-language-options a{min-height:48px;font-size:16px}}

/* Desktop language and product search share one row; mobile keeps its existing drawer. */
@media(min-width:1200px){
  .ef-native-logo img{object-fit:cover}
  .ef-native-tools>.ef-language-switcher{flex:0 0 auto}
  .ef-native-tools>.ef-native-search{flex:1 1 auto;min-width:0}
  .ef-native-tools .ef-language-picker{min-width:122px}
  .ef-native-tools .ef-language-picker>summary{gap:8px;padding-inline:8px}
}
@media(min-width:1200px) and (max-width:1499px){
  .ef-native-brand,html:is(:lang(en),:lang(fr)) .ef-native-brand{grid-template-columns:clamp(190px,16vw,240px) minmax(0,1fr) 430px;gap:12px;padding-inline:20px}
  .ef-native-nav .wp-block-navigation__container{gap:2px}
  .ef-native-nav .wp-block-navigation-item__content,.ef-native-nav .wp-block-navigation-submenu__toggle{padding-inline:3px}
  .ef-native-nav .ef-nav-contact>.wp-block-navigation-item__content{padding-inline:12px}
}
@media(min-width:1500px){
  .ef-native-brand{grid-template-columns:260px minmax(0,1fr) 430px;gap:24px;padding-inline:28px}
}

/* Compact only the tight desktop range; all four header groups stay on one row. */
@media(min-width:1200px) and (max-width:1399px){
  .ef-native-brand,html:is(:lang(en),:lang(fr)) .ef-native-brand{grid-template-columns:clamp(190px,16vw,240px) minmax(0,1fr) 328px}
  .ef-native-tools{gap:8px}
  .ef-native-tools .ef-language-picker{min-width:60px}
  .ef-native-tools .ef-language-picker>summary>span[lang]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  .ef-native-nav{font-size:14px}
  html:lang(en) .ef-native-nav{font-size:13px}
  .ef-native-nav .wp-block-navigation__container{gap:1px}
  .ef-native-nav .wp-block-navigation-item__content,.ef-native-nav .wp-block-navigation-submenu__toggle{padding-inline:2px}
  .ef-native-nav .ef-nav-contact>.wp-block-navigation-item__content{padding-inline:10px}
}
@media(min-width:1500px) and (max-width:1649px){
  .ef-native-nav{font-size:14px}
}

/* Equal side columns keep the desktop navigation centered in the viewport. */
@media(min-width:1200px){
  .ef-native-brand.ef-has-search-panel,html:is(:lang(en),:lang(fr)) .ef-native-brand.ef-has-search-panel{--ef-header-side:clamp(190px,16vw,240px);grid-template-columns:var(--ef-header-side) minmax(0,1fr) var(--ef-header-side);gap:12px;padding-inline:20px}
  .ef-native-brand.ef-has-search-panel .ef-native-nav{font-size:15px}
  .ef-native-brand.ef-has-search-panel .wp-block-navigation__container{gap:6px;flex-wrap:nowrap;justify-content:center}
  .ef-native-brand.ef-has-search-panel .wp-block-navigation__container>.wp-block-navigation-item>.wp-block-navigation-item__content,.ef-native-brand.ef-has-search-panel .wp-block-navigation__container>.wp-block-navigation-item>.wp-block-navigation-submenu__toggle{padding-inline:4px}
  .ef-native-brand.ef-has-search-panel .ef-nav-contact>.wp-block-navigation-item__content{padding-inline:14px}
  .ef-native-brand.ef-has-search-panel .ef-native-tools{justify-content:flex-end;gap:12px}
  .ef-native-brand.ef-has-search-panel .ef-language-picker{min-width:122px}
  .ef-native-brand.ef-has-search-panel .ef-language-picker>summary>span[lang]{position:static;width:auto;height:auto;padding:0;margin:0;overflow:visible;clip-path:none;white-space:nowrap}
  .ef-search-trigger{display:inline-flex;align-items:center;justify-content:center;flex:0 0 48px;width:48px;height:48px;padding:10px;border:1px solid #ffffff75;border-radius:8px;background:transparent;color:white}
  .ef-search-trigger svg{width:24px;height:24px;fill:currentColor}
  .ef-search-trigger:hover,.ef-search-trigger[aria-expanded=true]{background:#ffffff15}
  .ef-search-trigger:focus-visible{outline:3px solid white;outline-offset:3px}
}
@media(min-width:1400px){
  .ef-native-brand.ef-has-search-panel .ef-native-nav{font-size:16px}
  .ef-native-brand.ef-has-search-panel .wp-block-navigation__container{gap:8px}
  .ef-native-brand.ef-has-search-panel .wp-block-navigation__container>.wp-block-navigation-item>.wp-block-navigation-item__content,.ef-native-brand.ef-has-search-panel .wp-block-navigation__container>.wp-block-navigation-item>.wp-block-navigation-submenu__toggle{padding-inline:6px}
}
@media(min-width:1500px){
  .ef-native-brand.ef-has-search-panel,html:is(:lang(en),:lang(fr)) .ef-native-brand.ef-has-search-panel{--ef-header-side:260px;gap:24px;padding-inline:28px}
}
@media(max-width:1199px){.ef-search-trigger{display:none}}
body.ef-search-open{overflow:hidden}
.ef-search-dialog{position:fixed;inset:var(--ef-search-top,106px) 0 auto;width:100%;max-width:none;max-height:calc(100dvh - var(--ef-search-top,106px));margin:0;padding:30px 40px 36px;border:0;border-bottom:4px solid var(--ef-wine);background:var(--ef-mist);color:var(--ef-ink);box-shadow:0 18px 36px #171c1730;overflow:auto;overscroll-behavior:contain}
.ef-search-dialog::backdrop{background:#10151080}
.ef-search-dialog-inner{width:min(100%,980px);margin-inline:auto}
.ef-search-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:22px}
.ef-search-dialog-heading h2{font-size:30px;margin:0;text-wrap:balance}
.ef-search-close{display:inline-flex;align-items:center;justify-content:center;flex:none;width:44px;height:44px;border:1px solid #b9bdb9;border-radius:50%;background:white;color:var(--ef-wine);font-size:30px;line-height:1}
.ef-search-close:hover{border-color:var(--ef-wine);background:#f7edf0}
.ef-search-dialog .ef-native-search .wp-block-search__inside-wrapper{display:flex;gap:0;border:1px solid #848c85;border-radius:10px;overflow:visible;background:white}
.ef-search-dialog .ef-native-search input{flex:1;min-height:56px!important;padding:12px 16px!important;background:white;border-radius:10px 0 0 10px;font-size:18px}
.ef-search-dialog .ef-native-search input::placeholder{color:var(--ef-muted);opacity:1}
.ef-search-dialog .ef-native-search .wp-block-search__button{flex:none;min-height:56px;padding:12px 24px;border:0;border-radius:0 9px 9px 0;background:var(--ef-wine);color:white;font-weight:600;font-size:16px}
.ef-search-dialog .ef-native-search .wp-block-search__button:hover{background:#571424}
.ef-search-dialog :focus-visible{outline:3px solid var(--ef-wine);outline-offset:3px}
.ef-search-status{margin:14px 0 18px;font-size:16px;line-height:1.45;color:var(--ef-muted)}
.ef-search-suggestions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 20px;padding:0;margin:0;list-style:none}
.ef-search-suggestion{display:flex;align-items:center;gap:16px;min-height:82px;padding:12px;border:1px solid var(--ef-line);border-radius:12px;background:white;color:var(--ef-ink);font-size:17px;line-height:1.35;text-decoration:none}
.ef-search-suggestion:hover{border-color:var(--ef-wine);background:#f7edf0;color:var(--ef-wine);text-decoration:none}
.ef-search-suggestion img{width:56px;height:56px;flex:none;object-fit:contain;background:white;border-radius:6px}


/* Inline suggestions stay inside the burgundy mobile drawer. */
@media(max-width:1199px){
  .ef-mobile-panel .ef-mobile-search-suggestions{margin:-16px 0 28px!important}
  .ef-mobile-panel .ef-mobile-search-suggestions[hidden]{display:none}
  .ef-mobile-panel .ef-mobile-search-suggestions .ef-search-status{margin:0 0 10px!important;color:white;font-size:16px;line-height:1.4}
  .ef-mobile-search-suggestions .ef-search-suggestions{grid-template-columns:minmax(0,1fr);gap:8px;max-height:min(350px,42dvh);overflow:auto;overscroll-behavior:contain;padding:4px 4px 8px;margin:0}
  .ef-mobile-search-suggestions .ef-search-suggestion{min-height:72px;padding:10px;gap:12px;font-size:16px;white-space:normal}
  .ef-mobile-search-suggestions .ef-search-suggestion span{min-width:0;overflow-wrap:anywhere}
  .ef-mobile-search-suggestions .ef-search-suggestion img{width:44px;height:44px}
  .ef-native-nav .ef-mobile-search-suggestions .ef-search-suggestion:focus-visible{outline:3px solid var(--ef-wine);outline-offset:-3px}
}


/* Paired blue/red strokes echo the logo without competing with the burgundy identity. */
:is(.ef-home-section-intro h2,.ef-company-hero h1,.ef-rsc-page h1,.ef-contact-form-column h1,.ef-archive-title,.ef-content-page .wp-block-query-title)::after{content:"";display:block;width:22px;height:5px;margin:18px 0 0 2px;background:var(--ef-blue);box-shadow:28px 0 0 var(--ef-red);transform:skewX(-22deg)}
.ef-folder-tabs button[aria-selected=true]::after{content:"";position:absolute;bottom:6px;left:calc(50% - 20px);width:18px;height:3px;background:var(--ef-blue);box-shadow:22px 0 0 var(--ef-red);transform:skewX(-22deg);pointer-events:none}
@media(forced-colors:active){
  :is(.ef-home-section-intro h2,.ef-company-hero h1,.ef-rsc-page h1,.ef-contact-form-column h1,.ef-archive-title,.ef-content-page .wp-block-query-title)::after,.ef-folder-tabs button[aria-selected=true]::after{display:none}
}

/* Official funding marks retain their original artwork; white display on the footer. */
.ef-footer-funding{background:var(--ef-wine);margin-block-start:0!important;color:#fff}
.ef-footer-funding-inner{display:flex;align-items:center;justify-content:center;gap:clamp(40px,7vw,96px);padding-block:34px;border-top:1px solid #a25768}
.ef-footer-funding img{display:block;width:296px;max-width:100%;height:auto;object-fit:contain;filter:brightness(0) invert(1)}
.ef-footer-funding img+img{width:232px}
@media(max-width:600px){.ef-footer-funding-inner{flex-direction:column;gap:28px;padding-block:30px}.ef-footer-funding img{width:280px}.ef-footer-funding img+img{width:224px}}

.ef-footer-bottom{display:flex;flex-wrap:wrap;align-items:center}.ef-footer-bottom nav:empty{display:none}@media(max-width:800px){.ef-footer-bottom{flex-direction:column;align-items:flex-start;gap:12px}}.ef-footer-credit a{text-underline-offset:3px}.ef-footer-credit a:hover{text-decoration:underline}

.ef-footer-meta{display:flex;flex-wrap:wrap;gap:4px 8px}.ef-footer-bottom>nav{margin-left:auto;justify-content:flex-end;gap:8px 16px}.ef-footer-bottom>nav span[aria-disabled]{color:inherit}@media(max-width:800px){.ef-footer-bottom>nav{margin:0;justify-content:flex-start}.ef-footer-meta{gap:4px 8px}}

/* Complianz owns the document and consent behaviour; only its presentation is themed. */
body.page-id-378 .ef-content-page{width:100%;max-width:none;margin:0;padding:0}
body.page-id-378 .ef-content-page>h1{margin:0;padding:clamp(56px,7vw,96px) max(var(--ef-space),calc((100% - 1200px)/2));background:var(--ef-wine);color:#fff;font-size:clamp(40px,5.4vw,68px);line-height:1.1;letter-spacing:-.025em;text-wrap:balance}
body.page-id-378 .wp-block-post-content{margin-block-start:0}
body.page-id-378 #cmplz-document{box-sizing:border-box;width:min(calc(100% - var(--ef-space)*2),1200px);max-width:1200px;margin:clamp(44px,6vw,76px) auto 80px;padding:0;font-family:inherit;font-size:18px;line-height:1.75;color:var(--ef-ink)}
body.page-id-378 #cmplz-document :is(p,li){font-size:inherit;line-height:inherit}
body.page-id-378 #cmplz-document p{margin:0 0 20px}
body.page-id-378 #cmplz-document>p:first-child{color:var(--ef-muted);font-size:16px}
body.page-id-378 #cmplz-document>p:first-child i{font-style:normal}
body.page-id-378 #cmplz-document h2{margin:48px 0 18px;padding:0;color:var(--ef-wine);font-size:clamp(28px,3.3vw,42px);line-height:1.15;font-weight:700;letter-spacing:-.02em;text-wrap:balance}
body.page-id-378 #cmplz-document h3{margin:28px 0 12px;padding:0;color:var(--ef-ink);font-size:clamp(22px,2.1vw,28px);line-height:1.25;font-weight:600}
body.page-id-378 #cmplz-document :is(h4,h5){font-size:17px;line-height:1.4;font-weight:600;color:var(--ef-ink)}
body.page-id-378 #cmplz-document a{color:var(--ef-wine);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
body.page-id-378 #cmplz-document a:hover{text-decoration-thickness:2px}
body.page-id-378 #cmplz-document ul{padding-inline-start:24px;margin-block:16px 24px}
body.page-id-378 #cmplz-document li{padding-inline-start:3px;margin-bottom:10px}
body.page-id-378 #cmplz-document details.cmplz-dropdown{margin:12px 0;border:1px solid var(--ef-line);border-radius:12px;background:#fff;overflow:clip}
body.page-id-378 #cmplz-document summary.cmplz-service-header{padding:20px 24px;background:var(--ef-mist);cursor:pointer}
body.page-id-378 #cmplz-document summary.cmplz-service-header h3{margin:0;font-size:23px;color:var(--ef-wine)}
body.page-id-378 #cmplz-document summary.cmplz-service-header p{font-size:16px;margin:4px 0 0;color:var(--ef-muted)}
body.page-id-378 #cmplz-document details[open]>summary{border-bottom:1px solid var(--ef-line)}
body.page-id-378 #cmplz-document :is(.cmplz-service-description,.cmplz-sharing-data){padding:20px 24px 4px;font-size:17px}
body.page-id-378 #cmplz-document .cookies-per-purpose{margin:16px 24px 24px;border-color:var(--ef-line);background:var(--ef-line);grid-template-columns:minmax(0,1fr) minmax(100px,.6fr) minmax(0,1.2fr);font-size:16px;line-height:1.5}
body.page-id-378 #cmplz-document .cookies-per-purpose>div{min-width:0;padding:14px;background:#fff;overflow-wrap:anywhere}
body.page-id-378 #cmplz-document .cookies-per-purpose>.purpose{background:var(--ef-mist)}
body.page-id-378 #cmplz-document .cookies-per-purpose>:is(.name-header,.retention-header,.function-header){background:var(--ef-wine);color:#fff}
body.page-id-378 #cmplz-document .cookies-per-purpose>:is(.name-header,.retention-header,.function-header) h5{color:#fff;margin:0;font-size:16px}
body.page-id-378 #cmplz-document :is(a,summary,button,input):focus-visible{outline:3px solid var(--ef-wine);outline-offset:4px}
@media(max-width:600px){
body.page-id-378 #cmplz-document{font-size:17px;margin-bottom:52px}
body.page-id-378 #cmplz-document h2{margin-top:36px}
body.page-id-378 #cmplz-document summary.cmplz-service-header{padding:18px}
body.page-id-378 #cmplz-document :is(.cmplz-service-description,.cmplz-sharing-data){padding-inline:18px}
body.page-id-378 #cmplz-document .cookies-per-purpose{margin:12px 12px 18px;grid-template-columns:minmax(0,1fr) minmax(64px,.7fr) minmax(0,1.1fr);font-size:14px}
body.page-id-378 #cmplz-document .cookies-per-purpose>div{padding:9px}
body.page-id-378 #cmplz-document .cookies-per-purpose>:is(.name-header,.retention-header,.function-header) h5{font-size:14px}
}

body.page-id-378 #cmplz-document{overflow-wrap:anywhere}
@media(max-width:600px){body.page-id-378 #cmplz-document summary.cmplz-service-header>div{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;padding-right:20px;min-width:0}body.page-id-378 #cmplz-document summary.cmplz-service-header h3{flex:1 1 130px;min-width:0}body.page-id-378 #cmplz-document summary.cmplz-service-header p{flex:1 1 100px;min-width:0;margin:0}}

/* Unified inventory; the native Complianz source remains available when JavaScript is unavailable. */
body.page-id-378 #cmplz-document .ef-cookie-inventory-source{display:none!important}
body.page-id-378 #cmplz-document .ef-cookie-table-scroll{max-width:100%;overflow-x:auto;margin:24px 0;scrollbar-color:var(--ef-wine) var(--ef-mist)}
body.page-id-378 #cmplz-document .ef-cookie-table{border-collapse:collapse;width:100%;min-width:940px;table-layout:fixed;font-size:16px;line-height:1.55;margin:0}
body.page-id-378 #cmplz-document .ef-cookie-table caption{text-align:left;font-size:17px;font-weight:600;padding:0 0 14px;color:var(--ef-ink)}
body.page-id-378 #cmplz-document .ef-cookie-table :is(th,td){text-align:left;vertical-align:top;padding:18px 16px;border:1px solid var(--ef-line);overflow-wrap:anywhere}
body.page-id-378 #cmplz-document .ef-cookie-table th{background:var(--ef-wine);color:#fff;font-weight:600}
body.page-id-378 #cmplz-document .ef-cookie-table th:nth-child(1){width:15%}
body.page-id-378 #cmplz-document .ef-cookie-table th:nth-child(2){width:21%}
body.page-id-378 #cmplz-document .ef-cookie-table th:nth-child(3){width:31%}
body.page-id-378 #cmplz-document .ef-cookie-table th:nth-child(4){width:16%}
body.page-id-378 #cmplz-document .ef-cookie-table th:nth-child(5){width:17%}
body.page-id-378 #cmplz-document .ef-cookie-table tbody tr:nth-child(even){background:var(--ef-mist)}
body.page-id-378 #cmplz-document .ef-cookie-table-scroll:focus-visible{outline:3px solid var(--ef-wine);outline-offset:4px}
@media(max-width:600px){body.page-id-378 #cmplz-document .ef-cookie-table :is(th,td){padding:14px 12px}}

body.page-id-378 #cmplz-document .ef-cookie-table :is(th,td){font-size:16px;line-height:1.55}

/* Native Complianz controls retain their behaviour and gain usable touch targets. */
body.page-id-378 #cmplz-document .cmplz-revoke-custom{min-height:44px;padding:10px 18px;border:1px solid var(--ef-wine);border-radius:8px;background:var(--ef-wine);color:white;font:inherit;cursor:pointer;margin:0 0 12px}
body.page-id-378 #cmplz-document .cmplz-revoke-custom:disabled{background:var(--ef-mist);border-color:#a4aaa4;color:#535b54;cursor:default}
body.page-id-378 #cmplz-document .cmplz-category-header{min-height:56px;padding:10px 14px;gap:14px}
body.page-id-378 #cmplz-document .cmplz-consent-checkbox:not(.cmplz-functional):not(.cmplz-preferences){width:28px;height:28px;accent-color:var(--ef-wine);cursor:pointer}
body.page-id-378 #cmplz-document .cmplz-category-toggle{min-width:44px;min-height:44px}
body.page-id-378 #cmplz-document .cmplz-always-active{color:#354238!important;font-size:14px!important}
body.page-id-378 #cmplz-document .ef-cookie-table caption{scroll-margin-top:130px}

/* An opaque notice keeps the map action readable over any placeholder image. */
.cmplz-placeholder-parent button.cmplz-blocked-content-notice{color:#fff!important;background:var(--ef-wine)!important;opacity:1;text-shadow:none;border:2px solid #fff;border-radius:8px;padding:14px 18px;font-size:16px;line-height:1.5;min-height:44px;max-width:calc(100% - 32px);box-sizing:border-box;white-space:normal;overflow-wrap:anywhere}
.cmplz-placeholder-parent button.cmplz-blocked-content-notice:hover{background:#501525!important;color:#fff!important}
.cmplz-placeholder-parent button.cmplz-blocked-content-notice:focus-visible{outline:3px solid #fff!important;outline-offset:3px;box-shadow:0 0 0 6px var(--ef-wine)}
