/* =========================================================
   LUSID COMPANY — design system (values mirrored from the original build)
   ========================================================= */
:root{
	--radius:0;
	--background:oklch(95.4% .006 85);
	--foreground:oklch(17.8% 0 0);
	--card:oklch(93% .006 85);
	--primary:oklch(17.8% 0 0);
	--primary-foreground:oklch(95.4% .006 85);
	--muted:oklch(91% .005 85);
	--muted-foreground:oklch(50% 0 0);
	--accent:oklch(72% .04 235);
	--border:oklch(17.8% 0 0/.14);
	--input:oklch(17.8% 0 0/.2);
	--ink:oklch(17.8% 0 0);
	--ink-foreground:oklch(95.4% .006 85);
	--charcoal:oklch(27% 0 0);
	--steel:oklch(72% 0 0);
	--font-sans:"Archivo",system-ui,sans-serif;
	--font-display:"Anton",Impact,sans-serif;
	--ease:cubic-bezier(.2,.7,.2,1);
	--ease-menu:cubic-bezier(.7,0,.2,1);
}

/* ---------- Preflight (scoped to the site) ---------- */
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;line-height:1.5}
body.lusid{margin:0;background:var(--background);color:var(--foreground);font-family:var(--font-sans);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}
.lusid *,.lusid *::before,.lusid *::after{box-sizing:border-box}
:where(.lusid) :where(h1,h2,h3,h4,h5,h6){font-size:inherit;font-weight:inherit;margin:0}
:where(.lusid) :where(p,ul,ol,figure){margin:0}
:where(.lusid) :where(ul,ol){list-style:none;padding:0}
:where(.lusid) :where(a){color:inherit;text-decoration:inherit;background-color:transparent}
:where(.lusid) :where(a:hover,a:focus){color:inherit}
:where(.lusid) :where(img,svg){display:block;max-width:100%;height:auto}
:where(.lusid) :where(button,input,select,textarea){font:inherit;color:inherit;letter-spacing:inherit;border-radius:0}
:where(.lusid) :where(button){background:none;border:0;padding:0;cursor:pointer;text-transform:none}
:where(.lusid) :where(button:hover,button:focus){background:none;color:inherit}
.lusid [hidden]{display:none!important}

/* ---------- Utilities ---------- */
.eyebrow{letter-spacing:.22em;text-transform:uppercase;font-size:.7rem;font-weight:600}
.font-display{font-family:var(--font-display);letter-spacing:-.01em;text-transform:uppercase;line-height:.88;font-weight:400}
.link-underline{background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:0% 1px;transition:background-size .4s var(--ease);padding-bottom:4px}
.link-underline:hover{background-size:100% 1px}
.lu-footer .link-underline,.lu-footer li a{padding-bottom:0}
.lu-wrap{max-width:1600px;margin:0 auto;padding-left:20px;padding-right:20px}
.lu-icon{flex:none}
.lu-icon.h-3{width:12px;height:12px}.lu-icon.h-4{width:16px;height:16px}.lu-icon.h-5{width:20px;height:20px}
.lu-icon.h-6{width:24px;height:24px}.lu-icon.h-7{width:28px;height:28px}
.grain{position:relative}
.grain::after{content:"";pointer-events:none;opacity:.09;mix-blend-mode:overlay;position:absolute;inset:0;
	background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}

/* reveal on scroll */
.reveal{opacity:0;transform:translateY(40px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.reveal[data-visible="true"]{opacity:1;transform:none}
body.elementor-editor-active .reveal,.elementor-editor-active .reveal{opacity:1;transform:none}

/* ---------- Header ---------- */
.lu-header{position:fixed;left:0;right:0;top:0;z-index:40;padding:20px 0;background:transparent;mix-blend-mode:multiply;transition:all .5s cubic-bezier(.4,0,.2,1)}
.admin-bar .lu-header{top:32px}
@media (max-width:782px){.admin-bar .lu-header{top:46px}}
.lu-header.is-scrolled{padding:12px 0;background:color-mix(in oklab,var(--background) 95%,transparent);box-shadow:0 1px 0 var(--border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);mix-blend-mode:normal}
.lu-header__inner{display:flex;align-items:center;justify-content:space-between}
.lu-logo{display:block;width:112px;transition:all .5s cubic-bezier(.4,0,.2,1)}
.lu-logo img{width:100%;height:auto;mix-blend-mode:multiply}
.lu-header.is-scrolled .lu-logo{width:96px}
.lu-nav{display:none;align-items:center;gap:40px}
.lu-icons{display:flex;align-items:center;gap:16px}
.lu-icons a,.lu-icons button{display:block;line-height:0}
.lu-icons .lu-menu-open{display:block}
.lu-search{display:none!important}
.lu-menu-open{display:block}
.lu-bag-open{position:relative}
.lu-count{position:absolute;right:-8px;top:-8px;display:grid;place-items:center;height:16px;min-width:16px;padding:0 4px;background:var(--primary);color:var(--primary-foreground);font-size:10px;font-weight:600;line-height:1}
.lu-count[hidden]{display:none}

/* mobile menu */
.lu-mobile-menu{position:fixed;inset:0;z-index:50;display:flex;flex-direction:column;background:var(--ink);color:var(--ink-foreground);clip-path:inset(0 0 100% 0);pointer-events:none;transition:clip-path .7s var(--ease-menu)}
.lu-mobile-menu.is-open{clip-path:inset(0 0 0 0);pointer-events:auto}
.lu-mobile-menu__top{display:flex;justify-content:flex-end;padding:20px}
.lu-mobile-menu__nav{display:flex;flex:1;flex-direction:column;justify-content:center;gap:16px;padding:0 24px}
.lu-mobile-menu__nav a{font-size:3.75rem;line-height:1}
.lu-mobile-menu__foot{padding:24px;color:var(--steel)}

/* inner pages: clear the fixed header */
body.lusid:not(.home) .lu-main{padding-top:88px}

/* ---------- Hero ---------- */
.lu-hero{position:relative;overflow:hidden}
.lu-hero__media{position:relative;height:68svh;overflow:hidden}
.lu-hero__para{position:absolute;inset:0;will-change:transform}
.lu-hero__img{width:100%;height:100%;object-fit:cover;object-position:50% 20%;animation:hero-scale 2.4s var(--ease) both}
.hero-fade{display:none;pointer-events:none;position:absolute;inset:0;background:linear-gradient(to top,color-mix(in oklab,var(--background) 70%,transparent) 0%,transparent 38%)}
.lu-hero__content{position:relative;background:var(--ink);color:var(--ink-foreground);padding:40px 20px 48px}
.lu-hero__inner{max-width:1600px;margin:0 auto;display:flex;flex-direction:column;gap:32px}
.lu-hero .eyebrow.lu-kicker{margin-bottom:16px;color:var(--steel)}
.lu-h1{font-family:var(--font-display);letter-spacing:-.01em;text-transform:uppercase;font-weight:400;font-size:17vw;line-height:.88;margin:0}
.lu-hero__right{max-width:20rem}
.lu-hero__right p{margin:0 0 24px;font-size:1rem;line-height:1.5}
.lu-hero__ctas{display:flex;flex-direction:column;gap:16px}
.lu-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:16px 28px;background:var(--ink-foreground);color:var(--ink);transition:transform .15s cubic-bezier(.4,0,.2,1)}
.lu-btn:hover{transform:translateY(-2px);color:var(--ink)}
.lu-hero__ctas .link-underline{align-self:flex-start}
.animate-rise{animation:rise 1s var(--ease) both}

/* ---------- Marquee ---------- */
.lu-marquee{overflow:hidden;border-top:1px solid var(--foreground);border-bottom:1px solid var(--foreground);background:var(--background);padding:16px 0}
.lu-marquee__track{display:flex;width:max-content;gap:48px;white-space:nowrap;animation:marquee 28s linear infinite}
.lu-marquee__track span{font-family:var(--font-display);letter-spacing:-.01em;text-transform:uppercase;font-size:1.5rem;line-height:1.3333}
.lu-marquee__track i{font-style:normal;color:var(--steel)}

/* ---------- Sections ---------- */
.lu-section{max-width:1600px;margin:0 auto;padding:80px 20px}
.lu-shead{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:48px}
.lu-h2{font-family:var(--font-display);letter-spacing:-.01em;text-transform:uppercase;font-weight:400;font-size:3.75rem;line-height:1;margin:0}

/* products grid (shortcode + shop archive) */
.lusid ul.products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px;row-gap:40px;margin:0;padding:0;list-style:none;float:none;width:100%}
.lusid ul.products::before,.lusid ul.products::after{display:none}
.lusid ul.products li.product{float:none;width:auto;margin:0;padding:0}
.lusid ul.products li.product:nth-child(1){transition-delay:0ms}
.lusid ul.products li.product:nth-child(4n+2){transition-delay:90ms}
.lusid ul.products li.product:nth-child(4n+3){transition-delay:180ms}
.lusid ul.products li.product:nth-child(4n+4){transition-delay:270ms}
.lu-card__media{position:relative;overflow:hidden;background:var(--card)}
.lu-card__media img{width:100%;aspect-ratio:3/4;object-fit:cover;transition:transform .7s cubic-bezier(.4,0,.2,1)}
.lu-card:hover .lu-card__media img{transform:scale(1.04)}
.lu-card__tag{position:absolute;left:12px;top:12px;background:var(--background);padding:4px 8px}
.lusid a.lu-card__add{position:absolute;left:0;right:0;bottom:0;display:block;text-align:center;background:var(--ink);color:var(--ink-foreground);padding:12px 0;transform:translateY(0);transition:transform .5s cubic-bezier(.4,0,.2,1)}
.lusid a.lu-card__add.loading{opacity:.6}
.lusid a.lu-card__add.added::after{content:none}
.lusid .added_to_cart{display:none!important}
.lu-card__info{margin-top:16px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;font-size:.875rem;line-height:1.4286}
.lu-card__title{font-size:.875rem;font-weight:500;text-transform:uppercase;letter-spacing:.025em;line-height:1.4286}
.lu-card__price{color:var(--muted-foreground)}
.lu-card__price del{opacity:.6}.lu-card__price ins{text-decoration:none}

