/* Lucaffè Modern Header & Home */
:root{
  --lmhh-red:#94151a;
  --lmhh-red-dark:#4b0508;
  --lmhh-gold:#d8b45a;
  --lmhh-gold-light:#f4dda0;
  --lmhh-ink:#151517;
  --lmhh-black:#080809;
  --lmhh-charcoal:#171719;
  --lmhh-muted:#717177;
  --lmhh-cream:#f4efe6;
  --lmhh-line:rgba(22,22,24,.09);
  --lmhh-screen-width:100vw;
  --lmhh-header-height:88px;
  --lmhh-content-width:1380px;
}

html{
  scroll-behavior:smooth;
  overflow-x:clip;
}

body.lmhh-enabled{
  overflow-x:clip!important;
}

/* Hide the previous WoodMart/theme header and its old information row */
body.lmhh-enabled :is(
  .whb-header,
  .whb-clone,
  .whb-sticky-shadow,
  .site-header:not(.lmhh-header),
  .main-header,
  .header-banner,
  .top-bar,
  .whb-top-bar
){
  display:none!important;
}

/* Remove the gap often reserved by sticky theme headers */
body.lmhh-enabled :is(
  .whb-sticky-prepared,
  .whb-header-bottom,
  .whb-general-header
){
  min-height:0!important;
}

/* NEW HEADER */
.lmhh-header{
  position:sticky;
  z-index:9994;
  top:0;
  width:100%;
  height:var(--lmhh-header-height);
  display:flex;
  align-items:center;
  color:#fff;
  border-bottom:1px solid rgba(255,255,255,.08);
  background:
    linear-gradient(180deg,rgba(27,27,29,.98),rgba(18,18,20,.98));
  box-shadow:0 10px 35px rgba(0,0,0,.14);
  transition:height .28s ease,background .28s ease,box-shadow .28s ease;
}

body.admin-bar .lmhh-header{
  top:32px;
}

.lmhh-header.is-scrolled{
  height:70px;
  background:rgba(15,15,17,.9);
  box-shadow:0 18px 45px rgba(0,0,0,.24);
  backdrop-filter:blur(20px) saturate(145%);
}

.lmhh-header-inner{
  width:min(var(--lmhh-content-width),calc(100% - 48px));
  height:100%;
  margin:0 auto;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:48px;
}

.lmhh-logo{
  width:150px;
  min-width:150px;
  display:flex;
  align-items:center;
  text-decoration:none!important;
  transition:transform .25s ease;
}

.lmhh-logo:hover{
  transform:translateY(-1px);
}

.lmhh-logo-image{
  width:100%;
  max-height:58px;
  display:block;
  object-fit:contain;
}

.lmhh-logo-text{
  color:var(--lmhh-gold-light)!important;
  font-family:"Iowan Old Style","Palatino Linotype",Palatino,Baskerville,Georgia,serif;
  font-size:38px;
  line-height:1;
  font-style:italic;
  font-weight:700;
  letter-spacing:-.06em;
}

.lmhh-desktop-nav{
  min-width:0;
  display:flex;
  justify-content:center;
}

.lmhh-nav-list{
  margin:0!important;
  padding:0!important;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:clamp(20px,2.1vw,34px);
  list-style:none!important;
}

.lmhh-nav-list>li{
  position:relative;
  margin:0!important;
  padding:0!important;
}

.lmhh-nav-list>li>a{
  position:relative;
  min-height:44px;
  display:flex;
  align-items:center;
  color:rgba(255,255,255,.69)!important;
  text-decoration:none!important;
  font-size:12px;
  line-height:1;
  font-weight:650;
  letter-spacing:-.01em;
  white-space:nowrap;
  transition:color .22s ease;
}

.lmhh-nav-list>li>a::after{
  content:"";
  position:absolute;
  left:0;
  right:100%;
  bottom:5px;
  height:1px;
  background:var(--lmhh-gold);
  transition:right .28s cubic-bezier(.2,.75,.2,1);
}

.lmhh-nav-list>li:hover>a,
.lmhh-nav-list>li.current-menu-item>a,
.lmhh-nav-list>li.current-menu-parent>a,
.lmhh-nav-list>li.current_page_item>a{
  color:#fff!important;
}

.lmhh-nav-list>li:hover>a::after,
.lmhh-nav-list>li.current-menu-item>a::after,
.lmhh-nav-list>li.current-menu-parent>a::after,
.lmhh-nav-list>li.current_page_item>a::after{
  right:0;
}

/* Dropdown */
.lmhh-nav-list .sub-menu{
  position:absolute;
  top:calc(100% + 11px);
  left:50%;
  min-width:230px;
  margin:0!important;
  padding:12px!important;
  display:grid;
  gap:3px;
  opacity:0;
  visibility:hidden;
  transform:translate(-50%,12px);
  border:1px solid rgba(255,255,255,.11);
  border-radius:18px;
  background:rgba(18,18,20,.96);
  box-shadow:0 28px 70px rgba(0,0,0,.34);
  backdrop-filter:blur(18px);
  list-style:none!important;
  transition:opacity .22s ease,visibility .22s ease,transform .22s ease;
}

