/* Homepage: open, illustrated editorial rhythm based on the approved blue theme. */
body:has(.hero) .site-header{background:#edf7ff}
.hero.container{min-height:620px;align-items:stretch;text-align:left;padding:110px max(6vw,24px) 125px;background:#edf7ff;isolation:isolate}
.hero.container:before{display:none}
.hero.container:after{display:block;z-index:1;left:-5%;right:auto;bottom:-76px;width:110%;height:120px;background:#fff;border-radius:50% 50% 0 0;box-shadow:none;pointer-events:none}
.hero-copy{z-index:3;width:min(52%,680px);max-width:680px}
.hero h1{font-size:clamp(43px,4.7vw,70px);line-height:1.24;letter-spacing:-.045em}
.hero h1 span{color:#253c67}
.hero p{max-width:590px;margin:25px 0 0;font-size:18px;color:#46566b}
.hero-actions{justify-content:flex-start;gap:24px}
.hero picture{top:0;right:0;bottom:auto;width:59%;height:100%;z-index:0;transform:none;mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.8) 24%,#000 43%);-webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.8) 24%,#000 43%);animation:none}
.hero-media{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center center;border:0;border-radius:0;box-shadow:none}
.topics{max-width:1280px;padding-block:70px 76px}
.topics h2{font-size:clamp(30px,3.1vw,44px);margin-bottom:34px}
.topic-links{gap:18px}
.topic-link,.topic-link:first-child{min-height:210px;padding:26px;border-radius:24px;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;box-shadow:0 1px 0 rgba(34,64,108,.04)}
.topic-link:first-child{background:#fdf6e8}.topic-link:nth-child(2){background:#eaf4ff}.topic-link:nth-child(3){background:#eef8ed}
.topic-link>span{width:64px;height:64px;display:grid;place-items:center;margin:0;color:#648bc8;background:#fff;border-radius:22px;box-shadow:0 5px 16px #385d8e0b}
.topic-link:first-child>span{color:#ca9b4b}.topic-link:nth-child(3)>span{color:#7aa36c}
.topic-link>span svg{width:32px;height:32px}
.topic-link a{width:100%;gap:14px;font-size:19px;line-height:1.5}
.topic-link a svg{width:40px;height:40px;padding:10px;border-radius:50%;background:#fff;flex-shrink:0;box-shadow:0 2px 7px #31446214}
.section.container{max-width:1280px;padding-block:48px 80px}
.section-heading{margin-bottom:30px}
.section-heading h2{font-size:clamp(30px,3vw,42px)}
.editorial-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch}
.feature-article,.article-row{position:relative;min-width:0;overflow:hidden;border:1px solid #e5ebf3!important;border-radius:18px;background:#fff;box-shadow:0 6px 20px #213a5b08}
.feature-article>a{display:block}
.feature-article img{width:100%;height:172px;aspect-ratio:auto;object-fit:cover;border-radius:0!important;margin:0 0 18px}
.feature-article .category,.feature-article h3,.feature-article p{margin-left:20px;margin-right:20px}
.feature-article h3{font-size:20px;line-height:1.5;margin-bottom:8px}
.feature-article p{font-size:15px;line-height:1.7;margin-bottom:24px}
.article-rows{display:contents}
.article-row,.article-row:first-child,.article-row:last-child{display:block;padding:0 0 52px;border:1px solid #e5ebf3!important}
.article-row:before{content:"";display:block;width:100%;height:172px;background-size:cover;background-position:center;margin-bottom:18px}
.article-row:nth-child(1):before{background-image:url('/_astro/wash-bedding.v8ZOt6Zi_zE66V.webp')}
.article-row:nth-child(2):before{background-image:url('/_astro/air-purifier.DnAVVNsE_ZhcTgd.webp')}
.article-row:nth-child(3):before{background-image:url('/_astro/dust-mite-bedding.CZ5pReH4_1Llr5m.webp')}
.article-row .row-number{display:none}
.article-row div{padding:0 20px}
.article-row h3{font-size:20px;line-height:1.5}
.article-row>svg:last-child{position:absolute;right:18px;bottom:16px;width:34px;height:34px;padding:8px;border:1px solid #e4ebf4;border-radius:50%}
body .service-feature[data-astro-cid-lcdefpme]{background:#f3f8fe;border-radius:28px}
body .skin-feature[data-astro-cid-lcdefpme]{border-color:#e8eef5}
body .evidence-home[data-astro-cid-lcdefpme]{background:#eef6ff}
.checklist-band{background:#fdf7e9}
.checklist-band-inner{max-width:1280px}
.faq.container{max-width:1280px}
.faq-items details{border-color:#e4eaf2}
@media (prefers-reduced-motion:no-preference){
  .hero picture{animation:home-image-arrive 1.2s ease-out both}
  .feature-article,.article-row{transition:transform .25s ease,box-shadow .25s ease}
  .feature-article:hover,.feature-article:focus-within,.article-row:hover,.article-row:focus-visible{transform:translateY(-5px);box-shadow:0 16px 30px #233e6217}
  .topic-link>span{transition:transform .25s ease}
  .topic-link:hover>span,.topic-link:focus-within>span{transform:rotate(-5deg) translateY(-3px)}
  .section-icon svg{animation:home-icon-float 5s ease-in-out infinite}
}
@keyframes home-image-arrive{from{opacity:.5;transform:scale(1.025)}to{opacity:1;transform:scale(1)}}
@keyframes home-icon-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@media(max-width:900px){
  .hero.container{min-height:590px;padding:85px 5% 105px}
  .hero-copy{width:58%}.hero h1{font-size:clamp(39px,5.3vw,56px)}.hero p{font-size:16px}
  .hero picture{width:60%;right:0;height:100%}
  .editorial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:600px){
  .hero.container{min-height:0;padding:54px 24px 285px;align-items:flex-start}
  .hero-copy{width:100%;max-width:none}.hero h1{font-size:clamp(35px,10vw,45px);line-height:1.3}.hero p{font-size:15px;line-height:1.8;margin-top:18px}
  .hero-actions{flex-direction:row;flex-wrap:wrap;justify-content:flex-start;gap:8px 20px;margin-top:20px}.hero-actions .button{font-size:15px}.hero-actions .text-link{font-size:14px}
  .hero picture{width:100%;height:280px;top:auto;bottom:0;right:0;mask-image:linear-gradient(to bottom,transparent 0%,#000 34%);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 34%)}
  .hero-media{object-position:center 57%}.hero.container:after{bottom:-85px;height:120px}
  .topics{padding-block:52px}.topics h2{font-size:29px;margin-bottom:25px}
  .topic-links{grid-template-columns:1fr;gap:12px}.topic-link,.topic-link:first-child{min-height:114px;flex-direction:row;align-items:center;gap:18px;padding:20px}
  .topic-link>span{width:58px;height:58px;flex:none}.topic-link a{font-size:17px}
  .section.container{padding-block:35px 55px}.section-heading{align-items:flex-start;gap:14px}.section-heading h2{font-size:29px}
  .editorial-grid{grid-template-columns:1fr;gap:14px}.feature-article img,.article-row:before{height:195px}
  body .evidence-home[data-astro-cid-lcdefpme]{padding:25px}
}
@media(prefers-reduced-motion:reduce){.hero picture,.section-icon svg{animation:none!important}.feature-article,.article-row,.topic-link>span{transition:none}}
/* The hero artwork is decorative; the original picture remains in the HTML. */
.hero.container{background:#dceeff url('/images/bedroom-hero.png') center center / cover no-repeat}
.hero picture{display:none}
@media(max-width:900px){.hero.container{background-position:56% center}}
@media(max-width:600px){
  .hero.container{background:#eaf5ff}
  .hero.container:before{display:block;position:absolute;z-index:0;left:0;right:0;bottom:0;width:100%;height:290px;border:0;border-radius:0;box-shadow:none;background:url('/images/bedroom-hero.png') 73% center / cover no-repeat;mask-image:linear-gradient(to bottom,transparent,#000 32%);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 32%);pointer-events:none}
}
@media(min-width:901px){.hero.container{padding-left:clamp(100px,12vw,180px)}}
/* Illustrated topic cards use decorative images; link labels remain real text. */
.topic-link>span{display:block;width:100%;height:110px;background-color:transparent;background-repeat:no-repeat;background-position:center;background-size:contain;box-shadow:none;border-radius:0}
.topic-link:first-child>span{background-image:url('/images/topic-mite.png')}
.topic-link:nth-child(2)>span{background-image:url('/images/topic-allergy.png')}
.topic-link:nth-child(3)>span{background-image:url('/images/topic-bedroom.png')}
.topic-link>span svg{display:none}
@media(max-width:600px){.topic-link>span{width:82px;height:76px;flex:none;background-position:center}.topic-link,.topic-link:first-child{min-height:120px}}
.topic-link>span svg.topic-icon{display:none!important}
@media (prefers-reduced-motion:no-preference){
 .topic-link>span{animation:topic-float 5.5s ease-in-out infinite}
 .topic-link:nth-child(2)>span{animation-delay:-1.7s}
 .topic-link:nth-child(3)>span{animation-delay:-3.4s}
}
@keyframes topic-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@supports (animation-timeline:view()){
 @media (prefers-reduced-motion:no-preference){
  .topics h2,.section-heading,.service-feature,.skin-feature,.evidence-intro,.checklist-band,.infographic-home,.faq-intro{animation:home-reveal 1s linear both;animation-timeline:view();animation-range:entry 0% entry 35%}
 }
}
@keyframes home-reveal{from{opacity:.72;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
