/* RainCount landing — extends rc.css tokens */
.land{overflow-x:hidden;}
.land .site-head{position:fixed; inset:0 0 auto; z-index:20;
  background:color-mix(in srgb, var(--bg) 78%, transparent);
  -webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px);
  border-bottom:1px solid color-mix(in srgb, var(--line) 70%, transparent);}
.land .site-head .bar{display:flex; align-items:center;
  max-width:1440px; margin:0 auto; padding:12px 30px; gap:26px;}
.land .nav{margin-left:auto; display:flex; align-items:center; line-height:1;}
.land .nav a, .land .nav .soon{display:inline-block; padding:9px 0;}
.land .navright{flex:none; display:flex; align-items:center;}
.navcta{background:var(--blue); color:#fff; padding:8px 16px; border-radius:9px;
  font-weight:700; font-size:14px;}
.navcta:hover{background:var(--blue-ink); text-decoration:none;}
@media (max-width:720px){
  .land .site-head .bar{display:flex; justify-content:space-between; padding:12px 18px;}
  .land .nav{display:none;}
}

/* hero */
.hero2{position:relative; min-height:70vh; display:flex; flex-direction:column;
  justify-content:center; align-items:center; text-align:center; padding:110px 22px 0;
  background:linear-gradient(180deg, color-mix(in srgb, var(--blue-soft) 65%, transparent), transparent 78%);}
.swash{position:relative; display:inline-block; color:inherit;}
.swash svg{position:absolute; left:-2%; right:0; bottom:-.13em; width:104%; height:.16em;
  color:var(--blue); opacity:.85;}
.doodle{position:absolute; color:var(--ink-faint); opacity:.55; pointer-events:none;}
.doodle-l{left:max(24px, 7vw); top:34%; width:120px;}
.doodle-r{right:max(24px, 7vw); top:40%; width:88px; color:var(--blue); opacity:.5;}
@media (max-width:1100px){ .doodle{display:none;} }
.hero2 h1{font-size:clamp(42px,7.2vw,88px); font-weight:800; letter-spacing:-.038em; line-height:.98;
  margin:0 0 18px; max-width:14ch; text-wrap:balance;}
.hero2 .sub{font-size:clamp(15px,1.8vw,18px); color:var(--ink-soft); margin:0 0 34px; max-width:44ch;}
.hero2 .sub .mono{font-size:.92em; color:var(--blue-ink);}

/* search — the product */
.omni{position:relative; width:min(620px,100%); z-index:10; text-align:left;}
.omni .box{display:flex; align-items:center; gap:12px; background:var(--surface);
  border:1px solid var(--line); border-radius:16px; padding:6px 8px 6px 20px;
  box-shadow:0 1px 2px rgba(24,36,46,.05), 0 12px 40px rgba(24,36,46,.10);
  transition:box-shadow .18s, border-color .18s;}
.omni .box:focus-within{border-color:var(--blue); box-shadow:0 1px 2px rgba(24,36,46,.05),
  0 12px 44px color-mix(in srgb, var(--blue) 22%, transparent);}
.omni svg.glass{flex:none; opacity:.45;}
.omni input{flex:1; border:0; background:transparent; font-family:inherit; color:var(--ink);
  font-size:17px; padding:14px 0; min-width:0;}
.omni input::placeholder{color:var(--ink-faint);}
.omni input:focus{outline:none;}
.omni button{flex:none; border:0; background:var(--blue); color:#fff; font-family:inherit;
  font-weight:700; font-size:15px; padding:13px 22px; border-radius:11px; cursor:pointer;
  transition:background .15s;}
.omni button:hover{background:var(--blue-ink);}
.omni .list{position:absolute; inset:calc(100% + 8px) 0 auto; background:var(--surface);
  border:1px solid var(--line); border-radius:14px; box-shadow:0 18px 50px rgba(24,36,46,.16);
  overflow:hidden; display:none;}
.omni .list.open{display:block;}
.omni .opt{display:flex; align-items:center; gap:10px; padding:12px 18px; font-size:14.5px;
  cursor:pointer; color:var(--ink);}
.omni .opt .mono{margin-left:auto; font-size:12.5px; color:var(--blue-ink);}
.omni .opt .soon{margin-left:auto; font-size:11px; letter-spacing:.08em; text-transform:uppercase;
  color:var(--ink-faint); font-weight:600;}
