/*
Theme Name: Rivers.us Tour Theme
Theme URI: https://rivers.us
Author: OpenAI
Description: Tourism-focused WordPress theme starter for Rivers.us with a homepage layout modeled after the provided mockup.
Version: 1.1
License: GNU General Public License v2 or later
Text Domain: riversus
*/

:root {
  --blue:#0a63b7;
  --blue-deep:#0c3357;
  --green:#44a53b;
  --ink:#183042;
  --muted:#5f7280;
  --bg:#f4f7fa;
  --white:#fff;
  --border:#d8e4ee;
  --shadow:0 14px 28px rgba(14,47,79,.12);
  --max:1240px;
}
*{box-sizing:border-box}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--bg);line-height:1.45}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%;height:auto}
.container{width:min(var(--max),calc(100% - 40px));margin:0 auto}
.site-topline{height:6px;background:#5c6670;margin:20px auto 0;max-width:1240px}
.site-header{background:transparent;padding:14px 0 10px}
.nav-wrap{display:grid;grid-template-columns:220px 1fr;align-items:center;gap:28px}
.brand-logo .custom-logo{max-height:78px;width:auto}
.brand-logo-text{display:inline-block;font-size:46px;font-weight:800;font-style:italic;color:#fff;padding:10px 20px;border-radius:22px;background:linear-gradient(180deg,#1884d8 0%,#0d5aa4 100%);box-shadow:inset 0 -8px 0 rgba(0,0,0,.12)}
.main-nav ul{list-style:none;display:flex;justify-content:center;gap:34px;margin:0;padding:0;flex-wrap:wrap}
.main-nav a{font-size:15px;font-weight:600;color:#263746}
.main-nav a:hover{color:var(--blue)}
.site-main{padding-bottom:36px}
.hero-mockup .hero-panel{position:relative;min-height:390px;border:1px solid var(--border);box-shadow:var(--shadow);overflow:hidden;background:
linear-gradient(rgba(0,0,0,.18),rgba(0,0,0,.28)),
linear-gradient(90deg,rgba(8,39,63,.68) 0 42%,rgba(8,39,63,.15) 58%,rgba(8,39,63,.08) 100%),
radial-gradient(circle at 75% 25%, rgba(255,255,255,.18), transparent 20%),
linear-gradient(180deg,#8fc3de 0 32%,#7db0c5 32% 45%,#5e8f3d 45% 73%,#2e6d89 73% 100%);
border-radius:2px}
.hero-panel::after{content:"";position:absolute;bottom:0;left:0;right:0;height:42%;background:linear-gradient(180deg,rgba(0,0,0,0) 0,rgba(33,101,134,.18) 50%,rgba(24,115,161,.42) 100%)}
.hero-copy{position:absolute;left:58px;top:84px;z-index:2;max-width:520px;color:#fff}
.hero-copy h1{margin:0 0 14px;font-size:54px;line-height:1.03;text-shadow:0 2px 8px rgba(0,0,0,.22)}
.hero-copy p{margin:0 0 20px;font-size:22px;line-height:1.25;color:rgba(255,255,255,.92)}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.button{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:4px;background:var(--blue);color:#fff;font-weight:700;box-shadow:var(--shadow)}
.button.green{background:var(--green)}
.icon-strip{display:grid;grid-template-columns:repeat(3,1fr);background:#fff;border:1px solid var(--border);border-top:none;box-shadow:var(--shadow);margin-bottom:28px}
.icon-pill{display:flex;align-items:center;justify-content:center;gap:12px;padding:22px 14px;font-weight:700;color:#344556;border-right:1px solid var(--border)}
.icon-pill:last-child{border-right:none}
.icon-pill span{font-size:28px}
.section{padding:18px 0 34px}
.section-title{font-size:24px;margin:0 0 18px;color:#0e2640}
.state-layout{display:grid;grid-template-columns:1.4fr .9fr;gap:28px;align-items:start}
.map-card,.states-card,.river-card{background:#fff;border:1px solid var(--border);box-shadow:var(--shadow)}
.map-card{padding:18px 18px 16px}
.map-toolbar{margin-bottom:12px}
.state-filter{border:1px solid #c4d3e0;background:#fff;border-radius:4px;padding:10px 14px;font-weight:600;color:#3a536a}
.map-stage{display:grid;grid-template-columns:1fr 200px;gap:16px;align-items:stretch}
.usa-map-placeholder{position:relative;min-height:430px;border-radius:4px;overflow:hidden;background:
linear-gradient(rgba(96,160,204,.15),rgba(96,160,204,.15)),
linear-gradient(180deg,#7db0c5 0 18%,#6da47c 18% 45%,#336b84 45% 100%)}
.usa-map-placeholder::before{content:"";position:absolute;inset:16% 12% 18% 10%;background:#2b84cd;clip-path:polygon(5% 30%,18% 19%,30% 18%,42% 22%,53% 21%,63% 17%,77% 22%,89% 32%,92% 45%,86% 53%,80% 68%,68% 74%,57% 84%,49% 79%,40% 80%,33% 76%,23% 78%,14% 69%,9% 62%,4% 49%);opacity:.95;border:4px solid rgba(255,255,255,.35)}
.usa-map-placeholder::after{content:"";position:absolute;left:4%;right:4%;bottom:0;height:26%;background:linear-gradient(180deg,rgba(255,255,255,0),rgba(255,255,255,.1) 20%,rgba(52,126,161,.35) 100%)}
.map-water{position:absolute;left:8%;right:8%;bottom:20px;height:50px;border-radius:14px;background:rgba(25,30,34,.86);box-shadow:0 -8px 0 rgba(255,255,255,.12) inset}
.feature-rail{display:grid;grid-template-rows:repeat(3,1fr);gap:14px}
.feature-tile{position:relative;overflow:hidden;border-radius:4px;min-height:133px;background:#d5e5ee}
.tile-photo{position:absolute;inset:0;background:linear-gradient(180deg,#8ec2dc 0 28%,#729c4f 28% 62%,#315d77 62% 100%)}
.tile-photo.one{filter:saturate(1.1)}
.tile-photo.two{background:linear-gradient(180deg,#8cc0da 0 26%,#597e43 26% 58%,#2a6077 58% 100%)}
.tile-photo.three{background:linear-gradient(180deg,#8cc0da 0 24%,#6a8f52 24% 56%,#21546d 56% 100%)}
.tile-label{position:absolute;left:10px;right:10px;bottom:10px;color:#fff;font-weight:800;font-size:18px;text-shadow:0 2px 8px rgba(0,0,0,.45)}
.states-card{padding:22px 24px;background:linear-gradient(180deg,#fff 0 72%,#eff7fc 72% 100%)}
.states-card h3{margin:2px 0 18px;text-align:center;font-size:24px;color:#16325a}
.states-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px 28px}
.states-grid h4{margin:0 0 10px;color:#3a7d2e;font-size:18px}
.states-grid ol{margin:0;padding-left:22px;color:#1f334a}
.states-grid li{margin:0 0 7px}
.state-button{display:block;width:max-content;margin:22px auto 0;background:#114f85;padding-inline:26px}
.cards-section{padding-top:8px}
.river-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.river-card{overflow:hidden}
.river-image{height:180px;background:linear-gradient(180deg,#8bc0da 0 28%,#567b47 28% 58%,#1d5570 58% 100%)}
.river-copy{padding:18px}
.river-copy h3{margin:0 0 10px;font-size:22px}
.river-copy p{margin:0;color:var(--muted)}
.image-2{background:linear-gradient(180deg,#8ec3dd 0 26%,#688857 26% 60%,#315d77 60% 100%)}
.image-3{background:linear-gradient(180deg,#9acedf 0 23%,#6a8f52 23% 56%,#27516a 56% 100%)}
.site-footer{background:#102d47;color:#e7eff6;padding:42px 0 24px;margin-top:28px}
.footer-grid{display:grid;grid-template-columns:1.3fr .8fr .8fr .8fr;gap:24px}.footer-grid h4{margin-top:0;color:#fff}.footer-copy{margin-top:22px;padding-top:16px;border-top:1px solid rgba(255,255,255,.15);font-size:14px;color:#bad0df}.post-list{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.entry-card{background:#fff;padding:22px;border:1px solid var(--border);box-shadow:var(--shadow)}
@media (max-width: 1100px){.nav-wrap{grid-template-columns:1fr}.main-nav ul{justify-content:flex-start}.hero-copy h1{font-size:42px}.hero-copy p{font-size:18px}.state-layout,.river-card-grid,.post-list,.footer-grid{grid-template-columns:1fr}.map-stage{grid-template-columns:1fr}.feature-rail{grid-template-columns:repeat(3,1fr);grid-template-rows:none}.states-grid{grid-template-columns:1fr 1fr}}
@media (max-width: 720px){.container{width:min(var(--max),calc(100% - 24px))}.site-topline{margin-top:10px}.brand-logo .custom-logo,.brand-logo-text{max-width:220px;font-size:34px}.hero-copy{position:relative;left:auto;top:auto;padding:28px 22px;max-width:none}.hero-panel{min-height:0}.hero-copy h1{font-size:34px}.hero-copy p{font-size:17px}.icon-strip{grid-template-columns:1fr}.icon-pill{justify-content:flex-start;padding-left:18px;border-right:none;border-bottom:1px solid var(--border)}.icon-pill:last-child{border-bottom:none}.states-grid{grid-template-columns:1fr}.feature-rail{grid-template-columns:1fr}.usa-map-placeholder{min-height:300px}}
