/* === Place (Ypatinga vieta ir detalės) === */
.place{ position:relative; padding:120px 0; background:#F6F8FB; }
.place .container{ max-width:1444px; }

.place-header{ display:flex; flex-direction:column; align-items:flex-start; gap:8px; margin-bottom: 36px; }
.place-eyebrow{ font-family:'Syne',sans-serif; font-weight:500; font-size:24px; line-height:29px; color:#01172C; }
.place-title{ margin:0; font-family:'Syne',sans-serif; font-weight:700; font-size:36px; line-height:46px; color:#01172C; }

.place-s1-grid{ display:grid; grid-template-columns: minmax(300px, 712px) 48px 1fr; gap: 24px; align-items: start; }

.place-photo{ position:relative; width:100%; max-width:712px; height:640px; background:#000; overflow:hidden; }

/* Image loading skeleton */
.place-photo .image-container{ 
  position:relative; width:100%; height:100%; overflow:hidden; 
}
.place-photo .image-skeleton{ 
  position:absolute; inset:0; background:#E5E7EB;
  background: linear-gradient(90deg, #E5E7EB 25%, #F3F4F6 50%, #E5E7EB 75%);
  background-size: 200% 100%;
  animation: shimmer 1.5s infinite;
  z-index:1;
}
.place-photo .image-container img{ 
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover;
  opacity:0; transition: opacity 0.3s ease;
  z-index:2;
}
.place-photo .image-container.loaded img{ opacity:1; }
.place-photo .image-container.loaded .image-skeleton{ opacity:0; transition: opacity 0.3s ease; }

@keyframes shimmer{
  0% { background-position: -200% 0; }
  100% { background-position: 200% 0; }
}

.place-photo-overlay{ position:absolute; inset:0; background: rgba(0,0,0,0.10); pointer-events:none; }

.place-splitter{ display:block; width:48px; height:97%; }

.place-content{ max-width: 593px; display:flex; flex-direction:column; gap:16px; }
.place-icon{ width:82px; height:62px; display:block; margin-bottom:190px; }
.place-subtitle{ margin:185px 0 18px; font-family:'Syne',sans-serif; font-weight:700; font-size:36px; line-height:46px; color:#01172C; }
.place-description{ margin:0 0 16px; font-family:'Syne',sans-serif; font-weight:400; font-size:20px; line-height:30px; color:#01172C; }

@media (max-width: 1402px){
  .place-splitter{ display:none; }
}

@media (max-width: 1400px){
  .place{ padding:80px 0; }
  .place-title{ font-size: clamp(40px, 5vw, 72px); line-height: clamp(48px, 5.5vw, 80px); }
  .place-s1-grid{ grid-template-columns: minmax(250px, 1fr) 1fr; gap: 32px; }
  .place-photo{ height: auto; aspect-ratio: 712/640; }
  .place-content{ max-width: 100%; }
  .place-icon{ display:none; }
  .place-subtitle{ margin: 20px 0 18px; font-size: clamp(28px, 3vw, 36px); line-height: clamp(34px, 3.5vw, 46px); }
  .place-description{ font-size: clamp(16px, 1.5vw, 20px); line-height: clamp(24px, 2vw, 30px); }
}

@media (max-width: 760px){
  .place{ padding:72px 0; }
  .place-title{ font-size: clamp(40px,6vw,72px); line-height: clamp(48px,6.5vw,80px); }
  .place-s1-grid{ grid-template-columns: 1fr; gap: 24px; }
  .place-photo{ width:100%; height:auto; }
  .place-photo img{ height:auto; }
  .place-content{ max-width: 100%; }
  .place-icon{ display:none; }
  .place-subtitle{ margin:12px 0 14px;}
}

@media (max-width: 500px){
  .place-title{ font-size:35px; line-height:32px; }
  .place-description{ font-size:15px; line-height:20px; }
}