/* ---------- About ---------- */
.lu-about{background:var(--ink);color:var(--ink-foreground)}
.lu-about__inner{max-width:1600px;margin:0 auto;padding:112px 20px}
.lu-about .eyebrow.lu-kicker{margin-bottom:32px;color:var(--steel)}
.lu-about__statement{font-family:var(--font-display);letter-spacing:-.01em;text-transform:uppercase;max-width:72rem;font-size:3rem;line-height:1;margin:0}
.lu-about__statement span{color:var(--steel)}
.lu-about__cols{display:grid;gap:40px;margin-top:64px;border-top:1px solid color-mix(in oklab,var(--ink-foreground) 20%,transparent);padding-top:40px}
.lu-about__cols .eyebrow{color:var(--steel)}
.lu-about__cols h3{font-family:var(--font-display);letter-spacing:-.01em;text-transform:uppercase;font-size:1.875rem;line-height:1.2;margin:12px 0 0}
.lu-about__cols p{margin-top:12px;max-width:20rem;font-size:.875rem;line-height:1.4286;color:var(--steel)}

/* ---------- Newsletter ---------- */
.lu-news{display:grid;gap:40px}
.lu-news form{display:flex;border-bottom:1px solid var(--foreground)}
.lu-news input{flex:1;min-width:0;background:transparent;border:0;padding:16px 0;font-size:1rem;line-height:1.5;outline:none;box-shadow:none}
.lu-news input::placeholder{color:var(--muted-foreground);opacity:1}
.lu-news button{padding:0 8px}
.lu-news__msg{margin-top:12px;font-size:.875rem;color:var(--muted-foreground)}

/* ---------- Footer ---------- */
.lu-footer{border-top:1px solid var(--foreground)}
.lu-footer__inner{padding-top:64px;padding-bottom:32px}
.lu-footer__cols{display:grid;gap:40px}
.lu-footer__h{margin-bottom:16px;color:var(--muted-foreground)}
.lu-footer ul{font-size:.875rem;line-height:1.4286}
.lu-footer li+li{margin-top:8px}
.lu-footer__logo{width:100%;height:auto;margin-top:64px;mix-blend-mode:multiply}
.lu-footer__bottom{display:flex;justify-content:space-between;margin-top:24px;color:var(--muted-foreground);line-height:1.5}

/* ---------- Bag drawer ---------- */
.lu-overlay{position:fixed;inset:0;z-index:50;background:color-mix(in oklab,var(--ink) 50%,transparent);opacity:0;pointer-events:none;transition:opacity .5s cubic-bezier(.4,0,.2,1)}
.lu-overlay.is-open{opacity:1;pointer-events:auto}
.lu-bag{position:fixed;right:0;top:0;z-index:50;display:flex;flex-direction:column;width:100%;max-width:28rem;height:100%;background:var(--background);transform:translateX(100%);transition:transform .5s var(--ease-menu)}
.lu-bag.is-open{transform:none}
.lu-bag-head{display:flex;align-items:center;justify-content:space-between;padding:20px;border-bottom:1px solid var(--border)}
.lu-bag-head p{font-size:1.875rem;line-height:1.2}
.lu-bag-body{flex:1;overflow-y:auto;padding:20px}
.lu-bag-empty{font-size:.875rem;color:var(--muted-foreground)}
.lu-bag-item{display:flex;gap:16px;margin-bottom:20px}
.lu-bag-img{width:80px;height:112px;object-fit:cover}
.lu-bag-info{display:flex;flex:1;flex-direction:column;justify-content:space-between;font-size:.875rem;line-height:1.4286}
.lu-bag-row{display:flex;justify-content:space-between;gap:8px}
.lu-bag-name{font-weight:500;text-transform:uppercase}
.lu-qty{display:flex;align-items:center;width:fit-content;border:1px solid var(--border)}
.lu-qty button{padding:8px;line-height:0}
.lu-qty span{width:24px;text-align:center}
.lu-bag-foot{padding:20px;border-top:1px solid var(--border)}
.lu-bag-sub{display:flex;justify-content:space-between;margin-bottom:16px;font-size:.875rem;line-height:1.4286}
.lusid a.lu-checkout{display:block;width:100%;padding:16px 0;text-align:center;background:var(--primary);color:var(--primary-foreground)}
.lusid a.lu-checkout.is-disabled{opacity:.4;pointer-events:none}
.lu-bag-sub .woocommerce-Price-amount{font-size:.875rem}

/* ---------- Keyframes ---------- */
@keyframes hero-scale{0%{transform:scale(1.06)}to{transform:scale(1)}}
@keyframes rise{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}

