/* Commerce OS 0.9.0 — self-contained promo, welcome, and nav refinements. */
body.lco-theme-promo-enabled p.woocommerce-store-notice.demo_store,
body.lco-theme-promo-enabled p.woocommerce-store-notice.demo_store.lco-store-rail{display:none!important}
body.lco-editorial .lco-campaign[hidden],body.lco-editorial .lco-welcome[hidden],body.lco-editorial .lco-campaign__message [hidden]{display:none!important}
.lco-campaign{position:relative;z-index:9;background:var(--lco-rail-bg,#191a1c);color:var(--lco-rail-foreground,#fff);min-height:53px;font-family:var(--lco-font);border-bottom:1px solid color-mix(in srgb,currentColor 14%,transparent)}
.lco-campaign__inner{min-height:53px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(14px,3vw,42px)}
.lco-campaign__brand{display:inline-flex;gap:4px;white-space:nowrap;align-items:center;font-size:10px;letter-spacing:.14em;font-weight:800}
.lco-campaign__brand i{height:9px;width:9px;border-radius:50%;background:var(--lco-rail-accent,#be1a34);margin-right:6px;box-shadow:0 0 0 4px color-mix(in srgb,var(--lco-rail-accent,#be1a34) 20%,transparent)}
.lco-campaign__brand b{color:var(--lco-rail-accent,#be1a34)}
.lco-campaign__message{min-width:0;line-height:1.45;text-align:center;font-size:12px;font-weight:700;overflow:hidden}
.lco-campaign__message span{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.lco-campaign__actions{display:flex;align-items:center;gap:8px;white-space:nowrap}
body.lco-editorial .lco-campaign__link{font-size:11px;font-weight:750;text-decoration:underline;text-underline-offset:3px;display:inline-flex;gap:5px;align-items:center;max-width:150px;overflow:hidden;text-overflow:ellipsis}
.lco-campaign__count{font-size:10px;font-weight:700;color:inherit;opacity:.72;padding:0 6px;font-variant-numeric:tabular-nums}
body.lco-editorial .lco-campaign__actions button{width:29px;height:29px;padding:0;border-radius:50%;border:1px solid color-mix(in srgb,currentColor 26%,transparent);background:transparent;color:inherit;display:grid;place-items:center;font-size:21px;line-height:1;transition:background .16s,border-color .16s}
body.lco-editorial .lco-campaign__actions button:hover{background:var(--lco-rail-accent,#be1a34);border-color:var(--lco-rail-accent,#be1a34)}
.lco-campaign__progress{height:2px;width:0;display:block;background:var(--lco-rail-accent,#be1a34);position:absolute;bottom:0;left:0;transform-origin:left}
.lco-campaign__progress.is-running{animation:lco-campaign-duration 6.5s linear both}
@keyframes lco-campaign-duration{from{width:0}to{width:100%}}
body.lco-editorial .lco-welcome{position:fixed;inset:0;z-index:990;display:grid;place-items:center;padding:clamp(15px,4vw,50px);isolation:isolate}
body.lco-editorial .lco-welcome__overlay{position:absolute;inset:0;background:rgba(10,10,12,.73);border:0;border-radius:0;padding:0;z-index:-1;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
.lco-welcome__dialog{position:relative;background:var(--lco-welcome-bg,#1a1b1d);color:var(--lco-welcome-foreground,#fff);max-width:860px;width:100%;display:grid;grid-template-columns:minmax(0,0.85fr) minmax(0,1fr);min-height:430px;overflow:hidden;border-radius:22px;box-shadow:0 30px 95px #0006;outline:none;animation:lco-welcome-enter .3s cubic-bezier(.22,1,.36,1);max-height:min(750px,90dvh)}
.lco-welcome__dialog:not(:has(.lco-welcome__image)){grid-template-columns:1fr;min-height:0;max-width:540px}
.lco-welcome__image{min-width:0;min-height:100%;background:#303034}
.lco-welcome__image img{height:100%;width:100%;object-fit:cover;display:block}
.lco-welcome__content{padding:clamp(35px,5vw,66px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0}
.lco-welcome__eyebrow{font-size:10px;letter-spacing:.16em;font-weight:800;display:inline-flex;align-items:center;gap:10px;margin-bottom:23px}
.lco-welcome__eyebrow span{width:9px;height:9px;background:#be1a34;border-radius:50%;display:inline-block}
body.lco-editorial .lco-welcome__content h2{font-size:clamp(34px,4vw,62px);font-weight:750;letter-spacing:-.067em;line-height:1.02;margin:0 0 22px;color:inherit}
body.lco-editorial .lco-welcome__content p{color:inherit;opacity:.8;font-size:14px;line-height:1.7;margin:0 0 26px;max-width:34ch}
body.lco-editorial .lco-welcome__cta{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:15px 20px;border-radius:12px;background:#be1a34;color:#fff;font-size:13px;font-weight:800;min-height:52px;text-align:left}
body.lco-editorial .lco-welcome__cta:hover{background:#a31129}
.lco-welcome__footer{font-size:9px;font-weight:750;letter-spacing:.15em;opacity:.48;margin-top:42px}
body.lco-editorial .lco-welcome__close{position:absolute;top:17px;right:17px;z-index:2;display:grid;place-items:center;border:1px solid color-mix(in srgb,currentColor 25%,transparent);color:inherit;background:color-mix(in srgb,var(--lco-welcome-bg,#1a1b1d) 75%,transparent);width:39px;height:39px;line-height:1;font-size:24px;border-radius:50%;padding:0}
body.lco-welcome-open{overflow:hidden!important}
@keyframes lco-welcome-enter{from{opacity:.3;transform:translateY(14px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
/* Desktop navigation: keyboard focus, multi-level dropdowns, controlled hover. */
@media(min-width:1025px){
 .lco-desktop-nav .lco-nav-items>li>a{position:relative;transition:color .18s ease}
 .lco-desktop-nav .lco-nav-items>li>a:before{content:"";position:absolute;bottom:19px;left:0;right:100%;height:2px;background:var(--lco-red);transition:right .22s ease}
 .lco-desktop-nav .lco-nav-items>li:is(:hover,:focus-within,.current-menu-item,.current-menu-ancestor)>a:before{right:0}
 .lco-desktop-nav .menu-item-has-children>a:after{content:"⌄";display:inline-block;vertical-align:1px;margin-left:6px;font-weight:600;color:var(--lco-muted);transition:transform .2s ease}
 .lco-desktop-nav .menu-item-has-children:is(:hover,:focus-within)>a:after{transform:rotate(180deg)}
 .lco-desktop-nav .sub-menu{padding:13px 15px;min-width:218px;border-radius:15px;box-shadow:0 22px 60px #0002;max-width:min(360px,90vw)}
 .lco-desktop-nav .sub-menu a{display:block;padding:10px 12px!important;border-radius:9px;font-size:12px;line-height:1.4;letter-spacing:0}
 .lco-desktop-nav .sub-menu a:hover,.lco-desktop-nav .sub-menu a:focus-visible{background:#f7f2f3;color:var(--lco-red)}
 .lco-desktop-nav .sub-menu>li>.sub-menu{left:calc(100% - 3px);top:-12px}
 .lco-desktop-nav li:hover>.sub-menu,.lco-desktop-nav li:focus-within>.sub-menu{animation:lco-nav-drop .2s ease both}
 @keyframes lco-nav-drop{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
}
/* Mobile refinements keep WordPress menu links and existing drawer behavior. */
@media(max-width:1024px){
 .lco-campaign__inner{width:min(100% - 32px,1376px);grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:7px 0}
 .lco-campaign__brand{display:none}
 .lco-campaign__message{text-align:left;font-size:11px}
 .lco-campaign__actions{gap:4px}
 body.lco-editorial .lco-campaign__link{display:grid;place-items:center;min-height:29px;min-width:29px;max-width:29px;text-decoration:none;border:1px solid color-mix(in srgb,currentColor 26%,transparent);border-radius:50%;font-size:15px}
 .lco-campaign__link-label{position:absolute!important;width:1px;height:1px;clip:rect(0,0,0,0);overflow:hidden;white-space:nowrap}
 .lco-campaign__count{padding:0 4px;font-size:9px}
 body.lco-editorial .lco-campaign__actions button{height:29px;width:29px}
 body.lco-editorial .lco-mobile-nav .lco-nav-expand{transition:background .18s,color .18s,transform .18s;touch-action:manipulation}
 body.lco-editorial .lco-mobile-nav .lco-nav-expand[aria-expanded="true"]{transform:rotate(0deg)}
 body.lco-editorial .lco-mobile-nav .sub-menu:not([hidden]){animation:lco-menu-sub .2s ease-out both}
 body.lco-editorial .lco-mobile-nav a:focus-visible,body.lco-editorial .lco-mobile-nav button:focus-visible{outline:2px solid #be1a34;outline-offset:3px}
 @keyframes lco-menu-sub{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
}
@media(max-width:640px){
 body.lco-editorial .lco-welcome{padding:14px}
 .lco-welcome__dialog{grid-template-columns:1fr;max-height:calc(100dvh - 28px);overflow-y:auto;border-radius:18px}
 .lco-welcome__image{min-height:0;max-height:200px}
 .lco-welcome__image img{height:190px;object-position:center 40%}
 .lco-welcome__content{padding:30px 27px 34px}
 body.lco-editorial .lco-welcome__content h2{font-size:38px;margin-bottom:16px}
 body.lco-editorial .lco-welcome__content p{font-size:13px;margin-bottom:21px}
 .lco-welcome__eyebrow{margin-bottom:18px}
 .lco-welcome__footer{margin-top:27px}
 .lco-campaign__count{display:none}
}
@media(prefers-reduced-motion:reduce){
 .lco-campaign__progress.is-running{animation:none!important}
 .lco-welcome__dialog,.lco-desktop-nav li:hover>.sub-menu,.lco-desktop-nav li:focus-within>.sub-menu,body.lco-editorial .lco-mobile-nav .sub-menu:not([hidden]){animation:none!important}
}

/* 0.9.1 — Addi image follows the complete cart form. No gateway changes. */
body.lco-editorial.single-product .lco-pdp-summary form.cart + .lp-addi-banner{
  display:flex;clear:both;width:100%;margin:15px 0 22px;justify-content:flex-start;
}
body.lco-editorial.single-product .lco-pdp-summary form.cart + .lp-addi-banner a{max-width:100%;}
body.lco-editorial.single-product .lco-pdp-summary form.cart + .lp-addi-banner img{
  display:block;width:auto;max-width:min(100%,350px);max-height:96px;object-fit:contain;
}
@media(max-width:767px){
  body.lco-editorial.single-product .lco-pdp-summary form.cart + .lp-addi-banner{margin:13px 0 20px;}
  body.lco-editorial.single-product .lco-pdp-summary form.cart + .lp-addi-banner img{max-height:80px;}
}