.omni .opt[aria-selected="true"], .omni .opt:hover{background:var(--field);}
.omni .opt.dis{color:var(--ink-faint); cursor:default;}

/* quick answers */
.quick{display:flex; gap:10px; flex-wrap:wrap; justify-content:center; margin-top:22px;}
.quick a{display:flex; align-items:baseline; gap:8px; background:color-mix(in srgb, var(--surface) 72%, transparent);
  backdrop-filter:blur(6px); border:1px solid var(--line); border-radius:99px; padding:8px 16px;
  font-size:13.5px; font-weight:600; color:var(--ink);}
.quick a:hover{border-color:var(--blue); text-decoration:none;}
.quick a .mono{color:var(--blue-ink); font-size:13px;}

/* the live map, embedded */
.mapsec{padding:34px 0 40px;}
.mapframe{position:relative; width:min(1220px,95vw); margin:0 auto; height:min(560px,62vh);
  border-radius:20px; overflow:hidden; border:1px solid var(--line); box-shadow:var(--shadow);
  background:var(--field);}
#livemap{position:absolute; inset:0;}
#livemap .maplibregl-canvas{cursor:grab;}
.float-card{background:color-mix(in srgb, var(--surface) 88%, transparent);
  -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px);
  border:1px solid var(--line); border-radius:12px; box-shadow:0 8px 30px rgba(0,0,0,.18);}
.maphint{position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); z-index:5;
  padding:10px 20px; font-size:13.5px; font-weight:600; color:var(--ink);
  pointer-events:none; transition:opacity .4s; white-space:nowrap;}
.legendbox{position:absolute; bottom:16px; left:16px; z-index:5; padding:10px 14px;
  font-size:11.5px; color:var(--ink-soft);}
.legendbox .ramp{width:150px; height:8px; border-radius:4px; margin-bottom:6px;
  background:linear-gradient(90deg, rgba(116,196,118,0), #31a354, #f5d033, #f28c28, #e0442c, #aa3ca0);}
.legendbox .lab{display:flex; justify-content:space-between;}
.cap-line{text-align:center; font-size:12.5px; color:var(--ink-faint); padding-top:12px;}
.cap-line .mono{color:var(--blue-ink);}
/* cooperative-gesture nag, restyled: no gray blanket, just a quiet pill */
.maplibregl-cooperative-gesture-screen{background:transparent; display:flex;
  align-items:flex-end; justify-content:center; padding-bottom:22px;}
.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message,
.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{
  background:color-mix(in srgb, var(--surface) 90%, transparent);
  -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px);
  border:1px solid var(--line); border-radius:99px; box-shadow:0 8px 30px rgba(0,0,0,.18);
  color:var(--ink); font-family:'Schibsted Grotesk',system-ui,sans-serif;
  font-size:13px; font-weight:600; padding:9px 18px; margin:0;}
/* popup */
.maplibregl-popup-content{background:var(--surface); color:var(--ink); border-radius:12px;
  box-shadow:0 14px 44px rgba(0,0,0,.3); padding:12px 13px 12px; border:1px solid var(--line);
  font-family:'Schibsted Grotesk',system-ui,sans-serif; min-width:150px;}
.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{border-top-color:var(--surface);}
.maplibregl-popup-anchor-top .maplibregl-popup-tip{border-bottom-color:var(--surface);}
.pp .row{display:flex; align-items:baseline; gap:7px;}
.pp .v{font-family:'Fragment Mono',ui-monospace,monospace; font-size:26px; line-height:1;
  color:var(--ink); letter-spacing:-.02em;}
.pp .u{font-size:10.5px; letter-spacing:.08em; text-transform:uppercase; font-weight:700;
  color:var(--ink-faint);}
.pp .near{font-size:12.5px; font-weight:600; color:var(--ink); margin:5px 0 10px;}
.pp .near span{color:var(--ink-faint); font-weight:500;}
.pp a.cta{display:block; text-align:center; background:var(--blue); color:#fff;
  font-size:12.5px; font-weight:700; padding:8px 12px; border-radius:8px;}
.pp a.cta:hover{background:var(--blue-ink); text-decoration:none;}

/* demo section */
.demo{padding:96px 0;}
.demo .duo2{display:grid; grid-template-columns:.9fr 1.1fr; gap:56px; align-items:center;}
@media (max-width:900px){ .demo .duo2{grid-template-columns:1fr; gap:36px;} }
.kicker{font-size:12px; letter-spacing:.2em; text-transform:uppercase; font-weight:700; color:var(--blue-ink); margin:0 0 12px;}
.demo h2{font-size:clamp(28px,3.6vw,40px); font-weight:800; letter-spacing:-.03em; line-height:1.08; margin:0 0 16px; text-wrap:balance;}
.demo p.body{font-size:16px; color:var(--ink-soft); margin:0 0 12px; max-width:52ch;}
.demo p.body b{color:var(--ink); font-weight:700;}
.demo .cta{display:inline-flex; align-items:center; gap:8px; margin-top:14px; font-weight:700; font-size:15px;}
.answercard{background:var(--surface); border:1px solid var(--line); border-radius:20px;
  box-shadow:0 24px 70px rgba(24,36,46,.13); padding:28px 30px; max-width:520px;}
.answercard .place{font-size:13px; font-weight:700; letter-spacing:.02em; color:var(--ink-soft); margin-bottom:4px;}
.answercard .when{font-size:11.5px; color:var(--ink-faint); margin-bottom:18px;}
.answercard .big{display:flex; align-items:baseline; gap:12px; flex-wrap:wrap;}
.answercard .big .n{font-size:clamp(54px,7vw,76px); line-height:.95; letter-spacing:-.03em; color:var(--ink);}
.answercard .big .u{font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--ink-soft);}
.answercard .chiprow{margin-top:16px; display:flex; gap:8px; flex-wrap:wrap;}
.answercard .minirows{margin-top:18px; border-top:1px solid var(--line-soft); font-size:13.5px;}
.answercard .minirows div{display:flex; justify-content:space-between; padding:9px 2px; border-bottom:1px solid var(--line-soft);}
.answercard .minirows div:last-child{border-bottom:none;}
.answercard .minirows .k{color:var(--ink-soft);}
.answercard .plainline{margin-top:14px; background:var(--blue-soft); border-radius:12px; padding:12px 15px; font-size:13.5px;}
.answercard .plainline b{font-weight:700;}

