/* Consolidated site overrides. Replaces patch-v15 through patch-v24. */

/* ===== Consolidated from patch-v16.css ===== */
/* v15 visible correction patch: footer + internal About layout */
.footer-v14{background:#F7F1E8!important;color:#5f2d2b!important;border-top:1px solid rgba(95,45,43,.16)!important;overflow:hidden!important}
.footer-v14 *{box-sizing:border-box}
.footer-v14-main{width:min(1240px,calc(100% - 48px))!important;margin:0 auto!important;padding:72px 0 58px!important;display:grid!important;grid-template-columns:minmax(220px,.9fr) minmax(360px,1.45fr) minmax(280px,1fr)!important;gap:56px!important;align-items:start!important}
.footer-v14-links,.footer-v14-center,.footer-v14-contact{min-width:0!important}
.footer-v14 h4{font-family:'Playfair Display',serif!important;font-size:26px!important;line-height:1.15!important;color:#6E3735!important;margin:0 0 22px!important}
.footer-v14-links{padding-top:18px!important}
.footer-v14-links>a{display:flex!important;align-items:center!important;gap:12px!important;margin:0 0 13px!important;color:#6E3735!important;font:600 14px/1.35 'DM Sans',sans-serif!important;text-decoration:none!important}
.footer-v14-links>a i{width:30px!important;height:30px!important;border-radius:50%!important;display:grid!important;place-items:center!important;background:#fff!important;color:#9E2A2B!important;box-shadow:0 5px 15px rgba(110,55,53,.09)!important;margin:0!important}
.footer-v14-center{text-align:center!important;padding:0 8px!important}
.footer-v14-logo{display:flex!important;align-items:center!important;justify-content:center!important;width:112px!important;height:112px!important;margin:0 auto 22px!important;padding:13px!important;background:#6E3735!important;border-radius:4px!important;overflow:hidden!important}
.footer-v14-logo img{display:block!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important}
.footer-v14-center h3{font-family:'Playfair Display',serif!important;font-size:31px!important;color:#6E3735!important;margin:0 0 10px!important}
.footer-v14-center p{max-width:500px!important;margin:0 auto!important;color:#805c58!important;font:400 13px/1.7 'DM Sans',sans-serif!important}
.footer-v14-social{display:flex!important;justify-content:center!important;gap:10px!important;margin-top:18px!important}
.footer-v14-social a{width:38px!important;height:38px!important;border-radius:50%!important;display:grid!important;place-items:center!important;border:1px solid rgba(110,55,53,.22)!important;color:#6E3735!important;background:rgba(255,255,255,.35)!important}
.footer-v14-contact{padding-top:18px!important;text-align:left!important}
.footer-v14-contact>a,.footer-v14-contact>span{display:flex!important;align-items:flex-start!important;gap:11px!important;margin:0 0 12px!important;color:#6E3735!important;font:500 13px/1.45 'DM Sans',sans-serif!important;text-decoration:none!important}
.footer-v14-contact i{width:28px!important;height:28px!important;flex:0 0 28px!important;display:grid!important;place-items:center!important;border-radius:50%!important;background:#fff!important;color:#9E2A2B!important;margin:0!important}
.footer-v14-bottom{width:min(1240px,calc(100% - 48px))!important;margin:0 auto!important;min-height:90px!important;padding:16px 0!important;border-top:1px solid rgba(110,55,53,.16)!important;display:grid!important;grid-template-columns:1fr auto 1fr!important;gap:18px!important;align-items:center!important;color:#6E3735!important}
.footer-v14-service-icons{display:flex!important;align-items:center!important;gap:9px!important;flex-wrap:wrap!important}
.footer-v14-service-icons a{width:46px!important;height:46px!important;display:grid!important;place-items:center!important;border-radius:12px!important;border:1px solid rgba(110,55,53,.18)!important;background:#fff!important;color:#9E2A2B!important;font-size:18px!important;position:relative!important}
.footer-v14-bottom>span{text-align:center!important;font:500 12px 'DM Sans',sans-serif!important}
.footer-v14-terms{justify-self:end!important;color:#6E3735!important;font-weight:700!important;text-decoration:none!important}

/* About: force sections into clean, separated blocks */
.about-story-v12{width:min(1180px,calc(100% - 48px))!important;margin:0 auto!important;padding:100px 0!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:72px!important;align-items:center!important}
.about-story-v12-copy{display:block!important;min-width:0!important}
.about-story-v12-copy .eyebrow{display:inline-flex!important;margin-bottom:10px!important}
.about-story-v12-copy h2{font-size:clamp(44px,5vw,72px)!important;line-height:.98!important;margin:0 0 24px!important;max-width:680px!important}
.about-story-v12-copy>p{font-size:16px!important;line-height:1.8!important;margin:0 0 28px!important;max-width:680px!important}
.about-feature-v12{display:grid!important;grid-template-columns:54px 1fr!important;gap:18px!important;align-items:start!important;padding:20px 0!important;border-top:1px solid rgba(11,31,51,.12)!important;margin:0!important}
.about-feature-v12 i{width:48px!important;height:48px!important;display:grid!important;place-items:center!important;border-radius:50%!important;background:#9E2A2B!important;color:#fff!important;font-size:18px!important}
.about-feature-v12 h3{margin:0 0 7px!important;font-size:22px!important}
.about-feature-v12 p{margin:0!important;line-height:1.65!important}
.about-mv-v12{display:grid!important;grid-template-columns:1fr 1fr!important;gap:18px!important;margin:28px 0 0!important;width:100%!important}
.about-mv-v12>div{padding:24px!important;border-radius:18px!important;background:#F7F1E8!important;border:1px solid rgba(158,42,43,.14)!important;box-shadow:0 14px 34px rgba(11,31,51,.06)!important}
.about-mv-v12 .eyebrow{margin-bottom:6px!important}.about-mv-v12 h3{margin:0 0 8px!important;font-size:23px!important}.about-mv-v12 p{margin:0!important}
.about-values-v12{display:block!important;background:#0B1F33!important;color:#fff!important;padding:96px 0!important;margin:0!important}
.about-values-v12 .container{width:min(1180px,calc(100% - 48px))!important;margin:0 auto!important}
.about-values-v12 .section-head{text-align:center!important;max-width:820px!important;margin:0 auto 48px!important}
.about-values-v12 .section-head h2{font-size:clamp(42px,5vw,68px)!important;margin:8px 0 0!important}
.about-values-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important}
.about-values-grid article{min-height:245px!important;padding:30px!important;border-radius:22px!important;background:rgba(255,255,255,.055)!important;border:1px solid rgba(255,255,255,.13)!important;display:flex!important;flex-direction:column!important}
.about-values-grid article i{font-size:28px!important;color:#D8C3A5!important}.about-values-grid article h3{margin:auto 0 10px!important;font-size:27px!important}.about-values-grid article p{margin:0!important;color:rgba(255,255,255,.72)!important}
.about-area-v12{display:block!important;background:linear-gradient(135deg,#9E2A2B,#6d1d20)!important;color:#fff!important;padding:96px 0!important;margin:0!important}
.about-area-v12 .container{width:min(1180px,calc(100% - 48px))!important;margin:0 auto!important}
.about-area-v12 .split{display:grid!important;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr)!important;gap:60px!important;align-items:center!important}
.about-area-v12 h2{font-size:clamp(44px,5.5vw,78px)!important;line-height:1!important;margin:8px 0 20px!important}.about-area-v12 p{font-size:16px!important;line-height:1.75!important}.about-area-tags{margin:26px 0 30px!important}

@media(max-width:900px){
 .footer-v14-main{grid-template-columns:1fr 1fr!important;gap:38px!important}.footer-v14-center{grid-column:1/-1!important;grid-row:1!important}.footer-v14-bottom{grid-template-columns:1fr!important;justify-items:center!important}.footer-v14-terms{justify-self:center!important}
 .about-story-v12{grid-template-columns:1fr!important;gap:48px!important;padding:78px 0!important}.about-values-grid{grid-template-columns:1fr 1fr!important}.about-area-v12 .split{grid-template-columns:1fr!important}
}
@media(max-width:600px){
 .footer-v14-main{width:min(100% - 32px,1240px)!important;grid-template-columns:1fr!important;text-align:center!important;padding:52px 0 38px!important}.footer-v14-center{grid-column:auto!important;grid-row:auto!important}.footer-v14-links,.footer-v14-contact{text-align:center!important;padding-top:0!important}.footer-v14-links>a,.footer-v14-contact>a,.footer-v14-contact>span{justify-content:center!important}.footer-v14-bottom{width:min(100% - 32px,1240px)!important}.footer-v14-service-icons{justify-content:center!important}
 .about-story-v12,.about-values-v12 .container,.about-area-v12 .container{width:min(100% - 32px,1180px)!important}.about-story-v12{padding:64px 0!important}.about-mv-v12{grid-template-columns:1fr!important}.about-values-v12{padding:70px 0!important}.about-values-grid{grid-template-columns:1fr!important}.about-area-v12{padding:70px 0!important}.about-feature-v12{grid-template-columns:46px 1fr!important}.about-feature-v12 i{width:42px!important;height:42px!important}
}

/* =========================
   ABOUT PAGE v16
   ========================= */
.about-page-v16 .about-hero-v16{
  position:relative!important;
  min-height:430px!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  isolation:isolate!important;
  background-image:var(--about-hero)!important;
  background-size:cover!important;
  background-position:center 42%!important;
  margin:0!important;
}
.about-page-v16 .about-hero-v16::after{
  content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(90deg,rgba(247,241,232,.12),rgba(11,31,51,.03),rgba(110,55,53,.08));
}
.about-page-v16 .about-hero-v16-overlay{
  position:absolute!important;inset:0!important;z-index:0!important;
  background:rgba(18,22,25,.34)!important;
  backdrop-filter:saturate(.8)!important;
}
.about-page-v16 .about-hero-v16-content{
  position:relative!important;z-index:2!important;text-align:center!important;
  width:min(100% - 32px,1000px)!important;color:#fff!important;
}
.about-page-v16 .about-hero-v16-content h1{
  margin:0 0 22px!important;
  font-family:'Playfair Display',serif!important;
  font-size:clamp(48px,5.1vw,78px)!important;
  font-weight:600!important;letter-spacing:.01em!important;line-height:1!important;
  color:#fff!important;text-shadow:0 4px 24px rgba(0,0,0,.28)!important;
}
.about-page-v16 .about-hero-v16-crumb{display:flex!important;justify-content:center!important;align-items:center!important;gap:9px!important;font:500 15px/1.2 'DM Sans',sans-serif!important;color:#fff!important}
.about-page-v16 .about-hero-v16-crumb a,.about-page-v16 .about-hero-v16-crumb b{color:#fff!important;text-decoration:none!important;font-weight:500!important}
.about-page-v16 .about-hero-v16-crumb span{opacity:.8!important}

.about-page-v16 .about-story-v16{background:#111315!important;color:#fff!important;padding:110px 0!important;overflow:hidden!important}
.about-page-v16 .about-story-v16-inner{width:min(1420px,calc(100% - 64px))!important;margin:0 auto!important;display:grid!important;grid-template-columns:minmax(0,.88fr) minmax(0,1.52fr)!important;gap:84px!important;align-items:center!important}
.about-page-v16 .about-story-v16-media{position:relative!important;height:690px!important;border-radius:4px!important;overflow:hidden!important;box-shadow:0 24px 70px rgba(0,0,0,.34)!important}
.about-page-v16 .about-story-v16-media::before{content:"";position:absolute;inset:0;z-index:2;border:1px solid rgba(216,195,165,.3);pointer-events:none}
.about-page-v16 .about-story-v16-media img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;display:block!important;transform:scale(1.025)!important;transition:transform 1.1s cubic-bezier(.2,.7,.2,1)!important}
.about-page-v16 .about-story-v16-media.visible img{transform:scale(1)!important}
.about-page-v16 .about-story-v16-copy{max-width:790px!important}
.about-page-v16 .about-kicker-v16{display:inline-flex!important;align-items:center!important;gap:12px!important;margin:0 0 17px!important;text-transform:uppercase!important;letter-spacing:.2em!important;font:700 12px 'DM Sans',sans-serif!important;color:#D8C3A5!important}
.about-page-v16 .about-kicker-v16::before{content:"";width:40px;height:1px;background:#D8C3A5}
.about-page-v16 .about-story-v16-copy h2{margin:0 0 25px!important;max-width:850px!important;font-family:'DM Sans',sans-serif!important;font-size:clamp(46px,4.1vw,70px)!important;font-weight:700!important;letter-spacing:-.045em!important;line-height:1.02!important;color:#fff!important}
.about-page-v16 .about-story-v16-copy h2 em{font-family:'Playfair Display',serif!important;font-weight:600!important;color:#D8C3A5!important;letter-spacing:-.02em!important}
.about-page-v16 .about-story-lead-v16{max-width:800px!important;margin:0 0 30px!important;color:#a6a7aa!important;font:400 17px/1.72 'DM Sans',sans-serif!important}
.about-page-v16 .about-feature-v16{display:grid!important;grid-template-columns:62px minmax(0,1fr)!important;gap:22px!important;align-items:start!important;padding:25px 0!important;border-top:1px solid rgba(255,255,255,.09)!important}
.about-page-v16 .about-feature-v16>i{width:54px!important;height:54px!important;display:grid!important;place-items:center!important;border:1px solid rgba(216,195,165,.45)!important;color:#D8C3A5!important;font-size:23px!important;background:rgba(216,195,165,.04)!important}
.about-page-v16 .about-feature-v16 h3{margin:0 0 8px!important;font-family:'DM Sans',sans-serif!important;font-size:22px!important;font-weight:700!important;color:#fff!important}
.about-page-v16 .about-feature-v16 p{margin:0!important;color:#94969b!important;font:400 16px/1.65 'DM Sans',sans-serif!important}
.about-page-v16 .about-mv-v16{display:grid!important;grid-template-columns:1fr 1fr!important;gap:16px!important;margin-top:25px!important}
.about-page-v16 .about-mv-v16 article{padding:24px 26px!important;border:1px solid rgba(216,195,165,.2)!important;background:rgba(255,255,255,.035)!important}
.about-page-v16 .about-mv-v16 article>span{text-transform:uppercase!important;letter-spacing:.15em!important;color:#D8C3A5!important;font:700 11px 'DM Sans',sans-serif!important}
.about-page-v16 .about-mv-v16 h3{margin:9px 0 8px!important;color:#fff!important;font-size:21px!important}.about-page-v16 .about-mv-v16 p{margin:0!important;color:#96989c!important;line-height:1.6!important}

.about-page-v16 .about-values-v16{background:#F7F1E8!important;padding:108px 0 120px!important;overflow:hidden!important}
.about-page-v16 .about-values-v16-inner{width:min(1280px,calc(100% - 64px))!important;margin:0 auto!important}
.about-page-v16 .about-values-v16-head{text-align:center!important;max-width:820px!important;margin:0 auto 52px!important}
.about-page-v16 .about-values-v16-head>span{text-transform:uppercase!important;letter-spacing:.18em!important;font:700 12px 'DM Sans',sans-serif!important;color:#9E2A2B!important}
.about-page-v16 .about-values-v16-head h2{margin:10px 0 0!important;font-family:'Playfair Display',serif!important;font-size:clamp(46px,5vw,72px)!important;line-height:1.02!important;color:#0B1F33!important}
.about-page-v16 .about-values-v16-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important;perspective:1200px!important}
.about-page-v16 .about-values-v16-grid article{position:relative!important;min-height:285px!important;padding:30px!important;border:1px solid rgba(11,31,51,.12)!important;background:#fff!important;box-shadow:0 18px 38px rgba(11,31,51,.07)!important;overflow:hidden!important;transform-style:preserve-3d!important;transition:transform .5s ease,box-shadow .5s ease,border-color .5s ease!important}
.about-page-v16 .about-values-v16-grid article::before{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:#9E2A2B;transform:scaleX(0);transform-origin:left;transition:transform .45s ease}
.about-page-v16 .about-values-v16-grid article:hover{transform:translateY(-12px) rotateX(2deg)!important;box-shadow:0 28px 52px rgba(11,31,51,.12)!important;border-color:rgba(158,42,43,.28)!important}
.about-page-v16 .about-values-v16-grid article:hover::before{transform:scaleX(1)}
.about-page-v16 .about-values-v16-grid article>i{width:54px!important;height:54px!important;display:grid!important;place-items:center!important;border-radius:50%!important;background:#0B1F33!important;color:#D8C3A5!important;font-size:20px!important}
.about-page-v16 .about-values-v16-grid article>span{position:absolute!important;right:24px!important;top:20px!important;font-family:'Playfair Display',serif!important;font-size:40px!important;color:rgba(158,42,43,.13)!important}
.about-page-v16 .about-values-v16-grid h3{margin:auto 0 10px!important;padding-top:62px!important;font-size:28px!important;color:#0B1F33!important}.about-page-v16 .about-values-v16-grid p{margin:0!important;color:#68717a!important;line-height:1.65!important}
/* stronger staggered scroll entrance for the value cards */
.about-page-v16 .about-values-v16-grid article.reveal{opacity:0!important;filter:blur(8px)!important}
.about-page-v16 .about-values-v16-grid article:nth-child(1).reveal{transform:translate3d(-70px,45px,0) rotate(-3deg)!important}
.about-page-v16 .about-values-v16-grid article:nth-child(2).reveal{transform:translate3d(0,75px,0) rotate(1deg)!important}
.about-page-v16 .about-values-v16-grid article:nth-child(3).reveal{transform:translate3d(0,75px,0) rotate(-1deg)!important}
.about-page-v16 .about-values-v16-grid article:nth-child(4).reveal{transform:translate3d(70px,45px,0) rotate(3deg)!important}
.about-page-v16 .about-values-v16-grid article.reveal.visible{opacity:1!important;filter:blur(0)!important;transform:translate3d(0,0,0) rotate(0)!important;transition:opacity .75s ease,transform .85s cubic-bezier(.2,.8,.2,1),filter .7s ease,box-shadow .5s ease,border-color .5s ease!important}
.about-page-v16 .about-values-v16-grid article:nth-child(2).reveal.visible{transition-delay:.1s!important}.about-page-v16 .about-values-v16-grid article:nth-child(3).reveal.visible{transition-delay:.2s!important}.about-page-v16 .about-values-v16-grid article:nth-child(4).reveal.visible{transition-delay:.3s!important}

@media(max-width:1100px){
 .about-page-v16 .about-story-v16-inner{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important;gap:48px!important}.about-page-v16 .about-story-v16-media{height:620px!important}.about-page-v16 .about-values-v16-grid{grid-template-columns:1fr 1fr!important}
}
@media(max-width:800px){
 .about-page-v16 .about-hero-v16{min-height:360px!important;background-position:center!important}.about-page-v16 .about-story-v16{padding:76px 0!important}.about-page-v16 .about-story-v16-inner{width:min(100% - 32px,1420px)!important;grid-template-columns:1fr!important}.about-page-v16 .about-story-v16-media{height:min(620px,105vw)!important}.about-page-v16 .about-mv-v16{grid-template-columns:1fr!important}.about-page-v16 .about-values-v16-inner{width:min(100% - 32px,1280px)!important}.about-page-v16 .about-values-v16{padding:78px 0 88px!important}
}
@media(max-width:560px){
 .about-page-v16 .about-hero-v16{min-height:300px!important}.about-page-v16 .about-hero-v16-content h1{font-size:clamp(38px,11vw,52px)!important}.about-page-v16 .about-story-v16-copy h2{font-size:clamp(39px,11vw,53px)!important}.about-page-v16 .about-values-v16-grid{grid-template-columns:1fr!important}.about-page-v16 .about-values-v16-grid article{min-height:250px!important}
}
@media(prefers-reduced-motion:reduce){.about-page-v16 .about-values-v16-grid article.reveal{opacity:1!important;filter:none!important;transform:none!important;transition:none!important}}


/* ===== Consolidated from patch-v17.css ===== */
/* v17: unified internal banners, About refinements, footer refinements */

/* Unified top banner on About + Services + Locations + Portfolio + Video + Contact */
.internal-page-v17 .about-hero-v16,
.about-page-v16 .about-hero-v16{
  position:relative!important;
  min-height:430px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  isolation:isolate!important;
  background-image:var(--about-hero)!important;
  background-size:cover!important;
  background-position:center 46%!important;
}
.internal-page-v17 .about-hero-v16::before,
.about-page-v16 .about-hero-v16::before{
  content:"";
  position:absolute;
  inset:0;
  background:var(--about-hero) center 46%/cover no-repeat;
  z-index:-2;
  transform:scale(1.015);
}
.internal-page-v17 .about-hero-v16-overlay,
.about-page-v16 .about-hero-v16-overlay{
  position:absolute!important;
  inset:0!important;
  z-index:-1!important;
  background:rgba(8,18,28,.26)!important;
  backdrop-filter:none!important;
}
.internal-page-v17 .about-hero-v16-content,
.about-page-v16 .about-hero-v16-content{
  position:relative!important;
  z-index:2!important;
  width:min(100% - 32px,1000px)!important;
  text-align:center!important;
  color:#fff!important;
}
.internal-page-v17 .about-hero-v16-content h1,
.about-page-v16 .about-hero-v16-content h1{
  margin:0 0 24px!important;
  color:#fff!important;
  font-family:'Playfair Display',serif!important;
  font-size:clamp(46px,5vw,76px)!important;
  font-weight:600!important;
  letter-spacing:.01em!important;
  line-height:1!important;
  text-shadow:0 3px 18px rgba(0,0,0,.22)!important;
}
.internal-page-v17 .about-hero-v16-crumb,
.about-page-v16 .about-hero-v16-crumb{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  gap:9px!important;
  color:#fff!important;
  font:500 15px/1.2 'DM Sans',sans-serif!important;
}
.internal-page-v17 .about-hero-v16-crumb a,
.internal-page-v17 .about-hero-v16-crumb b,
.about-page-v16 .about-hero-v16-crumb a,
.about-page-v16 .about-hero-v16-crumb b{
  color:#fff!important;
  text-decoration:none!important;
  font-weight:500!important;
}
.internal-page-v17 .about-hero-v16-crumb span,
.about-page-v16 .about-hero-v16-crumb span{opacity:.78!important}

/* About story: warm light tone requested */
.about-page-v16 .about-story-v16{
  background:#F7F1E8!important;
  color:#0B1F33!important;
  padding:112px 0!important;
}
.about-page-v16 .about-story-v16-media{
  box-shadow:0 25px 60px rgba(11,31,51,.16)!important;
}
.about-page-v16 .about-story-v16-media::before{
  border:1px solid rgba(158,42,43,.16)!important;
}
.about-page-v16 .about-kicker-v16{color:#9E2A2B!important}
.about-page-v16 .about-kicker-v16::before{background:#9E2A2B!important}
.about-page-v16 .about-story-v16-copy h2{color:#0B1F33!important}
.about-page-v16 .about-story-v16-copy h2 em{color:#9E2A2B!important}
.about-page-v16 .about-story-lead-v16{color:#5e6873!important}
.about-page-v16 .about-feature-v16{
  border-top:1px solid rgba(11,31,51,.12)!important;
  transition:transform .45s ease,background .45s ease,padding .45s ease!important;
}
.about-page-v16 .about-feature-v16:hover{
  transform:translateX(8px)!important;
  background:rgba(255,255,255,.38)!important;
  padding-left:14px!important;
}
.about-page-v16 .about-feature-v16>i{
  border:1px solid rgba(158,42,43,.25)!important;
  color:#9E2A2B!important;
  background:rgba(255,255,255,.52)!important;
}
.about-page-v16 .about-feature-v16 h3{color:#0B1F33!important}
.about-page-v16 .about-feature-v16 p{color:#68717a!important}

/* Animated Mission + Vision cards */
.about-page-v16 .about-mv-v16{perspective:1200px!important}
.about-page-v16 .about-mv-v16 article{
  position:relative!important;
  overflow:hidden!important;
  padding:28px!important;
  background:rgba(255,255,255,.62)!important;
  border:1px solid rgba(11,31,51,.12)!important;
  box-shadow:0 12px 30px rgba(11,31,51,.06)!important;
  transform:translateY(18px)!important;
  opacity:.82!important;
  transition:transform .55s cubic-bezier(.2,.8,.2,1),box-shadow .55s ease,border-color .55s ease,opacity .55s ease!important;
}
.about-page-v16 .about-mv-v16 article::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:4px;
  background:#9E2A2B;
  transform:scaleY(0);
  transform-origin:bottom;
  transition:transform .5s ease!important;
}
.about-page-v16 .about-mv-v16 article:hover{
  transform:translateY(-10px) rotateX(2deg)!important;
  border-color:rgba(158,42,43,.32)!important;
  box-shadow:0 24px 46px rgba(11,31,51,.12)!important;
  opacity:1!important;
}
.about-page-v16 .about-mv-v16 article:hover::before{transform:scaleY(1)!important}
.about-page-v16 .about-mv-v16 article>span{color:#9E2A2B!important}
.about-page-v16 .about-mv-v16 h3{color:#0B1F33!important}
.about-page-v16 .about-mv-v16 p{color:#68717a!important}
.about-page-v16 .about-story-v16-copy.reveal{transform:translateX(46px)!important}
.about-page-v16 .about-story-v16-copy.reveal.visible{transform:translateX(0)!important;transition:opacity .85s ease,transform .95s cubic-bezier(.2,.8,.2,1)!important}
.about-page-v16 .about-story-v16-media.reveal{transform:translateX(-46px) scale(.98)!important}
.about-page-v16 .about-story-v16-media.reveal.visible{transform:translateX(0) scale(1)!important;transition:opacity .85s ease,transform 1s cubic-bezier(.2,.8,.2,1)!important}

/* Values: deep blue + stronger card motion */
.about-page-v16 .about-values-v16{
  position:relative!important;
  background:#0B1F33!important;
  color:#fff!important;
}
.about-page-v16 .about-values-v16::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 14% 18%,rgba(216,195,165,.10),transparent 24%),
    radial-gradient(circle at 86% 75%,rgba(158,42,43,.12),transparent 26%);
}
.about-page-v16 .about-values-v16-inner{position:relative!important;z-index:1!important}
.about-page-v16 .about-values-v16-head>span{color:#D8C3A5!important}
.about-page-v16 .about-values-v16-head h2{color:#fff!important}
.about-page-v16 .about-values-v16-grid article{
  border-color:rgba(255,255,255,.12)!important;
  background:rgba(255,255,255,.055)!important;
  box-shadow:0 20px 48px rgba(0,0,0,.18)!important;
  backdrop-filter:blur(7px)!important;
}
.about-page-v16 .about-values-v16-grid article::before{background:#D8C3A5!important}
.about-page-v16 .about-values-v16-grid article::after{
  content:"";
  position:absolute;
  width:110px;
  height:110px;
  border:1px solid rgba(216,195,165,.16);
  border-radius:50%;
  right:-46px;
  bottom:-50px;
  transition:transform .65s ease,border-color .65s ease!important;
}
.about-page-v16 .about-values-v16-grid article:hover{
  transform:translateY(-16px) rotateX(5deg) rotateY(-2deg) scale(1.025)!important;
  border-color:rgba(216,195,165,.42)!important;
  box-shadow:0 32px 66px rgba(0,0,0,.28)!important;
}
.about-page-v16 .about-values-v16-grid article:hover::after{transform:scale(1.55)!important;border-color:rgba(216,195,165,.36)!important}
.about-page-v16 .about-values-v16-grid article>i{background:#D8C3A5!important;color:#0B1F33!important;transition:transform .55s ease!important}
.about-page-v16 .about-values-v16-grid article:hover>i{transform:rotate(-10deg) scale(1.12)!important}
.about-page-v16 .about-values-v16-grid article>span{color:rgba(216,195,165,.2)!important}
.about-page-v16 .about-values-v16-grid h3{color:#fff!important}
.about-page-v16 .about-values-v16-grid p{color:rgba(255,255,255,.68)!important}
.about-page-v16 .about-values-v16-grid article:nth-child(1).reveal{transform:translate3d(-110px,75px,0) rotate(-6deg) scale(.92)!important}
.about-page-v16 .about-values-v16-grid article:nth-child(2).reveal{transform:translate3d(-25px,120px,0) rotate(3deg) scale(.92)!important}
.about-page-v16 .about-values-v16-grid article:nth-child(3).reveal{transform:translate3d(25px,120px,0) rotate(-3deg) scale(.92)!important}
.about-page-v16 .about-values-v16-grid article:nth-child(4).reveal{transform:translate3d(110px,75px,0) rotate(6deg) scale(.92)!important}
.about-page-v16 .about-values-v16-grid article.reveal.visible{
  opacity:1!important;
  filter:blur(0)!important;
  transform:translate3d(0,0,0) rotate(0) scale(1)!important;
  transition:opacity .8s ease,transform 1s cubic-bezier(.16,1,.3,1),filter .75s ease,box-shadow .5s ease,border-color .5s ease!important;
}

/* Footer: larger logo without any box/background, smaller refined quick-link icons */
.footer-v14-logo{
  width:190px!important;
  height:auto!important;
  min-height:0!important;
  margin:0 auto 22px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  overflow:visible!important;
  box-shadow:none!important;
}
.footer-v14-logo img{
  width:100%!important;
  height:auto!important;
  max-width:190px!important;
  max-height:none!important;
  object-fit:contain!important;
  background:transparent!important;
  border:0!important;
}
.footer-v14-links>a{gap:10px!important;margin-bottom:12px!important}
.footer-v14-links>a i{
  width:19px!important;
  height:19px!important;
  flex:0 0 19px!important;
  display:inline-grid!important;
  place-items:center!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#9E2A2B!important;
  font-size:12px!important;
  transition:transform .3s ease,color .3s ease!important;
}
.footer-v14-links>a:hover i{transform:translateX(3px) rotate(-5deg)!important;color:#0B1F33!important}
.footer-v14-links>a[href="index.html"] i::before{content:"\f015"}
.footer-v14-links>a[href="about.html"] i::before{content:"\f2bd"}
.footer-v14-links>a[href="services.html"] i::before{content:"\f0c4"}
.footer-v14-links>a[href="locations.html"] i::before{content:"\f3c5"}
.footer-v14-links>a[href="portfolio.html"] i::before{content:"\f03e"}
.footer-v14-links>a[href="video.html"] i::before{content:"\f144"}
.footer-v14-links>a[href="contact.html"] i::before{content:"\f0e0"}

@media(max-width:800px){
  .internal-page-v17 .about-hero-v16,.about-page-v16 .about-hero-v16{min-height:350px!important;background-position:center!important}
  .footer-v14-logo{width:165px!important}
  .footer-v14-logo img{max-width:165px!important}
}
@media(max-width:560px){
  .internal-page-v17 .about-hero-v16,.about-page-v16 .about-hero-v16{min-height:300px!important}
  .internal-page-v17 .about-hero-v16-content h1,.about-page-v16 .about-hero-v16-content h1{font-size:clamp(38px,11vw,52px)!important}
  .footer-v14-logo{width:150px!important}
  .footer-v14-logo img{max-width:150px!important}
}
@media(prefers-reduced-motion:reduce){
  .about-page-v16 .about-story-v16-copy.reveal,.about-page-v16 .about-story-v16-media.reveal,
  .about-page-v16 .about-values-v16-grid article.reveal{transform:none!important;opacity:1!important;filter:none!important;transition:none!important}
}


/* ===== Consolidated from patch-v18.css ===== */
/* v18: requested interaction, locations, portfolio, contact, footer */
.site-header{position:relative!important;top:auto!important}

/* About professional parallax / tilt */
.about-page-v16 .pro-parallax-media{overflow:hidden!important;transform-style:preserve-3d!important;perspective:1000px!important}
.about-page-v16 .pro-parallax-media img{width:100%!important;height:100%!important;object-fit:cover!important;transform:scale(1.08);transition:transform .18s linear,filter .55s ease!important;will-change:transform!important}
.about-page-v16 .pro-parallax-media:hover img{filter:saturate(1.06) contrast(1.04)!important}
.about-page-v16 .about-mv-v16 article{transform-style:preserve-3d!important;will-change:transform!important}
.about-page-v16 .about-mv-v16 article h3,.about-page-v16 .about-mv-v16 article p,.about-page-v16 .about-mv-v16 article>span{transform:translateZ(22px)!important}
.about-page-v16 .about-mv-v16 article::after{content:"";position:absolute;inset:-50%;background:linear-gradient(115deg,transparent 42%,rgba(255,255,255,.55) 50%,transparent 58%);transform:translateX(-70%) rotate(12deg);transition:transform .75s ease;pointer-events:none}
.about-page-v16 .about-mv-v16 article:hover::after{transform:translateX(70%) rotate(12deg)}

/* Locations */
.locations-v18{padding:105px 0;display:grid;grid-template-columns:.82fr 1.18fr;gap:54px;align-items:center}
.locations-v18-copy{max-width:520px}.locations-v18-copy h2{font-size:clamp(42px,4.6vw,68px)}.locations-v18-copy>p{color:#68717a;margin:22px 0 30px}
.address-stack-v18{display:grid;gap:12px}.address-stack-v18>a{display:grid;grid-template-columns:42px 1fr 20px;align-items:center;gap:12px;padding:17px 18px;background:#fff;border:1px solid rgba(11,31,51,.1);border-radius:14px;box-shadow:0 10px 28px rgba(11,31,51,.06);transition:.35s ease}.address-stack-v18>a>i:first-child{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#0B1F33;color:#D8C3A5}.address-stack-v18>a>i:last-child{font-size:12px;color:#9E2A2B}.address-stack-v18 small{display:block;text-transform:uppercase;letter-spacing:.14em;color:#9E2A2B;font-size:10px;margin-bottom:3px}.address-stack-v18 strong{font-size:13px}.address-stack-v18>a:hover{transform:translateX(8px);border-color:rgba(158,42,43,.3);box-shadow:0 18px 34px rgba(11,31,51,.1)}
.locations-map-v18{height:480px;border-radius:26px;overflow:hidden;box-shadow:0 30px 70px rgba(11,31,51,.16);position:relative}.locations-map-v18:after{content:"";position:absolute;inset:16px;border:1px solid rgba(216,195,165,.8);border-radius:18px;pointer-events:none}.locations-map-v18 iframe{width:100%;height:100%;border:0;display:block}
.coverage-v18{position:relative;overflow:hidden;background:#0B1F33!important;padding:110px 0!important}.coverage-v18 .section-head{position:relative;z-index:2}.coverage-v18 .section-head p{color:rgba(255,255,255,.68);max-width:690px}.location-grid-v18{position:relative;z-index:2;grid-template-columns:repeat(4,1fr)!important;gap:14px!important}.location-grid-v18 .location-pill{position:relative;overflow:hidden;background:rgba(255,255,255,.055)!important;border:1px solid rgba(216,195,165,.18)!important;color:#fff!important;border-radius:16px!important;padding:22px 18px!important;display:flex!important;align-items:center!important;gap:12px!important;min-height:76px;transition:transform .45s cubic-bezier(.2,.8,.2,1),background .35s,border-color .35s,box-shadow .35s!important;box-shadow:0 12px 26px rgba(0,0,0,.12)}.location-grid-v18 .location-pill:before{content:"";position:absolute;width:90px;height:90px;border:1px solid rgba(216,195,165,.14);border-radius:50%;right:-45px;bottom:-52px;transition:.5s}.location-grid-v18 .location-pill i{color:#D8C3A5;font-size:17px;transition:.4s}.location-grid-v18 .location-pill span{font:600 19px 'Playfair Display',serif}.location-grid-v18 .location-pill b{margin-left:auto;color:#9E2A2B;opacity:0;transform:translate(-8px,8px);transition:.35s}.location-grid-v18 .location-pill:hover{transform:translateY(-10px) rotate(-1deg)!important;background:rgba(216,195,165,.11)!important;border-color:rgba(216,195,165,.5)!important;box-shadow:0 24px 46px rgba(0,0,0,.22)}.location-grid-v18 .location-pill:hover:before{transform:scale(1.45)}.location-grid-v18 .location-pill:hover i{transform:translateY(-3px) rotate(-10deg) scale(1.15)}.location-grid-v18 .location-pill:hover b{opacity:1;transform:none}.service-corner-decor{position:absolute;width:210px;height:210px;border:1px solid rgba(216,195,165,.14);border-radius:50%;display:grid;place-items:center;color:rgba(216,195,165,.16);font-size:68px;animation:cornerFloatV18 7s ease-in-out infinite}.decor-left{left:-70px;top:-52px}.decor-right{right:-70px;bottom:-52px;animation-delay:-3s}.service-corner-decor:after{content:"";position:absolute;inset:18px;border:1px dashed rgba(216,195,165,.16);border-radius:50%;animation:spinV18 16s linear infinite}@keyframes cornerFloatV18{50%{transform:translateY(16px) rotate(7deg)}}@keyframes spinV18{to{transform:rotate(360deg)}}

/* Portfolio */
.portfolio-grid{gap:14px!important;padding-bottom:110px}.portfolio-v18-item{min-height:360px!important;border-radius:18px!important;overflow:hidden!important;border:0!important;position:relative!important;background-size:cover!important;background-position:center!important;cursor:zoom-in!important;box-shadow:0 12px 30px rgba(11,31,51,.08)!important;transition:transform .55s cubic-bezier(.2,.8,.2,1),box-shadow .55s,filter .55s!important}.portfolio-v18-item:before{content:"";position:absolute;inset:0;background:linear-gradient(145deg,rgba(11,31,51,0),rgba(11,31,51,.48));opacity:0;transition:.45s}.portfolio-v18-item:after{content:"\f00e";font-family:"Font Awesome 6 Free";font-weight:900;position:absolute;left:50%;top:50%;width:62px;height:62px;margin:-31px;border-radius:50%;display:grid;place-items:center;background:rgba(247,241,232,.94);color:#0B1F33;font-size:20px;opacity:0;transform:scale(.65) rotate(-20deg);transition:.45s}.portfolio-v18-item:hover{transform:translateY(-9px) scale(1.018)!important;box-shadow:0 28px 58px rgba(11,31,51,.18)!important;filter:saturate(1.08)}.portfolio-v18-item:hover:before,.portfolio-v18-item:hover:after{opacity:1}.portfolio-v18-item:hover:after{transform:scale(1) rotate(0)}.portfolio-v18-item:nth-child(5n+1){min-height:470px!important}.lightbox.open img{animation:lightboxInV18 .5s cubic-bezier(.2,.8,.2,1)}@keyframes lightboxInV18{from{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}

/* Video coming soon */
.video-soon-v18{position:relative;overflow:hidden;background:#0B1F33;color:#fff;min-height:660px;display:grid;place-items:center;padding:100px 0}.video-soon-v18:before{content:"COMING SOON";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font:700 clamp(80px,15vw,230px)/.8 'DM Sans',sans-serif;letter-spacing:-.07em;color:rgba(255,255,255,.025);white-space:nowrap}.video-soon-v18-inner{text-align:center;position:relative;z-index:2;max-width:800px}.video-soon-v18 h2{font-size:clamp(62px,8vw,110px);margin:12px 0 20px}.video-soon-v18 p{max-width:620px;margin:0 auto 28px;color:rgba(255,255,255,.7);font-size:17px}.video-play-v18{width:106px;height:106px;border:1px solid rgba(216,195,165,.5);border-radius:50%;margin:0 auto 24px;display:grid;place-items:center;position:relative;color:#0B1F33;background:#D8C3A5;box-shadow:0 0 0 16px rgba(216,195,165,.06)}.video-play-v18 span{position:absolute;inset:-16px;border:1px dashed rgba(216,195,165,.34);border-radius:50%;animation:spinV18 13s linear infinite}.video-play-v18 i{margin-left:5px;font-size:26px;animation:pulsePlayV18 2s ease-in-out infinite}@keyframes pulsePlayV18{50%{transform:scale(1.2)}}.video-tags-v18{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-bottom:34px}.video-tags-v18 span{border:1px solid rgba(216,195,165,.25);padding:9px 14px;border-radius:999px;font-size:12px;color:#D8C3A5;transition:.3s}.video-tags-v18 span:hover{background:#D8C3A5;color:#0B1F33;transform:translateY(-4px)}.video-orbit-v18{position:absolute;border:1px solid rgba(216,195,165,.12);border-radius:50%;animation:orbitV18 10s ease-in-out infinite}.orbit-one{width:460px;height:460px;left:-180px;top:80px}.orbit-two{width:620px;height:620px;right:-260px;bottom:-240px;animation-delay:-4s}@keyframes orbitV18{50%{transform:scale(1.08) translateY(-12px)}}

/* Contact */
.contact-grid{align-items:start!important}.contact-info-v18 h2{font-size:clamp(42px,4.4vw,66px);margin-bottom:30px}.contact-cards-v18{display:grid;grid-template-columns:1fr 1fr;gap:12px}.contact-cards-v18>a,.contact-cards-v18>div{display:grid!important;grid-template-columns:44px 1fr!important;gap:13px!important;align-items:center!important;padding:15px!important;margin:0!important;background:#fff!important;border:1px solid rgba(11,31,51,.09)!important;border-radius:14px!important;transition:.35s!important;box-shadow:0 8px 22px rgba(11,31,51,.045)!important}.contact-cards-v18>a>i,.contact-cards-v18>div>i{width:44px!important;height:44px!important;border-radius:50%!important;background:#0B1F33!important;color:#D8C3A5!important;display:grid!important;place-items:center!important;font-size:15px!important;transition:.35s!important}.contact-cards-v18 small{display:block!important;text-transform:uppercase;letter-spacing:.11em;font-size:9px;color:#9E2A2B;margin-bottom:3px}.contact-cards-v18 strong{font-size:12px;line-height:1.45;overflow-wrap:anywhere}.contact-cards-v18>a:hover{transform:translateY(-6px)!important;border-color:rgba(158,42,43,.28)!important;box-shadow:0 18px 34px rgba(11,31,51,.1)!important;color:#9E2A2B!important}.contact-cards-v18>a:hover>i{background:#9E2A2B!important;color:#fff!important;transform:rotate(-8deg) scale(1.06)}.contact-cards-v18>a:hover strong{color:#9E2A2B!important}.ghl-frame-wrap{min-height:748px!important}.ghl-frame-wrap iframe{min-height:748px!important}.map-wide{background:#0B1F33!important;color:#fff!important;padding-top:70px!important}.map-wide .map-heading .eyebrow{color:#D8C3A5!important}.map-wide .map-heading h2{color:#fff!important}.map-wide .map-heading h2 em{color:#D8C3A5!important}

/* Footer */
.footer-v14-logo{width:245px!important;max-width:245px!important;animation:footerLogoFloatV18 5s ease-in-out infinite;transform-origin:center}.footer-v14-logo img{max-width:245px!important;filter:drop-shadow(0 12px 20px rgba(11,31,51,.08))}@keyframes footerLogoFloatV18{50%{transform:translateY(-7px) scale(1.025)}}
.footer-contact-v18>a,.footer-contact-v18>span{gap:10px!important}.footer-contact-v18 i{width:19px!important;height:19px!important;display:grid!important;place-items:center!important;background:transparent!important;color:#9E2A2B!important;font-size:12px!important}.footer-contact-v18>a,.footer-contact-v18>a span{transition:color .28s ease,transform .28s ease!important}.footer-contact-v18>a:hover{color:#9E2A2B!important;transform:translateX(4px)!important}.footer-contact-v18>a:hover span{color:#9E2A2B!important}
.footer-social-v18 a{position:relative!important;overflow:visible!important;animation:socialBobV18 3.8s ease-in-out infinite}.footer-social-v18 a:nth-child(2){animation-delay:-1.2s}.footer-social-v18 a:nth-child(3){animation-delay:-2.4s}.footer-social-v18 a:after{content:"";position:absolute;inset:-5px;border:1px solid rgba(158,42,43,.18);border-radius:50%;transform:scale(.75);opacity:0;transition:.3s}.footer-social-v18 a:hover:after{transform:scale(1.15);opacity:1}@keyframes socialBobV18{50%{transform:translateY(-4px) rotate(3deg)}}
.service-corner-v18 a{transition:transform .35s cubic-bezier(.2,.8,.2,1),color .3s!important}.service-corner-v18 a i{transition:transform .35s,background .35s,color .35s!important}.service-corner-v18 a:hover{transform:translateY(-7px) rotate(-2deg)!important;color:#9E2A2B!important}.service-corner-v18 a:hover i{transform:rotate(-12deg) scale(1.13)!important}

@media(max-width:900px){.locations-v18{grid-template-columns:1fr}.locations-v18-copy{max-width:none}.location-grid-v18{grid-template-columns:repeat(2,1fr)!important}.contact-cards-v18{grid-template-columns:1fr}.footer-v14-logo{width:205px!important}.footer-v14-logo img{max-width:205px!important}}
@media(max-width:560px){.locations-v18{padding:70px 0;gap:28px}.locations-map-v18{height:380px}.location-grid-v18{grid-template-columns:1fr!important}.portfolio-grid{grid-template-columns:repeat(2,1fr)!important;gap:8px!important}.portfolio-v18-item,.portfolio-v18-item:nth-child(5n+1){min-height:230px!important;border-radius:10px!important}.video-soon-v18{min-height:580px}.footer-v14-logo{width:185px!important}.footer-v14-logo img{max-width:185px!important}}
@media(prefers-reduced-motion:reduce){.footer-v14-logo,.footer-social-v18 a,.service-corner-decor,.service-corner-decor:after,.video-play-v18 span,.video-play-v18 i,.video-orbit-v18{animation:none!important}.about-page-v16 .pro-parallax-media img{transform:none!important}}


/* ===== Consolidated from patch-v19.css ===== */
/* v19: clean portfolio, interactive service panels, title-by-title letter animation, contact email line fix */

/* ---------- Letter-by-letter title animation ---------- */
.letter-title .title-word{display:inline-block;white-space:nowrap}
.letter-title .title-letter{display:inline-block;opacity:0;filter:blur(7px);transform:translate3d(0,.72em,0) rotateX(-72deg);transform-origin:50% 100%;transition:opacity .62s cubic-bezier(.2,.75,.2,1),transform .72s cubic-bezier(.2,.75,.2,1),filter .62s ease;transition-delay:calc(var(--letter-i,0) * 24ms)}
.letter-title.is-letter-visible .title-letter{opacity:1;filter:blur(0);transform:translate3d(0,0,0) rotateX(0)}
@media (prefers-reduced-motion:reduce){.letter-title .title-letter{opacity:1!important;filter:none!important;transform:none!important;transition:none!important}}

/* ---------- Services: 3 interactive panels + 3 interactive panels ---------- */
.services-v19-wrap{background:#F7F1E8;padding:96px 0 110px;overflow:hidden}
.services-v19-intro{max-width:900px;margin-bottom:48px}
.services-v19-intro h2{font-family:"Playfair Display",serif;font-size:clamp(44px,6vw,82px);line-height:.98;color:#0B1F33;letter-spacing:-.035em;margin:12px 0 20px}
.services-v19-intro h2 em{color:#9E2A2B;font-weight:600}.services-v19-intro p{max-width:760px;font-size:16px;line-height:1.75;color:#5e6470}
.service-showcase-group{--service-bg:none;position:relative;display:grid;grid-template-columns:repeat(3,1fr);min-height:620px;max-width:1440px;margin:0 auto 34px;background:#0B1F33;overflow:hidden;isolation:isolate;border-top:1px solid rgba(255,255,255,.24);border-bottom:1px solid rgba(255,255,255,.24)}
.service-showcase-bg{position:absolute;inset:-2%;z-index:-2;background-image:linear-gradient(180deg,rgba(11,31,51,.13),rgba(11,31,51,.28) 44%,rgba(7,18,30,.88) 100%),var(--service-bg);background-position:center;background-size:cover;transition:background-image .25s ease,transform 1s cubic-bezier(.2,.7,.2,1);transform:scale(1.035)}
.service-showcase-group:hover .service-showcase-bg{transform:scale(1.075)}
.service-showcase-group:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(11,31,51,.12),transparent 48%,rgba(11,31,51,.1));pointer-events:none}
.service-panel{position:relative;appearance:none;border:0;border-right:1px solid rgba(255,255,255,.28);background:linear-gradient(180deg,rgba(11,31,51,.02),rgba(11,31,51,.12));color:#fff;text-align:left;padding:0 42px 54px;display:flex;flex-direction:column;justify-content:flex-end;min-width:0;cursor:pointer;overflow:hidden;transition:background .5s ease,flex .55s cubic-bezier(.2,.75,.2,1),padding .45s ease}
.service-panel:last-child{border-right:0}.service-panel:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(158,42,43,0),rgba(158,42,43,.12));opacity:0;transition:.45s}.service-panel:after{content:"";position:absolute;left:42px;right:42px;bottom:34px;height:2px;background:#D8C3A5;transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.2,.75,.2,1)}
.service-panel:hover,.service-panel:focus-visible,.service-panel.is-active{background:linear-gradient(180deg,rgba(11,31,51,.03),rgba(11,31,51,.44))}.service-panel.is-active:before{opacity:1}.service-panel.is-active:after{transform:scaleX(1)}
.service-panel-number{font-family:"Playfair Display",serif;font-size:clamp(68px,7vw,106px);line-height:.8;color:rgba(247,241,232,.42);margin-bottom:22px;transition:color .45s,transform .45s}.service-panel.is-active .service-panel-number{color:#F7F1E8;transform:translateY(-8px)}
.service-panel-title{font-family:"Playfair Display",serif;font-size:clamp(24px,2vw,34px);font-weight:600;line-height:1.1;margin-bottom:12px}.service-panel-kicker{font-size:15px;font-weight:600;letter-spacing:.02em;color:#F7F1E8;opacity:.86}
.service-panel-detail{display:block;max-height:0;opacity:0;overflow:hidden;transform:translateY(14px);font-size:14px;line-height:1.65;color:rgba(255,255,255,.9);max-width:400px;transition:max-height .6s ease,opacity .45s ease,transform .5s ease,margin .5s ease}.service-panel.is-active .service-panel-detail{max-height:170px;opacity:1;transform:none;margin-top:18px;margin-bottom:18px}
.service-panel-list{display:grid;grid-template-columns:1fr 1fr;gap:7px 18px}.service-panel-list span:before{content:"•";color:#D8C3A5;margin-right:7px}
.services-v19-cta{margin-top:0!important}.services-v19-cta .container{align-items:center}

/* ---------- Portfolio: clean, balanced grid ---------- */
.portfolio-section-v19{padding-top:84px!important;padding-bottom:110px!important;max-width:1420px!important}
.portfolio-grid-v19{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important;align-items:stretch!important;padding-bottom:0!important}
.portfolio-grid-v19 .portfolio-v18-item,.portfolio-grid-v19 .portfolio-v18-item:nth-child(5n+1){width:100%!important;min-height:0!important;height:auto!important;aspect-ratio:4/5!important;border-radius:14px!important;margin:0!important;transform:none;box-shadow:0 10px 28px rgba(11,31,51,.08)!important}
.portfolio-grid-v19 .portfolio-v18-item:nth-child(4n+2),.portfolio-grid-v19 .portfolio-v18-item:nth-child(4n+4){transform:translateY(24px)}
.portfolio-grid-v19 .portfolio-v18-item:hover{transform:translateY(-7px) scale(1.018)!important;z-index:3;box-shadow:0 28px 52px rgba(11,31,51,.19)!important}
.portfolio-grid-v19 .portfolio-v18-item:nth-child(4n+2):hover,.portfolio-grid-v19 .portfolio-v18-item:nth-child(4n+4):hover{transform:translateY(17px) scale(1.018)!important}

/* ---------- Contact: emails stay on one line ---------- */
.contact-cards-v18>a[href^="mailto:"]{grid-column:1/-1!important}
.contact-cards-v18>a[href^="mailto:"] strong{white-space:nowrap!important;overflow:visible!important;overflow-wrap:normal!important;word-break:normal!important;font-size:clamp(10.5px,1vw,12.5px)!important;letter-spacing:-.015em}

@media(max-width:1050px){.portfolio-grid-v19{grid-template-columns:repeat(3,minmax(0,1fr))!important}.portfolio-grid-v19 .portfolio-v18-item:nth-child(n){transform:none}.service-panel{padding-left:28px;padding-right:28px}.service-panel:after{left:28px;right:28px}}
@media(max-width:760px){.services-v19-wrap{padding:72px 0 82px}.services-v19-intro{padding:0 22px;margin-bottom:34px}.service-showcase-group{display:grid;grid-template-columns:1fr;min-height:0;margin-bottom:22px;background:#0B1F33}.service-showcase-bg{display:none}.service-panel{min-height:330px;border-right:0;border-bottom:1px solid rgba(255,255,255,.25);padding:34px 26px;background-image:linear-gradient(180deg,rgba(11,31,51,.2),rgba(11,31,51,.84)),var(--panel-bg);background-size:cover;background-position:center}.service-panel:last-child{border-bottom:0}.service-panel-number{font-size:66px}.service-panel-detail{max-height:190px;opacity:1;transform:none;margin-top:16px;margin-bottom:14px}.service-panel:after{left:26px;right:26px}.portfolio-section-v19{padding-top:58px!important;padding-bottom:84px!important}.portfolio-grid-v19{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.portfolio-grid-v19 .portfolio-v18-item{border-radius:10px!important;aspect-ratio:4/5!important}}
@media(max-width:390px){.contact-cards-v18>a[href^="mailto:"]{padding:12px!important;grid-template-columns:36px 1fr!important;gap:9px!important}.contact-cards-v18>a[href^="mailto:"]>i{width:36px!important;height:36px!important}.contact-cards-v18>a[href^="mailto:"] strong{font-size:9.7px!important}.portfolio-grid-v19{gap:8px!important}}


/* ===== Consolidated from patch-v20.css ===== */
/* v20: balanced portfolio, service card redesign, CTA title contrast, refined footer service links */

/* Portfolio: use column counts that divide all 16 images cleanly */
.portfolio-grid-v19{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important}
.portfolio-grid-v19 .portfolio-v18-item:nth-child(n){transform:none!important}
.portfolio-grid-v19 .portfolio-v18-item:hover{transform:translateY(-8px) scale(1.018)!important}
@media(max-width:1050px){.portfolio-grid-v19{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}}
@media(max-width:760px){.portfolio-grid-v19{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}}

/* Services: individual editorial cards matching the provided reference */
.services-v20-wrap{background:#0c0f12!important;padding:92px 0 108px!important}
.services-v20-wrap .services-v19-intro .eyebrow{color:#d8b56b}
.services-v20-wrap .services-v19-intro h2{color:#fff}
.services-v20-wrap .services-v19-intro h2 em{color:#d8b56b}
.services-v20-wrap .services-v19-intro p{color:rgba(255,255,255,.58)}
.service-cards-v20{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;max-width:1500px}
.service-card-v20{position:relative;min-height:485px;padding:42px 40px 34px;background:#111417;border:1px solid rgba(255,255,255,.11);overflow:hidden;isolation:isolate;color:#fff;display:flex;flex-direction:column;align-items:flex-start;transition:transform .5s cubic-bezier(.2,.8,.2,1),border-color .4s,box-shadow .5s}
.service-card-v20:before{content:"";position:absolute;inset:0;z-index:-2;background-image:linear-gradient(180deg,rgba(8,12,15,.28),rgba(8,12,15,.56) 48%,rgba(8,12,15,.95)),var(--card-image);background-size:cover;background-position:center;opacity:0;transform:scale(1.08);transition:opacity .55s ease,transform 1s cubic-bezier(.2,.8,.2,1)}
.service-card-v20:after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 20% 20%,rgba(216,181,107,.10),transparent 40%);opacity:.45;transition:opacity .4s}
.service-card-v20:hover,.service-card-v20:focus-within{transform:translateY(-8px);border-color:rgba(216,181,107,.58);box-shadow:0 28px 55px rgba(0,0,0,.28)}
.service-card-v20:hover:before,.service-card-v20:focus-within:before{opacity:1;transform:scale(1)}
.service-card-v20:hover:after,.service-card-v20:focus-within:after{opacity:0}
.service-card-number{font-size:21px;font-weight:700;line-height:1;color:#fff;margin-bottom:18px}
.service-card-v20 h3{font-family:"DM Sans",sans-serif!important;font-size:20px!important;line-height:1.2!important;margin:0!important;color:#fff!important;font-weight:700!important;letter-spacing:-.02em}
.service-card-icon{display:grid;place-items:center;width:76px;height:76px;margin:auto 0 42px;color:#d8b56b;font-size:48px;transition:transform .45s ease,color .35s}
.service-card-v20:hover .service-card-icon{transform:translateY(-4px) rotate(-4deg) scale(1.07);color:#f0d18f}
.service-card-v20 p{font-size:15px;line-height:1.7;color:rgba(255,255,255,.58);margin:0 0 22px;max-width:94%;transition:color .35s}
.service-card-v20:hover p{color:#fff}
.service-card-v20>a{width:100%;padding-top:18px;border-top:1px solid rgba(255,255,255,.10);display:flex;align-items:center;gap:12px;color:#d8b56b;font-weight:700;font-size:14px;text-decoration:none;transition:gap .3s,color .3s}
.service-card-v20>a:hover{gap:18px;color:#f0d18f}
.service-card-list-v20{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 16px}
.service-card-list-v20 span:before{content:"•";color:#d8b56b;margin-right:7px}
.services-v19-cta h2,.services-v19-cta h2 *{color:#fff!important}
@media(max-width:980px){.service-cards-v20{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card-v20{min-height:430px}}
@media(max-width:620px){.services-v20-wrap{padding:70px 0 80px!important}.service-cards-v20{grid-template-columns:1fr;gap:16px;padding:0 18px}.service-card-v20{min-height:390px;padding:32px 28px 28px}.service-card-icon{margin:auto 0 28px}}

/* Footer: cleaner service links inspired by the small Quick Link icon treatment */
.service-corner-v20{display:flex!important;align-items:center!important;gap:18px!important;flex-wrap:wrap!important}
.service-corner-v20 a{display:inline-flex!important;align-items:center!important;gap:7px!important;padding:0!important;border:0!important;background:transparent!important;border-radius:0!important;color:#0B1F33!important;font-size:12px!important;line-height:1!important;text-decoration:none!important;box-shadow:none!important;transition:color .28s ease,transform .28s ease!important}
.service-corner-v20 a i{display:grid!important;place-items:center!important;width:24px!important;height:24px!important;padding:0!important;border:1px solid rgba(158,42,43,.28)!important;border-radius:50%!important;background:transparent!important;color:#9E2A2B!important;font-size:10px!important;box-shadow:none!important;transition:transform .32s ease,border-color .3s,color .3s,background .3s!important}
.service-corner-v20 a:hover{transform:translateY(-3px)!important;color:#9E2A2B!important}
.service-corner-v20 a:hover i{transform:rotate(8deg) scale(1.08)!important;border-color:#9E2A2B!important;background:rgba(158,42,43,.06)!important}
@media(max-width:700px){.service-corner-v20{justify-content:center!important;gap:12px 15px!important}.service-corner-v20 a{font-size:11px!important}.service-corner-v20 a i{width:22px!important;height:22px!important;font-size:9px!important}}


/* ===== Consolidated from patch-v22.css ===== */
/* v22: restore original header, blue service cards, stronger intro copy, cleaner footer service links */

/* Keep the original pre-v21 header behavior and prevent it from following scroll. */
.site-header{position:relative!important;top:auto!important;transform:none!important}

/* Services: cream editorial section with clearly blue cards. */
.services-v19-wrap.services-v20-wrap{background:#F7F1E8!important}
.services-v19-intro h2{color:#0B1F33!important}
.services-v19-intro h2 em{color:#9E2A2B!important}
.services-v19-intro .eyebrow{color:#9E2A2B!important}
.services-v19-intro p{
  color:#26394b!important;
  opacity:1!important;
  font-weight:500!important;
  font-size:16px!important;
  line-height:1.8!important;
  max-width:850px!important;
  text-shadow:none!important;
}
.service-card-v20{
  background:#0B2942!important;
  border-color:rgba(255,255,255,.14)!important;
  box-shadow:0 16px 36px rgba(11,31,51,.12)!important;
}
.service-card-v20:after{
  background:radial-gradient(circle at 16% 12%,rgba(216,181,107,.14),transparent 42%),linear-gradient(145deg,rgba(255,255,255,.035),transparent 55%)!important;
}
.service-card-v20:hover,.service-card-v20:focus-within{
  background:#0D3353!important;
  border-color:rgba(216,181,107,.68)!important;
  box-shadow:0 28px 58px rgba(11,31,51,.28)!important;
}
.service-card-v20 p{color:rgba(255,255,255,.76)!important}
.service-card-v20:hover p{color:#fff!important}
.service-card-v20 h3,.service-card-number{color:#fff!important}
.service-card-icon{color:#DFC17E!important}
.service-card-list-v20 span{color:#fff!important}
.services-v19-cta h2,.services-v19-cta h2 *{color:#fff!important}

/* Footer service shortcuts: remove the mismatched pictograms and use elegant text markers. */
.service-corner-v20{
  display:flex!important;
  align-items:center!important;
  gap:12px 24px!important;
  flex-wrap:wrap!important;
}
.service-corner-v20 a{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:9px!important;
  padding:7px 0!important;
  border:0!important;
  background:transparent!important;
  border-radius:0!important;
  color:#0B1F33!important;
  font-family:'DM Sans',sans-serif!important;
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  box-shadow:none!important;
  transition:color .28s ease,transform .28s ease!important;
}
.service-corner-v20 a i{display:none!important}
.service-corner-v20 a:before{
  content:'';
  width:7px;
  height:7px;
  border-radius:50%;
  background:#9E2A2B;
  box-shadow:0 0 0 4px rgba(158,42,43,.08);
  transition:transform .3s ease,background .3s ease,box-shadow .3s ease;
}
.service-corner-v20 a:after{
  content:'';
  position:absolute;
  left:16px;
  right:0;
  bottom:2px;
  height:1px;
  background:#C9A66B;
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .32s ease;
}
.service-corner-v20 a:hover{color:#9E2A2B!important;transform:translateY(-2px)!important}
.service-corner-v20 a:hover:before{transform:scale(1.28);background:#C9A66B;box-shadow:0 0 0 6px rgba(201,166,107,.12)}
.service-corner-v20 a:hover:after{transform:scaleX(1)}

@media(max-width:700px){
  .service-corner-v20{justify-content:center!important;gap:8px 18px!important}
  .service-corner-v20 a{font-size:10px!important}
}


/* ===== Consolidated from patch-v23.css ===== */
/* v23: home header overlays hero, portfolio headline contrast, icon-only footer shortcuts */

/* HOME ONLY: place the existing header directly over the hero. It is not sticky/fixed,
   so it stays in its original position and scrolls away naturally with the page. */
body.home-page .site-header,
body.home-page .site-header.scrolled{
  position:absolute!important;
  top:0!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  z-index:60!important;
  background:transparent!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  border-bottom:0!important;
  box-shadow:none!important;
  transform:none!important;
}
body.home-page .hero{
  min-height:100vh!important;
  padding-top:92px!important;
}
body.home-page .site-header .desktop-nav a,
body.home-page .site-header .book-btn,
body.home-page .site-header .menu-toggle{
  color:#fff!important;
}
body.home-page .site-header .desktop-nav a i{color:#F2DFC0!important}
body.home-page .site-header .desktop-nav a:after{background:#F2DFC0!important}
body.home-page .site-header .book-btn{
  background:rgba(11,31,51,.34)!important;
  border:1px solid rgba(255,255,255,.48)!important;
  backdrop-filter:blur(7px)!important;
}
body.home-page .site-header .book-btn:hover{background:#9E2A2B!important;border-color:#9E2A2B!important}

/* Keep the header from following page scroll everywhere. */
.site-header,.site-header.scrolled{
  position:relative!important;
  top:auto!important;
  transform:none!important;
  animation:none!important;
}
body.home-page .site-header,
body.home-page .site-header.scrolled{position:absolute!important;top:0!important}

/* Requested portfolio/home headline in white. */
body.home-page .portfolio-preview h2,
body.home-page .portfolio-preview h2 *,
body.home-page .z7-portfolio h2,
body.home-page .z7-portfolio h2 *,
body.home-page h2.portfolio-title,
body.home-page h2.portfolio-title *{color:#fff!important}

/* Footer: icon-only service shortcuts. */
.service-corner-v20{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  flex-wrap:wrap!important;
}
.service-corner-v20 a{
  width:42px!important;
  height:42px!important;
  padding:0!important;
  border:1px solid rgba(11,31,51,.16)!important;
  border-radius:50%!important;
  display:grid!important;
  place-items:center!important;
  background:rgba(255,255,255,.34)!important;
  color:#0B1F33!important;
  box-shadow:none!important;
  transform:none!important;
  transition:transform .3s ease,border-color .3s ease,background .3s ease,color .3s ease,box-shadow .3s ease!important;
}
.service-corner-v20 a span{display:none!important}
.service-corner-v20 a i{
  display:block!important;
  position:static!important;
  width:auto!important;
  height:auto!important;
  font-size:15px!important;
  color:inherit!important;
  line-height:1!important;
}
.service-corner-v20 a:before,.service-corner-v20 a:after{display:none!important;content:none!important}
.service-corner-v20 a:hover{
  transform:translateY(-5px) rotate(-5deg)!important;
  color:#fff!important;
  background:#0B1F33!important;
  border-color:#0B1F33!important;
  box-shadow:0 10px 22px rgba(11,31,51,.18)!important;
}

@media(max-width:860px){
  body.home-page .site-header,
  body.home-page .site-header.scrolled{height:82px!important;padding:0 18px!important}
  body.home-page .hero{padding-top:82px!important}
  body.home-page .site-header .menu-toggle{background:rgba(11,31,51,.25)!important;border-color:rgba(255,255,255,.42)!important}
}


/* ===== Consolidated from patch-v24.css ===== */
/* v24: inner-page header color refinement only. Home is intentionally untouched. */
body:not(.home-page) .site-header .desktop-nav a{
  color:#B32025!important;
}
body:not(.home-page) .site-header .desktop-nav a i{
  color:#B32025!important;
}
body:not(.home-page) .site-header .desktop-nav a:hover,
body:not(.home-page) .site-header .desktop-nav a.active{
  color:#8F171B!important;
}
body:not(.home-page) .site-header .desktop-nav a:hover i,
body:not(.home-page) .site-header .desktop-nav a.active i{
  color:#8F171B!important;
}
body:not(.home-page) .site-header .desktop-nav a:after{
  background:#B32025!important;
}
body:not(.home-page) .site-header .book-btn{
  color:#fff!important;
  background:#B32025!important;
  border-color:#B32025!important;
  box-shadow:0 8px 24px rgba(179,32,37,.18)!important;
}
body:not(.home-page) .site-header .book-btn i{color:#fff!important}
body:not(.home-page) .site-header .book-btn:hover{
  color:#fff!important;
  background:#8F171B!important;
  border-color:#8F171B!important;
  transform:translateY(-2px)!important;
}
body:not(.home-page) .menu-toggle{color:#B32025!important;border-color:rgba(179,32,37,.35)!important}
body:not(.home-page) .menu-toggle span{background:#B32025!important}
body:not(.home-page) .mobile-menu a,
body:not(.home-page) .mobile-menu a i{color:#B32025!important}
body:not(.home-page) .mobile-menu a.active,
body:not(.home-page) .mobile-menu a:hover,
body:not(.home-page) .mobile-menu a.active i,
body:not(.home-page) .mobile-menu a:hover i{color:#8F171B!important}


/* v21 — requested content + action button refinements */
.about-owner-v21{
  margin:18px 0 26px;
  padding:16px 18px;
  border-left:3px solid var(--red);
  background:rgba(158,42,43,.06);
  color:#39414a;
  font-weight:600;
}

.locations-maps-v21{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:stretch}
.location-map-card-v21{min-width:0}
.location-map-label-v21{display:inline-flex;align-items:center;margin:0 0 10px;padding:7px 12px;border-radius:999px;background:var(--navy);color:#fff;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.locations-maps-v21 .locations-map-v18{height:430px}

/* Uiverse SupportHotline button effect, adapted to Zane's navy / red / beige palette. */
.book-btn,
.btn,
.z5-service-btn,
.footer-v14-terms{
  --color-back:var(--navy);
  --button-border:#071522;
  --button-shadow:rgba(54,69,75,1);
  --button-text:var(--beige);
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  overflow:visible!important;
  border:solid 2px var(--button-border)!important;
  border-radius:.5em!important;
  background:var(--color-back)!important;
  color:var(--button-text)!important;
  box-shadow:
    inset 0 -6px 18px -6px rgba(3,15,20,0),
    inset var(--button-shadow) -1px -1px 6px 0,
    inset 12px 0 12px -6px rgba(3,15,20,0),
    inset -12px 0 12px -6px rgba(3,15,20,0),
    var(--button-shadow) -1px -1px 6px 0!important;
  outline:none;
  cursor:pointer;
  user-select:none;
  transform:none!important;
  transition:box-shadow .3s ease,background .3s ease,color .3s ease,border-color .3s ease!important;
}
.book-btn::before,.book-btn::after,
.btn::before,.btn::after,
.z5-service-btn::before,.z5-service-btn::after,
.footer-v14-terms::before,.footer-v14-terms::after{
  content:none!important;
  display:none!important;
}
.book-btn:hover,
.btn:hover,
.z5-service-btn:hover,
.footer-v14-terms:hover{
  background:var(--color-back)!important;
  color:var(--button-text)!important;
  border-color:var(--button-border)!important;
  transform:none!important;
  box-shadow:
    inset 0 -6px 18px -6px rgba(3,15,20,1),
    inset 0 6px 18px -6px rgba(3,15,20,1),
    inset 12px 0 12px -6px rgba(3,15,20,0),
    inset -12px 0 12px -6px rgba(3,15,20,0),
    -1px -1px 6px 0 var(--button-shadow)!important;
}
.book-btn:active,
.btn:active,
.z5-service-btn:active,
.footer-v14-terms:active{
  box-shadow:
    inset 0 -12px 12px -6px rgba(3,15,20,1),
    inset 0 12px 12px -6px rgba(3,15,20,1),
    inset 12px 0 12px -6px rgba(3,15,20,1),
    inset -12px 0 12px -6px rgba(3,15,20,1),
    -1px -1px 6px 0 var(--button-shadow)!important;
}
.book-btn span,.book-btn i,
.btn span,.btn i,
.z5-service-btn span,.z5-service-btn i,
.footer-v14-terms span,.footer-v14-terms i{
  color:inherit!important;
  transition:transform .3s ease!important;
}
.book-btn:hover span,.book-btn:hover i,
.btn:hover span,.btn:hover i,
.z5-service-btn:hover span,.z5-service-btn:hover i,
.footer-v14-terms:hover span,.footer-v14-terms:hover i{transform:scale(.92)}
.book-btn:active span,.book-btn:active i,
.btn:active span,.btn:active i,
.z5-service-btn:active span,.z5-service-btn:active i,
.footer-v14-terms:active span,.footer-v14-terms:active i{transform:scale(.84)}

/* Button variants retain the site's existing hierarchy. */
.book-btn,.btn.dark{
  --color-back:var(--navy);
  --button-border:#071522;
  --button-shadow:rgba(54,69,75,1);
  --button-text:var(--beige);
}
.btn.primary{
  --color-back:var(--red);
  --button-border:#6F1D1F;
  --button-shadow:rgba(111,29,31,1);
  --button-text:#fff;
}
.btn.beige,.z5-service-btn{
  --color-back:var(--beige);
  --button-border:#9C8768;
  --button-shadow:rgba(156,135,104,1);
  --button-text:var(--navy);
}
.btn.ghost{
  --color-back:var(--navy);
  --button-border:var(--beige);
  --button-shadow:rgba(54,69,75,1);
  --button-text:#fff;
}
.footer-v14-terms{
  --color-back:var(--cream);
  --button-border:#B49B79;
  --button-shadow:rgba(180,155,121,.9);
  --button-text:var(--red);
  padding:10px 16px!important;
}

@media(max-width:900px){.locations-maps-v21{grid-template-columns:1fr}.locations-maps-v21 .locations-map-v18{height:390px}}
@media(max-width:560px){.locations-maps-v21 .locations-map-v18{height:330px}.book-btn,.btn,.z5-service-btn,.footer-v14-terms{font-size:14px}}

/* Keep the longer appointment CTA clean in the desktop header. */
@media(min-width:1181px){
  .site-header{grid-template-columns:230px minmax(0,1fr) 225px!important}
  .site-header .book-btn{white-space:nowrap;font-size:11.5px;padding-left:15px;padding-right:15px}
}
@media(min-width:861px) and (max-width:1180px){
  .site-header{grid-template-columns:185px minmax(0,1fr) 190px!important;padding-left:2vw!important;padding-right:2vw!important}
  .site-header .brand img{width:175px!important}
  .site-header .desktop-nav{gap:13px!important}
  .site-header .desktop-nav a{font-size:11px!important}
  .site-header .book-btn{white-space:nowrap;font-size:9.5px!important;padding:12px 10px!important;letter-spacing:.35px!important}
}


/* v25: add breathing room between the overlaid header logo and hero eyebrow */
body.home-page .hero-content{padding-top:76px!important;}
@media(max-width:860px){body.home-page .hero-content{padding-top:104px!important;}}

/* v26: lower the hero eyebrow farther from the overlaid header logo */
body.home-page .hero-content{padding-top:118px!important;}
@media(max-width:860px){body.home-page .hero-content{padding-top:142px!important;}}


/* v27: remove the empty strip above internal title banners without changing their design or animations. */
body:not(.home-page) .site-header,
body:not(.home-page) .site-header.scrolled{
  position:absolute!important;
  top:0!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  z-index:80!important;
}

/* v28: internal title-banner spacing + white desktop navigation over banner images. */
body:not(.home-page) .about-hero-v16-content{
  padding-top:82px!important;
}
body:not(.home-page) .site-header .desktop-nav a,
body:not(.home-page) .site-header .desktop-nav a:hover,
body:not(.home-page) .site-header .desktop-nav a.active,
body:not(.home-page) .site-header .desktop-nav a i,
body:not(.home-page) .site-header .desktop-nav a:hover i,
body:not(.home-page) .site-header .desktop-nav a.active i{
  color:#fff!important;
}
body:not(.home-page) .site-header .desktop-nav a:after{
  background:#fff!important;
}
@media(max-width:860px){
  body:not(.home-page) .about-hero-v16-content{
    padding-top:68px!important;
  }
}
