/* AR Reviews — carousel (navy/blue, Oswald headings, Tuffy body) */
.ar-rv { max-width:1200px; margin:0 auto; padding:clamp(56px,7vw,96px) 22px; font-family:var(--arf-font-body,'Tuffy AR',system-ui,sans-serif); color:#0f172a; }
.ar-rv-eyebrow { margin:0 0 10px; font-size:12px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:#3B82F6; }
.ar-rv-title { margin:0 0 28px; font-family:var(--arf-font-heading,'Oswald',Impact,sans-serif); font-weight:600; text-transform:uppercase; font-size:clamp(2rem,4vw,3rem); color:#1e3a6e; line-height:1.02; }
.ar-rv-carousel { overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; -webkit-overflow-scrolling:touch; border-radius:18px; }
.ar-rv-carousel::-webkit-scrollbar { display:none; }
.ar-rv-track { display:flex; gap:22px; padding:6px 2px 22px; }
.ar-rv-card {
  flex:0 0 min(360px, 82vw); scroll-snap-align:start; background:#fff; border:1px solid #e2e8f0; border-radius:20px; padding:26px 24px;
  box-shadow:0 16px 36px -22px rgba(30,58,110,.35); display:flex; flex-direction:column; gap:14px;
  transition:transform .45s cubic-bezier(.2,.7,.2,1), box-shadow .45s, border-color .45s;
  animation:ar-rv-rise linear both; animation-timeline:view(inline); animation-range:entry 0% cover 35%;
}
.ar-rv-card:hover { transform:translateY(-6px); border-color:rgba(59,130,246,.45); box-shadow:0 26px 50px -20px rgba(59,130,246,.35); }
.ar-rv-stars { color:#3B82F6; letter-spacing:3px; font-size:18px; }
.ar-rv-text { margin:0; color:#334155; line-height:1.7; font-size:16px; flex:1; }
.ar-rv-by { display:grid; gap:2px; border-top:1px solid #e2e8f0; padding-top:12px; }
.ar-rv-by strong { color:#1e3a6e; font-size:15px; }
.ar-rv-by span { color:#64748b; font-size:13px; }
.ar-rv-controls { display:flex; gap:10px; justify-content:flex-end; margin-top:6px; }
.ar-rv-controls button { width:46px; height:46px; border-radius:50%; border:1.5px solid #c9d6ee; background:#fff; color:#1e3a6e; font-size:18px; cursor:pointer; transition:background .25s, color .25s, border-color .25s; }
.ar-rv-controls button:hover, .ar-rv-controls button:focus-visible { background:#1e3a6e; border-color:#1e3a6e; color:#fff; }
.ar-rv-controls button:focus-visible { outline:2px solid #3B82F6; outline-offset:2px; }

.ar-rv-form { display:grid; gap:16px; max-width:640px; background:#fff; border:1px solid #e2e8f0; border-radius:20px; padding:30px; box-shadow:0 20px 44px -26px rgba(30,58,110,.35); }
.ar-rv-form label { display:grid; gap:6px; font-weight:600; color:#1e3a6e; font-size:14px; }
.ar-rv-form input, .ar-rv-form select, .ar-rv-form textarea { width:100%; box-sizing:border-box; padding:13px 14px; border:1.5px solid #c9d6ee; border-radius:12px; font:400 15px/1.4 var(--arf-font-body,'Tuffy AR',sans-serif); }
.ar-rv-form input:focus, .ar-rv-form select:focus, .ar-rv-form textarea:focus { outline:none; border-color:#3B82F6; box-shadow:0 0 0 4px rgba(59,130,246,.15); }
.ar-rv-submit { padding:15px; border:0; border-radius:999px; background:#1e3a6e; color:#fff; font-weight:700; font-size:16px; cursor:pointer; transition:transform .3s, background .3s; }
.ar-rv-submit:hover { background:#16305c; transform:translateY(-2px); }
.ar-rv-submit:disabled { opacity:.6; cursor:wait; }
.ar-rv-status { margin:0; min-height:1.2em; font-size:14px; color:#b42318; }
.ar-rv-status.ok { color:#067647; }
.ar-rv-hp { position:absolute !important; left:-10000px !important; width:1px; height:1px; overflow:hidden; }

@keyframes ar-rv-rise { from { opacity:0; translate:40px 0; } to { opacity:1; translate:0 0; } }
@supports not (animation-timeline: view()) { .ar-rv-card { animation:none; } }
@media (prefers-reduced-motion: reduce) { .ar-rv-card, .ar-rv-controls button { animation:none !important; transition:none !important; } .ar-rv-card:hover { transform:none; } }