/* trust band */
.trust{border-block:1px solid var(--line); background:var(--surface); padding:72px 0;}
.trust .grid3{display:grid; grid-template-columns:repeat(3,1fr); gap:44px;}
@media (max-width:820px){ .trust .grid3{grid-template-columns:1fr; gap:32px;} }
.trust .stat .n{font-size:clamp(30px,3.4vw,40px); color:var(--blue-ink); letter-spacing:-.02em;}
.trust .stat h3{font-size:15.5px; font-weight:700; margin:10px 0 6px;}
.trust .stat p{font-size:13.5px; color:var(--ink-soft); margin:0; max-width:38ch;}

/* coverage wall */
.coverage{padding:96px 0 40px; text-align:center;}
.coverage h2{font-size:clamp(26px,3.4vw,38px); font-weight:800; letter-spacing:-.03em; margin:0 0 8px;}
.coverage p.sub2{color:var(--ink-soft); font-size:15.5px; margin:0 0 44px;}
.coverage .wall{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; max-width:820px; margin:0 auto;}
@media (max-width:680px){ .coverage .wall{grid-template-columns:1fr;} }
.coverage .w{border:1px solid var(--line); border-radius:16px; padding:28px 16px 22px; background:var(--surface);}
.coverage .w .n{font-size:clamp(30px,3.6vw,42px); color:var(--ink); letter-spacing:-.02em;}
.coverage .w .l{font-size:12.5px; letter-spacing:.1em; text-transform:uppercase; font-weight:700; color:var(--ink-faint); margin-top:6px;}

/* reveal */
.rv{opacity:0; transform:translateY(18px); transition:opacity .6s ease, transform .6s ease;}
.rv.in{opacity:1; transform:none;}
@media (prefers-reduced-motion: reduce){ .rv{opacity:1; transform:none; transition:none;} }

/* the product, once */
.product{padding:96px 22px 84px; display:flex; flex-direction:column; align-items:center; text-align:center;}
.product h2{font-size:clamp(24px,3.2vw,34px); font-weight:800; letter-spacing:-.025em; margin:0 0 44px; text-wrap:balance;}
.cardglow{position:relative;}
.cardglow::before{content:""; position:absolute; inset:-70px -110px;
  background:radial-gradient(ellipse at center, color-mix(in srgb, var(--blue-soft) 75%, transparent), transparent 68%);
  z-index:-1; pointer-events:none;}