.lmhh-nav-list li:hover>.sub-menu,
.lmhh-nav-list li:focus-within>.sub-menu{
  opacity:1;
  visibility:visible;
  transform:translate(-50%,0);
}

.lmhh-nav-list .sub-menu a{
  padding:11px 12px;
  display:block;
  border-radius:11px;
  color:rgba(255,255,255,.7)!important;
  text-decoration:none!important;
  font-size:12px;
  transition:background .2s ease,color .2s ease;
}

.lmhh-nav-list .sub-menu a:hover{
  color:#fff!important;
  background:rgba(255,255,255,.07);
}

.lmhh-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:5px;
}

.lmhh-icon-button,
.lmhh-menu-toggle{
  position:relative;
  width:43px;
  height:43px;
  padding:0;
  display:flex;
  align-items:center;
  justify-content:center;
  border:0;
  border-radius:50%;
  color:rgba(255,255,255,.72)!important;
  background:transparent;
  text-decoration:none!important;
  cursor:pointer;
  transition:color .2s ease,background .2s ease,transform .2s ease;
}

.lmhh-icon-button:hover,
.lmhh-menu-toggle:hover{
  color:#fff!important;
  background:rgba(255,255,255,.075);
  transform:translateY(-1px);
}

.lmhh-icon-button svg{
  width:20px;
  height:20px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.lmhh-language{
  position:relative;
}

.lmhh-language-button{
  width:auto;
  min-width:64px;
  padding:0 10px;
  gap:7px;
  border-radius:999px;
}

.lmhh-language-button b{
  color:#fff;
  font-size:10px;
  letter-spacing:.08em;
}

.lmhh-language-button i{
  color:rgba(255,255,255,.45);
  font-size:12px;
  font-style:normal;
}

.lmhh-flag-lt{
  width:19px;
  height:12px;
  display:block;
  border-radius:2px;
  background:linear-gradient(
    to bottom,
    #fdb913 0 33.333%,
    #006a44 33.333% 66.666%,
    #c1272d 66.666% 100%
  );
  box-shadow:0 0 0 1px rgba(255,255,255,.08);
}

.lmhh-language-popover{
  position:absolute;
  top:calc(100% + 11px);
  right:0;
  min-width:116px;
  padding:8px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:15px;
  background:rgba(18,18,20,.97);
  box-shadow:0 24px 60px rgba(0,0,0,.32);
  backdrop-filter:blur(18px);
}

.lmhh-language-menu{
  display:grid;
  gap:3px;
}

.lmhh-language-menu a,
.lmhh-language-menu span{
  padding:9px 11px;
  display:block;
  border-radius:9px;
  color:rgba(255,255,255,.66)!important;
  text-decoration:none!important;
  font-size:10px;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.lmhh-language-menu a:hover,
.lmhh-language-menu .is-current{
  color:#fff!important;
  background:rgba(255,255,255,.08);
}

.lmhh-cart-count{
  position:absolute;
  top:4px;
  right:2px;
  min-width:17px;
  height:17px;
  padding:0 4px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  color:#151515;
  background:var(--lmhh-gold-light);
  font-size:8px;
  font-weight:900;
  box-shadow:0 0 0 2px #171719;
}

.lmhh-cart-count.is-empty{
  display:none;
}

.lmhh-menu-toggle{
  display:none;
  flex-direction:column;
  gap:6px;
}

.lmhh-menu-toggle span{
  width:20px;
  height:1px;
  display:block;
  background:currentColor;
  transition:transform .22s ease;
}

/* MOBILE DRAWER */
.lmhh-mobile-menu,
.lmhh-search-overlay{
  position:fixed;
  z-index:10020;
  inset:0;
}

.lmhh-mobile-backdrop,
.lmhh-search-backdrop{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.66);
  backdrop-filter:blur(7px);
}

.lmhh-mobile-panel{
  position:absolute;
  top:0;
  right:0;
  width:min(430px,92vw);
  height:100%;
  padding:22px 22px max(28px,env(safe-area-inset-bottom));
  overflow-y:auto;
  color:#fff;
  background:
    radial-gradient(circle at 80% 0%,rgba(216,180,90,.13),transparent 32%),
    linear-gradient(145deg,#1a1a1c,#09090a);
  box-shadow:-30px 0 80px rgba(0,0,0,.35);
  transform:translateX(100%);
  transition:transform .32s cubic-bezier(.2,.75,.2,1);
}

.lmhh-mobile-menu.is-open .lmhh-mobile-panel{
  transform:none;
}

.lmhh-mobile-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
}

.lmhh-mobile-head .lmhh-logo{
  width:132px;
  min-width:132px;
}

.lmhh-mobile-head>button{
  width:45px;
  height:45px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:50%;
  color:#fff;
  background:rgba(255,255,255,.05);
  font-size:25px;
  cursor:pointer;
}

.lmhh-mobile-nav{
  margin-top:48px;
}

.lmhh-mobile-nav .lmhh-nav-list{
  display:grid;
  gap:0;
}

.lmhh-mobile-nav .lmhh-nav-list>li{
  border-bottom:1px solid rgba(255,255,255,.08);
}

.lmhh-mobile-nav .lmhh-nav-list>li>a{
  min-height:58px;
  justify-content:space-between;
  color:#fff!important;
  font-size:20px;
  font-weight:800;
  letter-spacing:-.025em;
}

.lmhh-mobile-nav .lmhh-nav-list>li>a::after{
  display:none;
}

.lmhh-mobile-nav .sub-menu{
  position:static;
  min-width:0;
  padding:0 0 10px 15px!important;
  opacity:1;
  visibility:visible;
  transform:none;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
}

.lmhh-mobile-nav .sub-menu a{
  padding:8px 0;
  color:rgba(255,255,255,.58)!important;
}

.lmhh-mobile-quick{
  margin-top:34px;
  display:grid;
  gap:9px;
}

.lmhh-mobile-quick a{
  min-height:82px;
  padding:18px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:7px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:18px;
  color:#fff!important;
  background:rgba(255,255,255,.045);
  text-decoration:none!important;
}

.lmhh-mobile-quick span{
  color:var(--lmhh-gold-light);
  font-size:9px;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.lmhh-mobile-quick b{
  font-size:14px;
}

.lmhh-mobile-languages{
  margin-top:28px;
}

/* SEARCH */
.lmhh-search-dialog{
  position:absolute;
  top:50%;
  left:50%;
  width:min(760px,calc(100% - 30px));
  padding:50px;
  transform:translate(-50%,-50%) scale(.97);
  border:1px solid rgba(255,255,255,.1);
  border-radius:30px;
  color:#fff;
  background:
    radial-gradient(circle at 85% 0%,rgba(216,180,90,.13),transparent 32%),
    linear-gradient(145deg,#1b1b1d,#09090a);
  box-shadow:0 45px 120px rgba(0,0,0,.45);
  opacity:0;
  transition:opacity .25s ease,transform .25s ease;
}

.lmhh-search-overlay.is-open .lmhh-search-dialog{
  opacity:1;
  transform:translate(-50%,-50%) scale(1);
}

.lmhh-search-close{
  position:absolute;
  top:18px;
  right:18px;
  width:42px;
  height:42px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:50%;
  color:#fff;
  background:rgba(255,255,255,.05);
  font-size:24px;
  cursor:pointer;
}

.lmhh-search-dialog>p{
  margin:0 0 12px;
  color:var(--lmhh-gold-light);
  font-size:9px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.lmhh-search-dialog h2{
  margin:0;
  color:#fff;
  font-size:clamp(37px,5vw,60px);
  line-height:1;
  letter-spacing:-.055em;
}

.lmhh-search-dialog form{
  margin-top:35px;
  display:grid;
  grid-template-columns:1fr auto;
  gap:10px;
}

.lmhh-search-dialog input{
  min-width:0;
  min-height:58px;
  padding:0 20px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:16px;
  color:#fff;
  background:rgba(255,255,255,.06);
  font:inherit;
  outline:0;
}

.lmhh-search-dialog input::placeholder{
  color:rgba(255,255,255,.38);
}

.lmhh-search-dialog input:focus{
  border-color:rgba(216,180,90,.58);
}

.lmhh-search-dialog form button{
  min-height:58px;
  padding:0 27px;
  border:0;
  border-radius:16px;
  color:#111;
  background:linear-gradient(180deg,var(--lmhh-gold-light),var(--lmhh-gold));
  font:inherit;
  font-size:10px;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
  cursor:pointer;
}

.lmhh-search-links{
  margin-top:20px;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.lmhh-search-links a{
  padding:8px 11px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:999px;
  color:rgba(255,255,255,.58)!important;
  text-decoration:none!important;
  font-size:9px;
  font-weight:800;
}

/* HOME – replaces the empty top and legacy ten equal boxes */
body.lmhh-home :is(
  .premium-marquee-wrap,
  .lhx-page > .lhx-marquee,
  .lhx-page > .lhx-values,
  .facts-grid
){
  display:none!important;
}

.lmhh-home-launch{
  width:var(--lmhh-screen-width);
  max-width:var(--lmhh-screen-width);
  margin-left:calc((100% - var(--lmhh-screen-width))/2);
  margin-right:calc((100% - var(--lmhh-screen-width))/2);
  overflow:hidden;
  color:var(--lmhh-ink);
  background:#fff;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
}

.lmhh-home-launch *,
.lmhh-home-launch *::before,
.lmhh-home-launch *::after{
  box-sizing:border-box;
}

.lmhh-home-launch em{
  font-family:"Iowan Old Style","Palatino Linotype",Palatino,Baskerville,Georgia,serif;
  font-weight:500;
}

.lmhh-kicker{
  margin:0 0 18px;
  color:var(--lmhh-red);
  font-size:10px;
  font-weight:900;
  letter-spacing:.22em;
  text-transform:uppercase;
}

.lmhh-btn{
  min-height:54px;
  padding:0 29px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  text-decoration:none!important;
  font-size:11px;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
  transition:transform .25s ease,box-shadow .25s ease,background .25s ease;
}

.lmhh-btn:hover{
  transform:translateY(-2px);
}

.lmhh-btn-gold{
  color:#111!important;
  background:linear-gradient(180deg,var(--lmhh-gold-light),var(--lmhh-gold));
  box-shadow:0 17px 45px rgba(216,180,90,.22),inset 0 1px 0 rgba(255,255,255,.7);
}

.lmhh-btn-glass{
  color:#fff!important;
  border:1px solid rgba(255,255,255,.2);
  background:rgba(255,255,255,.06);
  backdrop-filter:blur(14px);
}

/* NEW FULL-WIDTH MARQUEE */
.lmhh-home-marquee{
  position:relative;
  z-index:2;
  width:100%;
  padding:15px 0;
  overflow:hidden;
  color:#fff;
  border-top:1px solid rgba(216,180,90,.3);
  border-bottom:1px solid rgba(216,180,90,.3);
  background:
    radial-gradient(circle at 12% 50%,rgba(148,21,26,.4),transparent 28%),
    linear-gradient(120deg,#0f0d0d,#33100f 50%,#080809);
}

.lmhh-home-marquee-track{
  width:max-content;
  display:flex;
  animation:lmhhMarquee 52s linear infinite;
  will-change:transform;
}

.lmhh-home-marquee:hover .lmhh-home-marquee-track{
  animation-play-state:paused;
}

.lmhh-home-marquee-group{
  display:flex;
  align-items:center;
  white-space:nowrap;
}

.lmhh-home-marquee-group span{
  padding:0 23px;
  color:#fff;
  font-size:10px;
  font-weight:900;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.lmhh-home-marquee-group em{
  margin-right:13px;
  color:var(--lmhh-gold-light);
  font-size:21px;
  font-style:italic;
  letter-spacing:-.02em;
  text-transform:none;
}

.lmhh-home-marquee-group b{
  color:var(--lmhh-gold);
  font-size:16px;
  font-weight:400;
}

/* HERO */
.lmhh-home-hero{
  position:relative;
  min-height:min(850px,88vh);
  padding:105px max(5vw,24px) 98px;
  display:grid;
  grid-template-columns:minmax(0,1.03fr) minmax(440px,.97fr);
  align-items:center;
  gap:70px;
  overflow:hidden;
  color:#fff;
  background:
    radial-gradient(circle at 13% 14%,rgba(148,21,26,.43),transparent 33%),
    radial-gradient(circle at 88% 8%,rgba(216,180,90,.18),transparent 30%),
    linear-gradient(142deg,#090909,#181214 54%,#050506);
}

.lmhh-home-noise{
  position:absolute;
  inset:0;
  opacity:.12;
  pointer-events:none;
  mix-blend-mode:soft-light;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.86' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.18'/%3E%3C/svg%3E");
}

.lmhh-home-copy{
  position:relative;
  z-index:4;
  width:min(780px,100%);
}

.lmhh-home-copy .lmhh-kicker{
  color:var(--lmhh-gold-light);
}

.lmhh-home-copy h1{
  margin:0;
  color:#fff;
  font-size:clamp(59px,7.2vw,112px);
  line-height:.85;
  font-weight:900;
  letter-spacing:-.075em;
}

.lmhh-home-copy h1 em{
  display:inline-block;
  margin-top:15px;
  color:var(--lmhh-gold-light);
  font-size:.83em;
}

.lmhh-home-lead{
  width:min(720px,100%);
  margin:36px 0 0;
  color:rgba(255,255,255,.67);
  font-size:clamp(16px,1.45vw,20px);
  line-height:1.82;
}

.lmhh-home-actions{
  margin-top:38px;
  display:flex;
  flex-wrap:wrap;
  gap:13px;
}

.lmhh-home-trust{
  margin-top:42px;
  display:flex;
  flex-wrap:wrap;
  gap:11px 25px;
  color:rgba(255,255,255,.44);
  font-size:9px;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.lmhh-home-trust span{
  display:inline-flex;
  align-items:center;
  gap:9px;
}

.lmhh-home-trust span::before{
  content:"";
  width:5px;
  height:5px;
  border-radius:50%;
  background:var(--lmhh-gold);
}

.lmhh-home-stage{
  position:relative;
  z-index:3;
  min-height:630px;
  display:flex;
  align-items:center;
  justify-content:center;
}

.lmhh-home-ring{
  position:absolute;
  width:min(555px,92%);
  aspect-ratio:1;
  border-radius:50%;
  border:1px solid rgba(216,180,90,.23);
  box-shadow:
    0 0 0 38px rgba(216,180,90,.026),
    0 0 0 82px rgba(216,180,90,.014),
    inset 0 0 100px rgba(216,180,90,.05);
  animation:lmhhRing 7s ease-in-out infinite alternate;
}

.lmhh-home-stage-word{
  position:absolute;
  top:4%;
  left:50%;
  transform:translateX(-50%);
  color:rgba(255,255,255,.055);
  font-family:"Iowan Old Style","Palatino Linotype",Palatino,Baskerville,Georgia,serif;
  font-size:clamp(67px,7vw,112px);
  font-weight:700;
  letter-spacing:-.07em;
  white-space:nowrap;
}

.lmhh-home-machine{
  position:relative;
  z-index:4;
  width:70%;
  height:560px;
  display:flex;
  align-items:center;
  justify-content:center;
}

.lmhh-home-machine-image{
  width:100%;
  height:100%!important;
  object-fit:contain;
  filter:drop-shadow(0 42px 44px rgba(0,0,0,.5));
  animation:lmhhFloat 6.5s ease-in-out infinite;
}

.lmhh-home-machine-caption{
  position:absolute;
  z-index:6;
  left:3%;
  bottom:62px;
  max-width:260px;
  padding:17px 19px;
  display:grid;
  gap:5px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:17px;
  background:rgba(10,10,11,.7);
  box-shadow:0 20px 48px rgba(0,0,0,.3);
  backdrop-filter:blur(15px);
}

.lmhh-home-machine-caption small{
  color:var(--lmhh-gold-light);
  font-size:8px;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.lmhh-home-machine-caption strong{
  color:#fff;
  font-size:14px;
  line-height:1.25;
}

.lmhh-home-machine-caption>span{
  color:#fff;
  font-size:17px;
  font-weight:900;
}

.lmhh-home-machine-caption del{
  margin-right:5px;
  color:rgba(255,255,255,.4);
  font-size:11px;
  font-weight:500;
}

.lmhh-home-machine-caption ins{
  text-decoration:none;
}

.lmhh-floating-products{
  position:absolute;
  inset:0;
  z-index:5;
  pointer-events:none;
}

.lmhh-floating-product{
  position:absolute;
  width:210px;
  min-height:85px;
  padding:10px 12px;
  display:grid;
  grid-template-columns:58px 1fr;
  align-items:center;
  gap:11px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:18px;
  color:#fff!important;
  background:rgba(255,255,255,.06);
  box-shadow:0 20px 48px rgba(0,0,0,.3);
  backdrop-filter:blur(16px);
  text-decoration:none!important;
  pointer-events:auto;
  transition:transform .26s ease,background .26s ease;
}

.lmhh-floating-product:hover{
  transform:translateY(-4px);
  background:rgba(255,255,255,.1);
}

.lmhh-floating-image{
  width:58px;
  height:66px!important;
  object-fit:contain;
  filter:drop-shadow(0 12px 12px rgba(0,0,0,.26));
}

.lmhh-floating-product span{
  min-width:0;
  display:grid;
  gap:4px;
}

.lmhh-floating-product small{
  color:var(--lmhh-gold-light);
  font-size:7px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.lmhh-floating-product strong{
  overflow:hidden;
  color:#fff;
  font-size:10px;
  line-height:1.25;
  text-overflow:ellipsis;
}

.lmhh-floating-1{
  top:18%;
  left:-2%;
}

.lmhh-floating-2{
  top:36%;
  right:-1%;
}

.lmhh-floating-3{
  right:6%;
  bottom:10%;
}

.lmhh-home-cup{
  position:relative;
  z-index:3;
  width:270px;
  height:185px;
  margin-top:100px;
  border:11px solid #f3f1eb;
  border-top:0;
  border-radius:0 0 110px 110px;
  background:
    radial-gradient(ellipse at 50% 3%,#371a10 0 30%,#986341 31%,#e9ded1 34%,transparent 35%),
    linear-gradient(135deg,#fff,#c9c5bf);
  box-shadow:0 42px 55px rgba(0,0,0,.42);
}

.lmhh-home-cup::after{
  content:"";
  position:absolute;
  width:91px;
  height:74px;
  right:-78px;
  top:25px;
  border:11px solid #eae7e0;
  border-left:0;
  border-radius:0 52px 52px 0;
}

/* DIRECTIONS / BENTO */
.lmhh-directions{
  padding:118px max(4.6vw,20px) 125px;
  background:
    radial-gradient(circle at 8% 5%,rgba(148,21,26,.055),transparent 27%),
    linear-gradient(180deg,#fff,#f3eee6);
}

.lmhh-directions-head{
  width:min(var(--lmhh-content-width),100%);
  margin:0 auto 60px;
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);
  align-items:end;
  gap:75px;
}

.lmhh-directions-head h2{
  margin:0;
  color:var(--lmhh-ink);
  font-size:clamp(45px,5.8vw,82px);
  line-height:.93;
  font-weight:900;
  letter-spacing:-.065em;
}

.lmhh-directions-head h2 em{
  color:var(--lmhh-red);
}

.lmhh-directions-head>p{
  margin:0 0 4px;
  color:var(--lmhh-muted);
  font-size:16px;
  line-height:1.8;
}

.lmhh-bento{
  width:min(var(--lmhh-content-width),100%);
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  grid-auto-flow:dense;
  gap:17px;
}

.lmhh-bento-card{
  position:relative;
  min-width:0;
  min-height:300px;
  padding:31px;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid rgba(0,0,0,.075);
  border-radius:28px;
  color:var(--lmhh-ink)!important;
  background:#fff;
  box-shadow:0 22px 70px rgba(0,0,0,.06);
  text-decoration:none!important;
  transition:transform .34s cubic-bezier(.2,.75,.2,1),box-shadow .34s ease,border-color .34s ease;
}

.lmhh-bento-card:hover{
  transform:translateY(-8px);
  border-color:rgba(216,180,90,.3);
  box-shadow:0 38px 95px rgba(0,0,0,.12);
}

.lmhh-card-wide{
  grid-column:span 7;
}

.lmhh-card-small{
  grid-column:span 5;
}

.lmhh-card-tall{
  grid-column:span 4;
  min-height:470px;
}

.lmhh-card-large{
  grid-column:span 8;
  min-height:470px;
}

.lmhh-card-top{
  position:relative;
  z-index:3;
  display:flex;
  align-items:center;
  justify-content:space-between;
}

.lmhh-card-top>span{
  font-size:9px;
  font-weight:900;
  letter-spacing:.15em;
}

.lmhh-card-top i{
  width:42px;
  height:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid currentColor;
  border-radius:50%;
  font-size:17px;
  font-style:normal;
  opacity:.55;
  transition:transform .25s ease,opacity .25s ease;
}

.lmhh-bento-card:hover .lmhh-card-top i{
  transform:rotate(45deg);
  opacity:1;
}

.lmhh-card-copy{
  position:relative;
  z-index:3;
  max-width:670px;
  margin-top:auto;
}

.lmhh-card-copy small{
  color:var(--lmhh-red);
  font-size:8px;
  font-weight:900;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.lmhh-card-copy h3{
  margin:14px 0 0;
  color:inherit;
  font-size:clamp(25px,2.5vw,40px);
  line-height:1.02;
  letter-spacing:-.047em;
}

.lmhh-card-copy p{
  max-width:620px;
  margin:15px 0 0;
  color:var(--lmhh-muted);
  font-size:13px;
  line-height:1.7;
}

.lmhh-card-word{
  position:absolute;
  z-index:1;
  right:-12px;
  top:16px;
  color:rgba(0,0,0,.045);
  font-size:clamp(47px,6vw,95px);
  line-height:1;
  font-weight:950;
  letter-spacing:-.075em;
  white-space:nowrap;
  transition:transform .5s ease;
}

.lmhh-bento-card:hover .lmhh-card-word{
  transform:translateX(-9px);
}

/* Individual surfaces */
.lmhh-card-dark,
.lmhh-card-charcoal,
.lmhh-card-red{
  color:#fff!important;
}

.lmhh-card-dark{
  background:
    radial-gradient(circle at 85% 5%,rgba(216,180,90,.15),transparent 31%),
    linear-gradient(145deg,#171719,#070708);
}

.lmhh-card-charcoal{
  background:
    radial-gradient(circle at 10% 10%,rgba(148,21,26,.23),transparent 30%),
    linear-gradient(145deg,#242426,#101012);
}

.lmhh-card-red{
  background:
    radial-gradient(circle at 88% 5%,rgba(244,221,160,.23),transparent 31%),
    linear-gradient(145deg,#a1161c,#510508);
}

.lmhh-card-dark .lmhh-card-copy small,
.lmhh-card-charcoal .lmhh-card-copy small,
.lmhh-card-red .lmhh-card-copy small{
  color:var(--lmhh-gold-light);
}

.lmhh-card-dark .lmhh-card-copy p,
.lmhh-card-charcoal .lmhh-card-copy p,
.lmhh-card-red .lmhh-card-copy p{
  color:rgba(255,255,255,.62);
}

.lmhh-card-dark .lmhh-card-word,
.lmhh-card-charcoal .lmhh-card-word,
.lmhh-card-red .lmhh-card-word{
  color:rgba(255,255,255,.055);
}

.lmhh-card-cream{
  background:linear-gradient(145deg,#fbf8f2,#eee6d9);
}

.lmhh-card-sand{
  background:
    radial-gradient(circle at 85% 5%,rgba(148,21,26,.08),transparent 31%),
    linear-gradient(145deg,#e9deca,#f7f2e8);
}

.lmhh-card-white{
  background:#fff;
}

.lmhh-card-gold{
  background:
    radial-gradient(circle at 88% 5%,rgba(255,255,255,.38),transparent 30%),
    linear-gradient(145deg,#f0d689,#c99c32);
}

.lmhh-card-gold .lmhh-card-copy small{
  color:#6e0d11;
}

.lmhh-card-gold .lmhh-card-copy p{
  color:rgba(24,24,26,.67);
}

.lmhh-card-editorial{
  color:#fff!important;
  background:
    linear-gradient(90deg,rgba(13,13,15,.95),rgba(13,13,15,.6)),
    radial-gradient(circle at 80% 30%,rgba(148,21,26,.42),transparent 33%),
    #111;
}

.lmhh-card-editorial .lmhh-card-copy small{
  color:var(--lmhh-gold-light);
}

.lmhh-card-editorial .lmhh-card-copy p{
  color:rgba(255,255,255,.62);
}

.lmhh-card-editorial .lmhh-card-word{
  color:rgba(255,255,255,.055);
}

.lmhh-card-image{
  color:#fff!important;
  background:
    radial-gradient(circle at 75% 25%,rgba(216,180,90,.18),transparent 31%),
    linear-gradient(145deg,#421112,#0d0d0f);
}

.lmhh-card-image::before{
  content:"";
  position:absolute;
  right:8%;
  bottom:-25%;
  width:280px;
  height:390px;
  border:8px solid rgba(255,255,255,.75);
  border-top:0;
  border-radius:0 0 120px 120px;
  transform:rotate(-7deg);
  opacity:.12;
}

.lmhh-card-image .lmhh-card-copy small{
  color:var(--lmhh-gold-light);
}

.lmhh-card-image .lmhh-card-copy p{
  color:rgba(255,255,255,.62);
}

.lmhh-card-image .lmhh-card-word{
  color:rgba(255,255,255,.055);
}

/* Reveal */
.lmhh-reveal{
  opacity:0;
  transform:translateY(24px);
  transition:opacity .75s ease,transform .75s cubic-bezier(.2,.75,.2,1);
}

.lmhh-reveal.is-visible{
  opacity:1;
  transform:none;
}

@keyframes lmhhMarquee{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-50%,0,0)}
}

@keyframes lmhhRing{
  from{transform:scale(.97);opacity:.68}
  to{transform:scale(1.04);opacity:1}
}

@keyframes lmhhFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-13px)}
}

/* TABLET */
@media(max-width:1160px){
  .lmhh-header-inner{
    gap:24px;
  }

  .lmhh-nav-list{
    gap:18px;
  }

  .lmhh-nav-list>li>a{
    font-size:11px;
  }

  .lmhh-logo{
    width:132px;
    min-width:132px;
  }

  .lmhh-home-hero{
    grid-template-columns:1fr 430px;
    gap:32px;
  }

  .lmhh-floating-product{
    width:180px;
  }

  .lmhh-floating-1{
    left:-5%;
  }

  .lmhh-floating-2{
    right:-5%;
  }

  .lmhh-card-wide,
  .lmhh-card-large{
    grid-column:span 7;
  }

  .lmhh-card-small,
  .lmhh-card-tall{
    grid-column:span 5;
  }
}

/* MOBILE HEADER + HOME */
@media(max-width:940px){
  :root{
    --lmhh-header-height:74px;
  }

  body.admin-bar .lmhh-header{
    top:46px;
  }

  .lmhh-header-inner{
    width:calc(100% - 28px);
    grid-template-columns:auto 1fr auto;
    gap:14px;
  }

  .lmhh-logo{
    width:128px;
    min-width:128px;
  }

  .lmhh-desktop-nav{
    display:none;
  }

  .lmhh-actions{
    grid-column:3;
  }

  .lmhh-language,
  .lmhh-cart-link{
    display:none;
  }

  .lmhh-menu-toggle{
    display:flex;
  }

  .lmhh-home-hero{
    min-height:auto;
    padding:78px 20px 69px;
    grid-template-columns:1fr;
    gap:34px;
    text-align:center;
  }

  .lmhh-home-copy{
    margin:0 auto;
  }

  .lmhh-home-copy h1{
    font-size:clamp(51px,13vw,78px);
  }

  .lmhh-home-lead{
    margin-left:auto;
    margin-right:auto;
    font-size:15px;
  }

  .lmhh-home-actions,
  .lmhh-home-trust{
    justify-content:center;
  }

  .lmhh-home-stage{
    min-height:490px;
  }

  .lmhh-home-machine{
    width:63%;
    height:430px;
  }

  .lmhh-home-ring{
    width:390px;
  }

  .lmhh-floating-products{
    display:none;
  }

  .lmhh-home-machine-caption{
    left:50%;
    bottom:21px;
    transform:translateX(-50%);
    width:min(300px,80%);
    text-align:left;
  }

  .lmhh-directions{
    padding:82px 16px 95px;
  }

  .lmhh-directions-head{
    grid-template-columns:1fr;
    gap:22px;
  }

  .lmhh-directions-head>p{
    font-size:14px;
  }

  .lmhh-bento{
    grid-template-columns:1fr 1fr;
  }

  .lmhh-card-wide,
  .lmhh-card-small,
  .lmhh-card-tall,
  .lmhh-card-large{
    grid-column:span 1;
    min-height:330px;
  }

  .lmhh-card-tall,
  .lmhh-card-large{
    min-height:410px;
  }
}

@media(max-width:620px){
  .lmhh-search-dialog{
    padding:42px 20px 28px;
    border-radius:23px;
  }

  .lmhh-search-dialog form{
    grid-template-columns:1fr;
  }

  .lmhh-search-dialog form button{
    width:100%;
  }

  .lmhh-home-marquee-track{
    animation-duration:38s;
  }

  .lmhh-home-marquee-group span{
    padding:0 16px;
    font-size:9px;
  }

  .lmhh-home-marquee-group em{
    font-size:18px;
  }

  .lmhh-btn{
    width:100%;
  }

  .lmhh-home-stage{
    min-height:390px;
  }

  .lmhh-home-ring{
    width:300px;
  }

  .lmhh-home-machine{
    width:67%;
    height:335px;
  }

  .lmhh-home-stage-word{
    font-size:55px;
  }

  .lmhh-home-machine-caption{
    bottom:5px;
  }

  .lmhh-bento{
    grid-template-columns:1fr;
  }

  .lmhh-card-wide,
  .lmhh-card-small,
  .lmhh-card-tall,
  .lmhh-card-large{
    grid-column:1;
    min-height:300px;
  }

  .lmhh-bento-card{
    padding:27px 23px;
    border-radius:24px;
  }

  .lmhh-card-copy h3{
    font-size:28px;
  }

  .lmhh-card-word{
    font-size:54px;
  }
}

@media(max-width:380px){
  .lmhh-logo{
    width:112px;
    min-width:112px;
  }

  .lmhh-home-machine{
    height:300px;
  }
}

@media(prefers-reduced-motion:reduce){
  html{
    scroll-behavior:auto;
  }

  .lmhh-header *,
  .lmhh-home-launch *,
  .lmhh-home-launch *::before,
  .lmhh-home-launch *::after{
    animation:none!important;
    transition-duration:.01ms!important;
  }

  .lmhh-home-marquee-group[aria-hidden="true"]{
    display:none;
  }

  .lmhh-reveal{
    opacity:1;
    transform:none;
  }
}

@supports(width:100dvw){
  :root{
    --lmhh-screen-width:100dvw;
  }
}


/* v1.0.1 — aggressive removal of the legacy WoodMart header */
body.lmhh-enabled > .whb-header,
body.lmhh-enabled .website-wrapper > .whb-header,
body.lmhh-enabled .website-wrapper > .whb-clone,
body.lmhh-enabled .website-wrapper > header:not(.lmhh-header),
body.lmhh-enabled #header:not(.lmhh-header),
body.lmhh-enabled .header-wrapper:not(.lmhh-header),
body.lmhh-enabled .header-container:not(.lmhh-header),
body.lmhh-enabled .wd-header:not(.lmhh-header),
body.lmhh-enabled .whb-main-header,
body.lmhh-enabled .whb-clone,
body.lmhh-enabled .whb-sticky-header,
body.lmhh-enabled .whb-sticky-prepared:not(.lmhh-header),
body.lmhh-enabled .whb-header-placeholder,
body.lmhh-enabled .header-spacing,
body.lmhh-enabled .header-spacer{
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
}

/* No empty space may remain after the removed theme header */
body.lmhh-enabled .main-page-wrapper,
body.lmhh-enabled .website-wrapper,
body.lmhh-enabled .page-wrapper{
  margin-top:0!important;
  padding-top:0!important;
}


/* v1.0.2 — one identical header across every public page */

/*
 * Hide every known WoodMart/header-builder instance:
 * desktop, mobile, clone, sticky clone, placeholders and page-specific variants.
 */
body.lmhh-global-header :is(
  .whb-header,
  .whb-main-header,
  .whb-clone,
  .whb-sticky-header,
  .whb-header-bottom,
  .whb-general-header,
  .whb-top-bar,
  .whb-sticky-shadow,
  .whb-header-placeholder,
  .wd-header,
  .wd-header-nav,
  .wd-header-mobile-nav,
  .mobile-nav,
  .mobile-nav-tabs,
  .mobile-menu-widget,
  .header-banner,
  .top-bar,
  .header-spacing,
  .header-spacer
){
  display:none!important;
  visibility:hidden!important;
  width:0!important;
  height:0!important;
  min-width:0!important;
  min-height:0!important;
  max-width:0!important;
  max-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
}

/* Hide legacy theme header elements only when they are structural/top-level headers. */
body.lmhh-global-header > header:not(.lmhh-header),
body.lmhh-global-header .website-wrapper > header:not(.lmhh-header),
body.lmhh-global-header .page-wrapper > header:not(.lmhh-header),
body.lmhh-global-header .main-page-wrapper > header:not(.lmhh-header),
body.lmhh-global-header .site-wrapper > header:not(.lmhh-header){
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
}

/* The modern header is always visible and identical on all public templates. */
body.lmhh-global-header .lmhh-header{
  display:flex!important;
  visibility:visible!important;
  width:100%!important;
  max-width:none!important;
  min-height:70px!important;
  margin:0!important;
  padding:0!important;
  pointer-events:auto!important;
}

/* Remove template-specific offsets reserved for the former header. */
body.lmhh-global-header :is(
  .website-wrapper,
  .page-wrapper,
  .main-page-wrapper,
  .site-content,
  .content-area,
  .wd-page-wrapper,
  .wd-content-layout
){
  margin-top:0!important;
  padding-top:0!important;
}

/* WooCommerce and archive templates sometimes insert an extra header spacer. */
body.lmhh-global-header :is(
  .woocommerce-page,
  .tax-product_cat,
  .single-product,
  .woocommerce-cart,
  .woocommerce-checkout,
  .woocommerce-account,
  .blog,
  .archive,
  .page
) .main-page-wrapper{
  margin-top:0!important;
}

/* Keep admin toolbar compatibility consistently on desktop and mobile. */
body.admin-bar.lmhh-global-header .lmhh-header{
  top:32px!important;
}

@media(max-width:782px){
  body.admin-bar.lmhh-global-header .lmhh-header{
    top:46px!important;
  }
}
