/* Identidade compartilhada com partos, com composição para batizado. */
.skip-link{position:fixed;top:-80px;left:1rem;z-index:100;padding:1rem;background:var(--cyan);color:var(--ink)}.skip-link:focus{top:1rem}
.desktop-nav{display:flex;gap:1.7rem;color:var(--ivory);font-size:.9rem}.desktop-nav a:hover{color:var(--cyan)}
.hero{min-height:min(96svh,940px)}.hero-in{max-width:1240px}.hero .h1{font-size:clamp(3.4rem,6.6vw,5.8rem);max-width:750px}.hero .lead{max-width:450px}.hero-media img{object-position:70% 40%}.hero::after{background:linear-gradient(90deg,rgba(15,15,17,.94),rgba(15,15,17,.74) 35%,rgba(15,15,17,.08) 83%),linear-gradient(0deg,rgba(15,15,17,.65),transparent 45%,rgba(15,15,17,.25))}
.opening-note{border-top:1px solid var(--line-dk);padding-block:2.5rem}.opening-note .wrap{display:flex;justify-content:space-between;align-items:center;gap:2rem}.opening-note p{font-family:var(--serif);font-size:clamp(1.4rem,2.6vw,2rem);line-height:1.3}.opening-note em{color:var(--cyan)}.opening-note span{font-size:.8rem;letter-spacing:.15em;text-transform:uppercase;color:var(--muted-dk)}
.section-head{margin-bottom:2.7rem;max-width:780px}.section-head .h2{margin-top:1rem}.section-head .lead{margin-top:1.3rem;color:var(--muted-lt);max-width:62ch}.intro-grid,.about-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(2rem,6vw,6rem)}.intro-grid p:not(.eyebrow),.about-grid p:not(.eyebrow){color:var(--muted-lt)}.intro-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:60%;border-radius:16px}.intro-photo figcaption{font-size:.85rem;color:var(--muted-lt);margin-top:1rem}.text-link{display:inline-flex;gap:.6rem;align-items:center;font-weight:600;color:var(--cyan-dk);padding-block:.7rem}.text-link svg{width:20px;height:20px}
.gallery-open{display:block;width:100%;padding:0;cursor:zoom-in}.gallery-open img{width:100%;height:auto}.gallery-cta{display:flex;justify-content:center;margin-top:3rem}.about-grid{grid-template-columns:.7fr 1fr}.about-grid .slot{max-width:390px}.cta .h1{margin-block:1.5rem}.cta em{color:var(--cyan)}.cta .lead{max-width:46ch;margin:0 auto 2rem;color:var(--muted-dk)}
#photo-dialog{position:fixed;inset:0;margin:auto;padding:1.5rem;border:0;width:100vw;height:100dvh;max-width:100vw;max-height:100dvh;background:rgba(10,10,11,.97);color:var(--ivory);overflow:hidden}#photo-dialog[open]{display:flex;align-items:center;justify-content:center}#photo-dialog::backdrop{background:rgba(0,0,0,.95)}#photo-large{max-width:calc(100% - 90px);max-height:calc(100% - 50px);object-fit:contain}.photo-close,.photo-prev,.photo-next{position:absolute;width:48px;height:48px;display:grid;place-content:center;font-size:2.1rem;border:1px solid #ffffff55;border-radius:50%;background:#17171acc;color:#fff}.photo-close{right:1.3rem;top:1.3rem;z-index:2}.photo-prev{left:1rem}.photo-next{right:1rem}#photo-counter{position:absolute;bottom:1rem;left:0;right:0;text-align:center;font-size:.85rem}.gallery-lock{overflow:hidden}
@media(max-width:900px){.desktop-nav{display:none}.intro-grid,.about-grid{gap:2rem}}
@media(max-width:640px){.hero{min-height:96svh}.hero-in{padding-top:8rem;padding-bottom:2.5rem}.hero .h1{font-size:clamp(3rem,12vw,4.6rem)}.hero-media img{object-position:60% center}.hero::after{background:linear-gradient(0deg,rgba(15,15,17,.98),rgba(15,15,17,.82) 40%,rgba(15,15,17,.16) 78%,rgba(15,15,17,.6))}.hero .lead{font-size:1rem;max-width:34ch}.badge{font-size:.7rem;letter-spacing:.055em}.hero .btn-row{margin-block:1.7rem .5rem;gap:.6rem}.hero .btn{padding:.9rem 1.1rem;font-size:.9rem}.opening-note .wrap{display:block}.opening-note span{display:block;margin-top:1.2rem}.intro-grid,.about-grid{grid-template-columns:1fr}.intro-photo img{aspect-ratio:4/3}.section-head{margin-bottom:2rem}.mosaic{column-gap:.6rem}.mosaic figure{margin-bottom:.6rem}.about-grid .slot{width:100%;max-width:100%;aspect-ratio:1!important}.ftr{padding-bottom:6.5rem}#photo-dialog{padding:.4rem}#photo-large{max-width:100%;max-height:85%}.photo-prev,.photo-next{top:auto;bottom:1rem;width:42px;height:42px;z-index:1}#photo-counter{bottom:1.5rem;pointer-events:none}.bar{gap:.5rem}.bar .v{font-size:1.05rem}}
/* Composição Newborn sobre a identidade compartilhada. */
.newborn-hero{padding-block:9rem 4rem}.newborn-hero-grid{display:grid;grid-template-columns:1.3fr .8fr;gap:4rem;align-items:center}.newborn-hero h1{margin-block:1.4rem;font-size:clamp(3rem,5.7vw,5rem)}.newborn-hero em,.final-title em{color:var(--cyan)}.newborn-hero .lead{max-width:42ch;color:var(--muted-dk)}.newborn-hero .btn-row{margin-top:2rem}.newborn-hero figure{max-width:440px}.newborn-hero figure img{width:100%;border-radius:150px 150px 16px 16px}.newborn-hero figcaption{font-size:.85rem;color:var(--muted-dk);margin-top:.9rem;text-align:center}.pk-grid{align-items:stretch}.package-note{font-size:.9rem;color:var(--muted-lt);margin-top:1rem}.pk-dia .package-note{color:var(--muted-dk)}.pk .btn{margin-top:auto}.pk .package-note:last-of-type{margin-bottom:1.5rem}.newborn-gallery{columns:3;column-gap:1.2rem}.newborn-gallery figure{break-inside:avoid;margin-bottom:1.2rem;border-radius:14px;overflow:hidden}.care-grid{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem}.care-grid p{margin-top:1rem;color:var(--muted-dk)}.dark .section-head .lead{color:var(--muted-dk)}.album-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.album-card{border:1px solid var(--line-lt);border-radius:16px;background:#fff;overflow:hidden}.album-card>img{width:100%;aspect-ratio:4/3;object-fit:cover}.album-card>div{padding:2rem}.album-card h3{margin-block:.7rem 1rem}.album-card p:not(.eyebrow){color:var(--muted-lt);margin-bottom:1.3rem}.album-deadline{margin-top:1.5rem;color:var(--muted-lt)}.final-title{margin-block:1.4rem}.final-copy{margin:0 auto 2rem;color:var(--muted-dk)}
@media(max-width:760px){.newborn-hero-grid{grid-template-columns:1fr;gap:2rem}.newborn-hero figure{max-width:340px;margin:auto}.newborn-hero{padding-top:8rem}.newborn-hero h1{font-size:clamp(3rem,11vw,4.5rem)}.newborn-gallery{columns:2}.care-grid,.album-grid{grid-template-columns:1fr}.price-row dd{font-size:1.2rem}.price-row dt{font-size:.85rem}.album-card>div{padding:1.3rem}.pk-name{font-size:2.6rem}}
