.logistics-page {
  min-height: 100vh;
  color: #fff;
  background:
    radial-gradient(circle at 50% 35%, rgba(30, 70, 210, 0.45), rgba(9, 12, 40, 0) 46%),
    linear-gradient(180deg, #0a0f3c 0%, #071131 34%, #041938 100%);
}
.section-kicker {
  text-align: start;
  margin-bottom: 20px;
}
.logistics-header {
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
  background: #132170;
  box-shadow: 0 3px 12px rgba(5, 10, 36, 0.22);
}
.hotel-rates-head-wrap{
  display: flex;
  height: 100%;
  flex-direction: column;
  justify-items: stretch;
}
.logistics-header-inner {
width: 100%;
    margin: 0 auto;
    padding: 14px 30px;
}

.logistics-main {
  padding: 120px 0 88px;
}

.section-shell {
  width: 1320px;
  max-width: calc(100% - 40px);
  margin: 0 auto 86px;
  position: relative;
  z-index: 0;
}

.section-shell::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  opacity: 0.48;
  background: radial-gradient(50% 50% at 50% 50%, rgba(0, 108, 255, 0.9) 0%, rgba(0, 108, 255, 0) 100%);
  filter: blur(17.5px);
  z-index: -1;
}
.logistics-kicker {
  margin-bottom: 18px;
}

.logistics-hero-card {
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: 0;
  border-radius: 20px;
  overflow: hidden;
  background: linear-gradient(135deg, rgba(21, 45, 149, 0.96), rgba(9, 26, 111, 0.98));
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.22);
}

.logistics-hero-card-coming-soon {
  display: block;
  width: min(980px, 100%);
  margin: 0 auto;
}

.logistics-hero-copy {
  padding: 48px 44px 42px;
}

.logistics-hero-copy h1 {
  margin: 0 0 26px;
  font-size: 40px;
  line-height: 1.05;
  font-weight: 600;
  letter-spacing: -0.04em;
}

.info-panel {
  padding: 18px 20px;
  border-radius: 10px;
  background: rgba(31, 61, 180, 0.88);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.04);
}

.info-panel-location {
  margin-bottom: 14px;
}

.info-panel-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.info-panel-title {
  color: #fff;
  font-weight: 600;
  font-size: 22px;
  line-height: 1.2;
  margin-bottom: 10px;
}

.with-icon {
  display: flex;
  align-items: center;
  gap: 10px;
}

.with-icon::before {
  content: "";
  width: 16px;
  height: 16px;
  display: inline-block;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.icon-location::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M8 1.33334C5.06 1.33334 2.66667 3.72668 2.66667 6.66668C2.64667 10.96 7.41333 14.4 7.61333 14.5467C7.72667 14.6267 7.86667 14.6733 8 14.6733C8.13333 14.6733 8.27333 14.6333 8.38667 14.5467C8.58667 14.4 13.3533 10.9667 13.3333 6.66668C13.3333 3.72668 10.94 1.33334 8 1.33334ZM8 9.33334C6.52667 9.33334 5.33333 8.14001 5.33333 6.66668C5.33333 5.19334 6.52667 4.00001 8 4.00001C9.47333 4.00001 10.6667 5.19334 10.6667 6.66668C10.6667 8.14001 9.47333 9.33334 8 9.33334Z' fill='%23FFCC00'/%3E%3C/svg%3E");
}