.product .answercard{text-align:left;}
.product .cta{display:inline-flex; align-items:center; gap:8px; margin-top:36px; font-weight:700; font-size:15px;}

/* spec strip */
.specstrip{border-block:1px solid var(--line); padding:20px 22px; display:flex; flex-wrap:wrap;
  justify-content:center; align-items:center; gap:10px 14px;
  font-family:'Fragment Mono',ui-monospace,monospace; font-size:11.5px; letter-spacing:.14em;
  text-transform:uppercase; color:var(--ink-faint);}
.specstrip i{font-style:normal; color:var(--line); font-size:13px;}

/* coverage, floating */
.reach{padding:100px 22px 90px; text-align:center;}
.reach .row{display:flex; justify-content:center; gap:clamp(36px,7vw,96px); flex-wrap:wrap;}
.reach .row > div{display:flex; flex-direction:column; gap:6px;}
.reach .n{font-size:clamp(34px,4.6vw,52px); letter-spacing:-.02em; color:var(--ink);}
.reach .l{font-size:12px; letter-spacing:.16em; text-transform:uppercase; font-weight:700; color:var(--ink-faint);}
.reach p{margin:34px 0 0; font-size:14.5px; color:var(--ink-soft);}

/* product collage — use the width */
.product{width:min(1340px,96vw); margin:0 auto; padding:110px 0 90px;}
.collage{display:grid; grid-template-columns:1fr 1.3fr 1fr; gap:30px; align-items:center; margin-top:8px;}
@media (max-width:1020px){
  .collage{grid-template-columns:1fr; max-width:560px; margin-inline:auto;}
}
.answercard.main{max-width:none; position:relative; z-index:2;
  box-shadow:0 30px 80px rgba(24,36,46,.16); transition:transform .25s ease, box-shadow .25s ease;}
.answercard.main:hover{transform:translateY(-4px); box-shadow:0 38px 90px rgba(24,36,46,.2);}
.sidecard{background:var(--surface); border:1px solid var(--line); border-radius:18px;
  padding:22px 24px; box-shadow:0 16px 44px rgba(24,36,46,.09);
  transition:transform .25s ease, box-shadow .25s ease;}
.sidecard:hover{transform:translateY(-4px); box-shadow:0 22px 54px rgba(24,36,46,.13);}
.collage .sidecard:first-child{margin-top:56px;}
.collage .sidecard:last-child{margin-bottom:56px;}
@media (max-width:1020px){
  .collage .sidecard:first-child, .collage .sidecard:last-child{margin:0;}
}
.sc-title{font-size:14.5px; font-weight:700; letter-spacing:-.01em;}
.sc-sub{font-size:12px; color:var(--ink-faint); margin:2px 0 16px;}
.sc-foot{display:flex; justify-content:space-between; font-size:10.5px; color:var(--ink-faint);
  margin-top:8px; font-family:'Fragment Mono',ui-monospace,monospace;}
.livedot{display:inline-block; width:7px; height:7px; border-radius:50%; background:var(--surplus);
  margin-left:7px; vertical-align:2px; animation:pulse 2.4s ease-in-out infinite;}
@keyframes pulse{0%,100%{opacity:1} 50%{opacity:.35}}
@media (prefers-reduced-motion: reduce){ .livedot{animation:none;} }

/* sparkbars */
.spark{display:flex; align-items:flex-end; gap:3px; height:64px;}
.spark i{flex:1; min-height:2px; height:var(--h); background:var(--chart-bar); border-radius:3px 3px 0 0;
  opacity:.85; transform:scaleY(0); transform-origin:bottom;
  transition:transform .5s cubic-bezier(.2,.7,.3,1); transition-delay:calc(var(--i) * 26ms);}
.spark i[style*="--h:0%"]{background:var(--line); min-height:3px; opacity:.7;}
.spark i.today{background:var(--blue-ink); opacity:1;}
.rv.in .spark i, .rv.in ~ * .spark i, .in .spark i{transform:scaleY(1);}
.answercard .hourly{margin-top:18px;}
.answercard .hourly .spark{height:44px;}
@media (prefers-reduced-motion: reduce){ .spark i{transform:none; transition:none;} }

/* verification rows */
.vrows{font-size:13px;}
.vrows > div{display:flex; justify-content:space-between; gap:10px; padding:8px 1px; border-bottom:1px solid var(--line-soft);}
.vrows > div:last-child{border-bottom:none;}
.vrows span:first-child{color:var(--ink-soft);}
.vrows .mono{font-size:12px;}
.agree{margin-top:12px;}

