/* Page-specific styles: the shared site design and existing pages stay unchanged. */
.retirement-hero { background: radial-gradient(ellipse at 12% 24%, rgba(200,163,92,.13), transparent 45%), linear-gradient(120deg,var(--navy-950),var(--navy-800)); color: white; }
.retirement-hero-grid { display:grid; grid-template-columns:1.05fr 1fr; gap:64px; align-items:center; padding:58px 0 64px; }
.retirement-hero-grid > * { min-width:0; }
.retirement-intro h1 { font-size:clamp(3rem,5.3vw,4.8rem); line-height:1.07; margin-bottom:26px; }
.retirement-intro .lead { max-width:530px; }
.retirement-trust { list-style:none; padding:0; margin:30px 0 0; display:grid; gap:16px; font-size:.91rem; color:#e5edf3; }
.retirement-trust li { display:flex; gap:13px; align-items:baseline; }
.retirement-trust span { color:var(--gold-300); }
#consultation-form { scroll-margin-top:105px; color:var(--ink); padding:30px; }
#consultation-form h2 { font-size:1.85rem; line-height:1.2; margin-bottom:24px; }
#consultation-form .eyebrow { font-size:.68rem; margin-bottom:10px; }
#consultation-form .form-grid { gap:14px 16px; }
#consultation-form input, #consultation-form select, #consultation-form textarea { padding:10px 12px; font-size:16px; }
#consultation-form select { width:100%; border:1px solid var(--line); border-radius:12px; background:white; color:var(--ink); font:inherit; font-size:16px; min-height:48px; }
#consultation-form select:focus { outline:2px solid var(--gold-500); outline-offset:2px; }
#consultation-form textarea { min-height:85px; }
#consultation-form .optional { font-weight:400; color:var(--muted); }
#consultation-form .btn { width:100%; }
#consultation-form .form-note { margin:10px 0 0; }
#consultation-form [data-enquiry-status] { font-size:.86rem; margin:10px 0; }
#consultation-form button:disabled { cursor:wait; opacity:.7; }
.retirement-call { margin:18px 0 0; padding-top:16px; border-top:1px solid var(--line); text-align:center; font-size:.87rem; color:var(--muted); }
.retirement-call a { color:var(--navy-900); font-weight:700; white-space:nowrap; }
.retirement-questions { display:grid; grid-template-columns:1fr 1fr; gap:0 40px; list-style:none; padding:0; margin:0; }
.retirement-questions li { display:flex; align-items:baseline; gap:18px; padding:25px 0; border-bottom:1px solid var(--line); }
.retirement-questions span { color:var(--gold-600); font-size:1.2rem; }
.retirement-questions h3 { font-size:1.32rem; line-height:1.4; margin:0; color:var(--navy-900); }
.retirement-advice-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:80px; }
.retirement-stat { max-width:350px; padding:24px 0 0; border-top:1px solid var(--gold-300); color:var(--muted); margin-top:32px; }
.retirement-stat strong { color:var(--navy-900); }
.retirement-steps { list-style:none; padding:0; margin:0; }
.retirement-step-number { display:block; margin-bottom:28px; color:var(--gold-600); font-weight:700; letter-spacing:.12em; }
.retirement-page .feature-card p { color:var(--muted); font-size:.94rem; }
.retirement-steps a { color:var(--navy-900); text-decoration:underline; text-underline-offset:3px; }
.retirement-page .feature-card .retirement-product-highlight { color:var(--navy-900); font-weight:700; }
.retirement-advisers { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:18px; }
.retirement-adviser { border:1px solid var(--line); border-radius:var(--radius-md); overflow:hidden; background:white; }
.retirement-adviser .team-photo { aspect-ratio:4/4.7; }
.retirement-adviser .team-meta { padding:20px 16px; }
.retirement-adviser h3 { font-size:1.22rem; }
.retirement-adviser .retirement-qualification { color:var(--muted); font-size:.78rem; font-weight:400; line-height:1.55; margin-top:10px; }
.retirement-cta .cta-actions { flex-direction:column; align-items:stretch; }
.retirement-mobile-bar { display:none; }
.retirement-page a:focus-visible, .retirement-page button:focus-visible { outline:3px solid var(--gold-500); outline-offset:4px; }
@media (max-width:1040px) {
 .retirement-hero-grid { gap:30px; grid-template-columns:1fr 1fr; }
 .retirement-intro h1 { font-size:3.5rem; }
 .retirement-advisers { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .retirement-advice-grid { gap:40px; }
}
@media (max-width:760px) {
 .retirement-page { padding-bottom:calc(80px + env(safe-area-inset-bottom,0px)); }
 .retirement-hero-grid { grid-template-columns:1fr; padding:36px 0 42px; gap:28px; }
 .retirement-intro h1 { font-size:clamp(2.65rem,10.7vw,3.6rem); margin-bottom:20px; }
 .retirement-intro .eyebrow { font-size:.65rem; }
 .retirement-intro .lead { font-size:1rem; margin-bottom:20px; }
 .retirement-trust { gap:10px; margin-top:20px; font-size:.82rem; }
 #consultation-form { padding:26px 22px; scroll-margin-top:92px; }
 #consultation-form h2 { font-size:1.65rem; }
 #consultation-form .form-grid { grid-template-columns:1fr 1fr; }
 #consultation-form .field.full { grid-column:1/-1; }
 .retirement-questions, .retirement-advice-grid { grid-template-columns:1fr; gap:0; }
 .retirement-stat { max-width:none; margin-bottom:30px; }
 .retirement-advisers { grid-template-columns:1fr 1fr; gap:14px; }
 .retirement-adviser .team-meta { padding:16px 12px; }
 .retirement-adviser h3 { font-size:1.15rem; }
 .retirement-adviser .team-meta p { font-size:.78rem; }
 .retirement-adviser .retirement-qualification { font-size:.74rem; }
 .retirement-mobile-bar { display:flex; position:fixed; bottom:0; left:0; right:0; z-index:110; gap:12px; padding:12px 20px calc(12px + env(safe-area-inset-bottom,0px)); background:var(--paper); border-top:1px solid var(--line); box-shadow:0 -4px 24px rgba(6,21,38,.1); }
 .retirement-mobile-bar .btn { flex:1; min-height:48px; }
}
@media (max-width:380px) { #consultation-form .form-grid { grid-template-columns:1fr; } .retirement-advisers { grid-template-columns:1fr; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .retirement-page .btn { transition:none; } }
@media (max-width:380px) {
 .retirement-page .nav-wrap { gap:12px; }
 .retirement-page .brand { width:calc(100vw - 135px); }
}
@media (max-width:760px) {
 .retirement-page .footer-main { grid-template-columns:minmax(0,1fr); }
 .retirement-page .footer-main > * { min-width:0; }
 .retirement-page .footer-main p, .retirement-page .footer-main a { overflow-wrap:anywhere; }
}
