/* ===== LOCATED AT page (locations.php) ===== */
.lc-hero{padding:84px 0 96px}
.lc-hero h1{max-width:820px;margin-left:auto;margin-right:auto;line-height:1.15;letter-spacing:-.02em}
.lc-hero p{font-size:1.05rem;margin-bottom:28px}
.lc-hero .badge{margin-bottom:16px}
.lc-orbs i{position:absolute;display:block;border-radius:50%;pointer-events:none;animation:lcOrb 11s ease-in-out infinite}
.lc-orbs .o1{width:260px;height:260px;left:6%;top:14%;background:radial-gradient(circle at 30% 30%,rgba(0,198,255,.45),transparent 70%)}
.lc-orbs .o2{width:320px;height:320px;right:4%;top:-8%;background:radial-gradient(circle at 60% 40%,rgba(139,44,245,.5),transparent 70%);animation-delay:-4s}
.lc-orbs .o3{width:180px;height:180px;right:22%;bottom:-6%;background:radial-gradient(circle,rgba(10,108,255,.5),transparent 70%);animation-delay:-7s}
@keyframes lcOrb{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(18px,-22px) scale(1.08)}}

.lc-main{padding-top:84px}
.lc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;align-items:stretch}
.lc-card{display:flex;flex-direction:column;background:#fff;border:1px solid #e3ebfb;border-radius:22px;overflow:hidden;box-shadow:0 12px 30px rgba(11,31,77,.1);transition:transform .4s,box-shadow .4s,opacity .7s;scroll-margin-top:110px}
.lc-card:hover{transform:translateY(-10px);box-shadow:0 30px 56px rgba(10,108,255,.26)}
.lc-card:target{box-shadow:0 0 0 3px var(--blue),0 30px 56px rgba(10,108,255,.26)}
.lc-photo{position:relative;aspect-ratio:16/10;overflow:hidden;background:#dfe9ff}
.lc-photo img{width:100%;height:100%;object-fit:cover;transition:transform .7s}
.lc-card:hover .lc-photo img{transform:scale(1.08)}
.lc-photo::after{content:"";position:absolute;inset:auto 0 0 0;height:45%;background:linear-gradient(180deg,transparent,rgba(6,20,55,.55));pointer-events:none}
.lc-type{position:absolute;left:14px;top:14px;z-index:1;font-weight:800;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:#fff;background:var(--grad);padding:6px 14px;border-radius:30px;box-shadow:0 8px 16px rgba(10,108,255,.4)}
.lc-body{padding:22px 24px 26px;display:flex;flex-direction:column;flex:1}
.lc-body h3{color:var(--navy);font-size:1.2rem;line-height:1.3}
.lc-city{color:var(--purple);font-weight:700;font-size:.84rem;margin:3px 0 10px}
.lc-desc{font-size:.9rem;color:#566385;margin-bottom:16px}
.lc-info{border-top:1px solid #eef2fb;padding-top:14px;margin-bottom:20px}
.lc-info li{display:flex;gap:12px;margin-bottom:12px;font-size:.88rem;color:var(--text);line-height:1.45;word-break:break-word}
.lc-ico{flex:0 0 36px;width:36px;height:36px;border-radius:11px;background:linear-gradient(135deg,#e6f3ff,#efe6ff);display:grid;place-items:center;font-size:1rem}
.lc-info small{display:block;color:var(--muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;font-weight:700}
.lc-info a{font-weight:600}
.lc-info a:hover{color:var(--blue)}
.lc-actions{margin-top:auto;display:flex;flex-wrap:wrap;gap:10px}
.lc-actions .btn{padding:11px 20px;font-size:.86rem}
.lc-btn-line{display:inline-flex;align-items:center;font-weight:700;font-size:.86rem;color:var(--blue);border:1.5px solid #cfe0ff;border-radius:30px;padding:10px 18px;transition:.3s;background:#fff}
.lc-btn-line:hover{background:var(--navy);border-color:var(--navy);color:#fff;transform:translateY(-3px)}
.lc-empty{text-align:center;color:var(--muted);font-weight:600;padding:30px 0}

/* map */
.lc-map{padding-top:30px;padding-bottom:96px}
.lc-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:-14px 0 28px}
.lc-tab{font-family:inherit;font-weight:700;font-size:.88rem;color:var(--navy);background:#fff;border:1.5px solid #cfe0ff;padding:9px 22px;border-radius:30px;cursor:pointer;transition:.3s}
.lc-tab:hover{transform:translateY(-3px);box-shadow:0 10px 20px rgba(10,108,255,.2);border-color:var(--blue)}
.lc-tab.active{background:var(--grad);color:#fff;border-color:transparent;box-shadow:0 10px 22px rgba(10,108,255,.35)}
.lc-map-frame{border-radius:22px;overflow:hidden;border:6px solid #fff;box-shadow:0 20px 50px rgba(11,31,77,.22);background:#dfe9ff}
.lc-map-frame iframe{display:block;width:100%;height:440px;border:0}

@media (max-width:1100px){.lc-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:700px){
  .lc-hero{padding:60px 0 72px}
  .lc-grid{grid-template-columns:1fr}
  .lc-map-frame iframe{height:320px}
}
