:root {
  --color-ink: #1a1a1a;
  --color-paper: #faf8f5;
  --color-card: #ffffff;
  --color-leather: #6b3f2a;
  --color-leather-dark: #4a2b1c;
  --color-accent: #c9a15a;
  --color-mat: #2c2c2c;
  --color-muted: #5d5d5d;
  --color-line: #e5ded3;
  --font-head: Georgia, 'Times New Roman', serif;
  --font-body: system-ui, -apple-system, 'Segoe UI', sans-serif;
  --space-xs: .5rem;
  --space-sm: 1rem;
  --space-md: 2rem;
  --space-lg: 4rem;
  --space-xl: 6rem;
  --radius: 8px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font-body);font-size:1rem;line-height:1.65;color:var(--color-ink);background:var(--color-paper)}
a{color:var(--color-leather)}
a:focus-visible,button:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px}
.container{width:min(1100px,calc(100% - 2rem));margin:0 auto}
.narrow{width:min(760px,calc(100% - 2rem));margin:0 auto}
header{background:var(--color-mat);color:white;padding:var(--space-sm) 0}
header .container{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-sm)}
.brand{display:flex;flex-direction:column}
.brand a{color:white;text-decoration:none;font-family:var(--font-head);font-size:1.4rem}
.brand small{color:#bbb;font-size:.75rem;letter-spacing:.03em}
nav ul{display:flex;gap:var(--space-sm);list-style:none;flex-wrap:wrap}
nav a{color:#ddd;text-decoration:none;font-size:.95rem;font-weight:600}
nav a:hover,nav a[aria-current='page']{color:white}
.nav-toggle{display:none;background:none;border:1px solid #666;color:white;padding:.45rem .75rem;border-radius:4px;font-size:.95rem}
.hero,.page-hero{background:linear-gradient(180deg,var(--color-mat) 0%,#1f1f1f 100%);color:white;text-align:center}
.hero{padding:var(--space-xl) 0}
.page-hero{padding:var(--space-lg) 0}
.eyebrow{color:var(--color-accent);font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:var(--space-xs)}
h1,h2,h3{font-family:var(--font-head);line-height:1.25}
.hero h1{font-size:clamp(2rem,4vw,2.75rem);margin-bottom:var(--space-sm)}
.page-hero h1{font-size:clamp(2rem,4vw,2.65rem);margin-bottom:var(--space-sm)}
.lede{font-size:1.12rem;color:#ddd;max-width:720px;margin:0 auto var(--space-md)}
.cta-row{display:flex;gap:var(--space-sm);justify-content:center;flex-wrap:wrap}
.cta{display:inline-block;padding:.85rem 1.65rem;border-radius:4px;text-decoration:none;font-weight:700;font-size:1rem}
.cta-primary{background:var(--color-accent);color:var(--color-mat)}
.cta-primary:hover{opacity:.9}
.cta-secondary{background:transparent;color:white;border:1px solid #666}
.cta-secondary:hover{border-color:white}
section{padding:var(--space-lg) 0}
section h2{font-size:clamp(1.55rem,3vw,1.9rem);margin-bottom:var(--space-sm)}
.section-heading{text-align:center}
.section-lede{text-align:center;max-width:720px;margin:0 auto var(--space-md);color:var(--color-muted);font-size:1.05rem}
.services-grid{display:grid;grid-template-columns:1fr;gap:var(--space-md);margin-top:var(--space-md)}
.service-card{display:flex;flex-direction:column;background:var(--color-card);padding:var(--space-md);border-radius:var(--radius);border:1px solid var(--color-line);text-decoration:none;color:inherit;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease;min-height:210px}
.service-card:hover{transform:translateY(-2px);border-color:var(--color-accent);box-shadow:0 7px 18px rgba(0,0,0,.06)}
.service-card h3{color:var(--color-leather);margin-bottom:.5rem;font-size:1.18rem}
.service-card p{color:#444;margin-bottom:.75rem}
.explore{color:#a87420;font-weight:700;font-size:.9rem;margin-top:auto}
.content-section:nth-of-type(even){background:#fff}
.content-section h2{margin-bottom:var(--space-sm)}
.content-section p+p{margin-top:var(--space-sm)}
.content-section ul{margin:var(--space-sm) 0 0 1.25rem}
.content-section li+li{margin-top:.45rem}
.two-column{display:grid;grid-template-columns:1fr;gap:var(--space-md);align-items:start}
.panel{background:white;border:1px solid var(--color-line);border-radius:var(--radius);padding:var(--space-md)}
.notice{border-left:5px solid var(--color-accent);background:#fff9ec;padding:1.15rem 1.25rem;margin-top:var(--space-md)}
.boundary{background:var(--color-mat);color:white;text-align:center;padding:1.15rem 1.25rem;border-radius:var(--radius);font-weight:800;margin-top:var(--space-md)}
.fee-band{background:var(--color-leather);color:white;text-align:center;padding:var(--space-md) 0}
.fee-number{font-family:var(--font-head);font-size:2.5rem;display:block}
.fee-band p{max-width:660px;margin:var(--space-xs) auto 0;color:#f0e4d4}
.partner-strip{background:var(--color-paper);border-top:1px solid var(--color-line);border-bottom:1px solid var(--color-line);padding:.75rem 0;text-align:center}
.partner-strip img{display:block;width:min(92vw,420px);height:auto;margin:0 auto}
.partner-fallback{width:min(92vw,420px);min-height:82px;margin:0 auto;border:1px solid #555;background:#111;color:white;display:flex;align-items:center;justify-content:center;padding:1rem;font-weight:700}
.related-links{display:grid;grid-template-columns:1fr;gap:.65rem;list-style:none;margin-top:var(--space-sm)}
.related-links a{display:block;background:white;border:1px solid var(--color-line);border-radius:6px;padding:.75rem 1rem;text-decoration:none}
.service-area{background:#f1ece5}
.contact-section{background:var(--color-mat);color:white;text-align:center}
.contact-section .section-lede{color:#bbb}
.privacy-note{max-width:600px;margin:var(--space-md) auto 0;color:#aaa;font-size:.9rem}
footer{background:#141414;color:#999;padding:var(--space-md) 0;font-size:.85rem}
.footer-grid{display:grid;gap:var(--space-sm);text-align:center}
footer a{color:#bbb}
.fine-print{border-top:1px solid #2a2a2a;margin-top:var(--space-sm);padding-top:var(--space-sm);font-size:.8rem;color:#777}
.skip-link{position:absolute;left:-9999px;top:auto}
.skip-link:focus{left:1rem;top:1rem;background:white;color:black;padding:.75rem;z-index:999}
@media (min-width:640px){.services-grid{grid-template-columns:repeat(2,1fr)}.related-links{grid-template-columns:repeat(2,1fr)}}
@media (min-width:768px){.footer-grid{grid-template-columns:repeat(3,1fr);text-align:left}.two-column{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1000px){.services-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:640px){.nav-toggle{display:block}nav{width:100%}nav ul{display:none;flex-direction:column;width:100%;padding-top:var(--space-xs)}nav ul.open{display:flex}.hero{padding:var(--space-lg) 0}.page-hero{padding:3rem 0}section{padding:3rem 0}}