/* reveal stagger inside collage */
.collage > .rv:nth-child(1){transition-delay:.05s;}
.collage > .rv:nth-child(2){transition-delay:.15s;}
.collage > .rv:nth-child(3){transition-delay:.28s;}
.collage{width:100%;}

/* the report sheet — instrument, not app card */
.report{width:min(1180px,100%); margin:0 auto; background:var(--surface);
  border:1px solid var(--line); border-top:3px solid var(--blue); border-radius:8px;}
.rp-head{display:flex; justify-content:space-between; align-items:baseline; gap:14px; flex-wrap:wrap;
  padding:18px 30px 15px; border-bottom:1px solid var(--line-soft);}
.rp-place{font-size:16.5px; font-weight:700; letter-spacing:-.01em;}
.rp-stamp{font-size:10.5px; letter-spacing:.1em; color:var(--ink-faint);}
.rp-grid{display:grid; grid-template-columns:1fr 1.15fr 1fr;}
.rp-col{padding:24px 30px 26px; min-width:0;}
.rp-grid .rp-col + .rp-col{border-left:1px solid var(--line-soft);}
@media (max-width:960px){
  .rp-grid{grid-template-columns:1fr;}
  .rp-grid .rp-col + .rp-col{border-left:none; border-top:1px solid var(--line-soft);}
}
.rp-cap{font-size:10.5px; letter-spacing:.15em; text-transform:uppercase; font-weight:700;
  color:var(--ink-faint); margin-bottom:12px;}
.rp-cap.gap{margin-top:24px;}
.rp-mid{display:flex; flex-direction:column;}
.rp-mid .big{display:flex; align-items:baseline; gap:12px; margin:2px 0 10px;}
.rp-mid .big .n{font-size:clamp(56px,5.5vw,76px); line-height:.95; letter-spacing:-.03em; color:var(--ink);}
.rp-mid .big .u{font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--ink-soft);}
.rp-plain{margin:auto 0 0; padding-top:18px; font-size:13.5px; color:var(--ink-soft); max-width:34ch;}
.rp-plain b{color:var(--ink);}
.rp-foot{padding:13px 30px; border-top:1px solid var(--line-soft); font-size:10px;
  letter-spacing:.13em; color:var(--ink-faint); text-align:center;}
.vrows .ok{color:var(--surplus);}
.report .spark{height:56px;}
.report .spark.hours{height:40px;}

/* farmer-first report */
.hero2{background:none;}
.report{width:min(1080px,100%);}
.rp-body{display:grid; grid-template-columns:1.05fr 1fr;}
.rp-body .rp-main, .rp-body .rp-table{padding:26px 34px 28px; min-width:0;}
.rp-body .rp-table{border-left:1px solid var(--line-soft);}
@media (max-width:860px){
  .rp-body{grid-template-columns:1fr;}
  .rp-body .rp-table{border-left:none; border-top:1px solid var(--line-soft);}
}
.rp-main .big{display:flex; align-items:baseline; gap:12px; margin:4px 0 10px;}
.rp-main .big .n{font-size:clamp(56px,6vw,80px); line-height:.95; letter-spacing:-.03em; color:var(--ink);}
.rp-main .big .u{font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--ink-soft);}
.big-rows > div{padding:11px 1px; font-size:14.5px;}
.big-rows .mono{font-size:14px;}
.rp-chart{border-top:1px solid var(--line-soft); padding:22px 34px 24px;}
.rp-chart .spark{height:64px;}
.report{text-align:left;}

/* leaf page */
.leafmain{max-width:1080px; margin:0 auto; padding:96px 22px 40px;}
.leaf .crumb{padding-top:8px;}
.leaf .leaf-head{padding:10px 0 20px;}
.leafmain .report{margin:0 0 26px;}
.report.season .rp-chart{border-top:none;}
.leafsec{padding:26px 4px 6px;}
.leafsec .faq{max-width:76ch;}
.leafsec .chips{margin-top:2px;}
/* compact header search */
.omni.mini{width:230px;}
.omni.mini .box{padding:1px 6px 1px 12px; border-radius:10px; box-shadow:none;}
.omni.mini input{font-size:13px; padding:8px 0;}
.omni.mini .list{width:300px; left:auto; right:0;}
@media (max-width:900px){ .omni.mini{display:none;} }

