.fam-hero .shop-hero-photo{object-position:center 35%}
.fam-crumbs{font-size:.8rem;margin-bottom:1rem;color:var(--shop-light)}.fam-crumbs a{color:var(--gold-2);text-decoration:none}
.fam-hero h1{color:var(--shop-light);font-size:3.2rem}.fam-hero .shop-lead{color:var(--shop-light);font-size:1.2rem;max-width:620px}
.fam-intro{max-width:760px}.fam-intro p{font-size:1.05rem}
.fam-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem}
.fam-hoods{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}
.fam-card,.fam-hood{background:var(--bg);border:1px solid var(--line);border-radius:4px;overflow:hidden;display:flex;flex-direction:column;transition:transform .35s ease,box-shadow .35s ease}
.fam-card:hover,.fam-hood:hover{transform:translateY(-4px);box-shadow:var(--shop-shadow)}
.fam-card figure,.fam-hood figure{margin:0;aspect-ratio:4/3;overflow:hidden}.fam-hood figure{aspect-ratio:16/9}
.fam-card img,.fam-hood img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
.fam-card:hover img,.fam-hood:hover img{transform:scale(1.05)}
.fam-card-body{padding:1.4rem;display:flex;flex-direction:column;gap:.5rem;flex:1}
.fam-card-body>i{color:var(--gold);font-size:1.2rem}.fam-card-body p{font-size:.92rem;flex:1}
.fam-card-body>a:not(.btn-details){color:var(--navy);font-weight:600;font-size:.85rem;text-decoration:none}.fam-card-body>a:hover{color:var(--gold)}
.fam-card-body .btn-details{align-self:flex-start}.fam-hood h3 small{font-family:'Inter',sans-serif;font-size:.75rem;letter-spacing:.15em;color:var(--muted);text-transform:uppercase;margin-left:.4rem}
.fam-details{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem 3rem}.fam-detail{border-top:2px solid var(--gold);padding-top:1rem;scroll-margin-top:100px}
.fam-check-wrap{display:grid;grid-template-columns:1fr 1.2fr;gap:3rem;align-items:start}
.fam-check{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.fam-check label{display:flex;gap:.9rem;align-items:center;padding:1rem .25rem;border-bottom:1px solid var(--line);cursor:pointer;color:var(--navy)}
.fam-check input{width:22px;height:22px;accent-color:var(--navy);flex:none}
.fam-check input:checked+span{color:var(--muted);text-decoration:line-through}
.fam-progress{font-weight:600;color:var(--gold)}
.fam-faq{max-width:820px}.fam-faq details{border-bottom:1px solid var(--line);padding:1.1rem 0}
.fam-faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:1rem}.fam-faq summary::-webkit-details-marker{display:none}
.fam-faq summary h3{font-size:1.15rem;margin:0}.fam-faq summary:after{content:'+';color:var(--gold);font-size:1.5rem;line-height:1}
.fam-faq details[open] summary:after{content:'−'}.fam-faq details p{margin:.8rem 0 0}
.fam-final{background:var(--navy);padding:5rem 0}.fam-final h2{color:var(--shop-light)!important}.fam-final p{color:var(--shop-light)!important;opacity:.85}.fam-final .fam-more a{color:var(--gold-2)}
.fam-reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.fam-reveal.in{opacity:1;transform:none}
@media(max-width:991px){.fam-cards{grid-template-columns:repeat(2,1fr)}.fam-check-wrap{grid-template-columns:1fr;gap:1.5rem}}
@media(max-width:767px){.fam-hero h1{font-size:2.2rem}.fam-cards,.fam-hoods,.fam-details{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.fam-reveal{opacity:1;transform:none}}
