.elementor-kit-8{--e-global-color-primary:#000000;--e-global-color-secondary:#666666;--e-global-color-text:#000000;--e-global-color-accent:#000000;--e-global-color-43d3365f:#0C0E0D;--e-global-color-903d4a13:#101211;--e-global-color-e9da81ee:#141716;--e-global-color-99f890dd:#242826;--e-global-color-71bcbbd1:#F2F0EC;--e-global-color-12d62347:#C3C1BB;--e-global-color-8efb92d2:#9A9B96;--e-global-color-8c67e8f6:#C7A26B;--e-global-color-aaf8e086:#E0BE88;--e-global-color-59b0a842:#12140F;--e-global-color-74580e32:#F6F3EE;--e-global-color-0630fb01:#EBE6DD;--e-global-color-0d9e030c:#FFFFFF;--e-global-color-eee47eda:#DAD3C7;--e-global-color-9382391a:#17191A;--e-global-color-7945e25c:#4C4E4A;--e-global-color-47ffd3c4:#63655F;--e-global-color-e6dab522:#82612D;--e-global-typography-primary-font-family:"Bricolage Grotesque";--e-global-typography-primary-font-size:3rem;--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Bricolage Grotesque";--e-global-typography-secondary-font-size:2rem;--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Schibsted Grotesk";--e-global-typography-text-font-size:1rem;--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Schibsted Grotesk";--e-global-typography-accent-font-size:1.2rem;--e-global-typography-accent-font-weight:500;--e-global-typography-f601525-font-family:"Schibsted Grotesk";--e-global-typography-f601525-font-size:1rem;--e-global-typography-f601525-line-height:1rem;--e-global-typography-8445c521-font-family:"Bricolage Grotesque";--e-global-typography-8445c521-font-size:clamp(2.75rem, 5.2vw, 5.125rem);--e-global-typography-8445c521-font-weight:400;--e-global-typography-8445c521-text-transform:none;--e-global-typography-8445c521-line-height:0.98em;--e-global-typography-8445c521-letter-spacing:-0.02em;--e-global-typography-ef79da8c-font-family:"Bricolage Grotesque";--e-global-typography-ef79da8c-font-size:clamp(2.125rem, 3.6vw, 3.5rem);--e-global-typography-ef79da8c-font-weight:400;--e-global-typography-ef79da8c-text-transform:none;--e-global-typography-ef79da8c-line-height:1.02em;--e-global-typography-ef79da8c-letter-spacing:-0.018em;--e-global-typography-87d1aeac-font-family:"Bricolage Grotesque";--e-global-typography-87d1aeac-font-size:clamp(1.625rem, 2.4vw, 2.25rem);--e-global-typography-87d1aeac-font-weight:400;--e-global-typography-87d1aeac-text-transform:none;--e-global-typography-87d1aeac-line-height:1.1em;--e-global-typography-87d1aeac-letter-spacing:-0.01em;--e-global-typography-aad93601-font-family:"Schibsted Grotesk";--e-global-typography-aad93601-font-size:clamp(1.25rem, 1.6vw, 1.5rem);--e-global-typography-aad93601-font-weight:500;--e-global-typography-aad93601-text-transform:none;--e-global-typography-aad93601-line-height:1.3em;--e-global-typography-aad93601-letter-spacing:0em;--e-global-typography-9757c236-font-family:"Schibsted Grotesk";--e-global-typography-9757c236-font-size:clamp(1.0625rem, 1.2vw, 1.1875rem);--e-global-typography-9757c236-font-weight:600;--e-global-typography-9757c236-text-transform:none;--e-global-typography-9757c236-line-height:1.35em;--e-global-typography-9757c236-letter-spacing:0.02em;--e-global-typography-30cc335b-font-family:"Schibsted Grotesk";--e-global-typography-30cc335b-font-size:clamp(1rem, 1.15vw, 1.125rem);--e-global-typography-30cc335b-font-weight:400;--e-global-typography-30cc335b-text-transform:none;--e-global-typography-30cc335b-line-height:1.65em;--e-global-typography-30cc335b-letter-spacing:0em;--e-global-typography-2226e647-font-family:"Schibsted Grotesk";--e-global-typography-2226e647-font-size:0.875rem;--e-global-typography-2226e647-font-weight:400;--e-global-typography-2226e647-text-transform:none;--e-global-typography-2226e647-line-height:1.6em;--e-global-typography-2226e647-letter-spacing:0em;--e-global-typography-a50fec19-font-family:"Schibsted Grotesk";--e-global-typography-a50fec19-font-size:0.6875rem;--e-global-typography-a50fec19-font-weight:500;--e-global-typography-a50fec19-text-transform:uppercase;--e-global-typography-a50fec19-line-height:1.4em;--e-global-typography-a50fec19-letter-spacing:0.24em;--e-global-typography-0abb9c7e-font-family:"Schibsted Grotesk";--e-global-typography-0abb9c7e-font-size:0.875rem;--e-global-typography-0abb9c7e-font-weight:600;--e-global-typography-0abb9c7e-text-transform:none;--e-global-typography-0abb9c7e-line-height:1.2em;--e-global-typography-0abb9c7e-letter-spacing:0.01em;color:#4C4E4A;font-family:"Schibsted Grotesk", Sans-serif;font-size:16px;font-weight:400;line-height:1.6em;overscroll-behavior:auto;}.elementor-kit-8 button,.elementor-kit-8 input[type="button"],.elementor-kit-8 input[type="submit"],.elementor-kit-8 .elementor-button{background-color:#000000;font-family:var( --e-global-typography-f601525-font-family ), Sans-serif;font-size:var( --e-global-typography-f601525-font-size );line-height:var( --e-global-typography-f601525-line-height );letter-spacing:var( --e-global-typography-f601525-letter-spacing );word-spacing:var( --e-global-typography-f601525-word-spacing );color:#FFFFFF;}.elementor-kit-8 button:hover,.elementor-kit-8 button:focus,.elementor-kit-8 input[type="button"]:hover,.elementor-kit-8 input[type="button"]:focus,.elementor-kit-8 input[type="submit"]:hover,.elementor-kit-8 input[type="submit"]:focus,.elementor-kit-8 .elementor-button:hover,.elementor-kit-8 .elementor-button:focus{background-color:#333333;color:#FFFFFF;}.elementor-kit-8 a{color:#000000;}.elementor-kit-8 a:hover{color:#666666;}.elementor-kit-8 h1{color:#17191A;font-family:"Bricolage Grotesque", Sans-serif;font-weight:400;}.elementor-kit-8 h2{color:#17191A;font-family:"Bricolage Grotesque", Sans-serif;font-weight:400;}.elementor-kit-8 h3{color:#17191A;font-family:"Bricolage Grotesque", Sans-serif;font-weight:400;}.elementor-kit-8 h4{color:#17191A;font-family:"Schibsted Grotesk", Sans-serif;font-weight:500;}.elementor-kit-8 h5{color:#17191A;font-family:"Schibsted Grotesk", Sans-serif;font-weight:600;}.elementor-kit-8 h6{color:#17191A;font-family:"Schibsted Grotesk", Sans-serif;font-weight:600;}.elementor-kit-8 input:not([type="button"]):not([type="submit"]),.elementor-kit-8 textarea,.elementor-kit-8 .elementor-field-textual{accent-color:#000000;}.elementor-kit-8 input:focus:not([type="button"]):not([type="submit"]),.elementor-kit-8 textarea:focus,.elementor-kit-8 .elementor-field-textual:focus{accent-color:#000000;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1920px;}.e-con{--container-max-width:1920px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1366px){.elementor-kit-8 button,.elementor-kit-8 input[type="button"],.elementor-kit-8 input[type="submit"],.elementor-kit-8 .elementor-button{font-size:var( --e-global-typography-f601525-font-size );line-height:var( --e-global-typography-f601525-line-height );letter-spacing:var( --e-global-typography-f601525-letter-spacing );word-spacing:var( --e-global-typography-f601525-word-spacing );}}@media(max-width:1219px){.elementor-kit-8 button,.elementor-kit-8 input[type="button"],.elementor-kit-8 input[type="submit"],.elementor-kit-8 .elementor-button{font-size:var( --e-global-typography-f601525-font-size );line-height:var( --e-global-typography-f601525-line-height );letter-spacing:var( --e-global-typography-f601525-letter-spacing );word-spacing:var( --e-global-typography-f601525-word-spacing );padding:0.5rem 1rem 0.5rem 1rem;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}.elementor-kit-8{--e-page-transition-entrance-animation:e-page-transition-fade-out;}}@media(max-width:767px){.elementor-kit-8 button,.elementor-kit-8 input[type="button"],.elementor-kit-8 input[type="submit"],.elementor-kit-8 .elementor-button{font-size:var( --e-global-typography-f601525-font-size );line-height:var( --e-global-typography-f601525-line-height );letter-spacing:var( --e-global-typography-f601525-letter-spacing );word-spacing:var( --e-global-typography-f601525-word-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --LenoInk:#0C0E0D; --LenoSurface:#101211; --LenoCard:#141716; --LenoLine:#242826; --LenoText:#F2F0EC; --LenoBody:#C3C1BB; --LenoMuted:#9A9B96; --LenoBrass:#C7A26B; --LenoBrassLight:#E0BE88; --LenoOnBrass:#12140F; --LenoPaper:#F6F3EE; --LenoPaperAlt:#EBE6DD; --LenoWhite:#FFFFFF; --LenoLineLight:#DAD3C7; --LenoInkText:#17191A; --LenoBodyLight:#4C4E4A; --LenoMutedLight:#63655F; --LenoBrassDark:#82612D; --LenoDisplayFont:Bricolage Grotesque; --LenoBodyFont:Schibsted Grotesk; --LenoH1:clamp(2.75rem, 5.2vw, 5.125rem); --LenoH2:clamp(2.125rem, 3.6vw, 3.5rem); --LenoH3:clamp(1.625rem, 2.4vw, 2.25rem); --LenoH4:clamp(1.25rem, 1.6vw, 1.5rem); --LenoH5:clamp(1.0625rem, 1.2vw, 1.1875rem); --LenoTextLg:clamp(1rem, 1.15vw, 1.125rem); --LenoTextSm:0.875rem; --LenoLabel:0.6875rem; --LenoSp2:16px; --LenoSp3:24px; --LenoSp4:40px; --LenoSp5:64px; --LenoSectionY:clamp(64px, 7vw, 112px); --LenoGutter:clamp(20px, 4vw, 56px); --LenoMaxW:1920px; }
/* Start custom CSS *//* links, never buttons */
.elementor a:where(:not(.elementor-button):not([class*="leno-btn"]):not(.e-button-base)){color:var(--LenoBrassDark);}
.elementor a:where(:not(.elementor-button):not([class*="leno-btn"]):not(.e-button-base)):hover{color:var(--LenoBrass);}
.elementor .leno-bg-ink a:where(:not(.elementor-button):not([class*="leno-btn"]):not(.e-button-base)),.elementor .leno-bg-surface a:where(:not(.elementor-button):not([class*="leno-btn"]):not(.e-button-base)),.elementor .leno-bg-card a:where(:not(.elementor-button):not([class*="leno-btn"]):not(.e-button-base)){color:var(--LenoBrass);}
.elementor .leno-bg-ink a:where(:not(.elementor-button):not([class*="leno-btn"]):not(.e-button-base)):hover,.elementor .leno-bg-surface a:where(:not(.elementor-button):not([class*="leno-btn"]):not(.e-button-base)):hover,.elementor .leno-bg-card a:where(:not(.elementor-button):not([class*="leno-btn"]):not(.e-button-base)):hover{color:var(--LenoBrassLight);}

/* button text colours, doubled class so nothing can override them */
.elementor .leno-btn.leno-btn{color:var(--LenoOnBrass);background-color:var(--LenoBrass);}
.elementor .leno-btn.leno-btn:hover{color:var(--LenoOnBrass);background-color:var(--LenoBrassLight);}
.elementor .leno-btn-ghost.leno-btn-ghost{color:var(--LenoBrass);background-color:transparent;}
.elementor .leno-btn-ghost.leno-btn-ghost:hover{color:var(--LenoOnBrass);background-color:var(--LenoBrass);}
.elementor .leno-btn-outline-l.leno-btn-outline-l{color:var(--LenoInkText);background-color:transparent;}
.elementor .leno-btn-outline-l.leno-btn-outline-l:hover{color:var(--LenoPaper);background-color:var(--LenoInkText);}

/* stray atomic buttons never fall back to Elementor blue */
.elementor .e-button-base:not([class*="leno-"]){background-color:var(--LenoBrass);color:var(--LenoOnBrass);border-radius:0;}

/* accent modifier must beat the heading class */
.elementor .leno-accent.leno-accent{color:var(--LenoBrass);}
.elementor .leno-accent-l.leno-accent-l{color:var(--LenoBrassDark);}

.elementor-search-form__submit{background-color:var(--LenoBrass);color:var(--LenoOnBrass);}
/* prose */
.elementor .leno-prose{max-width:760px;}
.elementor .leno-prose h2{font-family:var(--LenoDisplayFont);font-size:var(--LenoH3);font-weight:400;line-height:1.15em;letter-spacing:-0.01em;color:var(--LenoInkText);margin:48px 0 14px;}
.elementor .leno-prose h2:first-child{margin-top:0;}
.elementor .leno-prose h3{font-family:var(--LenoBodyFont);font-size:var(--LenoH5);font-weight:600;letter-spacing:0.02em;color:var(--LenoInkText);margin:30px 0 8px;}
.elementor .leno-prose p,.elementor .leno-prose li{font-family:var(--LenoBodyFont);font-size:1rem;line-height:1.75;color:var(--LenoBodyLight);}
.elementor .leno-prose p{margin:0 0 16px;}
.elementor .leno-prose ul,.elementor .leno-prose ol{margin:0 0 18px;padding-inline-start:22px;}
.elementor .leno-prose li{margin-bottom:8px;}
.elementor .leno-prose strong{color:var(--LenoInkText);font-weight:600;}
.elementor .leno-prose a{color:var(--LenoBrassDark);text-decoration:underline;text-underline-offset:3px;}
.elementor .leno-prose table{width:100%;border-collapse:collapse;margin:0 0 20px;}
.elementor .leno-prose th,.elementor .leno-prose td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--LenoLineLight);font-family:var(--LenoBodyFont);font-size:0.9375rem;line-height:1.6;color:var(--LenoBodyLight);vertical-align:top;}
.elementor .leno-prose th{color:var(--LenoInkText);font-weight:600;border-bottom-color:var(--LenoInkText);}
.elementor .leno-prose .leno-todo{background:#FFF4D6;color:#5A4300;padding:2px 6px;font-weight:600;}
/* centering: rows inside a centred block must centre their own content, because .e-con forces width:100% */
.elementor .leno-center .leno-row{justify-content:center;}
.elementor .leno-center .leno-row-top{justify-content:center;}
/* anchors clear the sticky header */
.elementor .e-con[id]{scroll-margin-top:110px;}
/* row modifiers: leno-inner sets flex-direction column, so a row class on the SAME element
   needs the extra specificity of the doubled .elementor-kit-8 to win. Global class order cannot be relied on. */
.elementor .leno-inner.leno-row-top{flex-direction:row;align-items:flex-start;flex-wrap:wrap;}
.elementor .leno-inner.leno-row-mid{flex-direction:row;align-items:center;flex-wrap:wrap;}
.elementor .leno-inner.leno-row-rev{flex-direction:row-reverse;align-items:center;flex-wrap:wrap;}
.elementor .leno-inner.leno-row{flex-direction:row;align-items:center;flex-wrap:wrap;}
.elementor .leno-inner.leno-between{flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap;}
.elementor .leno-inner.leno-split{flex-direction:row;align-items:stretch;flex-wrap:wrap;}
/* one continuous hover surface: each title gets an invisible cushion so a few px left, right or below still counts as hovering it */
.elementor .e-n-menu-title{position:relative;}
.elementor .e-n-menu-title::before{content:'';position:absolute;top:-14px;bottom:-18px;left:-14px;right:-14px;z-index:0;}
.elementor .e-n-menu-title > *{position:relative;z-index:1;}
/* the two entries that only make sense once the menu has collapsed to a burger */
@media (min-width:1025px){.elementor [id='mm-phone'],.elementor [id='mm-cta']{display:none;}}
@media (max-width:1024px){
  .elementor [id='mm-phone'] .e-n-menu-title-text{color:var(--LenoBrass);}
  .elementor [id='mm-cta'] .e-n-menu-title-text{background:var(--LenoBrass);color:var(--LenoOnBrass);font-weight:600;padding:13px 22px;display:inline-block;}
  .elementor [id='mm-cta']{margin-top:6px;}
}

/* mega menu */
.elementor .e-n-menu-title{position:relative;}
.elementor .e-n-menu-title::before{content:'';position:absolute;top:-14px;bottom:-18px;left:-14px;right:-14px;z-index:0;}
.elementor .e-n-menu-title > *{position:relative;z-index:1;}
@media (min-width:1025px){.elementor #mm-phone,.elementor #mm-cta{display:none;}}
@media (max-width:1024px){
  .elementor .e-n-menu-wrapper{background-color:var(--LenoSurface);border-block-start:1px solid var(--LenoLine);}
  .elementor .e-n-menu-heading .e-n-menu-title{border-block-end:1px solid var(--LenoLine);}
  .elementor .e-n-menu-title-text{color:var(--LenoText);}
  .elementor .e-n-menu-toggle,.elementor .e-n-menu-toggle i,.elementor .e-n-menu-toggle svg{color:var(--LenoText);fill:var(--LenoText);background:transparent;}
  .elementor #mm-phone .e-n-menu-title-text{color:var(--LenoBrass);}
  .elementor #mm-cta{border-block-end:0;}
  .elementor #mm-cta .e-n-menu-title-text{background:var(--LenoBrass);color:var(--LenoOnBrass);font-weight:600;padding:13px 22px;display:inline-block;}
}
/* woocommerce */
.elementor .woocommerce, .elementor .woocommerce p, .elementor .woocommerce li, .elementor .woocommerce td, .elementor .woocommerce th, .elementor .woocommerce label, .elementor .woocommerce span{font-family:var(--LenoBodyFont);color:var(--LenoBody);}
.elementor .woocommerce h1,.elementor .woocommerce h2,.elementor .woocommerce h3{font-family:var(--LenoDisplayFont);color:var(--LenoText);}
.elementor .woocommerce a{color:var(--LenoBrass);}
.elementor .woocommerce a:hover{color:var(--LenoBrassLight);}
.elementor .woocommerce ul.products li.product{background:var(--LenoCard);border:1px solid var(--LenoLine);padding:0 0 20px;text-align:left;}
.elementor .woocommerce ul.products li.product a img{margin:0;border-radius:0;}
.elementor .woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--LenoBodyFont);color:var(--LenoText);font-size:1rem;font-weight:500;line-height:1.4;padding:18px 18px 6px;}
.elementor .woocommerce ul.products li.product .price{display:block;color:var(--LenoBrass);font-weight:600;font-size:1rem;padding:0 18px;}
.elementor .woocommerce ul.products li.product .price del{color:var(--LenoMuted);font-weight:400;}
.elementor .woocommerce ul.products li.product .button{margin:16px 18px 0;}
.elementor .woocommerce .woocommerce-result-count{color:var(--LenoMuted);}
.elementor .woocommerce .woocommerce-ordering select{background:var(--LenoInk);color:var(--LenoBody);border:1px solid var(--LenoLine);border-radius:0;padding:10px 12px;}
.elementor .woocommerce .button,.elementor .woocommerce a.button,.elementor .woocommerce button.button,.elementor .woocommerce input.button,.elementor .woocommerce .single_add_to_cart_button{background-color:var(--LenoBrass);color:var(--LenoOnBrass);border:0;border-radius:0;font-family:var(--LenoBodyFont);font-weight:600;font-size:0.875rem;padding:14px 24px;transition:background-color .2s;}
.elementor .woocommerce .button:hover,.elementor .woocommerce a.button:hover,.elementor .woocommerce button.button:hover,.elementor .woocommerce input.button:hover,.elementor .woocommerce .single_add_to_cart_button:hover{background-color:var(--LenoBrassLight);color:var(--LenoOnBrass);}
.elementor .woocommerce .button.alt,.elementor .woocommerce a.button.alt,.elementor .woocommerce button.button.alt{background-color:var(--LenoBrass);color:var(--LenoOnBrass);}
.elementor .woocommerce input[type=text],.elementor .woocommerce input[type=email],.elementor .woocommerce input[type=tel],.elementor .woocommerce input[type=number],.elementor .woocommerce input[type=password],.elementor .woocommerce select,.elementor .woocommerce textarea,.elementor .woocommerce .select2-selection{background:var(--LenoInk);color:var(--LenoText);border:1px solid var(--LenoLine);border-radius:0;padding:12px 14px;font-family:var(--LenoBodyFont);}
.elementor .woocommerce label{color:var(--LenoMuted);font-size:0.75rem;letter-spacing:0.12em;text-transform:uppercase;font-weight:500;}
.elementor .woocommerce .quantity input.qty{background:var(--LenoInk);color:var(--LenoText);border:1px solid var(--LenoLine);border-radius:0;padding:12px 8px;}
.elementor .woocommerce div.product p.price,.elementor .woocommerce div.product span.price{color:var(--LenoBrass);font-family:var(--LenoBodyFont);font-weight:600;}
.elementor .woocommerce div.product .product_title{font-family:var(--LenoDisplayFont);color:var(--LenoText);}
.elementor .woocommerce div.product .woocommerce-product-details__short-description{color:var(--LenoBody);}
.elementor .woocommerce .product_meta,.elementor .woocommerce .product_meta span{color:var(--LenoMuted);font-size:0.8125rem;}
.elementor .woocommerce .stock.in-stock{color:var(--LenoBrass);}
.elementor .woocommerce .stock.out-of-stock{color:var(--LenoMuted);}
.elementor .woocommerce-tabs ul.tabs{border-bottom:1px solid var(--LenoLine);padding:0;margin:0 0 28px;}
.elementor .woocommerce-tabs ul.tabs li{background:transparent;border:0;border-radius:0;margin:0 24px 0 0;padding:0;}
.elementor .woocommerce-tabs ul.tabs li::before,.elementor .woocommerce-tabs ul.tabs li::after{display:none;}
.elementor .woocommerce-tabs ul.tabs li a{color:var(--LenoMuted);font-family:var(--LenoBodyFont);font-size:0.75rem;letter-spacing:0.14em;text-transform:uppercase;font-weight:500;padding:0 0 14px;display:inline-block;}
.elementor .woocommerce-tabs ul.tabs li.active a{color:var(--LenoBrass);border-bottom:1px solid var(--LenoBrass);}
.elementor .woocommerce-breadcrumb{color:var(--LenoMuted);font-size:0.8125rem;}
.elementor .woocommerce table.shop_table{border:1px solid var(--LenoLine);border-radius:0;border-collapse:collapse;}
.elementor .woocommerce table.shop_table th{color:var(--LenoText);font-family:var(--LenoBodyFont);font-size:0.75rem;letter-spacing:0.12em;text-transform:uppercase;border-bottom:1px solid var(--LenoLine);}
.elementor .woocommerce table.shop_table td{border-top:1px solid var(--LenoLine);color:var(--LenoBody);}
.elementor .woocommerce .cart_totals h2,.elementor .woocommerce-checkout h3{font-family:var(--LenoDisplayFont);color:var(--LenoText);}
.elementor .woocommerce .cart-collaterals .cart_totals,.elementor .woocommerce-checkout #order_review{background:var(--LenoCard);border:1px solid var(--LenoLine);padding:28px;}
.elementor .woocommerce-message,.elementor .woocommerce-info,.elementor .woocommerce-error{background:var(--LenoCard);border-top:2px solid var(--LenoBrass);color:var(--LenoBody);border-radius:0;}
.elementor .woocommerce-message::before,.elementor .woocommerce-info::before{color:var(--LenoBrass);}
.elementor .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border:1px solid var(--LenoLine);}
.elementor .woocommerce-MyAccount-navigation li{border-bottom:1px solid var(--LenoLine);}
.elementor .woocommerce-MyAccount-navigation li a{display:block;padding:14px 18px;color:var(--LenoBody);font-family:var(--LenoBodyFont);font-size:0.9375rem;}
.elementor .woocommerce-MyAccount-navigation li.is-active a{color:var(--LenoBrass);background:var(--LenoCard);}
.elementor .woocommerce nav.woocommerce-pagination ul{border:0;gap:8px;display:flex;}
.elementor .woocommerce nav.woocommerce-pagination ul li{border:0;}
.elementor .woocommerce nav.woocommerce-pagination ul li a,.elementor .woocommerce nav.woocommerce-pagination ul li span{border:1px solid var(--LenoLine);color:var(--LenoBody);padding:10px 14px;background:transparent;}
.elementor .woocommerce nav.woocommerce-pagination ul li span.current{border-color:var(--LenoBrass);color:var(--LenoOnBrass);background:var(--LenoBrass);}
.elementor .woocommerce span.onsale{background:var(--LenoBrass);color:var(--LenoOnBrass);border-radius:0;font-family:var(--LenoBodyFont);font-weight:600;}
.elementor .woocommerce .woocommerce-form-coupon-toggle,.elementor .woocommerce form.checkout_coupon{background:var(--LenoCard);border:1px solid var(--LenoLine);border-radius:0;}
/* woo widgets inherit the light kit defaults, so pull them back to the dark palette */
.elementor [class*="elementor-widget-woocommerce"]{color:var(--LenoBody);}
.elementor [class*="elementor-widget-woocommerce"] h1,.elementor [class*="elementor-widget-woocommerce"] h2,.elementor [class*="elementor-widget-woocommerce"] h3,.elementor [class*="elementor-widget-woocommerce"] h4{color:var(--LenoText);font-family:var(--LenoDisplayFont);}
.elementor .elementor-widget-woocommerce-product-title .product_title{color:var(--LenoText);font-family:var(--LenoDisplayFont);}
.elementor .elementor-widget-woocommerce-product-price .price,.elementor .elementor-widget-woocommerce-product-price .amount,.elementor .elementor-widget-woocommerce-product-price bdi{color:var(--LenoBrass);font-family:var(--LenoBodyFont);font-weight:600;}
.elementor .elementor-widget-woocommerce-product-meta .detail-label{color:var(--LenoMuted);font-size:0.75rem;letter-spacing:0.12em;text-transform:uppercase;}
.elementor .elementor-widget-woocommerce-product-meta .detail-content,.elementor .elementor-widget-woocommerce-product-meta .sku,.elementor .elementor-widget-woocommerce-product-meta a{color:var(--LenoBody);}
.elementor .elementor-widget-woocommerce-product-meta a:hover{color:var(--LenoBrass);}
.elementor .elementor-widget-woocommerce-breadcrumb,.elementor .elementor-widget-woocommerce-breadcrumb a{color:var(--LenoMuted);font-size:0.8125rem;}
.elementor .elementor-widget-woocommerce-breadcrumb a:hover{color:var(--LenoBrass);}
.elementor .elementor-widget-woocommerce-product-related ul.products li.product .woocommerce-loop-product__title,.elementor .elementor-widget-woocommerce-archive-products ul.products li.product .woocommerce-loop-product__title{color:var(--LenoText);}
.elementor [class*="elementor-widget-woocommerce"] .price,.elementor [class*="elementor-widget-woocommerce"] .amount{color:var(--LenoBrass);}
.elementor [class*="elementor-widget-woocommerce"] .price del,.elementor [class*="elementor-widget-woocommerce"] .price del .amount{color:var(--LenoMuted);}
.elementor [class*="elementor-widget-woocommerce"] .button,.elementor [class*="elementor-widget-woocommerce"] button.button,.elementor [class*="elementor-widget-woocommerce"] a.button,.elementor [class*="elementor-widget-woocommerce"] .single_add_to_cart_button{color:var(--LenoOnBrass);background-color:var(--LenoBrass);}
.elementor [class*="elementor-widget-woocommerce"] .woocommerce-tabs ul.tabs li a{color:var(--LenoMuted);}
.elementor [class*="elementor-widget-woocommerce"] .woocommerce-tabs ul.tabs li.active a{color:var(--LenoBrass);}
.elementor [class*="elementor-widget-woocommerce"] .stock.in-stock{color:var(--LenoBrass);}
/* meta spacing */
.elementor .product_meta .detail-container{display:block;margin-bottom:8px;}
.elementor .product_meta .detail-label{margin-right:8px;color:var(--LenoMuted);font-size:0.75rem;letter-spacing:0.12em;text-transform:uppercase;}
.elementor .product_meta .sku,.elementor .product_meta .detail-content{color:var(--LenoBody);}
.woocommerce-notices-wrapper .woocommerce-message,.woocommerce-notices-wrapper .woocommerce-info,.woocommerce-notices-wrapper .woocommerce-error{background:var(--LenoCard);color:var(--LenoBody);border-top:2px solid var(--LenoBrass);border-radius:0;font-family:var(--LenoBodyFont);}
.woocommerce-notices-wrapper .woocommerce-message::before,.woocommerce-notices-wrapper .woocommerce-info::before{color:var(--LenoBrass);}
.woocommerce-notices-wrapper .woocommerce-message .button,.woocommerce-notices-wrapper .woocommerce-info .button{background-color:var(--LenoBrass);color:var(--LenoOnBrass);border-radius:0;font-weight:600;}
.elementor .elementor-widget-woocommerce-product-images .woocommerce-product-gallery__image img{border:1px solid var(--LenoLine);}
/* elementor cart and checkout widgets */
.elementor .e-cart-section,.elementor .e-cart-totals,.elementor .e-apply-coupon,.elementor .e-checkout-section,.elementor [class*="e-checkout__container"] .e-checkout-payment,.elementor .e-woocommerce-my-account-tabs{background-color:var(--LenoCard);border:1px solid var(--LenoLine);border-radius:0;}
.elementor [class*="e-cart"],.elementor [class*="e-checkout"],.elementor [class*="e-woocommerce-my-account"]{color:var(--LenoBody);}
.elementor [class*="e-cart"] h1,.elementor [class*="e-cart"] h2,.elementor [class*="e-cart"] h3,.elementor [class*="e-checkout"] h1,.elementor [class*="e-checkout"] h2,.elementor [class*="e-checkout"] h3{color:var(--LenoText);font-family:var(--LenoDisplayFont);}
.elementor .e-shop-table th,.elementor [class*="e-checkout"] th{color:var(--LenoText);font-family:var(--LenoBodyFont);font-size:0.75rem;letter-spacing:0.12em;text-transform:uppercase;border-bottom:1px solid var(--LenoLine);}
.elementor .e-shop-table td,.elementor [class*="e-checkout"] td{color:var(--LenoBody);border-top:1px solid var(--LenoLine);}
.elementor [class*="e-cart"] a,.elementor [class*="e-checkout"] a{color:var(--LenoBrass);}
.elementor [class*="e-cart"] a:hover,.elementor [class*="e-checkout"] a:hover{color:var(--LenoBrassLight);}
.elementor [class*="e-cart"] .woocommerce-Price-amount,.elementor [class*="e-checkout"] .woocommerce-Price-amount{color:var(--LenoBrass);}
.elementor [class*="e-cart"] .remove,.elementor [class*="e-checkout"] .remove{color:var(--LenoMuted);}
.elementor [class*="e-cart"] .remove:hover{color:var(--LenoBrass);}
.elementor [class*="e-cart"] input,.elementor [class*="e-cart"] select,.elementor [class*="e-cart"] textarea,.elementor [class*="e-checkout"] input,.elementor [class*="e-checkout"] select,.elementor [class*="e-checkout"] textarea,.elementor [class*="e-checkout"] .select2-selection{background-color:var(--LenoInk);color:var(--LenoText);border:1px solid var(--LenoLine);border-radius:0;}
.elementor [class*="e-cart"] label,.elementor [class*="e-checkout"] label{color:var(--LenoMuted);}
.elementor [class*="e-cart"] .button,.elementor [class*="e-checkout"] .button,.elementor [class*="e-cart"] button,.elementor [class*="e-checkout"] button{background-color:var(--LenoBrass);color:var(--LenoOnBrass);border:0;border-radius:0;font-family:var(--LenoBodyFont);font-weight:600;}
.elementor [class*="e-cart"] .remove,.elementor [class*="e-cart"] a.remove{background-color:transparent;}
.elementor [class*="e-checkout"] .woocommerce-terms-and-conditions-wrapper,.elementor [class*="e-checkout"] .wc_payment_methods{color:var(--LenoBody);}
.elementor [class*="e-checkout"] .wc_payment_method label{color:var(--LenoText);text-transform:none;letter-spacing:0;font-size:0.9375rem;}
/* checkout fields: elementor ships (1,4,0) .elementor-kit-8s for these, so match them and add body */
body .elementor-widget-woocommerce-checkout-page .woocommerce #customer_details .form-row .input-text,body .elementor-widget-woocommerce-checkout-page .woocommerce #customer_details .form-row select,body .elementor-widget-woocommerce-checkout-page .woocommerce #customer_details .form-row textarea,body .elementor-widget-woocommerce-checkout-page .woocommerce #order_review .input-text{background-color:var(--LenoInk);color:var(--LenoText);border:1px solid var(--LenoLine);border-radius:0;}
body .elementor-widget-woocommerce-checkout-page .woocommerce #customer_details .form-row .input-text:focus,body .elementor-widget-woocommerce-checkout-page .woocommerce #customer_details .form-row select:focus{border-color:var(--LenoBrass);outline:none;}
body .elementor-widget-woocommerce-checkout-page .woocommerce #customer_details .form-row label,body .elementor-widget-woocommerce-checkout-page .woocommerce #order_review label{color:var(--LenoMuted);}
body .elementor-widget-woocommerce-checkout-page .woocommerce .required,body .elementor-widget-woocommerce-checkout-page .woocommerce abbr.required{color:var(--LenoBrass);border:0;text-decoration:none;}
body .elementor-widget-woocommerce-checkout-page .woocommerce .woocommerce-input-wrapper strong,body .elementor-widget-woocommerce-checkout-page .woocommerce .woocommerce-input-wrapper{color:var(--LenoBody);}
body .elementor-widget-woocommerce-checkout-page .woocommerce .select2-container .select2-selection{background-color:var(--LenoInk);border:1px solid var(--LenoLine);border-radius:0;}
body .elementor-widget-woocommerce-checkout-page .woocommerce .select2-container .select2-selection__rendered{color:var(--LenoText);}
body .select2-dropdown,body .select2-results__option{background-color:var(--LenoCard);color:var(--LenoBody);}
body .select2-container--default .select2-results__option--highlighted[aria-selected]{background-color:var(--LenoBrass);color:var(--LenoOnBrass);}
body .select2-search__field{background-color:var(--LenoInk);color:var(--LenoText);border:1px solid var(--LenoLine);}
body .elementor-widget-woocommerce-cart .woocommerce #coupon_code{background-color:var(--LenoInk);color:var(--LenoText);border:1px solid var(--LenoLine);border-radius:0;}
/* checkout readonly country label sits on elementor's light field area */
body .elementor-widget-woocommerce-checkout-page .woocommerce-input-wrapper,body .elementor-widget-woocommerce-checkout-page .woocommerce-input-wrapper strong{color:#17191A;}
/* shop loop card */
.elementor .woocommerce ul.products li.product{padding:0 0 22px;display:flex;flex-direction:column;}
.elementor .woocommerce ul.products li.product .button{display:block;width:calc(100% - 36px);margin:18px 18px 0;text-align:center;padding:13px 18px;font-size:0.875rem;letter-spacing:0.01em;}
.elementor .woocommerce ul.products li.product .added_to_cart{display:none;}
.elementor .woocommerce ul.products li.product .button.added::after{content:"";}
.elementor .woocommerce ul.products li.product .price{margin-bottom:auto;padding-bottom:4px;}
/* cart and checkout button hovers */
.elementor [class*="e-cart"] .button:hover,.elementor [class*="e-checkout"] .button:hover,.elementor [class*="e-cart"] button:hover,.elementor [class*="e-checkout"] button:hover{background-color:var(--LenoBrassLight);color:var(--LenoOnBrass);}
.elementor .woocommerce .checkout-button:hover,.elementor .woocommerce .single_add_to_cart_button:hover,.elementor .woocommerce a.button:hover{background-color:var(--LenoBrassLight);color:var(--LenoOnBrass);}
.elementor .e-apply-coupon:hover,.elementor .e-cart__container button.button:hover{background-color:var(--LenoBrass);color:var(--LenoOnBrass);}
/* checkout county select overflowed its box */
body .elementor-widget-woocommerce-checkout-page .woocommerce #customer_details .form-row select{height:auto;min-height:48px;line-height:1.4;padding:12px 14px;appearance:none;background-image:none;}
body .elementor-widget-woocommerce-checkout-page .woocommerce #customer_details .form-row .select2-container .select2-selection--single{height:auto;min-height:48px;display:flex;align-items:center;padding:0 14px;}
body .elementor-widget-woocommerce-checkout-page .woocommerce #customer_details .form-row .select2-container .select2-selection__rendered{line-height:1.4;padding:0;}
body .elementor-widget-woocommerce-checkout-page .woocommerce #customer_details .form-row .select2-container .select2-selection__arrow{height:100%;top:0;right:10px;}
/* cart bump feedback */
@keyframes lenoCartBump{0%{transform:scale(1);}30%{transform:scale(1.18);}60%{transform:scale(0.96);}100%{transform:scale(1);}}
.leno-cart-bump{animation:lenoCartBump .5s cubic-bezier(.2,.6,.2,1);}
/* form radio and checkbox option labels */
.elementor .elementor-field-option label,.elementor .elementor-field-subgroup label{color:var(--LenoBody);font-family:var(--LenoBodyFont);font-size:0.9375rem;font-weight:400;letter-spacing:0;text-transform:none;cursor:pointer;}
.elementor .elementor-field-subgroup{display:flex;flex-wrap:wrap;gap:10px 22px;}
.elementor .elementor-field-option{display:inline-flex;align-items:center;gap:8px;}
.elementor input[type=radio],.elementor input[type=checkbox]{accent-color:var(--LenoBrass);width:16px;height:16px;}
.elementor .elementor-field-type-upload input[type=file]{color:var(--LenoBody);font-family:var(--LenoBodyFont);}
.elementor .e-form__indicators__indicator__progress__meter{color:var(--LenoOnBrass);font-weight:600;}
/* === LENO WOO BUTTON FIX v1 === */
body .elementor-widget-woocommerce-checkout-page .woocommerce-checkout #payment #place_order{background-color:var(--LenoBrass);color:var(--LenoOnBrass);border-color:var(--LenoBrass);border-radius:0;}
body .elementor-widget-woocommerce-checkout-page .woocommerce-checkout #payment #place_order:hover{background-color:var(--LenoBrassLight);color:var(--LenoOnBrass);border-color:var(--LenoBrassLight);}
body .elementor-widget-woocommerce-cart .woocommerce .wc-proceed-to-checkout .checkout-button{background-color:var(--LenoBrass);color:var(--LenoOnBrass);border-color:var(--LenoBrass);border-radius:0;}
body .elementor-widget-woocommerce-cart .woocommerce .wc-proceed-to-checkout .checkout-button:hover{background-color:var(--LenoBrassLight);color:var(--LenoOnBrass);border-color:var(--LenoBrassLight);}
body :is(.elementor-widget-wc-add-to-cart,.woocommerce div.product .elementor-widget-wc-add-to-cart).elementor-button-info button.button.alt.elementor-button{background-color:var(--LenoBrass);color:var(--LenoOnBrass);border-color:var(--LenoBrass);}
body :is(.elementor-widget-wc-add-to-cart,.woocommerce div.product .elementor-widget-wc-add-to-cart).elementor-button-info button.button.alt.elementor-button:hover{background-color:var(--LenoBrassLight);color:var(--LenoOnBrass);border-color:var(--LenoBrassLight);}
/* secondary woo buttons: ghost, never --e-a-bg-default */
body .elementor-widget-woocommerce-cart .woocommerce button.button,body .elementor-widget-woocommerce-checkout-page .woocommerce button.woocommerce-button,body .elementor-widget-woocommerce-my-account .woocommerce button.button,body .elementor-widget-woocommerce-my-account .woocommerce a.button{background-color:rgba(0,0,0,0);color:var(--LenoBrass);border:1px solid var(--LenoBrass);border-radius:0;}
body .elementor-widget-woocommerce-cart .woocommerce button.button:hover,body .elementor-widget-woocommerce-checkout-page .woocommerce button.woocommerce-button:hover,body .elementor-widget-woocommerce-my-account .woocommerce button.button:hover,body .elementor-widget-woocommerce-my-account .woocommerce a.button:hover{background-color:var(--LenoBrass);color:var(--LenoOnBrass);border-color:var(--LenoBrass);}

/* === LENO FORM OPTION FIX v1 === */
.elementor .leno-bg-ink .elementor-field-option label,.elementor .leno-bg-surface .elementor-field-option label,.elementor .leno-bg-card .elementor-field-option label,body:not(.leno-light) .elementor-field-option label{color:var(--LenoBody);}
.elementor .elementor-field-option input[type="radio"],.elementor .elementor-field-option input[type="checkbox"]{accent-color:var(--LenoBrass);}

/* === LENO LAYOUT ALIGNMENT v1 === */
/* Inside our own sections every nested container is pure layout: no inline padding of its own,
   so the left edge is set once, by the section gutter. Wrappers that legitimately pad their
   contents (cards, bands, strips, features) are excluded. Header and footer are untouched. */
.elementor .leno-section .e-con:not(.leno-card):not(.leno-card-l):not(.leno-band):not(.leno-band-brass):not(.leno-band-brass-l):not(.leno-strip):not(.leno-strip-l):not(.leno-feature):not(.leno-feature-l):not([class*="leno-pad"]):not(.leno-bg-brass):not(.leno-bg-card):not(.e-n-menu-content){padding-inline:0;}
.elementor .leno-section .leno-inner,.elementor .leno-section .leno-row,.elementor .leno-section .leno-row-top,.elementor .leno-section .leno-row-mid,.elementor .leno-section .leno-row-rev,.elementor .leno-section .leno-stack,.elementor .leno-section .leno-stack-sm,.elementor .leno-section .leno-stack-0,.elementor .leno-section .leno-split,.elementor .leno-section .leno-between,.elementor .leno-section .leno-flex1{padding-block:0;}
/* A padding class on the same element always wins over the layout reset above: doubled class = (0,4,0). */
.elementor .leno-section .leno-pad-24.leno-pad-24{padding:24px;}
.elementor .leno-section .leno-pad-card.leno-pad-card{padding:24px;}
.elementor .leno-section .leno-pad-40.leno-pad-40{padding:clamp(24px,3vw,40px);}
.elementor .leno-section .leno-pad-56.leno-pad-56{padding:clamp(28px,4vw,56px);}
/* Hairline grids: the line colour must only ever show between cells, never as a bar above and below. */
.elementor .leno-section .leno-grid-4.leno-bg-line,.elementor .leno-section .leno-grid-3.leno-bg-line,.elementor .leno-section .leno-grid-3-hair,.elementor .leno-section .leno-grid-4-hair{padding:0;}
/* kicker rule: a hairline, vertically centred on the label, never a slab */
.elementor .e-con.leno-rule,.elementor .leno-rule{width:28px;min-width:28px;height:2px;padding:0;flex:0 0 auto;align-self:center;border:0;}
.elementor .leno-row:has(> .leno-rule){gap:var(--LenoSp2);}

/* === LENO FAQ AND BLOG v1 === */
/* Widget controls win on single classes, so every rule here doubles its class. */
body .elementor .elementor-accordion .elementor-accordion-item{border-block-start:0;border-block-end:1px solid var(--LenoLine);}
body .elementor .elementor-accordion .elementor-accordion-item:first-child{border-block-start:1px solid var(--LenoLine);}
body .elementor .elementor-accordion .elementor-tab-title.elementor-tab-title{padding:22px 26px 22px 22px;background:transparent;position:relative;transition:background .25s ease,padding-inline-start .25s ease;}
body .elementor .elementor-accordion .elementor-tab-title.elementor-tab-title::before{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:2px;background:var(--LenoBrass);transform:scaleY(0);transition:transform .3s cubic-bezier(.2,.6,.2,1);}
body .elementor .elementor-accordion .elementor-tab-title.elementor-tab-title:hover{background:var(--LenoCard);}
body .elementor .elementor-accordion .elementor-tab-title.elementor-active{background:var(--LenoCard);padding-inline-start:26px;}
body .elementor .elementor-accordion .elementor-tab-title.elementor-active::before{transform:scaleY(1);}
body .elementor .elementor-accordion .elementor-tab-content.elementor-tab-content{padding:14px 26px 28px 26px;background:var(--LenoCard);border:0;}
body .elementor .elementor-accordion .elementor-tab-content p{max-width:70ch;color:var(--LenoBody);line-height:1.7;margin:0;}
body .elementor .elementor-accordion .elementor-accordion-icon{width:auto;margin-inline-end:14px;color:var(--LenoMuted);transition:color .25s ease;}
body .elementor .elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon,body .elementor .elementor-accordion .elementor-tab-title:hover .elementor-accordion-icon{color:var(--LenoBrass);}
/* Blog cards */
body .elementor .elementor-post__card{border:1px solid var(--LenoLineLight);box-shadow:none;transition:border-color .3s ease,transform .4s cubic-bezier(.2,.6,.2,1);}
body .elementor .elementor-post__card:hover{border-color:var(--LenoBrassDark);transform:translateY(-3px);}
body .elementor .elementor-post__card .elementor-post__thumbnail__link.elementor-post__thumbnail__link{margin-block-end:0;}
body .elementor .elementor-post__card .elementor-post__text.elementor-post__text{padding:24px 26px 20px;margin-block-start:0;}
body .elementor .elementor-post__card .elementor-post__title.elementor-post__title{margin:0 0 10px;font-size:1.0625rem;line-height:1.35;}
body .elementor .elementor-post__card .elementor-post__excerpt.elementor-post__excerpt{margin:0 0 18px;}
body .elementor .elementor-post__card .elementor-post__excerpt p{margin:0;line-height:1.6;}
body .elementor .elementor-post__card .elementor-post__read-more.elementor-post__read-more{margin:0;}
body .elementor .elementor-post__card .elementor-post__meta-data.elementor-post__meta-data{padding:14px 26px;margin:0;border-block-start:1px solid var(--LenoLineLight);}
/* hero trust strip: plain labels become quiet chips */
body .elementor [id="hero"] .leno-row > .leno-label-muted{border:1px solid var(--LenoLine);padding:7px 12px;line-height:1;}

/* === LENO CHECKOUT AND CART v1 === */
.elementor [class*="elementor-widget-woocommerce-"] .form-row label,.elementor [class*="elementor-widget-woocommerce-"] .woocommerce-billing-fields label,.elementor [class*="elementor-widget-woocommerce-"] .woocommerce-additional-fields label{font-family:var(--LenoBodyFont);font-size:var(--LenoLabel);letter-spacing:0.16em;text-transform:uppercase;color:var(--LenoMuted);margin-block-end:8px;display:block;}
.elementor [class*="elementor-widget-woocommerce-"] input.input-text,.elementor [class*="elementor-widget-woocommerce-"] textarea,.elementor [class*="elementor-widget-woocommerce-"] .select2-selection--single,.elementor [class*="elementor-widget-woocommerce-"] select{background:var(--LenoInk);border:1px solid var(--LenoLine);border-radius:0;color:var(--LenoText);font-family:var(--LenoBodyFont);font-size:0.9375rem;padding:15px 16px;min-height:52px;transition:border-color .25s ease,box-shadow .25s ease,background .25s ease;}
.elementor [class*="elementor-widget-woocommerce-"] input.input-text:focus,.elementor [class*="elementor-widget-woocommerce-"] textarea:focus,.elementor [class*="elementor-widget-woocommerce-"] select:focus{border-color:var(--LenoBrass);box-shadow:inset 0 -2px 0 0 var(--LenoBrass);outline:0;background:var(--LenoInk);}
.elementor [class*="elementor-widget-woocommerce-"] input.input-text::placeholder,.elementor [class*="elementor-widget-woocommerce-"] textarea::placeholder{color:var(--LenoMuted);opacity:.7;}
/* section shells: quieter borders, more air, one accent hairline at the top */
.elementor .e-checkout__container .e-checkout__order_review,.elementor .e-checkout__container .woocommerce-billing-fields,.elementor .e-checkout__container .woocommerce-additional-fields,.elementor .e-checkout__container .e-checkout__container_inner > div{border-radius:0;}
.elementor [class*="elementor-widget-woocommerce-checkout"] h3,.elementor [class*="elementor-widget-woocommerce-cart"] h3,.elementor [class*="elementor-widget-woocommerce-checkout"] .e-checkout-secondary-title{font-family:var(--LenoBodyFont);font-size:var(--LenoLabel);letter-spacing:0.18em;text-transform:uppercase;color:var(--LenoMuted);font-weight:500;margin-block-end:22px;padding-block-end:14px;border-block-end:1px solid var(--LenoLine);}
/* order summary reads like a receipt, totals get weight */
.elementor .woocommerce table.shop_table th,.elementor .woocommerce table.shop_table td{border-color:var(--LenoLine);padding:16px 0;}
.elementor .woocommerce .order-total td,.elementor .woocommerce .order-total th{padding-block-start:20px;font-size:1.125rem;}
.elementor .woocommerce .order-total .woocommerce-Price-amount{color:var(--LenoBrass);font-weight:600;}
/* the summary column follows you down a long form */
/* quantity control and coupon row */
.elementor .woocommerce .quantity input.qty{background:var(--LenoInk);border:1px solid var(--LenoLine);color:var(--LenoText);min-height:46px;border-radius:0;}
.elementor .woocommerce .coupon input.input-text{min-height:46px;}
/* payment box: no cream default, no rounded bubble */
.elementor .woocommerce #payment,.elementor .woocommerce ul.payment_methods,.elementor .woocommerce div.payment_box{background:transparent;border-radius:0;color:var(--LenoBody);}
.elementor .woocommerce div.payment_box{background:var(--LenoInk);border:1px solid var(--LenoLine);padding:16px 18px;}
.elementor .woocommerce div.payment_box::before{display:none;}
.elementor .woocommerce ul.payment_methods li{border-block-end:1px solid var(--LenoLine);padding-block:14px;list-style:none;}
/* notices: brass rule instead of the default blue bar */
.elementor .woocommerce-info,.elementor .woocommerce-message,.elementor .woocommerce-error{background:var(--LenoCard);border-block-start:2px solid var(--LenoBrass);color:var(--LenoBody);border-radius:0;}

/* === LENO GALLERY AND BLOG HEAD v1 === */
/* Blog index: the intro block sat as deep as a landing page hero */
body.page-id-464 .elementor [id="top"]{padding-block-start:clamp(40px,4vw,64px);padding-block-end:clamp(32px,3vw,48px);}
/* Gallery carousel: slides read as one strip, with a brass edge and a lift on hover */
body .elementor .elementor-image-carousel .swiper-slide{overflow:hidden;}
body .elementor .elementor-image-carousel .swiper-slide-inner{position:relative;display:block;overflow:hidden;}
body .elementor .elementor-image-carousel .swiper-slide-inner::after{content:"";position:absolute;inset-inline:0;inset-block-end:0;height:38%;background:linear-gradient(to top,rgba(12,14,13,.72),rgba(12,14,13,0));opacity:0;transition:opacity .45s ease;pointer-events:none;}
body .elementor .elementor-image-carousel .swiper-slide-image{display:block;transition:transform .7s cubic-bezier(.2,.6,.2,1);}
body .elementor .elementor-image-carousel .swiper-slide:hover .swiper-slide-image{transform:scale(1.05);}
body .elementor .elementor-image-carousel .swiper-slide:hover .swiper-slide-inner::after{opacity:1;}
body .elementor .elementor-image-carousel .swiper-slide-inner::before{content:"";position:absolute;inset-inline:0;inset-block-end:0;height:2px;background:var(--LenoBrass);transform:scaleX(0);transform-origin:left center;transition:transform .5s cubic-bezier(.2,.6,.2,1);z-index:2;}
body .elementor .elementor-image-carousel .swiper-slide:hover .swiper-slide-inner::before{transform:scaleX(1);}
body .elementor .elementor-widget-image-carousel .elementor-swiper-button{color:var(--LenoText);background:rgba(12,14,13,.55);width:52px;height:52px;display:flex;align-items:center;justify-content:center;transition:background .25s ease,color .25s ease;}
body .elementor .elementor-widget-image-carousel .elementor-swiper-button:hover{background:var(--LenoBrass);color:var(--LenoOnBrass);}
@media (prefers-reduced-motion: reduce){body .elementor .elementor-image-carousel .swiper-slide-image{transition:none;}body .elementor .elementor-image-carousel .swiper-slide:hover .swiper-slide-image{transform:none;}}

/* === LENO PARTS BAND v1 === */
/* The self-build band was a bordered box with the copy and the button simply stacked next
   to each other. It now reads as a deliberate strip: brass edge, copy left, action right. */
body .elementor .leno-band-brass{justify-content:space-between;align-items:center;gap:clamp(24px,3vw,56px);flex-wrap:wrap;background:var(--LenoSurface);border-width:0;border-inline-start:2px solid var(--LenoBrass);padding:clamp(28px,3vw,44px) clamp(24px,3vw,48px);}
body .elementor .leno-band-brass .leno-btn{flex:0 0 auto;}
@media (max-width:767px){body .elementor .leno-band-brass{flex-direction:column;align-items:flex-start;}}

/* === LENO CHECKOUT GUTTERS v1 === */
/* Cart and checkout are Woo pages, not leno-sections, so they never got the gutter. */
body.woocommerce-checkout .elementor [class*="elementor-widget-woocommerce-"],body.woocommerce-cart .elementor [class*="elementor-widget-woocommerce-"]{padding-inline:clamp(20px,4vw,56px);}
body.woocommerce-checkout .elementor .e-checkout__container,body.woocommerce-cart .elementor .e-cart__container{gap:clamp(24px,3vw,48px);}
body.woocommerce-checkout .elementor .e-checkout__container .e-checkout__order_review,body.woocommerce-cart .elementor .e-cart__container .e-cart__totals{position:static;}
/* Humm logo replaces the word in the trust strip; the text stays for screen readers */
body .elementor [id="trust"] .leno-grid-4 > *:nth-child(4) .leno-h3{position:relative;color:transparent;user-select:none;min-height:56px;display:block;}
body .elementor [id="trust"] .leno-grid-4 > *:nth-child(4) .leno-h3::after{content:"";position:absolute;inset-inline-start:0;inset-block-start:50%;transform:translateY(-50%);width:170px;height:56px;background:url("https://lenopergola.ie/wp-content/uploads/LENO-Humm-LOGO1.png") left center/contain no-repeat;}

/* === LENO PROJECTS v1 === */
/* Taxonomy filters: quiet chips, brass when active */
body .elementor .elementor-widget-taxonomy-filter .e-filter{display:flex;flex-wrap:wrap;gap:8px;}
body .elementor .elementor-widget-taxonomy-filter .e-filter-item{font-family:var(--LenoBodyFont);font-size:var(--LenoLabel);letter-spacing:0.14em;text-transform:uppercase;color:var(--LenoBody);background:transparent;border:1px solid var(--LenoLine);border-radius:0;padding:10px 16px;line-height:1;transition:color .2s ease,border-color .2s ease,background .2s ease;}
body .elementor .elementor-widget-taxonomy-filter .e-filter-item:hover{color:var(--LenoText);border-color:var(--LenoBrass);}
/* Project grid: never wider than its column, generous gutters */
body .elementor .leno-project-grid .elementor-grid{gap:clamp(20px,2vw,32px);}
body .elementor .leno-project-grid .e-loop-item{display:flex;min-width:0;max-width:100%;}
body .elementor .leno-project-grid .leno-card{width:100%;min-width:0;overflow:hidden;transition:border-color .3s ease,transform .4s cubic-bezier(.2,.6,.2,1);}
body .elementor .leno-project-grid .leno-card:hover{border-color:var(--LenoBrass);transform:translateY(-3px);}
/* the photo is the hook, not the whole card: 16:10 keeps it from swallowing the page */
body .elementor .leno-project-grid .leno-media-wide,body .elementor .leno-project-grid .elementor-widget-image{width:100%;overflow:hidden;}
body .elementor .leno-project-grid .leno-media-wide img{aspect-ratio:16/10;object-fit:cover;width:100%;height:auto;display:block;transition:transform .7s cubic-bezier(.2,.6,.2,1);}
body .elementor .leno-project-grid .leno-card:hover .leno-media-wide img{transform:scale(1.04);}
/* card body: room to breathe, title first, place last */
body .elementor .leno-project-grid .leno-pad-card{padding:22px 24px 20px;gap:10px;}
body .elementor .leno-project-grid .leno-card-foot{margin-block-start:4px;padding-block-start:14px;}
body .elementor .leno-project-grid .leno-h4{font-size:1.125rem;line-height:1.3;}
body .elementor .leno-project-grid .leno-label-muted{font-size:0.6875rem;}
/* the section itself must never push the page sideways */
body .elementor [id="case-studies"]{overflow-x:clip;}
body .elementor [id="case-studies"] .leno-between{gap:clamp(20px,3vw,48px);flex-wrap:wrap;align-items:flex-end;}
@media (max-width:767px){body .elementor [id="case-studies"] .leno-between{flex-direction:column;align-items:flex-start;}}
/* Single project: gallery and spec grid */
body .elementor .leno-project-gallery .elementor-image-gallery img,body .elementor .leno-project-gallery .e-gallery-image{aspect-ratio:4/3;object-fit:cover;}
body .elementor [id="specification"] .leno-grid-4 > *,body .elementor [id="facts"] .leno-grid-4 > *{background:var(--LenoCard);}
@media (max-width:767px){body .elementor [id="specification"] .leno-grid-4,body .elementor [id="facts"] .leno-grid-4{grid-template-columns:repeat(2,minmax(0,1fr));}}

/* === LENO CLASSES FOR NON-ATOMIC DOCUMENTS v1 === */
/* Global Classes CSS is emitted per document and only for documents built from v4 atomic
   elements. Theme Builder templates made from v3 containers never receive it, so the leno-*
   classes they carry would do nothing. These rules mirror the Global Classes for exactly the
   set those templates use. Keep in sync if a Global Class changes. */
.elementor .leno-section{width:100%;padding-block:var(--LenoSectionY);padding-inline:var(--LenoGutter);display:flex;flex-direction:column;align-items:center;}
.elementor .leno-inner{width:100%;max-width:var(--LenoMaxW);display:flex;flex-direction:column;}
.elementor .leno-bg-ink{background-color:var(--LenoInk);}
.elementor .leno-bg-surface{background-color:var(--LenoSurface);}
.elementor .leno-bg-card{background-color:var(--LenoCard);}
.elementor .leno-bg-line{background-color:var(--LenoLine);}
.elementor .leno-stack{display:flex;flex-direction:column;gap:var(--LenoSp4);}
.elementor .leno-stack-sm{display:flex;flex-direction:column;gap:var(--LenoSp2);}
.elementor .leno-stack-0{display:flex;flex-direction:column;gap:6px;}
.elementor .leno-row{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;gap:var(--LenoSp3);}
.elementor .leno-row-top{display:flex;flex-direction:row;align-items:flex-start;gap:var(--LenoSp5);}
.elementor .leno-between{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:var(--LenoSp3);}
.elementor .leno-flex1{flex:1 1 0;min-width:0;}
.elementor .leno-center{align-items:center;text-align:center;}
.elementor .leno-gap-4{gap:var(--LenoSp4);}
.elementor .leno-gap-5{gap:var(--LenoSp5);}
.elementor .leno-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--LenoSp4);}
.elementor .leno-grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;}
.elementor .leno-max-760{max-width:760px;}
.elementor .leno-max-560{max-width:560px;}
.elementor .leno-pad-card{padding:24px;}
.elementor .leno-pad-24{padding:24px;}
.elementor .leno-hairline{border-block-start:1px solid var(--LenoLine);}
.elementor .leno-card{background-color:var(--LenoCard);border:1px solid var(--LenoLine);display:flex;flex-direction:column;}
.elementor .leno-card-foot{border-block-start:1px solid var(--LenoLine);padding-block-start:14px;}
.elementor .leno-media-wide img{width:100%;display:block;object-fit:cover;}
.elementor .leno-h1 .elementor-heading-title,.elementor .leno-h1{font-family:var(--LenoDisplayFont),sans-serif;font-size:var(--LenoH1);line-height:.98em;letter-spacing:-.02em;color:var(--LenoText);font-weight:400;}
.elementor .leno-h2 .elementor-heading-title,.elementor .leno-h2{font-family:var(--LenoDisplayFont),sans-serif;font-size:var(--LenoH2);line-height:1.02em;letter-spacing:-.018em;color:var(--LenoText);font-weight:400;}
.elementor .leno-h3 .elementor-heading-title,.elementor .leno-h3{font-family:var(--LenoDisplayFont),sans-serif;font-size:var(--LenoH3);line-height:1.1em;color:var(--LenoText);font-weight:400;}
.elementor .leno-h4 .elementor-heading-title,.elementor .leno-h4{font-family:var(--LenoBodyFont),sans-serif;font-size:var(--LenoH4);line-height:1.3em;color:var(--LenoText);font-weight:500;}
.elementor .leno-h5 .elementor-heading-title,.elementor .leno-h5{font-family:var(--LenoBodyFont),sans-serif;font-size:var(--LenoH5);line-height:1.35em;letter-spacing:.02em;color:var(--LenoText);font-weight:600;}
.elementor .leno-lead .elementor-heading-title,.elementor .leno-lead,.elementor .leno-lead p{font-family:var(--LenoBodyFont),sans-serif;font-size:var(--LenoTextLg);line-height:1.65em;color:var(--LenoBody);}
.elementor .leno-text .elementor-heading-title,.elementor .leno-text,.elementor .leno-text p{font-family:var(--LenoBodyFont),sans-serif;font-size:var(--LenoTextSm);line-height:1.6em;color:var(--LenoBody);}
.elementor .leno-kicker .elementor-heading-title,.elementor .leno-kicker{font-family:var(--LenoBodyFont),sans-serif;font-size:var(--LenoLabel);font-weight:500;letter-spacing:.24em;text-transform:uppercase;color:var(--LenoBrass);}
.elementor .leno-label-muted .elementor-heading-title,.elementor .leno-label-muted{font-family:var(--LenoBodyFont),sans-serif;font-size:var(--LenoLabel);font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--LenoMuted);}
@media (max-width:1024px){.elementor .leno-grid-3{grid-template-columns:repeat(2,minmax(0,1fr));}.elementor .leno-row-top{flex-direction:column;}}
@media (max-width:767px){.elementor .leno-grid-3,.elementor .leno-grid-4{grid-template-columns:1fr;}}
/* === LENO INTERACTION POLISH v1 === */
/* Curves: the built in easings are too weak to read as intentional. */
:root{--LenoEaseOut:cubic-bezier(.23,1,.32,1);--LenoEaseInOut:cubic-bezier(.77,0,.175,1);}
/* Every pressable thing answers the press. 160ms, ease-out, scale .97, never transition: all. */
.elementor .leno-btn,.elementor .leno-btn-ghost,.elementor .leno-btn-outline-l,.elementor .elementor-button,.elementor .e-button-base,.elementor .woocommerce .button,.elementor .woocommerce button.button,.elementor #place_order,.elementor .e-filter-item,.elementor .elementor-tab-title,.elementor .e-n-menu-title,.leno-fab a{transition:transform 160ms var(--LenoEaseOut),background-color 200ms ease,color 200ms ease,border-color 200ms ease;will-change:transform;}
.elementor .leno-btn:active,.elementor .leno-btn-ghost:active,.elementor .leno-btn-outline-l:active,.elementor .elementor-button:active,.elementor .e-button-base:active,.elementor .woocommerce .button:active,.elementor .woocommerce button.button:active,.elementor #place_order:active,.elementor .e-filter-item:active,.leno-fab a:active{transform:scale(.97);}
/* Hover is a mouse thing. Touch devices fire it on tap and it looks stuck. */
@media (hover:none){.elementor .leno-card:hover img,.elementor .leno-card-l:hover img,.elementor .leno-project-grid .leno-card:hover,.elementor .leno-project-grid .leno-card:hover .leno-media-wide img,.elementor .elementor-post__card:hover,.elementor .elementor-image-carousel .swiper-slide:hover .swiper-slide-image{transform:none;}}
/* Focus is visible and brass, never the browser blue outline. */
.elementor a:focus-visible,.elementor button:focus-visible,.elementor input:focus-visible,.elementor select:focus-visible,.elementor textarea:focus-visible,.elementor [tabindex]:focus-visible,.leno-fab a:focus-visible{outline:2px solid var(--LenoBrass);outline-offset:3px;border-radius:0;}
/* The one stray radius */
.elementor .elementor-field-group .elementor-field,.elementor .elementor-button,.elementor .e-filter-item,.elementor .elementor-accordion .elementor-tab-title{border-radius:0;}
/* === LENO FLOATING CALL v1 === */
/* Two actions, bottom right, only after the visitor has scrolled past the hero. Enters from below with a strong ease-out; exits faster than it enters. */
.leno-fab{position:fixed;inset-inline-end:clamp(16px,2vw,28px);inset-block-end:clamp(16px,2vw,28px);z-index:90;display:flex;flex-direction:column;align-items:flex-end;gap:8px;opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity 160ms ease,transform 160ms var(--LenoEaseOut);}
html.leno-scrolled .leno-fab{opacity:1;transform:none;pointer-events:auto;transition:opacity 240ms ease,transform 260ms var(--LenoEaseOut);}
.leno-fab a{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 18px;font-family:var(--LenoBodyFont),sans-serif;font-size:.8125rem;font-weight:600;letter-spacing:.02em;text-decoration:none;border:1px solid var(--LenoBrass);}
/* Colours are pinned in every state, with the class doubled so the generic link rules cannot recolour them on hover. */
.leno-fab .leno-fab-call.leno-fab-call,.leno-fab .leno-fab-call.leno-fab-call:hover,.leno-fab .leno-fab-call.leno-fab-call:focus-visible,.leno-fab .leno-fab-call.leno-fab-call:active{background:var(--LenoBrass);color:var(--LenoOnBrass);}
.leno-fab .leno-fab-quote.leno-fab-quote,.leno-fab .leno-fab-quote.leno-fab-quote:hover,.leno-fab .leno-fab-quote.leno-fab-quote:focus-visible,.leno-fab .leno-fab-quote.leno-fab-quote:active{background:rgba(12,14,13,.92);color:var(--LenoText);border-color:var(--LenoLine);backdrop-filter:saturate(1.2) blur(6px);}
.leno-fab svg{width:16px;height:16px;flex:0 0 auto;}
@media (hover:hover){.leno-fab .leno-fab-call.leno-fab-call:hover{background:var(--LenoBrassLight);border-color:var(--LenoBrassLight);}.leno-fab .leno-fab-quote.leno-fab-quote:hover{border-color:var(--LenoBrass);}}
@media (max-width:767px){.leno-fab .leno-fab-quote{display:none;}.leno-fab a{min-height:52px;padding:0 20px;}}
body.elementor-editor-active .leno-fab{display:none;}
@media (prefers-reduced-motion:reduce){.leno-fab,html.leno-scrolled .leno-fab{transition:opacity 160ms ease;transform:none;}}
/* === LENO CLICKABLE v1 === */
/* Case study cards: the title carries the href, its ::after stretches over the whole card.
   Every container between card and title must be static, otherwise the overlay only covers the text block. */