/* sparkbars: visible by default; hidden only while awaiting reveal */
.spark i{transform:scaleY(1);}
.rv:not(.in) .spark i{transform:scaleY(0);}

/* county locator */
.countymap{height:260px; margin-top:20px; border:1px solid var(--line); border-radius:8px; overflow:hidden;}
.countymap .maplibregl-canvas{cursor:default;}
@media (max-width:860px){ .countymap{height:220px;} }

/* leaf hero: the map is the page */
.leafhero{display:grid; grid-template-columns:1.55fr 1fr; gap:24px; align-items:stretch;}
@media (max-width:980px){ .leafhero{grid-template-columns:1fr;} }
.mapframe2{position:relative; min-height:560px; border-radius:10px; overflow:hidden;
  border:1px solid var(--line); background:var(--field);}
@media (max-width:980px){ .mapframe2{min-height:420px;} }
#leafmap{position:absolute; inset:0;}
#leafmap .maplibregl-canvas{cursor:crosshair;}
.sidepanel{background:var(--surface); border:1px solid var(--line); border-top:3px solid var(--blue);
  border-radius:8px; padding:24px 26px; display:flex; flex-direction:column;}
.sidepanel .big{display:flex; align-items:baseline; gap:10px; margin:2px 0 8px;}
.sidepanel .big .n{font-size:clamp(44px,4vw,58px); line-height:.95; letter-spacing:-.03em; color:var(--ink);}
.sidepanel .big .u{font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--ink-soft);}
.sidepanel .big-rows > div{padding:8px 1px; font-size:13.5px;}
.sidepanel .spark.mini{height:40px;}
.sidepanel .rp-plain{margin-top:auto; padding-top:16px; font-size:12.5px;}
.colophon{margin:14px 2px 30px; font-size:10px; letter-spacing:.12em; color:var(--ink-faint); text-align:center;}

/* raindrop-structure leaf layout (our skin) */
.rdx{padding-top:64px;}
.rdx-hero{max-width:1220px; margin:0 auto; padding:34px 22px 6px; display:grid;
  grid-template-columns:1.45fr 1fr; gap:30px; align-items:center;}
@media (max-width:960px){ .rdx-hero{grid-template-columns:1fr;} }
.rdx-title{font-size:clamp(24px,3.1vw,34px); font-weight:800; letter-spacing:-.022em;
  color:var(--blue-ink); margin:0 0 10px; line-height:1.15;}
