/* Screenshot feedback, November 2026. Local changes only; article body styles stay intact. */
:root{
  --brand-olive:#2a3216;
  --brand-gold:#f1cd81;
  --brand-gold-sheen:linear-gradient(115deg,#dcad58 0%,#f3ce83 28%,#fff0bb 46%,#e4b962 67%,#f5d58f 100%);
}
html{scroll-padding-top:144px}
.site-header{background:var(--brand-olive);border-bottom-color:#ffffff14}
.header-inner{height:126px}
.brand-lockup {
  display: flex;
  align-items: center;
  gap: 12px;
  padding-top: 5px;
}
.brand-lockup .brand-mark {
  flex-shrink: 0;
  width: 140px;
  height: auto;
}
.brand-lockup .brand-caption {
  display: block;
  color: var(--brand-gold);
  font: 400 14px/1.35 var(--sans);
  letter-spacing: normal;
  white-space: nowrap;
}
.identity.brand-lockup .brand-caption {
  position: absolute;
  inset-inline: 0;
  top: 50%;
  width: max-content;
  max-width: none;
  margin-inline: auto;
  padding-inline: 3px;
  transform: translateY(-50%);
  text-align: center;
}
.header-inner,
.footer-top {
  position: relative;
  --brand-mark-width: 140px;
}
.identity.brand-lockup .brand-mark,
.footer-brand.brand-lockup .brand-mark {
  width: var(--brand-mark-width);
}
#navigation>a{color:#f5eedc}
.menu-toggle{color:var(--brand-gold)}
@supports ((background-clip: text) or (-webkit-background-clip: text)) {
  .brand-lockup .brand-caption,
  .menu-toggle,
  .site-footer :is(.footer-top p, .back-top, .footer-bottom span, .footer-bottom a) {
    background-image: var(--brand-gold-sheen);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
  }
}
#navigation>a:hover{color:#dfc38b}
.header-cta .button{border-color:#a89462;background:transparent;color:#f5eedc}
.header-cta .button:is(:hover,:focus-visible){background:#ffffff0d}
.hero{position:relative;isolation:isolate;overflow:clip;padding-bottom:24px}
#services{padding-top:40px}
.hero-copy,.hero-visual{position:relative;z-index:1}
.hero-copy{padding-bottom:40px}
.hero-description{margin-bottom:0}
.hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 24px;
}
.hero-actions .button {
  max-width: 100%;
  text-align: center;
}
@media(max-width:480px) {
  .hero-actions { display: grid; }
}
.hero-visual figcaption{justify-content:flex-end}
.hero h1{font-size:clamp(40px,4.3vw,62px);line-height:1.09;letter-spacing:-.04em;max-width:650px}
.about-heading{grid-template-columns:1fr;margin-bottom:30px}
.cost{margin-top:0;margin-bottom:64px}
.cost h2{font:30px/1.2 var(--serif);letter-spacing:normal;color:var(--bg);max-width:590px;margin-bottom:13px}
.service:first-child>img{object-fit:contain}
.service:nth-child(3)>img{object-fit:contain;background:transparent}
.service:nth-child(2)>img{object-fit:contain;object-position:center;background:transparent}
#services .solutions {
  /* Screen approximation of SW 6181 Secret Garden. */
  background: #4f523a;
  border-top: 0;
  padding: clamp(24px, 4vw, 48px);
  grid-template-columns: minmax(190px, 1fr) minmax(0, 3fr);
  align-items: center;
  gap: clamp(16px, 3vw, 40px);
}
#services .solutions > .eyebrow,
#services .solutions > p {
  color: var(--bg);
}
#services .solutions > .eyebrow {
  font-size: clamp(15px, 1.45vw, 20px);
  letter-spacing: .12em;
  margin: 0;
}
#services .solutions > p {
  font-size: clamp(14px, 1.25vw, 17px);
  line-height: 1.8;
}
#services .solutions b {
  color: var(--brand-gold);
  padding-inline: clamp(3px, .6vw, 9px);
}
@media(max-width:760px) {
  #services .solutions { grid-template-columns: 1fr; gap: 12px; }
}
.site-footer{width:100%;background:var(--brand-olive);color:var(--brand-gold);padding-top:32px}
.site-footer .footer-brand{flex:0 0 auto;white-space:normal}
.footer-top {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  border-bottom-color: #d7c79538;
  padding-bottom: 24px;
}
.footer-top .footer-brand { grid-area: 1 / 1; justify-self: start; }
.footer-top .back-top { grid-area: 1 / 2; }
.footer-top p,.footer-bottom{color:var(--brand-gold)}
.footer-top p { grid-area: 2 / 1 / 3 / -1; max-width: none; font-size: 13px; }
.site-footer a:hover{text-decoration:underline}
@media(max-width:1100px) {
  .brand-lockup { gap: 9px; }
  .brand-lockup .brand-mark { width: 112px; }
  .brand-lockup .brand-caption { font-size: 12px; }
  .header-inner, .footer-top { --brand-mark-width: 112px; }
}
@media(min-width:761px) {
  .header-inner {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    grid-template-rows: 1fr 1fr;
    row-gap: 0;
  }
  .header-inner .identity { grid-area: 1 / 1 / 3 / 2; justify-self: start; }
  .header-inner .identity .brand-caption { top: 40%; }
  .header-inner #navigation { grid-area: 2 / 2; }
  .header-inner .header-cta { grid-area: 1 / 3 / 3 / 4; justify-self: end; }
}
@media(max-width:760px){html{scroll-padding-top:126px}.site-header .header-inner{height:110px}#navigation{top:110px;background:var(--brand-olive)}#navigation>a{border-bottom-color:#ffffff21}.mobile-cta .button{background:#d8c18d;border-color:#d8c18d;color:var(--brand-olive)}
.hero h1{font-size:clamp(39px,8vw,56px);line-height:1.1}
.cost{margin-bottom:48px}.cost h2{font-size:29px}
.hero-copy{padding-bottom:0}.hero-visual{width:100%}
/* Reserve the existing image sizes before lazy loading so anchor targets stay in place. */
.service:nth-child(3)>img{width:min(100%,360px);height:auto;aspect-ratio:auto 1280 / 1160;object-fit:contain;margin-inline:auto}
.service:nth-child(2)>img{width:min(100%,360px);height:auto;aspect-ratio:auto 705 / 940;object-fit:contain;object-position:center;margin-inline:auto}
.about-heading{margin-bottom:26px}.site-footer{padding-top:22px}.footer-top{grid-template-columns:1fr auto;gap:12px}.site-footer .footer-brand{justify-self:start}.footer-top p{font-size:12px;max-width:300px}.back-top{align-self:center}.footer-bottom{padding-top:16px}}
@media(max-width:760px) {
  .hero { padding-bottom: 14px; }
  #services { padding-top: 28px; }
  .header-inner, .footer-top { --brand-mark-width: clamp(62px, calc(25vw - 18px), 112px); }
  .identity.brand-lockup .brand-caption {
    font-size: clamp(10.5px, 3vw, 12px);
  }
}
@media print{.site-footer{display:none}}
