:root{--ink:#142327;--lime:#d5f649;--muted:#607077;--line:#dce1e2;--forest:#0b241d}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;font:16px/1.55 Arial,Helvetica,sans-serif;color:var(--ink);background:white}a{color:inherit;text-underline-offset:6px}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.12}h1{font-size:clamp(3rem,5.3vw,5.3rem);letter-spacing:-.035em;font-weight:750}h1 span{color:var(--lime)}h2{font-size:clamp(2.4rem,4vw,3.7rem);letter-spacing:-.035em}h3{font-size:1.4rem}p{color:var(--muted)}.wrap{width:min(1250px,calc(100% - 80px));margin:auto}.brand-background{background:radial-gradient(ellipse at 25% 25%,#425e2299,transparent 55%),radial-gradient(ellipse at 75% 90%,#0e4d40aa,transparent 55%),linear-gradient(125deg,#092019,#142c23 55%,#061e18);color:white}.header-inner{width:min(1250px,calc(100% - 80px));margin:auto;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:25px 0}.logo{width:260px;height:auto;display:block;filter:drop-shadow(0 5px 22px #c5f75222)}.button{display:inline-flex;align-items:center;justify-content:center;padding:16px 24px;border:1px solid var(--line);text-decoration:none;color:var(--ink);font-weight:700;background:white;min-height:48px}.header-button{background:transparent;color:var(--lime);border-color:#9fb15b80}.primary{background:var(--lime);border-color:var(--lime);margin-top:36px}.hero{background:var(--ink);color:white;padding:70px 0 76px}.hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:55px;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:.17em;font-size:.875rem;font-weight:700;color:#647536;margin-bottom:24px}.hero .eyebrow,.planning .eyebrow{color:var(--lime)}.intro{font-size:1.2rem;color:#c1cccf;max-width:520px;margin-top:30px}.hero-links{display:flex;gap:25px;flex-wrap:wrap;margin-top:38px;color:#b9c6c9}.hero-links a{text-decoration:none}.hero-links a:hover{text-decoration:underline}.featured{display:block;background:#f0f2f2;color:var(--ink);padding:30px;text-decoration:none}.feature-top{display:flex;justify-content:space-between;gap:12px;color:#536068;text-transform:uppercase;letter-spacing:.08em;font-size:.85rem}.featured img{display:block;width:100%;height:245px;object-fit:contain;margin:30px 0}.feature-bottom{display:flex;justify-content:space-between;gap:16px;align-items:center;border-top:1px solid #cbd3d4;padding-top:24px}.feature-bottom h2{font-size:1.7rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}.feature-bottom p{font-size:1rem}.underline{border-bottom:1px solid #607077;white-space:nowrap}.brand-strip{background:#f2f4f4;padding:36px 0}.strip-grid{display:grid;grid-template-columns:repeat(3,1fr)}.strip-grid>div{padding:0 32px;border-left:1px solid #d6dddf}.strip-grid>div:first-child{padding-left:0;border:0}.strip-grid p{margin-top:10px}.strip-grid a{display:inline-block;margin-top:10px}.catalog{padding-top:80px;padding-bottom:70px}.section-intro{font-size:1.2rem;margin-top:22px;max-width:680px}.categories{display:flex;gap:8px;flex-wrap:wrap;margin-top:36px}.categories button{color:var(--ink);background:white;border:1px solid var(--line);padding:12px 17px;min-height:48px}.categories button[aria-pressed=true]{color:white;background:var(--ink);border-color:var(--ink)}.search-row{display:flex;gap:24px;margin:24px 0 28px}.brand-label{display:flex;align-items:center;gap:16px;min-width:310px;font-weight:700}.brand-label select{border:1px solid var(--line);background:white;border-radius:28px;min-height:50px;padding:10px 18px;flex:1;color:var(--ink)}.search-label{flex:1}.search-label input{width:100%;border:1px solid var(--line);padding:12px 18px;min-height:50px;background:#f3f4f4;border-radius:0;color:var(--ink)}.catalog-meta{display:flex;justify-content:space-between;color:var(--muted);gap:20px;margin-bottom:20px}.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.product{border:1px solid var(--line);display:flex;flex-direction:column;min-width:0}.product>img{width:100%;aspect-ratio:1.2;object-fit:contain;display:block;background:#f1f3f3}.product-content{padding:22px;display:flex;flex-direction:column;flex:1}.product .eyebrow{font-size:.8rem;letter-spacing:.07em;margin-bottom:12px}.product h3{font-size:1.4rem;overflow-wrap:anywhere}.product .spec{margin:14px 0 24px}.product-price{border-top:1px solid #e0e5e6;padding-top:16px;margin-top:auto}.product-price p{font-size:.875rem}.product-price strong{display:block;font-size:1.8rem;line-height:1.2;margin:8px 0 16px}.product-price strong.pending{font-size:1rem;min-height:35px;display:flex;align-items:center}.product .button{font-weight:400;display:flex;width:100%;padding:10px}.price-note{margin-top:36px;font-size:.95rem}.planning{padding:80px 0;background:var(--ink);color:white}.plan-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:80px}.planning p{color:#bbc7ca}.planning ol{list-style:none;padding:0;margin:0}.planning li{display:flex;gap:24px;border-bottom:1px solid #34454a;padding:26px 0}.planning li:first-child{padding-top:0}.planning li:last-child{border-bottom:0}.planning li>span{color:var(--lime);font-size:1.1rem}.planning li p{margin-top:16px}.planning .eyebrow{color:var(--lime)}footer{padding:45px 0 26px}footer .logo{width:280px}.footer-line{display:flex;justify-content:space-between;gap:20px;margin-top:24px}.footer-line p{color:#c1d1c6}.footer-line a{color:var(--lime)}dialog{border:0;padding:34px;width:min(680px,calc(100% - 30px));max-height:90vh;color:var(--ink);overflow:auto}dialog::backdrop{background:#081817bb}.close{position:absolute;right:12px;top:8px;background:white;border:0;font-size:2rem;width:44px;height:44px}#detail-body img{width:100%;max-height:300px;object-fit:contain;background:#f1f3f3;margin-bottom:24px}#detail-body h2{font-size:2rem}#detail-body p{margin-top:16px}#detail-body dl{display:grid;grid-template-columns:100px 1fr;gap:12px;margin-top:24px}#detail-body dd{margin:0}#detail-body dt{color:var(--muted)}#empty{padding:35px;background:#f2f4f4}#empty p{margin:14px 0} .sr-only,.skip{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.skip:focus{position:fixed;clip:auto;width:auto;height:auto;top:5px;left:5px;padding:12px;background:white;z-index:9}:focus-visible{outline:3px solid #528716;outline-offset:4px}.button:hover,.categories button:hover{border-color:#597527}.primary:hover{background:#e1ff6b}@media(max-width:1100px){.products{grid-template-columns:repeat(3,minmax(0,1fr))}.hero-grid{gap:30px}.feature-bottom{align-items:start;flex-direction:column}.plan-grid{gap:45px}}@media(max-width:760px){.wrap,.header-inner{width:calc(100% - 40px)}.header-inner{flex-direction:column;gap:20px;padding:28px 0}.logo{width:260px}.hero{padding:40px 0 45px}.hero-grid,.plan-grid{grid-template-columns:1fr;gap:35px}h1{font-size:clamp(2.75rem,9vw,4.4rem)}.intro{font-size:1.05rem}.hero-links{gap:18px;font-size:.95rem}.featured{padding:22px}.featured img{height:200px}.feature-bottom{flex-direction:row;align-items:center}.feature-top{font-size:.75rem}.brand-strip{padding:26px 0}.strip-grid>div{padding:0 14px}.strip-grid h3{font-size:1rem;line-height:1.4}.strip-grid p,.strip-grid a{font-size:.9rem}.catalog{padding:50px 0}.categories button{padding:10px 12px;font-size:.9rem}.search-row{flex-direction:column;gap:16px}.brand-label{min-width:0}.catalog-meta{font-size:.9rem}.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.product-content{padding:17px}.product h3{font-size:1.18rem}.product .eyebrow{font-size:.75rem}.product .spec{font-size:.95rem}.product-price strong{font-size:1.6rem}.product>img{aspect-ratio:1.1}.planning{padding:50px 0}.planning li{gap:20px}.footer-line{font-size:.95rem}.section-intro{font-size:1.05rem}}@media(max-width:380px){.wrap,.header-inner{width:calc(100% - 28px)}.products{gap:10px}.product-content{padding:12px}.feature-bottom{flex-direction:column;align-items:start}.strip-grid{grid-template-columns:1fr;gap:22px}.strip-grid>div{border:0;padding:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.footer-top{display:flex;align-items:center;justify-content:space-between;gap:32px}.contact h2{font-size:1.25rem;letter-spacing:0;margin-bottom:12px}.contact>a{color:var(--lime);overflow-wrap:anywhere}.contact address{font-style:normal;color:#c1d1c6;margin-top:14px;line-height:1.6}.footer-line{border-top:1px solid #53705b70;padding-top:22px}@media(max-width:760px){.footer-top{align-items:flex-start;flex-direction:column;gap:28px}}

/* Keep intrinsic image dimensions and mobile text sizing from stretching cards. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
img{max-width:100%}
.product>img{height:auto}
.hero-grid>*,.plan-grid>*,.footer-top>*,.strip-grid>div{min-width:0}
#detail-body h2,#detail-body dd{overflow-wrap:anywhere}
@media(max-width:760px){
  h1{font-size:clamp(2.25rem,8.5vw,3.5rem)}
  h2{font-size:clamp(2rem,7.5vw,2.75rem)}
  .feature-bottom{flex-wrap:wrap}
  .product .eyebrow{overflow-wrap:anywhere}
  .product-price strong{font-size:clamp(1.15rem,4.8vw,1.6rem);overflow-wrap:anywhere}
  .footer-line{flex-wrap:wrap}
  dialog{padding:48px 20px 24px;max-height:90dvh}
  #detail-body img{height:auto;max-height:220px}
  #detail-body h2{font-size:1.5rem}
  #detail-body dl{grid-template-columns:minmax(0,90px) minmax(0,1fr)}
}

.brand-name{display:block;font-size:clamp(1.6rem,4vw,2.25rem);font-weight:800;letter-spacing:-.04em;color:var(--lime);line-height:1.2}.header-inner>a:first-child,.footer-top>a{text-decoration:none}

.header-inner>a:first-child,.footer-top>a{display:flex;flex-direction:column;align-items:flex-start;gap:10px;max-width:100%}.logo{max-width:100%}.brand-name{font-size:1.5rem}

.brand-groups{display:flex;flex-direction:column;gap:56px}.brand-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;border-top:3px solid var(--forest);padding:24px 0;margin-bottom:4px}.brand-heading .eyebrow{margin-bottom:10px}.brand-heading h2{font-size:clamp(1.8rem,3vw,2.6rem)}.brand-heading>p{white-space:nowrap}.brand-group{min-width:0;scroll-margin-top:24px}@media(max-width:760px){.brand-groups{gap:40px}.brand-heading{align-items:flex-start;flex-direction:column;gap:12px}}

/* Approved centered, two-line logo. */
.header-inner .logo,.footer-top .logo{width:380px;max-width:100%;height:auto}

/* Customer grow-room photographs behind the opening section. */
.hero{position:relative;isolation:isolate;overflow:hidden;background:#142327}
.hero-photos{position:absolute;inset:0;z-index:-2;display:grid;grid-template-columns:1fr 1fr;pointer-events:none}
.hero-photo{background-size:cover;background-position:center 45%;background-repeat:no-repeat}
.hero-photo-one{background-image:url('assets/grow-room-3589.jpg')}
.hero-photo-two{background-image:url('assets/grow-room-3590.jpg')}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(7,22,18,.88),rgba(7,22,18,.70) 52%,rgba(7,22,18,.42));pointer-events:none}
.hero .intro{color:#e1e9e5}.hero .hero-links{color:#edf3ef}
@media(max-width:760px){.hero-photos{grid-template-columns:1fr;grid-template-rows:1fr 1fr}.hero::before{background:linear-gradient(180deg,rgba(7,22,18,.84),rgba(7,22,18,.66))}}

.featured-grow-room img{height:auto;aspect-ratio:3/2;object-fit:cover;margin:24px 0}.featured-grow-room .feature-bottom h2{font-size:clamp(1.2rem,2vw,1.65rem);letter-spacing:.025em}

.quote-phone{color:white;font-weight:700;margin-bottom:12px}.quote-phone a{color:var(--lime);white-space:nowrap}

.contact .customer-email{display:block;margin-top:10px;overflow-wrap:anywhere}

/* Larry Larf narrated feature. */
.larry-story{padding:72px 0;background:#edf2e8;border-bottom:1px solid var(--line)}.larry-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.larry-copy,.larry-player{min-width:0}.larry-copy h2{max-width:520px}.larry-copy .section-intro{max-width:510px}.larry-player{max-width:540px;width:100%;justify-self:end}.larry-player video{display:block;width:100%;height:auto;aspect-ratio:1;background:#091714;border-radius:12px;box-shadow:0 16px 42px #0b241d22}.larry-runtime{font-size:.875rem;margin-top:12px;text-align:center}.larry-transcript{margin-top:24px;max-width:510px}.larry-transcript summary{cursor:pointer;text-decoration:underline;text-underline-offset:4px}.larry-transcript p{margin-top:12px;font-size:.95rem}@media(max-width:760px){.larry-story{padding:46px 0}.larry-grid{grid-template-columns:1fr;gap:32px}.larry-player{justify-self:center}.larry-copy .primary{width:100%;padding:14px 12px;font-size:.95rem}}