.rdx-sub{color:var(--ink-soft); font-size:15.5px; margin:0;}
.rdx-cta{background:linear-gradient(115deg, var(--blue), var(--blue-ink));
  border-radius:18px; padding:22px 26px; color:#fff; max-width:430px; justify-self:end;}
@media (max-width:960px){ .rdx-cta{justify-self:start;} }
.rdx-cta-t{font-weight:800; font-size:17px; letter-spacing:-.01em; margin-bottom:6px;}
.rdx-cta p{margin:0 0 14px; font-size:13.5px; color:rgba(255,255,255,.85);}
.rdx-cta-btn{display:inline-block; background:#fff; color:var(--blue-ink); font-weight:700;
  font-size:13.5px; padding:9px 18px; border-radius:9px;}
.rdx-cta-btn:hover{text-decoration:none; opacity:.92;}
.rdx-pills{max-width:1220px; margin:0 auto; padding:16px 22px 6px; display:flex; gap:8px;
  overflow-x:auto; scrollbar-width:none;}
.rdx-pills::-webkit-scrollbar{display:none;}
.rdx-pill{border-radius:11px; padding:8px 16px; font-size:13.5px; font-weight:600;
  white-space:nowrap; background:var(--field); color:var(--ink-faint);}
a.rdx-pill{color:var(--ink-soft);}
.rdx-pill.on{background:var(--blue); color:#fff;}
.rdx-grid{max-width:1220px; margin:0 auto; padding:14px 22px 8px; display:grid;
  grid-template-columns:1fr 320px; gap:22px; align-items:stretch;}
@media (max-width:960px){ .rdx-grid{grid-template-columns:1fr;} }
.rdx-map{min-height:65vh;}
@media (max-width:960px){ .rdx-map{min-height:440px;} }
.rdx-side{background:var(--surface); border:1px solid var(--line); border-radius:18px;
  padding:26px 24px 22px; display:flex; flex-direction:column;}
.rdx-side h3{margin:0 0 18px; font-size:19px; font-weight:800; letter-spacing:-.01em; text-align:center;}
.rdx-benefit{display:flex; gap:13px; align-items:center; font-size:13.5px; color:var(--ink);
  margin-bottom:14px; line-height:1.4;}
.rdx-benefit span:first-child{font-size:20px; flex-shrink:0;}
.rdx-side-cta{margin-top:auto; background:linear-gradient(115deg, var(--blue), var(--blue-ink));
  border-radius:13px; padding:15px 17px; color:#fff;}
.rdx-side-cta b{font-size:14px;}
.rdx-side-cta p{margin:4px 0 0; font-size:12.5px; color:rgba(255,255,255,.85);}
.rdx-report-wrap{max-width:1220px; margin:0 auto; padding:16px 22px 8px;}
.rdx-report{background:linear-gradient(180deg, var(--blue), var(--blue-ink));
  border-radius:16px; padding:20px 22px;}
.rdx-report-head{display:flex; justify-content:space-between; align-items:center; gap:12px;
  flex-wrap:wrap; margin-bottom:14px; color:#fff;}
.rdx-report-head .ttl{display:flex; align-items:center; gap:9px; font-size:16px; font-weight:600;}
.rdx-report-head .stamp{font-size:10.5px; letter-spacing:.1em; color:rgba(255,255,255,.75);}
.rdx-cards{display:flex; gap:16px;}
@media (max-width:860px){ .rdx-cards{flex-direction:column;} }
.rdx-card{flex:1; background:rgba(7,14,22,.6); border-radius:14px; padding:14px 16px; color:#fff;}
.rdx-card h3{margin:0; font-size:14px; font-weight:700; letter-spacing:-.01em;}
.rdx-card .cap{font-size:11.5px; color:rgba(255,255,255,.55); margin:3px 0 14px;}
.rdx-bars{display:flex; gap:14px;}
.rdx-bar{flex:1; display:flex; flex-direction:column; align-items:center;}
.rdx-bar .lbl{font-size:10.5px; color:rgba(255,255,255,.7); padding:2px 0 7px;}
.rdx-bar .track{position:relative; width:min(38px,80%); height:104px;
  background:rgba(255,255,255,.09); border-radius:8px 8px 0 0; overflow:hidden;}
.rdx-bar .fill{position:absolute; bottom:0; width:100%; background:#8ecdf5; border-radius:8px 8px 0 0;}
.rdx-bar .fill.dim{background:#5aa8d8;}
.rdx-bar .val{font-size:13px; margin-top:7px;}
.rdx-below{max-width:1220px; margin:0 auto; padding:10px 22px 30px;}

/* header flag select (rdx pages) */
.rdx-flag{background:var(--field); border:1px solid var(--line); border-radius:9px;
  font-size:16px; padding:6px 8px; margin-right:8px; color:var(--ink); cursor:pointer;
  -webkit-appearance:none; appearance:none;}
.land .navright{gap:0; align-items:center;}
/* map gets raindrop's vertical presence: near-square */
.rdx-map{aspect-ratio: 1.04 / 1; min-height:65vh; max-height:860px;}
@media (max-width:960px){ .rdx-map{aspect-ratio:auto; min-height:440px;} }

/* google-map dark popup (raindrop style) */
.gpp{position:absolute; transform:translate(-50%, calc(-100% - 14px)); background:rgba(22,24,28,.94);
  border-radius:14px; padding:14px 26px 12px; min-width:130px; text-align:center; color:#fff;
  box-shadow:0 10px 34px rgba(0,0,0,.45); display:none; z-index:10;}
.gpp::after{content:""; position:absolute; left:50%; bottom:-8px; transform:translateX(-50%);
  border:8px solid transparent; border-bottom:none; border-top:8px solid rgba(22,24,28,.94);}
.gpp-v{font-size:26px; font-weight:700; font-family:'Fragment Mono',ui-monospace,monospace;}
.gpp-v span{font-size:16px; margin-left:1px;}
.gpp-k{font-size:12.5px; color:rgba(255,255,255,.75); margin-top:1px; white-space:nowrap;}
.gpp-x{position:absolute; top:4px; right:7px; background:none; border:none; color:rgba(255,255,255,.6);
  font-size:16px; cursor:pointer; padding:2px;}
.gpp-x:hover{color:#fff;}