/* ---------- Breakpoints ---------- */
@media (min-width:48rem){ /* md */
	.lu-wrap,.lu-section,.lu-about__inner{padding-left:40px;padding-right:40px}
	.lu-section{padding-top:128px;padding-bottom:128px}
	.lu-nav{display:flex}
	.lu-search{display:block!important}
	.lu-icons .lu-menu-open,.lu-mobile-menu{display:none}
	.lu-logo{width:128px}
	.lu-header.is-scrolled .lu-logo{width:96px}
	.lu-hero{height:94svh}
	.lu-hero__media{position:absolute;inset:0;height:100%}
	.lu-hero__img{object-position:50% 30%}
	.hero-fade{display:block}
	.lu-hero__content{position:absolute;left:0;right:0;bottom:0;background:transparent;color:var(--foreground);padding:0 40px 48px}
	.lu-hero__inner{flex-direction:row;align-items:flex-end;justify-content:space-between}
	.lu-hero .eyebrow.lu-kicker{color:var(--charcoal)}
	.lu-h1{font-size:7.2vw}
	.lu-hero__right{text-align:right}
	.lu-hero__right p{font-size:1.125rem;line-height:1.5556}
	.lu-btn{background:var(--ink);color:var(--ink-foreground)}
	.lu-btn:hover{color:var(--ink-foreground)}
	.lu-hero__ctas{align-items:flex-end}
	.lu-hero__ctas .link-underline{align-self:flex-end}
	.lu-marquee__track span{font-size:1.875rem;line-height:1.2}
	.lu-h2{font-size:6rem}
	.lusid ul.products{column-gap:20px}
	.lusid a.lu-card__add{padding:16px 0;transform:translateY(100%)}
	.lu-card:hover a.lu-card__add{transform:translateY(0)}
	.lu-about__inner{padding-top:176px;padding-bottom:176px}
	.lu-about__statement{font-size:7vw}
	.lu-about__cols{grid-template-columns:repeat(3,minmax(0,1fr))}
	.lu-news{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}
	.lu-footer__cols{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (min-width:64rem){ /* lg */
	.lu-h1{font-size:6.4vw}
	.lusid ul.products{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (prefers-reduced-motion:reduce){
	.lu-hero__img,.animate-rise,.lu-marquee__track{animation:none}
	.reveal{opacity:1;transform:none}
}

/* ---------- Elementor integration ---------- */
.lusid .lu-el,.lusid .lu-el.e-con{--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;--gap:0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px}
.lusid .lu-el .elementor-widget:not(:last-child){margin-block-end:0}
.lusid .lu-el .elementor-widget-container{margin:0;padding:0}
.lusid .elementor-widget-heading .elementor-heading-title{font-family:inherit!important;font-size:inherit!important;font-weight:inherit!important;line-height:inherit!important;letter-spacing:inherit!important;text-transform:inherit!important;color:inherit!important;margin:0;padding:0}
.lusid .elementor-widget-text-editor{font-family:inherit!important;font-size:inherit!important;line-height:inherit!important;color:inherit!important}
.lusid .lu-el .elementor-widget-text-editor p{margin:0}
.lusid .elementor-widget-image img{width:100%;height:100%;max-width:none}
.lusid .lu-hero__media .elementor-widget-image,.lusid .lu-hero__media .elementor-widget-image .elementor-widget-container{height:100%;width:100%}
.lusid .lu-hero__para{position:absolute;inset:0}
.lusid .lu-hero__media .elementor-widget-html{position:absolute;inset:0;pointer-events:none}
.lusid .lu-hero__media .elementor-widget-html .elementor-widget-container{height:100%}
.delay-400{animation-delay:400ms}.delay-650{animation-delay:650ms}
.lusid .lu-hero__ctas .lu-btn,.lusid .lu-hero__ctas .link-underline{width:auto}
.lusid .elementor-widget-shortcode{width:100%}
.lusid .e-con.lu-hero{display:block}
.lusid .lu-el.reveal{opacity:0;transform:translateY(40px)}
.lusid .lu-el.reveal[data-visible="true"]{opacity:1;transform:none}
.lusid .lu-shead{flex-direction:row}
.lusid .e-con.lu-hero__inner,.lusid .e-con.lu-hero__content{--display:flex}
.lusid .e-con.lu-hero__inner{flex-direction:column}
@media (min-width:48rem){.lusid .e-con.lu-hero__inner{flex-direction:row}}

/* arrow-up-right (lucide, stroke 2) drawn with a mask; Elementor's HTML widget strips inline SVG */
.lu-btn::after{content:"";width:16px;height:16px;flex:none;background:currentColor;-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M7 7h10v10'/><path d='M7 17 17 7'/></svg>") center/contain no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M7 7h10v10'/><path d='M7 17 17 7'/></svg>") center/contain no-repeat}
/* paragraph spacing that the Elementor reset would otherwise zero */
.lusid .lu-el .elementor-widget-text-editor p.lu-kicker{margin-bottom:16px}
.lusid .lu-about .elementor-widget-text-editor p.lu-kicker{margin-bottom:32px}
.lusid .lu-el .lu-hero__right .elementor-widget-text-editor p{margin-bottom:24px}
.lusid .lu-hero__para img{width:100%;height:100%;object-fit:cover;object-position:50% 20%;animation:hero-scale 2.4s var(--ease) both}
@media (min-width:48rem){.lusid .lu-hero__para img{object-position:50% 30%}}
@media (prefers-reduced-motion:reduce){.lusid .lu-hero__para img{animation:none}}
.lusid .lu-about .lu-about__statement{max-width:72rem!important}
.lusid .lu-el .lu-hero__right{max-width:20rem}
.lusid .lu-section--news{padding-top:80px;padding-bottom:80px}
@media (min-width:48rem){.lusid .lu-section--news{padding-top:112px;padding-bottom:112px}}

/* =========================================================
   Inner pages: shop, product, cart, checkout, plain pages
   ========================================================= */
body.lusid:not(.elementor-page) .lu-main{padding-top:112px;padding-bottom:96px;min-height:60vh}
body.lusid:not(.elementor-page) .lu-main>*{max-width:1600px;margin-left:auto;margin-right:auto;padding-left:20px;padding-right:20px}
@media (min-width:48rem){body.lusid:not(.elementor-page) .lu-main>*{padding-left:40px;padding-right:40px}}

.lusid .page-header .entry-title,.lusid .woocommerce-products-header__title,.lusid .entry-title,.lusid .product_title,
.lusid .wp-block-woocommerce-cart h2,.lusid .wp-block-woocommerce-checkout h2,.lusid .wc-block-components-title,.lusid .cart_totals h2{
	font-family:var(--font-display);letter-spacing:-.01em;text-transform:uppercase;font-weight:400;line-height:1}
.lusid .woocommerce-products-header__title,.lusid .page-header .entry-title,.lusid h1.entry-title{font-size:3.75rem;margin-bottom:40px}
@media (min-width:48rem){.lusid .woocommerce-products-header__title,.lusid .page-header .entry-title,.lusid h1.entry-title{font-size:6rem}}
.lusid .page-content,.lusid .entry-content{font-size:1rem;line-height:1.6;max-width:48rem}
.lusid .page-content p,.lusid .entry-content p{margin-bottom:1em}

/* breadcrumb + sorting */
.lusid .woocommerce-breadcrumb{margin-bottom:24px;font-size:.7rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--muted-foreground)}
.lusid .woocommerce-breadcrumb a:hover{color:var(--foreground)}
.lusid .woocommerce-ordering{margin-bottom:40px}
.lusid .woocommerce-ordering select,.lusid .orderby{border:0;border-bottom:1px solid var(--foreground);background:transparent;padding:8px 24px 8px 0;font-size:.7rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;border-radius:0;cursor:pointer}
.lusid .woocommerce-result-count{display:none}
.lusid .woocommerce-pagination{margin-top:64px}
.lusid .woocommerce-pagination ul{display:flex;gap:8px}
.lusid .woocommerce-pagination a,.lusid .woocommerce-pagination span{display:block;padding:8px 14px;border:1px solid var(--border);font-size:.875rem}
.lusid .woocommerce-pagination .current{background:var(--ink);color:var(--ink-foreground);border-color:var(--ink)}

/* shared buttons */
.lusid .button,.lusid button.single_add_to_cart_button,.lusid .wc-block-components-button:not(.is-link),.lusid .wp-element-button,
.lusid .woocommerce a.button,.lusid input[type=submit],.lusid #place_order{
	display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:0;cursor:pointer;
	background:var(--ink);color:var(--ink-foreground);padding:16px 28px;font-family:var(--font-sans);font-size:.7rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;line-height:1.5;transition:transform .15s cubic-bezier(.4,0,.2,1),opacity .15s}
.lusid .button:hover,.lusid button.single_add_to_cart_button:hover,.lusid .wc-block-components-button:not(.is-link):hover,.lusid .wp-element-button:hover,.lusid #place_order:hover{background:var(--ink);color:var(--ink-foreground);transform:translateY(-2px)}
.lusid .wc-block-components-button__text{font:inherit;letter-spacing:inherit;text-transform:inherit}
.lusid .wc-block-cart__submit-button,.lusid .wc-block-components-checkout-place-order-button{width:100%}

/* form fields */
.lusid input[type=text],.lusid input[type=email],.lusid input[type=tel],.lusid input[type=password],.lusid input[type=number],.lusid input[type=search],.lusid select,.lusid textarea,
.lusid .wc-block-components-text-input input,.lusid .wc-blocks-components-select__select,.lusid .wc-block-components-textarea{
	border:1px solid var(--input)!important;border-radius:0!important;background:transparent!important;color:var(--foreground);box-shadow:none}
.lusid .wc-block-components-text-input input:focus,.lusid input:focus,.lusid select:focus,.lusid textarea:focus{outline:1px solid var(--foreground);outline-offset:0}
.lusid .wc-block-components-text-input label,.lusid .wc-block-components-text-input.is-active label{color:var(--muted-foreground)}
.lusid .wc-block-components-checkbox .wc-block-components-checkbox__input{border-radius:0;border-color:var(--foreground)}
.lusid .wc-block-components-sidebar-layout .wc-block-components-main{padding-right:48px}
.lusid .wc-block-components-order-summary,.lusid .wp-block-woocommerce-checkout-order-summary-block{border-radius:0;border-color:var(--border)}
.lusid .wc-block-components-totals-wrapper{border-color:var(--border)}
.lusid .wc-block-components-notice-banner{border-radius:0}
.lusid .wc-block-components-product-name{font-weight:500;text-transform:uppercase;letter-spacing:.025em;font-size:.875rem}
.lusid .wc-block-cart-items__header,.lusid .wc-block-cart__totals-title{font-size:.7rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase}
.lusid .wc-block-cart .wc-block-cart-item__image img,.lusid .wc-block-components-order-summary-item__image img{border-radius:0}

/* single product */
.lusid div.product{display:grid;gap:40px}
@media (min-width:48rem){.lusid div.product{grid-template-columns:repeat(2,minmax(0,1fr));gap:64px;align-items:start}}
.lusid .woocommerce-product-gallery{width:100%!important;float:none!important;position:relative;background:var(--card)}
.lusid .woocommerce-product-gallery__wrapper{margin:0}
.lusid .woocommerce-product-gallery img{width:100%;aspect-ratio:3/4;object-fit:cover}
.lusid .woocommerce-product-gallery__trigger{display:none}
.lusid .flex-control-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:8px}
.lusid .summary{width:100%!important;float:none!important}
.lusid .product_title{font-size:3rem;margin-bottom:16px}
@media (min-width:48rem){.lusid .product_title{font-size:4.5rem}}
.lusid .summary .price{font-size:1.125rem;margin-bottom:24px;color:var(--foreground)}
.lusid .summary .price ins{text-decoration:none}
.lusid .woocommerce-product-details__short-description{margin-bottom:24px;color:var(--charcoal)}
.lusid form.cart{display:flex;gap:12px;align-items:stretch;margin-bottom:32px}
.lusid form.cart .quantity input{width:72px;height:100%;text-align:center}
.lusid form.cart .single_add_to_cart_button{flex:1}
.lusid .product_meta{font-size:.7rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--muted-foreground);display:grid;gap:8px}
.lusid .woocommerce-tabs{grid-column:1/-1;margin-top:40px}
.lusid .woocommerce-tabs ul.tabs{display:flex;gap:32px;border-bottom:1px solid var(--border);margin-bottom:24px}
.lusid .woocommerce-tabs ul.tabs a{display:block;padding-bottom:12px;font-size:.7rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase}
.lusid .woocommerce-tabs ul.tabs li.active a{border-bottom:1px solid var(--foreground)}
.lusid .related.products,.lusid .upsells.products{grid-column:1/-1;margin-top:64px}
.lusid .related.products>h2,.lusid .upsells.products>h2{font-family:var(--font-display);text-transform:uppercase;font-weight:400;font-size:3rem;line-height:1;margin-bottom:32px}
.lusid .woocommerce-message,.lusid .woocommerce-info,.lusid .woocommerce-error{padding:16px 20px;margin-bottom:24px;border:1px solid var(--border);background:var(--card);font-size:.875rem}
.lusid .woocommerce-message{display:flex;align-items:center;justify-content:space-between;gap:16px}
.lusid.woocommerce-cart .entry-content,.lusid.woocommerce-checkout .entry-content,.lusid.woocommerce-account .entry-content,.lusid .woocommerce .entry-content{max-width:none}
.lusid.woocommerce-cart .page-content,.lusid.woocommerce-checkout .page-content,.lusid.woocommerce-account .page-content{max-width:none}

/* newsletter field: underline only (overrides the boxed Woo input style) */
.lusid .lu-news input[type=email]{border:0!important;background:transparent!important;box-shadow:none;outline:none;padding:16px 0}
.lusid .lu-news input[type=email]:focus{outline:none}

/* ---------- Product page extras ---------- */
.lusid .woocommerce-product-gallery{background:transparent}
.lusid .woocommerce-product-gallery__wrapper{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.lusid .woocommerce-product-gallery__image{background:var(--card);margin:0}
.lusid .woocommerce-product-gallery__image:first-child{grid-column:1/-1}
.lusid .woocommerce-product-gallery__image a{display:block}
.lusid .woocommerce-product-gallery img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}
.lusid .woocommerce-product-gallery__image:first-child img{aspect-ratio:3/4}

.lusid .summary .price{font-size:1.5rem;font-weight:500;margin-bottom:24px}
.lusid .woocommerce-product-details__short-description{max-width:32rem;font-size:1rem;line-height:1.6;color:var(--charcoal);margin-bottom:32px}
.lu-perks{display:flex;flex-wrap:wrap;gap:12px 24px;margin:0 0 32px;padding:0;color:var(--muted-foreground)}
.lu-perks li{display:flex;align-items:center;gap:8px}
.lu-perks li::before{content:"";width:6px;height:6px;background:var(--foreground)}

.lu-acc{border-top:1px solid var(--foreground)}
.lu-acc details{border-bottom:1px solid var(--border)}
.lu-acc summary{display:flex;align-items:center;justify-content:space-between;padding:20px 0;cursor:pointer;list-style:none}
.lu-acc summary::-webkit-details-marker{display:none}
.lu-acc summary::after{content:"+";font-size:1.25rem;font-weight:400;letter-spacing:0;line-height:1}
.lu-acc details[open] summary::after{content:"\2212"}
.lu-acc__body{padding:0 0 24px;font-size:.875rem;line-height:1.7;color:var(--charcoal)}
.lu-acc__body p{margin:0 0 12px}
.lu-acc__body .woocommerce-product-attributes{width:100%;border-collapse:collapse;margin-top:16px}
.lu-acc__body .woocommerce-product-attributes th{width:34%;padding:8px 0;text-align:left;font-size:.7rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--muted-foreground);border:0;border-top:1px solid var(--border);vertical-align:top}
.lu-acc__body .woocommerce-product-attributes td{padding:8px 0;border:0;border-top:1px solid var(--border)}
.lu-acc__body .woocommerce-product-attributes td p{margin:0}
.lu-sku{margin-top:16px;color:var(--muted-foreground)}
.lu-size{width:100%;border-collapse:collapse;margin-top:8px;text-align:left}
.lu-size th,.lu-size td{padding:10px 0;border-top:1px solid var(--border)}
.lu-size th{font-size:.7rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--muted-foreground)}
.lusid .related.products ul.products{margin-top:0}

