/* Visible moments for the home page. Every selector stays inside its own section. */
.page-home .hb-moments{--hb-ex-purple:#503074;--hb-ex-cream:#fff7e8;--hb-ex-sun:#ffc81e;--hb-ex-muted:#736277;color:var(--hb-ex-purple);font-family:Manrope,system-ui,sans-serif;position:relative;isolation:isolate}
.page-home .hb-moments-wrap{width:min(100% - 48px,1240px);margin-inline:auto;position:relative;z-index:1}
.page-home .hb-moments h2{font-family:Unbounded,system-ui,sans-serif;font-weight:800;font-size:clamp(30px,3.55vw,48px);line-height:1.25;letter-spacing:-.04em;color:var(--hb-ex-purple);margin:0;overflow-wrap:normal}
.page-home .hb-moments h3{font-family:Manrope,system-ui,sans-serif;font-weight:800;font-size:clamp(21px,2vw,25px);line-height:1.35;letter-spacing:-.025em;color:var(--hb-ex-purple);margin:0}
.page-home .hb-moments-kicker{font-size:13px;line-height:1.5;letter-spacing:.1em;font-weight:800;text-transform:uppercase;color:#7d618a;margin:0 0 18px}
/* Life after opening: existing images keep their complete, uncropped composition. */
.page-home .hb-moments{padding:76px 0 80px;background:#fffdf7;border-top:1px solid #eee3cf}
.page-home .hb-moments-heading{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);align-items:end;gap:44px;margin-bottom:42px}
.page-home .hb-moments-heading h2{font-size:clamp(30px,3.05vw,43px)}
.page-home .hb-moments-heading h2 span{color:#745286}
.page-home .hb-moments-intro{font-size:17px;line-height:1.85;color:var(--hb-ex-muted);margin:0 0 5px;max-width:375px}
.page-home .hb-moments-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.page-home .hb-moments-card{border:1px solid #e9e0d1;border-radius:26px;background:#fff;overflow:hidden;min-width:0;display:flex;flex-direction:column;box-shadow:0 8px 28px #50307407;transition:transform .2s ease,box-shadow .2s ease}
.page-home .hb-moments-image{position:relative;aspect-ratio:4/3;background:#fff7e8;overflow:hidden}
.page-home .hb-moments-image img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .4s ease}
.page-home .hb-moments-label{position:absolute;left:19px;top:18px;display:inline-flex;align-items:center;gap:10px;min-height:37px;padding:7px 12px;background:#fffcf3f2;border:1px solid #fff;border-radius:11px;color:var(--hb-ex-purple);font-size:13px;line-height:1.5;font-weight:800;box-shadow:0 3px 10px #50307408}
.page-home .hb-moments-label b{font-size:12px;color:#83658f;padding-right:10px;border-right:1px solid #dbccde}
.page-home .hb-moments-copy{display:flex;flex-direction:column;flex:1;padding:26px 27px 24px}
.page-home .hb-moments-copy>p{font-size:16px;line-height:1.8;color:var(--hb-ex-muted);margin:16px 0 24px}
.page-home .hb-moments-signature{display:block;font-size:13px;line-height:1.6;font-weight:800;color:#7b5f8b;margin-top:auto;padding-top:17px;border-top:1px solid #eee6ed}
.page-home .hb-moments-eat .hb-moments-copy{background:#fffdf5}
.page-home .hb-moments-sleep .hb-moments-copy{background:#f8faf7}
.page-home .hb-moments-finish{text-align:center;margin-top:34px}
.page-home .hb-moments-finish p{font-size:22px;line-height:1.6;font-weight:600;letter-spacing:-.02em;margin:0 0 10px;color:#745c7e}
.page-home .hb-moments-finish strong{font-weight:800;color:var(--hb-ex-purple)}
.page-home .hb-moments-finish>span{display:block;font-size:13px;line-height:1.75;color:#786d7a;max-width:670px;margin:auto}
@media(hover:hover) and (pointer:fine){.page-home .hb-moments-card:hover{transform:translateY(-5px);box-shadow:0 15px 36px #50307410}
.page-home .hb-moments-card:hover img{transform:scale(1.025)}}
@media(max-width:1050px){.page-home .hb-moments-copy{padding-inline:22px}
.page-home .hb-moments-grid{gap:17px}
.page-home .hb-moments-heading{grid-template-columns:1.65fr 1fr;gap:26px}
.page-home .hb-moments h3{font-size:22px}}
@media(max-width:820px){.page-home .hb-moments{padding:72px 0}
.page-home .hb-moments-wrap{width:min(100% - 40px,660px)}
.page-home .hb-moments-grid{grid-template-columns:1fr;gap:23px}
.page-home .hb-moments-heading{grid-template-columns:1fr;gap:20px;margin-bottom:31px}
.page-home .hb-moments-intro{max-width:560px;font-size:17px}
.page-home .hb-moments-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border-radius:23px}
.page-home .hb-moments-image{height:100%;min-height:270px;aspect-ratio:auto}
.page-home .hb-moments-image img{object-fit:contain}
.page-home .hb-moments-copy{padding:25px 23px}
.page-home .hb-moments-label{left:14px;top:14px}
.page-home .hb-moments-finish{margin-top:29px}}
@media(max-width:540px){.page-home .hb-moments{padding:60px 0}
.page-home .hb-moments-wrap{width:calc(100% - 32px)}
.page-home .hb-moments h2{font-size:clamp(27px,7.6vw,36px);line-height:1.3;letter-spacing:-.04em}
.page-home .hb-moments-kicker{font-size:12px;letter-spacing:.075em;margin-bottom:15px}
.page-home .hb-moments-grid{gap:20px}
.page-home .hb-moments h3{font-size:23px}
.page-home .hb-moments-heading{gap:18px;margin-bottom:28px}
.page-home .hb-moments-intro{font-size:16px;line-height:1.8}
.page-home .hb-moments-card{display:flex}
.page-home .hb-moments-image{height:auto;min-height:0;aspect-ratio:4/3}
.page-home .hb-moments-copy{padding:23px 22px}
.page-home .hb-moments-copy>p{font-size:16px;line-height:1.8;margin-bottom:21px}
.page-home .hb-moments-label{top:15px;left:16px}
.page-home .hb-moments-finish p{font-size:20px}
.page-home .hb-moments-finish>span{font-size:13px;line-height:1.8}}
@media(prefers-reduced-motion:reduce){.page-home .hb-moments-card,.page-home .hb-moments-image img{transition:none;transform:none!important}}