.icon-calendar::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M2 9C2 7.114 2 6.172 2.586 5.586C3.172 5 4.114 5 6 5H18C19.886 5 20.828 5 21.414 5.586C22 6.172 22 7.114 22 9C22 9.471 22 9.707 21.854 9.854C21.707 10 21.47 10 21 10H3C2.529 10 2.293 10 2.146 9.854C2 9.707 2 9.47 2 9Z' fill='%23FFCC00'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M2 18C2 19.886 2 20.828 2.586 21.414C3.172 22 4.114 22 6 22H18C19.886 22 20.828 22 21.414 21.414C22 20.828 22 19.886 22 18V13C22 12.529 22 12.293 21.854 12.146C21.707 12 21.47 12 21 12H3C2.529 12 2.293 12 2.146 12.146C2 12.293 2 12.53 2 13V18ZM7 15C7 14.529 7 14.293 7.146 14.146C7.293 14 7.53 14 8 14H10C10.471 14 10.707 14 10.854 14.146C11 14.293 11 14.529 11 15C11 15.471 11 15.707 10.854 15.854C10.707 16 10.47 16 10 16H8C7.529 16 7.293 16 7.146 15.854C7 15.707 7 15.47 7 15ZM7.146 18.146C7 18.293 7 18.53 7 19C7 19.47 7 19.707 7.146 19.854C7.293 20 7.53 20 8 20H10C10.471 20 10.707 20 10.854 19.854C11 19.707 11 19.47 11 19C11 18.53 11 18.293 10.854 18.146C10.707 18 10.47 18 10 18H8C7.529 18 7.293 18 7.146 18.146ZM13 15C13 14.529 13 14.293 13.146 14.146C13.293 14 13.53 14 14 14H16C16.471 14 16.707 14 16.854 14.146C17 14.293 17 14.529 17 15C17 15.471 17 15.707 16.854 15.854C16.707 16 16.47 16 16 16H14C13.529 16 13.293 16 13.146 15.854C13 15.707 13 15.47 13 15ZM13.146 18.146C13 18.293 13 18.53 13 19C13 19.47 13 19.707 13.146 19.854C13.293 20 13.529 20 14 20H16C16.471 20 16.707 20 16.854 19.854C17 19.707 17 19.47 17 19C17 18.53 17 18.293 16.854 18.146C16.707 18 16.47 18 16 18H14C13.529 18 13.293 18 13.146 18.146Z' fill='%23FFCC00'/%3E%3Cpath d='M7 3V6M17 3V6' stroke='%23FFCC00' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
}

.icon-dress::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M7.49973 1.57407L7.49316 1.5675L7.49973 1.57407Z' fill='%23FFCC00'/%3E%3Cpath d='M16.5066 1.5675L16.5 1.57407L16.5066 1.5675Z' fill='%23FFCC00'/%3E%3Cpath d='M19.2904 4.77753H19.2357L16.5079 8.50653C16.2522 8.85603 15.7759 8.95953 15.3994 8.74653L15.3957 8.74428L14.7424 10.038L15.7962 17.1113C15.8974 17.7803 15.6709 18.4673 15.1902 18.9473L13.5177 20.619C13.1239 21.0225 12.5809 21.2513 12.0012 21.2513C11.4214 21.2513 10.8777 21.0225 10.4727 20.6085L8.81143 18.9473C8.32993 18.465 8.10418 17.7773 8.20618 17.1068L9.25918 10.038L8.60593 8.74503L8.59993 8.74803C8.46868 8.82153 8.32543 8.85678 8.18368 8.85678C7.91818 8.85678 7.65868 8.73378 7.49218 8.50578L4.76593 4.77753H4.71043C3.42043 4.77753 2.37793 5.82003 2.37793 7.11003V20.1675C2.37793 21.4575 3.42043 22.5 4.71043 22.5H19.2904C20.5804 22.5 21.6229 21.4575 21.6229 20.1675V7.11003C21.6229 5.82003 20.5804 4.77753 19.2904 4.77753Z' fill='%23FFCC00'/%3E%3Cpath d='M8.37988 1.5L12.0001 5.121L15.6204 1.5H8.37988Z' fill='%23FFCC00'/%3E%3Cpath d='M6.20298 4.45499L8.32398 7.35524L10.8912 5.92049L7.09623 2.12549L5.96973 4.26149C6.05823 4.30799 6.13998 4.36949 6.20298 4.45499Z' fill='%23FFCC00'/%3E%3Cpath d='M15.6774 7.35599L17.7984 4.45499C17.8614 4.36874 17.9431 4.30799 18.0316 4.26149L16.9051 2.12549L13.1094 5.92124L15.6774 7.35599Z' fill='%23FFCC00'/%3E%3Cpath d='M13.6869 9.132L14.2156 8.08575L12.0009 6.849L9.78613 8.08575L10.3149 9.132H13.6869Z' fill='%23FFCC00'/%3E%3Cpath d='M13.4431 10.4827H10.5579L9.54013 17.31C9.50263 17.5575 9.58513 17.8125 9.76513 17.9925L11.4376 19.665C11.7451 19.98 12.2551 19.98 12.5626 19.665L14.2351 17.9925C14.4151 17.8125 14.4976 17.5575 14.4601 17.31L13.4431 10.4827Z' fill='%23FFCC00'/%3E%3C/svg%3E");
}