/* ---------- About page ---------- */
.lusid .lu-section--first{padding-top:144px;padding-bottom:64px}
.lusid .lu-kicker--dark{margin-bottom:24px;color:var(--muted-foreground)}
.lusid .lu-el .elementor-widget-text-editor p.lu-kicker--dark{margin-bottom:24px}
.lu-page-h1{font-family:var(--font-display);letter-spacing:-.01em;text-transform:uppercase;font-weight:400;font-size:17vw;line-height:.88}
.lu-lead-wrap{margin-top:48px}
.lu-lead{font-family:var(--font-display);letter-spacing:-.01em;text-transform:uppercase;max-width:72rem;font-size:2.25rem;line-height:1.05}
.lu-lead span{color:var(--muted-foreground)}
.lusid .lu-lead-wrap .lu-lead{max-width:72rem!important}
.lu-prose{display:grid;gap:32px}
.lusid .lu-el .lu-prose .elementor-widget-text-editor p{font-size:1.25rem;line-height:1.6;color:var(--ink-foreground)}
.lusid .lu-el .lu-prose .elementor-widget-text-editor:last-child p{color:var(--steel)}
.lu-manifesto-wrap{margin-top:64px;padding-top:40px;border-top:1px solid color-mix(in oklab,var(--ink-foreground) 20%,transparent)}
.lusid .lu-manifesto{font-size:2.25rem;line-height:1.05}
.lusid .lu-closing{padding-top:96px;padding-bottom:96px}
.lu-closing__h{font-family:var(--font-display);letter-spacing:-.01em;text-transform:uppercase;font-weight:400;font-size:15vw;line-height:.88;margin-bottom:48px}
.lu-btn--dark{background:var(--ink);color:var(--ink-foreground)}
.lu-btn--dark:hover{color:var(--ink-foreground)}
.lu-btn--dark::after{content:none}
@media (min-width:48rem){
	.lusid .lu-section--first{padding-top:208px;padding-bottom:96px}
	.lu-page-h1{font-size:10vw}
	.lu-lead-wrap{margin-top:64px}
	.lu-lead{font-size:5vw}
	.lu-prose{grid-template-columns:repeat(2,minmax(0,1fr));gap:64px}
	.lusid .lu-manifesto{font-size:4.2vw}
	.lusid .lu-closing{padding-top:128px;padding-bottom:128px}
	.lu-closing__h{font-size:9vw}
}
.lusid .lu-el .elementor-widget.lu-closing__h{margin-block-end:32px}
@media (min-width:48rem){.lusid .lu-el .elementor-widget.lu-closing__h{margin-block-end:48px}}

