/* Service pages - shares the design tokens of the one-page site.
   Kept in one external file rather than duplicated inline across 12 pages;
   'self' stylesheets are allowed by the site CSP. */
*{box-sizing:border-box;margin:0;padding:0}
:root{
  --navy:#1B2D4F; --navy-dark:#0f1e36; --crimson:#B22234; --crimson-dark:#8a1a27;
  --cream:#fafaf8; --white:#fff; --text:#1a1a1a; --muted:#5c5c5c;
  --border:#ddd8cc; --gold:#c49a3c;
}
html{scroll-behavior:smooth}
body{font-family:'Source Sans 3',sans-serif;background:var(--cream);color:var(--text);
     font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}
a{color:var(--navy);text-decoration:none}
a:hover{color:var(--crimson)}
img{max-width:100%;height:auto;display:block}

nav{background:var(--navy-dark);display:flex;align-items:center;justify-content:space-between;
    padding:0 1.25rem;height:62px;position:sticky;top:0;z-index:200;gap:1rem}
.nav-left{display:flex;align-items:center;gap:10px;min-width:0}
.nav-logo-img{height:34px;width:auto}
.nav-home{color:#c8d8e8;font-size:0.78rem;font-weight:600;white-space:nowrap}
.nav-home:hover{color:var(--gold)}
.nav-right{display:flex;align-items:center;gap:10px}
.portal-btn{background:var(--gold);color:var(--navy-dark);padding:5px 10px;border-radius:3px;
            font-size:0.75rem;font-weight:600;white-space:nowrap}
.portal-btn:hover{background:#d4aa4c;color:var(--navy-dark)}

.page-hero{background:var(--navy);padding:2.25rem 1.25rem 2.5rem;color:var(--white)}
.page-hero::after{content:'';display:block;height:4px;background:var(--crimson);
                  margin:2.5rem -1.25rem -2.5rem}
.wrap{max-width:820px;margin:0 auto}
.crumb{font-size:0.72rem;letter-spacing:0.1em;text-transform:uppercase;color:#8aadcc;margin-bottom:0.7rem}
.crumb a{color:#8aadcc}
.crumb a:hover{color:var(--gold)}
h1{font-family:'Playfair Display',serif;font-size:1.85rem;line-height:1.2;font-weight:700;
   margin-bottom:0.6rem;color:var(--white)}
.lede{color:#c8d8e8;font-size:1rem;font-weight:300;line-height:1.65}

main{padding:2.75rem 1.25rem}
section{margin-bottom:2.5rem}
h2{font-family:'Playfair Display',serif;font-size:1.3rem;color:var(--navy);line-height:1.25;
   margin-bottom:0.35rem;font-weight:700}
.h2-rule{width:42px;height:3px;background:var(--gold);margin-bottom:1rem}
h3{font-family:'Source Sans 3',sans-serif;font-size:0.95rem;color:var(--navy);font-weight:600;
   margin:1.2rem 0 0.3rem}
p{margin-bottom:0.85rem;font-size:0.95rem}
ul,ol{margin:0 0 0.95rem 1.15rem}
li{margin-bottom:0.4rem;font-size:0.95rem}
strong{font-weight:600}

.callout{border-left:3px solid var(--crimson);background:var(--white);padding:0.9rem 1.1rem;
         margin:1.1rem 0;border-radius:0 3px 3px 0}
.callout .lbl{font-size:0.68rem;letter-spacing:0.13em;text-transform:uppercase;
              color:var(--crimson);font-weight:600;margin-bottom:0.3rem}
.callout p:last-child{margin-bottom:0}
.callout.warn{border-left-color:var(--gold)}
.callout.warn .lbl{color:#8a6a1c}

.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:0.85rem;margin:1.2rem 0}
.fact{background:var(--white);border:1px solid var(--border);border-radius:4px;padding:0.85rem 0.95rem}
.fact .k{font-size:0.66rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--crimson);
         font-weight:600;margin-bottom:0.25rem}
.fact .v{font-family:'Playfair Display',serif;font-size:1.05rem;color:var(--navy);line-height:1.3}
.fact .n{font-size:0.78rem;color:var(--muted);margin-top:0.2rem;line-height:1.45}

.faq details{border-bottom:1px solid var(--border);padding:0.75rem 0}
.faq summary{cursor:pointer;font-weight:600;font-size:0.93rem;color:var(--navy);list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before{content:'+';color:var(--crimson);font-weight:700;margin-right:0.5rem}
.faq details[open] summary::before{content:'\2013'}
.faq details p{margin:0.55rem 0 0;color:var(--muted)}

.related{background:var(--white);border:1px solid var(--border);border-radius:4px;padding:1.1rem}
.related ul{margin:0.5rem 0 0 1.15rem}

.cta{background:var(--navy);color:var(--white);border-radius:4px;padding:1.5rem 1.35rem}
.cta h2{color:var(--white)}
.cta p{color:#c8d8e8}
.cta .h2-rule{background:var(--gold)}
.btn{display:inline-block;padding:0.65rem 1.4rem;border-radius:3px;font-size:0.88rem;
     font-weight:600;letter-spacing:0.03em;cursor:pointer;border:none;transition:all 0.2s}
.btn-crimson{background:var(--crimson);color:var(--white)}
.btn-crimson:hover{background:var(--crimson-dark);color:var(--white)}
.btn-wa{background:#25D366;color:var(--white);display:inline-flex;align-items:center;gap:7px}
.btn-wa:hover{background:#1da851;color:var(--white)}
.cta-btns{display:flex;gap:0.7rem;flex-wrap:wrap;margin-top:1rem}

.form-note{font-size:0.75rem;color:#8aadcc;line-height:1.5;margin-top:0.9rem;margin-bottom:0}

footer{background:var(--navy-dark);color:#7a9ab8;padding:2rem 1.25rem;font-size:0.78rem}
footer a{color:#8aadcc}
footer a:hover{color:var(--gold)}
.disclaimer{border-top:1px solid rgba(255,255,255,0.12);margin-top:1.1rem;padding-top:1.1rem;
            font-size:0.72rem;line-height:1.6;color:#6a8298}

@media(min-width:760px){
  .page-hero{padding:3rem 2rem 3.25rem}
  .page-hero::after{margin:3.25rem -2rem -3.25rem}
  main{padding:3.5rem 2rem}
  h1{font-size:2.4rem}
  h2{font-size:1.5rem}
  nav{padding:0 2rem}
  footer{padding:2.5rem 2rem}
}