body .elementor .leno-project-grid .leno-card{position:relative;}
body .elementor .leno-project-grid .leno-card .e-con,body .elementor .leno-project-grid .leno-card .elementor-widget,body .elementor .leno-project-grid .leno-card .elementor-widget-container,body .elementor .leno-project-grid .leno-card .leno-h4{position:static;}
body .elementor .leno-project-grid .leno-card .leno-h4 a{color:inherit;text-decoration:none;}
body .elementor .leno-project-grid .leno-card .leno-h4 a::after{content:"";position:absolute;inset:0;z-index:2;}
body .elementor .leno-project-grid .leno-card:focus-within{outline:2px solid var(--LenoBrass);outline-offset:3px;}
/* Structure tiles are now anchors: keep the text colours, add a cursor and a lift. */
body .elementor a.e-flexbox.e-con{color:inherit;text-decoration:none;cursor:pointer;}
body .elementor a.e-flexbox.e-con .leno-h3,body .elementor a.e-flexbox.e-con .leno-h3-l{color:var(--LenoText);}
@media (hover:hover){body .elementor a.e-flexbox.e-con img{transition:transform .7s cubic-bezier(.23,1,.32,1);}body .elementor a.e-flexbox.e-con:hover img{transform:scale(1.04);}}

/* === LENO TOOL BUTTONS v1 === */
/* The prompt tool ships its own CSS inside an HTML widget; its hover states left brass text on brass. */
body .elementor .leno-tool .lt-copy,body .elementor .leno-tool .lt-copy:hover,body .elementor .leno-tool .lt-copy:focus-visible{color:var(--LenoOnBrass);}
body .elementor .leno-tool .lt-copy:hover{background:var(--LenoBrassLight);border-color:var(--LenoBrassLight);}
body .elementor .leno-tool .lt-dl{color:var(--LenoBrass);background:transparent;border-color:var(--LenoBrass);}
body .elementor .leno-tool .lt-dl:hover,body .elementor .leno-tool .lt-dl:focus-visible{color:var(--LenoOnBrass);background:var(--LenoBrass);border-color:var(--LenoBrass);}
body .elementor .leno-tool .lt-copy,body .elementor .leno-tool .lt-dl{transition:transform 160ms var(--LenoEaseOut),background-color 200ms ease,color 200ms ease,border-color 200ms ease;}
body .elementor .leno-tool .lt-copy:active,body .elementor .leno-tool .lt-dl:active{transform:scale(.97);}
/* === LENO TWO TILES v1 === */
.elementor .leno-grid-3:has(> :nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr));}
@media (max-width:767px){.elementor .leno-grid-3:has(> :nth-child(2):last-child){grid-template-columns:1fr;}}