/* keep the summary in normal flow so it can never overlap the related-products row */
.lusid div.product .summary{position:static}
.lusid .related.products{position:relative;clear:both}


/* ---------- Search panel ---------- */
.lu-search-panel{position:fixed;left:0;right:0;top:0;z-index:55;max-height:100vh;overflow-y:auto;background:var(--background);transform:translateY(-100%);visibility:hidden;transition:transform .5s var(--ease-menu),visibility 0s linear .5s}

.lu-search-panel.is-open{transform:none;visibility:visible;transition:transform .5s var(--ease-menu)}
.lu-search-panel__inner{padding-top:20px;padding-bottom:40px}
.lu-search-panel__top{display:flex;align-items:center;justify-content:space-between;height:48px}
.lu-search-form{display:flex;align-items:flex-end;gap:16px;margin-top:24px;border-bottom:1px solid var(--foreground)}
.lusid .lu-search-form input[type=search]{flex:1;min-width:0;border:0!important;background:transparent!important;box-shadow:none;outline:none;padding:0 0 8px;font-family:var(--font-display);font-size:3.75rem;line-height:1;letter-spacing:-.01em;text-transform:uppercase;color:var(--foreground);-webkit-appearance:none;appearance:none}
.lusid .lu-search-form input[type=search]::placeholder{color:var(--muted-foreground);opacity:.6}
.lusid .lu-search-form input[type=search]::-webkit-search-cancel-button{display:none}
.lu-search-form button{padding:0 0 14px}
.lu-search-results{margin-top:32px}
.lu-search-hint{font-size:.875rem;color:var(--muted-foreground)}
.lu-search-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 12px}
.lu-sr{display:block}
.lu-sr__media{background:var(--card);overflow:hidden}
.lu-sr__media img{width:100%;aspect-ratio:3/4;object-fit:cover;transition:transform .7s cubic-bezier(.4,0,.2,1)}
.lu-sr:hover .lu-sr__media img{transform:scale(1.04)}
.lu-sr__info{display:flex;justify-content:space-between;gap:12px;margin-top:12px;font-size:.875rem;line-height:1.4286}
.lu-sr__name{font-weight:500;text-transform:uppercase;letter-spacing:.025em}
.lu-sr__price{color:var(--muted-foreground)}
.lu-search-all{display:inline-block;margin-top:24px}
@media (min-width:48rem){
	.lusid .lu-search-form input[type=search]{font-size:6rem}
	.lu-search-panel__inner{padding-bottom:56px}
	.lu-search-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 20px}
}
body.lu-search-active{overflow:hidden}

.lu-mobile-menu__foot{display:flex;align-items:center;justify-content:space-between;gap:16px}
.lu-mobile-menu__foot .lu-mobile-search{color:var(--ink-foreground)}

/* ---------- Shop archive: title left, sorting right ---------- */
@media (min-width:48rem){
	.lusid .site-main:has(> form.woocommerce-ordering){display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:32px;align-items:end}
	.lusid .site-main:has(> form.woocommerce-ordering) > *{grid-column:1/-1}
	.lusid .site-main:has(> form.woocommerce-ordering) > .woocommerce-products-header{grid-column:1;grid-row:2}
	.lusid .site-main:has(> form.woocommerce-ordering) > form.woocommerce-ordering{grid-column:2;grid-row:2;margin:0 0 40px;justify-self:end}
	.lusid .site-main:has(> form.woocommerce-ordering) > .woocommerce-breadcrumb{grid-row:1}
	.lusid .site-main:has(> form.woocommerce-ordering) > .woocommerce-notices-wrapper{grid-row:3}
	.lusid .site-main:has(> form.woocommerce-ordering) > ul.products{grid-row:4}
}


