:root{--ink:#19162b;--ink2:#2d2646;--purple:#686099;--orange:#cc885a;--cream:#fbf9f5;--white:#fff;--line:#e6e2dd;--muted:#645f68;--soft:#f3eee8;--shadow:0 20px 50px rgba(25,22,43,.07)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,"Helvetica Neue",Helvetica,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.58}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}img{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}h1,h2{letter-spacing:-.045em;line-height:1.08}h1{font-size:clamp(3.1rem,5.7vw,5.5rem);font-weight:750;margin-bottom:24px}h2{font-size:clamp(2.45rem,4.5vw,4.4rem);font-weight:750;margin-bottom:22px}h2 em,h1 em{color:var(--purple);font-style:normal;font-weight:650}.container{width:min(1180px,calc(100% - 48px));margin:0 auto}.skip{position:absolute;top:-100px;left:10px;background:#fff;padding:12px;z-index:99}.skip:focus{top:12px}.preview{min-height:36px;background:#302a47;color:#f0ecf8;text-align:center;padding:9px 18px;font-size:12px;letter-spacing:.025em}.preview-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#e9b17b;margin-right:9px}.site-header{position:sticky;top:0;z-index:30;background:#09080d;border-bottom:1px solid #24202b}.header-inner{height:94px;display:flex;align-items:center;gap:28px}.brand{flex:0 0 248px;display:flex;align-items:center}.brand img{width:248px;height:auto}.main-nav{margin-left:auto;display:flex;gap:28px;align-items:center}.main-nav a{color:#e6e1ed;font-size:14px;font-weight:650}.main-nav a:hover,.footer a:hover{color:#ecb78c}.header-cta{background:var(--orange);color:#15111f;padding:13px 17px;border-radius:6px;font-size:14px;font-weight:750;white-space:nowrap}.header-cta span{margin-left:4px}.menu-toggle{display:none;border:1px solid #4a415a;background:#181420;border-radius:8px;width:48px;height:44px;margin-left:auto;padding:10px}.menu-toggle span{height:2px;margin:5px 0;background:white;display:block;border-radius:2px}.mobile-nav[hidden]{display:none!important}.mobile-nav{display:none;flex-direction:column;background:#0d0a12;border-top:1px solid #2c2734;padding:10px 24px 22px}.mobile-nav a{padding:12px 0;color:#f7f1fb;border-bottom:1px solid #332d3d}.mobile-call{color:#e8b78a!important}.hero{padding:90px 0 86px;background:linear-gradient(125deg,#fefcfa,#f6f1eb)}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:clamp(40px,6vw,94px)}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:#726881;margin-bottom:24px}.eyebrow-line{display:inline-block;width:24px;height:2px;background:var(--orange);vertical-align:middle;margin-right:10px}.eyebrow-dark{color:#817b83}.hero-copy{max-width:650px}.hero-intro{max-width:580px;color:#55515b;font-size:19px;line-height:1.72;margin:0 0 28px}.button-row{display:flex;flex-wrap:wrap;align-items:stretch;gap:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:54px;border-radius:6px;padding:14px 19px;font-size:14px;font-weight:800;line-height:1.3;text-align:center;transition:background .2s,transform .2s;border:1px solid transparent}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--ink);color:#fff}.button-primary:hover{background:#322a4d}.button-secondary{border-color:#c8c2c4;background:transparent;color:var(--ink)}.button-secondary:hover{background:#fff}.hero-note{display:flex;gap:14px;align-items:flex-start;margin-top:37px;color:#6b6670}.note-line{height:2px;background:var(--orange);width:34px;flex-shrink:0;margin-top:12px}.hero-note p{font-size:14px;line-height:1.6;margin:0}.hero-aside{background:#211b35;color:white;border-radius:16px;padding:34px;box-shadow:var(--shadow)}.hero-aside-head{display:flex;align-items:center;justify-content:space-between;color:#ded4eb;letter-spacing:.18em;font-size:11px;font-weight:800}.aside-symbol{color:#e6b28a;font-size:27px}.hero-aside h2{font-size:clamp(1.7rem,3vw,2.3rem);letter-spacing:-.025em;line-height:1.2;margin:24px 0}.focus-list{border-top:1px solid #50445e}.focus-list a{display:grid;grid-template-columns:30px 1fr 18px;gap:10px;align-items:center;padding:17px 0;border-bottom:1px solid #50445e}.focus-no{font-size:12px;color:#c2a5d0}.focus-list strong{font-size:15px;font-weight:800;display:block}.focus-list small{font-size:13px;color:#c9c0cf;display:block;margin-top:2px}.focus-arrow{color:#edb389}.aside-bottom{padding-top:24px;color:#d8c9e0;font-size:12px}.status-dot{display:inline-block;background:#eab78a;width:7px;height:7px;border-radius:50%;margin-right:9px}.service-strip{background:#ece6e0;border-top:1px solid #e6dcd4;border-bottom:1px solid #e6dcd4}.strip-inner{display:flex;justify-content:center;align-items:center;gap:clamp(16px,4vw,54px);padding:20px 0;font-size:11px;letter-spacing:.16em;font-weight:800;color:#5d5664}.strip-inner span:nth-child(even){color:var(--orange)}.section{padding:100px 0}.about{background:white}.about-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(40px,7vw,104px)}.about-story p{font-size:17px;color:#615b65;max-width:540px;margin-bottom:18px}.inline-link{display:inline-flex;align-items:center;gap:18px;margin-top:20px;padding-bottom:9px;border-bottom:2px solid var(--orange);font-weight:800}.about-panel{background:#f8f5f1;border:1px solid var(--line);border-radius:14px;padding:34px}.about-panel-top{display:flex;justify-content:space-between;font-size:11px;font-weight:850;letter-spacing:.13em;color:#837785;border-bottom:1px solid #ddd5d4;padding-bottom:20px}.about-panel-top span:last-child{font-size:22px;color:var(--orange)}.principle{display:grid;grid-template-columns:34px 1fr;gap:17px;border-bottom:1px solid #e5dedb;padding:22px 0}.principle-count{color:var(--orange);font-size:13px;font-weight:800;padding-top:5px}.principle h3{font-size:19px;margin-bottom:4px}.principle p{margin:0;font-size:14px;color:#655d69}.local-pill{display:flex;gap:11px;align-items:center;color:#4f4756;font-size:13px;margin-top:20px}.local-pill strong{color:var(--ink)}.location-icon{font-size:22px;color:var(--orange)}.services{background:var(--cream)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:36px}.section-heading>*{flex:1}.section-heading p{max-width:430px;color:#615c65;font-size:16px;margin-bottom:10px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.service-card{display:flex;flex-direction:column;background:white;border:1px solid #e5dfd9;border-radius:12px;padding:27px;min-height:306px;box-shadow:0 9px 25px rgba(25,22,43,.035)}.card-top{display:flex;justify-content:space-between;align-items:start;margin-bottom:28px}.service-number{font-size:13px;color:#a87a5a;font-weight:800}.service-icon{border:1px solid #e8ded7;background:#faf5f0;color:#a66c4d;font-size:24px;width:46px;height:46px;border-radius:10px;display:grid;place-items:center}.service-card h3{font-size:20px;line-height:1.2;letter-spacing:-.02em;margin-bottom:10px}.service-card>p{color:#635f67;font-size:14px;line-height:1.65;margin:0 0 20px}.expand{padding:14px 0 0;border:0;border-top:1px solid #ede8e3;text-align:left;background:none;color:#393047;font-size:13px;font-weight:800;display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto}.expand span{font-size:19px;color:#bd7a52}.service-detail{padding-top:14px;font-size:14px;color:#625b68;line-height:1.6}.services-footer{background:#e9e1dc;display:flex;gap:22px;align-items:center;justify-content:space-between;padding:25px 30px;border-radius:9px;margin-top:22px}.services-footer>span{font-size:18px;font-weight:800;flex-shrink:0}.services-footer p{font-size:14px;color:#635a63;margin:0}.services-footer a{color:#322340;font-size:14px;font-weight:800;white-space:nowrap}.quote-band{background:#241e39;color:white;text-align:center;padding:82px 0}.quote-inner{display:flex;align-items:center;flex-direction:column}.quote-band .eyebrow{color:#d0bcd9}.quote-band h2{font-size:clamp(2.3rem,4.5vw,4rem)}.quote-band h2 em{color:#f2b886}.button-light{background:#f2dcc8;color:var(--ink)}.contact{background:white}.contact-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:25px;align-items:start}.contact-info{background:#f7f3ef;border:1px solid var(--line);padding:30px;border-radius:14px}.contact-info h3{font-size:23px;margin-bottom:22px}.contact-line{border-top:1px solid #e4dcd8;padding:17px 0;display:grid;grid-template-columns:88px minmax(0,1fr) 16px;gap:8px;align-items:center}.contact-label{display:block;letter-spacing:.12em;font-size:11px;color:#7c7182;font-weight:850}.contact-line strong{font-size:15px;overflow-wrap:anywhere}.contact-line>span:last-child{color:#aa7958}.address{display:grid;gap:8px;border-top:1px solid #e4dcd8;padding-top:20px}.address strong{font-size:15px}.address a{font-size:13px;color:#78567f;text-decoration:underline}.office-hours{border-top:1px solid #e4dcd8;margin-top:22px;padding-top:18px}.office-hours p{font-size:14px;color:#665e68;margin:8px 0}.verify-note{display:block;color:#817985;font-size:11px;line-height:1.6;margin-top:22px}.form-card{border:1px solid var(--line);border-radius:14px;background:#fff;padding:30px;box-shadow:var(--shadow)}.form-title span{font-size:11px;font-weight:800;letter-spacing:.15em;color:#967a72}.form-title h3{font-size:27px;margin:10px 0 7px}.form-title p{color:#655e68;font-size:14px}.form-cols{display:grid;grid-template-columns:1fr 1fr;gap:0 15px}form label{display:block;font-size:13px;font-weight:800;color:#302a39;margin:0 0 17px}form label>span{color:#be784a}input,textarea,select{display:block;width:100%;font-size:14px;padding:14px 12px;background:#fcfaf8;border:1px solid #dcd6d3;border-radius:5px;margin-top:7px;color:var(--ink);min-height:48px}textarea{resize:vertical;min-height:118px}input:focus,textarea:focus,select:focus{outline:2px solid #b9a0c6;outline-offset:1px}.form-disclaimer{font-size:12px;line-height:1.6;color:#6e6873;padding:15px;background:#f9f5f1;border-radius:5px;margin-bottom:20px}.form-submit{width:100%}.form-status{font-size:13px;color:#5e4267;min-height:18px;margin:12px 0 0}.footer{background:#09080d;color:#e4dfe9;padding:60px 0 20px}.footer-grid{display:grid;grid-template-columns:1.6fr .7fr .7fr;gap:38px}.footer-logo{display:inline-block;width:270px}.footer-logo img{width:100%;height:auto}.footer-grid p{color:#bbb5c2;font-size:14px}.footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:8px;font-size:14px}.footer-links strong{color:#e9b78c;margin-bottom:7px}.footer-base{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #322b3d;padding-top:20px;margin-top:46px;font-size:12px;color:#aba2b4}.footer-base a{text-decoration:underline}
@media(max-width:1080px){.header-inner{gap:15px}.brand{flex-basis:210px}.brand img{width:210px}.main-nav{gap:17px}.header-cta{padding:12px}.hero-grid{gap:32px}.hero h1{font-size:clamp(2.9rem,5vw,5rem)}}
@media(max-width:860px){.header-inner{height:79px}.main-nav,.header-cta{display:none}.menu-toggle{display:block}.mobile-nav{display:flex}.hero{padding:62px 0}.hero-grid,.about-grid,.contact-grid{grid-template-columns:1fr}.hero-aside{max-width:700px}.section{padding:75px 0}.section-heading{display:block}.section-heading p{max-width:650px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.services-footer{flex-wrap:wrap}.about-grid{gap:35px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}
@media(max-width:600px){.container{width:calc(100% - 32px)}.preview{font-size:11px;line-height:1.45}.header-inner{height:74px}.brand{flex-basis:190px}.brand img{width:190px}.hero{padding:48px 0 56px}.hero h1{font-size:clamp(2.65rem,10.4vw,4rem)}.hero-intro{font-size:16px}.button-row{flex-direction:column}.button-row .button{width:100%}.hero-aside{padding:25px}.hero-aside h2{font-size:1.75rem}.strip-inner{flex-wrap:wrap;gap:8px 14px;text-align:center;font-size:10px}.strip-inner span:nth-child(even){display:none}.section{padding:63px 0}.section-heading h2,.about h2,.contact h2{font-size:2.5rem}.service-grid{grid-template-columns:1fr}.service-card{min-height:unset}.services-footer{display:block}.services-footer>*{display:block;margin:0 0 12px}.contact-info,.form-card,.about-panel{padding:23px}.form-cols{grid-template-columns:1fr}.contact-line{grid-template-columns:68px minmax(0,1fr) 12px}.contact-line strong{font-size:13px}.footer-grid{grid-template-columns:1fr 1fr;gap:24px}.footer-base{display:block}.footer-base span{display:block;margin-bottom:10px}.quote-band{padding:60px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}


/* V4.1: requested minor refinements only — review banner and footer. */
@media (min-width: 820px) {
  .preview { white-space: nowrap; font-size: 12px; letter-spacing: 0; }
}
@media (max-width: 819px) {
  .preview { white-space: normal; overflow-wrap: break-word; }
}
.footer {
  background: #09080d;
  color: #e4dfe9;
  border-top: 3px solid #cc9369;
  padding: 58px 0 22px;
}
.footer-grid {
  grid-template-columns: minmax(0,1.6fr) minmax(0,.7fr) minmax(0,.7fr);
  gap: clamp(26px,5vw,66px);
  align-items: start;
}
.footer-grid > div:first-child { min-width: 0; }
.footer-logo { display: inline-block; width: min(100%, 294px); margin-bottom: 15px; }
.footer-logo img { display: block; width: 100%; height: auto; }
.footer-grid p { max-width: 340px; font-size: 14px; line-height: 1.75; color: #bdb6c7; margin: 0; }
.footer-links { gap: 13px; }
.footer-links strong {
  position: relative;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .1em;
  padding-bottom: 15px;
  margin-bottom: 2px;
  color: #e9b78c;
}
.footer-links strong::after { content: ""; position:absolute; bottom: 0; left: 0; width: 32px; height: 2px; background: #bc855f; }
.footer-links a { font-size: 14px; line-height: 1.6; color: #d8d1df; transition: color .2s ease; }
.footer-links a:hover { color:#ecb78c; }
.footer-base { border-top: 1px solid #373041; padding-top: 23px; margin-top: 48px; align-items: center; line-height:1.6; }
.footer-base a { text-decoration: none; color: #e9b78c; border-bottom: 1px solid #9a765d; }
.footer-base a:hover { color:#fff1e4; }
@media (max-width:860px) {
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .footer-grid > div:first-child { grid-column: 1 / -1; padding-bottom: 12px; border-bottom: 1px solid #302a38; }
}
@media (max-width:600px) {
  .footer { padding: 44px 0 22px; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 28px 18px; }
  .footer-logo { width: min(100%, 250px); }
  .footer-links { gap: 9px; }
  .footer-links a { overflow-wrap: anywhere; }
  .footer-base { margin-top: 34px; }
}
