/* Recover Your Property | Static-site design system
   Brand: Recover Your Property | Investigator: William Webster */
:root {
  --navy: #172b45;
  --navy-2: #1e3651;
  --navy-deep: #112238;
  --cream: #f7f5f0;
  --paper: #fffefa;
  --teal: #19776e;
  --teal-deep: #145f59;
  --mint: #dcefe8;
  --ink: #263443;
  --muted: #617080;
  --line: #dde4e2;
  --serif: 'Iowan Old Style', 'Palatino Linotype', 'Book Antiqua', Georgia, serif;
  --sans: Inter, 'Segoe UI', Arial, sans-serif;
  --container: 1200px;
  --radius: 14px;
  --shadow: 0 22px 60px rgba(13, 35, 52, .09);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font: 16px/1.66 var(--sans); -webkit-font-smoothing:antialiased; }
img, svg { max-width:100%; }
a { color:var(--teal-deep); text-underline-offset: .24em; }
a:hover { color:#0d4f4a; }
button,input,select,textarea { font:inherit; }
button { cursor:pointer; }
:focus-visible { outline: 3px solid #36a695; outline-offset: 4px; }
::selection { background:#d2ede5; color:#142b40; }
.container { width:min(calc(100% - 64px),var(--container)); margin-inline:auto; }
.narrow { width:min(calc(100% - 64px), 810px); }
.skip-link { position:absolute; left:14px; top:-100px; z-index:1000; padding:10px 18px; color:#fff; background:var(--navy); }
.skip-link:focus { top:8px; }
h1,h2,h3,h4,p { margin-top:0; }
h1,h2,h3 { text-wrap:balance; }
h1,h2 { font-family:var(--serif); font-weight:500; letter-spacing:-.045em; }
h1 { font-size:clamp(3.7rem, 5.55vw, 5.9rem); line-height:1.06; }
h2 { font-size:clamp(2.2rem, 3.35vw, 3.75rem); line-height:1.16; }
h3 { font-weight:620; line-height:1.3; }
em { color:var(--teal); font-style:italic; }
.muted { color:var(--muted); }
.section { padding:105px 0; }
.eyebrow { display:inline-block; color:var(--teal-deep); text-transform:uppercase; font-weight:750; letter-spacing:.17em; font-size:.68rem; line-height:1.8; margin-bottom:18px; }
.eyebrow.light { color:#a6dbc9; }
.section-heading { max-width:690px; }
.section-heading h2 { margin-bottom:18px; }
.section-heading p { color:var(--muted); max-width:590px; font-size:1.06rem; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:30px; font-weight:700; text-decoration:none; min-height:54px; border-radius:5px; padding:12px 22px; border:1.5px solid transparent; line-height:1.2; transition:background .18s ease,transform .18s ease,border-color .18s ease; white-space:normal; text-align:center; }
.button:hover { transform:translateY(-2px); }
.button span { font-size:1.14em; font-weight:400; }
.button-primary { background:var(--teal); color:white; }
.button-primary:hover { background:var(--teal-deep); color:white; }
.button-light { background:#f6f7f2; color:var(--navy); }
.button-light:hover { background:#e0eee7; color:var(--navy); }
.button-outline { color:var(--navy); background:transparent; border-color:#bbc8c9; }
.button-outline:hover { color:var(--navy); border-color:var(--teal); background:#f5fbf8; }
.button-sm { min-height:42px; padding:10px 17px; font-size:.84rem; gap:16px; }
.text-link { color:var(--teal); font-weight:720; display:inline-flex; align-items:center; gap:15px; text-decoration:none; border-bottom:1px solid currentColor; padding-bottom:5px; }
.text-link.dark { color:var(--navy); }
.text-link:hover { gap:22px; }

/* Header */
.utility-bar { background:var(--navy-deep); color:#e8f0ef; font-size:.74rem; letter-spacing:.045em; }
.utility-inner { height:36px; display:flex; justify-content:space-between; align-items:center; }
.utility-bar a { color:#e8f0ef; text-decoration:none; font-weight:650; }
.phone-icon { display:inline-block; margin-right:6px; font-size:.9em; }
.site-header { background:var(--paper); z-index:200; position:relative; border-bottom:1px solid #eaece8; }
.header-inner { display:flex; align-items:center; justify-content:space-between; min-height:93px; gap:25px; }
.brand { display:flex; align-items:center; gap:12px; flex-shrink:0; text-decoration:none; color:var(--navy); }
.brand:hover { color:var(--navy); }
.brand-mark { width:48px; height:50px; display:grid; place-items:center; color:var(--navy); }
.brand-type { display:flex; flex-direction:column; gap:1px; }
.brand-type strong { font-family:var(--serif); font-size:1.38rem; line-height:1.08; font-weight:700; letter-spacing:-.03em; }
.brand-type small { font-size:.68rem; color:var(--muted); font-weight:580; white-space:nowrap; }
.brand-divider { margin:0 2px; color:#91a39d; }
.site-nav { display:flex; align-items:center; gap:clamp(15px, 2vw, 33px); }
.site-nav a:not(.button) { color:var(--ink); text-decoration:none; font-size:.82rem; font-weight:650; white-space:nowrap; position:relative; }
.site-nav a:not(.button):hover, .site-nav a[aria-current="page"] { color:var(--teal-deep); }
.site-nav a[aria-current="page"]:after { position:absolute; content:""; left:0; right:0; bottom:-11px; height:2px; background:var(--teal); }
.nav-cta { margin-left:5px; }
.menu-toggle { display:none; border:1px solid var(--line); background:white; padding:9px; width:44px; height:44px; border-radius:6px; flex-shrink:0; flex-direction:column; justify-content:center; gap:5px; }
.menu-toggle span { display:block; height:2px; width:22px; background:var(--navy); margin-inline:auto; }

/* Home hero */
.hero { overflow:hidden; background:linear-gradient(135deg,#f8f8f4 2%,#f6f8f5 40%,#eef3ef 100%); }
.hero-grid { display:grid; grid-template-columns:1.13fr .87fr; align-items:stretch; gap:7.2%; min-height:615px; padding-block:67px 75px; }
.hero-copy { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; }
.kicker-line { display:flex; gap:10px; align-items:center; color:var(--teal-deep); font-size:.68rem; font-weight:750; letter-spacing:.17em; margin-bottom:30px; }
.kicker-dot { display:inline-block; width:9px; height:9px; background:var(--teal); border-radius:100%; }
.hero h1 { color:var(--navy); margin:0 0 24px; }
.hero h1 em { display:inline-block; }
.hero-lead { color:#526477; font-size:1.08rem; max-width:525px; margin-bottom:29px; line-height:1.85; }
.hero-actions { display:flex; align-items:center; gap:30px; flex-wrap:wrap; margin-bottom:53px; }
.hero-facts { width:min(490px,100%); border-top:1px solid #d3ddd8; padding-top:20px; display:grid; grid-template-columns:repeat(3,1fr); }
.hero-facts div + div { border-left:1px solid #d3ddd8; padding-left:24px; }
.hero-facts strong { display:block; color:var(--navy); font:500 1.75rem/1.1 var(--serif); }
.hero-facts span { display:block; color:var(--muted); font-size:.74rem; margin-top:5px; }
.hero-art { background:var(--navy); border-radius:6px 6px 55px 6px; box-shadow:var(--shadow); color:#fff; min-height:525px; position:relative; overflow:hidden; align-self:center; isolation:isolate; }
.hero-orbit { position:absolute; pointer-events:none; border:1px solid rgba(211,230,226,.17); border-radius:50%; z-index:-1; }
.orbit-one { width:670px; height:670px; left:30%; top:-45%; }
.orbit-two { width:440px; height:440px; left:57%; top:-13%; }
.hero-art:before { content:""; position:absolute; width:300px; height:300px; right:-140px; top:-130px; background:radial-gradient(circle,rgba(28,132,117,.34),transparent 70%); }
.hero-art-inner { height:100%; padding:40px clamp(28px,4vw,57px) 35px; display:flex; flex-direction:column; }
.art-topline { color:#bfd2d1; font-size:.7rem; text-transform:uppercase; letter-spacing:.16em; display:flex; align-items:center; gap:14px; }
.small-line { width:27px; border-top:1px solid #8cb5b1; }
.hero-seal { margin:45px 0 18px; display:flex; justify-content:center; }
.seal-ring { width:126px; height:126px; border:1px solid #6e8791; border-radius:50%; display:grid; place-items:center; box-shadow:0 0 0 17px rgba(240,248,241,.035),0 0 0 34px rgba(240,248,241,.025); }
.art-label { margin:5px 0 12px; color:#a6cac3; text-align:center; font-size:.68rem; letter-spacing:.18em; }
.hero-art h2 { font-size:clamp(2.05rem,3.1vw,3.3rem); color:#f9faf7; line-height:1.12; margin:0 0 28px; text-align:center; }
.art-signature { display:flex; align-items:center; gap:12px; border-top:1px solid rgba(255,255,255,.16); padding-top:24px; margin-top:auto; }
.monogram { width:43px; height:43px; border:1px solid #a9bdb7; display:grid; place-items:center; color:#dfede8; font:600 1rem var(--serif); border-radius:50%; flex-shrink:0; }
.art-signature strong, .art-signature span { display:block; }
.art-signature strong { color:#fff; font-size:.83rem; }
.art-signature span { color:#a7bfca; font-size:.68rem; margin-top:2px; }
.hero-small-tag { position:absolute; bottom:0; right:0; border-radius:8px 0 0 0; background:#d6ebe2; color:#183d45; padding:9px 17px; font-size:.67rem; font-weight:740; letter-spacing:.015em; }
.hero-small-tag span { margin-left:7px; }
.assurance-strip { background:#fff; border-bottom:1px solid var(--line); }
.assurance-grid { display:grid; grid-template-columns:repeat(3,1fr); min-height:94px; align-items:center; }
.assurance-grid > div { display:flex; align-items:center; justify-content:center; gap:13px; color:var(--navy); font-weight:680; font-size:.87rem; }
.assurance-grid > div + div { border-left:1px solid var(--line); }
.assurance-icon { display:grid; place-items:center; border-radius:50%; width:25px; height:25px; color:var(--teal); border:1px solid #b8d8cc; font-weight:750; font-size:.9rem; }

/* Contacted */
.contacted-section { background:var(--paper); }
.contacted-grid { display:grid; grid-template-columns:1fr 1fr; gap:clamp(50px,9vw,140px); }
.contacted-feature h2 { max-width:470px; }
.contacted-feature p { color:var(--muted); font-size:1.04rem; max-width:490px; line-height:1.8; margin-bottom:30px; }
.contacted-steps { border-top:3px solid var(--teal); padding-top:26px; }
.contacted-steps h3 { font-size:1.03rem; margin-bottom:26px; color:var(--navy); }
.check-item { display:flex; gap:19px; padding:20px 0; border-top:1px solid var(--line); }
.check-item:first-of-type { border-top:0; }
.check-item > span { font:700 .79rem var(--sans); color:var(--teal); padding-top:2px; }
.check-item h4 { font-size:1rem; line-height:1.35; margin:0 0 6px; color:var(--navy); }
.check-item p { font-size:.88rem; margin:0; color:var(--muted); line-height:1.75; }
.check-item a { font-weight:680; }

/* Process */
.process-section, .contrast-section { background:var(--cream); }
.section-top { display:flex; align-items:end; justify-content:space-between; gap:30px; margin-bottom:46px; }
.section-top .section-heading h2 { margin-bottom:12px; }
.section-top .section-heading p { margin-bottom:0; }
.section-top .text-link { margin-bottom:9px; flex-shrink:0; }
.process-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.process-card { background:var(--paper); border:1px solid #e8eae5; padding:28px 30px 37px; min-height:335px; box-shadow:0 12px 26px rgba(28,42,52,.035); display:flex; flex-direction:column; }
.step-no { font-size:.72rem; font-weight:750; letter-spacing:.14em; color:var(--teal); }
.process-icon { display:grid; place-items:center; width:75px; height:75px; border-radius:50%; background:#eaf3ee; color:var(--teal-deep); font:400 2.2rem var(--serif); margin:28px 0 19px; }
.process-card h3 { color:var(--navy); font-size:1.15rem; margin:0 0 8px; }
.process-card p { color:var(--muted); font-size:.91rem; margin:0; line-height:1.78; }

/* Property */
.property-layout { display:grid; grid-template-columns:.87fr 1.13fr; gap:9%; align-items:center; }
.property-copy .section-heading p { margin-bottom:26px; }
.property-list { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.property-list div { min-height:104px; background:#f8faf7; border:1px solid var(--line); padding:20px; font-weight:690; font-size:.94rem; color:var(--navy); display:flex; align-items:center; justify-content:space-between; gap:9px; }
.property-list span { color:var(--teal); }

/* Fee */
.fee-section { padding-top:30px; }
.fee-panel { background:var(--navy); color:white; border-radius:8px; padding:65px clamp(38px,6vw,85px); display:grid; grid-template-columns:1.15fr .65fr; gap:10%; background-image:radial-gradient(circle at 90% 15%,rgba(36,132,116,.32),transparent 30%); }
.fee-panel h2 { color:white; margin-bottom:21px; }
.fee-panel h2 em { color:#b2daca; }
.fee-panel p { color:#d2dde4; max-width:590px; margin-bottom:24px; }
.fee-right { align-self:center; padding-left:35px; border-left:1px solid rgba(255,255,255,.22); }
.percentage { font:400 clamp(5rem, 8.5vw, 8rem)/1 var(--serif); letter-spacing:-.06em; color:white; }
.percentage span { font-size:.48em; color:#91d1bc; }
.fee-right p { font-size:.9rem; max-width:260px; }
.fee-right .fee-small { font-size:.8rem; color:#b9cbd4; margin:16px 0 0; }
.fee-small a { color:#c0ebdc; }
.fee-rule { height:1px; background:rgba(255,255,255,.24); width:100%; }

/* FAQs */
.faq-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:11%; }
.faq-list { border-top:1px solid var(--line); }
.faq-list details { border-bottom:1px solid var(--line); padding:0; }
.faq-list summary { cursor:pointer; list-style:none; display:flex; justify-content:space-between; align-items:center; gap:18px; padding:23px 0; font-weight:720; color:var(--navy); line-height:1.4; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary span { font-size:1.6rem; font-weight:300; color:var(--teal); transition:transform .2s; }
.faq-list details[open] summary span { transform:rotate(45deg); }
.faq-list details p { color:var(--muted); margin:-4px 0 23px; font-size:.93rem; }
.closing-cta { background:var(--teal-deep); color:white; padding:75px 0; }
.closing-inner { display:grid; grid-template-columns:1.2fr .8fr; gap:9%; align-items:center; }
.closing-inner h2 { color:white; margin:0; }
.closing-inner p { color:#d8f0e7; margin-bottom:23px; font-size:1.03rem; }
.closing-inner .cta-tel { color:#def6ec; text-decoration:none; font-size:.89rem; font-weight:650; margin-left:18px; display:inline-block; }

/* Secondary pages */
.page-hero { color:white; background:var(--navy); overflow:hidden; }
.page-hero-inner { display:grid; grid-template-columns:1.15fr .65fr; gap:8%; min-height:380px; align-items:center; padding:66px 0 70px; }
.page-hero .eyebrow { color:#a2d7c6; }
.page-hero h1 { font-size:clamp(3.5rem,5.4vw,5.45rem); margin-bottom:22px; color:white; }
.page-hero h1 em { color:#b6dbc8; }
.page-hero p { max-width:600px; color:#d2dee3; line-height:1.83; font-size:1.09rem; margin-bottom:0; }
.page-hero-art { align-self:stretch; display:flex; flex-direction:column; justify-content:center; align-items:center; position:relative; min-height:260px; border:1px solid rgba(221,240,231,.16); border-radius:50% 50% 12px 12px; }
.page-hero-art:after { content:""; position:absolute; width:75%; height:75%; top:12%; left:12%; border:1px solid rgba(221,240,231,.11); border-radius:50%; }
.large-monogram { font:400 clamp(5rem,8vw,8rem) var(--serif); color:#d0ede0; letter-spacing:-.13em; padding-right:18px; line-height:1; }
.art-caption { color:#fff; font-size:.89rem; text-align:center; line-height:1.5; margin-top:20px; z-index:1; font-weight:680; }
.art-caption span { font-size:.76rem; font-weight:450; color:#b0cad2; }
.prose-split { display:grid; grid-template-columns:.77fr 1.23fr; gap:10%; }
.prose-split h2 { max-width:440px; }
.rich-copy { color:#526273; font-size:1rem; line-height:1.9; }
.rich-copy p { margin-bottom:22px; }
.rich-copy h2 { color:var(--navy); font-size:1.8rem; margin:39px 0 13px; }
.rich-copy h2:first-child { margin-top:0; }
.rich-copy strong { color:var(--navy); }
.rich-copy a:not(.text-link) { font-weight:650; }
.principles-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.principles-grid article { background:var(--paper); padding:35px; border-top:3px solid var(--teal); }
.principle-number { font-family:var(--serif); color:#77bcb0; font-size:2.2rem; }
.principles-grid h3 { margin:20px 0 11px; color:var(--navy); }
.principles-grid p { color:var(--muted); font-size:.93rem; margin:0; }
.columns-two { display:grid; grid-template-columns:1fr 1fr; gap:10%; }
.columns-two h2 { margin-bottom:19px; }
.claimant-types { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.claimant-types > div { border-top:1px solid var(--line); padding-top:21px; }
.claimant-types strong { display:block; font-size:1rem; color:var(--navy); margin:8px 0; }
.claimant-types p { font-size:.86rem; color:var(--muted); margin:0; }
.type-check { font-size:.9rem; border:1px solid #bbdbcf; width:25px; height:25px; border-radius:50%; color:var(--teal); display:grid; place-items:center; }
.sourced-section { padding-top:20px; }
.resource-panel { background:#e9f2ed; padding:60px 65px; display:grid; grid-template-columns:1.1fr .9fr; gap:8%; align-items:center; }
.resource-panel h2 { color:var(--navy); }
.resource-panel p { color:var(--muted); margin:0; }
.inline-links { display:flex; flex-direction:column; gap:14px; }
.inline-links a { font-weight:720; text-decoration:none; border-bottom:1px solid rgba(25,119,110,.3); padding-bottom:11px; }
.infographic .info-graphic { position:relative; display:grid; place-items:center; width:175px; height:175px; }
.i-ring { display:block; position:absolute; border:1px solid #73999d; border-radius:50%; }
.r1 { inset:0; }.r2 { inset:24px; }.info-center { font:400 5rem var(--serif); color:#c2e7d6; }
.learn-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:17px; margin-top:42px; }
.learn-grid article { padding:29px 26px; border:1px solid #e5eae7; background:white; min-height:236px; }
.card-glyph { width:44px; height:44px; border:1px solid #b8d8cd; display:grid; place-items:center; font:500 1.5rem var(--serif); color:var(--teal); }
.learn-grid h3 { color:var(--navy); font-size:1.03rem; margin:21px 0 8px; }
.learn-grid p { color:var(--muted); font-size:.88rem; line-height:1.75; margin:0; }
.timeline { border-top:1px solid var(--line); }
.timeline-item { display:grid; grid-template-columns:48px 1fr; gap:20px; padding:22px 0; border-bottom:1px solid var(--line); }
.timeline-item > span { width:35px; height:35px; border-radius:50%; background:#e5f2eb; color:var(--teal-deep); font-weight:700; display:grid; place-items:center; font-size:.85rem; }
.timeline-item h3 { color:var(--navy); font-size:1.06rem; margin:0 0 6px; }
.timeline-item p { color:var(--muted); font-size:.91rem; margin:0; }
.comparison-section { background:#f6f7f3; }
.comparison-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; margin-top:40px; }
.compare-card { border:1px solid var(--line); background:white; padding:38px; display:flex; flex-direction:column; }
.compare-card.featured { border-top:4px solid var(--teal); }
.compare-tag { color:var(--teal-deep); font-size:.69rem; font-weight:800; letter-spacing:.16em; }
.compare-card h3 { margin:18px 0; font:500 1.6rem var(--serif); color:var(--navy); }
.compare-cost { font:500 3.5rem var(--serif); color:var(--navy); margin-bottom:12px; line-height:1.3; }
.compare-cost small { font:650 .83rem var(--sans); color:var(--muted); }
.compare-card ul { margin:5px 0 28px; padding-left:18px; color:var(--muted); }
.compare-card li { padding:4px 0; }
.compare-card .button { margin-top:auto; align-self:flex-start; }
.resources-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:9%; }
.source-links { border-top:1px solid var(--line); }
.source-links a { display:grid; grid-template-columns:35px 1fr 22px; gap:16px; padding:22px 0; border-bottom:1px solid var(--line); color:var(--ink); align-items:center; text-decoration:none; }
.source-links a:hover strong { color:var(--teal); }
.source-links a > span { color:var(--teal); font-weight:730; font-size:.8rem; }
.source-links strong { display:block; font-size:.96rem; color:var(--navy); }
.source-links small { display:block; color:var(--muted); font-size:.82rem; margin-top:4px; }
.source-links b { color:var(--teal); font-weight:500; }

/* Contact */
.contact-page-section { background:var(--cream); }
.contact-layout { display:grid; grid-template-columns:.82fr 1.18fr; gap:10%; align-items:start; }
.contact-info h2 { font-size:2.7rem; color:var(--navy); margin-bottom:15px; }
.contact-info .muted { margin-bottom:33px; }
.contact-lines { border-top:1px solid #d6dfd9; }
.contact-lines > div { padding:21px 0; border-bottom:1px solid #d6dfd9; }
.contact-label { display:block; color:var(--teal-deep); font-weight:750; font-size:.68rem; letter-spacing:.17em; margin-bottom:7px; }
.contact-lines a, .contact-lines strong { display:inline-block; font-size:1.09rem; font-weight:670; text-decoration:none; color:var(--navy); overflow-wrap:anywhere; }
.contact-lines a:hover { color:var(--teal); }
.contact-reassurance { border-left:3px solid var(--teal); padding:15px 20px; background:#e9f2eb; margin-top:32px; }
.contact-reassurance strong { color:var(--navy); font-size:.93rem; }
.contact-reassurance p { font-size:.87rem; line-height:1.75; color:var(--muted); margin:6px 0 0; }
.form-card { background:#fff; border:1px solid #e6e8e4; box-shadow:0 18px 50px rgba(12,30,44,.05); padding:clamp(26px,3.7vw,52px); }
.form-intro h2 { font-size:2.35rem; margin:0 0 8px; }
.form-intro p { color:var(--muted); font-size:.92rem; max-width:530px; margin-bottom:30px; }
.field-row { display:grid; grid-template-columns:1fr 1fr; gap:17px; }
.field { margin-bottom:19px; }
.field label { display:block; font-weight:720; color:var(--navy); font-size:.82rem; margin-bottom:8px; }
.field label span { color:var(--teal-deep); }
.field label small { font-weight:450; color:#647482; }
.field input, .field select, .field textarea { border:1px solid #ced9d7; border-radius:4px; padding:11px 13px; width:100%; background:#fff; color:var(--ink); min-height:46px; font-size:.89rem; }
.field input::placeholder, .field textarea::placeholder { color:#8695a0; }
.field textarea { min-height:132px; resize:vertical; line-height:1.65; }
.field input:focus, .field select:focus, .field textarea:focus { border-color:var(--teal); outline:2px solid #b4e1d4; outline-offset:1px; }
.field :invalid:not(:placeholder-shown) { border-color:#b04747; }
.form-privacy { font-size:.78rem; line-height:1.7; color:var(--muted); }
.form-submit { margin-top:5px; }
.form-status { margin:14px 0 0; color:var(--teal-deep); font-size:.86rem; }
.form-fallback { font-size:.78rem; color:var(--muted); padding-top:15px; border-top:1px solid var(--line); margin:20px 0 0; }
.contact-faq { background:#fff; text-align:center; }
.small-centered { max-width:720px; margin-inline:auto; }
.small-centered h2 { margin:0 0 15px; }
.small-centered p { color:var(--muted); margin-bottom:27px; }
.inline-links.center { flex-direction:row; justify-content:center; flex-wrap:wrap; gap:25px; }

/* Legal */
.legal-heading { background:var(--navy); color:white; padding:80px 0 60px; }
.legal-heading h1 { font-size:clamp(3rem,5.2vw,4.4rem); color:white; margin-bottom:15px; }
.legal-heading p { color:#c1d1d7; }
.legal-heading .eyebrow { color:#a6dbc9; }
.legal-content { padding:62px 0 110px; }
.legal-content h2 { font:550 1.65rem var(--serif); }

/* Footer */
.site-footer { color:#e0e9ee; background:#112238; }
.footer-top { display:grid; grid-template-columns:1.6fr .72fr 1.12fr 1.2fr; gap:5%; padding:65px 0 50px; }
.footer-brand { color:white; font:600 1.9rem var(--serif); letter-spacing:-.035em; line-height:1.1; margin-bottom:22px; }
.footer-dot { color:#77c9b0; }
.footer-about p { color:#b9cbd4; font-size:.85rem; margin:0 0 14px; max-width:320px; line-height:1.8; }
.footer-about .footer-independence { color:#90a8b5; font-size:.76rem; line-height:1.65; }
.footer-links { display:flex; flex-direction:column; gap:11px; align-items:flex-start; }
.footer-links h2 { font:750 .71rem var(--sans); letter-spacing:.15em; text-transform:uppercase; color:#9ed0bf; margin:2px 0 14px; }
.footer-links a,.footer-links span { font-size:.82rem; line-height:1.7; text-decoration:none; color:#c7d6df; overflow-wrap:anywhere; }
.footer-links a:hover { color:white; text-decoration:underline; }
.footer-notice { background:rgba(255,255,255,.06); padding:17px 22px; color:#c5d5dc; font-size:.78rem; line-height:1.75; }
.footer-notice a { color:#a8e6d1; }
.footer-bottom { display:flex; justify-content:space-between; align-items:center; gap:25px; padding:26px 0; font-size:.72rem; color:#96b0be; }
.footer-bottom > div { display:flex; flex-wrap:wrap; gap:22px; }
.footer-bottom a { color:#b8cbd4; text-decoration:none; }
.footer-bottom a:hover { color:white; }

/* Responsive adjustments */
@media (max-width:1120px) {
 .header-inner { gap:10px; }
 .site-nav { gap:16px; }
 .site-nav a:not(.button) { font-size:.76rem; }
 .brand-type strong { font-size:1.21rem; }
 .brand-type small { font-size:.61rem; }
 .hero-grid { gap:4%; }
 .footer-top { gap:3%; }
}
@media (max-width:940px) {
 .container { width:min(calc(100% - 48px),var(--container)); }
 .menu-toggle { display:flex; }
 .site-nav { display:none; position:absolute; top:100%; left:0; right:0; padding:16px 24px 25px; z-index:250; background:var(--paper); flex-direction:column; align-items:stretch; gap:0; box-shadow:0 25px 25px rgba(0,0,0,.1); }
 .site-nav.is-open { display:flex; }
 .site-nav a:not(.button) { padding:13px 5px; font-size:1rem; border-bottom:1px solid var(--line); }
 .site-nav a[aria-current="page"]:after { display:none; }
 .nav-cta { margin:20px 0 0; align-self:flex-start; }
 .hero-grid { min-height:unset; gap:35px; padding:60px 0 70px; }
 .hero h1 { font-size:clamp(3.15rem,6vw,4.7rem); }
 .hero-art { min-height:500px; }
 .hero-art-inner { padding:30px 30px 42px; }
 .hero-seal { margin-top:48px; }
 .art-signature { padding-top:16px; }
 .footer-top { grid-template-columns:1.4fr 1fr; gap:45px 12%; }
 .faq-grid { gap:6%; }
 .contact-layout { gap:5%; }
 .contact-info h2 { font-size:2.1rem; }
 .field-row { grid-template-columns:1fr; gap:0; }
}
@media (max-width:720px) {
 .section { padding:72px 0; }
 h1 { font-size:clamp(3.05rem,10vw,4.2rem); }
 h2 { font-size:clamp(2.05rem,7.6vw,2.95rem); }
 .hero-grid { grid-template-columns:1fr; }
 .hero-copy { padding-top:5px; }
 .hero h1 { font-size:clamp(3.2rem,9vw,5rem); }
 .hero-lead { max-width:610px; }
 .hero-art { min-height:500px; max-width:600px; width:100%; margin-inline:auto; }
 .hero-art h2 { font-size:clamp(2.5rem,6.3vw,3.2rem); }
 .assurance-grid { grid-template-columns:1fr; padding:14px 0; }
 .assurance-grid > div { min-height:44px; justify-content:flex-start; font-size:.85rem; }
 .assurance-grid > div + div { border-left:0; }
 .contacted-grid,.property-layout,.faq-grid,.prose-split,.columns-two,.resources-grid,.contact-layout { grid-template-columns:1fr; gap:40px; }
 .contacted-feature h2 { max-width:none; }
 .section-top { align-items:flex-start; flex-direction:column; }
 .process-cards { grid-template-columns:1fr; }
 .process-card { min-height:unset; padding:26px; }
 .process-icon { margin:20px 0 13px; }
 .fee-section { padding-top:20px; }
 .fee-panel { grid-template-columns:1fr; gap:35px; padding:40px 30px; }
 .fee-right { padding:25px 0 0; border-left:0; border-top:1px solid rgba(255,255,255,.2); }
 .percentage { font-size:6rem; }
 .principles-grid { grid-template-columns:1fr; }
 .principles-grid article { padding:27px; }
 .page-hero-inner { grid-template-columns:1fr; padding-block:55px 60px; gap:33px; }
 .page-hero-art { width:100%; min-height:200px; border-radius:10px; flex-direction:row; gap:35px; }
 .page-hero-art:after { width:230px; height:230px; top:-30px; left:30px; }
 .large-monogram { font-size:6rem; }
 .art-caption { text-align:left; margin-top:0; }
 .resource-panel { grid-template-columns:1fr; padding:35px 27px; gap:24px; }
 .learn-grid { grid-template-columns:1fr 1fr; }
 .comparison-grid { grid-template-columns:1fr; }
 .closing-inner { grid-template-columns:1fr; gap:25px; }
 .closing-inner .cta-tel { display:block; margin:16px 0 0; }
 .contact-info { max-width:590px; }
 .form-card { padding:27px; }
 .legal-content { padding:45px 0 75px; }
}
@media (max-width:480px) {
 .container,.narrow { width:calc(100% - 34px); }
 .utility-inner span:not(.phone-icon) { display:none; }
 .utility-inner { justify-content:flex-end; }
 .header-inner { min-height:74px; }
 .brand-mark { width:36px; height:38px; }
 .brand-mark svg { width:31px; }
 .brand-type strong { font-size:1.04rem; }
 .brand-type small { font-size:.52rem; white-space:normal; }
 .hero-grid { padding:44px 0 50px; }
 .hero h1 { font-size:clamp(2.7rem,11.8vw,3.6rem); }
 .kicker-line { font-size:.59rem; letter-spacing:.10em; margin-bottom:22px; }
 .hero-lead { font-size:.97rem; }
 .hero-actions { align-items:flex-start; flex-direction:column; gap:21px; margin-bottom:37px; }
 .hero-facts span { font-size:.66rem; }
 .hero-facts div + div { padding-left:12px; }
 .hero-facts strong { font-size:1.45rem; }
 .hero-art { min-height:485px; }
 .hero-art-inner { padding:27px 24px 42px; }
 .hero-art h2 { font-size:2.28rem; }
 .hero-small-tag { font-size:.6rem; }
 .section { padding:61px 0; }
 .property-list { grid-template-columns:1fr; }
 .property-list div { min-height:73px; }
 .fee-panel { padding:32px 23px; }
 .faq-list summary { font-size:.92rem; }
 .page-hero h1 { font-size:clamp(3rem,11vw,3.8rem); }
 .page-hero-art { min-height:180px; }
 .large-monogram { font-size:5rem; }
 .learn-grid { grid-template-columns:1fr; }
 .compare-card { padding:27px; }
 .resource-panel { padding:28px 23px; }
 .claimant-types { grid-template-columns:1fr; }
 .form-card { padding:24px 20px; }
 .footer-top { grid-template-columns:1fr; gap:30px; padding:52px 0 37px; }
 .footer-links h2 { margin-bottom:5px; }
 .footer-bottom { align-items:flex-start; flex-direction:column; gap:15px; }
}
@media (prefers-reduced-motion: reduce) { *, *:before, *:after { scroll-behavior:auto!important; transition:none!important; animation:none!important; } }
@media print { .site-nav,.menu-toggle,.button,.utility-bar { display:none!important; } .site-footer { color:black; background:white; } a { color:black; } }

/* Contact form delivery feedback and low-friction spam trap */
.trap-field {position:absolute!important;width:1px;height:1px;left:-9999px;overflow:hidden;opacity:0;pointer-events:none}
.form-status.is-error {color:#a12b2b}
.form-status.is-success {color:#17695d;font-weight:600}
.form-submit:disabled {opacity:.65;cursor:wait}