/* =========================================================
   Help pages (Shipping, Returns, Size Guide, Contact)
   ========================================================= */
.lu-help{max-width:1600px;margin:0 auto;padding:0 20px}
body.lusid .lu-main:has(.lu-help){padding-top:128px}
.lu-help__kicker{margin-bottom:24px;color:var(--muted-foreground)}
.lu-help__title{font-family:var(--font-display);letter-spacing:-.01em;text-transform:uppercase;font-weight:400;font-size:3.75rem;line-height:1;margin:0}
.lu-help__body{display:grid;gap:40px;margin-top:48px;padding-top:40px;border-top:1px solid var(--foreground)}
.lu-help__nav{display:flex;flex-wrap:wrap;gap:12px 24px}
.lu-help__nav a{font-size:.875rem;line-height:1.4286;color:var(--muted-foreground);padding-bottom:2px;border-bottom:1px solid transparent;transition:color .2s,border-color .2s}
.lu-help__nav a:hover,.lu-help__nav a.is-current{color:var(--foreground);border-bottom-color:var(--foreground)}
.lu-help__content{max-width:48rem;font-size:1rem;line-height:1.7;color:var(--charcoal)}
.lu-help--contact .lu-help__content{max-width:none}
.lu-help__content p{margin:0 0 16px}
.lu-help__content .lu-intro{font-family:var(--font-display);letter-spacing:-.01em;text-transform:uppercase;font-size:1.875rem;line-height:1.1;color:var(--foreground);margin-bottom:48px;max-width:40rem}
.lu-help__content h2{font-family:var(--font-display);letter-spacing:-.01em;text-transform:uppercase;font-weight:400;font-size:1.875rem;line-height:1.2;color:var(--foreground);margin:56px 0 16px}
.lu-help__content h2:first-of-type{margin-top:0}
.lu-help__content h3{font-size:.7rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--foreground);margin:32px 0 8px}
.lu-help__content ul{margin:0 0 16px;padding:0;list-style:none}
.lu-help__content ul li{position:relative;padding-left:20px;margin-bottom:8px}
.lu-help__content ul li::before{content:"";position:absolute;left:0;top:.7em;width:6px;height:6px;background:var(--foreground)}
.lu-help__content a{border-bottom:1px solid currentColor}
.lu-table{width:100%;border-collapse:collapse;margin:8px 0 24px;font-size:.875rem;text-align:left}
.lu-table th,.lu-table td{padding:12px 16px 12px 0;border-top:1px solid var(--border)}
.lu-table tr:last-child td{border-bottom:1px solid var(--border)}
.lu-table th{font-size:.7rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--muted-foreground);border-top:1px solid var(--foreground)}
.lu-table td:first-child{font-weight:500;color:var(--foreground)}
.lu-steps{counter-reset:s;margin:0 0 24px;padding:0;list-style:none;display:grid;gap:0}
.lu-help__content .lu-steps li{counter-increment:s;padding:20px 0 20px 56px;margin:0;border-top:1px solid var(--border)}
.lu-help__content .lu-steps li:last-child{border-bottom:1px solid var(--border)}
.lu-help__content .lu-steps li::before{content:"0" counter(s);left:0;top:20px;width:auto;height:auto;background:none;font-size:.7rem;font-weight:600;letter-spacing:.22em;color:var(--muted-foreground)}
.lu-steps strong{display:block;color:var(--foreground);font-weight:500;margin-bottom:2px}
.lu-note{margin:24px 0;padding:20px 24px;background:var(--card);font-size:.875rem;line-height:1.6}

/* contact */
.lu-contact{display:grid;gap:56px}
.lu-form{display:grid;gap:24px}
.lu-form__row{display:grid;gap:24px}
.lu-field{display:block}
.lu-field .eyebrow{display:block;margin-bottom:4px;color:var(--muted-foreground)}
.lu-field em{font-style:normal;opacity:.7;letter-spacing:.1em}
.lusid .lu-form input[type=text],.lusid .lu-form input[type=email],.lusid .lu-form textarea,.lusid .lu-form select{width:100%;border:0!important;border-bottom:1px solid var(--foreground)!important;background:transparent!important;box-shadow:none;outline:none;padding:12px 0;font-size:1rem;line-height:1.5;color:var(--foreground);border-radius:0!important}
.lusid .lu-form select{appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%)!important;background-position:calc(100% - 10px) 55%,calc(100% - 5px) 55%!important;background-size:5px 5px!important;background-repeat:no-repeat!important;padding-right:24px;cursor:pointer}
.lusid .lu-form textarea{resize:vertical;min-height:140px}
.lusid .lu-form input:focus,.lusid .lu-form textarea:focus,.lusid .lu-form select:focus{border-bottom-width:2px!important;padding-bottom:11px}
.lu-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.lu-form__foot{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px;margin-top:8px}
.lu-form__msg{margin:0;font-size:.875rem;color:var(--muted-foreground)}
.lu-form__msg.is-error{color:oklch(50% .2 27)}
.lu-form__msg.is-ok{color:var(--foreground)}
.lusid .lu-form button[disabled]{opacity:.5;pointer-events:none}
.lu-contact__info{display:grid;gap:28px;align-content:start;font-size:.875rem;line-height:1.6;color:var(--charcoal)}
.lu-contact__info .eyebrow{margin-bottom:6px;color:var(--muted-foreground)}
.lu-contact__info p{margin:0}

@media (min-width:48rem){
	.lu-help{padding:0 40px}
	body.lusid .lu-main:has(.lu-help){padding-top:160px}
	.lu-help__title{font-size:8rem}
	.lu-help__body{grid-template-columns:220px minmax(0,1fr);gap:64px;margin-top:64px}
	.lu-help__nav{flex-direction:column;flex-wrap:nowrap;gap:12px}
	.lu-help__nav a{align-self:flex-start}
	.lu-help__content .lu-intro{font-size:3rem}
	.lu-help__content h2{font-size:2.25rem}
	.lu-contact{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:96px}
	.lu-form__row{grid-template-columns:repeat(2,minmax(0,1fr))}
}
.lu-help__content .lu-steps li{position:relative}
.lu-help__content .lu-steps li::before{position:absolute}


/* Overlays start below the WordPress admin bar (--lu-ab is set by JS; 0 for visitors) */
.lu-mobile-menu{top:var(--lu-ab,0px)}
.lu-bag{top:var(--lu-ab,0px);height:calc(100% - var(--lu-ab,0px))}
.lu-search-panel{top:var(--lu-ab,0px);max-height:calc(100vh - var(--lu-ab,0px))}


/* =========================================================
   Runway Experience: films, gallery, lightbox, teaser, duo
   ========================================================= */
