/* Main-page place stories; original hero dimensions and brand stay intact. */
.hero-carousel{min-width:0}
.hero-carousel .hero-slides{position:relative;overflow:hidden;border-radius:160px 0 0 0;touch-action:pan-y pinch-zoom;background:var(--green)}
.hero-carousel .hero-slide{position:relative;margin:0}
.hero-carousel .hero-slide img{border-radius:0;object-position:var(--photo-position,center)}
.hero-carousel .photo-caption{inset:auto 0 0;display:block;padding:65px 26px 24px;background:linear-gradient(transparent,rgba(12,27,22,.92));text-shadow:0 1px 4px #0006}
.hero-carousel .photo-caption strong{display:block;font-size:22px;line-height:1.4;letter-spacing:-.035em;font-weight:600}
.hero-carousel .photo-caption p{margin:7px 0 10px;color:#fff;font-size:13px;line-height:1.65;word-break:keep-all}
.hero-carousel .photo-caption a{display:inline-flex;align-items:center;min-height:44px;color:#fff;border-bottom:1px solid #ffffff80;font-size:12px}
.hero-carousel .stamp{pointer-events:none;z-index:1}
.hero-carousel .hero-controls{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;color:var(--ink)}
.hero-carousel .hero-position,.hero-carousel .hero-actions,.hero-carousel .hero-dots{display:flex;align-items:center;gap:4px}
.hero-carousel .hero-count{font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums;letter-spacing:1px;margin-right:12px}
.hero-carousel .hero-controls button{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-height:44px;background:transparent;color:var(--ink);border:1px solid var(--line);padding:0;border-radius:50%;width:44px}
.hero-carousel .hero-controls button:hover{background:var(--light)}
.hero-carousel .hero-controls .hero-dot{border:0;width:24px;border-radius:0}
.hero-carousel .hero-dot::after{content:'';width:6px;height:6px;border-radius:50%;background:#a1a79c}
.hero-carousel .hero-dot[aria-pressed=true]::after{background:var(--red);width:18px;border-radius:4px}
.hero-carousel .hero-controls .hero-toggle{width:auto;border-radius:24px;padding:0 12px;gap:6px;font-size:12px;margin-left:4px}
@media(max-width:760px){
  .hero-carousel .hero-slides{border-radius:95px 0 0 0}
  .hero-carousel .photo-caption{padding:60px 18px 16px}
  .hero-carousel .photo-caption strong{font-size:20px}
  .hero-carousel .photo-caption p{font-size:12px;margin:6px 0}
  .hero-carousel .hero-controls{flex-wrap:wrap;gap:4px 12px}
  .hero-carousel .hero-count{margin-right:6px}
  .hero-carousel .hero-position{gap:0}
  .hero-carousel .hero-dots{gap:0}
  .hero-carousel .hero-controls .hero-dot{width:24px}
  .hero-carousel .hero-actions{margin-left:auto}
}
