/* Styles are scoped to TOP and its minimal, reused pair-input mock. */
.top-page{max-width:1240px;margin:auto;background:#fffefb}
.top-hero{width:100%;margin:0;padding:0;line-height:0}
.top-banner{display:block;width:100%;max-width:1984px;height:auto;object-fit:contain;transform:none;filter:none;margin:auto}
.top-intro{text-align:center;padding:30px 24px 45px;background:#f3f8f5}
.top-banner-copy{display:none}
.top-intro h1{font-size:36px;line-height:1.6;color:var(--navy);margin:0}
.top-lead{font-size:15px;line-height:1.9;margin:16px 0 22px}
.top-primary{max-width:420px;margin:auto;background:var(--teal);font-family:var(--sans);font-size:19px;min-height:58px}
.top-cta-note{font-size:11px;color:#556b71;margin-top:11px}
.top-section{padding:48px 48px 0}
.top-section>h2{text-align:center;font-size:28px;line-height:1.6}
.top-section-note{text-align:center;color:#576b72;font-size:14px;line-height:1.8;margin:12px 0 25px}
.top-section-note>span{display:block;font-size:11px;margin-top:4px}
.top-features{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.top-features article{padding:25px 20px;text-align:center;background:var(--ivory)}
.top-features .icon{width:28px;height:36px;margin:0 auto 14px}
.top-features h3{font-size:22px;margin-bottom:12px}
.top-features p{font-size:14px;line-height:1.9}
.top-samples{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.top-samples article{padding:24px;display:flex;flex-direction:column;align-items:center;gap:20px}
.top-sample-heading{display:flex;align-items:center;justify-content:space-between;width:100%;gap:10px}
.top-sample-heading h3{font-size:22px}
.top-samples img{height:auto;object-fit:contain;max-width:100%;margin:auto}
.top-sample-people{width:219px}.top-sample-graph{width:386px}
.top-samples p{font-size:14px;text-align:center;line-height:1.9}
.top-sample-link{min-height:44px;display:flex;align-items:center;justify-content:center;gap:20px;text-align:center;color:var(--teal);font-size:14px;text-decoration:underline;text-underline-offset:5px;margin:20px auto 0;width:fit-content;max-width:100%;padding:8px}
.top-other-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.top-other-card{display:flex;gap:14px;align-items:center;padding:18px;min-width:0}
.top-other-card>img{width:75px;max-width:75px;height:auto;flex:none;border-radius:6px}
.top-other-card>div{min-width:0}.top-other-card h3{font-size:20px;line-height:1.6}.top-other-card p{font-size:12px;margin-top:6px}
.top-other-next{display:block;text-align:right;color:var(--teal);font-size:20px}.top-preparing{display:block;font-size:11px;color:var(--gray);margin-top:8px}
.top-about{text-align:center}.top-about>p{font-size:15px;line-height:2;margin-top:18px}
.top-faq{padding-bottom:55px}.top-faq>h2{margin-bottom:24px}.top-faq details{max-width:880px;margin:auto;border-bottom:1px solid var(--line)}
.top-faq summary{min-height:58px;cursor:pointer;padding:16px 14px;font-size:16px;font-weight:600}
.top-faq details>p{padding:0 24px 20px;font-size:14px;line-height:1.9}
.pair-input-page{max-width:1184px;margin:auto;padding:40px 24px}
.pair-input-heading{text-align:center;margin-bottom:30px}.pair-input-heading h1{font-size:32px}.pair-input-heading p{font-size:14px;margin-top:15px}
.pair-input-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}.pair-input-page .birth-form{padding:28px 24px;margin:0;background-image:none}
.pair-input-page .birth-form h2{display:block;font-size:24px;margin-bottom:24px}.pair-input-page .date-row{gap:10px}.pair-input-page .date-row select{padding:6px;min-height:48px;font-size:16px}.pair-input-page .radio-row{grid-template-columns:1fr 1fr;font-size:14px}
.pair-input-form>.button{width:min(420px,100%);margin:28px auto 10px}.pair-input-note{text-align:center;font-size:13px;color:var(--gray)}
@media(max-width:1000px){.top-section{padding-inline:28px}.top-other-grid{grid-template-columns:1fr}.top-other-card{max-width:650px;width:100%;margin:auto}.top-other-card>div{flex:1}.top-features{grid-template-columns:1fr 1fr}.pair-input-columns{grid-template-columns:1fr}}
@media(max-width:640px){
.top-intro{padding:20px 18px 30px}.top-banner-copy{display:block;font-family:var(--serif);font-size:18px;line-height:1.7;margin-bottom:22px;color:var(--navy);font-weight:700}.top-banner-copy span{display:block;font-family:var(--sans);font-size:13px;font-weight:400;margin-top:5px}
.top-intro h1{font-size:25px;line-height:1.7;letter-spacing:0}.top-lead{font-size:14px;margin:15px 0 20px}.top-pc-break{display:none}.top-primary{font-size:17px;min-height:56px;padding-inline:17px;gap:14px}.top-cta-note{font-size:10px;line-height:1.8;margin-top:11px}
.top-section{padding:34px 18px 0}.top-section>h2{font-size:24px}.top-section-note{font-size:13px;margin:12px 0 20px}.top-features{gap:12px}.top-features article{padding:20px 12px}.top-features h3{font-size:19px}.top-features p{font-size:12px;line-height:1.9}.top-features .icon{margin-bottom:12px}
.top-samples{grid-template-columns:1fr;gap:14px}.top-samples article{padding:20px;gap:18px}.top-sample-heading h3{font-size:19px}.top-sample-heading .sample{font-size:10px}.top-samples p{font-size:13px}.top-sample-link{font-size:13px}
.top-other-grid{gap:12px}.top-other-card{padding:16px;gap:17px}.top-other-card h3{font-size:21px}.top-other-card p{font-size:13px}.top-about>p{font-size:14px;line-height:2}.top-faq{padding-bottom:38px}.top-faq summary{font-size:14px;padding:16px 8px}.top-faq details>p{font-size:13px;padding:0 10px 17px}
.pair-input-page{padding:26px 16px}.pair-input-heading h1{font-size:25px}.pair-input-heading p{font-size:12px}.pair-input-page .birth-form{padding:24px 16px}.pair-input-page .birth-form h2{font-size:23px}.pair-input-page .date-row select{font-size:17px;min-height:52px}.pair-input-page .radio-row{font-size:14px}.pair-input-form>.button{font-size:17px}
}
