/* River Business Corp — custom.css v7 · Light Theme */

/* Fonts now loaded via <link> in <head> for performance */

.text-hero{font-size:clamp(2.6rem,6vw,5.4rem);line-height:1.03;letter-spacing:-.022em}
.text-h1{font-size:clamp(2rem,4vw,3.8rem);line-height:1.07;letter-spacing:-.018em}
.text-h2{font-size:clamp(1.7rem,3.2vw,2.9rem);line-height:1.12;letter-spacing:-.015em}
.text-lead{font-size:clamp(.93rem,1.5vw,1.06rem);line-height:1.9;font-weight:300}
.rv{opacity:0;transform:translateY(22px);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1)}
.rv.vis{opacity:1;transform:none}
.rv.d1{transition-delay:.1s}.rv.d2{transition-delay:.2s}.rv.d3{transition-delay:.3s}.rv.d4{transition-delay:.4s}
.hs{opacity:0;transform:translateY(20px)}
.ticker-track{display:flex;white-space:nowrap;animation:tick 34s linear infinite}
@keyframes tick{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.phero-bg{background:#ede5d8}
.phero-bg::after{content:"";position:absolute;top:0;right:0;bottom:0;left:50%;background:radial-gradient(ellipse 80% 100% at 80% 50%,rgba(184,134,42,.08),transparent);pointer-events:none}
.nl-link.act{color:#16283d;background:rgba(22,40,61,.07);border-radius:8px}
.faq-body{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.22,1,.36,1)}
.fa.op .faq-body{max-height:600px}
.fa.op .faq-icon{transform:rotate(45deg);background:rgba(184,134,42,.12);color:#b8862a}
.faq-icon{transition:transform .3s,background .3s,color .3s}
.mt.op span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.mt.op span:nth-child(2){opacity:0}
.mt.op span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
.mt span{transition:transform .3s cubic-bezier(.22,1,.36,1),opacity .3s}
.sticky-cta{transform:translateY(100%);transition:transform .4s cubic-bezier(.22,1,.36,1)}
.sticky-cta.vis{transform:translateY(0)}
.tbtn.act,.tbtn:hover{color:#b8862a;border-bottom-color:#b8862a}
.photo-zoom{overflow:hidden}
.photo-zoom img{transition:transform .7s cubic-bezier(.22,1,.36,1)}
.photo-zoom:hover img{transform:scale(1.04)}
::-webkit-scrollbar{width:5px}
::-webkit-scrollbar-track{background:#f8f5ef}
::-webkit-scrollbar-thumb{background:#b8862a55;border-radius:3px}
::selection{background:rgba(184,134,42,.18);color:#16283d}
.field-error:empty{display:none}
input[aria-invalid="true"],textarea[aria-invalid="true"],select[aria-invalid="true"]{border-color:#ef4444!important}