.info-panel p {
  margin: 0;
  color: rgba(245, 248, 255, 0.92);
  font-size: 18px;
  line-height: 1.55;
}

.section-titles h2 {
  font-size: 40px;
  /* width: 46%; */
}
.logistics-attractions .section-titles h2,
.logistics-accommodation .section-titles h2 {
  text-align: center;
  display: block;
  width: 100%;
}
.logistics-attractions,
.logistics-accommodation {
  .section-titles {
    font-size: 48px;
    width: 60%;
    text-align: center;
    margin: 0 auto 60px;
  }
}
.logistics-hero-map iframe {
  width: 100%;
  height: 100%;
  min-height: 100%;
  border: 0;
  display: block;
  border-radius: 12px;
}

.guide-layout {
  display: grid;
  grid-template-columns: 360px minmax(0, 1fr);
  gap: 24px;
  /* align-items: start; */
}

.guide-tabs {
  display: grid;
  gap: 10px;
}

.guide-tab {
  border: 0;
  border-left: 3px solid #ffcc00;
  border-radius: 0 10px 10px 0;
  padding: 20px 18px;
  background: rgba(19, 34, 111, 0.92);
  color: #fff;
  text-align: left;
  font: inherit;
  font-size: 21px;
  font-weight: 600;
  line-height: 1.3;
  cursor: pointer;
  transition:
    background 0.2s ease,
    color 0.2s ease;
}

.guide-tab.is-active {
  background: #ffcc00;
  color: #111125;
}
.guide-panels{
 padding: 34px 36px;
  border-radius: 12px;
  background: linear-gradient(180deg, rgba(28, 60, 196, 0.95), rgba(15, 36, 132, 0.95));
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08);
}
.guide-panel {
  display: none;
}

.guide-panel.is-active {
  display: block;
}

.guide-panel h3 {
  margin: 0 0 30px;
  font-size: 22px;
  line-height: 1.15;
  font-weight: 600;
}

.guide-panel-intro {
  margin: 0 0 12px;
  color: #f8f9fc;
  font-size: 16px;
  line-height: 1.6;
}

.guide-points {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 16px;
}

.guide-points li {
  position: relative;
  padding-left: 28px;
  color: #f8f9fc;
  font-size: 16px;
  line-height: 1.65;
}

.guide-points li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 4px;
  width: 16px;
  height: 16px;
  border-radius: 999px;
  background: #ffcc00;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M11.3073 3.5L5.33686 9.91667L2.62305 7' stroke='%23111125' stroke-width='1.19511' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-position: center;
}

.horizontal-cards {
  display: flex;
  gap: 16px;
  overflow-x: auto;
  overflow-y: hidden;
  padding-bottom: 10px;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
}

.horizontal-cards::-webkit-scrollbar {
  height: 8px;
}

.horizontal-cards::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.25);
  border-radius: 999px;
}

.logistics-package-actions {
  margin-top: 26px;
  display: flex;
  justify-content: center;
}

.logistics-package-btn {
  min-width: 190px;
  min-height: 48px;
  padding: 12px 24px;
  border-radius: 999px;
  background: #ffcc00;
  color: #111125;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease,
    background-color 0.2s ease;
}

.logistics-package-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 14px 28px rgba(4, 12, 44, 0.22);
}

.hotel-card,
.attraction-card {
  flex: 0 0 auto;
  border-radius: 14px;
  overflow: hidden;
  background: linear-gradient(180deg, rgba(22, 51, 173, 0.96), rgba(10, 28, 116, 0.96));
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08);
  scroll-snap-align: start;
}

.hotel-card {
  /* width: 360px; */
}

.hotel-image-wrap {
  height: 242px;
}

.hotel-image-wrap img,
.attraction-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.hotel-body {
  padding: 18px;
  display: flex;
  flex-direction: column;
  min-height: 490PX;
  justify-content: SPACE-BETWEEN;
}

.hotel-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-bottom: 27px;
}

.hotel-head h3 {
  margin: 0;
  font-size: 20px;
  line-height: 1.2;
  font-weight: 600;
}

