/* About Us: extends the established Southern Rivers palette and typography.
   Rules stay inside About; the shared header, contact and footer remain shared. */
.about-modern {
  --about-forest:#17392f;
  --about-deep:#0c241e;
  --about-gold:#eab933;
  --about-sand:#f4efe5;
  --about-paper:#fbfaf6;
  --about-ink:#1b2722;
  --about-muted:#59685f;
  background:var(--about-paper);
  color:var(--about-ink);
}
.about-modern main { display:block; overflow:clip; }
.about-modern main section { scroll-margin-top:100px; }
.about-modern main h2 { color:var(--about-forest); font:400 clamp(44px,4.5vw,64px)/1 "Bebas Neue",sans-serif; letter-spacing:.01em; margin:0 0 24px; }
.about-modern main p { color:var(--about-muted); font:400 17px/1.75 "PT Serif",Georgia,serif; margin:0 0 20px; }
.about-modern main .about-eyebrow { color:#826514; font:400 17px/1.35 "Bebas Neue",sans-serif; letter-spacing:.13em; margin:0 0 17px; text-transform:uppercase; }
.about-modern main .about-lead { color:var(--about-ink); font-size:21px; line-height:1.6; }
.about-modern main a:focus-visible,.about-modern main button:focus-visible { outline:3px solid #a77d0b; outline-offset:5px; }
.about-skip { position:fixed; top:-90px; left:20px; z-index:10000; padding:14px 24px; background:var(--about-gold); color:var(--about-deep); }
.about-skip:focus { top:12px; }
.about-modern .about-hero { padding:0; position:relative; overflow:hidden; }
.about-modern #carousel-about,.about-modern #carousel-about .carousel-inner,.about-modern #carousel-about .item,.about-modern #carousel-about picture { height:clamp(720px,96vh,840px); min-height:720px; }
.about-modern #carousel-about picture { display:block; overflow:hidden; }
.about-hero-media { position:relative; }
.about-modern #carousel-about .item::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(90deg,rgba(4,16,13,.78),rgba(4,16,13,.43) 44%,rgba(4,16,13,.04) 80%),linear-gradient(0deg,rgba(4,16,13,.26),transparent 50%); }
.about-modern #carousel-about .item img { width:100%; height:100%; object-fit:cover; object-position:center; }
.about-modern #carousel-about .item.active img { animation:aboutHeroDrift 12s ease-out both; }
.about-modern #carousel-about[data-playback="paused"] .item img { animation-play-state:paused; }
@keyframes aboutHeroDrift { from { transform:scale(1.02); } to { transform:scale(1.07); } }
@keyframes aboutHeroIn { from { opacity:0; transform:translateY(30px); } to { opacity:1; transform:none; } }
.about-hero-overlay { display:flex; align-items:flex-start; position:absolute; inset:0; pointer-events:none; z-index:4; }
.about-hero-copy { max-width:650px; padding:180px 0 125px; pointer-events:auto; }
.about-hero-copy > * { animation:aboutHeroIn .85s cubic-bezier(.18,.76,.28,1) both; }
.about-hero-copy > :nth-child(2) { animation-delay:.13s; }
.about-hero-copy > :nth-child(3) { animation-delay:.26s; }
.about-hero-copy > :nth-child(4) { animation-delay:.39s; }
.about-modern main .about-hero-copy .about-eyebrow { color:var(--about-gold); }
.about-modern #home h1 { color:#fff; font:400 clamp(52px,4.9vw,74px)/.99 "Bebas Neue",sans-serif; letter-spacing:.005em; margin:0; padding:0; text-shadow:0 3px 24px rgba(0,0,0,.3); }
.about-modern #home h1 span { color:#f4d77d; }
.about-modern main .about-hero-lead { color:rgba(255,255,255,.93); font-size:20px; line-height:1.55; margin:23px 0 30px; max-width:580px; }
.about-hero-actions { display:flex; flex-wrap:wrap; gap:12px; }
.about-button { display:inline-flex; align-items:center; justify-content:center; border:1px solid transparent; border-radius:999px; padding:13px 28px 11px; min-height:50px; font:400 17px/1.4 "Bebas Neue",sans-serif; letter-spacing:.08em; text-transform:uppercase; text-align:center; transition:background-color .25s,color .25s,transform .25s; }
.about-button:hover,.about-button:focus { transform:translateY(-2px); text-decoration:none; }
.about-button-primary { background:var(--about-gold); color:var(--about-deep); }
.about-button-primary:hover,.about-button-primary:focus { background:#f1c654; color:var(--about-deep); }
.about-button-ghost { border-color:rgba(255,255,255,.62); color:#fff; }
.about-button-ghost:hover,.about-button-ghost:focus { background:#fff; color:var(--about-deep); }
@media(min-width:768px) { .about-hero-actions { position:absolute; bottom:22px; } }
.about-modern #home .hero-navigation { background:none; display:block; position:absolute; inset:0; padding:0; pointer-events:none; z-index:6; }
.about-modern #home .hero-navigation button { pointer-events:auto; }
.about-modern #home .hero-playback[hidden] { display:none; }
.about-modern main .hero-status { margin:0; }
.about-trust { background:#fff; border-bottom:1px solid #e7e3da; padding:0; }
.about-trust-grid { display:grid; grid-template-columns:230px repeat(3,minmax(0,1fr)); align-items:center; min-height:148px; }
.about-trust-grid::before,.about-trust-grid::after,.about-intro-grid::before,.about-intro-grid::after,.about-bio-grid::before,.about-bio-grid::after { display:none; content:none; }
.about-trust-award { display:flex; align-items:center; }
.about-trust-award img { display:block; width:200px; height:auto; }
.about-trust-item { display:flex; flex-direction:column; border-left:1px solid #e4e0d6; min-height:70px; padding:5px 25px; }
.about-trust-item strong { color:var(--about-forest); font:400 29px/1.1 "Bebas Neue",sans-serif; }
.about-trust-item span { color:var(--about-muted); font:400 14px/1.5 "PT Serif",Georgia,serif; margin-top:7px; }
.about-intro { background:var(--about-sand); padding:72px 0; }
.about-intro-grid { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); gap:65px; align-items:center; }
.about-intro-copy > p:last-child { margin-bottom:0; }
.about-intro-copy p a { color:var(--about-forest); text-decoration:underline; text-decoration-color:#a99c72; text-underline-offset:4px; }
.about-intro-copy p a:hover { color:#826514; }
.about-credentials { background:var(--about-paper); border:1px solid #ddd8ca; border-top:4px solid var(--about-gold); padding:32px 34px 8px; border-radius:3px; box-shadow:0 18px 42px rgba(23,57,47,.07); }
.about-modern main .about-credentials h2 { font-size:40px; line-height:1.08; margin-bottom:23px; }
.about-credentials ul { list-style:none; padding:0; margin:0; }
.about-credentials li { display:grid; grid-template-columns:26px minmax(0,1fr); gap:13px; border-top:1px solid #deded2; padding:21px 0; }
.about-credentials li > i { margin-top:2px; color:#826514; font-size:17px; }
.about-credentials h3 { color:var(--about-forest); font:400 24px/1.15 "Bebas Neue",sans-serif; margin:0 0 8px; }
.about-modern main .about-credentials li p { font-size:16px; line-height:1.65; margin:0; }
.about-philosophy { background:var(--about-deep); padding:70px 0 66px; }
.about-section-heading { max-width:860px; text-align:center; margin:0 auto 43px; }
.about-modern main .about-philosophy .about-eyebrow { color:var(--about-gold); }
.about-modern main .about-philosophy h2 { color:#fff; font-size:clamp(44px,4.25vw,60px); }
.about-modern main .about-section-heading > p:last-child { max-width:640px; margin:0 auto; color:#c9d3ca; font-size:18px; }
.about-values { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid rgba(255,255,255,.18); padding-top:33px; }
.about-value { border-left:1px solid rgba(255,255,255,.18); padding:0 26px; }
.about-value:first-child { border-left:0; padding-left:0; }
.about-value:last-child { padding-right:0; }
.about-value > i { display:block; color:var(--about-gold); font-size:29px; margin-bottom:20px; }
.about-modern main .about-value h3 { color:#fff; font:400 27px/1.15 "Bebas Neue",sans-serif; margin:0 0 12px; }
.about-modern main .about-value p { color:#c9d3ca; font-size:16px; line-height:1.65; margin:0; }
.about-biography { padding:80px 0 76px; background:var(--about-paper); }
.about-bio-grid { display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); gap:65px; align-items:center; }
.about-portrait { position:relative; margin:0; overflow:hidden; border-radius:3px; }
.about-portrait img { display:block; width:100%; height:auto; aspect-ratio:720 / 650; }
/* Match the gentle photo hover used on Waters, keeping captions outside the crop. */
.about-modern .about-photo-frame { display:block; overflow:hidden; border-radius:3px; }
@media (min-width:768px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  .about-modern .about-photo-frame img { transition:transform 1s cubic-bezier(.2,.75,.25,1); }
  .about-modern .about-photo-frame:hover img { transform:scale(1.045); }
}
.about-portrait figcaption { padding:15px 20px; background:var(--about-forest); color:#e6ecdf; font:400 15px/1.4 "Bebas Neue",sans-serif; letter-spacing:.05em; }
.about-bio-stats { display:grid; grid-template-columns:1fr 1fr; border:1px solid #dfded3; border-top:0; background:var(--about-sand); padding:21px 0; }
.about-bio-stats > div { display:flex; align-items:center; justify-content:center; gap:13px; padding:0 20px; }
.about-bio-stats > div + div { border-left:1px solid #d4d4c6; }
.about-bio-stats strong { color:var(--about-forest); font:400 49px/1 "Bebas Neue",sans-serif; }
.about-bio-stats span { max-width:100px; color:var(--about-muted); font:400 15px/1.45 "PT Serif",Georgia,serif; }
.about-modern main .about-bio-copy > .about-eyebrow { font-size:16px; letter-spacing:.08em; }
.about-modern main .about-bio-copy p { font-size:16px; line-height:1.75; margin-bottom:18px; }
.about-bio-copy blockquote { border-left:3px solid var(--about-gold); margin:24px 0 26px; padding:0 0 0 22px; color:var(--about-forest); font:italic 18px/1.65 "PT Serif",Georgia,serif; }
.about-motion .about-reveal { opacity:0; transform:translate3d(var(--about-x,0px),34px,0); transition:opacity .9s cubic-bezier(.2,.75,.25,1),transform .9s cubic-bezier(.2,.75,.25,1); transition-delay:var(--about-delay,0ms); }
.about-reveal-left { --about-x:-56px; }
.about-reveal-right { --about-x:56px; }
.about-motion .about-reveal.is-visible { opacity:1; transform:none; }
@media(max-width:1199px) {
  .about-intro-grid,.about-bio-grid { gap:40px; }
  .about-trust-grid { grid-template-columns:190px repeat(3,minmax(0,1fr)); }
  .about-trust-award img { width:170px; }
  .about-trust-item { padding-left:20px; padding-right:16px; }
  .about-value { padding-left:18px; padding-right:18px; }
  .about-modern main .about-value h3 { font-size:24px; }
  .about-modern #home .carousel-indicators { bottom:0; gap:2px; left:auto; margin:0; padding:0; position:absolute; right:8px; transform:none; }
  .about-modern #home .carousel-indicators li,.about-modern #home .carousel-indicators li.active { flex-basis:32px; height:44px; width:32px; }
  .about-modern #home .hero-indicator::after { background:rgba(255,255,255,.85); bottom:12px; box-shadow:0 1px 4px rgba(0,0,0,.55); height:2px; left:8px; right:8px; top:auto; transform:none; }
  .about-modern #home .active .hero-indicator::after { background:var(--about-gold); transform:scaleX(1.375); }
  .about-modern #home .hero-carousel-arrow { color:var(--about-gold); position:absolute; top:50%; transform:translateY(-50%); }
  .about-modern #home .hero-discover { bottom:100px; }
}
@media(min-width:768px) and (max-width:991px) {
  .about-hero-copy { padding-top:190px; max-width:620px; }
  .about-hero-overlay .container { padding-left:42px; padding-right:42px; }
}
@media(max-width:991px) {
  .about-intro-grid,.about-bio-grid { grid-template-columns:minmax(0,1fr); gap:38px; }
  .about-bio-portrait { max-width:600px; width:100%; margin:auto; }
  .about-trust-grid { grid-template-columns:repeat(2,minmax(0,1fr)); padding-top:15px; padding-bottom:15px; gap:12px 0; }
  .about-trust-award { justify-content:center; }
  .about-trust-item:nth-child(3) { border-left:0; }
  .about-values { grid-template-columns:repeat(2,minmax(0,1fr)); gap:34px 0; }
  .about-value { padding-left:25px; padding-right:25px; }
  .about-value:nth-child(odd) { border-left:0; padding-left:0; }
  .about-modern main .about-value h3 { font-size:27px; }
}
@media(max-width:767px) {
  .about-modern main .container { width:100%; padding-left:24px; padding-right:24px; }
  .about-modern main section { scroll-margin-top:85px; }
  .about-modern main h2 { font-size:clamp(39px,10vw,50px); line-height:1.02; margin-bottom:21px; }
  .about-modern main p { font-size:16px; line-height:1.7; }
  .about-modern main .about-eyebrow { font-size:15px; letter-spacing:.1em; margin-bottom:14px; }
  .about-modern main .about-lead { font-size:19px; }
  .about-modern #home { overflow:visible; background:var(--about-paper); }
  .about-modern #carousel-about,.about-modern #carousel-about .carousel-inner { height:auto; min-height:0; }
  .about-modern #carousel-about .carousel-inner { aspect-ratio:480 / 231; }
  .about-modern #carousel-about .item,.about-modern #carousel-about picture { height:100%; min-height:0; }
  .about-modern #carousel-about .item img { object-fit:contain; animation:none; transform:none; }
  .about-modern #carousel-about .item::after { display:none; }
  .about-hero-overlay { position:static; display:block; background:var(--about-paper); }
  .about-hero-copy { padding:29px 0 30px; max-width:none; }
  .about-modern main .about-hero-copy .about-eyebrow { color:#826514; font-size:14px; }
  .about-modern #home h1 { color:var(--about-forest); font-size:clamp(37px,9.8vw,50px); line-height:1.01; text-shadow:none; }
  .about-modern #home h1 span { color:#8b6d12; }
  .about-modern main .about-hero-lead { color:var(--about-muted); font-size:16px; line-height:1.6; margin:18px 0 23px; }
  .about-hero-actions { gap:10px; }
  .about-button { font-size:16px; min-height:46px; padding:11px 20px 9px; }
  .about-button-ghost { border-color:var(--about-forest); color:var(--about-forest); }
  .about-button-ghost:hover,.about-button-ghost:focus { background:var(--about-forest); color:#fff; }
  .about-trust-grid { min-height:0; }
  .about-trust-award img { width:min(145px,100%); }
  .about-trust-item { padding:7px 12px 7px 18px; min-height:80px; }
  .about-trust-item strong { font-size:25px; }
  .about-trust-item span { font-size:13px; }
  .about-intro { padding:45px 0 48px; }
  .about-credentials { padding:27px 25px 5px; }
  .about-modern main .about-credentials h2 { font-size:36px; }
  .about-credentials li { padding:20px 0; }
  .about-philosophy { padding:49px 0 45px; }
  .about-section-heading { margin-bottom:28px; }
  .about-modern main .about-philosophy h2 { font-size:clamp(36px,9.7vw,48px); }
  .about-modern main .about-section-heading > p:last-child { font-size:16px; }
  .about-values { padding-top:28px; gap:28px 0; }
  .about-value { padding-left:18px; padding-right:0; }
  .about-value:nth-child(odd) { padding-right:16px; }
  .about-modern main .about-value h3 { font-size:clamp(20px,5.7vw,26px); }
  .about-modern main .about-value p { font-size:15px; line-height:1.6; }
  .about-value > i { font-size:27px; margin-bottom:17px; }
  .about-biography { padding:48px 0 50px; }
  .about-bio-grid { gap:35px; }
  .about-portrait figcaption { font-size:14px; padding:14px 16px; }
  .about-bio-stats { padding:19px 0; }
  .about-bio-stats > div { gap:10px; padding:0 14px; }
  .about-bio-stats strong { font-size:44px; }
  .about-bio-stats span { font-size:14px; }
  .about-modern main .about-bio-copy > .about-eyebrow { font-size:15px; }
  .about-bio-copy blockquote { font-size:17px; margin:22px 0 25px; padding-left:18px; }
  .about-reveal-left,.about-reveal-right { --about-x:0px; }
}
@media(max-width:374px) {
  .about-hero-actions > a { flex:1 1 100%; }
  .about-values { grid-template-columns:minmax(0,1fr); }
  .about-value,.about-value:nth-child(odd) { border:0; padding:0; }
  .about-modern main .about-value h3 { font-size:26px; }
}
@media(prefers-reduced-motion:reduce) {
  .about-modern main *,.about-modern main *::before,.about-modern main *::after { animation:none !important; transition:none !important; }
  .about-motion .about-reveal { opacity:1; transform:none; }
}