/* films */
.lu-films{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.lu-film{position:relative;margin:0;aspect-ratio:9/16;background:var(--ink);overflow:hidden;cursor:pointer}
.lu-film__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.lusid .lu-film__sound{position:absolute;right:12px;bottom:12px;display:grid;place-items:center;width:40px;height:40px;background:color-mix(in oklab,var(--ink) 70%,transparent);color:var(--ink-foreground);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:background .2s}
.lusid .lu-film__sound:hover{background:var(--ink);color:var(--ink-foreground)}
.lu-film__sound svg{width:20px;height:20px;display:block}
.lu-film__sound .lu-film__on{display:none}
.lu-film.is-sound .lu-film__sound .lu-film__on{display:block}
.lu-film.is-sound .lu-film__sound .lu-film__off{display:none}
.lu-film-single{max-width:26rem}

/* gallery */
.lu-gal+.lu-gal{margin-top:96px}
.lu-gal__head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:32px}
.lu-gal__head .eyebrow{color:var(--muted-foreground);padding-bottom:4px}
.lu-gal__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.lu-gal__item{position:relative;display:block;overflow:hidden;background:var(--card);aspect-ratio:3/4;cursor:zoom-in}
.lu-gal__item.is-wide{grid-column:span 2;aspect-ratio:auto}
.lu-gal__item img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.4,0,.2,1)}
.lu-gal__item:hover img{transform:scale(1.04)}
.lu-gal__item:nth-child(4n+2){transition-delay:90ms}
.lu-gal__item:nth-child(4n+3){transition-delay:180ms}
.lu-gal__item:nth-child(4n){transition-delay:270ms}
.lu-gal__item.is-wide{aspect-ratio:3/2}

/* lightbox */
.lu-lb{position:fixed;inset:0;z-index:70;display:flex;align-items:center;justify-content:center;background:var(--ink);opacity:0;visibility:hidden;transition:opacity .35s cubic-bezier(.4,0,.2,1),visibility 0s linear .35s}
.lu-lb.is-open{opacity:1;visibility:visible;transition:opacity .35s cubic-bezier(.4,0,.2,1)}
.lu-lb__stage{position:absolute;inset:64px 16px 56px;display:flex;align-items:center;justify-content:center}
.lu-lb__img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block;opacity:0;transition:opacity .3s}
.lu-lb__img.is-ready{opacity:1}
.lusid .lu-lb button{position:absolute;display:grid;place-items:center;width:48px;height:48px;color:var(--ink-foreground);background:none}
.lusid .lu-lb button:hover{background:color-mix(in oklab,var(--ink-foreground) 10%,transparent);color:var(--ink-foreground)}
.lu-lb__close{top:8px;right:8px}
.lu-lb__prev{left:4px;top:50%;margin-top:-24px}
.lu-lb__next{right:4px;top:50%;margin-top:-24px}
.lu-lb button svg{width:24px;height:24px}
.lu-lb__count{position:absolute;left:0;right:0;bottom:18px;text-align:center;color:var(--steel)}
body.lu-lb-active{overflow:hidden}

/* home teaser + about duo */
.lusid ul.lu-teaser{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px;row-gap:12px;margin:0;padding:0;list-style:none}
.lu-teaser li:nth-child(4n+2){transition-delay:90ms}.lu-teaser li:nth-child(4n+3){transition-delay:180ms}.lu-teaser li:nth-child(4n){transition-delay:270ms}
.lu-teaser .lu-card{display:block}
.lu-duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.lu-duo__item{overflow:hidden;background:var(--card);aspect-ratio:4/5}
.lu-duo__item img{width:100%;height:100%;object-fit:cover}
.lusid .lu-section--tight{padding-top:0}

/* about page: story row (text + film) */
.lusid .lu-story-top{display:grid;gap:48px}
.lusid .lu-story-top .lu-prose{display:grid;grid-template-columns:1fr;gap:24px;align-content:start}
.lusid .lu-story-top .lu-film-single{width:100%;max-width:24rem}

@media (min-width:48rem){
	.lu-films{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
	.lu-gal__grid{gap:20px}
	.lu-gal+.lu-gal{margin-top:160px}
	.lu-gal__head{margin-bottom:48px}
	.lu-gal__item.is-wide{aspect-ratio:3/2}
	.lu-lb__stage{inset:72px 80px 64px}
	.lu-lb__prev{left:16px}.lu-lb__next{right:16px}
	.lusid ul.lu-teaser{column-gap:20px;row-gap:20px}
	.lu-duo{gap:20px}
	.lusid .lu-story-top{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:96px;align-items:start}
	.lusid .lu-story-top .lu-film-single{justify-self:end}
}
@media (min-width:64rem){
	.lu-gal__grid{grid-template-columns:repeat(4,minmax(0,1fr))}
	.lusid ul.lu-teaser{grid-template-columns:repeat(4,minmax(0,1fr))}
}
.lusid .lu-galleries .elementor-widget+.elementor-widget{margin-top:96px}
@media (min-width:48rem){.lusid .lu-galleries .elementor-widget+.elementor-widget{margin-top:160px}}
.lusid .lu-closing--line{border-top:1px solid var(--foreground);margin-top:0}

/* About: text column (paragraphs + manifesto) beside the film */
.lusid .lu-story-text{display:flex;flex-direction:column;gap:40px}
.lusid .lu-story-text .lu-manifesto-wrap{margin-top:0;padding-top:32px}
.lusid .lu-story-text .lu-manifesto{font-size:2.25rem;line-height:1.05}
@media (min-width:48rem){
	.lusid .lu-story-top{align-items:stretch}
	.lusid .lu-story-text{justify-content:space-between;gap:48px}
	.lusid .lu-el .lu-story-text .lu-prose .elementor-widget-text-editor p{font-size:1.5rem;line-height:1.55}
	.lusid .lu-story-text .lu-manifesto-wrap{margin-top:auto;padding-top:40px}
	.lusid .lu-story-text .lu-manifesto{font-size:4.5vw}
}


/* =========================================================
   Dark openings + dark/light rhythm (About, Runway, Help)
   ========================================================= */
/* header: light-on-dark while at the top of a dark opening */
.lu-logo__light{display:none}
body.lu-dark-top .lu-header:not(.is-scrolled){mix-blend-mode:normal;color:var(--ink-foreground)}
body.lu-dark-top .lu-header:not(.is-scrolled) .lu-logo__dark{display:none}
body.lu-dark-top .lu-header:not(.is-scrolled) .lu-logo__light{display:block;width:100%;height:auto}
body.lu-dark-top .lu-header:not(.is-scrolled) .lu-count{background:var(--ink-foreground);color:var(--ink)}
body.lu-dark-top .lu-header .lu-logo__light{mix-blend-mode:normal}

.lusid .lu-dark{background:var(--ink);color:var(--ink-foreground)}
.lusid .lu-dark .lu-lead span{color:var(--steel)}
.lusid .lu-dark .lu-gal__item,.lusid .lu-dark .lu-film{background:oklch(22% 0 0)}
.lusid .lu-dark .lu-gal__head .eyebrow{color:var(--steel)}

.lu-photo{overflow:hidden;background:oklch(22% 0 0);aspect-ratio:4/5}
.lu-photo img{width:100%;height:100%;object-fit:cover;display:block}

/* ---- About: dark split hero ---- */
.lusid .lu-hero2{position:relative;overflow:hidden;background:var(--ink);color:var(--ink-foreground)}
.lusid .lu-hero2__inner{width:100%;max-width:1600px;margin:0 auto;padding:120px 20px 48px;display:grid;gap:40px}
.lusid .lu-hero2__text{display:flex;flex-direction:column;justify-content:flex-end}
.lusid .lu-hero2 .lu-kicker{margin-bottom:24px;color:var(--steel)}
.lusid .lu-hero2 .elementor-widget-text-editor p.lu-kicker{margin-bottom:24px;color:var(--steel)}
.lusid .lu-hero2 .lu-lead-wrap{margin-top:40px}
.lusid .lu-hero2 .lu-lead{font-size:2rem}

/* ---- About: light split band (photo + paragraphs) ---- */
.lusid .lu-split{max-width:1600px;margin:0 auto;padding:80px 20px;display:grid;gap:40px;align-items:center}
.lusid .lu-split__text{display:grid;gap:24px;align-content:center}
.lusid .lu-el .lu-split__text .elementor-widget-text-editor p{font-size:1.5rem;line-height:1.5;color:var(--foreground)}
.lusid .lu-el .lu-split__text .elementor-widget-text-editor:last-child p{color:var(--muted-foreground)}

/* ---- About: dark manifesto + film ---- */
.lusid .lu-story-top--manifesto{align-items:center}
.lusid .lu-story-top--manifesto .lu-manifesto-wrap{margin:0;padding:0;border:0}
.lusid .lu-story-top--manifesto .lu-manifesto{font-size:2.25rem;line-height:1.02}

/* ---- Runway: photo-wall hero ---- */
.lusid .lu-mosaic{position:relative;overflow:hidden;background:var(--ink);color:var(--ink-foreground);min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end}
.lu-mosaic__bg{position:absolute;inset:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.lu-mosaic__bg img{width:100%;height:100%;object-fit:cover;display:block;animation:hero-scale 2.4s var(--ease) both}
.lu-mosaic__bg img:nth-child(n+3){display:none}
.lu-mosaic__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,var(--ink) 0%,color-mix(in oklab,var(--ink) 78%,transparent) 28%,color-mix(in oklab,var(--ink) 25%,transparent) 62%,color-mix(in oklab,var(--ink) 60%,transparent) 100%)}
.lusid .lu-mosaic .elementor-widget-shortcode{position:static}
.lusid .lu-mosaic__text{position:relative;width:100%;max-width:1600px;margin:0 auto;padding:128px 20px 48px}
.lusid .lu-mosaic .lu-kicker{margin-bottom:24px}
.lusid .lu-mosaic .elementor-widget-text-editor p.lu-kicker{margin-bottom:24px;color:var(--steel)}
.lusid .lu-mosaic .lu-lead-wrap{margin-top:32px}
.lusid .lu-mosaic .lu-lead{font-size:2rem}
.lusid .lu-band{width:100%}
.lusid .lu-band>.lu-section{padding-top:80px;padding-bottom:80px}
.lusid .lu-band .lu-galleries{padding-top:0}

