/* Shared branding and homepage hero. Product grids keep their existing layout. */
.container,.header-inner{max-width:1424px;padding-left:40px;padding-right:40px}
.site-header{height:82px}
.header-inner{gap:26px}
.brand{flex:none;line-height:1;letter-spacing:0}
.brand-image{display:block;width:186px;height:auto;max-width:100%}
.site-footer .brand-image{width:174px}
.main-nav{gap:24px}
.header-search{margin-left:0;max-width:238px;width:20%;min-width:160px}
.header-search input{font-size:14px}
.header-search button{min-height:42px}
.homepage-hero{background:#edf4ed;border-bottom:1px solid #dee8de;overflow:clip}
.home-hero-inner{display:grid;grid-template-columns:1.12fr 1fr;gap:24px;align-items:center;padding-top:42px;padding-bottom:38px}
.home-hero-copy{position:relative;z-index:1;min-width:0}
.home-hero-copy>.eyebrow{font-size:11px;letter-spacing:1.5px;line-height:1.6;margin-bottom:18px}
.home-hero-copy h1{font-size:clamp(40px,4.1vw,61px);line-height:1.07;letter-spacing:-2px;margin-bottom:20px;font-weight:780}
.home-hero-copy h1 em{font-style:normal;text-decoration:underline;text-decoration-color:#baf24a;text-decoration-thickness:7px;text-underline-offset:5px;text-decoration-skip-ink:none}
.home-hero-description{font-size:18px;line-height:1.65;max-width:550px;margin-bottom:24px;color:#385e4b}
.homepage-hero .scoped-search{margin:0 0 18px;min-height:62px;padding:6px 6px 6px 14px;gap:9px;box-shadow:0 6px 18px #0c4a3510}
.homepage-hero .scoped-search input{font-size:16px;min-width:0}
.homepage-hero .search-submit{padding:10px 20px}
.home-hero-links{display:flex;gap:12px 25px;flex-wrap:wrap;font-size:14px}
.home-hero-links a{display:inline-flex;gap:7px;align-items:center;min-height:36px;text-decoration:underline;text-decoration-color:#9caf9e;text-underline-offset:5px}
.home-hero-links .icon{width:16px;height:16px}
.home-hero-meta{display:flex;flex-wrap:wrap;gap:7px 19px;margin-top:17px;font-size:12px;color:#56705f}
.home-hero-meta>span{display:inline-flex;align-items:center;gap:6px}
.home-hero-meta .icon{width:15px;height:15px}
.home-hero-art{display:block;min-width:0;align-self:center}
.home-hero-art img{display:block;width:100%;height:auto;object-fit:contain;mix-blend-mode:multiply;border-radius:28px}
.homepage-hero+.listing-container{padding-top:28px}
.footer-bottom>span:last-child{flex-wrap:wrap;row-gap:12px}
@media(max-width:1279px){
  .container,.header-inner{padding-left:30px;padding-right:30px}
  .header-inner{gap:18px}.main-nav{gap:17px}.main-nav a{font-size:13px}
  .brand-image{width:166px}.header-search{min-width:165px}
  .home-hero-inner{gap:12px;padding-top:34px;padding-bottom:30px}
  .home-hero-copy h1{font-size:48px}.home-hero-description{font-size:16px}
  .home-hero-copy>.eyebrow{font-size:10px;letter-spacing:1px}
}
@media(max-width:900px){
  .site-header{height:76px}.main-nav{top:75px}.header-search{max-width:260px;width:35%;margin-left:auto}
  .home-hero-inner{grid-template-columns:1.15fr .85fr}
  .home-hero-copy h1{font-size:42px}.home-hero-description{font-size:16px}
  .homepage-hero .search-submit{padding:10px 12px}
  .home-hero-meta{font-size:11px}
}
@media(max-width:700px){
  .home-hero-inner{grid-template-columns:1fr;gap:0;padding-top:29px;padding-bottom:15px}
  .home-hero-copy{max-width:590px}
  .home-hero-art{max-width:360px;width:100%;justify-self:center;margin-top:6px}
  .home-hero-art img{max-height:200px;object-fit:contain}
  .home-hero-copy h1{font-size:46px}
}
@media(max-width:600px){
  .container,.header-inner{padding-left:18px;padding-right:18px}
  .site-header{height:72px}.main-nav{top:71px}
  .header-inner{gap:10px}.brand-image{width:143px}
  .header-search{min-width:0;max-width:150px;flex:1;width:auto}
  .header-search input{font-size:13px;min-height:40px}.header-search button{width:38px;min-height:40px}
  .menu-toggle{width:34px;height:40px;flex:none}
  .home-hero-copy>.eyebrow{font-size:9px;letter-spacing:1px;max-width:300px;margin-bottom:14px}
  .home-hero-copy h1{font-size:42px;letter-spacing:-1.5px;margin-bottom:16px}
  .home-hero-description{font-size:16px;line-height:1.6;margin-bottom:20px}
  .homepage-hero .scoped-search{min-height:56px;padding:5px;gap:3px;margin-bottom:12px}
  .homepage-hero .scoped-search>.icon{display:none}
  .homepage-hero .scoped-search input::placeholder{font-size:15px}
  .homepage-hero .search-submit{padding:8px 12px}.homepage-hero .search-submit span{display:inline;font-size:14px}
  .home-hero-links{font-size:13px;gap:5px 18px}.home-hero-meta{margin-top:12px;gap:6px;font-size:11px}
  .home-hero-meta>span{width:100%}.home-hero-art{max-width:310px}.home-hero-art img{max-height:160px}
  .homepage-hero+.listing-container{padding-top:22px}.site-footer .brand-image{width:166px}
}
@media(max-width:390px){
  .header-inner{gap:8px;padding-left:14px;padding-right:14px}.brand-image{width:127px}.header-search{max-width:122px}
  .header-search input[type=search]{padding-left:10px;padding-right:5px}
  .home-hero-copy h1{font-size:38px}.home-hero-links{font-size:12px;gap:4px 13px}
}
/* On phones the global search has its own row, not a squeezed input beside the logo. */
@media(max-width:600px){
  :root{--anchor-offset:144px}
  .catalog-layout,#main,#blog-title{scroll-margin-top:144px}
  .site-header{height:auto;min-height:120px}
  .header-inner{display:flex;flex-wrap:wrap;gap:10px;min-height:120px;padding-top:12px;padding-bottom:12px}
  .header-inner>.brand{order:0}.header-inner>.menu-toggle{order:1;margin-left:auto}
  .header-search{order:3;flex:0 0 100%;width:100%;min-width:0;max-width:none;margin:0}
  .header-search input[type=search]{min-width:0;font-size:16px;min-height:44px;padding-left:16px;padding-right:10px}
  .header-search button{min-width:46px;min-height:44px}
  .header-inner>.main-nav{top:100%;order:2}
  .menu-toggle{min-width:44px;min-height:44px}
}
@media print{.home-hero-art,.home-hero-links{display:none}.home-hero-inner{display:block}.homepage-hero{background:white}.home-hero-copy h1{font-size:32px}}
