:root{
  --burgundy:#5F010F;--burgundy-dark:#4d000c;--offwhite:#F7F4EE;--cream:#FCFAF6;
  --charcoal:#292727;--text:#50565d;--warmgray:#70757b;--line:#ddd8d0;--white:#fff;
  --max:1180px;--shadow:0 10px 30px rgba(41,39,39,.06)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--offwhite);color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.55;font-size:15px}img{max-width:100%;display:block}a{color:inherit}.container{width:min(calc(100% - 40px),var(--max));margin:auto}.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;z-index:9999;background:var(--burgundy);color:#fff;padding:10px 14px}
.site-header{height:74px;position:sticky;top:0;z-index:100;background:rgba(252,250,246,.98);border-bottom:1px solid #ebe7e1}.header-inner{height:74px;display:flex;align-items:center;justify-content:space-between}.logo{width:236px;height:auto}.nav-toggle{display:flex;flex-direction:column;gap:5px;background:none;border:0;padding:9px;cursor:pointer}.nav-toggle span{display:block;width:24px;height:2px;background:var(--burgundy)}.nav{display:none}.nav.open{display:block;position:absolute;left:0;right:0;top:74px;background:var(--cream);padding:8px 20px 14px;border-bottom:1px solid var(--line);box-shadow:var(--shadow)}.nav a{display:block;text-decoration:none;padding:12px 6px;border-bottom:1px solid #e8e3dc;font-size:14px}.nav a.active{color:var(--burgundy);font-weight:700}.nav a:last-child{border:0}
.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:11px;color:#53606b;margin:0 0 12px}.site-header .nav a.active:after{display:none}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:var(--burgundy);line-height:1.12;margin:0 0 20px}h1{font-size:clamp(38px,5vw,58px)}h2{font-size:clamp(31px,4vw,43px)}h3{font-size:23px}p{margin:0 0 17px}.lead{font-size:16px;line-height:1.62;color:#555e66}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-width:245px;min-height:42px;padding:10px 22px;background:var(--burgundy);color:#fff;text-decoration:none;border-radius:3px;font-weight:700;font-size:13px;transition:.2s}.btn:hover,.btn:focus{background:var(--burgundy-dark);transform:translateY(-1px)}.btn.secondary{background:transparent;color:var(--burgundy);border:1px solid var(--burgundy)}
/* Home hero: deliberately mirrors the supplied design reference */
.hero{position:relative;min-height:388px;display:flex;align-items:center;overflow:hidden;background:var(--cream)}.hero-bg{position:absolute;inset:0;background-image:url('../assets/hero-reference.jpg');background-repeat:no-repeat;background-size:51.2% auto;background-position:right center;opacity:1}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(252,250,246,.99) 0%,rgba(252,250,246,.96) 37%,rgba(252,250,246,.72) 55%,rgba(252,250,246,.10) 78%,rgba(252,250,246,0) 100%);z-index:1}.hero-content{position:relative;z-index:2;width:100%;padding:44px 0;max-width:590px}.hero h1{font-size:clamp(39px,5.2vw,57px);margin-bottom:9px}.hero h1 span{display:block;font-size:.43em;margin-top:12px}.hero .lead{max-width:520px;margin-bottom:18px}.hero .actions{display:flex;gap:14px;align-items:center;margin-top:15px}.hero-note{margin-top:12px;color:#59616a;font-size:13px}.hero-note:before{content:'☎';color:var(--burgundy);font-size:20px;margin-right:12px;vertical-align:-2px}.hero-note strong{color:var(--burgundy)}.hero .emergency{display:none}
.service-grid{display:grid;gap:0;background:var(--line);border-bottom:1px solid var(--line)}.service-card{min-height:230px;background:var(--cream);padding:27px 28px 23px;text-align:center;text-decoration:none;border-right:1px solid var(--line);transition:.2s}.service-card:last-child{border-right:0}.service-card:hover{background:#fff}.service-icon{width:44px;height:44px;margin:0 auto 17px;border:2px solid var(--burgundy);color:var(--burgundy);display:grid;place-items:center;font-family:Georgia,serif;font-size:23px}.service-card h3{font-size:21px;color:#14202a;margin-bottom:12px}.service-card p{max-width:205px;margin:0 auto 14px;font-size:13px;line-height:1.55;color:#59616a}.arrow{color:var(--burgundy);font-size:13px;font-weight:700}
.section{padding:66px 0;background:#fff}.section.alt{background:var(--cream)}.two-col{display:grid;gap:42px}.section .lead{max-width:620px}.rule{width:38px;height:2px;background:var(--burgundy);margin:27px 0}.profile-grid{display:grid;gap:20px}.profile-card{background:transparent;box-shadow:none}.profile-card img{width:100%;aspect-ratio:1/1.15;object-fit:cover;object-position:center top}.profile-card .body{padding:10px 0 0}.profile-card h3{font-size:18px;margin-bottom:2px}.role{color:#687078;font-size:13px;line-height:1.55;margin:0}.band{position:relative;background:url('../assets/paragraph-bg.jpg') center/cover no-repeat}.band:before{content:"";position:absolute;inset:0;background:rgba(247,244,238,.78)}.band .container{position:relative;padding:36px 0;text-align:center}.band h2{font-size:31px;font-style:italic;color:#17232c;margin-bottom:0}.band .btn{margin-top:18px}
.locations{display:grid;gap:20px}.location-card{background:#fff;border:1px solid var(--line);padding:24px}.location-card h3{font-size:22px;margin-bottom:9px}.contact-link{color:var(--burgundy);font-weight:700;text-decoration:none}.content{padding:62px 0}.page-hero{padding:62px 0 48px;background:var(--cream);border-bottom:1px solid var(--line)}.page-hero h1{max-width:800px}.cards{display:grid;gap:18px}.info-card{background:#fff;padding:24px;border-left:3px solid var(--burgundy);box-shadow:var(--shadow)}.topic-list{display:grid;gap:13px;padding:0 0 0 22px;list-style:disc}.topic-list li{background:transparent;padding:0;border-left:0}.topic-list li::marker{color:var(--burgundy);font-size:.9em}.legal h2{font-size:28px;margin-top:38px}.legal h3{font-size:21px;margin-top:28px}.legal p,.legal li{font-size:14px;line-height:1.7}.legal ul{padding-left:20px}.legal .note{padding:15px;background:#fff7f7;border-left:3px solid var(--burgundy)}
.site-footer{background:var(--cream);color:#58616a;padding:38px 0 0;border-top:1px solid var(--line)}.footer-grid{display:grid;gap:28px}.site-footer h3{font-family:Arial,Helvetica,sans-serif;text-transform:uppercase;letter-spacing:.16em;font-size:11px;color:#4f5962;margin-bottom:14px}.site-footer p{font-size:12px;line-height:1.65}.site-footer a{text-decoration:none}.site-footer a:hover{color:var(--burgundy)}.footer-bottom{margin-top:28px;background:var(--burgundy);padding:14px 0;color:#fff;font-size:11px}.footer-bottom-inner{display:flex;justify-content:center;align-items:center;gap:16px;flex-wrap:wrap}.toplink{color:#fff;text-decoration:none}
@media(min-width:700px){.container{width:min(calc(100% - 64px),var(--max))}.service-grid{grid-template-columns:repeat(2,1fr)}.two-col{grid-template-columns:1fr 1fr;gap:62px}.profile-grid{grid-template-columns:repeat(2,1fr)}.locations{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1.2fr 1fr 1fr}.section{padding:78px 0}}
@media(min-width:900px){.nav-toggle{display:none}.nav{display:flex;align-items:center;gap:4px}.nav a{border:0;padding:8px 11px;font-size:12px;position:relative}.nav a.active:after{content:"";display:block;position:absolute;left:11px;right:11px;bottom:0;height:2px;background:var(--burgundy)}.hero{min-height:388px}.hero-bg{background-size:51.2% auto;background-position:right center}.hero-content{padding:42px 0}.service-grid{grid-template-columns:repeat(4,1fr)}.two-col{gap:74px}.profile-card img{aspect-ratio:1/1.15}.section{padding:68px 0}.footer-grid{grid-template-columns:1.3fr 1fr 1fr}}
@media(max-width:699px){.logo{width:205px}.hero{min-height:560px}.hero-bg{background-position:64% center}.hero:after{background:linear-gradient(90deg,rgba(252,250,246,.99) 0%,rgba(252,250,246,.94) 62%,rgba(252,250,246,.45) 100%)}.hero-content{padding:58px 0 42px}.hero h1{font-size:42px}.hero h1 span{font-size:.5em}.hero .lead{font-size:15px}.hero .actions{flex-direction:column;align-items:stretch}.hero .btn{min-width:0;width:100%}.service-card{border-right:0;border-bottom:1px solid var(--line)}.profile-card img{aspect-ratio:1/1.12}.band h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Cookie-Consent */
.cookie-banner{position:fixed;left:16px;right:16px;bottom:16px;z-index:10000;background:#fff;border:1px solid var(--line);box-shadow:0 18px 55px rgba(41,39,39,.18);padding:24px;border-radius:6px;display:none}.cookie-banner.is-visible{display:block}.cookie-inner{max-width:1180px;margin:auto}.cookie-banner h2{font-size:27px;margin:0 0 9px;color:var(--burgundy)}.cookie-banner p{font-size:13px;line-height:1.6;margin:0 0 14px;color:#50565d;max-width:900px}.cookie-banner a{color:var(--burgundy);font-weight:700}.cookie-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.cookie-btn{appearance:none;border:1px solid var(--burgundy);background:#fff;color:var(--burgundy);min-height:42px;padding:10px 18px;border-radius:3px;font:700 13px Arial,Helvetica,sans-serif;cursor:pointer;flex:1 1 150px}.cookie-btn:hover,.cookie-btn:focus{outline:2px solid rgba(95,1,15,.2);outline-offset:2px}.cookie-btn.primary{background:var(--burgundy);color:#fff}.cookie-btn.equal{background:#fff;color:var(--burgundy)}.cookie-settings{position:fixed;right:16px;bottom:16px;z-index:9998;display:none;border:1px solid var(--burgundy);background:#fff;color:var(--burgundy);border-radius:999px;padding:10px 15px;font:700 12px Arial,Helvetica,sans-serif;cursor:pointer;box-shadow:0 8px 24px rgba(41,39,39,.12)}.cookie-settings.is-visible{display:block}.cookie-dialog{position:fixed;inset:0;z-index:10001;background:rgba(41,39,39,.48);display:none;align-items:center;justify-content:center;padding:18px}.cookie-dialog.is-visible{display:flex}.cookie-panel{width:min(720px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:6px;box-shadow:0 22px 70px rgba(0,0,0,.24);padding:26px}.cookie-panel h2{font-size:29px;margin-bottom:10px}.cookie-panel>p{font-size:13px;color:#50565d}.cookie-category{border-top:1px solid var(--line);padding:17px 0}.cookie-category-head{display:flex;align-items:flex-start;gap:12px;justify-content:space-between}.cookie-category strong{display:block;color:#222;font-size:15px}.cookie-category p{font-size:12.5px;margin:5px 0 0;line-height:1.55;color:#626a71}.cookie-switch{flex:0 0 auto;display:flex;align-items:center;gap:8px;font-size:11px;color:#687078}.cookie-switch input{width:18px;height:18px;accent-color:var(--burgundy)}.cookie-panel-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}.cookie-panel-actions .cookie-btn{flex:1 1 180px}.cookie-version{font-size:11px;color:#777;margin-top:10px}.cookie-no-scroll{overflow:hidden}
@media(max-width:699px){.cookie-banner{left:10px;right:10px;bottom:10px;padding:18px}.cookie-banner h2{font-size:23px}.cookie-actions{flex-direction:column}.cookie-btn{width:100%;flex:auto}.cookie-settings{right:10px;bottom:10px}.cookie-dialog{padding:10px}.cookie-panel{padding:20px;max-height:92vh}.cookie-panel-actions{flex-direction:column}.cookie-panel-actions .cookie-btn{width:100%;flex:auto}}

/* Final homepage hero layout: full-width image with content arranged horizontally at the bottom */
@media(min-width:900px){
  .hero{
    min-height:560px;
    align-items:flex-end;
    background:var(--cream);
  }
  .hero-bg{
    inset:0;
    background-size:cover;
    background-position:center center;
  }
  .hero:after{
    background:
      linear-gradient(180deg,rgba(252,250,246,0) 38%,rgba(252,250,246,.08) 50%,rgba(252,250,246,.55) 67%,rgba(252,250,246,.93) 84%,rgba(252,250,246,.99) 100%),
      linear-gradient(90deg,rgba(252,250,246,.42) 0%,rgba(252,250,246,.12) 45%,rgba(252,250,246,0) 72%);
  }
  .hero-content{
    max-width:none;
    width:min(calc(100% - 64px),var(--max));
    margin:0 auto;
    padding:0 0 30px;
    display:grid;
    grid-template-columns:minmax(300px,1.25fr) minmax(300px,1fr) auto;
    grid-template-areas:
      "eyebrow eyebrow eyebrow"
      "title title title"
      "lead lead actions"
      "note note actions";
    column-gap:28px;
    align-items:end;
  }
  .hero-content .eyebrow{grid-area:eyebrow;margin-bottom:8px}
  .hero-content h1{
    grid-area:title;
    font-size:clamp(39px,4.1vw,53px);
    line-height:1.06;
    margin-bottom:10px;
    text-shadow:0 1px 1px rgba(255,255,255,.35);
  }
  .hero h1 span{display:inline;font-size:.48em;margin:0 0 0 24px;white-space:nowrap}
  .hero .lead{
    grid-area:lead;
    max-width:760px;
    margin:0;
    font-size:15px;
    line-height:1.5;
    color:#46525c;
  }
  .hero .actions{
    grid-area:actions;
    margin:0 0 2px;
    justify-self:end;
  }
  .hero-note{
    grid-area:note;
    margin:7px 0 0;
    font-size:12px;
  }
}

@media(max-width:899px){
  .hero{min-height:590px;align-items:flex-end}
  .hero-bg{background-size:cover;background-position:center center}
  .hero:after{background:linear-gradient(180deg,rgba(252,250,246,.04) 28%,rgba(252,250,246,.25) 48%,rgba(252,250,246,.9) 76%,rgba(252,250,246,.99) 100%)}
  .hero-content{padding:0 0 28px}
}

/* Corrected final hero: full-width image with bottom horizontal content */
@media(min-width:900px){
  .hero{
    position:relative;
    min-height:590px;
    display:flex;
    align-items:flex-end;
    overflow:hidden;
    background:var(--cream);
  }
  .hero-bg{
    position:absolute;
    inset:0;
    background-image:url('../assets/hero-wide-photo.jpg');
    background-repeat:no-repeat;
    background-size:cover;
    background-position:center center;
    opacity:1;
  }
  .hero:after{
    content:"";
    position:absolute;
    inset:0;
    z-index:1;
    background:linear-gradient(180deg,
      rgba(252,250,246,0) 34%,
      rgba(252,250,246,.03) 45%,
      rgba(252,250,246,.22) 57%,
      rgba(252,250,246,.78) 76%,
      rgba(252,250,246,.97) 91%,
      rgba(252,250,246,1) 100%);
  }
  .hero-content{
    position:relative;
    z-index:2;
    width:min(calc(100% - 64px),var(--max));
    max-width:none;
    margin:0 auto;
    padding:0 0 28px;
    display:grid;
    grid-template-columns:minmax(0,1.65fr) minmax(300px,.65fr);
    grid-template-areas:
      "eyebrow eyebrow"
      "title actions"
      "lead actions"
      "note actions";
    column-gap:42px;
    row-gap:0;
    align-items:end;
  }
  .hero-content .eyebrow{grid-area:eyebrow;margin:0 0 7px;color:#455f73}
  .hero-content h1{
    grid-area:title;
    margin:0 0 4px;
    max-width:100%;
    font-size:clamp(40px,3.45vw,56px);
    line-height:1.04;
    letter-spacing:-.01em;
    text-shadow:0 1px 2px rgba(255,255,255,.5);
  }
  .hero h1 span{
    display:block;
    font-size:.43em;
    line-height:1.2;
    margin-top:7px;
    white-space:normal;
  }
  .hero .lead{
    grid-area:lead;
    max-width:820px;
    margin:8px 0 0;
    font-size:15px;
    line-height:1.5;
    color:#42515e;
  }
  .hero .actions{
    grid-area:actions;
    align-self:end;
    justify-self:end;
    margin:0 0 31px;
  }
  .hero .actions .btn{min-width:260px}
  .hero-note{
    grid-area:note;
    justify-self:end;
    margin:9px 0 0;
    font-size:12.5px;
    color:#59616a;
    text-align:left;
  }
  .hero-note:before{font-size:19px;margin-right:9px}
}

@media(max-width:899px){
  .hero{
    min-height:620px;
    align-items:flex-end;
  }
  .hero-bg{
    background-image:url('../assets/hero-wide-photo.jpg');
    background-size:cover;
    background-position:center center;
  }
  .hero:after{
    background:linear-gradient(180deg,
      rgba(252,250,246,.02) 25%,
      rgba(252,250,246,.10) 40%,
      rgba(252,250,246,.52) 61%,
      rgba(252,250,246,.92) 79%,
      rgba(252,250,246,1) 100%);
  }
  .hero-content{
    padding:0 0 26px;
    max-width:none;
  }
  .hero h1{font-size:42px}
  .hero h1 span{font-size:.5em;margin-top:9px}
  .hero .lead{font-size:15px}
  .hero .actions{margin-top:17px}
  .hero .btn{width:100%;min-width:0}
  .hero-note{margin-top:11px}
}

/* Final hero version – based on the supplied paragraph-symbol image */
@media (min-width:900px){
  .hero{
    min-height:560px;
    height:560px;
    align-items:flex-end;
    background:var(--cream);
  }
  .hero-bg{
    inset:0;
    background-image:url('../assets/hero-symbols.jpg');
    background-size:cover;
    background-position:center center;
    background-repeat:no-repeat;
  }
  .hero:after{
    background:linear-gradient(180deg,
      rgba(252,250,246,0) 42%,
      rgba(252,250,246,.04) 52%,
      rgba(252,250,246,.22) 65%,
      rgba(252,250,246,.82) 82%,
      rgba(252,250,246,.98) 94%,
      rgba(252,250,246,1) 100%);
  }
  .hero-content{
    width:min(calc(100% - 64px),var(--max));
    max-width:none;
    margin:0 auto;
    padding:0 0 28px;
    display:grid;
    grid-template-columns:minmax(0,2.15fr) minmax(280px,1fr) minmax(285px,.9fr);
    grid-template-areas:
      "eyebrow eyebrow eyebrow"
      "title title actions"
      "lead lead actions"
      "note note actions";
    column-gap:34px;
    row-gap:0;
    align-items:end;
  }
  .hero-content .eyebrow{grid-area:eyebrow;margin:0 0 6px}
  .hero-content h1{
    grid-area:title;
    margin:0;
    font-size:clamp(40px,3.45vw,56px);
    line-height:1.04;
    letter-spacing:-.01em;
  }
  .hero h1 span{
    display:block;
    font-size:.43em;
    line-height:1.2;
    margin-top:7px;
  }
  .hero .lead{
    grid-area:lead;
    max-width:820px;
    margin:9px 0 0;
    font-size:15px;
    line-height:1.5;
    color:#42515e;
  }
  .hero .actions{
    grid-area:actions;
    align-self:end;
    justify-self:end;
    margin:0 0 25px;
  }
  .hero .actions .btn{min-width:260px}
  .hero-note{
    grid-area:note;
    margin:9px 0 0;
    font-size:12.5px;
    color:#59616a;
  }
}

@media (max-width:899px){
  .hero{
    min-height:640px;
    height:auto;
    align-items:flex-end;
  }
  .hero-bg{
    background-image:url('../assets/hero-symbols.jpg');
    background-size:cover;
    background-position:center center;
  }
  .hero:after{
    background:linear-gradient(180deg,
      rgba(252,250,246,.02) 24%,
      rgba(252,250,246,.10) 40%,
      rgba(252,250,246,.55) 62%,
      rgba(252,250,246,.94) 80%,
      rgba(252,250,246,1) 100%);
  }
  .hero-content{
    padding:0 0 28px;
    max-width:none;
  }
  .hero h1{font-size:42px}
  .hero h1 span{font-size:.5em;margin-top:9px}
  .hero .lead{font-size:15px}
  .hero .actions{margin-top:17px}
  .hero .btn{width:100%;min-width:0}
  .hero-note{margin-top:11px}
}
