/* Refined homepage: restrained color, soft photographic edges, editorial text. */
.home-page main>.chapter{--chapter-ink:#234f50;--chapter-muted:#617b73}
/* SUPPORT — one scene, not an inserted photograph. */
.home-page main>.chapter-support#partnership{background:#edf2ee;color:#274f4b;position:relative;overflow:hidden}
.home-page #partnership.chapter-support .support-intro{display:block;position:static}
.home-page #partnership.chapter-support .support-intro>div:first-child{max-width:680px;position:relative;z-index:1}
.home-page #partnership.chapter-support .support-intro h2{font-size:clamp(36px,4vw,60px);line-height:1.08;max-width:740px;color:#254e4a}
.home-page #partnership.chapter-support .support-intro p{color:#5f7971;max-width:540px}
.home-page #partnership.chapter-support .support-photo{position:absolute;inset:0;z-index:-2;width:100%;height:100%;max-height:none;aspect-ratio:auto;border:0;border-radius:0;opacity:.26;overflow:hidden;pointer-events:none}
.home-page #partnership.chapter-support .support-photo img{height:100%;width:100%;object-fit:cover;object-position:74% center;filter:saturate(.25) brightness(1.15)}
.home-page #partnership.chapter-support:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#edf2eef5 0%,#edf2eedb 35%,#edf2ee35 100%);pointer-events:none}
.home-page #partnership.chapter-support .chapter-link{color:#3f6a5c;text-decoration-color:#82a193}
.home-page #partnership.chapter-support .supportinner{margin-top:48px;gap:32px;position:relative;z-index:1}
.home-page #partnership.chapter-support .supportitem{gap:20px;align-items:flex-start}
.home-page #partnership.chapter-support .serviceicon{width:80px;height:80px;border-radius:20px;background:linear-gradient(145deg,#fbfdfb,#dde8df);color:#4a7665;border:1px solid #ffffffd9;box-shadow:inset 0 1px 0 #fff,inset 0 -1px 2px #a2b8a520,0 8px 20px #30534709;transition:transform .5s cubic-bezier(.32,.72,0,1),box-shadow .5s cubic-bezier(.32,.72,0,1)}
.home-page #partnership.chapter-support .serviceicon svg{width:42px;height:42px;filter:drop-shadow(0 1px 0 #ffffffb3)}
.home-page #partnership.chapter-support .serviceicon path:not([opacity]){stroke-width:2}
.home-page #partnership.chapter-support .serviceicon path[opacity]{opacity:.24}
.home-page #partnership.chapter-support .supportitem:hover .serviceicon{transform:translateY(-4px);box-shadow:inset 0 1px 0 #fff,0 12px 24px #30534712}
.home-page #partnership.chapter-support .supportitem h3{font-size:18px;line-height:28px;color:#355a50;max-width:230px}
.home-page #partnership.chapter-support .more-body{color:#426457}
/* ABOUT — a photographic atmosphere, clean text, and one expandable brand moment. */
.home-page main>.chapter-about{background:#fdfefc;overflow:clip}
.home-page #about.chapter-about .about-editorial{grid-template-columns:.9fr 1.1fr;gap:64px;align-items:center}
.home-page #about.chapter-about .about-photo{border-radius:0;background:none;border:0;aspect-ratio:1.1;max-height:54svh;overflow:visible;position:relative}
.home-page #about.chapter-about .about-photo>img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.5) brightness(1.06);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 80%,transparent),linear-gradient(180deg,transparent,#000 12%,#000 82%,transparent);mask-composite:intersect;-webkit-mask-composite:source-in}
.home-page #about.chapter-about .photo-caption{background:none;inset-inline:16px;bottom:0;padding:0;font-size:10px;line-height:20px;color:#6e8c7b;text-align:center;letter-spacing:.1em}
.home-page #about.chapter-about .about-heading h2{font-size:clamp(30px,3.5vw,48px);line-height:1.1;color:#274f4a}
.home-page #about.chapter-about .lead{font-size:18px;line-height:28px;color:#5c756c;max-width:620px}
.home-page #about.chapter-about .about-read-link{font-size:14px;line-height:24px;color:#426c5b}
.home-page #about.chapter-about .purpose-reveal{margin-top:24px;align-self:stretch}
.home-page #about.chapter-about .purpose-reveal>summary{margin-inline-start:calc(45% + 36px);padding:16px 0;min-width:0;max-width:54%;gap:40px;color:#416e5d;font-size:16px;line-height:24px}
.home-page #about.chapter-about .purpose-reveal>.more-body{max-width:none;margin-inline:calc(-1 * var(--chapter-edge));width:calc(100% + 2 * var(--chapter-edge));padding:40px 0 0}
.purpose-stage{position:relative;isolation:isolate;overflow:hidden;background:#244d4b;color:#ecf3eb;padding:64px var(--chapter-edge);border:0;border-radius:0}
.purpose-stage-map{position:absolute;inset:4% auto auto 7%;width:86%;height:92%;object-fit:contain;z-index:-1;opacity:.17;filter:brightness(1.65) saturate(.3);pointer-events:none}
.home-page .purpose-stage .tagline{display:block;position:relative;background:none;border:0;padding:0;min-height:0;width:100%;max-width:none;margin:0 0 48px}
.home-page .purpose-stage .tagline:before,.home-page .purpose-stage .tagline:after{display:none}
.home-page #about .purpose-stage .tagline h2{font-size:clamp(40px,5.5vw,80px);line-height:1.05;color:#eff5e9;white-space:normal;text-wrap:balance;max-width:1020px;letter-spacing:-.04em;font-weight:500;margin:0}
.purpose-values{display:grid;grid-template-columns:1fr 1fr;gap:80px;max-width:1120px}
.home-page #about .purpose-values .purpose-value{background:none;border:0;box-shadow:none;border-radius:0;padding:0;margin:0}
.home-page #about .purpose-values h3{font-size:18px;line-height:28px;letter-spacing:.02em;color:#a9d0b9;margin:0 0 16px;font-weight:500}
.home-page #about .purpose-values p{font-size:16px;line-height:28px;color:#e0ece0;max-width:520px;margin:0;font-weight:400}
.home-page #about .purpose-audience{margin-top:40px;max-width:840px}
.home-page #about .purpose-audience p{font-size:14px;line-height:24px;color:#a9c3b4;margin:0}
@keyframes purpose-float{from{opacity:0;transform:translateY(24px);filter:blur(3px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
@keyframes map-float{from{opacity:0;transform:scale(.97)}to{opacity:.17;transform:scale(1)}}
.purpose-reveal[open] .purpose-statement{animation:purpose-float .85s cubic-bezier(.32,.72,0,1) both}
.purpose-reveal[open] .purpose-value:nth-child(1){animation:purpose-float .85s .12s cubic-bezier(.32,.72,0,1) both}
.purpose-reveal[open] .purpose-value:nth-child(2){animation:purpose-float .85s .24s cubic-bezier(.32,.72,0,1) both}
.purpose-reveal[open] .purpose-audience{animation:purpose-float .85s .34s cubic-bezier(.32,.72,0,1) both}
.purpose-reveal[open] .purpose-stage-map{animation:map-float 1.2s cubic-bezier(.32,.72,0,1) both}
/* GUIDES — repeat the same soft-edge imagery instead of another framed card. */
.home-page main>.chapter-guides{background:#edf2ee}
.home-page #buying-guides .guides-editorial{position:relative;min-height:440px;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:center}
.home-page #buying-guides .guide-picture{position:absolute;inset:0 auto 0 -40px;width:48%;height:100%;max-height:none;border:0;background:none;border-radius:0;aspect-ratio:auto;overflow:visible;z-index:-1;pointer-events:none}
.home-page #buying-guides .guide-picture>img{opacity:.38;object-fit:cover;object-position:50% 50%;filter:saturate(.35) brightness(1.2);mask-image:linear-gradient(90deg,transparent,#000 16%,#000 70%,transparent),linear-gradient(180deg,transparent,#000 14%,#000 80%,transparent);mask-composite:intersect;-webkit-mask-composite:source-in}
.home-page #buying-guides .picture-word{color:#416b5a;left:32px;right:0;bottom:48px;font-size:48px;line-height:1.1;max-width:390px;letter-spacing:-.04em;opacity:.9}
.home-page #buying-guides .guides-editorial-copy{grid-column:2;min-width:0}
.home-page #buying-guides .geo-section-head h2{color:#2f574b;font-size:36px;line-height:40px}
.home-page #buying-guides #geo-guide-cards .guide-card{background:none;border-bottom-color:#ccdcd0;padding:16px 0}
.home-page #buying-guides #geo-guide-cards .guide-card:hover{background:#ffffff40}
.home-page #buying-guides #geo-guide-cards h3{color:#3f6354;font-weight:500}
.home-page #buying-guides #geo-guide-cards .guide-action:after{color:#719987}
/* FAQ — product as a floating object, without a rectangular backing. */
.home-page main>.chapter-faq{background:#fdfefc}
.home-page #buyer-questions .faq-object{background:none;border:0;border-radius:0;overflow:visible;height:230px;margin-top:24px}
.home-page #buyer-questions .faq-object img{object-fit:contain;mix-blend-mode:multiply;filter:saturate(.35) opacity(.72);mask-image:linear-gradient(180deg,#000 65%,transparent)}
.home-page #buyer-questions .faq-heading h2{color:#2f574b;font-size:clamp(30px,3.5vw,48px)}
.home-page #buyer-questions .buyer-question{border-bottom-color:#d4e1d6}
/* CONTACT — the darker ending echoes the expanded purpose composition. */
.home-page main>#contact.chapter-contact{background:#2b514b;color:#eef4eb}
.home-page #contact.chapter-contact h2{color:#ffffff;font-weight:600;opacity:1}
.home-page #contact.chapter-contact p{color:#c5d7c9}
.home-page #contact.chapter-contact .contactlink{color:#d4e2d5}
.home-page #contact.chapter-contact .contact-map{opacity:.2;filter:brightness(1.7) saturate(.25);width:85%;height:90%;inset:5% -5% auto auto}
.home-page #contact.chapter-contact .contact-mark{width:180px;opacity:.5}
.home-page #contact.chapter-contact .contact-mark img{filter:grayscale(1) brightness(0) invert(.93)}
.home-page #contact.chapter-contact .contact-form-more>summary{color:#d8e8d9}
.home-page #contact.chapter-contact #inquiry{background:#f8faf6;border:0;border-radius:12px;box-shadow:0 16px 48px #173b3520}
.home-page #contact.chapter-contact #inquiry p{color:#637d6c}
.home-page #contact.chapter-contact .button{background:#d8e7d7;color:#315e4b}
.home-page #contact.chapter-contact #inquiry .button{background:#477960;color:white}
@media(min-width:901px) and (max-height:760px){
.home-page #partnership.chapter-support .supportinner{margin-top:32px;gap:24px}.home-page #partnership.chapter-support .serviceicon{width:64px;height:64px;border-radius:16px}.home-page #partnership.chapter-support .serviceicon svg{width:36px;height:36px}.home-page #partnership.chapter-support .supportitem h3{font-size:16px;line-height:24px}.home-page #buying-guides #geo-guide-cards .guide-card{padding:12px 0}.home-page #buying-guides .guides-editorial{min-height:400px}
}
@media(max-width:900px){
.home-page #partnership.chapter-support .support-intro h2{font-size:36px;line-height:40px}
.home-page #partnership.chapter-support .support-photo{position:absolute;max-height:none;opacity:.18;aspect-ratio:auto}
.home-page #partnership.chapter-support .supportinner{gap:24px 16px;margin-top:32px}
.home-page #partnership.chapter-support .supportitem{align-items:center;gap:12px}
.home-page #partnership.chapter-support .serviceicon{width:56px;height:56px;border-radius:16px;flex-shrink:0}
.home-page #partnership.chapter-support .serviceicon svg{width:30px;height:30px}
.home-page #partnership.chapter-support .supportitem h3{font-size:14px;line-height:20px}
.home-page #about.chapter-about .about-editorial{grid-template-columns:1fr;gap:24px}
.home-page #about.chapter-about .about-photo{order:1;aspect-ratio:2.5;max-height:130px;opacity:.85}
.home-page #about.chapter-about .about-editorial-copy{order:0}
.home-page #about.chapter-about .photo-caption{bottom:-8px;font-size:8px;letter-spacing:.04em}
.home-page #about.chapter-about .about-heading h2{font-size:30px;line-height:36px}
.home-page #about.chapter-about .lead{font-size:16px;line-height:28px}
.home-page #about.chapter-about .purpose-reveal{margin-top:24px}
.home-page #about.chapter-about .purpose-reveal>summary{margin-inline-start:0;max-width:100%;font-size:14px;line-height:24px;gap:24px}
.home-page #about.chapter-about .purpose-reveal>.more-body{padding-top:24px;margin-inline:-24px;width:calc(100% + 48px)}
.purpose-stage{padding:40px 24px}.home-page #about .purpose-stage .tagline{margin-bottom:32px}.home-page #about .purpose-stage .tagline h2{font-size:36px;line-height:40px}
.purpose-values{grid-template-columns:1fr;gap:32px}.home-page #about .purpose-values h3{font-size:16px;line-height:24px;margin-bottom:12px}.home-page #about .purpose-values p{font-size:14px;line-height:24px}.purpose-stage-map{height:70%;width:170%;left:-35%;top:15%;max-width:none}.home-page #about .purpose-audience{margin-top:32px}
.home-page #buying-guides .guides-editorial{display:block;min-height:0}.home-page #buying-guides .guide-picture{inset:0 -24px auto auto;width:110%;height:100%;opacity:.4;max-height:none}.home-page #buying-guides .picture-word{display:none}.home-page #buying-guides .guides-editorial-copy{position:relative}.home-page #buying-guides .geo-section-head h2{font-size:30px;line-height:36px}.home-page #buying-guides #geo-guide-cards .guide-card{padding:16px 0}
.home-page #buyer-questions .faq-object{height:120px;margin:0}.home-page #contact.chapter-contact .contact-map{width:150%;max-width:none;inset:15% -45% auto auto}
}
@media(prefers-reduced-motion:reduce){.purpose-reveal[open] *{animation:none!important}.home-page #partnership.chapter-support .serviceicon{transition:none}.purpose-stage-map{opacity:.17}}
.purpose-stage{min-height:calc(100svh - var(--header-h));display:flex;flex-direction:column;justify-content:center;scroll-margin-top:0}
.purpose-close{position:absolute;top:20px;inset-inline-end:24px;border:0;background:none;color:#c8decc;font-family:inherit;font-size:30px;line-height:32px;padding:4px 8px;cursor:pointer;z-index:2;transition:color .35s cubic-bezier(.32,.72,0,1),transform .35s cubic-bezier(.32,.72,0,1)}
.purpose-close:hover{color:#fff;transform:rotate(90deg)}.purpose-close:focus-visible{outline:2px solid #bddbc5;outline-offset:4px}
@media(max-width:900px){.purpose-close{top:12px;inset-inline-end:12px}.purpose-stage{padding-top:56px}}

/* Keep photography beneath the full curve, including its lower edge. */
@media(min-width:901px){.home-page .chapter-hero .heroart,.home-page .chapter-hero #slide-2 .heroart{inset:0 0 0 36%;width:64%}}