/* ---- Help: dark opening ---- */
body.lusid:not(.elementor-page) .lu-main:has(.lu-helppage){padding-top:0;padding-bottom:0}
body.lusid:not(.elementor-page) .lu-main>.lu-helppage{max-width:none;padding-left:0;padding-right:0}
.lu-helphead{position:relative;overflow:hidden;background:var(--ink);color:var(--ink-foreground)}
.lu-helphead__inner{max-width:1600px;margin:0 auto;padding:128px 20px 48px;display:grid;gap:32px;align-items:end}
.lu-helphead .lu-help__kicker{margin-bottom:20px;color:var(--steel)}
.lu-helphead .lu-help__title{color:var(--ink-foreground)}
.lu-helphead__photo{display:none}
.lu-helphead__photo img{width:100%;height:100%;object-fit:cover;display:block}
.lu-helppage .lu-help{padding-top:48px;padding-bottom:96px}
.lu-helppage .lu-help__body{margin-top:0;padding-top:0;border-top:0}

@media (min-width:48rem){
	.lusid .lu-hero2__inner{min-height:100svh;padding:160px 40px 72px;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:72px;align-items:end}
	.lusid .lu-hero2 .lu-page-h1{font-size:9vw}
	.lusid .lu-hero2 .lu-lead{font-size:3.2vw}
	.lusid .lu-hero2__photo{aspect-ratio:auto;height:calc(100svh - 232px);min-height:420px;align-self:end}
	.lusid .lu-split{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:96px;padding:128px 40px}
	.lusid .lu-el .lu-split__text .elementor-widget-text-editor p{font-size:2rem;line-height:1.4}
	.lusid .lu-story-top--manifesto{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:96px}
	.lusid .lu-story-top--manifesto .lu-manifesto{font-size:5vw}
	.lusid .lu-mosaic__text{padding:176px 40px 72px}
	.lusid .lu-mosaic .lu-page-h1{font-size:11vw}
	.lusid .lu-mosaic .lu-lead{font-size:3vw}
	.lu-mosaic__bg{grid-template-columns:repeat(5,minmax(0,1fr))}
	.lu-mosaic__bg img:nth-child(n+3){display:block}
	.lusid .lu-band>.lu-section{padding-top:128px;padding-bottom:128px}
	.lu-helphead__inner{padding:176px 40px 72px;grid-template-columns:minmax(0,1fr) 300px;gap:64px}
	.lu-helphead__photo{display:block;aspect-ratio:4/5;overflow:hidden;background:oklch(22% 0 0)}
	.lu-helphead .lu-help__title{font-size:9rem}
	.lu-helppage .lu-help{padding-top:80px}
}

/* dark openings start at the very top, under the transparent header */
body.lusid.lu-dark-top .lu-main{padding-top:0}
@media (min-width:48rem){.lusid .lu-mosaic .lu-page-h1{font-size:9.5vw}}
.lusid .lu-mosaic .elementor-widget-text-editor p.lu-kicker{color:var(--ink-foreground)}
.lusid .lu-mosaic .lu-lead span{color:oklch(80% 0 0)}

/* keep sections centered at 1600px on very wide screens (Elementor forces max-width:100%) */
.lusid .lu-el.lu-section{max-width:1600px!important;margin-left:auto!important;margin-right:auto!important}

/* About opening photo: keep faces in frame when the portrait is cropped */
.lusid .lu-hero2__photo img{object-position:50% 6%}

/* About split band photo: keep the face in frame */
.lusid .lu-split .lu-photo img{object-position:50% 12%}

/* product gallery photos open in the viewer */
.lusid .woocommerce-product-gallery__image a{cursor:zoom-in}
.lusid .woocommerce-product-gallery__image{overflow:hidden}
.lusid .woocommerce-product-gallery__image img{transition:transform .7s cubic-bezier(.4,0,.2,1)}
.lusid .woocommerce-product-gallery__image:hover img{transform:scale(1.03)}


/* home teaser: video tiles (autoplay, muted) */
.lu-vtile .lu-card__media{background:var(--ink)}
.lu-vtile video{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;transition:transform .7s cubic-bezier(.4,0,.2,1)}
.lu-card:hover .lu-card__media video{transform:scale(1.04)}
/* 2-column layout (phones/tablets): checkerboard -> video photo / photo video */
@media (max-width:63.99rem){
	.lusid ul.lu-teaser li:nth-child(3){order:4}
	.lusid ul.lu-teaser li:nth-child(4){order:3}
}


/* colour switch on the product page */
.lu-colors{margin-bottom:24px}
.lu-colors__label{margin-bottom:12px;color:var(--muted-foreground)}
.lu-colors__label strong{color:var(--foreground);font-weight:600}
.lu-colors__list{display:flex;flex-wrap:wrap;gap:12px}
.lusid a.lu-color{display:inline-flex;align-items:center;gap:10px;padding:12px 16px;border:1px solid var(--border);transition:border-color .2s,background-color .2s}
.lusid a.lu-color:hover{border-color:var(--foreground)}
.lusid a.lu-color.is-current{border-color:var(--foreground);background:var(--card)}
.lu-color__dot{width:14px;height:14px;border-radius:50%;box-shadow:0 0 0 1px color-mix(in oklab,var(--foreground) 25%,transparent)}