/* PROJECT EMPTY FIELDS */
body.single-project .leno-pad-24:not(:has(.elementor-widget + .elementor-widget)){display:none}
body.single-project .elementor-element-6a8576a:not(:has(.leno-pad-24 .elementor-widget + .elementor-widget)){display:none}
body.single-project .elementor-element-4b64b34:not(:has(.leno-pad-24 .elementor-widget + .elementor-widget)){display:none}
body.single-project .elementor-element-ca80960 > .leno-flex1:not(:has(img)){display:none}
body.single-project .elementor-element-c84cf12:not(:has(img)){display:none}
body.single-project .elementor-element-a468d6d:not(:has(.leno-band-brass *)){display:none}
/* END PROJECT EMPTY FIELDS */

/* SKIP LINK */
.skip-link:focus,a.skip-link:focus-visible{position:fixed!important;top:12px!important;left:12px!important;z-index:99999!important;width:auto!important;height:auto!important;clip:auto!important;clip-path:none!important;padding:12px 20px!important;background:var(--LenoBrass,#C7A26B)!important;color:var(--LenoOnBrass,#12140F)!important;font-family:var(--LenoBodyFont)!important;font-size:14px!important;letter-spacing:.04em!important;text-decoration:none!important;outline:2px solid var(--LenoText,#F2F0EC)!important;outline-offset:2px!important}
/* END SKIP LINK */

/* FONT FALLBACK STACK */
:root:root{--LenoDisplayFont:"Bricolage Grotesque","Helvetica Neue",Arial,sans-serif;--LenoBodyFont:"Schibsted Grotesk","Helvetica Neue",Arial,sans-serif}
/* END FONT FALLBACK STACK */

/* PROJECT EMPTY TEXT AND LOOPS */
body.single-project .elementor-element-d3f8243 > .leno-stack-sm:not(:has(.elementor-widget + .elementor-widget)){display:none}
body.single-project .elementor-element-4e6698b:not(:has(.leno-stack-sm .elementor-widget + .elementor-widget)){display:none}
.elementor-element.leno-section.leno-section:has(.e-loop-nothing-found-message){display:none}
/* END PROJECT EMPTY TEXT AND LOOPS */

/* COOKIEYES NO REVISIT */
.cky-btn-revisit-wrapper,.cky-btn-revisit{display:none!important}
/* END COOKIEYES NO REVISIT */

/* CUBE PREMIUM */
.elementor .leno-cube-hero.leno-cube-hero{position:relative;overflow:hidden;min-height:min(88vh,940px);display:flex;flex-direction:column;justify-content:flex-end;background-color:var(--LenoInk);padding:0;--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px}
.elementor .leno-cube-hero .e-con{--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px}
.elementor .leno-cube-hero .leno-cube-hero-media.leno-cube-hero-media{position:absolute;inset:0;z-index:0;margin:0;width:100%;height:100%;max-width:none}
.elementor .leno-cube-hero .leno-cube-hero-media .elementor-widget-container{height:100%}
.elementor .leno-cube-hero .leno-cube-hero-media img{width:100%;height:100%;max-width:none;object-fit:cover;object-position:50% 38%;display:block}
.elementor .leno-cube-hero.leno-cube-hero::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;opacity:1;mix-blend-mode:normal;background:linear-gradient(0deg,rgba(12,14,13,.94) 0%,rgba(12,14,13,.72) 34%,rgba(12,14,13,0) 72%),linear-gradient(90deg,rgba(12,14,13,.55) 0%,rgba(12,14,13,0) 62%)}
.elementor .leno-cube-hero .leno-cube-hero-inner.leno-cube-hero-inner{position:relative;z-index:2;width:100%;max-width:calc(var(--LenoMaxW) + 2 * var(--LenoGutter));margin-inline:auto;padding:clamp(120px,18vh,220px) var(--LenoGutter) clamp(48px,7vw,112px);display:flex;flex-direction:column;align-items:flex-start;gap:var(--LenoSp3)}
.elementor .leno-cube-hero .leno-cube-actions.leno-cube-actions{gap:var(--LenoSp2);margin-top:var(--LenoSp2)}
.elementor .leno-cube-h1.leno-cube-h1 .elementor-heading-title{font-family:var(--LenoDisplayFont);font-weight:400;font-size:clamp(3rem,8vw,8.25rem);line-height:.92;letter-spacing:-.035em;color:var(--LenoText);max-width:12ch;text-wrap:balance;margin:0}
.elementor .leno-cube-lead.leno-cube-lead,.elementor .leno-cube-lead.leno-cube-lead p{font-family:var(--LenoBodyFont);font-size:clamp(1.0625rem,1.35vw,1.3125rem);line-height:1.6;color:var(--LenoText);max-width:54ch;margin:0}
.elementor .leno-cube-hero .leno-btn .elementor-button{background-color:var(--LenoBrass);color:var(--LenoOnBrass);border:1px solid var(--LenoBrass)}
.elementor .leno-cube-hero .leno-btn-ghost .elementor-button{background-color:transparent;color:var(--LenoText);border:1px solid rgba(242,240,236,.55)}
.elementor .leno-cube-hero .leno-btn-ghost .elementor-button:hover{border-color:var(--LenoBrass);color:var(--LenoBrassLight,#E0BE88)}
.elementor .leno-cube-statement.leno-cube-statement{gap:clamp(24px,5vw,96px);align-items:flex-start}
.elementor .leno-cube-statement .leno-cube-statement-label{flex:0 0 clamp(160px,18vw,280px)}
.elementor .leno-cube-statement-text.leno-cube-statement-text{flex:1 1 0;min-width:0}
.elementor .leno-cube-statement-text.leno-cube-statement-text .elementor-heading-title{font-family:var(--LenoDisplayFont);font-weight:400;font-size:clamp(1.625rem,3.3vw,3.25rem);line-height:1.14;letter-spacing:-.018em;color:var(--LenoText);max-width:30ch;text-wrap:pretty;margin:0}
.elementor .leno-cube-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background-color:var(--LenoLine);border:1px solid var(--LenoLine)}
.elementor .leno-section .leno-cube-option.leno-pad-cube{background-color:var(--LenoSurface);padding:clamp(28px,4vw,64px);display:flex;flex-direction:column;gap:var(--LenoSp2);scroll-margin-top:120px}
.elementor .leno-cube-list.leno-cube-list .elementor-icon-list-items{margin:var(--LenoSp2) 0 0;padding:var(--LenoSp2) 0 0;border-top:1px solid var(--LenoLine);display:flex;flex-direction:column;gap:10px;list-style:none}
.elementor .leno-cube-list.leno-cube-list .elementor-icon-list-item{display:flex;align-items:center;gap:14px;padding:0;margin:0}
.elementor .leno-cube-list.leno-cube-list .elementor-icon-list-item::before{content:"";width:14px;height:1px;background-color:var(--LenoBrass);flex:none}
.elementor .leno-cube-list.leno-cube-list .elementor-icon-list-icon{display:none}
.elementor .leno-cube-list.leno-cube-list .elementor-icon-list-text{font-family:var(--LenoBodyFont);font-size:var(--LenoTextSm);line-height:1.5;color:var(--LenoBody);padding:0}
@media (max-width:1024px){.elementor .leno-cube-statement.leno-cube-statement{flex-direction:column}.elementor .leno-cube-statement .leno-cube-statement-label{flex:none}}
@media (max-width:767px){.elementor .leno-cube-hero.leno-cube-hero{min-height:min(82vh,760px)}.elementor .leno-cube-options{grid-template-columns:1fr}}
/* END CUBE PREMIUM */

/* V3 BUTTONS, FAB AWAY, CREDIT */
.elementor .elementor-widget-button.leno-btn-ghost.leno-btn-ghost,.elementor .elementor-widget-button.leno-btn-ghost.leno-btn-ghost:hover,.elementor .elementor-widget-button.leno-btn.leno-btn,.elementor .elementor-widget-button.leno-btn.leno-btn:hover{background-color:transparent;color:inherit}
.elementor .elementor-widget-button.leno-btn-ghost .elementor-button{background-color:transparent;color:var(--LenoBrass);border:1px solid var(--LenoBrass)}
.elementor .elementor-widget-button.leno-btn-ghost .elementor-button:hover,.elementor .elementor-widget-button.leno-btn-ghost .elementor-button:focus-visible{background-color:var(--LenoBrass);color:var(--LenoOnBrass);border-color:var(--LenoBrass)}
.elementor .elementor-widget-button.leno-btn .elementor-button{background-color:var(--LenoBrass);color:var(--LenoOnBrass);border:1px solid var(--LenoBrass)}
.elementor .elementor-widget-button.leno-btn .elementor-button:hover,.elementor .elementor-widget-button.leno-btn .elementor-button:focus-visible{background-color:var(--LenoBrassLight);border-color:var(--LenoBrassLight);color:var(--LenoOnBrass)}
.elementor .leno-cube-hero .elementor-widget-button.leno-btn-ghost .elementor-button{color:var(--LenoText);border-color:rgba(242,240,236,.55)}
.elementor .leno-cube-hero .elementor-widget-button.leno-btn-ghost .elementor-button:hover,.elementor .leno-cube-hero .elementor-widget-button.leno-btn-ghost .elementor-button:focus-visible{background-color:var(--LenoBrass);color:var(--LenoOnBrass);border-color:var(--LenoBrass)}
html.leno-fab-away .leno-fab,html.leno-scrolled.leno-fab-away .leno-fab{opacity:0;transform:translateY(12px);pointer-events:none}
.leno-credit.leno-credit{margin-inline-start:.75em;padding-inline-start:.75em;border-inline-start:1px solid var(--LenoLine)}
.leno-credit.leno-credit a{color:inherit;text-decoration:underline;text-decoration-color:var(--LenoLine);text-underline-offset:3px}
.leno-credit.leno-credit a:hover,.leno-credit.leno-credit a:focus-visible{color:var(--LenoText);text-decoration-color:var(--LenoBrass)}
@media (max-width:767px){.leno-credit.leno-credit{display:block;margin:6px 0 0;padding:0;border:0}}
/* END V3 BUTTONS, FAB AWAY, CREDIT */

/* AUDIT FIXES 2026-09-22 */
@media (max-width:767px){.elementor .elementor-element-1cdf4d7.elementor-element-1cdf4d7{flex-direction:column;flex-wrap:nowrap}.elementor .elementor-element-1cdf4d7.elementor-element-1cdf4d7 > *{flex:1 1 auto;width:100%;max-width:100%}}
.elementor .e-n-menu-title{position:relative}
@media (max-width:1024px){.elementor .e-n-menu-title .e-n-menu-dropdown-icon.e-n-menu-dropdown-icon{position:absolute;inset:0;width:100%;height:100%;display:flex;align-items:center;justify-content:flex-end;padding-inline-end:16px;background:transparent}}
.elementor .e-n-menu-toggle.e-n-menu-toggle{min-width:44px;min-height:44px;align-items:center;justify-content:center}
body.page-id-419 .elementor table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.woocommerce-checkout #billing_country_field .woocommerce-input-wrapper,.woocommerce-checkout #shipping_country_field .woocommerce-input-wrapper{display:block;width:100%}
.woocommerce-checkout #billing_country_field select,.woocommerce-checkout #billing_country_field .select2-container,.woocommerce-checkout #shipping_country_field select,.woocommerce-checkout #shipping_country_field .select2-container{width:100%!important}
@media (max-width:767px){.elementor .elementor-button.elementor-size-sm{min-height:44px;display:inline-flex;align-items:center;justify-content:center}}
@media (min-width:768px) and (max-width:1024px){.elementor .leno-grid-3.leno-grid-3:has(> :nth-child(3):last-child){grid-template-columns:repeat(3,minmax(0,1fr))}}
.elementor .elementor-form .elementor-button .elementor-button-text{white-space:nowrap}
.woocommerce-additional-fields h3:empty{display:none}
body .elementor .elementor-widget-taxonomy-filter .e-filter-item.e-filter-item[aria-pressed="true"]{color:var(--LenoOnBrass)}
body.woocommerce-account .woocommerce-privacy-policy-text,body.woocommerce-account .woocommerce-privacy-policy-text p,body.woocommerce-account .woocommerce-form-login__rememberme,body.woocommerce-account .woocommerce-form-login__rememberme span,body.woocommerce-account .lost_password a{color:var(--LenoBody)}
/* END AUDIT FIXES 2026-09-22 */

/* VERIFY FIXES 2026-09-22 */
body.woocommerce-account .elementor .woocommerce form p,body.woocommerce-account .elementor .woocommerce form label,body.woocommerce-account .elementor .woocommerce form label span,body.woocommerce-account .elementor .woocommerce .woocommerce-privacy-policy-text,body.woocommerce-account .elementor .woocommerce .woocommerce-privacy-policy-text p{color:var(--LenoBody)}
body .woocommerce form .required,body .woocommerce form abbr.required,body .elementor .woocommerce form .required{color:var(--LenoBrassLight);text-decoration:none;border:0}
@media (max-width:767px){.elementor .elementor-element-95607a0.elementor-element-95607a0{flex-direction:column;align-items:stretch}.elementor .elementor-element-95607a0.elementor-element-95607a0 > *{flex:1 1 auto;width:100%;max-width:100%}}
/* END VERIFY FIXES 2026-09-22 */

/* MY ACCOUNT VARS */
.elementor .elementor-widget-woocommerce-my-account.elementor-widget-woocommerce-my-account{--checkboxes-color:var(--LenoBody);--login-messages-color:var(--LenoBody)}
/* END MY ACCOUNT VARS */

/* MOBILE ROW STACK */
@media (max-width:767px){.elementor .leno-inner.leno-row-top.leno-row-top,.elementor .leno-row-mid.leno-row-mid:has(img),.elementor .leno-row-rev.leno-row-rev:has(img){flex-direction:column;align-items:stretch}.elementor .leno-inner.leno-row-top.leno-row-top > *,.elementor .leno-row-mid.leno-row-mid:has(img) > *,.elementor .leno-row-rev.leno-row-rev:has(img) > *{width:100%;max-width:100%;flex:0 0 auto}.elementor .leno-inner.leno-row-top.leno-row-top > :has(> .leno-abs-fill),.elementor .leno-row-mid.leno-row-mid > :has(> .leno-abs-fill),.elementor .leno-row-rev.leno-row-rev > :has(> .leno-abs-fill){position:relative;aspect-ratio:4/3;min-height:240px}}
/* END MOBILE ROW STACK */

/* HOVER CONTRAST FIX */
body .elementor .elementor-menu-cart__toggle .elementor-button.elementor-button:hover,body .elementor .elementor-menu-cart__toggle .elementor-button.elementor-button:focus-visible{background-color:transparent;color:var(--LenoBrassLight)}
body .elementor .elementor-menu-cart__toggle .elementor-button.elementor-button:hover svg,body .elementor .elementor-menu-cart__toggle .elementor-button.elementor-button:focus-visible svg{fill:currentColor}
body .elementor .elementor-swiper-button.elementor-swiper-button:hover,body .elementor .elementor-swiper-button.elementor-swiper-button:focus-visible{color:var(--LenoOnBrass)}
body .elementor .elementor-swiper-button.elementor-swiper-button:hover svg,body .elementor .elementor-swiper-button.elementor-swiper-button:focus-visible svg,body .elementor .elementor-swiper-button.elementor-swiper-button:hover i,body .elementor .elementor-swiper-button.elementor-swiper-button:focus-visible i{fill:var(--LenoOnBrass);color:var(--LenoOnBrass)}
.leno-shop-nav.leno-shop-nav a.is-active:hover,.leno-shop-nav.leno-shop-nav a[aria-current]:hover,.leno-shop-nav.leno-shop-nav a.is-active:focus-visible{background-color:var(--LenoBrassLight);border-color:var(--LenoBrassLight);color:var(--LenoOnBrass)}
body .woocommerce-product-gallery .woocommerce-product-gallery__trigger.woocommerce-product-gallery__trigger:hover,body .woocommerce-product-gallery .woocommerce-product-gallery__trigger.woocommerce-product-gallery__trigger:focus-visible{color:var(--LenoOnBrass)}
body .woocommerce ul.products li.product a.button.button:hover,body .woocommerce ul.products li.product a.button.button:focus-visible,body .woocommerce a.button.add_to_cart_button.add_to_cart_button:hover,body .woocommerce a.button.add_to_cart_button.add_to_cart_button:focus-visible{background-color:var(--LenoBrass);border-color:var(--LenoBrass);color:var(--LenoOnBrass)}
.elementor .leno-prose.leno-prose a:hover,.elementor .leno-prose.leno-prose a:focus-visible{color:#14170F}
/* END HOVER CONTRAST FIX */

/* HOVER CONTRAST FIX 2 */
body .elementor .elementor-widget-image-carousel .elementor-swiper-button.elementor-swiper-button.elementor-swiper-button:hover svg,body .elementor .elementor-widget-image-carousel .elementor-swiper-button.elementor-swiper-button.elementor-swiper-button:focus-visible svg{fill:var(--LenoOnBrass);color:var(--LenoOnBrass)}
body a.button.add_to_cart_button.add_to_cart_button:hover,body a.button.add_to_cart_button.add_to_cart_button:focus-visible,body ul.products li.product a.button.button:hover,body ul.products li.product a.button.button:focus-visible{background-color:var(--LenoBrass);border-color:var(--LenoBrass);color:var(--LenoOnBrass)}
/* END HOVER CONTRAST FIX 2 */

/* MENU TOGGLE ICON COLOR 2026-09-22: Elementor default #1F2124 icon beat the kit rule, set the widget vars on the toggle itself */
.elementor .e-n-menu-toggle.e-n-menu-toggle{--n-menu-toggle-icon-color:var(--LenoText);--n-menu-toggle-icon-color-hover:var(--LenoBrassLight);--n-menu-toggle-icon-color-active:var(--LenoText);}

/* CLIENT FEEDBACK 2026-09-26: portrait photos on Pergola Veranda shown almost whole, Cube hero split so the whole structure is visible */
@media (min-width:768px){
.elementor .e-con:has(> [data-id="5ad513a"]),.elementor .e-con:has(> [data-id="0243ffd"]),.elementor .e-con:has(> [data-id="30b2a83"]),.elementor .e-con:has(> [data-id="dfbe26b"]){align-items:center;}
.elementor [data-id="5ad513a"][data-id],.elementor [data-id="0243ffd"][data-id],.elementor [data-id="30b2a83"][data-id],.elementor [data-id="dfbe26b"][data-id]{aspect-ratio:4/5;height:auto;align-self:center;}
}
@media (min-width:1025px){
.elementor .leno-cube-hero .leno-cube-hero-media.leno-cube-hero-media{left:auto;right:0;width:auto;aspect-ratio:3/4;height:100%;}
.elementor .leno-cube-hero .leno-cube-hero-media img{object-position:50% 50%;}
.elementor .leno-cube-hero.leno-cube-hero::before{background:linear-gradient(0deg,rgba(12,14,13,.35) 0%,rgba(12,14,13,0) 30%);left:auto;right:0;width:min(66vh,705px);}
.elementor .leno-cube-hero .leno-cube-hero-inner.leno-cube-hero-inner{padding-right:calc(min(66vh,705px) + var(--LenoGutter));margin-inline:0;max-width:none;}
.elementor .leno-cube-h1.leno-cube-h1 .elementor-heading-title{font-size:clamp(3rem,6.4vw,7rem);}
}
@media (max-width:767px){.elementor [data-id="5ad513a"][data-id][data-id],.elementor [data-id="0243ffd"][data-id][data-id],.elementor [data-id="30b2a83"][data-id][data-id][data-id],.elementor [data-id="dfbe26b"][data-id][data-id][data-id]{aspect-ratio:4/5;height:auto;}}
.elementor .e-con.e-con:has(> .elementor-widget-html .leno-gates-collage){position:relative;aspect-ratio:3/2;height:auto;align-self:center;overflow:hidden;}
.elementor .e-con.e-con:has(> .elementor-widget-html .leno-gates-collage) > .elementor-widget-html{position:absolute;inset:0;width:100%;height:100%;max-width:none;margin:0;}
.leno-gates-collage{position:absolute;inset:0;display:grid;grid-template-columns:1fr 1fr;gap:4px;background:var(--LenoInk);}
.leno-gates-collage img{display:block;width:100%;height:100%;object-fit:cover;}
/* side gates page photo strip */
.elementor .leno-gates-photos-wrap.leno-gates-photos-wrap{margin-top:clamp(40px,5vw,72px);}
.leno-gates-photos{display:grid;grid-template-columns:9fr 16fr;gap:clamp(12px,1.6vw,24px);align-items:start;}
.leno-gates-photos .lgp-item{margin:0;min-width:0;}
.leno-gates-photos img{display:block;width:100%;height:auto;object-fit:cover;}
.leno-gates-photos .lgp-tall img{aspect-ratio:3/4;}
.leno-gates-photos .lgp-wide img{aspect-ratio:4/3;}
.leno-gates-photos figcaption{margin-top:12px;font-family:var(--LenoBodyFont);font-size:14px;line-height:1.45;color:var(--LenoMuted);}
@media (max-width:767px){.leno-gates-photos{grid-template-columns:1fr;}}
/* END CLIENT FEEDBACK 2026-09-26 */
/* HOME FOUR TILES 2026-09-29: Pergola, Pergola Veranda, Cube Veranda, Side gates; 4 across on desktop, 2x2 on tablet and phone */
.elementor [data-id="c7e8a13"][data-id]{grid-template-columns:repeat(4,minmax(0,1fr));}
@media (max-width:1024px){.elementor [data-id="c7e8a13"][data-id]{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:767px){
.elementor [data-id="c7e8a13"][data-id]{gap:10px;}
.elementor [data-id="c7e8a13"] > .leno-card.leno-card{aspect-ratio:3/4;min-height:0;height:auto;}
.elementor [data-id="c7e8a13"] > .leno-card > .leno-relative.leno-relative{padding:14px;}
.elementor [data-id="c7e8a13"] > .leno-card .leno-h3.leno-h3{font-size:18px;line-height:1.15;}
.elementor [data-id="c7e8a13"] > .leno-card .leno-relative > .leno-text,.elementor [data-id="c7e8a13"] > .leno-card .leno-card-foot > .leno-text{display:none;}
.elementor [data-id="c7e8a13"] > .leno-card .leno-card-foot.leno-card-foot{margin-top:6px;padding-top:0;border:0;}
}
/* four tiles compact text on desktop */
@media (min-width:1025px){
.elementor [data-id="c7e8a13"] > .leno-card > .leno-relative.leno-relative{padding:20px;gap:8px;}
.elementor [data-id="c7e8a13"] > .leno-card .leno-h3.leno-h3{font-size:clamp(20px,1.7vw,26px);line-height:1.15;}
.elementor [data-id="c7e8a13"] > .leno-card .leno-relative > .leno-text{font-size:14px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.elementor [data-id="c7e8a13"] > .leno-card .leno-card-foot.leno-card-foot{margin-top:4px;}
}
/* END HOME FOUR TILES */

/* HERO FIT 2026-09-30: text at the top, smaller image so the hero fits the screen (Pergola, Pergola Veranda, Cube, Side gates) */
@media (min-width:1025px){
.elementor [data-id="f900b6a"][data-id]{align-items:flex-start;}
.elementor [data-id="a91d6c1"][data-id]{align-self:flex-start;justify-content:flex-start;}
.elementor [data-id="30b2a83"][data-id][data-id]{flex:0 0 auto;width:auto;height:min(68vh,640px);aspect-ratio:4/5;align-self:flex-start;}
.elementor [data-id="7c1d2e3"][data-id]{flex:0 0 auto;width:min(46%,720px);height:auto;aspect-ratio:4/3;align-self:flex-start;}
.elementor .leno-cube-hero.leno-cube-hero{min-height:min(76vh,760px);justify-content:flex-start;}
.elementor .leno-cube-hero .leno-cube-hero-inner.leno-cube-hero-inner{padding-top:clamp(64px,9vh,112px);padding-right:calc(min(57vh,570px) + var(--LenoGutter));}
.elementor .leno-cube-hero.leno-cube-hero::before{width:min(57vh,570px);}
}
/* END HERO FIT */

/* V3 BUTTON WRAPPER RESET 2026-09-30: leno-btn / leno-btn-ghost global classes add padding and a border to the widget wrapper, so v3 buttons got a double border and were pushed right */
.elementor .elementor-widget-button.leno-btn.leno-btn,.elementor .elementor-widget-button.leno-btn-ghost.leno-btn-ghost{padding:0;border:0;min-height:0;width:auto;max-width:none;box-shadow:none;border-radius:0;}
/* END V3 BUTTON WRAPPER RESET */

/* PERGOLA HERO SQUARE 2026-09-30: hero photo 620 is a 3:4 portrait, show it whole */
.elementor [data-id="30b2a83"][data-id][data-id][data-id][data-id]{aspect-ratio:3/4;}
/* END PERGOLA HERO SQUARE *//* End custom CSS */