.hotel-rating {
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  position: relative;
}
.hotel-rating::before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  margin-inline-end: 6px;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='14' viewBox='0 0 15 14' fill='none'%3E%3Cpath d='M6.58581 0.278609C6.76922 -0.0930139 7.29914 -0.0930128 7.48255 0.27861L9.26899 3.89833C9.34182 4.0459 9.4826 4.14818 9.64545 4.17185L13.6401 4.7523C14.0502 4.81189 14.2139 5.31588 13.9172 5.60514L11.0266 8.4227C10.9088 8.53757 10.855 8.70307 10.8828 8.86527L11.5652 12.8437C11.6353 13.2522 11.2065 13.5637 10.8397 13.3708L7.26685 11.4924C7.12119 11.4159 6.94717 11.4159 6.80151 11.4924L3.22863 13.3708C2.86182 13.5637 2.4331 13.2522 2.50316 12.8437L3.18552 8.86527C3.21334 8.70307 3.15956 8.53757 3.04172 8.4227L0.151201 5.60514C-0.145557 5.31588 0.0181986 4.81189 0.428309 4.7523L4.42291 4.17185C4.58576 4.14818 4.72654 4.0459 4.79937 3.89833L6.58581 0.278609Z' fill='%23FFDA18'/%3E%3C/svg%3E");
}
.hotel-rates {
  display: grid;
  gap: 10px;
  margin-bottom: 18px;
  OVERFLOW: AUTO;
}

.hotel-rates-head,
.hotel-rate-row {
  display: grid;
  grid-template-columns: 1.5fr 1fr 1fr;
  gap: 10px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.28);
  padding-bottom: 8px;
  margin-bottom: 12px;
}

.hotel-rates-head {
  color: rgba(255, 255, 255, 0.82);
  font-size: 16px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.hotel-rate-row {
  color: #f2f4fc;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
}

.hotel-actions {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
}

.promo-chip {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  padding: 10px 14px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.92);
  color: #112256;
  font-size: 13px;
  font-weight: 500;
  width: 50%;
}
.promo-chip::before {
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  margin-right: 6px;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6.569 2.25H12.931C13.535 2.25 14.033 2.25 14.439 2.283C14.86 2.318 15.248 2.392 15.612 2.577C16.1765 2.86462 16.6354 3.32354 16.923 3.888C17.109 4.252 17.183 4.64 17.217 5.061C17.25 5.467 17.25 5.965 17.25 6.569V6.75H17.65C18.153 6.75 18.568 6.75 18.907 6.773C19.259 6.797 19.585 6.849 19.898 6.978C20.2621 7.12877 20.5929 7.34979 20.8716 7.62844C21.1502 7.90709 21.3712 8.23791 21.522 8.602C21.652 8.915 21.702 9.241 21.727 9.592C21.75 9.932 21.75 10.347 21.75 10.849V10.901C21.75 11.403 21.75 11.818 21.727 12.157C21.7126 12.4814 21.6488 12.8018 21.538 13.107C20.9613 15.0728 19.9076 16.8656 18.4707 18.3259C17.0338 19.7861 15.2583 20.8686 13.302 21.477L13.113 21.536C12.8063 21.6493 12.4837 21.7135 12.157 21.726C11.817 21.75 11.403 21.75 10.901 21.75H10.849C10.347 21.75 9.932 21.75 9.593 21.727C9.241 21.703 8.915 21.651 8.602 21.522C8.23791 21.3712 7.90709 21.1502 7.62844 20.8716C7.34979 20.5929 7.12877 20.2621 6.978 19.898C6.848 19.585 6.798 19.259 6.773 18.908C6.75 18.568 6.75 18.153 6.75 17.651V17.25H6.57C5.966 17.25 5.467 17.25 5.061 17.217C4.64 17.182 4.252 17.109 3.888 16.923C3.32354 16.6354 2.86462 16.1765 2.577 15.612C2.392 15.248 2.317 14.86 2.283 14.439C2.25 14.033 2.25 13.535 2.25 12.931V6.569C2.25 5.965 2.25 5.467 2.283 5.061C2.318 4.64 2.392 4.252 2.577 3.888C2.86462 3.32354 3.32354 2.86462 3.888 2.577C4.252 2.392 4.64 2.317 5.061 2.283C5.467 2.25 5.965 2.25 6.569 2.25ZM8.25 17.625C8.25 18.159 8.25 18.523 8.27 18.805C8.288 19.081 8.323 19.224 8.364 19.324C8.43938 19.506 8.54989 19.6715 8.68922 19.8108C8.82854 19.9501 8.99395 20.0606 9.176 20.136C9.276 20.177 9.419 20.212 9.695 20.23C9.977 20.25 10.341 20.25 10.875 20.25C11.409 20.25 11.773 20.25 12.055 20.23C12.331 20.212 12.474 20.177 12.574 20.136C12.756 20.0606 12.9215 19.9501 13.0608 19.8108C13.2001 19.6715 13.3106 19.506 13.386 19.324C13.427 19.224 13.461 19.081 13.48 18.805C13.5 18.523 13.5 18.159 13.5 17.625V17.599C13.5 17.097 13.5 16.682 13.523 16.343C13.547 15.991 13.599 15.665 13.728 15.352C13.8788 14.9879 14.0998 14.6571 14.3784 14.3784C14.6571 14.0998 14.9879 13.8788 15.352 13.728C15.665 13.598 15.991 13.548 16.342 13.523C16.682 13.5 17.097 13.5 17.599 13.5H17.625C18.159 13.5 18.523 13.5 18.805 13.48C19.081 13.461 19.224 13.427 19.324 13.386C19.506 13.3106 19.6715 13.2001 19.8108 13.0608C19.9501 12.9215 20.0606 12.756 20.136 12.574C20.177 12.474 20.212 12.331 20.23 12.055C20.25 11.773 20.25 11.409 20.25 10.875C20.25 10.341 20.25 9.977 20.23 9.695C20.212 9.419 20.177 9.276 20.136 9.176C20.0606 8.99395 19.9501 8.82854 19.8108 8.68922C19.6715 8.54989 19.506 8.43938 19.324 8.364C19.224 8.323 19.081 8.288 18.805 8.27C18.523 8.25 18.159 8.25 17.625 8.25H11.1C10.458 8.25 10.02 8.25 9.683 8.278C9.354 8.305 9.186 8.354 9.069 8.413C8.78651 8.55685 8.55685 8.78651 8.413 9.069C8.353 9.186 8.305 9.354 8.278 9.683C8.251 10.021 8.25 10.458 8.25 11.1V17.625Z' fill='%23001246'/%3E%3C/svg%3E");
}
.book-btn {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-width: 120px;
  min-height: 42px;
  padding: 10px 18px;
  border: 1px solid #ffcc00;
  border-radius: 8px;
  color: #ffcc00;
  text-decoration: none;
  font-size: 14px;
  font-weight: 600;
  width: 50%;
}

