/* Shared motion and link styles. Everything here is decoration: the pages read the same without it. */
.link-arrow{color:#2F4A3A;font-weight:600;font-size:15px;text-decoration:none;border-bottom:1.5px solid #C08A3E;padding-bottom:3px;display:inline-block;transition:color .2s}
.link-arrow.light{color:#F8F4EC;border-bottom-color:#D9B36F}
.link-arrow:hover{color:#8A5F22;border-bottom-color:#8A5F22}
.link-arrow.light:hover{color:#D9B36F;border-bottom-color:#D9B36F}
section a[style*="color: #F8F4EC"]:not(.btn):hover{color:#D9B36F !important}
/* Every button changes color on hover, wherever it sits */
.btn-solid:hover{background:#4E6B58 !important;border-color:#4E6B58 !important;color:#F8F4EC !important}
.btn-ghost:hover{background:#2F4A3A !important;border-color:#2F4A3A !important;color:#F8F4EC !important}
.btn-light:hover,.btn[style*="background: #F8F4EC"]:hover{background:#CFDAC9 !important;border-color:#CFDAC9 !important;color:#2F4A3A !important}
.btn-line-light:hover{background:#F8F4EC !important;color:#2F4A3A !important}
.cta-row{display:flex;flex-wrap:wrap;gap:12px 28px;align-items:center;margin-top:8px}
@media (prefers-reduced-motion: no-preference){
  html.js .rv{opacity:0;transform:translateY(18px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1);transition-delay:var(--d,0ms)}
  html.js .rv.in{opacity:1;transform:none}
  .hero-photo,.hero-zoom{animation:arbor-zoom 1.6s cubic-bezier(.2,.7,.2,1) both}
  @keyframes arbor-zoom{from{opacity:0;transform:scale(1.04)}to{opacity:1;transform:none}}
  .btn{transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}
  .btn:hover{transform:translateY(-2px);box-shadow:0 8px 18px -10px rgba(31,42,36,.45)}
  .card,article[id]{transition:transform .25s ease,box-shadow .25s ease}
  .card:hover,article[id]:hover{transform:translateY(-3px);box-shadow:0 14px 30px -18px rgba(31,42,36,.35)}
  .link-arrow{transition:color .2s,border-color .2s}
  a[href^="/services/#"] > span:last-child{transition:transform .2s}
  header.scrolled{box-shadow:0 6px 18px -14px rgba(31,42,36,.5)}
}

/* Section heading rows (heading left, intro or link right): the right side stays beside the heading
   until there's truly no room, instead of dropping below while space is left on the right. */
.hrow > :first-child{flex:1 1 360px;min-width:0}
.hrow > :last-child:not(:first-child){flex:0 1 400px;min-width:0}
