
:root{--ivory:#fbf8f1;--cream:#f2eadc;--gold:#c59645;--gold-dark:#9f7332;--navy:#28485f;--navy-deep:#112d42;--ink:#1c2d3b;--muted:#627381;--line:rgba(40,72,95,.18);--shadow:0 22px 54px rgba(17,45,66,.13);--max:1220px;--radius:2px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--ivory);line-height:1.72}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.32;background-image:repeating-linear-gradient(112deg,rgba(17,45,66,.018) 0 1px,transparent 1px 6px),repeating-linear-gradient(24deg,rgba(197,150,69,.015) 0 1px,transparent 1px 8px);z-index:-1}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.container{width:min(var(--max),calc(100% - 42px));margin:auto}h1,h2,h3,h4{font-family:Georgia,'Times New Roman',serif;color:var(--navy-deep);line-height:1.06;margin:0 0 18px;font-weight:500}h1{font-size:clamp(3rem,6vw,6.4rem);letter-spacing:-.035em}h2{font-size:clamp(2.25rem,4.2vw,4.15rem);letter-spacing:-.025em}h3{font-size:1.55rem}p{margin:0 0 18px}.lead{font-size:1.14rem;color:#526675;max-width:760px}.eyebrow{display:block;text-transform:uppercase;letter-spacing:.19em;font-size:.72rem;font-weight:700;color:var(--gold-dark);margin-bottom:13px}.eyebrow.light{color:#e8c889}.skip-link{position:fixed;left:16px;top:-80px;z-index:9999;background:var(--gold);color:var(--navy-deep);padding:12px 16px;font-weight:700}.skip-link:focus{top:16px}.topline{background:var(--navy-deep);color:#f5eee1;font-size:.74rem;letter-spacing:.08em;text-transform:uppercase}.topline .container{display:flex;justify-content:space-between;padding:7px 0}.site-header{position:sticky;top:0;z-index:50;background:rgba(251,248,241,.96);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.navbar{display:flex;align-items:center;justify-content:space-between;min-height:82px;gap:25px}.brand img{width:230px;height:auto}.navlinks{display:flex;align-items:center;gap:24px;font-size:.88rem;font-weight:600;color:var(--navy-deep)}.navlinks a{position:relative;padding:29px 0}.navlinks a:not(.nav-cta):after{content:"";position:absolute;left:0;right:100%;bottom:19px;height:1px;background:var(--gold);transition:.22s}.navlinks a:hover:after,.navlinks a[aria-current=page]:after{right:0}.nav-cta{padding:12px 18px!important;border:1px solid var(--gold);color:var(--gold-dark)}.nav-cta:hover{background:var(--gold);color:#fff}.menu-btn{display:none;border:1px solid var(--gold);background:transparent;color:var(--navy-deep);padding:10px 14px;font-weight:700}
.hero{padding:84px 0;background:linear-gradient(115deg,#fffdf8 0 54%,#f1eadc 54% 100%)}.hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:58px;align-items:center}.hero-copy{padding:24px 0}.hero-media{min-height:530px;overflow:hidden;box-shadow:var(--shadow);position:relative}.hero-media:after{content:"";position:absolute;inset:0;border:1px solid rgba(197,150,69,.55);pointer-events:none}.hero-media img{width:100%;height:100%;min-height:530px;object-fit:cover}.accent{color:var(--gold-dark)}.buttons{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:13px 22px;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:700;border:1px solid var(--navy-deep);transition:.22s}.btn.primary{background:var(--navy-deep);color:#fff}.btn.outline{border-color:var(--gold);color:var(--gold-dark)}.btn.gold{background:var(--gold);border-color:var(--gold);color:#fff}.btn:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(17,45,66,.14)}section{padding:92px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:38px}.section-head p{max-width:620px;color:var(--muted)}.section-soft{background:var(--cream)}.section-navy{background:var(--navy-deep);color:#fff}.section-navy h2,.section-navy h3{color:#fff}.section-navy p{color:#cfdae2}.grid{display:grid;gap:24px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.visual-card,.article-card{background:#fffdf8;border:1px solid var(--line);box-shadow:0 9px 30px rgba(17,45,66,.06);transition:.25s;overflow:hidden}.visual-card:hover,.article-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.card-image,.article-image{display:block;aspect-ratio:16/10;overflow:hidden}.card-image img,.article-image img{width:100%;height:100%;object-fit:cover;transition:.45s}.visual-card:hover img,.article-card:hover img{transform:scale(1.035)}.card-body,.article-card-body{padding:25px}.card-type{font-size:.68rem;text-transform:uppercase;letter-spacing:.16em;color:var(--gold-dark);font-weight:700}.card-body h3,.article-card h3{margin-top:9px}.card-body p,.article-card p{color:#5d6f7d;font-size:.94rem}.text-link{font-size:.78rem;text-transform:uppercase;letter-spacing:.09em;color:var(--gold-dark);font-weight:700}.service-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:rgba(197,150,69,.34);border:1px solid rgba(197,150,69,.34)}.service-strip>div{padding:27px 22px;background:var(--navy-deep);color:#fff}.service-strip h3{color:#fff;font-size:1.1rem}.service-strip p{color:#cbd7df;font-size:.86rem;margin:0}.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.article-meta{display:flex;gap:14px;color:#7a8791;font-size:.78rem;margin:15px 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:58px;align-items:center}.split-image{min-height:460px;overflow:hidden;box-shadow:var(--shadow)}.split-image img{width:100%;height:100%;min-height:460px;object-fit:cover}.value-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.value-card{background:#fffdf8;border:1px solid var(--line);padding:27px}.value-card h3{font-size:1.3rem}.breadcrumbs{font-size:.8rem;color:#71808c;margin-bottom:22px}.breadcrumbs span{margin:0 8px;color:#a58b63}.page-hero{padding:62px 0 0;background:#fffdf8}.page-hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:stretch}.page-hero-copy{padding:76px max(32px,calc((100vw - var(--max))/2)) 76px 0;margin-left:max(21px,calc((100vw - var(--max))/2))}.page-hero-media{min-height:470px}.page-hero-media img{width:100%;height:100%;min-height:470px;object-fit:cover}.content-wrap{max-width:820px;margin:auto}.prose{font-size:1.04rem}.prose h2{font-size:2.3rem;margin-top:48px}.prose h3{font-size:1.45rem;margin-top:28px}.prose ul{padding-left:22px}.prose li{margin:8px 0}.tip{background:var(--cream);border-left:3px solid var(--gold);padding:20px 22px;margin:26px 0}.faq{border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line);padding:18px 0}.faq summary{font-weight:700;color:var(--navy-deep);cursor:pointer}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.filterbar{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:32px}.filterbar input,.filterbar select{min-height:46px;border:1px solid var(--line);background:#fffdf8;padding:0 14px;font:inherit;color:var(--ink)}.filterbar input{flex:1;min-width:240px}.pagination{display:flex;justify-content:center;gap:8px;margin-top:38px}.pagination button{width:42px;height:42px;border:1px solid var(--line);background:#fffdf8;color:var(--navy-deep);cursor:pointer}.pagination button.active{background:var(--navy-deep);color:#fff}.quote-form{display:grid;gap:18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{font-size:.84rem;font-weight:700;color:var(--navy-deep)}input,textarea,select{width:100%;padding:14px;border:1px solid var(--line);background:#fffdf8;font:inherit}textarea{min-height:150px}.notice{background:var(--cream);border-left:3px solid var(--gold);padding:16px 18px}.cta-band{padding:52px 0;background:var(--navy);color:#fff}.cta-band h2{color:#fff;font-size:2.6rem;margin-bottom:0}.cta-band-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}footer{background:var(--navy-deep);color:#d9e2e8;padding:64px 0 24px}.footer-grid{display:grid;grid-template-columns:1.6fr .75fr .8fr .75fr 1fr;gap:38px}footer h3{color:#f5eee1;font-family:Arial,sans-serif;text-transform:uppercase;letter-spacing:.13em;font-size:.74rem}footer a{display:block;color:#d9e2e8;margin:8px 0;font-size:.9rem}footer a:hover{color:#e4bd73}.footer-brand img{width:245px;margin-bottom:16px}.footer-brand p{max-width:340px;font-size:.9rem;color:#becbd3}.social-icons{display:flex;gap:9px;flex-wrap:wrap}.social-icons a{width:38px;height:38px;border:1px solid rgba(228,189,115,.7);border-radius:50%;display:grid;place-items:center;color:#e4bd73;margin:0}.footer-bottom{display:flex;justify-content:space-between;gap:25px;border-top:1px solid rgba(255,255,255,.12);margin-top:38px;padding-top:20px;font-size:.8rem;color:#9fb0bc}.footer-bottom a{margin:0}.sitemap-list{columns:3;column-gap:40px}.sitemap-list section{break-inside:avoid;padding:0 0 24px}.sticky-mobile-cta{display:none}
@media(max-width:1050px){.navlinks{position:absolute;display:none;flex-direction:column;align-items:flex-start;top:112px;left:20px;right:20px;background:var(--ivory);border:1px solid var(--line);padding:20px;box-shadow:var(--shadow)}.navlinks.open{display:flex}.navlinks a{padding:8px 0}.navlinks a:after{display:none}.menu-btn{display:block}.hero-grid,.page-hero-grid,.split{grid-template-columns:1fr}.page-hero-copy{margin:0;padding:60px 28px}.hero-media,.hero-media img,.page-hero-media,.page-hero-media img{min-height:420px}.grid-4{grid-template-columns:repeat(2,1fr)}.article-grid{grid-template-columns:repeat(2,1fr)}.service-strip{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.container{width:min(var(--max),calc(100% - 26px))}.topline .container{font-size:.64rem}.topline .container span:last-child{display:none}.brand img{width:205px}.hero{padding:58px 0}.hero-media,.hero-media img,.page-hero-media,.page-hero-media img{min-height:310px}section{padding:66px 0}.section-head,.cta-band-inner{align-items:flex-start;flex-direction:column}.grid-2,.grid-3,.grid-4,.article-grid,.value-grid,.related-grid,.form-grid{grid-template-columns:1fr}.service-strip{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}.sitemap-list{columns:1}.sticky-mobile-cta{display:block;position:fixed;left:12px;right:12px;bottom:12px;z-index:45;background:var(--gold);color:#fff;text-align:center;padding:13px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;font-size:.78rem;box-shadow:0 12px 30px rgba(17,45,66,.25)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}


/* V1.0 image consistency fix */
/* Every interior page hero uses one identical 16:10 frame. */
.page-hero-grid{
  align-items:center;
}
.page-hero-media{
  width:100%;
  min-height:0 !important;
  height:auto !important;
  aspect-ratio:16 / 10;
  align-self:center;
  overflow:hidden;
}
.page-hero-media img{
  width:100%;
  height:100% !important;
  min-height:0 !important;
  aspect-ratio:16 / 10;
  object-fit:cover;
  display:block;
}

/* Cards of the same type always use the same image geometry. */
.card-image,
.article-image{
  aspect-ratio:16 / 10;
  height:auto;
}
.card-image img,
.article-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* Crisp transparent brand assets */
.brand img{
  width:260px;
  height:auto;
  object-fit:contain;
}
.footer-brand img{
  width:285px;
  max-width:100%;
  height:auto;
  object-fit:contain;
}

@media(max-width:1050px){
  .page-hero-media,
  .page-hero-media img{
    min-height:0 !important;
    aspect-ratio:16 / 10;
  }
}
@media(max-width:680px){
  .page-hero-media,
  .page-hero-media img{
    min-height:0 !important;
    aspect-ratio:16 / 10;
  }
  .brand img{width:220px}
}


/* V1.0 consistency pass: all page banners follow the homepage hero system */
.page-hero{
  padding:84px 0;
  background:linear-gradient(115deg,#fffdf8 0 54%,#f1eadc 54% 100%);
}
.page-hero-grid{
  width:min(var(--max),calc(100% - 42px));
  margin:0 auto;
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:58px;
  align-items:center;
}
.page-hero-copy{
  padding:24px 0;
  margin-left:0;
  max-width:640px;
}
.page-hero-copy .breadcrumbs{
  margin-bottom:18px;
}
.page-hero-media{
  min-height:530px !important;
  aspect-ratio:16 / 10;
  overflow:hidden;
  box-shadow:var(--shadow);
  position:relative;
}
.page-hero-media:after{
  content:"";
  position:absolute;
  inset:0;
  border:1px solid rgba(197,150,69,.55);
  pointer-events:none;
}
.page-hero-media img{
  width:100%;
  height:100%;
  min-height:530px !important;
  aspect-ratio:16 / 10;
  object-fit:cover;
  display:block;
}

/* Footer social links should remain text-only */
.social-text-links{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:6px;
}
.social-text-links a{
  display:block;
  color:#d9e2e8;
  margin:0;
  font-size:.9rem;
}
.social-text-links a:hover{
  color:#e4bd73;
}

@media(max-width:1050px){
  .page-hero{
    padding:58px 0;
  }
  .page-hero-grid{
    width:min(var(--max),calc(100% - 42px));
    grid-template-columns:1fr;
    gap:30px;
  }
  .page-hero-copy{
    padding:0;
    max-width:none;
  }
  .page-hero-media,
  .page-hero-media img{
    min-height:420px !important;
  }
}
@media(max-width:680px){
  .page-hero{
    padding:58px 0;
  }
  .page-hero-grid{
    width:min(var(--max),calc(100% - 26px));
    gap:24px;
  }
  .page-hero-copy{
    padding:0;
  }
  .page-hero-media,
  .page-hero-media img{
    min-height:310px !important;
  }
}

/* Keep footer contact text consistent with footer links */
.footer-grid > div:not(.footer-brand) p{font-size:.9rem;margin:8px 0;color:#d9e2e8}