.attraction-card {
  padding: 16px;
}

.attraction-card img {
  height: 272px;
  border-radius: 16px;
}

.attraction-body {
  padding: 18px 18px 22px;
  text-align: justify;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
}

.attraction-body h3 {
  margin: 0 0 10px;
  font-size: 20px;
  line-height: 1.15;
  font-weight: 600;
}

.attraction-body p {
  margin: 0;
  color: rgba(238, 242, 255, 0.82);
  font-size: 12px;
  line-height: 1.55;
}

.attraction-package-btn {
  margin-top: auto;
}

@media (max-width: 1100px) {
  .logistics-hero-card,
  .guide-layout {
    grid-template-columns: 1fr;
  }

  .logistics-hero-map iframe {
    min-height: 360px;
  }
}

@media (max-width: 768px) {
  .guide-panels {
    padding: 0;
  }
  .logistics-header-inner {
    padding: 15px 0;
  }
  .promo-chip{
    width: 100%;
  }
  .section-titles h2 {
    font-size: 34px;
  }
  .logistics-attractions .section-titles,
  .logistics-accommodation .section-titles {
    font-size: 34px;
    width: 100%;
    text-align: center;
    margin: 0 auto 60px;
  }

  .logistics-header-inner,
  .section-shell {
    max-width: calc(100% - 24px);
    margin-bottom: 25px;
  }

  .logistics-main {
    padding: 38px 0 68px;
  }

  .logistics-hero-copy {
    padding: 35px 15px;
  }

  .logistics-hero-copy h1 {
    font-size: 34px;
  }

  .info-panel-grid {
    grid-template-columns: 1fr;
  }

  .guide-tab {
    font-size: 16px;
    padding: 16px 14px;
  }

  .guide-panel {
    padding: 24px 20px;
  }

  .guide-panel h3,
  .attraction-body h3,
  .hotel-head h3 {
    font-size: 20px;
  }

  .hotel-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .book-btn {
    width: 100%;
  }

  .hotel-card {
    width: min(360px, calc(100vw - 40px));
  }

  .attraction-card {
    width: min(290px, calc(100vw - 40px));
  }
}
