:root{
  --otel-primary:#b58652;
  --otel-primary-dark:#9a7043;
  --otel-secondary:#162235;
  --otel-dark:#162235;
  --otel-bg:#f3efe9;
  --otel-surface:#ffffff;
  --otel-text:#162235;
  --otel-text-soft:#617082;
  --otel-border:#e7ded3;
  --otel-border-soft:rgba(22,34,53,.08);
  --otel-radius:22px;
  --otel-shadow:0 10px 30px rgba(0,0,0,.06);
  --otel-shadow-strong:0 24px 60px rgba(17,28,45,.14);
  --otel-shadow-hover:0 25px 60px rgba(0,0,0,.12);
  --otel-shadow-soft-hover:0 18px 42px rgba(17,28,45,.10);
  --otel-container:1360px;
  --otel-transition:.28s ease;
  --otel-transition-slow:.45s ease;

  --otel-header-bg:#ffffff;
  --otel-header-text:#162235;
  --otel-header-border:#e7ded3;

  --otel-footer-bg:#0f1b2d;
  --otel-footer-text:#d8e1ec;
  --otel-footer-title:#ffffff;

  --otel-button-text:#ffffff;
  --otel-button-secondary-bg:#162235;
  --otel-button-secondary-text:#ffffff;
}

*{box-sizing:border-box;}

html{scroll-behavior:smooth;}

body{
  margin:0;
  background:
    radial-gradient(circle at top left, rgba(181,134,82,.05), transparent 40%),
    radial-gradient(circle at bottom right, rgba(22,34,53,.05), transparent 40%),
    var(--otel-bg);
  color:var(--otel-text);
  font-family:"Segoe UI", Arial, sans-serif;
  line-height:1.6;
  overflow-x:hidden;
}

img,
video{
  max-width:100%;
  height:auto;
  display:block;
}

a{
  color:inherit;
  text-decoration:none;
  transition:color .2s ease, opacity .2s ease;
}

a:hover{
  opacity:.96;
}

button,
input,
select,
textarea{
  font:inherit;
}

.container{
  width:min(var(--otel-container), calc(100% - 48px));
  margin:0 auto;
}

/* HEADER */
.otel-header{
  position:relative;
  top:auto;
  z-index:100;
  background:color-mix(in srgb, var(--otel-header-bg) 92%, transparent);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid var(--otel-header-border);
  box-shadow:0 4px 18px rgba(15,24,37,.04);
  transition:background var(--otel-transition), box-shadow var(--otel-transition), border-color var(--otel-transition);
  color:var(--otel-header-text);
}

.otel-header.scrolled{
  background:color-mix(in srgb, var(--otel-header-bg) 92%, transparent);
  box-shadow:0 4px 18px rgba(15,24,37,.04);
  border-bottom:1px solid var(--otel-header-border);
  color:var(--otel-header-text);
}

.admin-bar .otel-header{
  top:auto;
}

.otel-header-inner{
  min-height:84px;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:22px;
}

.otel-brand{
  display:inline-flex;
  align-items:center;
  min-width:0;
}

.otel-brand-logo{
  max-height:52px;
  width:auto;
}

.otel-brand-text{
  font-size:23px;
  font-weight:700;
  line-height:1;
  color:var(--otel-header-text);
}

.otel-nav{
  display:flex;
  justify-content:center;
  min-width:0;
}

.otel-nav .menu,
.otel-nav .otel-menu,
.otel-nav ul{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:26px;
  list-style:none;
  margin:0;
  padding:0;
}

.otel-nav li{
  margin:0;
  padding:0;
}

.otel-nav a{
  color:var(--otel-header-text);
  font-size:15px;
  font-weight:600;
  line-height:1.2;
}

.otel-nav a:hover{
  color:var(--otel-primary-dark);
}

.otel-top-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:12px;
}

.otel-button,
.btn{
  position:relative;
  overflow:hidden;
  min-height:48px;
  padding:0 22px;
  border-radius:999px;
  background:var(--otel-primary);
  color:var(--otel-button-text);
  border:1px solid var(--otel-primary);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:15px;
  font-weight:700;
  line-height:1;
  white-space:nowrap;
  box-shadow:0 10px 24px rgba(181,134,82,.18);
  transition:
    transform var(--otel-transition),
    box-shadow var(--otel-transition),
    background var(--otel-transition),
    border-color var(--otel-transition),
    color var(--otel-transition),
    opacity var(--otel-transition);
  will-change:transform;
}

.otel-button::after,
.btn::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(120deg, transparent 18%, rgba(255,255,255,.34), transparent 78%);
  opacity:0;
  transition:opacity .35s ease;
  pointer-events:none;
}

.otel-button:hover::after,
.btn:hover::after{
  opacity:1;
}

.otel-button:hover,
.btn:hover{
  transform:translateY(-3px) scale(1.02);
  background:var(--otel-primary-dark);
  border-color:var(--otel-primary-dark);
  color:#fff;
  box-shadow:0 18px 40px rgba(181,134,82,.28);
}

.otel-button.is-outline{
  background:#fff;
  color:var(--otel-text);
  border-color:var(--otel-border);
  box-shadow:none;
}

.otel-button.is-outline:hover{
  background:#fff;
  color:var(--otel-primary-dark);
  border-color:var(--otel-primary-dark);
  box-shadow:0 12px 24px rgba(17,28,45,.08);
}

.otel-button.is-secondary{
  background:var(--otel-secondary);
  color:#fff;
  border-color:var(--otel-secondary);
  box-shadow:0 10px 24px rgba(22,34,53,.16);
}

.otel-button.is-secondary:hover{
  background:#0f1826;
  border-color:#0f1826;
  color:#fff;
  box-shadow:0 18px 40px rgba(22,34,53,.24);
}

.otel-mobile-toggle{
  display:none;
  width:52px;
  height:52px;
  border-radius:16px;
  border:1px solid var(--otel-header-border);
  background:var(--otel-header-bg);
  padding:0;
  cursor:pointer;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:5px;
  transition:transform var(--otel-transition), box-shadow var(--otel-transition), border-color var(--otel-transition);
}

.otel-mobile-toggle:hover{
  transform:translateY(-1px);
  box-shadow:var(--otel-shadow);
  border-color:rgba(181,134,82,.26);
}

.otel-mobile-toggle span{
  display:block;
  width:20px;
  height:2px;
  background:var(--otel-header-text);
  border-radius:999px;
}

/* HERO V2 */
.otel-hero-v2{
  position:relative;
  overflow:hidden;
  background:#0f1b2d;
  color:#fff;
  margin-top:0;
  padding-top:0;
}

.admin-bar .otel-hero-v2{
  margin-top:0;
  padding-top:0;
}

.otel-hero-v2__track{
  position:relative;
  height:720px;
  min-height:720px;
}

.otel-hero-v2__slide{
  position:absolute;
  inset:0;
  opacity:0;
  visibility:hidden;
  transition:opacity .45s ease, visibility .45s ease;
}

.otel-hero-v2__slide.is-active{
  opacity:1;
  visibility:visible;
}

.otel-hero-v2__media{
  position:absolute;
  inset:0;
  overflow:hidden;
}

.otel-hero-v2__media img,
.otel-hero-v2__media video{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
}

.otel-hero-v2__placeholder{
  width:100%;
  height:100%;
  background:linear-gradient(135deg, #24344a 0%, #162235 100%);
}

.otel-hero-v2__overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(9,15,25,.14) 0%, rgba(9,15,25,.22) 34%, rgba(9,15,25,.60) 100%),
    linear-gradient(90deg, rgba(10,17,28,.42) 0%, rgba(13,21,34,.20) 52%, rgba(16,25,39,.10) 100%);
}

.otel-hero-v2__inner{
  position:relative;
  z-index:2;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
}

.otel-hero-v2__content{
  max-width:980px;
  width:100%;
  padding:0 40px 34px;
  display:flex;
  align-items:center;
  justify-content:center;
}

.otel-hero-v2__caption{
  max-width:780px;
  margin:0 auto;
  opacity:0;
  transform:translateY(26px);
}

.otel-hero-v2__slide.is-active .otel-hero-v2__caption{
  animation:otelHeroCaptionFade 900ms ease forwards;
}

.otel-hero-v2__caption p{
  margin:0;
  display:inline-block;
  padding:16px 24px;
  border-radius:24px;
  background:rgba(10,17,28,.16);
  border:1px solid rgba(255,255,255,.10);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
  box-shadow:0 14px 30px rgba(0,0,0,.12);
  font-family:'Libre Baskerville', Georgia, serif;
  font-style:italic;
  font-size:clamp(34px, 4vw, 64px);
  line-height:1.12;
  letter-spacing:-.6px;
  font-weight:600;
  color:#fff;
  text-shadow:0 14px 34px rgba(0,0,0,.24);
}

@keyframes otelHeroCaptionFade{
  0%{
    opacity:0;
    transform:translateY(26px);
  }
  100%{
    opacity:1;
    transform:translateY(0);
  }
}

.otel-hero-v2__arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:56px;
  height:56px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.28);
  background:rgba(15,24,37,.22);
  color:#fff;
  font-size:28px;
  line-height:1;
  cursor:pointer;
  z-index:5;
  display:flex;
  align-items:center;
  justify-content:center;
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
  transition:transform var(--otel-transition), background var(--otel-transition), box-shadow var(--otel-transition);
}

.otel-hero-v2__arrow:hover{
  background:rgba(15,24,37,.34);
  box-shadow:0 12px 28px rgba(0,0,0,.20);
}

.otel-hero-v2__arrow--prev{left:24px;}
.otel-hero-v2__arrow--next{right:24px;}

.otel-hero-v2__dots{
  position:absolute;
  left:50%;
  bottom:28px;
  transform:translateX(-50%);
  display:flex;
  gap:10px;
  z-index:5;
  padding:10px 14px;
  border-radius:999px;
  background:rgba(14,21,33,.18);
  border:1px solid rgba(255,255,255,.10);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}

.otel-hero-v2__dot{
  width:10px;
  height:10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.30);
  background:rgba(255,255,255,.22);
  cursor:pointer;
  padding:0;
  transition:.2s ease;
}

.otel-hero-v2__dot.is-active{
  width:28px;
  background:#fff;
  border-color:#fff;
}

/* BOOKING V2 */
.otel-booking-v2{
  position:relative;
  z-index:6;
  margin-top:-62px;
  padding:0;
}

.otel-booking-v2__shell{
  background:#fff;
  border:1px solid rgba(22,34,53,.06);
  border-radius:30px;
  box-shadow:var(--otel-shadow-strong);
  display:grid;
  grid-template-columns:320px minmax(0,1fr);
  overflow:hidden;
}

.otel-booking-v2__intro{
  background:linear-gradient(180deg, #fbfaf7 0%, #f4efe8 100%);
  padding:34px 30px;
  border-right:1px solid rgba(22,34,53,.06);
}

.otel-booking-v2__badge{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 14px;
  border-radius:999px;
  background:rgba(181,134,82,.12);
  color:var(--otel-primary-dark);
  font-size:13px;
  font-weight:800;
  margin-bottom:18px;
}

.otel-booking-v2__intro h2{
  margin:0 0 14px;
  font-size:30px;
  line-height:1.06;
  font-weight:800;
  letter-spacing:-.6px;
}

.otel-booking-v2__intro p{
  margin:0;
  color:var(--otel-text-soft);
  font-size:16px;
  line-height:1.75;
}

.otel-booking-v2__meta{
  margin-top:26px;
  padding-top:18px;
  border-top:1px solid rgba(22,34,53,.08);
  display:flex;
  flex-direction:column;
  gap:6px;
}

.otel-booking-v2__meta span{
  color:var(--otel-text-soft);
  font-size:14px;
}

.otel-booking-v2__meta strong{
  color:var(--otel-text);
  font-size:22px;
  line-height:1.2;
}

.otel-booking-v2__form-wrap{
  padding:34px 30px;
  display:flex;
  align-items:center;
}

.otel-booking-v2__form{
  width:100%;
  display:grid;
  grid-template-columns:minmax(220px,1.35fr) minmax(155px,1fr) minmax(155px,1fr) minmax(120px,.72fr) minmax(185px,.9fr);
  gap:16px;
  align-items:end;
}

.otel-booking-v2__field{
  display:flex;
  flex-direction:column;
  gap:8px;
  min-width:0;
}

.otel-booking-v2__field label{
  font-size:13px;
  font-weight:700;
  color:var(--otel-text-soft);
}

.otel-booking-v2__field input,
.otel-booking-v2__field select{
  width:100%;
  height:60px;
  border:1px solid var(--otel-border);
  border-radius:18px;
  background:#fff;
  padding:0 18px;
  font-size:16px;
  color:var(--otel-text);
  outline:none;
  transition:border-color var(--otel-transition), box-shadow var(--otel-transition), transform var(--otel-transition);
}

.otel-booking-v2__field input:focus,
.otel-booking-v2__field select:focus{
  border-color:rgba(181,134,82,.55);
  box-shadow:0 0 0 4px rgba(181,134,82,.08);
}

.otel-booking-v2__action{
  display:flex;
}

.otel-booking-v2__action button{
  width:100%;
  height:60px;
  border:0;
  border-radius:18px;
  padding:0 24px;
  cursor:pointer;
}

/* GENERAL */
section{
  padding:110px 0;
}

section h2{
  margin:0 0 12px;
  font-size:clamp(28px, 2.8vw, 42px);
  line-height:1.1;
  letter-spacing:-.7px;
  color:var(--otel-text);
  font-weight:700;
}

section > .container > p{
  margin:0 0 34px;
  color:var(--otel-text-soft);
  font-size:18px;
  max-width:760px;
}

.otel-section-head{
  margin-bottom:26px;
}

.otel-section-head h2{
  margin:0 0 12px;
}

.otel-section-head p{
  margin:0;
  max-width:760px;
  color:var(--otel-text-soft);
  font-size:18px;
  line-height:1.8;
}

.two-col{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:30px;
  align-items:start;
}

/* PREMIUM CARD BASE */
.experience-card,
.room-card,
.review-card,
.region-card,
.otel-room-card,
.otel-area-card,
.otel-area-related__card,
.otel-experience-related__card,
.otel-contact-card,
.otel-room-section,
.otel-area-section,
.otel-experience-section,
.otel-room-booking-card,
.otel-area-booking-card,
.otel-experience-booking-card,
.about-box,
.service-card,
.otel-room-extra__block,
.otel-info-block,
.otel-policy-box{
  transition:
    transform var(--otel-transition),
    box-shadow var(--otel-transition),
    border-color var(--otel-transition),
    background var(--otel-transition);
}

/* EXPERIENCES */
.experiences{padding-top:68px;}

.experience-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:22px;
}

.experience-card{
  position:relative;
  background:#fff;
  border-radius:24px;
  overflow:hidden;
  box-shadow:var(--otel-shadow);
  border:1px solid var(--otel-border-soft);
  display:block;
  will-change:transform;
}

.experience-card:hover{
  transform:translateY(-8px) scale(1.01);
  box-shadow:var(--otel-shadow-hover);
  border-color:rgba(181,134,82,.18);
}

.experience-card-media{
  position:relative;
  aspect-ratio:16/10;
  overflow:hidden;
  background:linear-gradient(135deg, #d7c1a7 0%, #9c7a55 100%);
}

.experience-card-media::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, transparent 42%, rgba(0,0,0,.16) 100%);
  opacity:0;
  transition:opacity var(--otel-transition);
}

.experience-card:hover .experience-card-media::after{
  opacity:1;
}

.experience-card-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .6s ease, filter .4s ease;
}

.experience-card:hover .experience-card-media img{
  transform:scale(1.08);
  filter:brightness(1.05);
}

.experience-card-body{
  padding:22px 22px 24px;
}

.experience-card h3{
  margin:0 0 10px;
  font-size:22px;
  line-height:1.16;
}

.experience-card p{
  margin:0 0 14px;
  color:var(--otel-text-soft);
  font-size:15px;
  line-height:1.75;
}

.experience-card span{
  display:inline-flex;
  font-size:15px;
  font-weight:700;
  color:var(--otel-primary-dark);
}

/* ROOMS */
.room-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:22px;
}

.room-card{
  position:relative;
  background:var(--otel-surface);
  border-radius:24px;
  overflow:hidden;
  box-shadow:var(--otel-shadow);
  border:1px solid var(--otel-border-soft);
  will-change:transform;
}

.room-card:hover{
  transform:translateY(-8px) scale(1.01);
  box-shadow:var(--otel-shadow-hover);
  border-color:rgba(181,134,82,.18);
}

.room-image{
  position:relative;
  aspect-ratio:16/11;
  overflow:hidden;
  background:linear-gradient(135deg, #d8c2a8 0%, #9f7c58 100%);
}

.room-image::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, transparent 45%, rgba(0,0,0,.18) 100%);
  opacity:0;
  transition:opacity var(--otel-transition);
}

.room-card:hover .room-image::after{
  opacity:1;
}

.room-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .6s ease, filter .4s ease;
}

.room-card:hover .room-image img{
  transform:scale(1.08);
  filter:brightness(1.05);
}

.room-card-body{
  padding:22px;
}

.room-card h3{
  margin:0 0 14px;
  font-size:24px;
  line-height:1.15;
  font-weight:700;
}

.room-card .btn{
  width:100%;
}

.room-card-empty{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:260px;
}

/* ROOM SINGLE */
.otel-room-single{
  padding-bottom:24px;
}

.otel-room-hero{
  position:relative;
  min-height:620px;
  display:flex;
  align-items:flex-end;
  overflow:hidden;
  background:#0f1b2d;
  color:#fff;
  padding:140px 0 56px;
}

.otel-room-hero__media{
  position:absolute;
  inset:0;
}

.otel-room-hero__image{
  width:100%;
  height:100%;
  object-fit:cover;
}

.otel-room-hero__placeholder{
  width:100%;
  height:100%;
  background:linear-gradient(135deg, #24344a 0%, #162235 100%);
}

.otel-room-hero__overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(9,15,25,.12) 0%, rgba(9,15,25,.24) 35%, rgba(9,15,25,.76) 100%),
    linear-gradient(90deg, rgba(10,17,28,.48) 0%, rgba(13,21,34,.18) 55%, rgba(16,25,39,.08) 100%);
}

.otel-room-hero .container{
  position:relative;
  z-index:2;
}

.otel-room-hero__content{
  max-width:860px;
}

.otel-room-hero__breadcrumbs{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  color:rgba(255,255,255,.82);
  font-size:14px;
  margin-bottom:18px;
}

.otel-room-hero__breadcrumbs a:hover{
  color:#fff;
}

.otel-room-hero__badge{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 16px;
  border-radius:999px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.18);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  font-size:13px;
  font-weight:800;
  margin-bottom:18px;
}

.otel-room-hero__title{
  margin:0 0 18px;
  font-size:clamp(40px, 5vw, 72px);
  line-height:1.02;
  letter-spacing:-1.4px;
  font-weight:800;
  color:#fff;
}

.otel-room-hero__text{
  max-width:760px;
  margin:0 0 24px;
  font-size:19px;
  line-height:1.8;
  color:rgba(255,255,255,.90);
}

.otel-room-hero__meta{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:14px;
  max-width:920px;
}

.otel-room-hero__meta-item{
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.14);
  border-radius:20px;
  padding:18px 18px 16px;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  transition:background var(--otel-transition), transform var(--otel-transition), border-color var(--otel-transition);
}

.otel-room-hero__meta-item:hover{
  background:rgba(255,255,255,.14);
  border-color:rgba(255,255,255,.22);
  transform:translateY(-2px);
}

.otel-room-hero__meta-item span{
  display:block;
  font-size:13px;
  color:rgba(255,255,255,.76);
  margin-bottom:6px;
}

.otel-room-hero__meta-item strong{
  display:block;
  font-size:18px;
  line-height:1.3;
  color:#fff;
}

.otel-room-content{
  padding-top:56px;
}

.otel-room-layout{
  display:grid;
  grid-template-columns:minmax(0, 1.2fr) 360px;
  gap:32px;
  align-items:start;
}

.otel-room-main{
  min-width:0;
}

.otel-room-sidebar{
  position:sticky;
  top:110px;
}

.otel-room-gallery{
  margin-bottom:32px;
}

.otel-room-gallery__main{
  position:relative;
  border-radius:28px;
  overflow:hidden;
  box-shadow:var(--otel-shadow-strong);
  background:#fff;
  margin-bottom:16px;
}

.otel-room-gallery__main::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, transparent 52%, rgba(0,0,0,.10) 100%);
  pointer-events:none;
}

.otel-room-gallery__main-image{
  width:100%;
  min-height:520px;
  object-fit:cover;
}

.otel-room-gallery__grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:16px;
}

.otel-room-gallery__item{
  display:block;
  border-radius:20px;
  overflow:hidden;
  box-shadow:var(--otel-shadow);
  transition:transform var(--otel-transition), box-shadow var(--otel-transition);
}

.otel-room-gallery__item:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 34px rgba(17,28,45,.12);
}

.otel-room-gallery__item img{
  width:100%;
  aspect-ratio:1/1;
  object-fit:cover;
  transition:transform var(--otel-transition-slow);
}

.otel-room-gallery__item:hover img{
  transform:scale(1.05);
}

.otel-room-section{
  position:relative;
  background:#fff;
  border:1px solid var(--otel-border-soft);
  border-radius:28px;
  padding:30px;
  box-shadow:var(--otel-shadow);
  margin-bottom:28px;
}

.otel-room-section::before{
  content:'';
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:1px;
  background:linear-gradient(90deg, rgba(181,134,82,.28), transparent);
}

.otel-room-section__head{
  margin-bottom:18px;
}

.otel-room-section__head span{
  display:inline-block;
  margin-bottom:10px;
  font-size:13px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--otel-primary-dark);
}

.otel-room-section__head h2{
  margin:0;
  font-size:clamp(28px, 2.8vw, 40px);
  line-height:1.08;
  letter-spacing:-.7px;
}

.otel-room-section__body{
  color:var(--otel-text-soft);
  font-size:17px;
  line-height:1.9;
}

.otel-room-section__body > *:first-child{
  margin-top:0;
}

.otel-room-section__body > *:last-child{
  margin-bottom:0;
}

.otel-room-features{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:14px;
}

.otel-room-features__item{
  display:flex;
  align-items:flex-start;
  gap:12px;
  background:#faf8f4;
  border:1px solid var(--otel-border);
  border-radius:18px;
  padding:16px 18px;
  font-size:15px;
  font-weight:600;
  color:var(--otel-text);
  line-height:1.6;
  transition:transform var(--otel-transition), box-shadow var(--otel-transition), border-color var(--otel-transition);
}

.otel-room-features__item:hover{
  transform:translateY(-3px);
  box-shadow:var(--otel-shadow);
  border-color:rgba(181,134,82,.18);
}

.otel-room-features__icon{
  width:24px;
  height:24px;
  min-width:24px;
  border-radius:50%;
  background:rgba(181,134,82,.14);
  color:var(--otel-primary-dark);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:14px;
  font-weight:800;
  margin-top:1px;
}

.otel-room-booking-card{
  background:#fff;
  border:1px solid rgba(22,34,53,.08);
  border-radius:28px;
  padding:26px;
  box-shadow:var(--otel-shadow-strong);
}

.otel-room-booking-card__top{
  padding-bottom:20px;
  border-bottom:1px solid rgba(22,34,53,.08);
  margin-bottom:18px;
}

.otel-room-booking-card__price strong{
  display:block;
  font-size:38px;
  line-height:1;
  letter-spacing:-1px;
  color:var(--otel-text);
  margin-bottom:8px;
}

.otel-room-booking-card__price span{
  color:var(--otel-text-soft);
  font-size:14px;
}

.otel-room-booking-card__subprice{
  margin-top:12px;
  font-size:14px;
  font-weight:700;
  color:var(--otel-primary-dark);
}

.otel-room-booking-card__info{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin-bottom:22px;
}

.otel-room-booking-card__row{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:flex-start;
  font-size:15px;
  color:var(--otel-text-soft);
}

.otel-room-booking-card__row strong{
  color:var(--otel-text);
  text-align:right;
}

.otel-room-booking-card__actions .otel-button{
  width:100%;
  min-height:56px;
  font-size:16px;
}

/* ABOUT */
.about-box{
  background:#fff;
  border:1px solid var(--otel-border);
  border-radius:24px;
  padding:26px;
  box-shadow:var(--otel-shadow);
}

.about-box:hover{
  transform:translateY(-6px);
  box-shadow:var(--otel-shadow-hover);
}

.about-box p{
  margin:0;
  font-size:19px;
  font-weight:600;
  line-height:1.62;
  color:var(--otel-text);
}

/* SERVICES */
.service-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:14px;
}

.service-card{
  background:#fff;
  border-radius:16px;
  padding:14px 16px;
  min-height:56px;
  box-shadow:var(--otel-shadow);
  border:1px solid var(--otel-border-soft);
  display:flex;
  align-items:center;
  font-size:14px;
  font-weight:700;
  color:var(--otel-text);
  line-height:1.35;
}

.service-card:hover{
  transform:translateY(-6px);
  box-shadow:var(--otel-shadow-hover);
}

/* GALLERY */
.gallery-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:16px;
}

.gallery-grid img{
  width:100%;
  aspect-ratio:1/1;
  object-fit:cover;
  border-radius:18px;
  box-shadow:var(--otel-shadow);
}

.gallery-grid p{
  grid-column:1 / -1;
  background:#fff;
  border-radius:18px;
  padding:22px;
  border:1px dashed var(--otel-border);
  color:var(--otel-text-soft);
  font-size:15px;
}

/* HOME + PAGE GALLERY SLIDER */
.otel-home-gallery-slider{
  position:relative;
}

.otel-home-gallery-slider__viewport{
  position:relative;
  overflow:hidden;
  border-radius:30px;
  background:#ede6dc;
  box-shadow:var(--otel-shadow-strong);
}

.otel-home-gallery-slider__track{
  position:relative;
  min-height:560px;
}

.otel-home-gallery-slider__slide{
  position:absolute;
  inset:0;
  opacity:0;
  visibility:hidden;
  transition:opacity .45s ease, visibility .45s ease, transform .45s ease;
  transform:scale(1.01);
}

.otel-home-gallery-slider__slide.is-active{
  opacity:1;
  visibility:visible;
  transform:scale(1);
  z-index:2;
}

.otel-home-gallery-slider__image-link{
  display:block;
  width:100%;
  height:100%;
}

.otel-home-gallery-slider__image-link img{
  width:100%;
  height:560px;
  object-fit:cover;
  object-position:center center;
  display:block;
}

.otel-home-gallery-slider__slide.is-active .otel-home-gallery-slider__image-link img{
  transform:none;
}

.otel-home-gallery-slider__arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:56px;
  height:56px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.22);
  background:rgba(12,18,28,.34);
  color:#fff;
  font-size:28px;
  line-height:1;
  cursor:pointer;
  z-index:5;
  display:flex;
  align-items:center;
  justify-content:center;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  transition:transform var(--otel-transition), background var(--otel-transition), box-shadow var(--otel-transition);
}

.otel-home-gallery-slider__arrow:hover{
  background:rgba(12,18,28,.54);
  box-shadow:0 14px 28px rgba(0,0,0,.22);
}

.otel-home-gallery-slider__arrow--prev{left:22px;}
.otel-home-gallery-slider__arrow--next{right:22px;}

.otel-home-gallery-slider__dots{
  position:absolute;
  left:50%;
  bottom:22px;
  transform:translateX(-50%);
  display:flex;
  gap:10px;
  z-index:5;
  padding:10px 14px;
  border-radius:999px;
  background:rgba(10,17,28,.18);
  border:1px solid rgba(255,255,255,.10);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}

.otel-home-gallery-slider__dot{
  width:10px;
  height:10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.34);
  background:rgba(255,255,255,.24);
  cursor:pointer;
  padding:0;
  transition:.22s ease;
}

.otel-home-gallery-slider__dot.is-active{
  width:28px;
  background:#fff;
  border-color:#fff;
}

/* REVIEWS */
.review-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:18px;
}

.review-card{
  background:#fff;
  border-radius:20px;
  padding:22px;
  box-shadow:var(--otel-shadow);
  border:1px solid var(--otel-border-soft);
}

.review-card:hover{
  transform:translateY(-6px);
  box-shadow:var(--otel-shadow-hover);
}

.review-card p{
  margin:0 0 14px;
  color:var(--otel-text-soft);
  font-size:16px;
  line-height:1.75;
}

.review-card strong{
  font-size:16px;
  color:var(--otel-text);
}

/* REGION */
.region-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:18px;
}

.region-card{
  background:#fff;
  border-radius:22px;
  padding:24px;
  box-shadow:var(--otel-shadow);
  border:1px solid var(--otel-border-soft);
}

.region-card:hover{
  transform:translateY(-6px);
  box-shadow:var(--otel-shadow-hover);
}

.region-card h3{
  margin:0 0 10px;
  font-size:22px;
  font-weight:700;
}

.region-card a{
  color:var(--otel-primary-dark);
  font-weight:700;
  font-size:15px;
}

/* EXPERIENCE SINGLE */
.otel-experience-single{
  padding-bottom:24px;
}

.otel-experience-hero{
  position:relative;
  min-height:620px;
  display:flex;
  align-items:flex-end;
  overflow:hidden;
  background:#0f1b2d;
  color:#fff;
  padding:140px 0 56px;
}

.otel-experience-hero__media{
  position:absolute;
  inset:0;
}

.otel-experience-hero__image{
  width:100%;
  height:100%;
  object-fit:cover;
}

.otel-experience-hero__placeholder{
  width:100%;
  height:100%;
  background:linear-gradient(135deg, #24344a 0%, #162235 100%);
}

.otel-experience-hero__overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(9,15,25,.12) 0%, rgba(9,15,25,.26) 35%, rgba(9,15,25,.78) 100%),
    linear-gradient(90deg, rgba(10,17,28,.52) 0%, rgba(13,21,34,.18) 55%, rgba(16,25,39,.08) 100%);
}

.otel-experience-hero .container{
  position:relative;
  z-index:2;
}

.otel-experience-hero__content{
  max-width:860px;
}

.otel-experience-hero__breadcrumbs{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  color:rgba(255,255,255,.82);
  font-size:14px;
  margin-bottom:18px;
}

.otel-experience-hero__breadcrumbs a:hover{
  color:#fff;
}

.otel-experience-hero__badge{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 16px;
  border-radius:999px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.18);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  font-size:13px;
  font-weight:800;
  margin-bottom:18px;
}

.otel-experience-hero__title{
  margin:0 0 18px;
  font-size:clamp(40px, 5vw, 72px);
  line-height:1.02;
  letter-spacing:-1.4px;
  font-weight:800;
  color:#fff;
  animation:fadeUp .7s ease both;
}

.otel-experience-hero__text{
  max-width:760px;
  margin:0;
  font-size:19px;
  line-height:1.8;
  color:rgba(255,255,255,.90);
}

.otel-experience-content{
  padding-top:56px;
}

.otel-experience-layout{
  display:grid;
  grid-template-columns:minmax(0, 1.2fr) 360px;
  gap:32px;
  align-items:start;
}

.otel-experience-main{
  min-width:0;
}

.otel-experience-sidebar{
  position:sticky;
  top:110px;
}

.otel-experience-section{
  background:#fff;
  border:1px solid var(--otel-border-soft);
  border-radius:28px;
  padding:30px;
  box-shadow:var(--otel-shadow);
  margin-bottom:28px;
}

.otel-experience-section__head{
  margin-bottom:18px;
}

.otel-experience-section__head span{
  display:inline-block;
  margin-bottom:10px;
  font-size:13px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--otel-primary-dark);
}

.otel-experience-section__head h2{
  margin:0;
  font-size:clamp(28px, 2.8vw, 40px);
  line-height:1.08;
  letter-spacing:-.7px;
}

.otel-experience-section__body{
  color:var(--otel-text-soft);
  font-size:17px;
  line-height:1.9;
}

.otel-experience-section__body > *:first-child{
  margin-top:0;
}

.otel-experience-section__body > *:last-child{
  margin-bottom:0;
}

.otel-experience-gallery{
  border-radius:24px;
  overflow:hidden;
  box-shadow:var(--otel-shadow-strong);
}

.otel-experience-gallery__image{
  width:100%;
  min-height:460px;
  object-fit:cover;
}

.otel-experience-booking-card{
  background:#fff;
  border:1px solid rgba(22,34,53,.08);
  border-radius:28px;
  padding:26px;
  box-shadow:var(--otel-shadow-strong);
}

.otel-experience-booking-card__top{
  margin-bottom:20px;
}

.otel-experience-booking-card__mini{
  display:inline-block;
  margin-bottom:10px;
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--otel-primary-dark);
}

.otel-experience-booking-card__top h3{
  margin:0 0 12px;
  font-size:28px;
  line-height:1.12;
  letter-spacing:-.7px;
  color:var(--otel-text);
}

.otel-experience-booking-card__top p{
  margin:0;
  font-size:15px;
  line-height:1.8;
  color:var(--otel-text-soft);
}

.otel-experience-booking-card__actions{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.otel-experience-related{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:18px;
}

.otel-experience-related__card{
  background:#fff;
  border:1px solid var(--otel-border-soft);
  border-radius:22px;
  overflow:hidden;
  box-shadow:var(--otel-shadow);
}

.otel-experience-related__card:hover{
  transform:translateY(-6px);
  box-shadow:var(--otel-shadow-hover);
  border-color:rgba(181,134,82,.18);
}

.otel-experience-related__media{
  display:block;
  overflow:hidden;
  position:relative;
  background:linear-gradient(135deg, #d7c1a7 0%, #9c7a55 100%);
}

.otel-experience-related__media::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, transparent 44%, rgba(0,0,0,.18) 100%);
  opacity:0;
  transition:opacity var(--otel-transition);
}

.otel-experience-related__card:hover .otel-experience-related__media::after{
  opacity:1;
}

.otel-experience-related__media img{
  width:100%;
  aspect-ratio:16/11;
  object-fit:cover;
  transition:transform var(--otel-transition-slow);
}

.otel-experience-related__card:hover img{
  transform:scale(1.05);
}

.otel-experience-related__placeholder{
  width:100%;
  aspect-ratio:16/11;
  background:linear-gradient(135deg, #d7c1a7 0%, #9c7a55 100%);
}

.otel-experience-related__body{
  padding:20px;
}

.otel-experience-related__body h3{
  margin:0 0 10px;
  font-size:21px;
  line-height:1.18;
}

.otel-experience-related__body p{
  margin:0 0 14px;
  font-size:15px;
  line-height:1.75;
  color:var(--otel-text-soft);
}

.otel-experience-related__link{
  display:inline-flex;
  font-size:15px;
  font-weight:700;
  color:var(--otel-primary-dark);
}

/* AREA SINGLE */
.otel-area-single{
  padding-bottom:24px;
}

.otel-area-hero{
  position:relative;
  min-height:620px;
  display:flex;
  align-items:flex-end;
  overflow:hidden;
  background:#0f1b2d;
  color:#fff;
  padding:140px 0 56px;
}

.otel-area-hero__media{
  position:absolute;
  inset:0;
}

.otel-area-hero__image{
  width:100%;
  height:100%;
  object-fit:cover;
}

.otel-area-hero__placeholder{
  width:100%;
  height:100%;
  background:linear-gradient(135deg, #24344a 0%, #162235 100%);
}

.otel-area-hero__overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(9,15,25,.12) 0%, rgba(9,15,25,.24) 35%, rgba(9,15,25,.76) 100%),
    linear-gradient(90deg, rgba(10,17,28,.48) 0%, rgba(13,21,34,.18) 55%, rgba(16,25,39,.08) 100%);
}

.otel-area-hero .container{
  position:relative;
  z-index:2;
}

.otel-area-hero__content{
  max-width:860px;
}

.otel-area-hero__breadcrumbs{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  color:rgba(255,255,255,.82);
  font-size:14px;
  margin-bottom:18px;
}

.otel-area-hero__breadcrumbs a:hover{
  color:#fff;
}

.otel-area-hero__badge{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 16px;
  border-radius:999px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.18);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  font-size:13px;
  font-weight:800;
  margin-bottom:18px;
}

.otel-area-hero__title{
  margin:0 0 18px;
  font-size:clamp(40px, 5vw, 72px);
  line-height:1.02;
  letter-spacing:-1.4px;
  font-weight:800;
  color:#fff;
  animation:fadeUp .7s ease both;
}

.otel-area-hero__text{
  max-width:760px;
  margin:0 0 24px;
  font-size:19px;
  line-height:1.8;
  color:rgba(255,255,255,.90);
}

.otel-area-hero__meta{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:14px;
  max-width:620px;
}

.otel-area-hero__meta-item{
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.14);
  border-radius:20px;
  padding:18px 18px 16px;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  transition:background var(--otel-transition), transform var(--otel-transition), border-color var(--otel-transition);
}

.otel-area-hero__meta-item:hover{
  background:rgba(255,255,255,.14);
  border-color:rgba(255,255,255,.22);
  transform:translateY(-2px);
}

.otel-area-hero__meta-item span{
  display:block;
  font-size:13px;
  color:rgba(255,255,255,.76);
  margin-bottom:6px;
}

.otel-area-hero__meta-item strong{
  display:block;
  font-size:18px;
  line-height:1.3;
  color:#fff;
}

.otel-area-content{
  padding-top:56px;
}

.otel-area-layout{
  display:grid;
  grid-template-columns:minmax(0, 1.2fr) 360px;
  gap:32px;
  align-items:start;
}

.otel-area-main{
  min-width:0;
}

.otel-area-sidebar{
  position:sticky;
  top:110px;
}

.otel-area-gallery{
  margin-bottom:32px;
}

.otel-area-gallery__main{
  border-radius:28px;
  overflow:hidden;
  box-shadow:var(--otel-shadow-strong);
  background:#fff;
}

.otel-area-gallery__image{
  width:100%;
  min-height:520px;
  object-fit:cover;
}

.otel-area-section{
  background:#fff;
  border:1px solid var(--otel-border-soft);
  border-radius:28px;
  padding:30px;
  box-shadow:var(--otel-shadow);
  margin-bottom:28px;
}

.otel-area-section__head{
  margin-bottom:18px;
}

.otel-area-section__head span{
  display:inline-block;
  margin-bottom:10px;
  font-size:13px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--otel-primary-dark);
}

.otel-area-section__head h2{
  margin:0;
  font-size:clamp(28px, 2.8vw, 40px);
  line-height:1.08;
  letter-spacing:-.7px;
}

.otel-area-section__body{
  color:var(--otel-text-soft);
  font-size:17px;
  line-height:1.9;
}

.otel-area-section__body > *:first-child{
  margin-top:0;
}

.otel-area-section__body > *:last-child{
  margin-bottom:0;
}

.otel-area-booking-card{
  background:#fff;
  border:1px solid rgba(22,34,53,.08);
  border-radius:28px;
  padding:26px;
  box-shadow:var(--otel-shadow-strong);
}

.otel-area-booking-card__top{
  margin-bottom:18px;
}

.otel-area-booking-card__mini{
  display:inline-block;
  margin-bottom:10px;
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--otel-primary-dark);
}

.otel-area-booking-card__top h3{
  margin:0 0 12px;
  font-size:28px;
  line-height:1.12;
  letter-spacing:-.7px;
  color:var(--otel-text);
}

.otel-area-booking-card__top p{
  margin:0;
  font-size:15px;
  line-height:1.8;
  color:var(--otel-text-soft);
}

.otel-area-booking-card__info{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin-bottom:22px;
}

.otel-area-booking-card__row{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:flex-start;
  font-size:15px;
  color:var(--otel-text-soft);
}

.otel-area-booking-card__row strong{
  color:var(--otel-text);
  text-align:right;
}

.otel-area-booking-card__actions{
  display:flex;
  flex-direction:column;
  gap:12px;
}

/* AREA ARCHIVE */
.otel-area-archive-hero{
  position:relative;
  padding:132px 0 56px;
  background:
    radial-gradient(circle at top left, rgba(181,134,82,.12), transparent 40%),
    linear-gradient(180deg, #fbf8f3 0%, #f3efe9 100%);
}

.otel-area-archive-hero__inner{
  max-width:860px;
}

.otel-area-archive-hero__badge{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 16px;
  border-radius:999px;
  background:rgba(181,134,82,.12);
  color:var(--otel-primary-dark);
  font-size:13px;
  font-weight:800;
  margin-bottom:18px;
}

.otel-area-archive-hero__title{
  margin:0 0 18px;
  font-size:clamp(36px, 4vw, 62px);
  line-height:1.04;
  letter-spacing:-1px;
  color:var(--otel-text);
  font-weight:800;
}

.otel-area-archive-hero__text{
  margin:0;
  max-width:760px;
  color:var(--otel-text-soft);
  font-size:18px;
  line-height:1.8;
}

.otel-area-archive-listing{
  padding-top:8px;
}

/* AREA GRID */
.otel-area-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:22px;
}

.otel-area-card{
  background:#fff;
  border-radius:24px;
  overflow:hidden;
  box-shadow:var(--otel-shadow);
  border:1px solid var(--otel-border-soft);
}

.otel-area-card:hover{
  transform:translateY(-6px);
  box-shadow:var(--otel-shadow-hover);
  border-color:rgba(181,134,82,.18);
}

.otel-area-card__media{
  display:block;
  overflow:hidden;
  position:relative;
  background:linear-gradient(135deg, #d7c1a7 0%, #9c7a55 100%);
}

.otel-area-card__media::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, transparent 42%, rgba(0,0,0,.16) 100%);
  opacity:0;
  transition:opacity var(--otel-transition);
}

.otel-area-card:hover .otel-area-card__media::after{
  opacity:1;
}

.otel-area-card__media img{
  width:100%;
  height:100%;
  aspect-ratio:16/11;
  object-fit:cover;
  transition:transform var(--otel-transition-slow);
}

.otel-area-card:hover .otel-area-card__media img{
  transform:scale(1.05);
}

.otel-area-card__placeholder{
  width:100%;
  aspect-ratio:16/11;
  background:linear-gradient(135deg, #d7c1a7 0%, #9c7a55 100%);
}

.otel-area-card__body{
  padding:22px 22px 24px;
}

.otel-area-card__top{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap:10px;
  margin-bottom:12px;
}

.otel-area-card__type,
.otel-area-card__distance{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:0 12px;
  border-radius:999px;
  font-size:12px;
  font-weight:800;
}

.otel-area-card__type{
  background:rgba(181,134,82,.12);
  color:var(--otel-primary-dark);
}

.otel-area-card__distance{
  background:#f6f2ec;
  color:var(--otel-text);
}

.otel-area-card__title{
  margin:0 0 10px;
  font-size:24px;
  line-height:1.15;
  font-weight:700;
}

.otel-area-card__title a:hover{
  color:var(--otel-primary-dark);
}

.otel-area-card p{
  margin:0 0 14px;
  color:var(--otel-text-soft);
  font-size:15px;
  line-height:1.75;
}

.otel-area-card__link{
  display:inline-flex;
  font-size:15px;
  font-weight:700;
  color:var(--otel-primary-dark);
}

/* AREA RELATED */
.otel-area-related{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:18px;
}

.otel-area-related__card{
  background:#fff;
  border:1px solid var(--otel-border-soft);
  border-radius:22px;
  overflow:hidden;
  box-shadow:var(--otel-shadow);
}

.otel-area-related__card:hover{
  transform:translateY(-6px);
  box-shadow:var(--otel-shadow-hover);
  border-color:rgba(181,134,82,.18);
}

.otel-area-related__media{
  display:block;
  overflow:hidden;
  position:relative;
  background:linear-gradient(135deg, #d7c1a7 0%, #9c7a55 100%);
}

.otel-area-related__media::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, transparent 44%, rgba(0,0,0,.18) 100%);
  opacity:0;
  transition:opacity var(--otel-transition);
}

.otel-area-related__card:hover .otel-area-related__media::after{
  opacity:1;
}

.otel-area-related__media img{
  width:100%;
  aspect-ratio:16/11;
  object-fit:cover;
  transition:transform var(--otel-transition-slow);
}

.otel-area-related__card:hover .otel-area-related__media img{
  transform:scale(1.05);
}

.otel-area-related__placeholder{
  width:100%;
  aspect-ratio:16/11;
  background:linear-gradient(135deg, #d7c1a7 0%, #9c7a55 100%);
}

.otel-area-related__body{
  padding:20px;
}

.otel-area-related__meta{
  display:flex;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
  font-size:12px;
  font-weight:800;
  color:var(--otel-primary-dark);
}

.otel-area-related__body h3{
  margin:0 0 10px;
  font-size:21px;
  line-height:1.18;
}

.otel-area-related__body p{
  margin:0 0 14px;
  font-size:15px;
  line-height:1.75;
  color:var(--otel-text-soft);
}

.otel-area-related__link{
  display:inline-flex;
  font-size:15px;
  font-weight:700;
  color:var(--otel-primary-dark);
}

/* ROOM ARCHIVE HERO */
.otel-room-archive-hero{
  position:relative;
  padding:132px 0 56px;
  background:
    radial-gradient(circle at top left, rgba(181,134,82,.12), transparent 40%),
    linear-gradient(180deg, #fbf8f3 0%, #f3efe9 100%);
}

.otel-room-archive-hero__inner{
  max-width:860px;
}

.otel-room-archive-hero__badge{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 16px;
  border-radius:999px;
  background:rgba(181,134,82,.12);
  color:var(--otel-primary-dark);
  font-size:13px;
  font-weight:800;
  margin-bottom:18px;
}

.otel-room-archive-hero__title{
  margin:0 0 18px;
  font-size:clamp(36px, 4vw, 62px);
  line-height:1.04;
  letter-spacing:-1px;
  color:var(--otel-text);
  font-weight:800;
}

.otel-room-archive-hero__text{
  margin:0;
  max-width:760px;
  color:var(--otel-text-soft);
  font-size:18px;
  line-height:1.8;
}

.otel-room-archive-listing{
  padding-top:8px;
}

/* ROOM TAX HERO */
.otel-room-tax-hero{
  position:relative;
  padding:132px 0 44px;
  background:
    radial-gradient(circle at top left, rgba(181,134,82,.10), transparent 42%),
    linear-gradient(180deg, #fbf8f3 0%, #f3efe9 100%);
}

.otel-room-tax-hero__wrap{
  display:grid;
  grid-template-columns:minmax(0, 1.05fr) 460px;
  gap:28px;
  align-items:center;
}

.otel-room-tax-hero__content{
  min-width:0;
}

.otel-room-tax-hero__badge{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 16px;
  border-radius:999px;
  background:rgba(181,134,82,.12);
  color:var(--otel-primary-dark);
  font-size:13px;
  font-weight:800;
  margin-bottom:18px;
}

.otel-room-tax-hero__title{
  margin:0 0 16px;
  font-size:clamp(34px, 4vw, 58px);
  line-height:1.05;
  letter-spacing:-1px;
  color:var(--otel-text);
  font-weight:800;
}

.otel-room-tax-hero__text{
  margin:0;
  color:var(--otel-text-soft);
  font-size:18px;
  line-height:1.8;
  max-width:720px;
}

.otel-room-tax-hero__media{
  min-width:0;
}

.otel-room-tax-hero__image,
.otel-room-tax-hero__placeholder{
  width:100%;
  min-height:320px;
  border-radius:28px;
  object-fit:cover;
  box-shadow:var(--otel-shadow-strong);
  background:linear-gradient(135deg, #d8c2a8 0%, #9f7c58 100%);
}

/* ROOMS GRID */
.otel-rooms-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:22px;
}

.otel-room-card{
  position:relative;
  background:#fff;
  border-radius:26px;
  overflow:hidden;
  border:1px solid var(--otel-border-soft);
  box-shadow:var(--otel-shadow);
  will-change:transform;
}

.otel-room-card:hover{
  transform:translateY(-8px) scale(1.01);
  box-shadow:var(--otel-shadow-hover);
  border-color:rgba(181,134,82,.18);
}

.otel-room-card::after{
  content:'';
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:linear-gradient(180deg, transparent 60%, rgba(0,0,0,.05));
  opacity:0;
  transition:opacity var(--otel-transition);
  pointer-events:none;
}

.otel-room-card:hover::after{
  opacity:1;
}

.otel-room-card__media{
  position:relative;
  display:block;
  overflow:hidden;
  background:linear-gradient(135deg, #d8c2a8 0%, #9f7c58 100%);
}

.otel-room-card__media::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, transparent 40%, rgba(0,0,0,.18));
  opacity:0;
  transition:opacity var(--otel-transition);
}

.otel-room-card:hover .otel-room-card__media::after{
  opacity:1;
}

.otel-room-card__media img{
  width:100%;
  aspect-ratio:16/11;
  object-fit:cover;
  transition:transform .6s ease, filter .4s ease;
}

.otel-room-card:hover .otel-room-card__media img{
  transform:scale(1.08);
  filter:brightness(1.05);
}

.otel-room-card__placeholder{
  width:100%;
  aspect-ratio:16/11;
  background:linear-gradient(135deg, #d8c2a8 0%, #9f7c58 100%);
}

.otel-room-card__body{
  padding:22px 22px 24px;
}

.otel-room-card__top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}

.otel-room-card__badge{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:0 12px;
  border-radius:999px;
  background:rgba(181,134,82,.12);
  color:var(--otel-primary-dark);
  font-size:12px;
  font-weight:800;
}

.otel-room-card__price{
  text-align:right;
  font-size:18px;
  line-height:1.1;
  font-weight:800;
  color:var(--otel-text);
  letter-spacing:-.3px;
}

.otel-room-card__price small{
  display:block;
  margin-top:4px;
  font-size:12px;
  font-weight:700;
  color:var(--otel-text-soft);
  letter-spacing:0;
}

.otel-room-card__title{
  margin:0 0 10px;
  font-size:24px;
  line-height:1.15;
  font-weight:700;
  transition:transform var(--otel-transition), color var(--otel-transition);
}

.otel-room-card:hover .otel-room-card__title{
  transform:translateY(-3px);
}

.otel-room-card__title a:hover{
  color:var(--otel-primary-dark);
}

.otel-room-card__excerpt{
  margin:0 0 16px;
  color:var(--otel-text-soft);
  font-size:15px;
  line-height:1.75;
}

.otel-room-card__meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:18px;
}

.otel-room-card__meta span{
  display:inline-flex;
  align-items:center;
  min-height:36px;
  padding:0 14px;
  border-radius:999px;
  background:#f7f3ed;
  border:1px solid var(--otel-border);
  color:var(--otel-text);
  font-size:13px;
  font-weight:700;
}

.otel-room-card__actions .otel-button{
  width:100%;
  min-height:54px;
}

/* ROOM DETAIL PREMIUM POLISH */
.otel-room-hero--premium{
  min-height:700px;
  padding:150px 0 64px;
}

.otel-room-hero--premium .otel-room-hero__overlay{
  background:
    linear-gradient(180deg, rgba(9,15,25,.08) 0%, rgba(9,15,25,.22) 34%, rgba(9,15,25,.78) 100%),
    linear-gradient(90deg, rgba(10,17,28,.52) 0%, rgba(13,21,34,.16) 52%, rgba(16,25,39,.08) 100%);
}

.otel-room-hero--premium .otel-room-hero__title{
  text-shadow:0 20px 50px rgba(0,0,0,.22);
  animation:fadeUp .7s ease both;
}

.otel-room-hero--premium .otel-room-hero__text{
  max-width:820px;
  font-size:20px;
  line-height:1.85;
}

.otel-room-hero--premium .otel-room-hero__meta-item{
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}

.otel-room-highlight-bar{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:16px;
  margin:0 0 28px;
}

.otel-room-highlight-bar__item{
  background:#fff;
  border:1px solid var(--otel-border-soft);
  border-radius:22px;
  padding:20px 20px 18px;
  box-shadow:var(--otel-shadow);
  transition:transform var(--otel-transition), box-shadow var(--otel-transition), border-color var(--otel-transition);
}

.otel-room-highlight-bar__item:hover{
  transform:translateY(-4px);
  box-shadow:var(--otel-shadow-soft-hover);
  border-color:rgba(181,134,82,.18);
}

.otel-room-highlight-bar__item span{
  display:block;
  font-size:13px;
  font-weight:700;
  color:var(--otel-text-soft);
  margin-bottom:8px;
}

.otel-room-highlight-bar__item strong{
  display:block;
  font-size:24px;
  line-height:1.15;
  letter-spacing:-.5px;
  color:var(--otel-text);
}

.otel-room-booking-card--premium{
  border-radius:30px;
  box-shadow:
    0 28px 70px rgba(17,28,45,.12),
    0 6px 18px rgba(17,28,45,.05);
}

.otel-room-booking-card__mini{
  display:inline-block;
  margin-bottom:12px;
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--otel-primary-dark);
}

.otel-room-booking-card--premium .otel-room-booking-card__price strong{
  font-size:42px;
}

.otel-room-booking-card__note{
  margin:0 0 22px;
  padding:14px 16px;
  border-radius:16px;
  background:#faf7f2;
  border:1px solid var(--otel-border);
  font-size:14px;
  line-height:1.7;
  color:var(--otel-text-soft);
}

.otel-room-booking-card__actions .otel-button{
  box-shadow:0 12px 28px rgba(181,134,82,.20);
}

/* ROOM GALLERY SLIDER */
.otel-room-gallery-slider{
  margin:0 0 32px;
}

.otel-room-gallery-slider__viewport{
  position:relative;
  overflow:hidden;
  border-radius:28px;
  background:#f6f2ec;
  box-shadow:var(--otel-shadow-strong);
}

.otel-room-gallery-slider__track{
  position:relative;
  height:clamp(360px, 52vw, 620px);
  min-height:360px;
}

.otel-room-gallery-slider__slide{
  position:absolute;
  inset:0;
  opacity:0;
  visibility:hidden;
  transition:opacity .35s ease, visibility .35s ease;
  background:#f6f2ec;
}

.otel-room-gallery-slider__slide.is-active{
  opacity:1;
  visibility:visible;
  z-index:2;
}

.otel-room-gallery-slider__image-link{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:100%;
}

.otel-room-gallery-slider__image{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center center;
  background:#f6f2ec;
}

.otel-room-gallery-slider__arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:52px;
  height:52px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.26);
  background:rgba(15,24,37,.28);
  color:#fff;
  font-size:28px;
  line-height:1;
  cursor:pointer;
  z-index:4;
  display:flex;
  align-items:center;
  justify-content:center;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  transition:background .25s ease, transform .25s ease, box-shadow .25s ease;
}

.otel-room-gallery-slider__arrow:hover{
  background:rgba(15,24,37,.42);
  box-shadow:0 12px 24px rgba(0,0,0,.20);
}

.otel-room-gallery-slider__arrow--prev{left:18px;}
.otel-room-gallery-slider__arrow--next{right:18px;}

.otel-room-gallery-slider__thumbs{
  display:grid;
  grid-template-columns:repeat(5, minmax(0,1fr));
  gap:12px;
  margin-top:14px;
}

.otel-room-gallery-slider__thumb{
  padding:0;
  border:1px solid var(--otel-border);
  background:#fff;
  border-radius:18px;
  overflow:hidden;
  cursor:pointer;
  box-shadow:var(--otel-shadow);
  transition:transform .25s ease, border-color .25s ease, box-shadow .25s ease, opacity .25s ease;
  opacity:.78;
}

.otel-room-gallery-slider__thumb:hover{
  transform:translateY(-3px);
  opacity:1;
}

.otel-room-gallery-slider__thumb.is-active{
  border-color:rgba(181,134,82,.55);
  box-shadow:0 14px 26px rgba(17,28,45,.10);
  opacity:1;
}

.otel-room-gallery-slider__thumb img{
  width:100%;
  aspect-ratio:1/1;
  object-fit:cover;
}

.otel-room-gallery-slider__dots{
  display:none;
  justify-content:center;
  gap:8px;
  margin-top:14px;
}

.otel-room-gallery-slider__dot{
  width:10px;
  height:10px;
  border-radius:999px;
  border:1px solid rgba(22,34,53,.18);
  background:rgba(22,34,53,.18);
  cursor:pointer;
  padding:0;
  transition:.2s ease;
}

.otel-room-gallery-slider__dot.is-active{
  width:26px;
  background:var(--otel-primary);
  border-color:var(--otel-primary);
}

.otel-room-extra{
  padding:18px 0 64px;
}

.otel-room-extra__block{
  background:#fff;
  border:1px solid var(--otel-border-soft);
  border-radius:24px;
  padding:26px 26px 24px;
  box-shadow:var(--otel-shadow);
  margin-bottom:18px;
}

.otel-room-extra__block:hover{
  transform:translateY(-6px);
  box-shadow:var(--otel-shadow-hover);
}

.otel-room-extra__title{
  margin:0 0 12px;
  font-size:22px;
  line-height:1.2;
  color:var(--otel-text);
}

.otel-room-extra__content{
  color:var(--otel-text-soft);
  font-size:15px;
  line-height:1.85;
}

/* CONTACT PAGE */
.otel-contact-hero{
  padding:120px 0 60px;
  background:
    radial-gradient(circle at top left, rgba(181,134,82,.12), transparent 40%),
    linear-gradient(180deg, #fbf8f3 0%, #f3efe9 100%);
}

.otel-contact-hero__inner{
  max-width:780px;
}

.otel-contact-hero__badge{
  display:inline-flex;
  padding:0 16px;
  height:38px;
  align-items:center;
  border-radius:999px;
  background:rgba(181,134,82,.12);
  color:var(--otel-primary-dark);
  font-size:13px;
  font-weight:800;
  margin-bottom:18px;
}

.otel-contact-hero__title{
  font-size:clamp(36px,4vw,56px);
  margin:0 0 16px;
  font-weight:800;
}

.otel-contact-hero__text{
  color:var(--otel-text-soft);
  font-size:18px;
  line-height:1.8;
}

.otel-contact-section{
  padding-top:20px;
}

.otel-contact-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:28px;
}

.otel-contact-card{
  background:#fff;
  border-radius:26px;
  padding:28px;
  border:1px solid var(--otel-border-soft);
  box-shadow:var(--otel-shadow);
}

.otel-contact-card:hover{
  transform:translateY(-6px);
  box-shadow:var(--otel-shadow-hover);
}

.otel-contact-card h3{
  margin:0 0 16px;
  font-size:22px;
}

.otel-contact-card p{
  margin:0 0 14px;
  font-size:15px;
  line-height:1.7;
}

.otel-contact-map iframe{
  width:100%;
  height:360px;
  border:0;
  border-radius:18px;
}

/* ABOUT PAGE */
.otel-about-hero{
  padding:120px 0 60px;
  background:
    radial-gradient(circle at top right, rgba(181,134,82,.12), transparent 40%),
    linear-gradient(180deg, #fbf8f3 0%, #f3efe9 100%);
}

.otel-about-hero__inner{
  max-width:780px;
}

.otel-about-hero__badge{
  display:inline-flex;
  padding:0 16px;
  height:38px;
  align-items:center;
  border-radius:999px;
  background:rgba(181,134,82,.12);
  color:var(--otel-primary-dark);
  font-size:13px;
  font-weight:800;
  margin-bottom:18px;
}

.otel-about-hero__title{
  font-size:clamp(36px,4vw,56px);
  margin:0 0 16px;
  font-weight:800;
}

.otel-about-hero__text{
  color:var(--otel-text-soft);
  font-size:18px;
  line-height:1.8;
}

.otel-about-section{
  padding-top:20px;
}

.otel-about-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:32px;
  align-items:center;
}

.otel-about-media img{
  width:100%;
  border-radius:24px;
  box-shadow:var(--otel-shadow-strong);
}

.otel-about-content h2{
  margin:0 0 16px;
  font-size:28px;
}

.otel-about-content p{
  margin:0 0 14px;
  color:var(--otel-text-soft);
  line-height:1.8;
}

.otel-about-features{
  margin-top:18px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  font-size:15px;
}

/* GALLERY PAGE HERO */
.otel-gallery-hero{
  padding:120px 0 50px;
  background:
    radial-gradient(circle at top right, rgba(181,134,82,.12), transparent 40%),
    linear-gradient(180deg, #fbf8f3 0%, #f3efe9 100%);
}

.otel-gallery-hero--premium{
  padding:120px 0 74px;
  background:
    linear-gradient(180deg, rgba(20,28,38,.22) 0%, rgba(20,28,38,.12) 100%),
    linear-gradient(180deg, #f4eee6 0%, #ece4da 100%);
  text-align:center;
}

.otel-gallery-hero__inner{
  max-width:900px;
  margin:0 auto;
  text-align:center;
}

.otel-gallery-hero--premium .otel-gallery-hero__badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:0 16px;
  border-radius:999px;
  background:rgba(255,255,255,.72);
  color:var(--otel-primary-dark);
  font-size:13px;
  font-weight:800;
  letter-spacing:.08em;
  margin-bottom:18px;
  box-shadow:0 10px 24px rgba(17,28,45,.06);
}

.otel-gallery-hero--premium .otel-gallery-hero__title{
  font-size:clamp(38px,4vw,60px);
  margin:0 0 14px;
  font-weight:800;
  color:var(--otel-text);
  line-height:1.06;
  letter-spacing:-1px;
}

.otel-gallery-hero--premium .otel-gallery-hero__text{
  margin:0 auto;
  max-width:760px;
  color:var(--otel-text-soft);
  font-size:18px;
  line-height:1.8;
}

.otel-gallery-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
}

.otel-gallery-item{
  display:block;
  overflow:hidden;
  border-radius:22px;
  box-shadow:var(--otel-shadow);
  position:relative;
  transition:transform var(--otel-transition), box-shadow var(--otel-transition);
}

.otel-gallery-item:hover{
  transform:translateY(-5px);
  box-shadow:var(--otel-shadow-hover);
}

.otel-gallery-item img{
  width:100%;
  aspect-ratio:1/1;
  object-fit:cover;
  transition:transform .4s ease;
}

.otel-gallery-item::after{
  content:'';
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.15);
  opacity:0;
  transition:.3s;
}

.otel-gallery-item:hover img{
  transform:scale(1.08);
}

.otel-gallery-item:hover::after{
  opacity:1;
}

/* GALLERY PAGE SHOWCASE */
.otel-gallery-section--premium{
  padding:42px 0 80px;
}

.otel-gallery-showcase{
  position:relative;
}

.otel-gallery-showcase__top,
.otel-gallery-showcase__head,
.otel-gallery-showcase__meta,
.otel-gallery-showcase__count,
.otel-gallery-showcase__title,
.otel-gallery-showcase__text{
  display:none !important;
}

/* Thumbnail rail */
.otel-gallery-marquee{
  margin-top:18px;
  display:grid;
  grid-template-columns:52px minmax(0,1fr) 52px;
  gap:12px;
  align-items:center;
}

.otel-gallery-marquee__nav{
  width:52px;
  height:52px;
  border-radius:50%;
  border:1px solid var(--otel-border);
  background:#fff;
  color:var(--otel-text);
  font-size:24px;
  line-height:1;
  cursor:pointer;
  box-shadow:var(--otel-shadow);
  display:flex;
  align-items:center;
  justify-content:center;
  transition:transform var(--otel-transition), box-shadow var(--otel-transition), border-color var(--otel-transition);
}

.otel-gallery-marquee__nav:hover{
  transform:translateY(-2px);
  box-shadow:var(--otel-shadow-hover);
  border-color:rgba(181,134,82,.26);
}

.otel-gallery-marquee__viewport{
  overflow:hidden;
  width:100%;
}

.otel-gallery-marquee__track{
  display:flex;
  gap:14px;
  width:max-content;
  cursor:grab;
  user-select:none;
}

.otel-gallery-marquee__track.is-dragging{
  cursor:grabbing;
}

.otel-gallery-marquee__item{
  flex:0 0 auto;
  width:122px;
  height:86px;
  border:0;
  padding:0;
  border-radius:16px;
  overflow:hidden;
  cursor:pointer;
  background:#fff;
  box-shadow:var(--otel-shadow);
  opacity:.72;
  transition:transform .25s ease, opacity .25s ease, box-shadow .25s ease;
}

.otel-gallery-marquee__item img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.otel-gallery-marquee__item:hover{
  transform:translateY(-4px);
  opacity:1;
}

.otel-gallery-marquee__item.is-active{
  opacity:1;
  box-shadow:0 0 0 2px rgba(181,134,82,.88), 0 16px 28px rgba(17,28,45,.12);
}

/* LIGHTBOX */
.otel-lightbox{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.9);
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:9999;
  opacity:0;
  pointer-events:none;
  transition:.3s;
}

.otel-lightbox.is-active{
  opacity:1;
  pointer-events:auto;
}

.otel-lightbox-img{
  max-width:92vw;
  max-height:88vh;
  width:auto;
  height:auto;
  object-fit:contain;
  border-radius:12px;
  background:#111;
}

.otel-lightbox-close{
  position:absolute;
  top:20px;
  right:30px;
  font-size:36px;
  color:#fff;
  cursor:pointer;
}

.otel-lightbox-prev,
.otel-lightbox-next{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  background:none;
  border:none;
  font-size:40px;
  color:#fff;
  cursor:pointer;
}

.otel-lightbox-prev{ left:30px; }
.otel-lightbox-next{ right:30px; }

/* SCROLL REVEAL FIX */
.otel-reveal{
  opacity:1;
  transform:none;
  transition:opacity .7s ease, transform .7s ease;
  will-change:auto;
}

.js-enabled .otel-reveal{
  opacity:0;
  transform:translateY(30px);
  will-change:opacity, transform;
}

.js-enabled .otel-reveal.is-visible{
  opacity:1;
  transform:translateY(0);
}

@keyframes fadeUp{
  from{
    opacity:0;
    transform:translateY(18px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

/* GENERIC PAGE HERO */
.otel-page-hero{
  padding:120px 0 50px;
  background:
    radial-gradient(circle at top left, rgba(181,134,82,.12), transparent 40%),
    linear-gradient(180deg, #fbf8f3 0%, #f3efe9 100%);
}

.otel-page-hero__badge{
  display:inline-flex;
  padding:0 16px;
  height:38px;
  align-items:center;
  border-radius:999px;
  background:rgba(181,134,82,.12);
  color:var(--otel-primary-dark);
  font-size:13px;
  font-weight:800;
  margin-bottom:18px;
}

.otel-page-hero__title{
  font-size:clamp(36px,4vw,56px);
  margin:0 0 14px;
  font-weight:800;
}

.otel-page-hero__text{
  color:var(--otel-text-soft);
  font-size:18px;
}

.otel-page-section{
  padding-top:20px;
}

.otel-page-content{
  max-width:900px;
}

.otel-info-block{
  background:#fff;
  padding:28px;
  border-radius:22px;
  box-shadow:var(--otel-shadow);
  line-height:1.9;
  font-size:15px;
}

.otel-info-block:hover{
  transform:translateY(-6px);
  box-shadow:var(--otel-shadow-hover);
}

/* POLICY PAGE */
.otel-policy-box{
  max-width:800px;
  margin:0 auto;
  background:#fff;
  padding:40px;
  border-radius:20px;
  box-shadow:0 10px 40px rgba(0,0,0,.05);
}

.otel-policy-box:hover{
  transform:translateY(-6px);
  box-shadow:var(--otel-shadow-hover);
}

.otel-policy-content{
  font-size:15px;
  line-height:1.8;
  color:#444;
}

.otel-policy-content p{
  margin-bottom:14px;
}

/* PAGINATION */
.navigation.pagination{
  margin-top:28px;
}

.navigation.pagination .nav-links{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.navigation.pagination .page-numbers{
  min-width:44px;
  height:44px;
  border-radius:12px;
  border:1px solid var(--otel-border);
  background:#fff;
  color:var(--otel-text);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:14px;
  font-weight:700;
  padding:0 14px;
  transition:transform var(--otel-transition), box-shadow var(--otel-transition), border-color var(--otel-transition), background var(--otel-transition), color var(--otel-transition);
}

.navigation.pagination .page-numbers:hover{
  transform:translateY(-2px);
  box-shadow:var(--otel-shadow);
  border-color:rgba(181,134,82,.24);
}

.navigation.pagination .page-numbers.current{
  background:var(--otel-primary);
  border-color:var(--otel-primary);
  color:#fff;
}

.otel-empty-state{
  background:#fff;
  border:1px dashed var(--otel-border);
  border-radius:20px;
  padding:24px;
  color:var(--otel-text-soft);
}

/* REZERVASYON SAYFASI */
.otel-reservation-page{
  padding-bottom:30px;
}

.otel-reservation-hero{
  position:relative;
  padding:124px 0 44px;
  background:
    radial-gradient(circle at top left, rgba(181,134,82,.12), transparent 38%),
    linear-gradient(180deg, #fbf8f3 0%, #f3efe9 100%);
}

.otel-reservation-hero__wrap{
  display:grid;
  grid-template-columns:minmax(0, 1.05fr) 460px;
  gap:30px;
  align-items:center;
}

.otel-reservation-hero__content{
  min-width:0;
}

.otel-reservation-hero__kicker{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 16px;
  border-radius:999px;
  background:rgba(181,134,82,.12);
  color:var(--otel-primary-dark);
  font-size:13px;
  font-weight:800;
  margin-bottom:18px;
}

.otel-reservation-hero__title{
  margin:0 0 16px;
  font-size:clamp(36px, 4vw, 58px);
  line-height:1.04;
  letter-spacing:-1px;
  font-weight:800;
  color:var(--otel-text);
}

.otel-reservation-hero__text p{
  margin:0;
  max-width:760px;
  color:var(--otel-text-soft);
  font-size:18px;
  line-height:1.8;
}

.otel-reservation-hero__media{
  min-width:0;
}

.otel-reservation-hero__media img,
.otel-reservation-hero__placeholder{
  width:100%;
  min-height:340px;
  border-radius:30px;
  object-fit:cover;
  box-shadow:var(--otel-shadow-strong);
  background:linear-gradient(135deg, #d8c2a8 0%, #9f7c58 100%);
}

.otel-reservation-content{
  padding:14px 0 20px;
}

.otel-reservation-layout{
  display:grid;
  grid-template-columns:minmax(0, 1.18fr) 360px;
  gap:30px;
  align-items:start;
}

.otel-reservation-form-card,
.otel-reservation-info-card,
.otel-reservation-note-card{
  background:#fff;
  border:1px solid var(--otel-border-soft);
  border-radius:28px;
  box-shadow:var(--otel-shadow);
}

.otel-reservation-form-card{
  padding:28px;
}

.otel-reservation-form-card__title{
  margin:0 0 10px;
  font-size:30px;
  line-height:1.1;
  letter-spacing:-.6px;
  color:var(--otel-text);
}

.otel-reservation-form-card__text{
  margin:0 0 22px;
  color:var(--otel-text-soft);
  font-size:16px;
  line-height:1.8;
}

.otel-reservation-form__grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:18px;
}

.otel-reservation-form__field{
  display:flex;
  flex-direction:column;
  gap:8px;
  min-width:0;
}

.otel-reservation-form__field--full{
  grid-column:1 / -1;
}

.otel-reservation-form__field label{
  font-size:13px;
  font-weight:700;
  color:var(--otel-text-soft);
}

.otel-reservation-form__field input,
.otel-reservation-form__field select,
.otel-reservation-form__field textarea{
  width:100%;
  border:1px solid var(--otel-border);
  background:#fff;
  color:var(--otel-text);
  border-radius:18px;
  outline:none;
  transition:border-color var(--otel-transition), box-shadow var(--otel-transition), transform var(--otel-transition);
}

.otel-reservation-form__field input,
.otel-reservation-form__field select{
  height:58px;
  padding:0 18px;
}

.otel-reservation-form__field textarea{
  min-height:132px;
  padding:16px 18px;
  resize:vertical;
}

.otel-reservation-form__field input:focus,
.otel-reservation-form__field select:focus,
.otel-reservation-form__field textarea:focus{
  border-color:rgba(181,134,82,.55);
  box-shadow:0 0 0 4px rgba(181,134,82,.08);
}

.otel-reservation-form__actions{
  margin-top:22px;
  display:flex;
}

.otel-reservation-form__actions .otel-button{
  min-height:56px;
  padding:0 28px;
}

.otel-reservation-sidebar{
  display:flex;
  flex-direction:column;
  gap:18px;
  position:sticky;
  top:110px;
}

.otel-reservation-info-card,
.otel-reservation-note-card{
  padding:24px;
}

.otel-reservation-info-card h3,
.otel-reservation-note-card h3{
  margin:0 0 12px;
  font-size:24px;
  line-height:1.15;
  color:var(--otel-text);
}

.otel-reservation-info-card p,
.otel-reservation-note-card p{
  margin:0 0 16px;
  color:var(--otel-text-soft);
  font-size:15px;
  line-height:1.8;
}

.otel-reservation-info-card__list{
  display:flex;
  flex-direction:column;
  gap:14px;
}

.otel-reservation-info-card__item{
  display:flex;
  flex-direction:column;
  gap:5px;
  padding:14px 16px;
  background:#faf8f4;
  border:1px solid var(--otel-border);
  border-radius:18px;
}

.otel-reservation-info-card__item span{
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:var(--otel-primary-dark);
}

.otel-reservation-info-card__item strong,
.otel-reservation-info-card__item a{
  font-size:15px;
  line-height:1.7;
  color:var(--otel-text);
  font-weight:700;
  word-break:break-word;
}

.otel-reservation-info-card__item a:hover{
  color:var(--otel-primary-dark);
}

.otel-reservation-info-card__action{
  margin-top:18px;
}

.otel-reservation-info-card__action .otel-button{
  width:100%;
  min-height:54px;
}

.otel-reservation-note-card__mode{
  padding:14px 16px;
  border-radius:18px;
  background:#faf7f2;
  border:1px solid var(--otel-border);
  color:var(--otel-text-soft);
  font-size:14px;
  line-height:1.7;
}

.otel-page-disabled{
  padding:120px 0 70px;
}

.otel-page-disabled h1{
  margin:0 0 12px;
  font-size:40px;
}

.otel-page-disabled p{
  margin:0;
  color:var(--otel-text-soft);
  font-size:17px;
}

/* GLOBAL FIX - CONTENT DISAPPEAR BUG */
.js-enabled .otel-reveal,
.js-enabled .otel-reveal.is-visible,
.otel-reveal,
.otel-reveal.is-visible{
  opacity:1 !important;
  transform:none !important;
  transition:none !important;
  will-change:auto !important;
}

/* HERO / ARCHIVE UST BOSLUK DÜZELTME */
.otel-gallery-hero,
.otel-area-archive-hero,
.otel-room-archive-hero,
.otel-room-tax-hero,
.otel-page-hero,
.otel-contact-hero,
.otel-about-hero{
  padding-top:72px !important;
  padding-bottom:36px !important;
}

.otel-gallery-hero__inner,
.otel-area-archive-hero__inner,
.otel-room-archive-hero__inner,
.otel-room-tax-hero__wrap,
.otel-page-hero .container,
.otel-contact-hero__inner,
.otel-about-hero__inner{
  min-height:auto !important;
}

.otel-gallery-section,
.otel-area-archive-listing,
.otel-room-archive-listing,
.otel-page-section,
.otel-contact-section,
.otel-about-section{
  padding-top:24px !important;
}

/* HOME SECTION TITLES CENTER */
.home section > .container > h2,
.home .otel-section-head,
.home .otel-section-head h2,
.home .otel-section-head p,
.home section > .container > p{
  text-align:center;
}

.home .otel-section-head{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}

.home .otel-section-head p,
.home section > .container > p{
  margin-left:auto;
  margin-right:auto;
}

/* ANA SAYFA BLOK BOŞLUKLARI */
.home section{
  padding-top:72px;
  padding-bottom:72px;
}

.home .otel-booking-v2{
  margin-top:-42px;
}

.home .experiences{
  padding-top:48px;
}

.home .experience-grid,
.home .otel-rooms-grid,
.home .service-grid,
.home .review-grid,
.home .otel-area-grid{
  margin-bottom:0;
}

/* GALLERY / CATEGORY / ARCHIVE HERO EMPTY LOOK FIX */
.otel-gallery-hero,
.otel-area-archive-hero,
.otel-room-archive-hero,
.otel-room-tax-hero{
  overflow:hidden;
}

.otel-gallery-hero:empty,
.otel-area-archive-hero:empty,
.otel-room-archive-hero:empty,
.otel-room-tax-hero:empty{
  display:none !important;
}

/* PREMIUM FOOTER V2 */
.site-footer.site-footer--premium{
  position:relative;
  margin-top:90px;
  background:
    radial-gradient(circle at top left, rgba(181,134,82,.16), transparent 34%),
    radial-gradient(circle at bottom right, rgba(255,255,255,.04), transparent 28%),
    linear-gradient(180deg, #122033 0%, #0b1422 100%);
  color:#d8e1ec;
  overflow:hidden;
}

.site-footer.site-footer--premium::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0));
  pointer-events:none;
}

.site-footer.site-footer--premium .site-footer__top{
  position:relative;
  z-index:1;
  padding:72px 0 34px;
}

.site-footer.site-footer--premium .site-footer__grid{
  display:grid;
  grid-template-columns:1.35fr 1fr 1fr 1fr;
  gap:28px;
  align-items:stretch;
}

.site-footer.site-footer--premium .site-footer__col{
  min-width:0;
}

.site-footer.site-footer--premium .site-footer__card,
.site-footer.site-footer--premium .site-footer__brand-card{
  min-height:100%;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  border-radius:28px;
  padding:28px 24px;
  box-shadow:0 20px 50px rgba(0,0,0,.14);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  transition:transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}

.site-footer.site-footer--premium .site-footer__brand-card{
  padding:30px 28px;
}

.site-footer.site-footer--premium .site-footer__card:hover,
.site-footer.site-footer--premium .site-footer__brand-card:hover{
  transform:translateY(-4px);
  box-shadow:0 26px 56px rgba(0,0,0,.18);
  border-color:rgba(255,255,255,.13);
}

.site-footer.site-footer--premium .site-footer__eyebrow{
  display:inline-flex;
  align-items:center;
  padding:8px 14px;
  border-radius:999px;
  background:rgba(181,134,82,.16);
  border:1px solid rgba(181,134,82,.24);
  color:#e7c59b;
  font-size:12px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-bottom:16px;
}

.site-footer.site-footer--premium .site-footer__brand-title{
  margin:0 0 14px;
  color:#ffffff;
  font-size:30px;
  line-height:1.15;
  font-weight:700;
}

.site-footer.site-footer--premium .site-footer__brand-text p{
  margin:0;
  color:#c3cfdb;
  line-height:1.9;
  font-size:15px;
}

.site-footer.site-footer--premium .site-footer__brand-divider{
  width:100%;
  height:1px;
  margin:20px 0 18px;
  background:linear-gradient(90deg, rgba(181,134,82,.45), rgba(255,255,255,.06), transparent);
}

.site-footer.site-footer--premium .site-footer__mini-badges{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.site-footer.site-footer--premium .site-footer__mini-badges span{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 12px;
  border-radius:999px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.08);
  color:#e8eef5;
  font-size:12px;
  font-weight:700;
}

.site-footer.site-footer--premium .site-footer__title{
  margin:0 0 18px;
  color:#ffffff;
  font-size:18px;
  line-height:1.2;
  font-weight:700;
}

.site-footer.site-footer--premium .footer-menu,
.site-footer.site-footer--premium .site-footer__menu,
.site-footer.site-footer--premium .site-footer__menu ul{
  list-style:none;
  margin:0;
  padding:0;
}

.site-footer.site-footer--premium .footer-menu,
.site-footer.site-footer--premium .site-footer__menu{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.site-footer.site-footer--premium .footer-menu li,
.site-footer.site-footer--premium .site-footer__menu li{
  margin:0;
  padding:0;
}

.site-footer.site-footer--premium .footer-menu a,
.site-footer.site-footer--premium .site-footer__menu a{
  color:#c9d4df;
  text-decoration:none;
  transition:all .22s ease;
  display:inline-flex;
  align-items:center;
  gap:10px;
  position:relative;
}

.site-footer.site-footer--premium .footer-menu a::before,
.site-footer.site-footer--premium .site-footer__menu a::before{
  content:"→";
  color:var(--otel-primary);
  font-size:13px;
  line-height:1;
  transition:transform .22s ease, opacity .22s ease;
}

.site-footer.site-footer--premium .footer-menu a:hover,
.site-footer.site-footer--premium .site-footer__menu a:hover{
  color:#ffffff;
  transform:translateX(4px);
}

.site-footer.site-footer--premium .footer-menu a:hover::before,
.site-footer.site-footer--premium .site-footer__menu a:hover::before{
  transform:translateX(2px);
}

.site-footer.site-footer--premium .site-footer__contact-list{
  display:flex;
  flex-direction:column;
  gap:14px;
}

.site-footer.site-footer--premium .site-footer__contact-item{
  padding:14px 16px;
  border-radius:18px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.06);
  transition:transform .22s ease, border-color .22s ease, background .22s ease;
}

.site-footer.site-footer--premium .site-footer__contact-item:hover{
  transform:translateY(-2px);
  border-color:rgba(255,255,255,.10);
  background:rgba(255,255,255,.055);
}

.site-footer.site-footer--premium .site-footer__contact-item span{
  display:block;
  margin-bottom:6px;
  color:#8fa0b3;
  font-size:12px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.site-footer.site-footer--premium .site-footer__contact-item a,
.site-footer.site-footer--premium .site-footer__contact-item p{
  margin:0;
  color:#eef4fb;
  text-decoration:none;
  line-height:1.7;
  word-break:break-word;
}

.site-footer.site-footer--premium .site-footer__contact-item a:hover{
  color:#ffffff;
}

.site-footer.site-footer--premium .site-footer__policy-text,
.site-footer.site-footer--premium .site-footer__info-list{
  padding:18px 18px 16px;
  border-radius:20px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.06);
}

.site-footer.site-footer--premium .site-footer__policy-text p{
  margin:0 0 10px;
  color:#c7d1dc;
  line-height:1.85;
  font-size:14px;
}

.site-footer.site-footer--premium .site-footer__policy-text p:last-child{
  margin-bottom:0;
}

.site-footer.site-footer--premium .site-footer__info-list{
  margin:0;
  list-style:none;
  display:flex;
  flex-direction:column;
  gap:12px;
}

.site-footer.site-footer--premium .site-footer__info-list li{
  position:relative;
  padding-left:16px;
  color:#c7d1dc;
  line-height:1.8;
  font-size:14px;
}

.site-footer.site-footer--premium .site-footer__info-list li::before{
  content:"";
  position:absolute;
  left:0;
  top:.8em;
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--otel-primary,#b58652);
}

.site-footer.site-footer--premium .site-footer__bottom{
  position:relative;
  z-index:1;
  border-top:1px solid rgba(255,255,255,.08);
  padding:18px 0;
}

.site-footer.site-footer--premium .site-footer__bottom-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}

.site-footer.site-footer--premium .site-footer__bottom-left{
  display:flex;
  flex-wrap:wrap;
  gap:10px 18px;
  color:#95a6b8;
  font-size:13px;
}

.site-footer.site-footer--premium .site-footer__socials{
  display:flex;
  align-items:center;
  gap:10px;
}

.site-footer.site-footer--premium .site-footer__socials a{
  width:38px;
  height:38px;
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  color:#eef4fb;
  text-decoration:none;
  font-size:16px;
  transition:transform .22s ease, background .22s ease, border-color .22s ease;
}

.site-footer.site-footer--premium .site-footer__socials a:hover{
  transform:translateY(-2px);
  background:rgba(181,134,82,.18);
  border-color:rgba(181,134,82,.26);
}

/* TABLET */
@media (max-width: 1200px){
  .otel-booking-v2__shell{
    grid-template-columns:1fr;
  }

  .otel-booking-v2__intro{
    border-right:0;
    border-bottom:1px solid rgba(22,34,53,.06);
  }

  .otel-booking-v2__form{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }

  .otel-booking-v2__action{
    grid-column:1 / -1;
  }

  .two-col,
  .otel-room-layout,
  .otel-experience-layout,
  .otel-area-layout{
    grid-template-columns:1fr;
  }

  .experience-grid,
  .room-grid,
  .service-grid,
  .review-grid,
  .region-grid,
  .gallery-grid,
  .otel-area-grid,
  .otel-area-related,
  .otel-experience-related{
    grid-template-columns:1fr;
  }

  .otel-hero-v2__content{
    padding:0 30px 38px;
  }

  .otel-hero-v2__caption{
    max-width:700px;
  }

  .otel-hero-v2__caption p{
    padding:14px 22px;
  }

  .otel-room-sidebar,
  .otel-experience-sidebar,
  .otel-area-sidebar,
  .otel-reservation-sidebar{
    position:static;
  }

  .otel-room-hero,
  .otel-experience-hero,
  .otel-area-hero{
    min-height:560px;
    padding:132px 0 48px;
  }

  .otel-room-hero__meta{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }

  .otel-room-gallery__main-image,
  .otel-area-gallery__image{
    min-height:420px;
  }

  .otel-room-gallery__grid{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }

  .otel-room-tax-hero__wrap,
  .otel-reservation-hero__wrap,
  .otel-reservation-layout{
    grid-template-columns:1fr;
  }

  .otel-rooms-grid{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }

  .otel-room-hero--premium{
    min-height:620px;
    padding:138px 0 52px;
  }

  .otel-room-highlight-bar{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }

  .otel-room-gallery-slider__track{
    height:500px;
    min-height:500px;
  }

  .otel-room-gallery-slider__thumbs{
    grid-template-columns:repeat(4, minmax(0,1fr));
  }

  .otel-home-gallery-slider__track{
    min-height:460px;
  }

  .otel-home-gallery-slider__image-link img{
    height:460px;
  }

  .otel-experience-gallery-slider__track{
    min-height:460px;
  }

  .otel-experience-gallery-slider__image{
    height:460px;
  }

  .otel-experience-gallery-slider__thumbs{
    grid-template-columns:repeat(4, minmax(0,1fr));
  }
}

/* MOBILE NAV */
@media (max-width: 991px){
  .otel-header-inner{
    grid-template-columns:1fr auto;
    min-height:76px;
    gap:16px;
    padding:12px 0;
  }

  .otel-top-actions{
    grid-column:auto;
    width:auto;
    justify-content:flex-end;
    align-items:center;
    flex-wrap:nowrap;
  }

  .otel-header-cta{
    display:none !important;
  }

  .otel-mobile-toggle{
    display:inline-flex;
  }

  .otel-nav{
    grid-column:1 / -1;
    display:none;
    width:100%;
    justify-content:flex-start;
    padding-top:6px;
  }

  .otel-nav.is-open{
    display:flex;
  }

  .otel-nav .menu,
  .otel-nav .otel-menu,
  .otel-nav ul{
    width:100%;
    flex-direction:column;
    align-items:flex-start;
    gap:12px;
    padding:16px;
    background:var(--otel-header-bg);
    border:1px solid var(--otel-header-border);
    border-radius:16px;
    box-shadow:var(--otel-shadow);
  }

  .experience-grid,
  .room-grid,
  .service-grid,
  .review-grid,
  .region-grid,
  .gallery-grid{
    grid-template-columns:1fr;
  }

  .otel-hero-v2__caption p{
    font-size:clamp(28px, 5vw, 44px);
    padding:13px 20px;
  }

  .otel-room-hero__title,
  .otel-experience-hero__title,
  .otel-area-hero__title{
    font-size:clamp(34px, 8vw, 54px);
  }

  .otel-room-hero__text,
  .otel-experience-hero__text,
  .otel-area-hero__text{
    font-size:17px;
    line-height:1.75;
  }

  .otel-room-features{
    grid-template-columns:1fr;
  }

  .otel-area-hero__meta{
    grid-template-columns:1fr;
  }

  .otel-room-archive-hero__title,
  .otel-room-tax-hero__title{
    font-size:clamp(32px, 8vw, 50px);
  }

  .otel-room-archive-hero__text,
  .otel-room-tax-hero__text{
    font-size:17px;
    line-height:1.75;
  }

  .otel-rooms-grid{
    grid-template-columns:1fr;
  }

  .otel-contact-grid,
  .otel-about-grid{
    grid-template-columns:1fr;
  }

  .otel-gallery-grid{
    grid-template-columns:repeat(2,1fr);
  }

  .otel-room-hero--premium .otel-room-hero__text{
    font-size:17px;
    line-height:1.78;
  }
}

/* MOBILE */
@media (max-width: 767px){
  .container{
    width:min(100% - 24px, var(--otel-container));
  }

  .admin-bar .otel-header{
    top:auto;
  }

  .otel-brand-logo{
    max-height:44px;
  }

  .otel-brand-text{
    font-size:21px;
  }

  .otel-top-actions{
    flex-direction:row;
    align-items:center;
    justify-content:flex-end;
    width:auto;
  }

  .otel-button{
    width:auto;
  }

  .otel-hero-v2{
    margin-top:0;
    padding-top:0;
  }

  .admin-bar .otel-hero-v2{
    margin-top:0;
    padding-top:0;
  }

  .otel-hero-v2__track{
    height:540px;
    min-height:540px;
  }

  .otel-hero-v2__media img,
  .otel-hero-v2__media video{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center center;
    transform:scale(1.12);
  }

  .otel-hero-v2__inner{
    align-items:center;
    justify-content:center;
  }

  .otel-hero-v2__content{
    max-width:100%;
    padding:0 16px 18px;
  }

  .otel-hero-v2__caption{
    max-width:88%;
    margin:0 auto;
  }

  .otel-hero-v2__caption p{
    font-size:26px;
    line-height:1.24;
    font-weight:700;
    letter-spacing:-.2px;
    padding:12px 16px;
    border-radius:20px;
    background:rgba(10,17,28,.14);
    border-color:rgba(255,255,255,.08);
    backdrop-filter:blur(5px);
    -webkit-backdrop-filter:blur(5px);
  }

  .otel-hero-v2__arrow{
    top:auto;
    bottom:80px;
    transform:none;
    width:42px;
    height:42px;
    font-size:22px;
  }

  .otel-hero-v2__arrow--prev{left:10px;}
  .otel-hero-v2__arrow--next{right:10px;}

  .otel-hero-v2__dots{
    bottom:22px;
    gap:8px;
    padding:8px 10px;
  }

  .otel-hero-v2__dot{
    width:9px;
    height:9px;
  }

  .otel-hero-v2__dot.is-active{
    width:24px;
  }

  .otel-booking-v2{
    margin-top:-14px;
  }

  .otel-booking-v2__intro,
  .otel-booking-v2__form-wrap{
    padding:16px;
  }

  .otel-booking-v2__intro h2{
    font-size:24px;
  }

  .otel-booking-v2__intro p{
    font-size:14px;
    line-height:1.58;
  }

  .otel-booking-v2__meta{
    margin-top:14px;
    padding-top:12px;
  }

  .otel-booking-v2__meta strong{
    font-size:18px;
  }

  .otel-booking-v2__form{
    grid-template-columns:1fr;
    gap:12px;
  }

  .otel-booking-v2__field{
    gap:6px;
  }

  .otel-booking-v2__field label{
    font-size:12px;
  }

  .otel-booking-v2__field input,
  .otel-booking-v2__field select,
  .otel-booking-v2__action button,
  .btn{
    height:52px;
  }

  .service-grid{
    gap:10px;
  }

  .service-card{
    min-height:50px;
    padding:12px 14px;
    font-size:13px;
    border-radius:14px;
  }

  section{
    padding:70px 0;
  }

  section h2{
    font-size:30px;
  }

  section > .container > p,
  .otel-section-head p{
    font-size:16px;
    margin-bottom:24px;
  }

  .otel-room-hero,
  .otel-room-hero--premium{
    min-height:540px !important;
    padding:148px 0 22px !important;
    align-items:flex-end !important;
  }

  .otel-room-hero .container,
  .otel-room-hero--premium .container{
    padding-bottom:2px !important;
  }

  .otel-room-hero__content{
    max-width:100% !important;
    padding-top:18px;
  }

  .otel-room-hero__breadcrumbs{
    margin-bottom:8px !important;
    font-size:11px !important;
    gap:6px !important;
  }

  .otel-room-hero__badge{
    min-height:28px !important;
    padding:0 10px !important;
    margin-bottom:8px !important;
    font-size:10px !important;
  }

  .otel-room-hero__title,
  .otel-room-hero--premium .otel-room-hero__title{
    margin:0 0 8px !important;
    font-size:24px !important;
    line-height:1.06 !important;
    letter-spacing:-.4px !important;
  }

  .otel-room-hero__text,
  .otel-room-hero--premium .otel-room-hero__text{
    margin:0 0 12px !important;
    font-size:13px !important;
    line-height:1.55 !important;
    max-width:96% !important;
  }

  .otel-room-hero__overlay{
    background:
      linear-gradient(180deg, rgba(9,15,25,.06) 0%, rgba(9,15,25,.16) 34%, rgba(9,15,25,.58) 100%),
      linear-gradient(90deg, rgba(10,17,28,.28) 0%, rgba(13,21,34,.10) 55%, rgba(16,25,39,.05) 100%);
  }

  .otel-room-hero__meta{
    grid-template-columns:1fr;
    gap:8px !important;
  }

  .otel-room-hero__meta-item{
    padding:11px 13px !important;
    border-radius:14px !important;
    backdrop-filter:blur(6px);
    -webkit-backdrop-filter:blur(6px);
  }

  .otel-room-hero__meta-item span{
    font-size:10px !important;
    margin-bottom:3px !important;
  }

  .otel-room-hero__meta-item strong{
    font-size:13px !important;
    line-height:1.28 !important;
  }

  .otel-experience-hero,
  .otel-area-hero{
    min-height:auto;
    padding:116px 0 36px;
  }

  .otel-experience-hero__breadcrumbs,
  .otel-area-hero__breadcrumbs{
    gap:8px;
    font-size:13px;
    margin-bottom:14px;
  }

  .otel-experience-hero__badge,
  .otel-area-hero__badge{
    min-height:34px;
    padding:0 14px;
    margin-bottom:14px;
  }

  .otel-experience-hero__title,
  .otel-area-hero__title{
    margin-bottom:14px;
    font-size:34px;
    line-height:1.06;
    letter-spacing:-.8px;
  }

  .otel-experience-hero__text,
  .otel-area-hero__text{
    margin-bottom:18px;
    font-size:15px;
    line-height:1.72;
  }

  .otel-area-hero__meta{
    grid-template-columns:1fr;
  }

  .otel-room-content,
  .otel-experience-content,
  .otel-area-content{
    padding-top:30px;
  }

  .otel-room-layout,
  .otel-experience-layout,
  .otel-area-layout{
    gap:22px;
  }

  .otel-room-gallery,
  .otel-area-gallery{
    margin-bottom:22px;
  }

  .otel-room-gallery__main,
  .otel-area-gallery__main{
    border-radius:20px;
    margin-bottom:12px;
  }

  .otel-room-gallery__main-image,
  .otel-area-gallery__image{
    min-height:260px;
  }

  .otel-room-gallery__grid{
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:12px;
  }

  .otel-room-gallery__item{
    border-radius:14px;
  }

  .otel-room-section,
  .otel-experience-section,
  .otel-area-section{
    border-radius:20px;
    padding:20px 18px;
    margin-bottom:18px;
  }

  .otel-room-section__head span,
  .otel-experience-section__head span,
  .otel-area-section__head span{
    margin-bottom:8px;
    font-size:12px;
  }

  .otel-room-section__head h2,
  .otel-experience-section__head h2,
  .otel-area-section__head h2{
    font-size:28px;
  }

  .otel-room-section__body,
  .otel-experience-section__body,
  .otel-area-section__body{
    font-size:15px;
    line-height:1.8;
  }

  .otel-room-features{
    gap:10px;
  }

  .otel-room-features__item{
    padding:14px 14px;
    border-radius:14px;
    font-size:14px;
  }

  .otel-room-booking-card,
  .otel-experience-booking-card,
  .otel-area-booking-card{
    border-radius:20px;
    padding:20px 18px;
  }

  .otel-room-booking-card__price strong{
    font-size:30px;
  }

  .otel-room-booking-card__row,
  .otel-area-booking-card__row{
    font-size:14px;
  }

  .otel-room-booking-card__actions .otel-button{
    min-height:52px;
  }

  .otel-experience-gallery{
    border-radius:18px;
  }

  .otel-experience-gallery__image{
    min-height:260px;
  }

  .otel-experience-booking-card__top h3,
  .otel-area-booking-card__top h3{
    font-size:24px;
  }

  .otel-experience-related__card,
  .otel-area-related__card{
    border-radius:18px;
  }

  .otel-experience-related__body,
  .otel-area-related__body{
    padding:16px;
  }

  .otel-experience-related__body h3,
  .otel-area-related__body h3{
    font-size:20px;
  }

  .otel-area-archive-hero,
  .otel-room-archive-hero,
  .otel-room-tax-hero{
    padding:52px 0 24px !important;
  }

  .otel-area-archive-hero__title,
  .otel-room-archive-hero__title,
  .otel-room-tax-hero__title{
    font-size:34px;
    line-height:1.08;
  }

  .otel-area-archive-hero__text,
  .otel-room-archive-hero__text,
  .otel-room-tax-hero__text{
    font-size:15px;
    line-height:1.72;
  }

  .otel-room-tax-hero__image,
  .otel-room-tax-hero__placeholder{
    min-height:240px;
    border-radius:20px;
  }

  .otel-area-card,
  .otel-room-card{
    border-radius:20px;
  }

  .otel-area-card__body,
  .otel-room-card__body{
    padding:18px 18px 20px;
  }

  .otel-area-card__title,
  .otel-room-card__title{
    font-size:22px;
  }

  .otel-room-card__top{
    flex-direction:column;
    align-items:flex-start;
  }

  .otel-room-card__price{
    text-align:left;
  }

  .otel-room-card__actions .otel-button{
    min-height:52px;
  }

  .otel-room-highlight-bar{
    grid-template-columns:1fr;
    gap:12px;
    margin-bottom:20px;
  }

  .otel-room-highlight-bar__item{
    border-radius:16px;
    padding:16px 16px 14px;
  }

  .otel-room-highlight-bar__item strong{
    font-size:20px;
  }

  .otel-room-booking-card__note{
    font-size:13px;
    line-height:1.65;
  }

  .otel-room-booking-card--premium .otel-room-booking-card__price strong{
    font-size:34px;
  }

  .otel-room-gallery-slider{
    margin-bottom:22px;
  }

  .otel-room-gallery-slider__viewport{
    border-radius:20px;
  }

  .otel-room-gallery-slider__track{
    height:280px;
    min-height:280px;
  }

  .otel-room-gallery-slider__arrow{
    width:42px;
    height:42px;
    font-size:22px;
  }

  .otel-room-gallery-slider__arrow--prev{left:10px;}
  .otel-room-gallery-slider__arrow--next{right:10px;}

  .otel-room-gallery-slider__thumbs{
    display:none;
  }

  .otel-room-gallery-slider__dots{
    display:flex;
  }

  .otel-room-extra{
    padding:8px 0 44px;
  }

  .otel-room-extra__block{
    padding:20px 18px 18px;
    border-radius:18px;
  }

  .otel-room-extra__title{
    font-size:20px;
  }

  .otel-room-extra__content{
    font-size:14px;
    line-height:1.75;
  }

  .otel-home-gallery-slider__viewport{
    border-radius:20px;
  }

  .otel-home-gallery-slider__track{
    min-height:280px;
  }

  .otel-home-gallery-slider__image-link img{
    height:280px;
  }

  .otel-home-gallery-slider__arrow{
    width:42px;
    height:42px;
    font-size:22px;
  }

  .otel-home-gallery-slider__arrow--prev{left:10px;}
  .otel-home-gallery-slider__arrow--next{right:10px;}

  .otel-home-gallery-slider__dots{
    bottom:14px;
    gap:8px;
    padding:8px 10px;
  }

  .otel-home-gallery-slider__dot{
    width:9px;
    height:9px;
  }

  .otel-home-gallery-slider__dot.is-active{
    width:24px;
  }

  .otel-gallery-hero,
  .otel-page-hero,
  .otel-contact-hero,
  .otel-about-hero{
    padding-top:52px !important;
    padding-bottom:24px !important;
  }

  .otel-gallery-hero--premium{
    padding:104px 0 54px;
  }

  .otel-gallery-hero--premium .otel-gallery-hero__title{
    font-size:34px;
    line-height:1.08;
  }

  .otel-gallery-hero--premium .otel-gallery-hero__text{
    font-size:15px;
    line-height:1.72;
    max-width:92%;
  }

  .otel-gallery-marquee{
    grid-template-columns:40px minmax(0,1fr) 40px;
    gap:8px;
    margin-top:14px;
  }

  .otel-gallery-marquee__nav{
    width:40px;
    height:40px;
    font-size:20px;
  }

  .otel-gallery-marquee__item{
    width:88px;
    height:62px;
    border-radius:12px;
  }

  .otel-gallery-section,
  .otel-area-archive-listing,
  .otel-room-archive-listing,
  .otel-page-section,
  .otel-contact-section,
  .otel-about-section{
    padding-top:16px !important;
  }

  .home section{
    padding-top:52px;
    padding-bottom:52px;
  }

  .home .otel-booking-v2{
    margin-top:-8px;
  }

  .home .experiences{
    padding-top:34px;
  }

  .home section > .container > h2,
  .home .otel-section-head,
  .home .otel-section-head h2,
  .home .otel-section-head p,
  .home section > .container > p{
    text-align:center;
  }

  .otel-reservation-hero{
    padding:112px 0 34px;
  }

  .otel-reservation-hero__title{
    font-size:34px;
    line-height:1.08;
  }

  .otel-reservation-hero__text p{
    font-size:15px;
    line-height:1.72;
  }

  .otel-reservation-hero__media img,
  .otel-reservation-hero__placeholder{
    min-height:240px;
    border-radius:20px;
  }

  .otel-reservation-content{
    padding-top:6px;
  }

  .otel-reservation-form-card,
  .otel-reservation-info-card,
  .otel-reservation-note-card{
    border-radius:20px;
  }

  .otel-reservation-form-card{
    padding:20px 18px;
  }

  .otel-reservation-info-card,
  .otel-reservation-note-card{
    padding:20px 18px;
  }

  .otel-reservation-form-card__title{
    font-size:24px;
  }

  .otel-reservation-form-card__text{
    font-size:14px;
    line-height:1.75;
    margin-bottom:18px;
  }

  .otel-reservation-form__grid{
    grid-template-columns:1fr;
    gap:14px;
  }

  .otel-reservation-form__field--full{
    grid-column:auto;
  }

  .otel-reservation-form__field input,
  .otel-reservation-form__field select{
    height:52px;
    padding:0 14px;
  }

  .otel-reservation-form__field textarea{
    min-height:120px;
    padding:14px;
  }

  .otel-reservation-form__actions{
    margin-top:18px;
  }

  .otel-reservation-form__actions .otel-button{
    width:100%;
    min-height:52px;
  }

  .otel-reservation-info-card h3,
  .otel-reservation-note-card h3{
    font-size:20px;
  }

  .otel-reservation-info-card p,
  .otel-reservation-note-card p{
    font-size:14px;
    line-height:1.75;
  }

  .otel-reservation-info-card__item{
    padding:12px 14px;
    border-radius:14px;
  }

  .otel-reservation-note-card__mode{
    padding:12px 14px;
    border-radius:14px;
    font-size:13px;
  }

  .otel-experience-gallery-slider{
    margin-bottom:0;
  }

  .otel-experience-gallery-slider__viewport{
    border-radius:20px;
  }

  .otel-experience-gallery-slider__track{
    min-height:280px;
  }

  .otel-experience-gallery-slider__image{
    height:280px;
  }

  .otel-experience-gallery-slider__arrow{
    width:42px;
    height:42px;
    font-size:22px;
  }

  .otel-experience-gallery-slider__arrow--prev{left:10px;}
  .otel-experience-gallery-slider__arrow--next{right:10px;}

  .otel-experience-gallery-slider__thumbs{
    display:none;
  }

  .otel-experience-gallery-slider__dots{
    display:flex;
  }

  .site-footer.site-footer--premium{
    margin-top:70px;
  }

  .site-footer.site-footer--premium .site-footer__top{
    padding:54px 0 26px;
  }

  .site-footer.site-footer--premium .site-footer__grid{
    grid-template-columns:1fr;
    gap:18px;
  }

  .site-footer.site-footer--premium .site-footer__brand-card,
  .site-footer.site-footer--premium .site-footer__card{
    padding:22px 20px;
    border-radius:22px;
  }

  .site-footer.site-footer--premium .site-footer__brand-title{
    font-size:24px;
  }

  .site-footer.site-footer--premium .site-footer__bottom-inner{
    flex-direction:column;
    align-items:flex-start;
  }

  .site-footer.site-footer--premium .site-footer__socials{
    margin-top:4px;
  }
}

@media (max-width: 600px){
  .otel-gallery-grid{
    grid-template-columns:1fr;
  }
}

/* EXPERIENCE GALLERY SLIDER */
.otel-experience-gallery-slider{
  margin:0 0 8px;
}

.otel-experience-gallery-slider__viewport{
  position:relative;
  overflow:hidden;
  border-radius:28px;
  background:#fff;
  box-shadow:var(--otel-shadow-strong);
}

.otel-experience-gallery-slider__track{
  position:relative;
  min-height:560px;
}

.otel-experience-gallery-slider__slide{
  position:absolute;
  inset:0;
  opacity:0;
  visibility:hidden;
  transition:opacity .35s ease, visibility .35s ease;
}

.otel-experience-gallery-slider__slide.is-active{
  opacity:1;
  visibility:visible;
  z-index:2;
}

.otel-experience-gallery-slider__image-link{
  display:block;
  width:100%;
  height:100%;
}

.otel-experience-gallery-slider__image{
  width:100%;
  height:560px;
  object-fit:cover;
  object-position:center center;
}

.otel-experience-gallery-slider__arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:52px;
  height:52px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.26);
  background:rgba(15,24,37,.28);
  color:#fff;
  font-size:28px;
  line-height:1;
  cursor:pointer;
  z-index:4;
  display:flex;
  align-items:center;
  justify-content:center;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  transition:background .25s ease, transform .25s ease, box-shadow .25s ease;
}

.otel-experience-gallery-slider__arrow:hover{
  background:rgba(15,24,37,.42);
  box-shadow:0 12px 24px rgba(0,0,0,.20);
}

.otel-experience-gallery-slider__arrow--prev{left:18px;}
.otel-experience-gallery-slider__arrow--next{right:18px;}

.otel-experience-gallery-slider__thumbs{
  display:grid;
  grid-template-columns:repeat(5, minmax(0,1fr));
  gap:12px;
  margin-top:14px;
}

.otel-experience-gallery-slider__thumb{
  padding:0;
  border:1px solid var(--otel-border);
  background:#fff;
  border-radius:18px;
  overflow:hidden;
  cursor:pointer;
  box-shadow:var(--otel-shadow);
  transition:transform .25s ease, border-color .25s ease, box-shadow .25s ease, opacity .25s ease;
  opacity:.78;
}

.otel-experience-gallery-slider__thumb:hover{
  transform:translateY(-3px);
  opacity:1;
}

.otel-experience-gallery-slider__thumb.is-active{
  border-color:rgba(181,134,82,.55);
  box-shadow:0 14px 26px rgba(17,28,45,.10);
  opacity:1;
}

.otel-experience-gallery-slider__thumb img{
  width:100%;
  aspect-ratio:1/1;
  object-fit:cover;
}

.otel-experience-gallery-slider__dots{
  display:none;
  justify-content:center;
  gap:8px;
  margin-top:14px;
}

.otel-experience-gallery-slider__dot{
  width:10px;
  height:10px;
  border-radius:999px;
  border:1px solid rgba(22,34,53,.18);
  background:rgba(22,34,53,.18);
  cursor:pointer;
  padding:0;
  transition:.2s ease;
}

.otel-experience-gallery-slider__dot.is-active{
  width:26px;
  background:var(--otel-primary);
  border-color:var(--otel-primary);
}
/* ============================= */
/* HOKKA PREMIUM UI PATCH V1 */
/* ============================= */

/* HERO BUTTON IMPROVEMENT */
.otel-button{
  letter-spacing:.3px;
}

.otel-button:active{
  transform:scale(.96);
  box-shadow:0 6px 14px rgba(0,0,0,.2);
}

/* SECTION TRANSITION LINE */
section{
  position:relative;
}

section::after{
  content:'';
  position:absolute;
  bottom:0;
  left:50%;
  transform:translateX(-50%);
  width:120px;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(181,134,82,.5), transparent);
  opacity:.6;
}

/* CARD HOVER PREMIUM */
.experience-card:hover,
.room-card:hover,
.otel-room-card:hover{
  transform:translateY(-10px) scale(1.015);
}

/* CARD INNER SHINE */
.experience-card::before,
.room-card::before{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(120deg, transparent 40%, rgba(255,255,255,.15), transparent 60%);
  opacity:0;
  transition:.4s;
}

.experience-card:hover::before,
.room-card:hover::before{
  opacity:1;
}

/* IMAGE ZOOM SMOOTHER */
.experience-card img,
.room-card img{
  transition:transform .8s ease;
}

/* BUTTON HOVER GLOW */
.otel-button:hover{
  box-shadow:
    0 18px 40px rgba(181,134,82,.28),
    0 0 20px rgba(181,134,82,.25);
}

/* BOOKING BOX PREMIUM */
.otel-booking-v2__shell{
  backdrop-filter:blur(10px);
  border:1px solid rgba(255,255,255,.4);
}

/* FOOTER LOGO AREA IMPROVEMENT */
.site-footer__brand-card{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.site-footer__brand-card img{
  max-height:60px;
}

/* FOOTER GLASS EFFECT */
.site-footer.site-footer--premium .site-footer__card{
  background:rgba(255,255,255,.04);
  backdrop-filter:blur(12px);
}

/* SCROLL SMOOTH FEEL */
html{
  scroll-behavior:smooth;
}

/* MICRO ANIMATION */
.otel-button,
.experience-card,
.room-card{
  transition:all .3s ease;
}
/* =========================================================
   PREMIUM THANK YOU PAGE
   ========================================================= */

.otel-thankyou-page{
  padding:0 !important;
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
}

.otel-thankyou-page *{
  box-sizing:border-box;
}

.otel-thankyou-page .woocommerce-notice,
.otel-thankyou-page .woocommerce-order-overview,
.otel-thankyou-page .woocommerce-order-details,
.otel-thankyou-page .woocommerce-customer-details,
.otel-thankyou-page .woocommerce-columns,
.otel-thankyou-page .woocommerce-column,
.otel-thankyou-page .woocommerce-thankyou-order-details,
.otel-thankyou-page .woocommerce-table--order-details,
.otel-thankyou-page .woocommerce-order-details__title,
.otel-thankyou-page .woocommerce-customer-details h2{
  display:none !important;
}

.otel-thankyou-page .wc-bacs-bank-details,
.otel-thankyou-page .woocommerce-bacs-bank-details{
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
}

.otel-thankyou-page .wc-bacs-bank-details-heading,
.otel-thankyou-page .woocommerce-bacs-bank-details-heading{
  margin:0 0 18px !important;
  font-size:30px !important;
  line-height:1.1 !important;
  letter-spacing:-.6px !important;
  color:var(--otel-text) !important;
  font-weight:800 !important;
}

.otel-thankyou-page .bacs_details,
.otel-thankyou-page .wc-bacs-bank-details-order-details{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:14px;
}

.otel-thankyou-page .bacs_details li,
.otel-thankyou-page .wc-bacs-bank-details-order-details li{
  margin:0;
  padding:16px 18px;
  background:#faf8f4;
  border:1px solid var(--otel-border);
  border-radius:18px;
  color:var(--otel-text-soft);
  font-size:13px;
  line-height:1.65;
  text-transform:none !important;
}

.otel-thankyou-page .bacs_details li strong,
.otel-thankyou-page .wc-bacs-bank-details-order-details li strong{
  display:block;
  margin-top:6px;
  color:var(--otel-text);
  font-size:16px;
  line-height:1.5;
  font-weight:800;
  word-break:break-word;
}

.otel-thankyou-hero{
  margin:0 0 18px;
}

.otel-thankyou-hero__inner{
  background:#fff;
  border:1px solid var(--otel-border-soft);
  border-radius:32px;
  padding:34px;
  box-shadow:var(--otel-shadow-strong);
  display:grid;
  grid-template-columns:minmax(0,1.15fr) 340px;
  gap:24px;
  align-items:start;
}

.otel-thankyou-hero__badge{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 16px;
  border-radius:999px;
  background:rgba(181,134,82,.12);
  color:var(--otel-primary-dark);
  font-size:12px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  margin-bottom:14px;
}

.otel-thankyou-hero__content h1{
  margin:0 0 14px;
  font-size:clamp(36px, 4vw, 56px);
  line-height:1.04;
  letter-spacing:-1px;
  color:var(--otel-text);
  font-weight:800;
}

.otel-thankyou-hero__content p{
  margin:0;
  max-width:780px;
  color:var(--otel-text-soft);
  font-size:17px;
  line-height:1.85;
}

.otel-thankyou-hero__status{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.otel-thankyou-hero__status-card{
  background:linear-gradient(180deg, #fbfaf7 0%, #f4efe7 100%);
  border:1px solid rgba(181,134,82,.14);
  border-radius:20px;
  padding:18px;
  box-shadow:0 10px 24px rgba(17,28,45,.04);
}

.otel-thankyou-hero__status-label{
  display:block;
  margin-bottom:6px;
  color:var(--otel-text-soft);
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.05em;
}

.otel-thankyou-hero__status-card strong{
  display:block;
  color:var(--otel-text);
  font-size:18px;
  line-height:1.45;
  font-weight:800;
}

.otel-thankyou-payment-hook{
  margin:0 0 18px;
}

.otel-thankyou-meta{
  margin:0 0 18px;
}

.otel-thankyou-meta__grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:14px;
}

.otel-thankyou-meta__item{
  background:#fff;
  border:1px solid var(--otel-border-soft);
  border-radius:22px;
  padding:18px 20px;
  box-shadow:var(--otel-shadow);
}

.otel-thankyou-meta__item span{
  display:block;
  margin-bottom:8px;
  color:var(--otel-text-soft);
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.otel-thankyou-meta__item strong{
  display:block;
  color:var(--otel-text);
  font-size:17px;
  line-height:1.5;
  font-weight:800;
  word-break:break-word;
}

.otel-thankyou-grid{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) 360px;
  gap:24px;
  align-items:start;
}

.otel-thankyou-main{
  display:flex;
  flex-direction:column;
  gap:18px;
  min-width:0;
}

.otel-thankyou-sidebar{
  display:flex;
  flex-direction:column;
  gap:18px;
  min-width:0;
}

.otel-thankyou-card{
  background:#fff;
  border:1px solid var(--otel-border-soft);
  border-radius:28px;
  padding:26px;
  box-shadow:var(--otel-shadow);
  overflow:hidden;
}

.otel-thankyou-card--side{
  padding:22px;
}

.otel-thankyou-card--failed{
  display:grid;
  grid-template-columns:78px minmax(0,1fr);
  gap:18px;
  align-items:flex-start;
  background:#fff7f7;
  border-color:rgba(179,61,61,.14);
}

.otel-thankyou-card__icon{
  width:78px;
  height:78px;
  border-radius:50%;
  background:#b33d3d;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:32px;
  font-weight:800;
}

.otel-thankyou-card__head{
  margin-bottom:16px;
}

.otel-thankyou-card__kicker,
.otel-thankyou-card__eyebrow{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 14px;
  border-radius:999px;
  background:rgba(181,134,82,.12);
  color:var(--otel-primary-dark);
  font-size:12px;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
  margin-bottom:12px;
}

.otel-thankyou-card__head h2,
.otel-thankyou-card__head h3,
.otel-thankyou-card__content h1{
  margin:0;
  color:var(--otel-text);
  font-size:30px;
  line-height:1.1;
  letter-spacing:-.6px;
  font-weight:800;
}

.otel-thankyou-card__content p,
.otel-thankyou-card p{
  margin:0;
  color:var(--otel-text-soft);
  font-size:15px;
  line-height:1.78;
}

.otel-thankyou-summary,
.otel-thankyou-info-list{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.otel-thankyou-summary__row,
.otel-thankyou-info-list__item,
.otel-thankyou-side__item{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
  padding:15px 16px;
  background:#faf8f4;
  border:1px solid var(--otel-border);
  border-radius:18px;
}

.otel-thankyou-summary__row span,
.otel-thankyou-info-list__item span,
.otel-thankyou-side__item span{
  color:var(--otel-text-soft);
  font-size:14px;
  line-height:1.65;
  font-weight:700;
}

.otel-thankyou-summary__row strong,
.otel-thankyou-info-list__item strong,
.otel-thankyou-side__item strong{
  color:var(--otel-text);
  font-size:15px;
  line-height:1.65;
  font-weight:800;
  text-align:right;
  word-break:break-word;
}

.otel-thankyou-summary__row--total,
.otel-thankyou-info-list__item--total{
  background:linear-gradient(180deg, #fbfaf7 0%, #f4efe7 100%);
  border-color:rgba(181,134,82,.18);
}

.otel-thankyou-billing{
  display:flex;
  flex-direction:column;
  gap:16px;
}

.otel-thankyou-billing__top{
  padding:16px 18px;
  background:#faf8f4;
  border:1px solid var(--otel-border);
  border-radius:18px;
}

.otel-thankyou-billing__top strong{
  display:block;
  color:var(--otel-text);
  font-size:18px;
  line-height:1.5;
  font-weight:800;
}

.otel-thankyou-billing__address{
  padding:18px;
  background:#fff;
  border:1px solid var(--otel-border);
  border-radius:18px;
  color:var(--otel-text-soft);
  font-size:15px;
  line-height:1.85;
}

.otel-thankyou-billing__address strong{
  color:var(--otel-text);
}

.otel-thankyou-billing__meta{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:12px;
}

.otel-thankyou-billing__meta-item{
  padding:14px 16px;
  background:#faf8f4;
  border:1px solid var(--otel-border);
  border-radius:18px;
}

.otel-thankyou-billing__meta-item span{
  display:block;
  margin-bottom:6px;
  color:var(--otel-text-soft);
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.05em;
}

.otel-thankyou-billing__meta-item strong{
  display:block;
  color:var(--otel-text);
  font-size:15px;
  line-height:1.65;
  font-weight:800;
  word-break:break-word;
}

.otel-thankyou-card__actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:18px;
}

.otel-thankyou-card__actions--column{
  flex-direction:column;
}

.otel-thankyou-btn{
  min-height:52px;
  padding:0 24px;
  border-radius:999px;
  background:var(--otel-primary);
  color:#fff;
  border:1px solid var(--otel-primary);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:15px;
  font-weight:700;
  line-height:1;
  text-decoration:none;
  box-shadow:0 10px 24px rgba(181,134,82,.18);
  transition:
    transform var(--otel-transition),
    box-shadow var(--otel-transition),
    background var(--otel-transition),
    border-color var(--otel-transition),
    color var(--otel-transition);
}

.otel-thankyou-btn:hover{
  transform:translateY(-3px);
  background:var(--otel-primary-dark);
  border-color:var(--otel-primary-dark);
  color:#fff;
  box-shadow:0 18px 40px rgba(181,134,82,.28);
}

.otel-thankyou-btn--outline{
  background:#fff;
  color:var(--otel-text);
  border-color:var(--otel-border);
  box-shadow:none;
}

.otel-thankyou-btn--outline:hover{
  background:#fff;
  color:var(--otel-primary-dark);
  border-color:var(--otel-primary-dark);
  box-shadow:0 12px 24px rgba(17,28,45,.08);
}

.otel-thankyou-page .woocommerce-info,
.otel-thankyou-page .woocommerce-message{
  margin:0 !important;
  border:none !important;
  border-radius:18px !important;
  padding:16px 18px 16px 48px !important;
  background:#f5f8fc !important;
  color:#28435f !important;
  box-shadow:none !important;
}

.otel-thankyou-page .woocommerce-info::before,
.otel-thankyou-page .woocommerce-message::before{
  top:16px !important;
  left:18px !important;
}

.otel-thankyou-page table,
.otel-thankyou-page .shop_table,
.otel-thankyou-page .wc-bacs-bank-details-account-name{
  margin-bottom:0 !important;
}

.otel-thankyou-page .wc-bacs-bank-details-account-name{
  display:block;
  margin:0 0 14px !important;
  color:var(--otel-text);
  font-size:18px;
  font-weight:800;
  line-height:1.5;
}

@media (max-width: 1200px){
  .otel-thankyou-hero__inner{
    grid-template-columns:1fr;
  }

  .otel-thankyou-meta__grid{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }

  .otel-thankyou-grid{
    grid-template-columns:1fr;
  }

  .otel-thankyou-page .bacs_details,
  .otel-thankyou-page .wc-bacs-bank-details-order-details{
    grid-template-columns:1fr;
  }
}

@media (max-width: 767px){
  .otel-thankyou-hero__inner,
  .otel-thankyou-card{
    border-radius:20px;
    padding:20px 18px;
  }

  .otel-thankyou-card--side{
    padding:18px 16px;
  }

  .otel-thankyou-hero__content h1{
    font-size:32px;
    line-height:1.08;
  }

  .otel-thankyou-card__head h2,
  .otel-thankyou-card__head h3,
  .otel-thankyou-card__content h1{
    font-size:24px;
    line-height:1.1;
  }

  .otel-thankyou-hero__content p,
  .otel-thankyou-card__content p,
  .otel-thankyou-card p{
    font-size:14px;
    line-height:1.75;
  }

  .otel-thankyou-meta__grid{
    grid-template-columns:1fr;
    gap:10px;
  }

  .otel-thankyou-summary__row,
  .otel-thankyou-info-list__item,
  .otel-thankyou-side__item{
    flex-direction:column;
    gap:6px;
    padding:12px 14px;
    border-radius:14px;
  }

  .otel-thankyou-summary__row strong,
  .otel-thankyou-info-list__item strong,
  .otel-thankyou-side__item strong{
    text-align:left;
  }

  .otel-thankyou-billing__meta{
    grid-template-columns:1fr;
  }

  .otel-thankyou-card__actions{
    gap:10px;
  }

  .otel-thankyou-btn{
    width:100%;
    min-height:52px;
  }

  .otel-thankyou-card--failed{
    grid-template-columns:1fr;
  }

  .otel-thankyou-card__icon{
    width:56px;
    height:56px;
    font-size:24px;
  }
}
/* =========================================================
   OTEL PREMIUM CHECKOUT + THANK YOU POLISH V2
   ========================================================= */

/* CHECKOUT PAGE WRAP */
.otel-checkout{
  padding:18px 0 34px;
}

.otel-checkout--premium .container{
  width:min(var(--otel-container), calc(100% - 40px));
}

.otel-checkout__intro{
  margin-bottom:18px;
}

.otel-checkout__intro--compact{
  background:#fff;
  border:1px solid var(--otel-border-soft);
  border-radius:28px;
  padding:24px 26px;
  box-shadow:var(--otel-shadow);
}

.otel-checkout__eyebrow{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 14px;
  border-radius:999px;
  background:rgba(181,134,82,.12);
  color:var(--otel-primary-dark);
  font-size:12px;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
  margin-bottom:12px;
}

.otel-checkout__heading{
  margin:0 0 10px;
  font-size:clamp(30px, 3.2vw, 48px);
  line-height:1.06;
  letter-spacing:-.9px;
  color:var(--otel-text);
  font-weight:800;
}

.otel-checkout__lead{
  margin:0;
  color:var(--otel-text-soft);
  font-size:16px;
  line-height:1.8;
  max-width:760px;
}

.otel-checkout__grid{
  display:grid;
  grid-template-columns:minmax(0, 1.06fr) 380px;
  gap:22px;
  align-items:start;
}

.otel-checkout__main{
  display:flex;
  flex-direction:column;
  gap:18px;
  min-width:0;
}

.otel-checkout__sidebar{
  min-width:0;
}

.otel-checkout__sticky{
  position:sticky;
  top:108px;
}

.otel-checkout__card{
  background:#fff;
  border:1px solid var(--otel-border-soft);
  border-radius:28px;
  padding:24px;
  box-shadow:var(--otel-shadow);
  overflow:hidden;
}

.otel-checkout__card--summary{
  box-shadow:var(--otel-shadow-strong);
}

.otel-checkout__card-head{
  display:flex;
  align-items:flex-start;
  gap:14px;
  margin-bottom:16px;
}

.otel-checkout__card-step{
  width:44px;
  height:44px;
  min-width:44px;
  border-radius:16px;
  background:linear-gradient(180deg, #fbfaf7 0%, #f4eee6 100%);
  border:1px solid rgba(181,134,82,.16);
  color:var(--otel-primary-dark);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:14px;
  font-weight:800;
  box-shadow:0 8px 18px rgba(17,28,45,.04);
}

.otel-checkout__card-head-text{
  min-width:0;
}

.otel-checkout__title{
  margin:0 0 6px;
  color:var(--otel-text);
  font-size:28px;
  line-height:1.1;
  letter-spacing:-.5px;
  font-weight:800;
}

.otel-checkout__card-head-text p{
  margin:0;
  color:var(--otel-text-soft);
  font-size:14px;
  line-height:1.75;
}

.otel-checkout__card-body{
  min-width:0;
}

/* RESERVATION SUMMARY CARD */
.otel-checkout-reservation-summary{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.otel-checkout-reservation-summary__row{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
  padding:14px 16px;
  border-radius:18px;
  background:#faf8f4;
  border:1px solid var(--otel-border);
}

.otel-checkout-reservation-summary__row span{
  color:var(--otel-text-soft);
  font-size:14px;
  line-height:1.65;
  font-weight:700;
}

.otel-checkout-reservation-summary__row strong{
  color:var(--otel-text);
  font-size:15px;
  line-height:1.65;
  font-weight:800;
  text-align:right;
  word-break:break-word;
}

.otel-checkout-reservation-summary__row--total{
  background:linear-gradient(180deg, #fbfaf7 0%, #f4efe7 100%);
  border-color:rgba(181,134,82,.18);
}

/* BILLING / SHIPPING FIELDS */
.otel-checkout .woocommerce-billing-fields,
.otel-checkout .woocommerce-shipping-fields,
.otel-checkout .woocommerce-additional-fields{
  min-width:0;
}

.otel-checkout .woocommerce-billing-fields h3,
.otel-checkout .woocommerce-shipping-fields h3,
.otel-checkout .woocommerce-additional-fields h3{
  display:none !important;
}

.otel-checkout form .form-row{
  margin:0 0 14px;
  padding:0;
}

.otel-checkout form .form-row label{
  margin:0 0 7px;
  color:var(--otel-text-soft);
  font-size:13px;
  font-weight:700;
}

.otel-checkout form .form-row .required{
  color:#b33d3d;
}

.otel-checkout form .form-row input.input-text,
.otel-checkout form .form-row textarea,
.otel-checkout form .form-row select,
.otel-checkout .select2-container--default .select2-selection--single{
  width:100%;
  border:1px solid var(--otel-border) !important;
  background:#fff !important;
  color:var(--otel-text) !important;
  border-radius:18px !important;
  outline:none !important;
  box-shadow:none !important;
  transition:border-color var(--otel-transition), box-shadow var(--otel-transition), transform var(--otel-transition);
}

.otel-checkout form .form-row input.input-text,
.otel-checkout form .form-row select,
.otel-checkout .select2-container--default .select2-selection--single{
  height:54px !important;
  padding:0 16px !important;
}

.otel-checkout form .form-row textarea{
  min-height:124px;
  padding:14px 16px !important;
  resize:vertical;
}

.otel-checkout form .form-row input.input-text:focus,
.otel-checkout form .form-row textarea:focus,
.otel-checkout form .form-row select:focus{
  border-color:rgba(181,134,82,.55) !important;
  box-shadow:0 0 0 4px rgba(181,134,82,.08) !important;
}

.otel-checkout .select2-container--default .select2-selection--single .select2-selection__rendered{
  color:var(--otel-text) !important;
  line-height:52px !important;
  padding-left:0 !important;
  padding-right:24px !important;
}

.otel-checkout .select2-container--default .select2-selection--single .select2-selection__arrow{
  height:52px !important;
  right:10px !important;
}

.otel-checkout .select2-dropdown{
  border:1px solid var(--otel-border) !important;
  border-radius:16px !important;
  overflow:hidden;
  box-shadow:var(--otel-shadow) !important;
}

/* ORDER REVIEW */
.otel-checkout__summary-note{
  display:flex;
  gap:10px;
  align-items:flex-start;
  padding:14px 16px;
  margin-bottom:16px;
  border-radius:18px;
  background:#f7fbf5;
  border:1px solid rgba(72,126,86,.14);
}

.otel-checkout__summary-note-icon{
  width:22px;
  height:22px;
  min-width:22px;
  border-radius:50%;
  background:#2f7a47;
  color:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:12px;
  font-weight:800;
  margin-top:1px;
}

.otel-checkout__summary-note p{
  margin:0;
  color:#355b43;
  font-size:13px;
  line-height:1.7;
}

.otel-checkout #order_review_heading{
  display:none !important;
}

.otel-checkout #order_review{
  background:transparent !important;
  border:none !important;
  padding:0 !important;
  margin:0 !important;
  box-shadow:none !important;
}

.otel-checkout-review-order-table,
.otel-checkout .shop_table.woocommerce-checkout-review-order-table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  margin:0 0 14px !important;
  background:#fff;
  border:1px solid var(--otel-border);
  border-radius:22px;
  overflow:hidden;
  box-shadow:none;
}

.otel-checkout-review-order-table th,
.otel-checkout .shop_table.woocommerce-checkout-review-order-table th{
  background:linear-gradient(180deg, #fbfaf7 0%, #f3eee7 100%);
  color:var(--otel-text);
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.05em;
  padding:16px 14px !important;
  border-bottom:1px solid var(--otel-border) !important;
}

.otel-checkout-review-order-table td,
.otel-checkout .shop_table.woocommerce-checkout-review-order-table td{
  padding:15px 14px !important;
  border-top:1px solid rgba(22,34,53,.06) !important;
  background:#fff;
  color:var(--otel-text);
  font-size:14px;
  line-height:1.7;
  vertical-align:top;
}

.otel-checkout-review-order-table .product-name{
  font-weight:700;
}

.otel-checkout-review-order-table .product-total{
  font-weight:800;
}

.otel-checkout-review-order-table .product-name dl.variation,
.otel-checkout-review-order-table .product-name .wc-item-meta{
  margin-top:8px;
}

.otel-checkout-review-order-table .product-name dl.variation dt,
.otel-checkout-review-order-table .product-name .wc-item-meta li strong{
  color:var(--otel-primary-dark);
  font-weight:800;
}

.otel-checkout-review-order-table .product-name dl.variation dd,
.otel-checkout-review-order-table .product-name .wc-item-meta li{
  color:var(--otel-text-soft);
  font-size:13px;
  line-height:1.7;
}

.otel-checkout-review-order-table tfoot th,
.otel-checkout-review-order-table tfoot td{
  background:#fcfbf8;
  font-size:14px;
}

.otel-checkout-review-order-table tfoot tr.order-total th,
.otel-checkout-review-order-table tfoot tr.order-total td{
  font-size:16px;
  color:var(--otel-text);
  font-weight:800;
}

/* PAYMENT BOX */
.otel-checkout #payment{
  background:#faf8f4 !important;
  border:1px solid var(--otel-border) !important;
  border-radius:22px !important;
  overflow:hidden;
}

.otel-checkout #payment ul.payment_methods{
  border-bottom:1px solid var(--otel-border) !important;
  padding:10px 16px !important;
  margin:0 !important;
}

.otel-checkout #payment ul.payment_methods li{
  margin:0 !important;
  padding:10px 0 !important;
  line-height:1.7;
}

.otel-checkout #payment ul.payment_methods li label{
  color:var(--otel-text);
  font-weight:700;
}

.otel-checkout #payment div.payment_box{
  margin:8px 0 0 !important;
  background:#fff !important;
  color:var(--otel-text-soft) !important;
  border:1px solid var(--otel-border) !important;
  border-radius:16px !important;
  box-shadow:none !important;
}

.otel-checkout #payment div.payment_box::before{
  border-bottom-color:#fff !important;
}

.otel-checkout #payment .place-order{
  padding:16px !important;
  margin:0 !important;
}

.otel-checkout #payment .terms,
.otel-checkout #payment .woocommerce-privacy-policy-text,
.otel-checkout #payment .place-order p{
  color:var(--otel-text-soft);
  font-size:13px;
  line-height:1.7;
}

.otel-checkout #payment .button,
.otel-checkout #payment .button.alt,
.otel-checkout #place_order{
  width:100%;
  min-height:56px;
  border-radius:999px !important;
  background:var(--otel-primary) !important;
  border:1px solid var(--otel-primary) !important;
  color:#fff !important;
  font-size:15px !important;
  font-weight:700 !important;
  box-shadow:0 10px 24px rgba(181,134,82,.18);
}

.otel-checkout #payment .button:hover,
.otel-checkout #payment .button.alt:hover,
.otel-checkout #place_order:hover{
  background:var(--otel-primary-dark) !important;
  border-color:var(--otel-primary-dark) !important;
  box-shadow:0 18px 40px rgba(181,134,82,.28);
}

/* THANK YOU PAGE - TIGHTER */
.otel-thankyou-page{
  padding:0 !important;
}

.otel-thankyou-hero{
  margin:0 0 14px;
}

.otel-thankyou-hero__inner{
  padding:26px 28px;
  gap:18px;
}

.otel-thankyou-payment-hook{
  margin:0 0 14px;
}

.otel-thankyou-meta{
  margin:0 0 14px;
}

.otel-thankyou-meta__grid{
  gap:12px;
}

.otel-thankyou-grid{
  gap:18px;
}

.otel-thankyou-main,
.otel-thankyou-sidebar{
  gap:14px;
}

.otel-thankyou-card{
  padding:20px 22px;
  border-radius:24px;
}

.otel-thankyou-card--side{
  padding:18px 18px;
}

.otel-thankyou-card__head{
  margin-bottom:12px;
}

.otel-thankyou-card__head h2,
.otel-thankyou-card__head h3{
  font-size:24px;
  line-height:1.12;
}

.otel-thankyou-card p{
  font-size:14px;
  line-height:1.72;
}

.otel-thankyou-summary,
.otel-thankyou-info-list{
  gap:8px;
}

.otel-thankyou-summary__row,
.otel-thankyou-info-list__item,
.otel-thankyou-side__item{
  padding:12px 14px;
  border-radius:16px;
}

.otel-thankyou-billing{
  gap:12px;
}

.otel-thankyou-billing__top,
.otel-thankyou-billing__address,
.otel-thankyou-billing__meta-item{
  border-radius:16px;
}

.otel-thankyou-billing__top{
  padding:14px 16px;
}

.otel-thankyou-billing__address{
  padding:16px;
}

.otel-thankyou-billing__meta{
  gap:10px;
}

.otel-thankyou-btn{
  min-height:50px;
}

/* BACS / EFT BLOCK */
.otel-thankyou-payment-hook .woocommerce-info,
.otel-thankyou-payment-hook .woocommerce-message{
  margin-bottom:14px !important;
}

.otel-thankyou-page .wc-bacs-bank-details,
.otel-thankyou-page .woocommerce-bacs-bank-details{
  margin:0 !important;
  padding:0 !important;
}

.otel-thankyou-page .wc-bacs-bank-details-heading,
.otel-thankyou-page .woocommerce-bacs-bank-details-heading{
  margin:0 0 14px !important;
  color:var(--otel-text) !important;
  font-size:22px !important;
  font-weight:800 !important;
  line-height:1.15 !important;
}

.otel-thankyou-page .wc-bacs-bank-details-account-name{
  display:block;
  margin:0 0 12px !important;
  color:var(--otel-text);
  font-size:17px;
  line-height:1.5;
  font-weight:800;
}

.otel-thankyou-page .bacs_details,
.otel-thankyou-page .wc-bacs-bank-details-order-details{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:10px;
}

.otel-thankyou-page .bacs_details li,
.otel-thankyou-page .wc-bacs-bank-details-order-details li{
  margin:0;
  padding:14px 16px;
  background:#faf8f4;
  border:1px solid var(--otel-border);
  border-radius:16px;
  color:var(--otel-text-soft);
  font-size:13px;
  line-height:1.65;
}

.otel-thankyou-page .bacs_details li strong,
.otel-thankyou-page .wc-bacs-bank-details-order-details li strong{
  display:block;
  margin-top:5px;
  color:var(--otel-text);
  font-size:15px;
  line-height:1.5;
  font-weight:800;
  word-break:break-word;
}

/* ACCOUNT / BILLING BLOCK FIX */
.woocommerce form .form-row-first,
.woocommerce form .form-row-last{
  width:48%;
}

.woocommerce form .form-row-wide{
  clear:both;
}

.woocommerce-additional-fields{
  margin-top:0 !important;
}

#customer_details .col-2{
  display:block !important;
}

.otel-checkout .woocommerce-account-fields{
  margin-top:0 !important;
  padding-top:0 !important;
}

.otel-checkout .create-account{
  margin-top:8px;
  padding:14px 16px;
  background:#faf8f4;
  border:1px solid var(--otel-border);
  border-radius:16px;
}

.otel-checkout .create-account > p:first-child{
  margin-top:0;
}

.otel-checkout .create-account > p:last-child{
  margin-bottom:0;
}

/* RESPONSIVE */
@media (max-width: 1200px){
  .otel-checkout__grid{
    grid-template-columns:1fr;
  }

  .otel-checkout__sticky{
    position:static;
  }

  .otel-thankyou-page .bacs_details,
  .otel-thankyou-page .wc-bacs-bank-details-order-details{
    grid-template-columns:1fr;
  }
}

@media (max-width: 767px){
  .otel-checkout{
    padding:10px 0 24px;
  }

  .otel-checkout--premium .container{
    width:min(100% - 24px, var(--otel-container));
  }

  .otel-checkout__intro--compact,
  .otel-checkout__card{
    border-radius:20px;
    padding:18px 16px;
  }

  .otel-checkout__heading{
    font-size:30px;
    line-height:1.08;
  }

  .otel-checkout__lead{
    font-size:14px;
    line-height:1.72;
  }

  .otel-checkout__card-head{
    gap:12px;
    margin-bottom:14px;
  }

  .otel-checkout__card-step{
    width:40px;
    height:40px;
    min-width:40px;
    border-radius:14px;
    font-size:13px;
  }

  .otel-checkout__title{
    font-size:22px;
    line-height:1.12;
  }

  .otel-checkout__card-head-text p{
    font-size:13px;
  }

  .otel-checkout-reservation-summary__row{
    flex-direction:column;
    gap:6px;
    padding:12px 14px;
    border-radius:14px;
  }

  .otel-checkout-reservation-summary__row strong{
    text-align:left;
  }

  .otel-checkout form .form-row input.input-text,
  .otel-checkout form .form-row select,
  .otel-checkout .select2-container--default .select2-selection--single{
    height:52px !important;
  }

  .otel-checkout .select2-container--default .select2-selection--single .select2-selection__rendered{
    line-height:50px !important;
  }

  .otel-checkout .select2-container--default .select2-selection--single .select2-selection__arrow{
    height:50px !important;
  }

  .otel-checkout-review-order-table th,
  .otel-checkout-review-order-table td{
    padding:13px 12px !important;
  }

  .otel-thankyou-hero__inner,
  .otel-thankyou-card{
    padding:18px 16px;
    border-radius:20px;
  }

  .otel-thankyou-meta__grid{
    grid-template-columns:1fr;
  }

  .otel-thankyou-summary__row,
  .otel-thankyou-info-list__item,
  .otel-thankyou-side__item{
    flex-direction:column;
    gap:6px;
  }

  .otel-thankyou-summary__row strong,
  .otel-thankyou-info-list__item strong,
  .otel-thankyou-side__item strong{
    text-align:left;
  }

  .otel-thankyou-billing__meta{
    grid-template-columns:1fr;
  }

  .otel-thankyou-page .bacs_details,
  .otel-thankyou-page .wc-bacs-bank-details-order-details{
    grid-template-columns:1fr;
  }

  .otel-thankyou-btn{
    width:100%;
  }
}
/* =========================
   OTEL HEADER LOGO FIX
========================= */

.otel-brand-logo {
    height: 80px !important;
    width: auto !important;
    max-height: 90px !important;
    object-fit: contain;
}

/* Header büyüt */
.otel-header {
    min-height: 90px !important;
    display: flex;
    align-items: center;
}

.otel-header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
@media (max-width: 768px) {
    .otel-brand-logo {
        height: 55px !important;
    }

    .otel-header {
        min-height: 70px !important;
    }
}
.otel-header {
    box-shadow: 0 10px 30px rgba(0,0,0,0.05);
    background: #fff;
}
/* =========================================
   OTEL HEADER CLEAN FIX
========================================= */

.otel-header{
  background:#fff !important;
  border-bottom:1px solid rgba(22,34,53,.08);
  box-shadow:0 6px 18px rgba(17,28,45,.04);
}

.otel-header .container{
  width:min(1360px, calc(100% - 40px));
}

.otel-header-inner{
  min-height:92px !important;
  display:grid !important;
  grid-template-columns:auto 1fr auto !important;
  align-items:center !important;
  gap:22px !important;
}

.otel-brand{
  display:flex !important;
  align-items:center !important;
  min-width:0;
}

.otel-brand-logo{
  display:block !important;
  height:68px !important;
  width:auto !important;
  max-width:240px !important;
  object-fit:contain !important;
}

.otel-nav{
  display:flex !important;
  justify-content:center !important;
  min-width:0;
}

.otel-nav .menu,
.otel-nav .otel-menu,
.otel-nav ul{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex-wrap:nowrap !important;
  gap:24px !important;
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}

.otel-nav li{
  margin:0 !important;
  padding:0 !important;
}

.otel-nav a{
  font-size:15px !important;
  font-weight:700 !important;
  color:#162235 !important;
  white-space:nowrap !important;
}

.otel-top-actions{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
}

.otel-header-cta{
  min-height:54px !important;
  padding:0 26px !important;
  border-radius:999px !important;
  background:#b58652 !important;
  border:1px solid #b58652 !important;
  color:#fff !important;
  font-size:16px !important;
  font-weight:800 !important;
  box-shadow:0 10px 24px rgba(181,134,82,.18);
}

.otel-header-cta:hover{
  background:#9a7043 !important;
  border-color:#9a7043 !important;
  color:#fff !important;
}

@media (max-width: 1199px){
  .otel-header-inner{
    gap:16px !important;
  }

  .otel-brand-logo{
    height:58px !important;
    max-width:200px !important;
  }

  .otel-nav .menu,
  .otel-nav .otel-menu,
  .otel-nav ul{
    gap:16px !important;
  }

  .otel-nav a{
    font-size:14px !important;
  }

  .otel-header-cta{
    padding:0 22px !important;
    font-size:15px !important;
  }
}

@media (max-width: 991px){
  .otel-header-inner{
    grid-template-columns:1fr auto !important;
    min-height:78px !important;
  }

  .otel-brand-logo{
    height:52px !important;
    max-width:180px !important;
  }

  .otel-nav{
    grid-column:1 / -1;
    display:none !important;
    width:100%;
    padding-top:8px;
  }

  .otel-nav.is-open{
    display:flex !important;
  }

  .otel-nav .menu,
  .otel-nav .otel-menu,
  .otel-nav ul{
    width:100%;
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:10px !important;
    padding:16px !important;
    border-radius:16px;
    background:#fff;
    border:1px solid rgba(22,34,53,.08);
    box-shadow:0 12px 28px rgba(17,28,45,.08);
  }

  .otel-header-cta{
    display:none !important;
  }
}
/* ===============================
   GALLERY VARIATION 3 (MASONRY)
================================= */

.gallery--v3 .otel-gallery-masonry{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(260px,1fr));
    gap:16px;
}

.gallery--v3 .otel-gallery-item{
    position:relative;
    display:block;
    overflow:hidden;
    border-radius:18px;
}

.gallery--v3 .otel-gallery-item__media img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:transform .4s ease;
}

.gallery--v3 .otel-gallery-item__overlay{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.35);
    display:flex;
    align-items:center;
    justify-content:center;
    opacity:0;
    transition:.3s ease;
}

.gallery--v3 .otel-gallery-item__overlay span{
    color:#fff;
    font-weight:600;
    font-size:14px;
    letter-spacing:.04em;
}

.gallery--v3 .otel-gallery-item:hover img{
    transform:scale(1.08);
}

.gallery--v3 .otel-gallery-item:hover .otel-gallery-item__overlay{
    opacity:1;
}
/* ===============================
   REVIEWS VARIATION 2
================================= */

.reviews--v2 .otel-reviews-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:20px;
}

.otel-review-box{
    background:#fff;
    padding:24px;
    border-radius:20px;
    border:1px solid rgba(0,0,0,.05);
    transition:.25s ease;
}

.otel-review-box:hover{
    transform:translateY(-6px);
    box-shadow:0 20px 40px rgba(0,0,0,.08);
}

.otel-review-box p{
    font-size:15px;
    line-height:1.7;
    color:#555;
}

.otel-review-box strong{
    display:block;
    margin-top:12px;
    font-weight:700;
}
/* ===============================
   FOOTER VARIATION 2
================================= */

.site-footer--v2{
    background:var(--otel-footer-bg, #0f1b2d);
    color:var(--otel-footer-text, #d8e1ec);
    padding:80px 0 26px;
}

.site-footer--v2 .site-footer-v2__top{
    display:grid;
    grid-template-columns:1.4fr 1fr 1fr;
    gap:28px;
    padding-bottom:28px;
    border-bottom:1px solid rgba(255,255,255,.10);
}

.site-footer--v2 .site-footer-v2__eyebrow{
    display:inline-block;
    margin-bottom:12px;
    font-size:12px;
    font-weight:700;
    letter-spacing:.12em;
    text-transform:uppercase;
    color:rgba(255,255,255,.68);
}

.site-footer--v2 h3,
.site-footer--v2 h4{
    margin:0 0 14px;
    color:var(--otel-footer-title, #ffffff);
}

.site-footer--v2 p,
.site-footer--v2 li,
.site-footer--v2 a,
.site-footer--v2 span{
    color:var(--otel-footer-text, #d8e1ec);
}

.site-footer--v2 .site-footer-v2__links,
.site-footer--v2 .site-footer-v2__contact ul{
    list-style:none;
    margin:0;
    padding:0;
}

.site-footer--v2 .site-footer-v2__links li,
.site-footer--v2 .site-footer-v2__contact li{
    margin-bottom:10px;
}

.site-footer--v2 .site-footer-v2__links a,
.site-footer--v2 .site-footer-v2__contact a{
    text-decoration:none;
    transition:opacity .2s ease, transform .2s ease;
}

.site-footer--v2 .site-footer-v2__links a:hover,
.site-footer--v2 .site-footer-v2__contact a:hover{
    opacity:.8;
}

.site-footer--v2 .site-footer-v2__bottom{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:16px;
    padding-top:22px;
    font-size:14px;
}

@media (max-width: 991px){
    .site-footer--v2 .site-footer-v2__top{
        grid-template-columns:1fr;
    }

    .site-footer--v2 .site-footer-v2__bottom{
        flex-direction:column;
        align-items:flex-start;
    }
}
/* =========================
   HERO 2 - PREMIUM SPLIT SLIDER
========================= */
.otel-hero-2{
    padding:34px 0 42px;
    background:
        radial-gradient(circle at top left, rgba(190,145,89,.10), transparent 24%),
        linear-gradient(135deg, #f4eee6 0%, #ebe1d4 46%, #f7f2ea 100%);
    overflow:hidden;
}

.otel-hero-2__grid{
    display:grid;
    grid-template-columns:minmax(0, .94fr) minmax(0, 1.06fr);
    gap:34px;
    align-items:start;
}

.otel-hero-2__left{
    padding-top:28px;
    position:relative;
}

.otel-hero-2__content{
    display:none;
    max-width:560px;
    padding:40px 34px;
    border-radius:34px;
    background:
        linear-gradient(145deg, rgba(28,36,49,.96) 0%, rgba(42,51,66,.92) 52%, rgba(33,40,54,.96) 100%);
    border:1px solid rgba(199,154,71,.16);
    box-shadow:
        0 24px 60px rgba(15,23,42,.16),
        inset 0 1px 0 rgba(255,255,255,.04);
    position:relative;
    overflow:hidden;
}

.otel-hero-2__content::before{
    content:"";
    position:absolute;
    inset:0;
    background:
        radial-gradient(circle at top left, rgba(199,154,71,.15), transparent 34%),
        linear-gradient(180deg, transparent 0%, rgba(255,255,255,.02) 100%);
    pointer-events:none;
}

.otel-hero-2__content.is-active{
    display:block;
}

.otel-hero-2__kicker{
    position:relative;
    z-index:2;
    display:inline-flex;
    align-items:center;
    padding:10px 16px;
    border-radius:999px;
    background:rgba(199,154,71,.12);
    color:#e7c690;
    font-size:11px;
    font-weight:800;
    letter-spacing:.16em;
    text-transform:uppercase;
    margin-bottom:18px;
    border:1px solid rgba(199,154,71,.14);
}

.otel-hero-2__content h1{
    position:relative;
    z-index:2;
    margin:0 0 16px;
    color:#ffffff;
    font-size:58px;
    line-height:1.02;
    letter-spacing:-0.05em;
    text-wrap:balance;
}

.otel-hero-2__content p{
    position:relative;
    z-index:2;
    margin:0 0 24px;
    color:rgba(255,255,255,.78);
    font-size:17px;
    line-height:1.78;
    max-width:500px;
}

.otel-hero-2__actions{
    position:relative;
    z-index:2;
    display:flex;
    flex-wrap:wrap;
    gap:12px;
}

.otel-hero-2__meta{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:12px;
    max-width:640px;
    margin-top:16px;
}

.otel-hero-2__meta-item{
    background:rgba(255,255,255,.90);
    border:1px solid rgba(190,145,89,.10);
    border-radius:20px;
    padding:16px 16px 14px;
    box-shadow:0 12px 28px rgba(20,28,40,.05);
}

.otel-hero-2__meta-item strong{
    display:block;
    margin-bottom:4px;
    color:var(--otel-text);
    font-size:18px;
    font-weight:800;
    line-height:1.1;
}

.otel-hero-2__meta-item span{
    display:block;
    color:var(--otel-text-soft);
    font-size:13px;
    font-weight:600;
}

.otel-hero-2__right{
    padding-top:0;
}

.otel-hero-2__visual{
    position:relative;
    max-width:760px;
    margin-left:auto;
    transform:translateY(-18px);
}

.otel-hero-2__image-wrap{
    display:none;
    overflow:hidden;
    border-radius:36px;
    box-shadow:0 26px 60px rgba(18,30,44,.14);
}

.otel-hero-2__image-wrap.is-active{
    display:block;
}

.otel-hero-2__image-wrap img{
    width:100%;
    height:500px;
    object-fit:cover;
    display:block;
}

.otel-hero-2__floating-card{
    position:absolute;
    left:22px;
    bottom:22px;
    width:min(320px, calc(100% - 44px));
    background:rgba(255,255,255,.95);
    border:1px solid rgba(255,255,255,.74);
    border-radius:22px;
    padding:16px 18px;
    box-shadow:0 18px 42px rgba(16,28,44,.14);
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
}

.otel-hero-2__floating-card span{
    display:block;
    margin-bottom:8px;
    color:var(--otel-primary);
    font-size:11px;
    font-weight:800;
    letter-spacing:.14em;
    text-transform:uppercase;
}

.otel-hero-2__floating-card strong{
    display:block;
    color:var(--otel-text);
    font-size:16px;
    line-height:1.45;
    font-weight:800;
}

.otel-hero-2__dots{
    display:flex;
    justify-content:flex-end;
    gap:10px;
    margin-top:14px;
    padding-right:6px;
}

.otel-hero-2__dot{
    width:10px;
    height:10px;
    border:0;
    border-radius:999px;
    background:rgba(15,39,71,.22);
    cursor:pointer;
    transition:.2s ease;
}

.otel-hero-2__dot.is-active{
    width:28px;
    background:var(--otel-primary);
}

@media (max-width: 1199px){
    .otel-hero-2__content h1{
        font-size:50px;
    }

    .otel-hero-2__image-wrap img{
        height:460px;
    }
}

@media (max-width: 991px){
    .otel-hero-2{
        padding:30px 0 36px;
    }

    .otel-hero-2__grid{
        grid-template-columns:1fr;
        gap:24px;
    }

    .otel-hero-2__left{
        padding-top:0;
    }

    .otel-hero-2__visual{
        max-width:none;
        margin-left:0;
        transform:none;
    }

    .otel-hero-2__content{
        max-width:none;
        padding:30px 24px;
    }

    .otel-hero-2__content h1{
        font-size:42px;
    }

    .otel-hero-2__meta{
        max-width:none;
    }

    .otel-hero-2__image-wrap img{
        height:420px;
    }
}

@media (max-width: 767px){
    .otel-hero-2{
        padding:22px 0 28px;
    }

    .otel-hero-2__content{
        padding:22px 18px;
        border-radius:24px;
    }

    .otel-hero-2__kicker{
        margin-bottom:12px;
        font-size:10px;
        padding:8px 13px;
    }

    .otel-hero-2__content h1{
        font-size:32px;
        line-height:1.08;
        margin-bottom:14px;
    }

    .otel-hero-2__content p{
        font-size:15px;
        line-height:1.66;
        margin-bottom:20px;
    }

    .otel-hero-2__meta{
        grid-template-columns:1fr;
    }

    .otel-hero-2__image-wrap{
        border-radius:24px;
    }

    .otel-hero-2__image-wrap img{
        height:320px;
    }

    .otel-hero-2__floating-card{
        left:14px;
        right:14px;
        bottom:14px;
        width:auto;
        border-radius:18px;
        padding:14px 15px;
    }

    .otel-hero-2__dots{
        justify-content:center;
        padding-right:0;
    }
}
/* =========================
   HERO 2 FADE + ARROWS
========================= */
.otel-hero-2__content{
    opacity:0;
    transform:translateY(14px);
    transition:
        opacity .55s ease,
        transform .55s ease;
    pointer-events:none;
}

.otel-hero-2__content.is-active{
    opacity:1;
    transform:translateY(0);
    pointer-events:auto;
}

.otel-hero-2__visual{
    cursor:grab;
    user-select:none;
    -webkit-user-select:none;
}

.otel-hero-2__visual:active{
    cursor:grabbing;
}

.otel-hero-2__image-wrap{
    display:block;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    position:absolute;
    inset:0;
    transition:
        opacity .7s ease,
        visibility .7s ease,
        transform .7s ease;
    transform:scale(1.02);
}

.otel-hero-2__image-wrap.is-active{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    position:relative;
    transform:scale(1);
}

.otel-hero-2__visual{
    min-height:500px;
}

.otel-hero-2__arrow{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    z-index:5;
    width:46px;
    height:46px;
    border:1px solid rgba(255,255,255,.56);
    border-radius:999px;
    background:rgba(255,255,255,.16);
    color:#fff;
    font-size:24px;
    line-height:1;
    cursor:pointer;
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
    box-shadow:0 12px 30px rgba(0,0,0,.12);
    transition:.2s ease;
}

.otel-hero-2__arrow:hover{
    background:rgba(255,255,255,.24);
    transform:translateY(-50%) scale(1.04);
}

.otel-hero-2__arrow--prev{
    left:16px;
}

.otel-hero-2__arrow--next{
    right:16px;
}

@media (max-width: 991px){
    .otel-hero-2__visual{
        min-height:420px;
    }
}

@media (max-width: 767px){
    .otel-hero-2__visual{
        min-height:320px;
    }

    .otel-hero-2__arrow{
        width:40px;
        height:40px;
        font-size:20px;
    }

    .otel-hero-2__arrow--prev{
        left:10px;
    }

    .otel-hero-2__arrow--next{
        right:10px;
    }
}
/* =========================================================
   HERO 3 / CINEMATIC LUXURY
========================================================= */
.otel-hero-3{
  --hero3-height:100vh;
  --hero3-min-height:720px;
  --hero3-overlay-1:rgba(9,12,18,.68);
  --hero3-overlay-2:rgba(9,12,18,.28);
  --hero3-overlay-3:rgba(0,0,0,.18);
  --hero3-text:#ffffff;
  --hero3-text-soft:rgba(255,255,255,.82);
  --hero3-border:rgba(255,255,255,.18);
  --hero3-glass:rgba(255,255,255,.07);
  --hero3-shadow:0 30px 80px rgba(0,0,0,.28);
  --hero3-radius:28px;
  --hero3-accent:var(--otel-primary, #b58652);
  position:relative;
  min-height:var(--hero3-min-height);
  height:var(--hero3-height);
  color:var(--hero3-text);
  overflow:hidden;
  isolation:isolate;
  background:#0f1621;
}

.otel-hero-3__bg-layers,
.otel-hero-3__bg-layer,
.otel-hero-3__overlay,
.otel-hero-3__grain,
.otel-hero-3__glow{
  position:absolute;
  inset:0;
}

.otel-hero-3__bg-layer{
  opacity:0;
  visibility:hidden;
  transform:scale(1.08);
  background-size:cover;
  background-position:center center;
  transition:
    opacity 1.2s ease,
    visibility 1.2s ease,
    transform 8s ease;
  will-change:transform, opacity;
}

.otel-hero-3__bg-layer.is-active{
  opacity:1;
  visibility:visible;
  transform:scale(1);
}

.otel-hero-3__overlay{
  background:
    linear-gradient(180deg, rgba(0,0,0,.45) 0%, rgba(0,0,0,.22) 22%, rgba(0,0,0,.34) 100%),
    radial-gradient(circle at 20% 30%, var(--hero3-overlay-2) 0%, transparent 42%),
    linear-gradient(90deg, var(--hero3-overlay-1) 0%, rgba(9,12,18,.38) 38%, rgba(9,12,18,.18) 62%, var(--hero3-overlay-3) 100%);
  z-index:1;
}

.otel-hero-3__grain{
  z-index:2;
  opacity:.10;
  pointer-events:none;
  background-image:
    radial-gradient(rgba(255,255,255,.22) .7px, transparent .7px);
  background-size:7px 7px;
  mix-blend-mode:soft-light;
}

.otel-hero-3__glow{
  z-index:2;
  pointer-events:none;
  background:
    radial-gradient(circle at 78% 18%, rgba(181,134,82,.18), transparent 24%),
    radial-gradient(circle at 18% 82%, rgba(255,255,255,.07), transparent 25%);
}

.otel-hero-3__inner{
  position:relative;
  z-index:3;
  min-height:100%;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:120px 34px 42px;
}

.otel-hero-3__content-wrap{
  width:min(1380px, 100%);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0, 920px) 1fr;
  gap:40px;
  align-items:end;
}

.otel-hero-3__content{
  position:relative;
  min-height:410px;
}

.otel-hero-3__slide{
  position:absolute;
  inset:0;
  opacity:0;
  visibility:hidden;
  transform:translateY(28px);
  transition:
    opacity .75s ease,
    transform .75s ease,
    visibility .75s ease;
  max-width:860px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:28px 0 48px;
}

.otel-hero-3__slide.is-active{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}

.otel-hero-3__kicker{
  display:inline-flex;
  align-items:center;
  gap:12px;
  margin-bottom:20px;
  font-size:13px;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:rgba(255,255,255,.92);
  font-weight:600;
}

.otel-hero-3__kicker span{
  width:42px;
  height:1px;
  background:linear-gradient(90deg, var(--hero3-accent), rgba(255,255,255,.38));
  display:block;
}

.otel-hero-3__title{
  margin:0;
  font-size:clamp(40px, 6vw, 82px);
  line-height:1.02;
  letter-spacing:-0.03em;
  font-weight:500;
  color:#fff;
  text-shadow:0 8px 30px rgba(0,0,0,.22);
  max-width:13ch;
}

.otel-hero-3__text{
  margin-top:22px;
  max-width:700px;
}

.otel-hero-3__text p{
  margin:0;
  font-size:clamp(16px, 1.2vw, 20px);
  line-height:1.85;
  color:var(--hero3-text-soft);
}

.otel-hero-3__actions{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:34px;
}

.otel-hero-3__btn{
  min-height:56px;
  padding:0 26px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  font-weight:600;
  font-size:15px;
  letter-spacing:.02em;
  transition:
    transform .25s ease,
    background-color .25s ease,
    border-color .25s ease,
    color .25s ease,
    box-shadow .25s ease;
}

.otel-hero-3__btn:hover{
  transform:translateY(-2px);
}

.otel-hero-3__btn--primary{
  background:var(--hero3-accent);
  color:#fff;
  box-shadow:0 14px 35px rgba(181,134,82,.28);
}

.otel-hero-3__btn--primary:hover{
  color:#fff;
  box-shadow:0 18px 45px rgba(181,134,82,.34);
}

.otel-hero-3__btn--secondary{
  background:rgba(255,255,255,.08);
  color:#fff;
  border:1px solid var(--hero3-border);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

.otel-hero-3__btn--secondary:hover{
  color:#fff;
  background:rgba(255,255,255,.14);
  border-color:rgba(255,255,255,.28);
}

.otel-hero-3__meta{
  justify-self:end;
  align-self:end;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:18px;
  padding-bottom:34px;
}

.otel-hero-3__meta-line{
  width:1px;
  height:110px;
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.65), rgba(255,255,255,.08));
}

.otel-hero-3__meta-text{
  writing-mode:vertical-rl;
  transform:rotate(180deg);
  font-size:12px;
  letter-spacing:.30em;
  text-transform:uppercase;
  color:rgba(255,255,255,.70);
}

.otel-hero-3__controls{
  width:min(1380px, 100%);
  margin:8px auto 0;
  display:grid;
  grid-template-columns:64px 1fr 64px;
  gap:18px;
  align-items:center;
  position:relative;
  z-index:5;
}

.otel-hero-3__arrow{
  width:64px;
  height:64px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.06);
  color:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  transition:
    transform .25s ease,
    background-color .25s ease,
    border-color .25s ease;
  position:relative;
  z-index:6;
}

.otel-hero-3__arrow span{
  font-size:22px;
  line-height:1;
}

.otel-hero-3__arrow:hover{
  transform:translateY(-2px);
  background:rgba(255,255,255,.12);
  border-color:rgba(255,255,255,.28);
}

.otel-hero-3__dots{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(70px, 1fr));
  gap:12px;
}

.otel-hero-3__dot{
  position:relative;
  height:14px;
  border:0;
  padding:0;
  background:transparent;
  cursor:pointer;
}

.otel-hero-3__dot::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:50%;
  height:2px;
  transform:translateY(-50%);
  background:rgba(255,255,255,.20);
  border-radius:999px;
}

.otel-hero-3__dot-bar{
  position:absolute;
  left:0;
  top:50%;
  transform:translateY(-50%);
  height:2px;
  width:0;
  border-radius:999px;
  background:linear-gradient(90deg, #fff, var(--hero3-accent));
  transition:width .35s ease;
}

.otel-hero-3__dot.is-active .otel-hero-3__dot-bar{
  width:100%;
}

.otel-hero-3__scroll,
.otel-hero-3__scroll-text,
.otel-hero-3__scroll-line{
  display:none !important;
}

@media (max-width: 1200px){
  .otel-hero-3__content-wrap{
    grid-template-columns:1fr;
  }

  .otel-hero-3__meta{
    display:none;
  }

  .otel-hero-3__content{
    min-height:340px;
  }

  .otel-hero-3__slide{
    max-width:100%;
    padding:18px 0;
  }

  .otel-hero-3__title{
    max-width:12ch;
  }

  .otel-hero-3__text{
    max-width:620px;
  }
}

@media (max-width: 991px){
  .otel-hero-3{
    min-height:660px;
    height:auto;
  }

  .otel-hero-3__inner{
    padding:110px 22px 28px;
    min-height:660px;
  }

  .otel-hero-3__content{
    min-height:320px;
  }

  .otel-hero-3__slide{
    max-width:100%;
    padding:18px 0;
  }

  .otel-hero-3__title{
    max-width:12ch;
    font-size:clamp(34px, 8vw, 58px);
  }

  .otel-hero-3__text p{
    font-size:16px;
    line-height:1.8;
  }

  .otel-hero-3__controls{
    grid-template-columns:54px 1fr 54px;
    gap:12px;
    margin-top:12px;
  }

  .otel-hero-3__arrow{
    width:54px;
    height:54px;
  }
}

@media (max-width: 767px){
  .otel-hero-3{
    min-height:600px;
  }

  .otel-hero-3__inner{
    min-height:600px;
    padding:95px 16px 22px;
  }

  .otel-hero-3__content{
    min-height:290px;
  }

  .otel-hero-3__kicker{
    margin-bottom:14px;
    font-size:11px;
    letter-spacing:.20em;
  }

  .otel-hero-3__kicker span{
    width:28px;
  }

  .otel-hero-3__title{
    font-size:clamp(28px, 9vw, 44px);
    line-height:1.05;
    max-width:100%;
  }

  .otel-hero-3__text{
    margin-top:16px;
    max-width:100%;
  }

  .otel-hero-3__text p{
    font-size:14.5px;
    line-height:1.72;
  }

  .otel-hero-3__actions{
    margin-top:24px;
    gap:10px;
  }

  .otel-hero-3__btn{
    min-height:50px;
    padding:0 18px;
    font-size:14px;
  }

  .otel-hero-3__controls{
    grid-template-columns:46px 1fr 46px;
  }

  .otel-hero-3__arrow{
    width:46px;
    height:46px;
  }

  .otel-hero-3__arrow span{
    font-size:18px;
  }

  .otel-hero-3__dots{
    gap:8px;
    grid-template-columns:repeat(auto-fit, minmax(36px, 1fr));
  }
}
/* HERO 3 DESKTOP FINE TUNE */
.otel-hero-3__content-wrap{
  grid-template-columns:minmax(0, 1020px) 1fr;
}

.otel-hero-3__content{
  min-height:450px;
}

.otel-hero-3__slide{
  max-width:920px;
  padding:18px 0 78px;
}

.otel-hero-3__title{
  max-width:15ch;
}

.otel-hero-3__text{
  max-width:760px;
}

@media (max-width: 1200px){
  .otel-hero-3__content-wrap{
    grid-template-columns:1fr;
  }

  .otel-hero-3__slide{
    max-width:100%;
    padding:18px 0;
  }

  .otel-hero-3__title{
    max-width:12ch;
  }

  .otel-hero-3__text{
    max-width:620px;
  }
}

@media (max-width: 767px){
  .otel-hero-3__title{
    max-width:100%;
  }

  .otel-hero-3__text{
    max-width:100%;
  }
}
/* =========================================================
   HERO 4 / MODERN CARD LAYOUT
========================================================= */
.otel-hero-4{
  --hero4-text:#ffffff;
  --hero4-text-soft:rgba(255,255,255,.82);
  --hero4-border:rgba(255,255,255,.16);
  --hero4-glass:rgba(255,255,255,.08);
  --hero4-glass-strong:rgba(255,255,255,.12);
  --hero4-shadow:0 30px 80px rgba(0,0,0,.24);
  --hero4-accent:var(--otel-primary, #b58652);
  position:relative;
  min-height:760px;
  color:var(--hero4-text);
  overflow:hidden;
  background:#101722;
  isolation:isolate;
}

.otel-hero-4__bg-wrap,
.otel-hero-4__bg,
.otel-hero-4__overlay{
  position:absolute;
  inset:0;
}

.otel-hero-4__bg{
  opacity:0;
  visibility:hidden;
  transform:scale(1.06);
  background-size:cover;
  background-position:center center;
  transition:
    opacity .9s ease,
    visibility .9s ease,
    transform 7s ease;
}

.otel-hero-4__bg.is-active{
  opacity:1;
  visibility:visible;
  transform:scale(1);
}

.otel-hero-4__overlay{
  background:
    linear-gradient(90deg, rgba(12,18,28,.82) 0%, rgba(12,18,28,.54) 32%, rgba(12,18,28,.18) 58%, rgba(12,18,28,.18) 100%),
    linear-gradient(180deg, rgba(0,0,0,.18) 0%, rgba(0,0,0,.36) 100%);
  z-index:1;
}

.otel-hero-4__inner{
  position:relative;
  z-index:2;
  min-height:760px;
  display:flex;
  align-items:center;
  padding:110px 28px 42px;
}

.otel-hero-4__shell{
  width:min(1380px, 100%);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0, 760px) minmax(320px, 420px);
  gap:40px;
  align-items:center;
}

.otel-hero-4__left{
  position:relative;
  min-height:420px;
}

.otel-hero-4__slide{
  position:absolute;
  inset:0;
  opacity:0;
  visibility:hidden;
  transform:translateY(22px);
  transition:
    opacity .7s ease,
    transform .7s ease,
    visibility .7s ease;
  max-width:740px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.otel-hero-4__slide.is-active{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}

.otel-hero-4__kicker{
  display:inline-flex;
  align-items:center;
  width:max-content;
  min-height:36px;
  padding:0 14px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.08);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  font-size:12px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(255,255,255,.92);
  margin-bottom:20px;
}

.otel-hero-4__title{
  margin:0;
  font-size:clamp(40px, 5.5vw, 78px);
  line-height:1.02;
  letter-spacing:-0.03em;
  font-weight:500;
  max-width:12ch;
  color:#fff;
}

.otel-hero-4__text{
  margin-top:22px;
  max-width:620px;
}

.otel-hero-4__text p{
  margin:0;
  font-size:clamp(16px, 1.15vw, 20px);
  line-height:1.82;
  color:var(--hero4-text-soft);
}

.otel-hero-4__actions{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:34px;
}

.otel-hero-4__btn{
  min-height:56px;
  padding:0 24px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  font-size:15px;
  font-weight:600;
  letter-spacing:.01em;
  transition:
    transform .25s ease,
    background-color .25s ease,
    color .25s ease,
    border-color .25s ease,
    box-shadow .25s ease;
}

.otel-hero-4__btn:hover{
  transform:translateY(-2px);
}

.otel-hero-4__btn--primary{
  background:var(--hero4-accent);
  color:#fff;
  box-shadow:0 16px 38px rgba(181,134,82,.26);
}

.otel-hero-4__btn--primary:hover{
  color:#fff;
}

.otel-hero-4__btn--secondary{
  background:rgba(255,255,255,.08);
  color:#fff;
  border:1px solid rgba(255,255,255,.16);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}

.otel-hero-4__btn--secondary:hover{
  color:#fff;
  background:rgba(255,255,255,.14);
}

.otel-hero-4__right{
  position:relative;
  min-height:430px;
  display:flex;
  align-items:center;
  justify-content:flex-end;
}

.otel-hero-4__info-group{
  position:absolute;
  inset:0;
  opacity:0;
  visibility:hidden;
  transform:translateY(26px);
  transition:
    opacity .7s ease,
    transform .7s ease,
    visibility .7s ease;
  display:grid;
  align-content:center;
  justify-items:end;
  gap:18px;
}

.otel-hero-4__info-group.is-active{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}

.otel-hero-4__card{
  width:min(100%, 360px);
  border-radius:28px;
  border:1px solid var(--hero4-border);
  background:rgba(17,24,35,.44);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  box-shadow:var(--hero4-shadow);
}

.otel-hero-4__card--main{
  padding:30px 28px;
}

.otel-hero-4__card-label{
  font-size:12px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(255,255,255,.68);
}

.otel-hero-4__card-value{
  margin-top:12px;
  font-size:clamp(28px, 3.2vw, 44px);
  line-height:1.05;
  font-weight:500;
  color:#fff;
}

.otel-hero-4__card-sub{
  margin-top:10px;
  font-size:15px;
  color:rgba(255,255,255,.78);
}

.otel-hero-4__stack{
  width:min(100%, 330px);
  display:grid;
  gap:16px;
}

.otel-hero-4__stack .otel-hero-4__card{
  padding:22px 24px;
}

.otel-hero-4__mini-label{
  font-size:11px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(255,255,255,.64);
}

.otel-hero-4__mini-value{
  margin-top:8px;
  font-size:22px;
  line-height:1.2;
  font-weight:500;
  color:#fff;
}

.otel-hero-4__footer{
  width:min(1380px, 100%);
  margin:26px auto 0;
}

.otel-hero-4__nav{
  display:flex;
  align-items:center;
  gap:18px;
}

.otel-hero-4__arrow{
  width:58px;
  height:58px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.08);
  color:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  transition:
    transform .25s ease,
    background-color .25s ease,
    border-color .25s ease;
}

.otel-hero-4__arrow span{
  font-size:20px;
  line-height:1;
}

.otel-hero-4__arrow:hover{
  transform:translateY(-2px);
  background:rgba(255,255,255,.12);
  border-color:rgba(255,255,255,.26);
}

.otel-hero-4__dots{
  display:flex;
  align-items:center;
  gap:12px;
}

.otel-hero-4__dot{
  width:46px;
  height:6px;
  border:0;
  border-radius:999px;
  background:rgba(255,255,255,.20);
  cursor:pointer;
  transition:
    width .25s ease,
    background-color .25s ease,
    opacity .25s ease;
}

.otel-hero-4__dot.is-active{
  width:74px;
  background:linear-gradient(90deg, #fff, var(--hero4-accent));
}

@media (max-width: 1200px){
  .otel-hero-4__shell{
    grid-template-columns:1fr;
    gap:26px;
  }

  .otel-hero-4__right{
    justify-content:flex-start;
    min-height:unset;
  }

  .otel-hero-4__info-group{
    position:relative;
    inset:auto;
    justify-items:start;
  }

  .otel-hero-4__left{
    min-height:380px;
  }
}

@media (max-width: 991px){
  .otel-hero-4{
    min-height:680px;
  }

  .otel-hero-4__inner{
    min-height:680px;
    padding:100px 20px 28px;
  }

  .otel-hero-4__left{
    min-height:340px;
  }

  .otel-hero-4__slide{
    max-width:100%;
  }

  .otel-hero-4__title{
    font-size:clamp(34px, 8vw, 58px);
    max-width:12ch;
  }

  .otel-hero-4__text{
    max-width:100%;
  }

  .otel-hero-4__nav{
    gap:12px;
  }

  .otel-hero-4__arrow{
    width:50px;
    height:50px;
  }

  .otel-hero-4__dot{
    width:34px;
  }

  .otel-hero-4__dot.is-active{
    width:58px;
  }
}

@media (max-width: 767px){
  .otel-hero-4{
    min-height:560px;
  }

  .otel-hero-4__inner{
    min-height:560px;
    padding:84px 16px 20px;
    align-items:flex-start;
  }

  .otel-hero-4__shell{
    grid-template-columns:1fr;
    gap:14px;
    align-items:start;
  }

  .otel-hero-4__left{
    min-height:240px;
  }

  .otel-hero-4__slide{
    max-width:100%;
  }

  .otel-hero-4__kicker{
    margin-bottom:12px;
    font-size:10px;
    letter-spacing:.16em;
    min-height:34px;
    padding:0 12px;
  }

  .otel-hero-4__title{
    font-size:clamp(24px, 7vw, 34px);
    line-height:1.08;
    max-width:9ch;
  }

  .otel-hero-4__text{
    margin-top:12px;
    max-width:100%;
  }

  .otel-hero-4__text p{
    font-size:13.5px;
    line-height:1.58;
  }

  .otel-hero-4__actions{
    margin-top:18px;
    gap:10px;
  }

  .otel-hero-4__btn{
    min-height:46px;
    padding:0 16px;
    font-size:13px;
  }

  /* Mobilde sağ kart alanı tamamen gizli */
  .otel-hero-4__right{
    display:none;
  }

  /* Alt kontrol alanı ortalı ve ekrana sığar */
  .otel-hero-4__footer{
    width:100%;
    margin:12px auto 0;
    display:flex;
    justify-content:center;
  }

  .otel-hero-4__nav{
    justify-content:center;
    gap:8px;
  }

  .otel-hero-4__arrow{
    width:40px;
    height:40px;
    flex:0 0 40px;
  }

  .otel-hero-4__arrow span{
    font-size:14px;
  }

  .otel-hero-4__dots{
    gap:6px;
  }

  .otel-hero-4__dot{
    width:20px;
    height:4px;
  }

  .otel-hero-4__dot.is-active{
    width:34px;
  }

  .otel-hero-4__bg{
    background-position:center center;
    background-size:cover;
  }
}
/* =========================================================
   HERO 4 DESKTOP FIX
   Mobili bozmaz, sadece 768px üstünü etkiler
========================================================= */
@media (min-width: 768px){

  .otel-hero-4{
    min-height: 660px;
  }

  .otel-hero-4__inner{
    min-height: 660px;
    padding: 96px 28px 34px;
  }

  .otel-hero-4__shell{
    grid-template-columns: minmax(0, 640px) minmax(280px, 360px);
    gap: 28px;
    align-items: center;
  }

  .otel-hero-4__left{
    min-height: 340px;
  }

  .otel-hero-4__slide{
    max-width: 620px;
  }

  .otel-hero-4__title{
    font-size: clamp(34px, 4.2vw, 60px);
    line-height: 1.04;
    max-width: 10ch;
  }

  .otel-hero-4__text{
    margin-top: 16px;
    max-width: 540px;
  }

  .otel-hero-4__text p{
    font-size: 16px;
    line-height: 1.68;
  }

  .otel-hero-4__actions{
    margin-top: 24px;
    gap: 12px;
  }

  .otel-hero-4__btn{
    min-height: 50px;
    padding: 0 18px;
    font-size: 14px;
  }

  .otel-hero-4__right{
    min-height: 340px;
  }

  .otel-hero-4__info-group{
    gap: 14px;
  }

  .otel-hero-4__card{
    width: min(100%, 300px);
    border-radius: 22px;
  }

  .otel-hero-4__card--main{
    padding: 22px 22px;
  }

  .otel-hero-4__card-label{
    font-size: 11px;
  }

  .otel-hero-4__card-value{
    margin-top: 8px;
    font-size: clamp(24px, 2.4vw, 34px);
  }

  .otel-hero-4__card-sub{
    margin-top: 6px;
    font-size: 14px;
  }

  .otel-hero-4__stack{
    width: min(100%, 280px);
    gap: 12px;
  }

  .otel-hero-4__stack .otel-hero-4__card{
    padding: 16px 18px;
  }

  .otel-hero-4__mini-label{
    font-size: 10px;
  }

  .otel-hero-4__mini-value{
    margin-top: 6px;
    font-size: 18px;
  }

  .otel-hero-4__footer{
    margin-top: 14px;
  }

  .otel-hero-4__nav{
    gap: 12px;
  }

  .otel-hero-4__arrow{
    width: 50px;
    height: 50px;
  }

  .otel-hero-4__arrow span{
    font-size: 17px;
  }

  .otel-hero-4__dot{
    width: 30px;
    height: 5px;
  }

  .otel-hero-4__dot.is-active{
    width: 50px;
  }
}

/* Büyük masaüstünde de fazla büyümesin */
@media (min-width: 1280px){
  .otel-hero-4{
    min-height: 700px;
  }

  .otel-hero-4__inner{
    min-height: 700px;
  }

  .otel-hero-4__title{
    font-size: 64px;
  }
}

/* =========================================================
   HERO 5 / MINIMAL LUXURY FINAL COMPACT
========================================================= */
.otel-hero-5{
  --hero5-text:#ffffff;
  --hero5-text-soft:rgba(255,255,255,.78);
  --hero5-border:rgba(255,255,255,.10);
  --hero5-card:rgba(13,19,28,.18);
  --hero5-card-strong:rgba(13,19,28,.28);
  --hero5-accent:var(--otel-primary, #b58652);
  --hero5-shadow:0 18px 46px rgba(0,0,0,.18);
  position:relative;
  min-height:680px;
  overflow:hidden;
  color:var(--hero5-text);
  isolation:isolate;
  background:#0f1722;
}

.otel-hero-5__media,
.otel-hero-5__overlay,
.otel-hero-5__grain,
.otel-hero-5__glow{
  position:absolute;
  inset:0;
}

.otel-hero-5__media{
  background-size:cover;
  background-position:center center;
  transform:scale(1.01);
}

.otel-hero-5__overlay{
  background:
    linear-gradient(90deg, rgba(10,14,21,.62) 0%, rgba(10,14,21,.28) 34%, rgba(10,14,21,.10) 62%, rgba(10,14,21,.10) 100%),
    linear-gradient(180deg, rgba(0,0,0,.06) 0%, rgba(0,0,0,.18) 100%);
  z-index:1;
}

.otel-hero-5__grain{
  z-index:2;
  opacity:.035;
  background-image:radial-gradient(rgba(255,255,255,.16) .7px, transparent .7px);
  background-size:7px 7px;
  mix-blend-mode:soft-light;
  pointer-events:none;
}

.otel-hero-5__glow{
  z-index:2;
  pointer-events:none;
  background:
    radial-gradient(circle at 18% 28%, rgba(181,134,82,.08), transparent 24%),
    radial-gradient(circle at 82% 18%, rgba(255,255,255,.03), transparent 16%);
}

.otel-hero-5__inner{
  position:relative;
  z-index:3;
  min-height:680px;
  display:flex;
  align-items:center;
  padding:98px 28px 26px;
}

.otel-hero-5__shell{
  width:min(1380px, 100%);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0, 640px) 1fr;
  gap:22px;
  align-items:end;
}

.otel-hero-5__content{
  max-width:640px;
}

.otel-hero-5__content-card{
  width:min(100%, 560px);
  padding:22px 22px 18px;
  border:1px solid var(--hero5-border);
  border-radius:24px;
  background:linear-gradient(180deg, var(--hero5-card) 0%, var(--hero5-card-strong) 100%);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  box-shadow:var(--hero5-shadow);
}

.otel-hero-5__kicker{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 12px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.04);
  font-size:10px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(255,255,255,.88);
}

.otel-hero-5__title{
  margin:16px 0 0;
  font-size:clamp(30px, 4vw, 54px);
  line-height:1.04;
  letter-spacing:-0.03em;
  font-weight:500;
  color:#fff;
  max-width:9ch;
  text-shadow:0 4px 14px rgba(0,0,0,.14);
}

.otel-hero-5__text{
  margin-top:14px;
  max-width:470px;
}

.otel-hero-5__text p{
  margin:0;
  font-size:clamp(14px, .95vw, 17px);
  line-height:1.66;
  color:var(--hero5-text-soft);
}

.otel-hero-5__actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:22px;
}

.otel-hero-5__btn{
  min-height:46px;
  padding:0 18px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  font-size:14px;
  font-weight:600;
  letter-spacing:.01em;
  transition:
    transform .25s ease,
    background-color .25s ease,
    border-color .25s ease,
    color .25s ease,
    box-shadow .25s ease;
}

.otel-hero-5__btn:hover{
  transform:translateY(-2px);
}

.otel-hero-5__btn--primary{
  background:var(--hero5-accent);
  color:#fff;
  box-shadow:0 12px 26px rgba(181,134,82,.18);
}

.otel-hero-5__btn--primary:hover{
  color:#fff;
}

.otel-hero-5__btn--secondary{
  background:rgba(255,255,255,.06);
  color:#fff;
  border:1px solid rgba(255,255,255,.12);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}

.otel-hero-5__btn--secondary:hover{
  color:#fff;
  background:rgba(255,255,255,.10);
}

.otel-hero-5__meta-grid{
  margin-top:18px;
  width:min(100%, 560px);
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:10px;
  padding-top:14px;
  border-top:1px solid rgba(255,255,255,.07);
}

.otel-hero-5__meta-item{
  min-height:72px;
  padding:12px 12px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(17,24,35,.16);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
}

.otel-hero-5__meta-label{
  font-size:9px;
  letter-spacing:.15em;
  text-transform:uppercase;
  color:rgba(255,255,255,.54);
}

.otel-hero-5__meta-value{
  margin-top:6px;
  font-size:15px;
  line-height:1.22;
  font-weight:500;
  color:#fff;
}

.otel-hero-5__side-note{
  align-self:center;
  justify-self:end;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:12px;
  padding-right:6px;
}

.otel-hero-5__side-line{
  width:1px;
  height:84px;
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.42), rgba(255,255,255,.06));
}

.otel-hero-5__side-text{
  writing-mode:vertical-rl;
  transform:rotate(180deg);
  font-size:10px;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:rgba(255,255,255,.56);
}

/* =========================
   1200 altı
========================= */
@media (max-width: 1200px){
  .otel-hero-5{
    min-height:640px;
  }

  .otel-hero-5__inner{
    min-height:640px;
    padding:94px 22px 24px;
  }

  .otel-hero-5__shell{
    grid-template-columns:1fr;
    gap:16px;
  }

  .otel-hero-5__content{
    max-width:100%;
  }

  .otel-hero-5__content-card{
    width:min(100%, 560px);
  }

  .otel-hero-5__side-note{
    display:none;
  }
}

/* =========================
   991 altı
========================= */
@media (max-width: 991px){
  .otel-hero-5{
    min-height:580px;
  }

  .otel-hero-5__inner{
    min-height:580px;
    padding:88px 20px 22px;
    align-items:flex-end;
  }

  .otel-hero-5__content-card{
    width:min(100%, 520px);
    padding:20px 20px 16px;
    border-radius:22px;
  }

  .otel-hero-5__title{
    font-size:clamp(28px, 6vw, 44px);
    max-width:10ch;
  }

  .otel-hero-5__text{
    max-width:100%;
  }

  .otel-hero-5__meta-grid{
    grid-template-columns:1fr;
    gap:8px;
    width:min(100%, 280px);
  }

  .otel-hero-5__meta-item{
    min-height:unset;
  }

  .otel-hero-5__meta-value{
    font-size:14px;
  }
}

/* =========================
   Mobil
========================= */
@media (max-width: 767px){
  .otel-hero-5{
    min-height:500px;
  }

  .otel-hero-5__media{
    background-position:center center;
  }

  .otel-hero-5__overlay{
    background:
      linear-gradient(180deg, rgba(10,14,21,.28) 0%, rgba(10,14,21,.24) 24%, rgba(10,14,21,.50) 100%),
      linear-gradient(90deg, rgba(10,14,21,.48) 0%, rgba(10,14,21,.12) 100%);
  }

  .otel-hero-5__inner{
    min-height:500px;
    padding:78px 16px 16px;
    align-items:flex-end;
  }

  .otel-hero-5__shell{
    gap:0;
  }

  .otel-hero-5__content{
    max-width:100%;
  }

  .otel-hero-5__content-card{
    width:100%;
    max-width:100%;
    padding:18px 16px 14px;
    border-radius:18px;
    background:linear-gradient(180deg, rgba(15,22,32,.14) 0%, rgba(15,22,32,.24) 100%);
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
  }

  .otel-hero-5__kicker{
    min-height:28px;
    padding:0 10px;
    font-size:9px;
    letter-spacing:.13em;
  }

  .otel-hero-5__title{
    margin-top:12px;
    font-size:clamp(24px, 7.4vw, 34px);
    line-height:1.08;
    max-width:9ch;
  }

  .otel-hero-5__text{
    margin-top:10px;
    max-width:100%;
  }

  .otel-hero-5__text p{
    font-size:13px;
    line-height:1.55;
  }

  .otel-hero-5__actions{
    margin-top:16px;
    gap:8px;
  }

  .otel-hero-5__btn{
    min-height:42px;
    padding:0 14px;
    font-size:12px;
  }

  .otel-hero-5__meta-grid{
    margin-top:14px;
    padding-top:12px;
    grid-template-columns:1fr;
    gap:7px;
    width:100%;
    max-width:210px;
  }

  .otel-hero-5__meta-item{
    padding:10px 12px;
    min-height:unset;
    border-radius:12px;
    background:rgba(17,24,35,.14);
  }

  .otel-hero-5__meta-label{
    font-size:8px;
  }

  .otel-hero-5__meta-value{
    margin-top:4px;
    font-size:13px;
  }
}
/* =========================================================
   ROOM 2 / LUXURY EDITORIAL LIST
========================================================= */
.room2-section{
  position:relative;
  padding:96px 0;
  background:transparent;
}

.room2-section-head{
  max-width:820px;
  margin:0 auto 42px;
  text-align:center;
}

.room2-section-head h2{
  margin:0 0 12px;
  font-size:clamp(34px, 4vw, 58px);
  line-height:1.06;
  letter-spacing:-0.03em;
  color:var(--otel-text, #1f2a37);
}

.room2-section-head p{
  margin:0;
  font-size:18px;
  line-height:1.75;
  color:var(--otel-text-soft, #5d728c);
}

.room2-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:28px;
}

.room2-card{
  position:relative;
  display:grid;
  grid-template-columns:minmax(360px, 1.08fr) minmax(320px, .92fr);
  align-items:stretch;
  min-height:360px;
  border:1px solid rgba(31,42,55,.08);
  border-radius:30px;
  overflow:hidden;
  background:linear-gradient(180deg, rgba(255,255,255,.96) 0%, rgba(255,255,255,1) 100%);
  box-shadow:0 18px 48px rgba(15,23,42,.06);
  transition:
    transform .3s ease,
    box-shadow .3s ease,
    border-color .3s ease;
}

.room2-card:hover{
  transform:translateY(-4px);
  border-color:rgba(181,134,82,.28);
  box-shadow:0 28px 68px rgba(15,23,42,.10);
}

.room2-card__media{
  position:relative;
  display:block;
  min-height:100%;
  overflow:hidden;
  background:#e9e3da;
}

.room2-card__media::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(180deg, rgba(0,0,0,.06) 0%, rgba(0,0,0,0) 36%, rgba(0,0,0,.22) 100%),
    linear-gradient(90deg, rgba(0,0,0,.10) 0%, rgba(0,0,0,0) 40%);
  pointer-events:none;
}

.room2-card__media::after{
  content:"Premium Oda";
  position:absolute;
  left:22px;
  bottom:20px;
  z-index:2;
  min-height:34px;
  padding:0 14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  font-size:11px;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#fff;
  background:rgba(15,22,32,.40);
  border:1px solid rgba(255,255,255,.18);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

.room2-card__media img{
  width:100%;
  height:100%;
  min-height:360px;
  object-fit:cover;
  display:block;
  transition:transform .8s ease;
}

.room2-card:hover .room2-card__media img{
  transform:scale(1.045);
}

.room2-card__placeholder{
  width:100%;
  height:100%;
  min-height:360px;
  background:
    linear-gradient(135deg, rgba(181,134,82,.16), rgba(31,42,55,.10));
}

.room2-card__content{
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:34px 34px 30px;
  gap:16px;
  background:
    radial-gradient(circle at top right, rgba(181,134,82,.06), transparent 28%),
    linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(250,248,244,.96) 100%);
}

.room2-card__eyebrow{
  display:block;
  width:max-content;
  min-height:32px;
  padding:0 12px;
  border-radius:999px;
  border:1px solid rgba(181,134,82,.18);
  background:rgba(181,134,82,.08);
  color:var(--otel-primary, #b58652);
  font-size:10px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  line-height:32px;
}

.room2-card__top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}

.room2-card__top h3{
  margin:0;
  font-size:32px;
  line-height:1.08;
  letter-spacing:-0.025em;
}

.room2-card__top h3 a{
  color:var(--otel-text, #1f2a37);
  text-decoration:none;
  transition:color .25s ease;
}

.room2-card__top h3 a:hover{
  color:var(--otel-primary, #b58652);
}

.room2-card__price{
  flex:0 0 auto;
  display:inline-flex;
  flex-direction:column;
  align-items:flex-end;
  justify-content:center;
  min-width:112px;
  min-height:58px;
  padding:10px 16px;
  border-radius:18px;
  background:linear-gradient(180deg, rgba(181,134,82,.14) 0%, rgba(181,134,82,.08) 100%);
  border:1px solid rgba(181,134,82,.18);
  color:var(--otel-primary, #b58652);
  font-size:22px;
  line-height:1;
  font-weight:800;
  white-space:nowrap;
  box-shadow:0 10px 26px rgba(181,134,82,.10);
}

.room2-card__price::after{
  content:"gecelik";
  margin-top:6px;
  font-size:11px;
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:rgba(31,42,55,.58);
}

.room2-card__content p{
  margin:0;
  max-width:540px;
  font-size:16px;
  line-height:1.82;
  color:var(--otel-text-soft, #5d728c);
}

.room2-card__meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.room2-card__meta span{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 14px;
  border-radius:999px;
  border:1px solid rgba(31,42,55,.08);
  background:rgba(248,246,242,.96);
  color:var(--otel-text, #1f2a37);
  font-size:13px;
  font-weight:700;
  letter-spacing:.01em;
}

.room2-card__button{
  margin-top:4px;
  width:max-content;
  min-height:50px;
  padding:0 20px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  font-size:14px;
  font-weight:700;
  color:#fff;
  background:var(--otel-primary, #b58652);
  box-shadow:0 12px 28px rgba(181,134,82,.16);
  transition:
    transform .25s ease,
    box-shadow .25s ease,
    background-color .25s ease;
}

.room2-card__button:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 34px rgba(181,134,82,.22);
  color:#fff;
}

/* =========================
   Büyük ekranlarda 2 sütun
========================= */
@media (min-width: 1280px){
  .room2-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:26px;
  }

  .room2-card{
    grid-template-columns:1fr;
    min-height:unset;
  }

  .room2-card__media img,
  .room2-card__placeholder{
    min-height:290px;
    height:290px;
  }

  .room2-card__content{
    padding:28px 28px 24px;
  }

  .room2-card__top{
    flex-direction:column;
    align-items:flex-start;
    gap:12px;
  }

  .room2-card__top h3{
    font-size:28px;
  }

  .room2-card__price{
    align-items:flex-start;
  }
}

/* =========================
   1200 altı
========================= */
@media (max-width: 1200px){
  .room2-section{
    padding:82px 0;
  }

  .room2-section-head{
    margin-bottom:32px;
  }

  .room2-section-head h2{
    font-size:clamp(30px, 5vw, 48px);
  }

  .room2-section-head p{
    font-size:16px;
  }

  .room2-card{
    grid-template-columns:minmax(320px, 1fr) minmax(280px, .95fr);
    min-height:320px;
  }

  .room2-card__media img,
  .room2-card__placeholder{
    min-height:320px;
  }

  .room2-card__content{
    padding:28px 26px 24px;
  }

  .room2-card__top h3{
    font-size:28px;
  }
}

/* =========================
   991 altı
========================= */
@media (max-width: 991px){
  .room2-card{
    grid-template-columns:1fr;
    min-height:unset;
  }

  .room2-card__media img,
  .room2-card__placeholder{
    min-height:270px;
    height:270px;
  }

  .room2-card__content{
    padding:24px 22px 22px;
  }

  .room2-card__top{
    flex-direction:column;
    align-items:flex-start;
    gap:12px;
  }

  .room2-card__top h3{
    font-size:25px;
  }

  .room2-card__price{
    align-items:flex-start;
    min-height:52px;
    font-size:20px;
  }
}

/* =========================
   Mobil
========================= */
@media (max-width: 767px){
  .room2-section{
    padding:64px 0;
  }

  .room2-section-head{
    margin-bottom:24px;
  }

  .room2-section-head h2{
    font-size:clamp(24px, 8vw, 34px);
  }

  .room2-section-head p{
    font-size:14px;
    line-height:1.7;
  }

  .room2-grid{
    gap:18px;
  }

  .room2-card{
    border-radius:22px;
  }

  .room2-card__media::after{
    left:16px;
    bottom:14px;
    min-height:30px;
    padding:0 12px;
    font-size:10px;
  }

  .room2-card__media img,
  .room2-card__placeholder{
    min-height:220px;
    height:220px;
  }

  .room2-card__content{
    padding:18px 16px 18px;
    gap:12px;
  }

  .room2-card__eyebrow{
    min-height:28px;
    padding:0 10px;
    font-size:9px;
    line-height:28px;
  }

  .room2-card__top h3{
    font-size:22px;
  }

  .room2-card__price{
    min-height:48px;
    padding:8px 14px;
    font-size:18px;
    border-radius:16px;
  }

  .room2-card__price::after{
    font-size:10px;
  }

  .room2-card__content p{
    font-size:14px;
    line-height:1.72;
  }

  .room2-card__meta{
    gap:8px;
  }

  .room2-card__meta span{
    min-height:34px;
    padding:0 12px;
    font-size:12px;
  }

  .room2-card__button{
    min-height:44px;
    padding:0 16px;
    font-size:13px;
  }
}
/* =========================================================
   ROOM 3 / PREMIUM SHOWCASE GRID
========================================================= */
.room3-section{
  position:relative;
  padding:96px 0;
}

.room3-section-head{
  max-width:820px;
  margin:0 auto 40px;
  text-align:center;
}

.room3-section-head h2{
  margin:0 0 12px;
  font-size:clamp(34px, 4vw, 58px);
  line-height:1.06;
  letter-spacing:-0.03em;
  color:var(--otel-text, #1f2a37);
}

.room3-section-head p{
  margin:0;
  font-size:18px;
  line-height:1.75;
  color:var(--otel-text-soft, #5d728c);
}

.room3-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:24px;
  align-items:stretch;
}

.room3-card{
  position:relative;
  min-height:520px;
  border-radius:30px;
  overflow:hidden;
  background:#d9d9d9;
  box-shadow:0 20px 56px rgba(15,23,42,.08);
  transform:translateY(0);
  transition:
    transform .35s ease,
    box-shadow .35s ease,
    border-color .35s ease;
}

.room3-card:hover{
  transform:translateY(-6px);
  box-shadow:0 30px 72px rgba(15,23,42,.14);
}

.room3-card__media{
  position:absolute;
  inset:0;
  display:block;
  overflow:hidden;
}

.room3-card__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .8s ease;
}

.room3-card:hover .room3-card__media img{
  transform:scale(1.06);
}

.room3-card__placeholder{
  width:100%;
  height:100%;
  background:
    linear-gradient(135deg, rgba(181,134,82,.18), rgba(31,42,55,.12));
}

.room3-card__overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(0,0,0,.04) 0%, rgba(0,0,0,.10) 24%, rgba(0,0,0,.62) 100%),
    linear-gradient(90deg, rgba(0,0,0,.12) 0%, rgba(0,0,0,0) 36%);
  z-index:1;
}

.room3-card__content{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  z-index:2;
  padding:24px 22px 22px;
  display:flex;
  flex-direction:column;
  gap:12px;
  transition:transform .35s ease;
}

.room3-card:hover .room3-card__content{
  transform:translateY(-4px);
}

.room3-card__badge{
  width:max-content;
  min-height:32px;
  padding:0 12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(15,22,32,.34);
  color:#fff;
  font-size:10px;
  font-weight:700;
  letter-spacing:.15em;
  text-transform:uppercase;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

.room3-card__content h3{
  margin:0;
  font-size:30px;
  line-height:1.08;
  letter-spacing:-0.025em;
}

.room3-card__content h3 a{
  color:#fff;
  text-decoration:none;
}

.room3-card__content h3 a:hover{
  color:#fff;
  opacity:.92;
}

.room3-card__meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.room3-card__meta span{
  min-height:34px;
  padding:0 12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.12);
  color:#fff;
  font-size:12px;
  font-weight:700;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}

.room3-card__price{
  width:max-content;
  min-height:44px;
  padding:0 16px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:16px;
  background:rgba(181,134,82,.94);
  color:#fff;
  font-size:20px;
  font-weight:800;
  line-height:1;
  box-shadow:0 14px 30px rgba(181,134,82,.22);
}

.room3-card__price::after{
  content:" / gecelik";
  font-size:11px;
  font-weight:600;
  margin-left:4px;
  opacity:.92;
}

.room3-card__button{
  margin-top:2px;
  width:max-content;
  min-height:44px;
  padding:0 16px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.16);
  color:#fff;
  font-size:13px;
  font-weight:700;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  transition:
    transform .25s ease,
    background-color .25s ease,
    border-color .25s ease;
}

.room3-card__button:hover{
  transform:translateY(-2px);
  background:rgba(255,255,255,.18);
  border-color:rgba(255,255,255,.24);
  color:#fff;
}

/* İlk kart biraz daha öne çıksın */
@media (min-width: 1280px){
  .room3-grid{
    grid-template-columns:1.2fr .9fr .9fr;
    gap:24px;
  }

  .room3-card:first-child{
    min-height:560px;
  }

  .room3-card:first-child .room3-card__content h3{
    font-size:34px;
  }

  .room3-card:first-child .room3-card__price{
    font-size:22px;
  }
}

/* =========================
   1200 altı
========================= */
@media (max-width: 1200px){
  .room3-section{
    padding:84px 0;
  }

  .room3-section-head{
    margin-bottom:32px;
  }

  .room3-section-head h2{
    font-size:clamp(30px, 5vw, 48px);
  }

  .room3-section-head p{
    font-size:16px;
  }

  .room3-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:22px;
  }

  .room3-card{
    min-height:480px;
  }

  .room3-card__content h3{
    font-size:27px;
  }
}

/* =========================
   991 altı
========================= */
@media (max-width: 991px){
  .room3-grid{
    grid-template-columns:1fr;
    gap:18px;
  }

  .room3-card{
    min-height:440px;
    border-radius:24px;
  }

  .room3-card__content{
    padding:20px 18px 18px;
  }

  .room3-card__content h3{
    font-size:24px;
  }

  .room3-card__price{
    min-height:40px;
    font-size:18px;
  }
}

/* =========================
   Mobil
========================= */
@media (max-width: 767px){
  .room3-section{
    padding:64px 0;
  }

  .room3-section-head{
    margin-bottom:24px;
  }

  .room3-section-head h2{
    font-size:clamp(24px, 8vw, 34px);
  }

  .room3-section-head p{
    font-size:14px;
    line-height:1.7;
  }

  .room3-card{
    min-height:360px;
    border-radius:22px;
  }

  .room3-card__content{
    padding:16px 14px 14px;
    gap:10px;
  }

  .room3-card__badge{
    min-height:28px;
    padding:0 10px;
    font-size:9px;
  }

  .room3-card__content h3{
    font-size:22px;
  }

  .room3-card__meta{
    gap:6px;
  }

  .room3-card__meta span{
    min-height:30px;
    padding:0 10px;
    font-size:11px;
  }

  .room3-card__price{
    min-height:36px;
    padding:0 12px;
    font-size:16px;
    border-radius:14px;
  }

  .room3-card__price::after{
    font-size:10px;
  }

  .room3-card__button{
    min-height:40px;
    padding:0 14px;
    font-size:12px;
  }
}
.room3-card{
  position:relative;
}

.room3-card__link{
  position:absolute;
  inset:0;
  z-index:2;
  display:block;
}

.room3-card__media{
  position:absolute;
  inset:0;
  z-index:0;
}

.room3-card__overlay{
  z-index:1;
}

.room3-card__content{
  position:absolute;
  z-index:3;
}

.room3-card__content h3 a,
.room3-card__button{
  position:relative;
  z-index:4;
}
/* =========================================================
   RESERVATION 2 / PREMIUM BOOKING PANEL
========================================================= */
.reservation2-section{
  position:relative;
  padding:96px 0;
}

.reservation2-head{
  max-width:760px;
  margin:0 auto 34px;
  text-align:center;
}

.reservation2-head__eyebrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:0 14px;
  border-radius:999px;
  background:rgba(181,134,82,.10);
  border:1px solid rgba(181,134,82,.16);
  color:var(--otel-primary, #b58652);
  font-size:11px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.reservation2-head h2{
  margin:16px 0 12px;
  font-size:clamp(34px, 4vw, 58px);
  line-height:1.06;
  letter-spacing:-0.03em;
  color:var(--otel-text, #1f2a37);
}

.reservation2-head p{
  margin:0;
  font-size:18px;
  line-height:1.75;
  color:var(--otel-text-soft, #5d728c);
}

.reservation2-form{
  max-width:1180px;
  margin:0 auto;
  padding:26px;
  border:1px solid rgba(31,42,55,.08);
  border-radius:30px;
  background:
    radial-gradient(circle at top right, rgba(181,134,82,.06), transparent 24%),
    linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(250,248,244,.96) 100%);
  box-shadow:0 18px 48px rgba(15,23,42,.06);
}

.reservation2-grid{
  display:grid;
  grid-template-columns:repeat(5, minmax(0, 1fr));
  gap:16px;
  align-items:end;
}

.reservation2-field{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.reservation2-field label{
  font-size:12px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:rgba(31,42,55,.70);
}

.reservation2-field select,
.reservation2-field input{
  width:100%;
  min-height:58px;
  padding:0 16px;
  border-radius:18px;
  border:1px solid rgba(31,42,55,.08);
  background:#fff;
  color:var(--otel-text, #1f2a37);
  font-size:15px;
  box-shadow:none;
  outline:none;
  transition:border-color .25s ease, box-shadow .25s ease, transform .25s ease;
}

.reservation2-field select:focus,
.reservation2-field input:focus{
  border-color:rgba(181,134,82,.36);
  box-shadow:0 0 0 4px rgba(181,134,82,.10);
}

.reservation2-action{
  display:flex;
}

.reservation2-button{
  width:100%;
  min-height:58px;
  padding:0 20px;
  border:0;
  border-radius:18px;
  background:var(--otel-primary, #b58652);
  color:#fff;
  font-size:15px;
  font-weight:700;
  cursor:pointer;
  box-shadow:0 14px 30px rgba(181,134,82,.18);
  transition:transform .25s ease, box-shadow .25s ease, opacity .25s ease;
}

.reservation2-button:hover{
  transform:translateY(-2px);
  box-shadow:0 18px 36px rgba(181,134,82,.24);
}

.reservation2-summary{
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid rgba(31,42,55,.08);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  color:var(--otel-text, #1f2a37);
}

.reservation2-summary span{
  font-size:14px;
  font-weight:700;
  color:var(--otel-text-soft, #5d728c);
}

.reservation2-summary strong{
  font-size:18px;
  line-height:1.3;
  color:var(--otel-primary, #b58652);
}

/* =========================
   1200 altı
========================= */
@media (max-width: 1200px){
  .reservation2-section{
    padding:82px 0;
  }

  .reservation2-head h2{
    font-size:clamp(30px, 5vw, 48px);
  }

  .reservation2-head p{
    font-size:16px;
  }

  .reservation2-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .reservation2-action{
    grid-column:1 / -1;
  }
}

/* =========================
   767 altı
========================= */
@media (max-width: 767px){
  .reservation2-section{
    padding:64px 0;
  }

  .reservation2-head{
    margin-bottom:24px;
  }

  .reservation2-head__eyebrow{
    min-height:30px;
    padding:0 12px;
    font-size:10px;
  }

  .reservation2-head h2{
    margin:14px 0 10px;
    font-size:clamp(24px, 8vw, 34px);
  }

  .reservation2-head p{
    font-size:14px;
    line-height:1.7;
  }

  .reservation2-form{
    padding:18px 16px;
    border-radius:22px;
  }

  .reservation2-grid{
    grid-template-columns:1fr;
    gap:12px;
  }

  .reservation2-field label{
    font-size:11px;
  }

  .reservation2-field select,
  .reservation2-field input{
    min-height:52px;
    font-size:14px;
    border-radius:16px;
  }

  .reservation2-button{
    min-height:52px;
    font-size:14px;
    border-radius:16px;
  }

  .reservation2-summary{
    margin-top:14px;
    padding-top:14px;
    flex-direction:column;
    align-items:flex-start;
    gap:6px;
  }

  .reservation2-summary span{
    font-size:13px;
  }

  .reservation2-summary strong{
    font-size:16px;
  }
}
/* =========================================================
   GALLERY 2 / PREMIUM EDITORIAL SHOWCASE
========================================================= */
.gallery2-section{
  position:relative;
  padding:96px 0;
}

.gallery2-head{
  max-width:820px;
  margin:0 auto 38px;
  text-align:center;
}

.gallery2-head__eyebrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:0 14px;
  border-radius:999px;
  background:rgba(181,134,82,.10);
  border:1px solid rgba(181,134,82,.16);
  color:var(--otel-primary, #b58652);
  font-size:11px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.gallery2-head h2{
  margin:16px 0 12px;
  font-size:clamp(34px, 4vw, 58px);
  line-height:1.06;
  letter-spacing:-0.03em;
  color:var(--otel-text, #1f2a37);
}

.gallery2-head p{
  margin:0;
  font-size:18px;
  line-height:1.75;
  color:var(--otel-text-soft, #5d728c);
}

.gallery2-grid{
  display:grid;
  grid-template-columns:repeat(12, minmax(0, 1fr));
  gap:20px;
  align-items:stretch;
}

.gallery2-card{
  position:relative;
  display:block;
  min-height:300px;
  border-radius:28px;
  overflow:hidden;
  grid-column:span 4;
  background:#d8d8d8;
  box-shadow:0 18px 48px rgba(15,23,42,.06);
  transform:translateY(0);
  transition:transform .35s ease, box-shadow .35s ease;
}

.gallery2-card:hover{
  transform:translateY(-6px);
  box-shadow:0 28px 70px rgba(15,23,42,.12);
}

.gallery2-card--featured{
  grid-column:span 6;
  grid-row:span 2;
  min-height:620px;
}

.gallery2-card__media{
  position:absolute;
  inset:0;
  display:block;
}

.gallery2-card__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .9s ease;
}

.gallery2-card:hover .gallery2-card__media img{
  transform:scale(1.05);
}

.gallery2-card__overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(0,0,0,.04) 0%, rgba(0,0,0,.06) 28%, rgba(0,0,0,.48) 100%),
    linear-gradient(90deg, rgba(0,0,0,.10) 0%, rgba(0,0,0,0) 36%);
  z-index:1;
}

.gallery2-card__content{
  position:absolute;
  inset:auto 0 0 0;
  z-index:2;
  padding:20px 20px 18px;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
}

.gallery2-card__badge{
  min-height:34px;
  padding:0 14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:rgba(15,22,32,.34);
  border:1px solid rgba(255,255,255,.16);
  color:#fff;
  font-size:10px;
  font-weight:700;
  letter-spacing:.15em;
  text-transform:uppercase;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

.gallery2-card__icon{
  width:42px;
  height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.16);
  color:#fff;
  font-size:22px;
  line-height:1;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  transition:transform .25s ease, background-color .25s ease, border-color .25s ease;
}

.gallery2-card:hover .gallery2-card__icon{
  transform:scale(1.08);
  background:rgba(255,255,255,.20);
  border-color:rgba(255,255,255,.26);
}

.gallery2-empty{
  padding:36px 28px;
  border-radius:24px;
  border:1px solid rgba(31,42,55,.08);
  background:#fff;
  text-align:center;
  color:var(--otel-text-soft, #5d728c);
  box-shadow:0 16px 36px rgba(15,23,42,.04);
}

@media (max-width: 1200px){
  .gallery2-section{
    padding:84px 0;
  }

  .gallery2-head{
    margin-bottom:32px;
  }

  .gallery2-head h2{
    font-size:clamp(30px, 5vw, 48px);
  }

  .gallery2-head p{
    font-size:16px;
  }

  .gallery2-card{
    grid-column:span 6;
    min-height:280px;
  }

  .gallery2-card--featured{
    grid-column:span 12;
    min-height:480px;
  }
}

@media (max-width: 991px){
  .gallery2-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:16px;
  }

  .gallery2-card,
  .gallery2-card--featured{
    grid-column:auto;
    grid-row:auto;
    min-height:300px;
    border-radius:24px;
  }

  .gallery2-card__content{
    padding:18px 16px 16px;
  }
}

@media (max-width: 767px){
  .gallery2-section{
    padding:64px 0;
  }

  .gallery2-head{
    margin-bottom:24px;
  }

  .gallery2-head__eyebrow{
    min-height:30px;
    padding:0 12px;
    font-size:10px;
  }

  .gallery2-head h2{
    margin:14px 0 10px;
    font-size:clamp(24px, 8vw, 34px);
  }

  .gallery2-head p{
    font-size:14px;
    line-height:1.7;
  }

  .gallery2-grid{
    grid-template-columns:1fr;
    gap:14px;
  }

  .gallery2-card,
  .gallery2-card--featured{
    min-height:240px;
    border-radius:22px;
  }

  .gallery2-card__content{
    padding:14px 14px 14px;
  }

  .gallery2-card__badge{
    min-height:30px;
    padding:0 12px;
    font-size:9px;
  }

  .gallery2-card__icon{
    width:38px;
    height:38px;
    font-size:20px;
  }

  .gallery2-empty{
    padding:26px 18px;
    border-radius:20px;
    font-size:14px;
  }
}
/* =========================================================
   GALLERY 3 / LUXURY HORIZONTAL STRIP
========================================================= */
.gallery3-section{
  position:relative;
  padding:96px 0;
}

.gallery3-head{
  max-width:820px;
  margin:0 auto 34px;
  text-align:center;
}

.gallery3-head__eyebrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:0 14px;
  border-radius:999px;
  background:rgba(181,134,82,.10);
  border:1px solid rgba(181,134,82,.16);
  color:var(--otel-primary, #b58652);
  font-size:11px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.gallery3-head h2{
  margin:16px 0 12px;
  font-size:clamp(34px, 4vw, 58px);
  line-height:1.06;
  letter-spacing:-0.03em;
  color:var(--otel-text, #1f2a37);
}

.gallery3-head p{
  margin:0;
  font-size:18px;
  line-height:1.75;
  color:var(--otel-text-soft, #5d728c);
}

.gallery3-strip{
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:minmax(280px, 360px);
  gap:18px;
  overflow-x:auto;
  padding-bottom:6px;
  scroll-snap-type:x mandatory;
  scrollbar-width:thin;
}

.gallery3-strip::-webkit-scrollbar{
  height:8px;
}

.gallery3-strip::-webkit-scrollbar-thumb{
  background:rgba(181,134,82,.26);
  border-radius:999px;
}

.gallery3-card{
  position:relative;
  display:block;
  min-height:440px;
  border-radius:28px;
  overflow:hidden;
  background:#d8d8d8;
  box-shadow:0 18px 48px rgba(15,23,42,.06);
  scroll-snap-align:start;
  transition:transform .35s ease, box-shadow .35s ease;
}

.gallery3-card:hover{
  transform:translateY(-6px);
  box-shadow:0 28px 70px rgba(15,23,42,.12);
}

.gallery3-card--large{
  min-height:560px;
}

.gallery3-card__media{
  position:absolute;
  inset:0;
}

.gallery3-card__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .9s ease;
}

.gallery3-card:hover .gallery3-card__media img{
  transform:scale(1.05);
}

.gallery3-card__overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(0,0,0,.04) 0%, rgba(0,0,0,.06) 28%, rgba(0,0,0,.48) 100%),
    linear-gradient(90deg, rgba(0,0,0,.10) 0%, rgba(0,0,0,0) 36%);
  z-index:1;
}

.gallery3-card__caption{
  position:absolute;
  left:18px;
  bottom:18px;
  z-index:2;
  min-height:34px;
  padding:0 14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:rgba(15,22,32,.34);
  border:1px solid rgba(255,255,255,.16);
  color:#fff;
  font-size:10px;
  font-weight:700;
  letter-spacing:.15em;
  text-transform:uppercase;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

.gallery3-empty{
  padding:36px 28px;
  border-radius:24px;
  border:1px solid rgba(31,42,55,.08);
  background:#fff;
  text-align:center;
  color:var(--otel-text-soft, #5d728c);
  box-shadow:0 16px 36px rgba(15,23,42,.04);
}

@media (max-width: 1200px){
  .gallery3-section{
    padding:84px 0;
  }

  .gallery3-head h2{
    font-size:clamp(30px, 5vw, 48px);
  }

  .gallery3-head p{
    font-size:16px;
  }
}

@media (max-width: 767px){
  .gallery3-section{
    padding:64px 0;
  }

  .gallery3-head{
    margin-bottom:24px;
  }

  .gallery3-head__eyebrow{
    min-height:30px;
    padding:0 12px;
    font-size:10px;
  }

  .gallery3-head h2{
    margin:14px 0 10px;
    font-size:clamp(24px, 8vw, 34px);
  }

  .gallery3-head p{
    font-size:14px;
    line-height:1.7;
  }

  .gallery3-strip{
    grid-auto-columns:minmax(240px, 82vw);
    gap:14px;
  }

  .gallery3-card{
    min-height:320px;
    border-radius:22px;
  }

  .gallery3-card--large{
    min-height:400px;
  }

  .gallery3-card__caption{
    left:14px;
    bottom:14px;
    min-height:30px;
    padding:0 12px;
    font-size:9px;
  }

  .gallery3-empty{
    padding:26px 18px;
    border-radius:20px;
    font-size:14px;
  }
}
/* =========================================================
   REVIEWS 2 / COMPACT PREMIUM CARDS
========================================================= */
.reviews2-section{
  position:relative;
  padding:72px 0;
}

.reviews2-head{
  max-width:760px;
  margin:0 auto 26px;
  text-align:center;
}

.reviews2-head__eyebrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:32px;
  padding:0 13px;
  border-radius:999px;
  background:rgba(181,134,82,.10);
  border:1px solid rgba(181,134,82,.16);
  color:var(--otel-primary, #b58652);
  font-size:10px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.reviews2-head h2{
  margin:14px 0 0;
  font-size:clamp(30px, 4vw, 46px);
  line-height:1.08;
  letter-spacing:-0.03em;
  color:var(--otel-text, #1f2a37);
}

.reviews2-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:18px;
  align-items:stretch;
}

.reviews2-card{
  position:relative;
  min-height:unset;
  padding:18px 18px 16px;
  border-radius:22px;
  border:1px solid rgba(31,42,55,.08);
  background:
    radial-gradient(circle at top right, rgba(181,134,82,.07), transparent 22%),
    linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(250,248,244,.96) 100%);
  box-shadow:0 14px 34px rgba(15,23,42,.045);
  display:flex;
  flex-direction:column;
  gap:14px;
  transition:
    transform .28s ease,
    box-shadow .28s ease,
    border-color .28s ease;
}

.reviews2-card:hover{
  transform:translateY(-3px);
  border-color:rgba(181,134,82,.18);
  box-shadow:0 20px 44px rgba(15,23,42,.08);
}

.reviews2-card__top{
  display:grid;
  grid-template-columns:44px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
}

.reviews2-card__avatar{
  width:44px;
  height:44px;
  border-radius:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(180deg, rgba(181,134,82,.16) 0%, rgba(181,134,82,.09) 100%);
  border:1px solid rgba(181,134,82,.16);
  color:var(--otel-primary, #b58652);
  font-size:17px;
  font-weight:800;
  line-height:1;
  flex-shrink:0;
}

.reviews2-card__person{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:3px;
}

.reviews2-card__person strong{
  display:block;
  font-size:16px;
  line-height:1.2;
  color:var(--otel-text, #1f2a37);
  letter-spacing:-0.01em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.reviews2-card__person span{
  display:block;
  font-size:10px;
  font-weight:700;
  letter-spacing:.10em;
  text-transform:uppercase;
  color:rgba(31,42,55,.48);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.reviews2-card__stars{
  display:inline-flex;
  align-items:center;
  gap:1px;
  color:var(--otel-primary, #b58652);
  font-size:12px;
  line-height:1;
  flex-shrink:0;
}

.reviews2-card__body{
  padding-top:12px;
  border-top:1px solid rgba(31,42,55,.08);
}

.reviews2-card__body p{
  margin:0;
  font-size:14px;
  line-height:1.8;
  color:var(--otel-text-soft, #5d728c);
  display:-webkit-box;
  -webkit-line-clamp:4;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.reviews2-empty{
  grid-column:1 / -1;
  padding:24px 18px;
  border-radius:20px;
  border:1px solid rgba(31,42,55,.08);
  background:#fff;
  text-align:center;
  color:var(--otel-text-soft, #5d728c);
  box-shadow:0 12px 26px rgba(15,23,42,.04);
}

/* =========================
   1200 altı
========================= */
@media (max-width: 1200px){
  .reviews2-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:16px;
  }
}

/* =========================
   767 altı
========================= */
@media (max-width: 767px){
  .reviews2-section{
    padding:56px 0;
  }

  .reviews2-head{
    margin-bottom:22px;
  }

  .reviews2-head__eyebrow{
    min-height:28px;
    padding:0 11px;
    font-size:9px;
  }

  .reviews2-head h2{
    margin-top:12px;
    font-size:clamp(24px, 8vw, 34px);
  }

  .reviews2-grid{
    grid-template-columns:1fr;
    gap:14px;
  }

  .reviews2-card{
    padding:16px 14px 14px;
    border-radius:18px;
    gap:12px;
  }

  .reviews2-card__top{
    grid-template-columns:40px minmax(0,1fr);
    gap:9px;
  }

  .reviews2-card__stars{
    grid-column:1 / -1;
    padding-left:49px;
    font-size:11px;
  }

  .reviews2-card__avatar{
    width:40px;
    height:40px;
    border-radius:12px;
    font-size:15px;
  }

  .reviews2-card__person strong{
    font-size:15px;
  }

  .reviews2-card__person span{
    font-size:9px;
  }

  .reviews2-card__body{
    padding-top:10px;
  }

  .reviews2-card__body p{
    font-size:13.5px;
    line-height:1.72;
    -webkit-line-clamp:5;
  }
}
/* =========================================================
   FOOTER 2 / WIDE PREMIUM LAYOUT
========================================================= */
.site-footer--v2{
  position:relative;
  padding:84px 0 26px;
  background:
    radial-gradient(circle at top left, rgba(181,134,82,.07), transparent 20%),
    linear-gradient(180deg, #0f1b2d 0%, #0b1626 100%);
  color:var(--otel-footer-text, #d8e1ec);
  overflow:hidden;
}

.site-footer-v2{
  position:relative;
  border:1px solid rgba(255,255,255,.08);
  border-radius:34px;
  padding:34px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.04) 0%, rgba(255,255,255,.025) 100%);
  box-shadow:0 28px 80px rgba(0,0,0,.22);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}

.site-footer-v2__hero{
  display:grid;
  grid-template-columns:minmax(0, 1.15fr) minmax(360px, .85fr);
  gap:26px;
  align-items:stretch;
}

.site-footer-v2__intro{
  padding:6px 4px 6px 4px;
}

.site-footer-v2__eyebrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:0 15px;
  border-radius:999px;
  background:rgba(181,134,82,.14);
  border:1px solid rgba(181,134,82,.24);
  color:#f0c998;
  font-size:11px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.site-footer-v2__intro h3{
  margin:18px 0 16px;
  font-size:clamp(32px, 3.8vw, 58px);
  line-height:1.03;
  letter-spacing:-0.035em;
  color:var(--otel-footer-title, #ffffff);
}

.site-footer-v2__about{
  max-width:700px;
  font-size:17px;
  line-height:1.95;
  color:var(--otel-footer-text, #d8e1ec);
}

.site-footer-v2__about p{
  margin:0 0 10px;
}

.site-footer-v2__actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:24px;
}

.site-footer-v2__btn{
  min-height:52px;
  padding:0 22px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  font-size:14px;
  font-weight:700;
  transition:
    transform .25s ease,
    box-shadow .25s ease,
    background-color .25s ease,
    border-color .25s ease,
    color .25s ease;
}

.site-footer-v2__btn:hover{
  transform:translateY(-2px);
}

.site-footer-v2__btn--primary{
  background:var(--otel-primary, #b58652);
  color:#fff;
  box-shadow:0 14px 34px rgba(181,134,82,.22);
}

.site-footer-v2__btn--primary:hover{
  color:#fff;
}

.site-footer-v2__btn--secondary{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);
  color:#fff;
}

.site-footer-v2__btn--secondary:hover{
  color:#fff;
  background:rgba(255,255,255,.10);
}

.site-footer-v2__highlight{
  min-height:100%;
  padding:24px 22px;
  border-radius:28px;
  border:1px solid rgba(255,255,255,.08);
  background:
    radial-gradient(circle at top right, rgba(181,134,82,.10), transparent 28%),
    linear-gradient(180deg, rgba(255,255,255,.06) 0%, rgba(255,255,255,.03) 100%);
  box-shadow:0 18px 42px rgba(0,0,0,.14);
  display:flex;
  flex-direction:column;
  gap:18px;
}

.site-footer-v2__highlight-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:max-content;
  min-height:32px;
  padding:0 13px;
  border-radius:999px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
  color:#eef4fb;
  font-size:10px;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.site-footer-v2__highlight h4{
  margin:0;
  font-size:28px;
  line-height:1.15;
  letter-spacing:-0.02em;
  color:#fff;
}

.site-footer-v2__highlight-contact{
  display:grid;
  gap:10px;
}

.site-footer-v2__highlight-contact a{
  color:var(--otel-footer-text, #d8e1ec);
  text-decoration:none;
  font-size:15px;
  line-height:1.7;
}

.site-footer-v2__highlight-contact a:hover{
  color:#fff;
}

.site-footer-v2__highlight-contact p{
  margin:0;
  font-size:15px;
  line-height:1.8;
  color:var(--otel-footer-text, #d8e1ec);
}

.site-footer-v2__highlight-meta{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:10px;
  margin-top:auto;
}

.site-footer-v2__mini{
  padding:14px 14px;
  border-radius:18px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
}

.site-footer-v2__mini span{
  display:block;
  margin-bottom:5px;
  font-size:10px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(216,225,236,.62);
}

.site-footer-v2__mini strong{
  display:block;
  font-size:14px;
  line-height:1.5;
  color:#fff;
}

.site-footer-v2__bottom-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:18px;
  margin-top:30px;
  padding-top:24px;
  border-top:1px solid rgba(255,255,255,.08);
}

.site-footer-v2__panel{
  min-height:100%;
  padding:22px 20px 18px;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.03);
}

.site-footer-v2__panel h4{
  margin:0 0 14px;
  font-size:16px;
  line-height:1.3;
  color:var(--otel-footer-title, #ffffff);
}

.site-footer-v2__menu{
  margin:0;
  padding:0;
  list-style:none;
  display:grid;
  gap:10px;
}

.site-footer-v2__menu li{
  margin:0;
}

.site-footer-v2__menu a{
  color:var(--otel-footer-text, #d8e1ec);
  text-decoration:none;
  font-size:14px;
  line-height:1.6;
}

.site-footer-v2__menu a:hover{
  color:#fff;
}

.site-footer-v2__contact-list{
  display:grid;
  gap:10px;
}

.site-footer-v2__contact-list a{
  color:var(--otel-footer-text, #d8e1ec);
  text-decoration:none;
  font-size:14px;
  line-height:1.6;
}

.site-footer-v2__contact-list a:hover{
  color:#fff;
}

.site-footer-v2__contact-list p{
  margin:0;
  font-size:14px;
  line-height:1.75;
  color:var(--otel-footer-text, #d8e1ec);
}

.site-footer-v2__info-list{
  display:grid;
  gap:10px;
}

.site-footer-v2__info-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 14px;
  border-radius:16px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.06);
}

.site-footer-v2__info-row span{
  font-size:12px;
  line-height:1.5;
  color:rgba(216,225,236,.68);
}

.site-footer-v2__info-row strong{
  font-size:13px;
  line-height:1.5;
  color:#fff;
  text-align:right;
}

.site-footer-v2__copyright{
  margin-top:22px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.08);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
}

.site-footer-v2__copyright span{
  font-size:13px;
  line-height:1.6;
  color:rgba(216,225,236,.76);
}

/* =========================
   1200 altı
========================= */
@media (max-width: 1200px){
  .site-footer-v2__hero{
    grid-template-columns:1fr;
  }
}

/* =========================
   991 altı
========================= */
@media (max-width: 991px){
  .site-footer--v2{
    padding:68px 0 22px;
  }

  .site-footer-v2{
    padding:24px 22px 18px;
    border-radius:28px;
  }

  .site-footer-v2__intro h3{
    font-size:clamp(28px, 6vw, 42px);
  }

  .site-footer-v2__about{
    font-size:15px;
  }

  .site-footer-v2__highlight h4{
    font-size:24px;
  }

  .site-footer-v2__highlight-meta{
    grid-template-columns:1fr;
  }

  .site-footer-v2__bottom-grid{
    grid-template-columns:1fr;
    gap:14px;
  }
}

/* =========================
   Mobil
========================= */
@media (max-width: 767px){
  .site-footer--v2{
    padding:56px 0 18px;
  }

  .site-footer-v2{
    padding:18px 16px 14px;
    border-radius:22px;
  }

  .site-footer-v2__eyebrow{
    min-height:30px;
    padding:0 12px;
    font-size:10px;
  }

  .site-footer-v2__intro h3{
    margin:14px 0 12px;
    font-size:clamp(24px, 8vw, 32px);
  }

  .site-footer-v2__about{
    font-size:14px;
    line-height:1.82;
  }

  .site-footer-v2__actions{
    gap:10px;
    margin-top:18px;
  }

  .site-footer-v2__btn{
    min-height:46px;
    padding:0 16px;
    font-size:13px;
  }

  .site-footer-v2__highlight{
    padding:18px 16px;
    border-radius:20px;
    gap:14px;
  }

  .site-footer-v2__highlight h4{
    font-size:21px;
  }

  .site-footer-v2__highlight-contact a,
  .site-footer-v2__highlight-contact p{
    font-size:13px;
  }

  .site-footer-v2__mini{
    padding:12px 12px;
    border-radius:14px;
  }

  .site-footer-v2__mini strong{
    font-size:13px;
  }

  .site-footer-v2__panel{
    padding:16px 14px 14px;
    border-radius:18px;
  }

  .site-footer-v2__panel h4{
    margin-bottom:12px;
    font-size:15px;
  }

  .site-footer-v2__menu a,
  .site-footer-v2__contact-list a,
  .site-footer-v2__contact-list p,
  .site-footer-v2__info-row span,
  .site-footer-v2__info-row strong{
    font-size:13px;
  }

  .site-footer-v2__info-row{
    padding:10px 12px;
    border-radius:14px;
  }

  .site-footer-v2__copyright{
    margin-top:18px;
    padding-top:14px;
    flex-direction:column;
    align-items:flex-start;
    gap:6px;
  }

  .site-footer-v2__copyright span{
    font-size:12px;
  }
}
/* =========================================================
   EXPERIENCE 2 / PREMIUM SHOWCASE GRID
========================================================= */
.experience2-section{
  position:relative;
  padding:96px 0;
}

.experience2-head{
  max-width:820px;
  margin:0 auto 36px;
  text-align:center;
}

.experience2-head__eyebrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:0 14px;
  border-radius:999px;
  background:rgba(181,134,82,.10);
  border:1px solid rgba(181,134,82,.16);
  color:var(--otel-primary, #b58652);
  font-size:11px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.experience2-head h2{
  margin:16px 0 12px;
  font-size:clamp(34px, 4vw, 58px);
  line-height:1.06;
  letter-spacing:-0.03em;
  color:var(--otel-text, #1f2a37);
}

.experience2-head p{
  margin:0;
  font-size:18px;
  line-height:1.75;
  color:var(--otel-text-soft, #5d728c);
}

.experience2-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:22px;
  align-items:stretch;
}

.experience2-card{
  position:relative;
  display:block;
  min-height:420px;
  border-radius:30px;
  overflow:hidden;
  background:#d8d8d8;
  box-shadow:0 18px 48px rgba(15,23,42,.06);
  transition:
    transform .35s ease,
    box-shadow .35s ease;
}

.experience2-card:hover{
  transform:translateY(-6px);
  box-shadow:0 28px 70px rgba(15,23,42,.12);
}

.experience2-card--featured{
  grid-column:span 2;
  min-height:480px;
}

.experience2-card__media{
  position:absolute;
  inset:0;
  display:block;
}

.experience2-card__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .9s ease;
}

.experience2-card:hover .experience2-card__media img{
  transform:scale(1.05);
}

.experience2-card__placeholder{
  position:absolute;
  inset:0;
  background:linear-gradient(135deg, rgba(181,134,82,.18), rgba(31,42,55,.12));
}

.experience2-card__overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(0,0,0,.06) 0%, rgba(0,0,0,.12) 26%, rgba(0,0,0,.60) 100%),
    linear-gradient(90deg, rgba(0,0,0,.12) 0%, rgba(0,0,0,0) 36%);
  z-index:1;
}

.experience2-card__content{
  position:absolute;
  inset:auto 0 0 0;
  z-index:2;
  padding:22px 22px 20px;
  display:flex;
  flex-direction:column;
  gap:14px;
}

.experience2-card__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

.experience2-card__badge,
.experience2-card__count{
  min-height:32px;
  padding:0 12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:rgba(15,22,32,.34);
  border:1px solid rgba(255,255,255,.16);
  color:#fff;
  font-size:10px;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

.experience2-card__body{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.experience2-card__body strong{
  display:block;
  font-size:28px;
  line-height:1.08;
  letter-spacing:-0.025em;
  color:#fff;
  font-weight:600;
}

.experience2-card--featured .experience2-card__body strong{
  font-size:34px;
}

.experience2-card__body small{
  display:block;
  font-size:15px;
  line-height:1.8;
  color:rgba(255,255,255,.82);
}

.experience2-card__link{
  width:max-content;
  min-height:40px;
  padding:0 14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.14);
  color:#fff;
  font-size:12px;
  font-weight:700;
  letter-spacing:.10em;
  text-transform:uppercase;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

/* =========================
   1200 altı
========================= */
@media (max-width: 1200px){
  .experience2-section{
    padding:84px 0;
  }

  .experience2-head h2{
    font-size:clamp(30px, 5vw, 48px);
  }

  .experience2-head p{
    font-size:16px;
  }

  .experience2-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:18px;
  }

  .experience2-card--featured{
    grid-column:span 2;
  }
}

/* =========================
   Tablet
========================= */
@media (max-width: 991px){
  .experience2-grid{
    grid-template-columns:1fr;
  }

  .experience2-card,
  .experience2-card--featured{
    grid-column:auto;
    min-height:360px;
    border-radius:24px;
  }

  .experience2-card__body strong,
  .experience2-card--featured .experience2-card__body strong{
    font-size:26px;
  }
}

/* =========================
   Mobil
========================= */
@media (max-width: 767px){
  .experience2-section{
    padding:64px 0;
  }

  .experience2-head{
    margin-bottom:24px;
  }

  .experience2-head__eyebrow{
    min-height:30px;
    padding:0 12px;
    font-size:10px;
  }

  .experience2-head h2{
    margin:14px 0 10px;
    font-size:clamp(24px, 8vw, 34px);
  }

  .experience2-head p{
    font-size:14px;
    line-height:1.7;
  }

  .experience2-card,
  .experience2-card--featured{
    min-height:300px;
    border-radius:22px;
  }

  .experience2-card__content{
    padding:16px 16px 14px;
    gap:12px;
  }

  .experience2-card__badge,
  .experience2-card__count{
    min-height:28px;
    padding:0 10px;
    font-size:9px;
  }

  .experience2-card__body strong,
  .experience2-card--featured .experience2-card__body strong{
    font-size:22px;
  }

  .experience2-card__body small{
    font-size:13px;
    line-height:1.7;
  }

  .experience2-card__link{
    min-height:36px;
    padding:0 12px;
    font-size:11px;
  }
}
/* =========================================================
   EXPERIENCE 3 / EDITORIAL PREMIUM
========================================================= */
.experience3-section{
  position:relative;
  padding:96px 0;
}

.experience3-head{
  max-width:820px;
  margin:0 auto 36px;
  text-align:center;
}

.experience3-head__eyebrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:0 14px;
  border-radius:999px;
  background:rgba(181,134,82,.10);
  border:1px solid rgba(181,134,82,.16);
  color:var(--otel-primary, #b58652);
  font-size:11px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.experience3-head h2{
  margin:16px 0 12px;
  font-size:clamp(34px, 4vw, 58px);
  line-height:1.06;
  letter-spacing:-0.03em;
  color:var(--otel-text, #1f2a37);
}

.experience3-head p{
  margin:0;
  font-size:18px;
  line-height:1.75;
  color:var(--otel-text-soft, #5d728c);
}

.experience3-layout{
  display:grid;
  grid-template-columns:minmax(0, 1.1fr) minmax(0, .9fr);
  gap:22px;
  align-items:stretch;
}

.experience3-featured{
  position:relative;
  display:block;
  min-height:520px;
  border-radius:30px;
  overflow:hidden;
  background:#d8d8d8;
  box-shadow:0 18px 48px rgba(15,23,42,.06);
  transition:
    transform .35s ease,
    box-shadow .35s ease;
}

.experience3-featured:hover{
  transform:translateY(-6px);
  box-shadow:0 28px 70px rgba(15,23,42,.12);
}

.experience3-featured__media,
.experience3-featured__placeholder{
  position:absolute;
  inset:0;
  display:block;
}

.experience3-featured__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .9s ease;
}

.experience3-featured:hover .experience3-featured__media img{
  transform:scale(1.05);
}

.experience3-featured__placeholder{
  background:linear-gradient(135deg, rgba(181,134,82,.18), rgba(31,42,55,.12));
}

.experience3-featured__overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(0,0,0,.06) 0%, rgba(0,0,0,.12) 26%, rgba(0,0,0,.62) 100%),
    linear-gradient(90deg, rgba(0,0,0,.12) 0%, rgba(0,0,0,0) 36%);
  z-index:1;
}

.experience3-featured__content{
  position:absolute;
  inset:auto 0 0 0;
  z-index:2;
  padding:26px 26px 24px;
  display:flex;
  flex-direction:column;
  gap:12px;
}

.experience3-featured__badge{
  width:max-content;
  min-height:34px;
  padding:0 14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:rgba(15,22,32,.34);
  border:1px solid rgba(255,255,255,.16);
  color:#fff;
  font-size:10px;
  font-weight:700;
  letter-spacing:.15em;
  text-transform:uppercase;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

.experience3-featured strong{
  display:block;
  font-size:clamp(32px, 3.8vw, 48px);
  line-height:1.05;
  letter-spacing:-0.03em;
  color:#fff;
}

.experience3-featured small{
  display:block;
  font-size:15px;
  line-height:1.8;
  color:rgba(255,255,255,.82);
}

.experience3-featured__link{
  width:max-content;
  min-height:42px;
  padding:0 14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.16);
  color:#fff;
  font-size:12px;
  font-weight:700;
  letter-spacing:.10em;
  text-transform:uppercase;
}

.experience3-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:18px;
}

.experience3-card{
  display:grid;
  grid-template-columns:160px 1fr;
  gap:14px;
  align-items:stretch;
  padding:14px;
  border-radius:24px;
  border:1px solid rgba(31,42,55,.08);
  background:linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(250,248,244,.96) 100%);
  box-shadow:0 16px 38px rgba(15,23,42,.05);
  transition:
    transform .3s ease,
    box-shadow .3s ease;
}

.experience3-card:hover{
  transform:translateY(-4px);
  box-shadow:0 24px 52px rgba(15,23,42,.09);
}

.experience3-card__media,
.experience3-card__placeholder{
  display:block;
  min-height:100%;
  border-radius:18px;
  overflow:hidden;
  background:#e7dfd4;
}

.experience3-card__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.experience3-card__placeholder{
  background:linear-gradient(135deg, rgba(181,134,82,.16), rgba(31,42,55,.10));
}

.experience3-card__body{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:10px;
}

.experience3-card__top{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.experience3-card__badge,
.experience3-card__count{
  min-height:28px;
  padding:0 10px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:rgba(181,134,82,.08);
  border:1px solid rgba(181,134,82,.14);
  color:var(--otel-primary, #b58652);
  font-size:9px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.experience3-card__body strong{
  display:block;
  font-size:22px;
  line-height:1.15;
  color:var(--otel-text, #1f2a37);
  letter-spacing:-0.02em;
}

.experience3-card__body small{
  display:block;
  font-size:14px;
  line-height:1.75;
  color:var(--otel-text-soft, #5d728c);
}

/* =========================
   1200 altı
========================= */
@media (max-width: 1200px){
  .experience3-section{
    padding:84px 0;
  }

  .experience3-head h2{
    font-size:clamp(30px, 5vw, 48px);
  }

  .experience3-head p{
    font-size:16px;
  }

  .experience3-layout{
    grid-template-columns:1fr;
  }

  .experience3-featured{
    min-height:440px;
  }
}

/* =========================
   Mobil
========================= */
@media (max-width: 767px){
  .experience3-section{
    padding:64px 0;
  }

  .experience3-head{
    margin-bottom:24px;
  }

  .experience3-head__eyebrow{
    min-height:30px;
    padding:0 12px;
    font-size:10px;
  }

  .experience3-head h2{
    margin:14px 0 10px;
    font-size:clamp(24px, 8vw, 34px);
  }

  .experience3-head p{
    font-size:14px;
    line-height:1.7;
  }

  .experience3-featured{
    min-height:320px;
    border-radius:22px;
  }

  .experience3-featured__content{
    padding:16px 16px 14px;
  }

  .experience3-featured strong{
    font-size:24px;
  }

  .experience3-featured small{
    font-size:13px;
    line-height:1.7;
  }

  .experience3-card{
    grid-template-columns:1fr;
    padding:12px;
    border-radius:20px;
  }

  .experience3-card__media,
  .experience3-card__placeholder{
    min-height:180px;
  }

  .experience3-card__body strong{
    font-size:19px;
  }

  .experience3-card__body small{
    font-size:13px;
  }
}
/* =========================================================
   AREA 2 / PREMIUM OVERLAY GRID
========================================================= */
.area2-section{
  position:relative;
  padding:96px 0;
}

.area2-head{
  max-width:820px;
  margin:0 auto 36px;
  text-align:center;
}

.area2-head__eyebrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:0 14px;
  border-radius:999px;
  background:rgba(181,134,82,.10);
  border:1px solid rgba(181,134,82,.16);
  color:var(--otel-primary, #b58652);
  font-size:11px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.area2-head h2{
  margin:16px 0 12px;
  font-size:clamp(34px, 4vw, 58px);
  line-height:1.06;
  letter-spacing:-0.03em;
  color:var(--otel-text, #1f2a37);
}

.area2-head p{
  margin:0;
  font-size:18px;
  line-height:1.75;
  color:var(--otel-text-soft, #5d728c);
}

.area2-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:22px;
}

.area2-card{
  position:relative;
  display:block;
  min-height:430px;
  border-radius:30px;
  overflow:hidden;
  background:#d8d8d8;
  box-shadow:0 18px 48px rgba(15,23,42,.06);
  transition:
    transform .35s ease,
    box-shadow .35s ease;
}

.area2-card:hover{
  transform:translateY(-6px);
  box-shadow:0 28px 70px rgba(15,23,42,.12);
}

.area2-card__media,
.area2-card__placeholder{
  position:absolute;
  inset:0;
  display:block;
}

.area2-card__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .9s ease;
}

.area2-card:hover .area2-card__media img{
  transform:scale(1.05);
}

.area2-card__placeholder{
  background:linear-gradient(135deg, rgba(181,134,82,.18), rgba(31,42,55,.12));
}

.area2-card__overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(0,0,0,.06) 0%, rgba(0,0,0,.12) 26%, rgba(0,0,0,.62) 100%),
    linear-gradient(90deg, rgba(0,0,0,.12) 0%, rgba(0,0,0,0) 36%);
  z-index:1;
}

.area2-card__content{
  position:absolute;
  inset:auto 0 0 0;
  z-index:2;
  padding:22px 22px 20px;
  display:flex;
  flex-direction:column;
  gap:12px;
}

.area2-card__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

.area2-card__type,
.area2-card__distance{
  min-height:32px;
  padding:0 12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:rgba(15,22,32,.34);
  border:1px solid rgba(255,255,255,.16);
  color:#fff;
  font-size:10px;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

.area2-card__content strong{
  display:block;
  font-size:28px;
  line-height:1.08;
  letter-spacing:-0.025em;
  color:#fff;
  font-weight:600;
}

.area2-card__content small{
  display:block;
  font-size:15px;
  line-height:1.8;
  color:rgba(255,255,255,.82);
}

.area2-card__link{
  width:max-content;
  min-height:40px;
  padding:0 14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.14);
  color:#fff;
  font-size:12px;
  font-weight:700;
  letter-spacing:.10em;
  text-transform:uppercase;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

/* =========================
   1200 altı
========================= */
@media (max-width: 1200px){
  .area2-section{
    padding:84px 0;
  }

  .area2-head h2{
    font-size:clamp(30px, 5vw, 48px);
  }

  .area2-head p{
    font-size:16px;
  }

  .area2-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:18px;
  }
}

/* =========================
   Mobil
========================= */
@media (max-width: 767px){
  .area2-section{
    padding:64px 0;
  }

  .area2-head{
    margin-bottom:24px;
  }

  .area2-head__eyebrow{
    min-height:30px;
    padding:0 12px;
    font-size:10px;
  }

  .area2-head h2{
    margin:14px 0 10px;
    font-size:clamp(24px, 8vw, 34px);
  }

  .area2-head p{
    font-size:14px;
    line-height:1.7;
  }

  .area2-grid{
    grid-template-columns:1fr;
    gap:14px;
  }

  .area2-card{
    min-height:300px;
    border-radius:22px;
  }

  .area2-card__content{
    padding:16px 16px 14px;
  }

  .area2-card__type,
  .area2-card__distance{
    min-height:28px;
    padding:0 10px;
    font-size:9px;
  }

  .area2-card__content strong{
    font-size:22px;
  }

  .area2-card__content small{
    font-size:13px;
    line-height:1.7;
  }

  .area2-card__link{
    min-height:36px;
    padding:0 12px;
    font-size:11px;
  }
}
/* =========================================================
   AREA 3 / HORIZONTAL EDITORIAL CARDS
========================================================= */
.area3-section{
  position:relative;
  padding:90px 0;
}

.area3-head{
  max-width:820px;
  margin:0 auto 28px;
  text-align:center;
}

.area3-head__eyebrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:32px;
  padding:0 14px;
  border-radius:999px;
  background:rgba(181,134,82,.10);
  border:1px solid rgba(181,134,82,.16);
  color:var(--otel-primary, #b58652);
  font-size:10px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.area3-head h2{
  margin:14px 0 10px;
  font-size:clamp(34px, 4vw, 54px);
  line-height:1.06;
  letter-spacing:-0.03em;
  color:var(--otel-text, #1f2a37);
}

.area3-head p{
  margin:0;
  font-size:17px;
  line-height:1.72;
  color:var(--otel-text-soft, #5d728c);
}

.area3-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:16px;
}

.area3-card{
  display:grid;
  grid-template-columns:340px minmax(0, 1fr);
  align-items:stretch;
  overflow:hidden;
  border-radius:24px;
  background:linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(250,248,244,.96) 100%);
  border:1px solid rgba(31,42,55,.08);
  box-shadow:0 12px 32px rgba(15,23,42,.05);
  transition:
    transform .28s ease,
    box-shadow .28s ease,
    border-color .28s ease;
}

.area3-card:hover{
  transform:translateY(-4px);
  box-shadow:0 20px 46px rgba(15,23,42,.08);
  border-color:rgba(181,134,82,.18);
}

.area3-card__media{
  display:block;
  min-height:100%;
  background:#e8dfd4;
  overflow:hidden;
}

.area3-card__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .7s ease;
}

.area3-card:hover .area3-card__media img{
  transform:scale(1.03);
}

.area3-card__placeholder{
  display:block;
  width:100%;
  height:100%;
  background:linear-gradient(135deg, rgba(181,134,82,.16), rgba(31,42,55,.10));
}

.area3-card__body{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:10px;
  padding:18px 20px;
}

.area3-card__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  flex-wrap:wrap;
}

.area3-card__type,
.area3-card__distance{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:0 10px;
  border-radius:999px;
  background:rgba(181,134,82,.08);
  border:1px solid rgba(181,134,82,.14);
  color:var(--otel-primary, #b58652);
  font-size:8.5px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  white-space:nowrap;
}

.area3-card__title{
  margin:0;
  font-size:24px;
  line-height:1.15;
  letter-spacing:-0.02em;
}

.area3-card__title a{
  color:var(--otel-text, #1f2a37);
  text-decoration:none;
  transition:color .22s ease;
}

.area3-card__title a:hover{
  color:var(--otel-primary, #b58652);
}

.area3-card__text{
  margin:0;
  font-size:14px;
  line-height:1.72;
  color:var(--otel-text-soft, #5d728c);
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.area3-card__link{
  margin-top:2px;
  width:max-content;
  min-height:34px;
  padding:0 12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:transparent;
  border:1px solid rgba(181,134,82,.16);
  color:var(--otel-primary, #b58652);
  text-decoration:none;
  font-size:10px;
  font-weight:700;
  letter-spacing:.10em;
  text-transform:uppercase;
  transition:
    transform .22s ease,
    background-color .22s ease,
    border-color .22s ease;
}

.area3-card__link:hover{
  transform:translateY(-2px);
  background:rgba(181,134,82,.08);
  border-color:rgba(181,134,82,.22);
  color:var(--otel-primary, #b58652);
}

@media (max-width: 1200px){
  .area3-section{
    padding:80px 0;
  }

  .area3-head h2{
    font-size:clamp(30px, 5vw, 46px);
  }

  .area3-head p{
    font-size:15px;
  }

  .area3-card{
    grid-template-columns:280px minmax(0, 1fr);
  }

  .area3-card__title{
    font-size:22px;
  }
}

@media (max-width: 767px){
  .area3-section{
    padding:62px 0;
  }

  .area3-head{
    margin-bottom:22px;
  }

  .area3-head__eyebrow{
    min-height:28px;
    padding:0 12px;
    font-size:9px;
  }

  .area3-head h2{
    margin:12px 0 10px;
    font-size:clamp(24px, 8vw, 34px);
  }

  .area3-head p{
    font-size:14px;
    line-height:1.65;
  }

  .area3-grid{
    gap:14px;
  }

  .area3-card{
    grid-template-columns:1fr;
    border-radius:20px;
  }

  .area3-card__media{
    aspect-ratio:16 / 9;
  }

  .area3-card__body{
    padding:13px 14px 14px;
    gap:9px;
  }

  .area3-card__title{
    font-size:18px;
  }

  .area3-card__text{
    font-size:13px;
    -webkit-line-clamp:3;
  }

  .area3-card__link{
    min-height:32px;
    font-size:9.5px;
  }
}
/* =====================================================
   GLOBAL DESIGN STYLES (Design Style System)
   Body Class:
   - otel-style-default
   - otel-style-luxury
   - otel-style-modern
   - otel-style-butik
===================================================== */

/* DEFAULT (zaten mevcut, sadece garanti) */
body.otel-style-default{
  --otel-radius:22px;
  --otel-shadow:0 10px 30px rgba(0,0,0,.06);
  --otel-shadow-strong:0 24px 60px rgba(17,28,45,.14);
  --otel-border-soft:rgba(22,34,53,.08);
}

/* =========================
   LUXURY STYLE
========================= */
body.otel-style-luxury{
  --otel-radius:18px;
  --otel-shadow:0 18px 40px rgba(0,0,0,.10);
  --otel-shadow-strong:0 30px 80px rgba(0,0,0,.18);
  --otel-border-soft:rgba(181,134,82,.18);

  --otel-bg:#f5f1ea;
  --otel-surface:#ffffff;
}

/* Header Luxury */
body.otel-style-luxury .otel-header{
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(181,134,82,.25);
}

/* Section Titles */
body.otel-style-luxury section h2{
  font-weight:800;
  letter-spacing:-1px;
}

/* Cards Luxury */
body.otel-style-luxury .experience-card,
body.otel-style-luxury .room-card,
body.otel-style-luxury .review-card,
body.otel-style-luxury .region-card{
  border:1px solid rgba(181,134,82,.15);
  box-shadow:0 20px 60px rgba(0,0,0,.08);
}

/* Button Luxury */
body.otel-style-luxury .otel-button{
  border-radius:999px;
  letter-spacing:.4px;
}

/* =========================
   MODERN STYLE
========================= */
body.otel-style-modern{
  --otel-radius:14px;
  --otel-shadow:0 6px 18px rgba(0,0,0,.04);
  --otel-shadow-strong:0 14px 40px rgba(0,0,0,.08);
  --otel-border-soft:rgba(0,0,0,.06);

  --otel-bg:#f6f7f9;
  --otel-surface:#ffffff;
}

/* Header Modern */
body.otel-style-modern .otel-header{
  backdrop-filter:none;
  box-shadow:none;
  border-bottom:1px solid rgba(0,0,0,.06);
}

/* Section spacing modern */
body.otel-style-modern section{
  padding:90px 0;
}

/* Cards Modern (flat) */
body.otel-style-modern .experience-card,
body.otel-style-modern .room-card,
body.otel-style-modern .review-card,
body.otel-style-modern .region-card{
  border-radius:14px;
  box-shadow:none;
  border:1px solid rgba(0,0,0,.06);
}

/* Hover minimal */
body.otel-style-modern .experience-card:hover,
body.otel-style-modern .room-card:hover{
  transform:translateY(-4px);
  box-shadow:0 10px 24px rgba(0,0,0,.08);
}

/* Button Modern */
body.otel-style-modern .otel-button{
  border-radius:12px;
  box-shadow:none;
}

/* =========================
   BUTIK STYLE
========================= */
body.otel-style-butik{
  --otel-radius:28px;
  --otel-shadow:0 14px 34px rgba(0,0,0,.08);
  --otel-shadow-strong:0 30px 70px rgba(0,0,0,.14);
  --otel-border-soft:rgba(22,34,53,.10);

  --otel-bg:#f8f5f0;
  --otel-surface:#ffffff;
}

/* Header Butik */
body.otel-style-butik .otel-header{
  backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(0,0,0,.08);
}

/* Section Titles Butik */
body.otel-style-butik section h2{
  font-family:"Libre Baskerville", serif;
  font-weight:600;
  letter-spacing:-.5px;
}

/* Cards Butik (soft rounded) */
body.otel-style-butik .experience-card,
body.otel-style-butik .room-card,
body.otel-style-butik .review-card,
body.otel-style-butik .region-card{
  border-radius:28px;
  border:1px solid rgba(0,0,0,.06);
}

/* Butik hover */
body.otel-style-butik .experience-card:hover,
body.otel-style-butik .room-card:hover{
  transform:translateY(-6px) scale(1.01);
}

/* Buttons Butik */
body.otel-style-butik .otel-button{
  border-radius:999px;
  padding:0 26px;
}
/* =====================================================
   GLOBAL DESIGN STYLES V2
   Daha güçlü override katmanı
===================================================== */

/* ---------------------------------
   ORTAK GEÇİŞ
--------------------------------- */
body.otel-style-luxury,
body.otel-style-modern,
body.otel-style-butik{
  transition:background .35s ease, color .35s ease;
}

body.otel-style-luxury .otel-header,
body.otel-style-modern .otel-header,
body.otel-style-butik .otel-header,
body.otel-style-luxury .experience-card,
body.otel-style-modern .experience-card,
body.otel-style-butik .experience-card,
body.otel-style-luxury .room-card,
body.otel-style-modern .room-card,
body.otel-style-butik .room-card,
body.otel-style-luxury .review-card,
body.otel-style-modern .review-card,
body.otel-style-butik .review-card,
body.otel-style-luxury .region-card,
body.otel-style-modern .region-card,
body.otel-style-butik .region-card,
body.otel-style-luxury .otel-room-card,
body.otel-style-modern .otel-room-card,
body.otel-style-butik .otel-room-card,
body.otel-style-luxury .otel-area-card,
body.otel-style-modern .otel-area-card,
body.otel-style-butik .otel-area-card,
body.otel-style-luxury .otel-room-section,
body.otel-style-modern .otel-room-section,
body.otel-style-butik .otel-room-section,
body.otel-style-luxury .otel-area-section,
body.otel-style-modern .otel-area-section,
body.otel-style-butik .otel-area-section,
body.otel-style-luxury .otel-experience-section,
body.otel-style-modern .otel-experience-section,
body.otel-style-butik .otel-experience-section,
body.otel-style-luxury .otel-room-booking-card,
body.otel-style-modern .otel-room-booking-card,
body.otel-style-butik .otel-room-booking-card,
body.otel-style-luxury .otel-area-booking-card,
body.otel-style-modern .otel-area-booking-card,
body.otel-style-butik .otel-area-booking-card,
body.otel-style-luxury .otel-experience-booking-card,
body.otel-style-modern .otel-experience-booking-card,
body.otel-style-butik .otel-experience-booking-card,
body.otel-style-luxury .about-box,
body.otel-style-modern .about-box,
body.otel-style-butik .about-box,
body.otel-style-luxury .service-card,
body.otel-style-modern .service-card,
body.otel-style-butik .service-card,
body.otel-style-luxury .otel-home-gallery-slider__viewport,
body.otel-style-modern .otel-home-gallery-slider__viewport,
body.otel-style-butik .otel-home-gallery-slider__viewport,
body.otel-style-luxury .otel-booking-v2__shell,
body.otel-style-modern .otel-booking-v2__shell,
body.otel-style-butik .otel-booking-v2__shell,
body.otel-style-luxury .otel-footer,
body.otel-style-modern .otel-footer,
body.otel-style-butik .otel-footer{
  transition:
    background .35s ease,
    border-color .35s ease,
    box-shadow .35s ease,
    border-radius .35s ease,
    color .35s ease,
    transform .35s ease;
}

/* ---------------------------------
   DEFAULT
--------------------------------- */
body.otel-style-default{
  --otel-bg:#f3efe9;
  --otel-surface:#ffffff;
}

/* ---------------------------------
   LUXURY
--------------------------------- */
body.otel-style-luxury{
  --otel-bg:#f4efe7;
  --otel-surface:#fffdfa;
  --otel-border:#d9c3a8;
  --otel-border-soft:rgba(181,134,82,.18);
  --otel-text:#1b2431;
  --otel-text-soft:#6f624f;
  --otel-shadow:0 18px 50px rgba(42,30,18,.08);
  --otel-shadow-strong:0 30px 90px rgba(32,22,14,.14);
  --otel-shadow-hover:0 28px 70px rgba(32,22,14,.16);
}

body.otel-style-luxury{
  background:
    radial-gradient(circle at top left, rgba(181,134,82,.10), transparent 34%),
    radial-gradient(circle at bottom right, rgba(84,58,33,.08), transparent 30%),
    linear-gradient(180deg, #fbf7f1 0%, #f4efe7 100%);
}

body.otel-style-luxury .otel-header{
  background:rgba(255,250,245,.82);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  border-bottom:1px solid rgba(181,134,82,.22);
  box-shadow:0 10px 28px rgba(59,39,22,.06);
}

body.otel-style-luxury .otel-header-inner{
  min-height:92px;
}

body.otel-style-luxury .otel-nav a{
  letter-spacing:.02em;
  font-weight:700;
}

body.otel-style-luxury section{
  padding:124px 0;
}

body.otel-style-luxury section h2,
body.otel-style-luxury .otel-section-head h2,
body.otel-style-luxury .otel-room-section__head h2,
body.otel-style-luxury .otel-area-section__head h2,
body.otel-style-luxury .otel-experience-section__head h2{
  font-family:"Libre Baskerville", Georgia, serif;
  font-weight:700;
  letter-spacing:-1px;
  line-height:1.12;
}

body.otel-style-luxury .otel-section-head p,
body.otel-style-luxury section > .container > p{
  color:#756550;
}

body.otel-style-luxury .experience-card,
body.otel-style-luxury .room-card,
body.otel-style-luxury .review-card,
body.otel-style-luxury .region-card,
body.otel-style-luxury .otel-room-card,
body.otel-style-luxury .otel-area-card,
body.otel-style-luxury .otel-area-related__card,
body.otel-style-luxury .otel-experience-related__card,
body.otel-style-luxury .otel-room-section,
body.otel-style-luxury .otel-area-section,
body.otel-style-luxury .otel-experience-section,
body.otel-style-luxury .otel-room-booking-card,
body.otel-style-luxury .otel-area-booking-card,
body.otel-style-luxury .otel-experience-booking-card,
body.otel-style-luxury .about-box,
body.otel-style-luxury .service-card{
  background:linear-gradient(180deg, rgba(255,255,255,.96) 0%, rgba(250,244,236,.96) 100%);
  border:1px solid rgba(181,134,82,.18);
  border-radius:20px;
  box-shadow:0 22px 60px rgba(60,42,24,.08);
}

body.otel-style-luxury .experience-card:hover,
body.otel-style-luxury .room-card:hover,
body.otel-style-luxury .otel-room-card:hover,
body.otel-style-luxury .otel-area-card:hover{
  transform:translateY(-10px) scale(1.01);
  box-shadow:0 28px 72px rgba(60,42,24,.14);
}

body.otel-style-luxury .service-card,
body.otel-style-luxury .otel-room-features__item,
body.otel-style-luxury .otel-room-card__meta span,
body.otel-style-luxury .otel-area-card__distance{
  background:#faf4ec;
  border-color:rgba(181,134,82,.16);
}

body.otel-style-luxury .otel-button,
body.otel-style-luxury .btn{
  min-height:50px;
  border-radius:999px;
  letter-spacing:.04em;
  text-transform:none;
  box-shadow:0 14px 34px rgba(181,134,82,.24);
}

body.otel-style-luxury input,
body.otel-style-luxury select,
body.otel-style-luxury textarea,
body.otel-style-luxury .otel-booking-v2__field input,
body.otel-style-luxury .otel-booking-v2__field select{
  border-radius:18px !important;
  border-color:rgba(181,134,82,.18) !important;
  background:#fffdf9 !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.6);
}

body.otel-style-luxury .otel-booking-v2__shell{
  border-radius:32px;
  box-shadow:0 30px 80px rgba(49,34,20,.14);
  border:1px solid rgba(181,134,82,.18);
}

body.otel-style-luxury .otel-booking-v2__intro{
  background:linear-gradient(180deg, #f9f4ec 0%, #f1e7d9 100%);
}

body.otel-style-luxury .otel-home-gallery-slider__viewport,
body.otel-style-luxury .otel-room-gallery__main,
body.otel-style-luxury .otel-area-gallery__main{
  border-radius:30px;
  box-shadow:0 28px 80px rgba(49,34,20,.14);
}

body.otel-style-luxury .otel-footer{
  background:linear-gradient(180deg, #162131 0%, #0d1522 100%);
  color:#e9dfd0;
}

/* ---------------------------------
   MODERN
--------------------------------- */
body.otel-style-modern{
  --otel-bg:#f5f7fa;
  --otel-surface:#ffffff;
  --otel-border:#d9e0e8;
  --otel-border-soft:rgba(15,23,42,.06);
  --otel-text:#122033;
  --otel-text-soft:#627387;
  --otel-shadow:0 10px 24px rgba(15,23,42,.05);
  --otel-shadow-strong:0 18px 40px rgba(15,23,42,.08);
  --otel-shadow-hover:0 20px 44px rgba(15,23,42,.10);
}

body.otel-style-modern{
  background:
    linear-gradient(180deg, #f8fafc 0%, #f2f5f8 100%);
}

body.otel-style-modern .otel-header{
  background:rgba(255,255,255,.94);
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  border-bottom:1px solid rgba(15,23,42,.06);
  box-shadow:none;
}

body.otel-style-modern .otel-header-inner{
  min-height:78px;
}

body.otel-style-modern .otel-nav a{
  font-weight:600;
  letter-spacing:0;
}

body.otel-style-modern section{
  padding:94px 0;
}

body.otel-style-modern section h2,
body.otel-style-modern .otel-section-head h2,
body.otel-style-modern .otel-room-section__head h2,
body.otel-style-modern .otel-area-section__head h2,
body.otel-style-modern .otel-experience-section__head h2{
  font-family:"Segoe UI", Arial, sans-serif;
  font-weight:800;
  letter-spacing:-1.1px;
  line-height:1.05;
}

body.otel-style-modern .experience-card,
body.otel-style-modern .room-card,
body.otel-style-modern .review-card,
body.otel-style-modern .region-card,
body.otel-style-modern .otel-room-card,
body.otel-style-modern .otel-area-card,
body.otel-style-modern .otel-area-related__card,
body.otel-style-modern .otel-experience-related__card,
body.otel-style-modern .otel-room-section,
body.otel-style-modern .otel-area-section,
body.otel-style-modern .otel-experience-section,
body.otel-style-modern .otel-room-booking-card,
body.otel-style-modern .otel-area-booking-card,
body.otel-style-modern .otel-experience-booking-card,
body.otel-style-modern .about-box,
body.otel-style-modern .service-card{
  background:#ffffff;
  border:1px solid rgba(15,23,42,.08);
  border-radius:14px;
  box-shadow:none;
}

body.otel-style-modern .experience-card:hover,
body.otel-style-modern .room-card:hover,
body.otel-style-modern .otel-room-card:hover,
body.otel-style-modern .otel-area-card:hover{
  transform:translateY(-5px);
  box-shadow:0 18px 38px rgba(15,23,42,.08);
}

body.otel-style-modern .service-card,
body.otel-style-modern .otel-room-features__item,
body.otel-style-modern .otel-room-card__meta span,
body.otel-style-modern .otel-area-card__distance{
  background:#f7f9fc;
  border-color:rgba(15,23,42,.08);
  border-radius:12px;
}

body.otel-style-modern .otel-button,
body.otel-style-modern .btn{
  min-height:48px;
  border-radius:12px;
  box-shadow:none;
  font-weight:700;
}

body.otel-style-modern .otel-button:hover,
body.otel-style-modern .btn:hover{
  box-shadow:none;
  transform:translateY(-2px);
}

body.otel-style-modern input,
body.otel-style-modern select,
body.otel-style-modern textarea,
body.otel-style-modern .otel-booking-v2__field input,
body.otel-style-modern .otel-booking-v2__field select{
  border-radius:12px !important;
  border-color:rgba(15,23,42,.10) !important;
  background:#ffffff !important;
  box-shadow:none !important;
}

body.otel-style-modern .otel-booking-v2__shell{
  border-radius:18px;
  box-shadow:none;
  border:1px solid rgba(15,23,42,.08);
}

body.otel-style-modern .otel-booking-v2__intro{
  background:#f7f9fc;
}

body.otel-style-modern .otel-home-gallery-slider__viewport,
body.otel-style-modern .otel-room-gallery__main,
body.otel-style-modern .otel-area-gallery__main{
  border-radius:18px;
  box-shadow:0 16px 34px rgba(15,23,42,.08);
}

body.otel-style-modern .otel-footer{
  background:#111827;
  color:#d9e2ec;
}

/* ---------------------------------
   BUTIK
--------------------------------- */
body.otel-style-butik{
  --otel-bg:#f7f3ed;
  --otel-surface:#fffdfa;
  --otel-border:#e3d6c7;
  --otel-border-soft:rgba(117,90,64,.10);
  --otel-text:#2d241d;
  --otel-text-soft:#786757;
  --otel-shadow:0 14px 36px rgba(63,43,25,.07);
  --otel-shadow-strong:0 24px 62px rgba(63,43,25,.12);
  --otel-shadow-hover:0 24px 56px rgba(63,43,25,.12);
}

body.otel-style-butik{
  background:
    radial-gradient(circle at top right, rgba(198,163,126,.10), transparent 30%),
    linear-gradient(180deg, #fbf8f3 0%, #f7f3ed 100%);
}

body.otel-style-butik .otel-header{
  background:rgba(255,251,246,.86);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(120,103,87,.14);
  box-shadow:0 8px 24px rgba(63,43,25,.05);
}

body.otel-style-butik .otel-header-inner{
  min-height:88px;
}

body.otel-style-butik .otel-nav a{
  font-weight:700;
}

body.otel-style-butik section{
  padding:112px 0;
}

body.otel-style-butik section h2,
body.otel-style-butik .otel-section-head h2,
body.otel-style-butik .otel-room-section__head h2,
body.otel-style-butik .otel-area-section__head h2,
body.otel-style-butik .otel-experience-section__head h2{
  font-family:"Libre Baskerville", Georgia, serif;
  font-weight:600;
  letter-spacing:-.6px;
  line-height:1.14;
}

body.otel-style-butik .experience-card,
body.otel-style-butik .room-card,
body.otel-style-butik .review-card,
body.otel-style-butik .region-card,
body.otel-style-butik .otel-room-card,
body.otel-style-butik .otel-area-card,
body.otel-style-butik .otel-area-related__card,
body.otel-style-butik .otel-experience-related__card,
body.otel-style-butik .otel-room-section,
body.otel-style-butik .otel-area-section,
body.otel-style-butik .otel-experience-section,
body.otel-style-butik .otel-room-booking-card,
body.otel-style-butik .otel-area-booking-card,
body.otel-style-butik .otel-experience-booking-card,
body.otel-style-butik .about-box,
body.otel-style-butik .service-card{
  background:linear-gradient(180deg, #fffdfa 0%, #fdf8f2 100%);
  border:1px solid rgba(120,103,87,.12);
  border-radius:30px;
  box-shadow:0 18px 44px rgba(63,43,25,.08);
}

body.otel-style-butik .experience-card:hover,
body.otel-style-butik .room-card:hover,
body.otel-style-butik .otel-room-card:hover,
body.otel-style-butik .otel-area-card:hover{
  transform:translateY(-8px) scale(1.01);
  box-shadow:0 24px 58px rgba(63,43,25,.12);
}

body.otel-style-butik .service-card,
body.otel-style-butik .otel-room-features__item,
body.otel-style-butik .otel-room-card__meta span,
body.otel-style-butik .otel-area-card__distance{
  background:#f9f3eb;
  border-color:rgba(120,103,87,.12);
  border-radius:18px;
}

body.otel-style-butik .otel-button,
body.otel-style-butik .btn{
  min-height:50px;
  border-radius:999px;
  padding:0 26px;
  box-shadow:0 12px 30px rgba(181,134,82,.18);
}

body.otel-style-butik input,
body.otel-style-butik select,
body.otel-style-butik textarea,
body.otel-style-butik .otel-booking-v2__field input,
body.otel-style-butik .otel-booking-v2__field select{
  border-radius:18px !important;
  border-color:rgba(120,103,87,.14) !important;
  background:#fffdfa !important;
}

body.otel-style-butik .otel-booking-v2__shell{
  border-radius:34px;
  box-shadow:0 26px 68px rgba(63,43,25,.12);
  border:1px solid rgba(120,103,87,.12);
}

body.otel-style-butik .otel-booking-v2__intro{
  background:linear-gradient(180deg, #faf5ee 0%, #f3eadf 100%);
}

body.otel-style-butik .otel-home-gallery-slider__viewport,
body.otel-style-butik .otel-room-gallery__main,
body.otel-style-butik .otel-area-gallery__main{
  border-radius:34px;
  box-shadow:0 26px 62px rgba(63,43,25,.14);
}

body.otel-style-butik .otel-footer{
  background:linear-gradient(180deg, #2b221c 0%, #1f1814 100%);
  color:#efe2d2;
}
/* =====================================================
   GLOBAL DESIGN STYLES V3 - FORCE OVERRIDE
===================================================== */

/* =========================
   LUXURY
========================= */
body.otel-style-luxury{
  background:
    radial-gradient(circle at top left, rgba(181,134,82,.12), transparent 32%),
    linear-gradient(180deg, #fbf7f1 0%, #f2ebe1 100%) !important;
}

body.otel-style-luxury section{
  padding-top:128px !important;
  padding-bottom:128px !important;
}

body.otel-style-luxury .otel-header{
  background:rgba(255,248,240,.88) !important;
  backdrop-filter:blur(18px) !important;
  -webkit-backdrop-filter:blur(18px) !important;
  border-bottom:1px solid rgba(181,134,82,.24) !important;
  box-shadow:0 12px 34px rgba(54,37,19,.08) !important;
}

body.otel-style-luxury section h2,
body.otel-style-luxury .otel-section-head h2{
  font-family:"Libre Baskerville", Georgia, serif !important;
  font-weight:700 !important;
  letter-spacing:-1px !important;
  color:#2f241d !important;
}

body.otel-style-luxury section > .container > p,
body.otel-style-luxury .otel-section-head p{
  color:#7a6955 !important;
}

body.otel-style-luxury .experience-card,
body.otel-style-luxury .room-card,
body.otel-style-luxury .review-card,
body.otel-style-luxury .region-card,
body.otel-style-luxury .otel-room-card,
body.otel-style-luxury .otel-area-card,
body.otel-style-luxury .otel-area-related__card,
body.otel-style-luxury .otel-experience-related__card,
body.otel-style-luxury .otel-room-section,
body.otel-style-luxury .otel-area-section,
body.otel-style-luxury .otel-experience-section,
body.otel-style-luxury .otel-room-booking-card,
body.otel-style-luxury .otel-area-booking-card,
body.otel-style-luxury .otel-experience-booking-card,
body.otel-style-luxury .about-box,
body.otel-style-luxury .service-card{
  background:linear-gradient(180deg, #fffdfa 0%, #f8f1e8 100%) !important;
  border:1px solid rgba(181,134,82,.18) !important;
  border-radius:20px !important;
  box-shadow:0 24px 64px rgba(53,37,18,.10) !important;
}

body.otel-style-luxury .otel-button,
body.otel-style-luxury .btn{
  border-radius:999px !important;
  box-shadow:0 14px 34px rgba(181,134,82,.24) !important;
  letter-spacing:.04em !important;
}

body.otel-style-luxury input,
body.otel-style-luxury select,
body.otel-style-luxury textarea,
body.otel-style-luxury .otel-booking-v2__field input,
body.otel-style-luxury .otel-booking-v2__field select{
  background:#fffdf9 !important;
  border:1px solid rgba(181,134,82,.18) !important;
  border-radius:18px !important;
}

body.otel-style-luxury .otel-footer{
  background:linear-gradient(180deg, #1c2432 0%, #101723 100%) !important;
  color:#eadfce !important;
}

/* =========================
   MODERN
========================= */
body.otel-style-modern{
  background:#f4f7fb !important;
}

body.otel-style-modern section{
  padding-top:92px !important;
  padding-bottom:92px !important;
}

body.otel-style-modern .otel-header{
  background:#ffffff !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  border-bottom:1px solid rgba(15,23,42,.08) !important;
  box-shadow:none !important;
}

body.otel-style-modern section h2,
body.otel-style-modern .otel-section-head h2{
  font-family:"Segoe UI", Arial, sans-serif !important;
  font-weight:800 !important;
  letter-spacing:-1.2px !important;
  color:#10233a !important;
}

body.otel-style-modern section > .container > p,
body.otel-style-modern .otel-section-head p{
  color:#68809b !important;
}

body.otel-style-modern .experience-card,
body.otel-style-modern .room-card,
body.otel-style-modern .review-card,
body.otel-style-modern .region-card,
body.otel-style-modern .otel-room-card,
body.otel-style-modern .otel-area-card,
body.otel-style-modern .otel-area-related__card,
body.otel-style-modern .otel-experience-related__card,
body.otel-style-modern .otel-room-section,
body.otel-style-modern .otel-area-section,
body.otel-style-modern .otel-experience-section,
body.otel-style-modern .otel-room-booking-card,
body.otel-style-modern .otel-area-booking-card,
body.otel-style-modern .otel-experience-booking-card,
body.otel-style-modern .about-box,
body.otel-style-modern .service-card{
  background:#ffffff !important;
  border:1px solid rgba(15,23,42,.08) !important;
  border-radius:14px !important;
  box-shadow:none !important;
}

body.otel-style-modern .otel-button,
body.otel-style-modern .btn{
  border-radius:12px !important;
  box-shadow:none !important;
}

body.otel-style-modern input,
body.otel-style-modern select,
body.otel-style-modern textarea,
body.otel-style-modern .otel-booking-v2__field input,
body.otel-style-modern .otel-booking-v2__field select{
  background:#ffffff !important;
  border:1px solid rgba(15,23,42,.10) !important;
  border-radius:12px !important;
  box-shadow:none !important;
}

body.otel-style-modern .otel-footer{
  background:#111827 !important;
  color:#dbe5ef !important;
}

/* =========================
   BUTIK
========================= */
body.otel-style-butik{
  background:
    radial-gradient(circle at top right, rgba(198,163,126,.12), transparent 28%),
    linear-gradient(180deg, #fbf8f3 0%, #f6f0e8 100%) !important;
}

body.otel-style-butik section{
  padding-top:116px !important;
  padding-bottom:116px !important;
}

body.otel-style-butik .otel-header{
  background:rgba(255,251,246,.90) !important;
  backdrop-filter:blur(14px) !important;
  -webkit-backdrop-filter:blur(14px) !important;
  border-bottom:1px solid rgba(121,101,80,.14) !important;
  box-shadow:0 10px 26px rgba(63,43,25,.06) !important;
}

body.otel-style-butik section h2,
body.otel-style-butik .otel-section-head h2{
  font-family:"Libre Baskerville", Georgia, serif !important;
  font-weight:600 !important;
  letter-spacing:-.6px !important;
  color:#32261f !important;
}

body.otel-style-butik section > .container > p,
body.otel-style-butik .otel-section-head p{
  color:#7d6a58 !important;
}

body.otel-style-butik .experience-card,
body.otel-style-butik .room-card,
body.otel-style-butik .review-card,
body.otel-style-butik .region-card,
body.otel-style-butik .otel-room-card,
body.otel-style-butik .otel-area-card,
body.otel-style-butik .otel-area-related__card,
body.otel-style-butik .otel-experience-related__card,
body.otel-style-butik .otel-room-section,
body.otel-style-butik .otel-area-section,
body.otel-style-butik .otel-experience-section,
body.otel-style-butik .otel-room-booking-card,
body.otel-style-butik .otel-area-booking-card,
body.otel-style-butik .otel-experience-booking-card,
body.otel-style-butik .about-box,
body.otel-style-butik .service-card{
  background:linear-gradient(180deg, #fffdfa 0%, #fcf6ef 100%) !important;
  border:1px solid rgba(121,101,80,.12) !important;
  border-radius:30px !important;
  box-shadow:0 20px 48px rgba(63,43,25,.09) !important;
}

body.otel-style-butik .otel-button,
body.otel-style-butik .btn{
  border-radius:999px !important;
  box-shadow:0 12px 30px rgba(181,134,82,.18) !important;
  padding-left:26px !important;
  padding-right:26px !important;
}

body.otel-style-butik input,
body.otel-style-butik select,
body.otel-style-butik textarea,
body.otel-style-butik .otel-booking-v2__field input,
body.otel-style-butik .otel-booking-v2__field select{
  background:#fffdfa !important;
  border:1px solid rgba(121,101,80,.14) !important;
  border-radius:18px !important;
}

body.otel-style-butik .otel-footer{
  background:linear-gradient(180deg, #2b221c 0%, #1e1713 100%) !important;
  color:#efe1cf !important;
}
/* =====================================================
   FINAL DESIGN STYLE OVERRIDE PACK
   Bunu dosyanın en altına ekle
===================================================== */

/* -----------------------------------
   ORTAK
----------------------------------- */
body.otel-style-luxury,
body.otel-style-modern,
body.otel-style-butik{
  transition:background .35s ease,color .35s ease;
}

body.otel-style-luxury .experience-card,
body.otel-style-modern .experience-card,
body.otel-style-butik .experience-card,
body.otel-style-luxury .room-card,
body.otel-style-modern .room-card,
body.otel-style-butik .room-card,
body.otel-style-luxury .review-card,
body.otel-style-modern .review-card,
body.otel-style-butik .review-card,
body.otel-style-luxury .region-card,
body.otel-style-modern .region-card,
body.otel-style-butik .region-card,
body.otel-style-luxury .otel-room-card,
body.otel-style-modern .otel-room-card,
body.otel-style-butik .otel-room-card,
body.otel-style-luxury .otel-area-card,
body.otel-style-modern .otel-area-card,
body.otel-style-butik .otel-area-card,
body.otel-style-luxury .otel-area-related__card,
body.otel-style-modern .otel-area-related__card,
body.otel-style-butik .otel-area-related__card,
body.otel-style-luxury .otel-experience-related__card,
body.otel-style-modern .otel-experience-related__card,
body.otel-style-butik .otel-experience-related__card,
body.otel-style-luxury .otel-room-section,
body.otel-style-modern .otel-room-section,
body.otel-style-butik .otel-room-section,
body.otel-style-luxury .otel-area-section,
body.otel-style-modern .otel-area-section,
body.otel-style-butik .otel-area-section,
body.otel-style-luxury .otel-experience-section,
body.otel-style-modern .otel-experience-section,
body.otel-style-butik .otel-experience-section,
body.otel-style-luxury .otel-room-booking-card,
body.otel-style-modern .otel-room-booking-card,
body.otel-style-butik .otel-room-booking-card,
body.otel-style-luxury .otel-area-booking-card,
body.otel-style-modern .otel-area-booking-card,
body.otel-style-butik .otel-area-booking-card,
body.otel-style-luxury .otel-experience-booking-card,
body.otel-style-modern .otel-experience-booking-card,
body.otel-style-butik .otel-experience-booking-card,
body.otel-style-luxury .about-box,
body.otel-style-modern .about-box,
body.otel-style-butik .about-box,
body.otel-style-luxury .service-card,
body.otel-style-modern .service-card,
body.otel-style-butik .service-card,
body.otel-style-luxury .otel-header,
body.otel-style-modern .otel-header,
body.otel-style-butik .otel-header,
body.otel-style-luxury .otel-booking-v2__shell,
body.otel-style-modern .otel-booking-v2__shell,
body.otel-style-butik .otel-booking-v2__shell{
  transition:
    background .35s ease,
    border-color .35s ease,
    border-radius .35s ease,
    box-shadow .35s ease,
    transform .35s ease,
    color .35s ease;
}

/* section ritmi */
body.otel-style-luxury section,
body.otel-style-modern section,
body.otel-style-butik section{
  position:relative;
}

/* ===================================
   LUXURY
=================================== */
body.otel-style-luxury{
  background:
    radial-gradient(circle at top left, rgba(181,134,82,.12), transparent 32%),
    radial-gradient(circle at bottom right, rgba(67,48,30,.08), transparent 28%),
    linear-gradient(180deg, #fbf7f1 0%, #f2ebe1 100%) !important;
  color:#2b211b !important;
}

body.otel-style-luxury section{
  padding-top:132px !important;
  padding-bottom:132px !important;
}

body.otel-style-luxury .otel-header{
  background:rgba(255,248,240,.88) !important;
  backdrop-filter:blur(20px) !important;
  -webkit-backdrop-filter:blur(20px) !important;
  border-bottom:1px solid rgba(181,134,82,.22) !important;
  box-shadow:0 12px 36px rgba(52,36,20,.08) !important;
}

body.otel-style-luxury .otel-header-inner{
  min-height:94px !important;
}

body.otel-style-luxury .otel-nav a{
  font-weight:700 !important;
  letter-spacing:.04em !important;
}

body.otel-style-luxury section h2,
body.otel-style-luxury .otel-section-head h2,
body.otel-style-luxury .otel-room-section__head h2,
body.otel-style-luxury .otel-area-section__head h2,
body.otel-style-luxury .otel-experience-section__head h2{
  font-family:"Libre Baskerville", Georgia, serif !important;
  font-size:clamp(40px, 4.2vw, 64px) !important;
  line-height:1.12 !important;
  letter-spacing:-1.3px !important;
  font-weight:700 !important;
  color:#2d231c !important;
}

body.otel-style-luxury section > .container > p,
body.otel-style-luxury .otel-section-head p{
  max-width:860px !important;
  font-size:19px !important;
  line-height:1.9 !important;
  color:#7a6957 !important;
}

body.otel-style-luxury .experience-grid,
body.otel-style-luxury .room-grid,
body.otel-style-luxury .review-grid,
body.otel-style-luxury .region-grid,
body.otel-style-luxury .otel-rooms-grid,
body.otel-style-luxury .otel-area-grid{
  gap:28px !important;
}

body.otel-style-luxury .experience-card,
body.otel-style-luxury .room-card,
body.otel-style-luxury .review-card,
body.otel-style-luxury .region-card,
body.otel-style-luxury .otel-room-card,
body.otel-style-luxury .otel-area-card,
body.otel-style-luxury .otel-area-related__card,
body.otel-style-luxury .otel-experience-related__card,
body.otel-style-luxury .otel-room-section,
body.otel-style-luxury .otel-area-section,
body.otel-style-luxury .otel-experience-section,
body.otel-style-luxury .otel-room-booking-card,
body.otel-style-luxury .otel-area-booking-card,
body.otel-style-luxury .otel-experience-booking-card,
body.otel-style-luxury .about-box,
body.otel-style-luxury .service-card{
  background:linear-gradient(180deg, #fffdfa 0%, #f8f0e7 100%) !important;
  border:1px solid rgba(181,134,82,.16) !important;
  border-radius:22px !important;
  box-shadow:0 26px 70px rgba(52,36,20,.10) !important;
}

body.otel-style-luxury .experience-card-media,
body.otel-style-luxury .room-image,
body.otel-style-luxury .otel-room-card__media,
body.otel-style-luxury .otel-area-card__media,
body.otel-style-luxury .otel-area-related__media,
body.otel-style-luxury .otel-experience-related__media{
  margin:16px 16px 0 16px !important;
  border-radius:18px !important;
  overflow:hidden !important;
}

body.otel-style-luxury .experience-card-body,
body.otel-style-luxury .room-card-body,
body.otel-style-luxury .otel-room-card__body,
body.otel-style-luxury .otel-area-card__body,
body.otel-style-luxury .otel-area-related__body,
body.otel-style-luxury .otel-experience-related__body{
  padding:28px 28px 30px !important;
}

body.otel-style-luxury .experience-card h3,
body.otel-style-luxury .room-card h3,
body.otel-style-luxury .otel-room-card__title,
body.otel-style-luxury .otel-area-card__title,
body.otel-style-luxury .otel-area-related__body h3,
body.otel-style-luxury .otel-experience-related__body h3{
  font-family:"Libre Baskerville", Georgia, serif !important;
  font-size:29px !important;
  line-height:1.18 !important;
  font-weight:700 !important;
  color:#2b211b !important;
}

body.otel-style-luxury .experience-card p,
body.otel-style-luxury .room-card p,
body.otel-style-luxury .review-card p,
body.otel-style-luxury .region-card p,
body.otel-style-luxury .otel-room-card__excerpt,
body.otel-style-luxury .otel-area-card p,
body.otel-style-luxury .otel-area-related__body p,
body.otel-style-luxury .otel-experience-related__body p{
  font-size:16px !important;
  line-height:1.88 !important;
  color:#786856 !important;
}

body.otel-style-luxury .experience-card span,
body.otel-style-luxury .otel-area-card__link,
body.otel-style-luxury .otel-area-related__link,
body.otel-style-luxury .otel-experience-related__link,
body.otel-style-luxury .region-card a{
  text-transform:uppercase !important;
  letter-spacing:.12em !important;
  font-size:13px !important;
  font-weight:800 !important;
  color:#b58652 !important;
}

body.otel-style-luxury .otel-button,
body.otel-style-luxury .btn{
  min-height:50px !important;
  border-radius:999px !important;
  padding:0 26px !important;
  letter-spacing:.04em !important;
  box-shadow:0 14px 34px rgba(181,134,82,.24) !important;
}

body.otel-style-luxury input,
body.otel-style-luxury select,
body.otel-style-luxury textarea,
body.otel-style-luxury .otel-booking-v2__field input,
body.otel-style-luxury .otel-booking-v2__field select{
  background:#fffdf9 !important;
  border:1px solid rgba(181,134,82,.18) !important;
  border-radius:18px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75) !important;
}

body.otel-style-luxury .otel-booking-v2__shell{
  border-radius:34px !important;
  border:1px solid rgba(181,134,82,.16) !important;
  box-shadow:0 28px 76px rgba(52,36,20,.12) !important;
}

body.otel-style-luxury .otel-booking-v2__intro{
  background:linear-gradient(180deg, #faf5ee 0%, #f1e7d8 100%) !important;
}

body.otel-style-luxury .otel-footer{
  background:linear-gradient(180deg, #1a2330 0%, #0f1723 100%) !important;
  color:#ebdfcf !important;
}

/* ===================================
   MODERN
=================================== */
body.otel-style-modern{
  background:
    linear-gradient(180deg, #f7f9fc 0%, #eef3f8 100%) !important;
  color:#11263d !important;
}

body.otel-style-modern section{
  padding-top:90px !important;
  padding-bottom:90px !important;
}

body.otel-style-modern .otel-header{
  background:#ffffff !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  border-bottom:1px solid rgba(15,23,42,.08) !important;
  box-shadow:none !important;
}

body.otel-style-modern .otel-header-inner{
  min-height:76px !important;
}

body.otel-style-modern .otel-nav a{
  font-weight:600 !important;
  letter-spacing:0 !important;
}

body.otel-style-modern section h2,
body.otel-style-modern .otel-section-head h2,
body.otel-style-modern .otel-room-section__head h2,
body.otel-style-modern .otel-area-section__head h2,
body.otel-style-modern .otel-experience-section__head h2{
  font-family:"Segoe UI", Arial, sans-serif !important;
  font-size:clamp(44px, 4.7vw, 74px) !important;
  line-height:1.02 !important;
  letter-spacing:-2px !important;
  font-weight:800 !important;
  color:#10243c !important;
}

body.otel-style-modern section > .container > p,
body.otel-style-modern .otel-section-head p{
  max-width:900px !important;
  font-size:20px !important;
  line-height:1.72 !important;
  color:#68829c !important;
}

body.otel-style-modern .experience-grid,
body.otel-style-modern .room-grid,
body.otel-style-modern .review-grid,
body.otel-style-modern .region-grid,
body.otel-style-modern .otel-rooms-grid,
body.otel-style-modern .otel-area-grid{
  gap:18px !important;
}

body.otel-style-modern .experience-card,
body.otel-style-modern .room-card,
body.otel-style-modern .review-card,
body.otel-style-modern .region-card,
body.otel-style-modern .otel-room-card,
body.otel-style-modern .otel-area-card,
body.otel-style-modern .otel-area-related__card,
body.otel-style-modern .otel-experience-related__card,
body.otel-style-modern .otel-room-section,
body.otel-style-modern .otel-area-section,
body.otel-style-modern .otel-experience-section,
body.otel-style-modern .otel-room-booking-card,
body.otel-style-modern .otel-area-booking-card,
body.otel-style-modern .otel-experience-booking-card,
body.otel-style-modern .about-box,
body.otel-style-modern .service-card{
  background:#ffffff !important;
  border:1px solid rgba(15,23,42,.08) !important;
  border-radius:10px !important;
  box-shadow:none !important;
}

body.otel-style-modern .experience-card-media,
body.otel-style-modern .room-image,
body.otel-style-modern .otel-room-card__media,
body.otel-style-modern .otel-area-card__media,
body.otel-style-modern .otel-area-related__media,
body.otel-style-modern .otel-experience-related__media{
  margin:0 !important;
  border-radius:0 !important;
  overflow:hidden !important;
}

body.otel-style-modern .experience-card-body,
body.otel-style-modern .room-card-body,
body.otel-style-modern .otel-room-card__body,
body.otel-style-modern .otel-area-card__body,
body.otel-style-modern .otel-area-related__body,
body.otel-style-modern .otel-experience-related__body{
  padding:22px 24px 24px !important;
}

body.otel-style-modern .experience-card h3,
body.otel-style-modern .room-card h3,
body.otel-style-modern .otel-room-card__title,
body.otel-style-modern .otel-area-card__title,
body.otel-style-modern .otel-area-related__body h3,
body.otel-style-modern .otel-experience-related__body h3{
  font-family:"Segoe UI", Arial, sans-serif !important;
  font-size:28px !important;
  line-height:1.08 !important;
  font-weight:800 !important;
  color:#10243c !important;
}

body.otel-style-modern .experience-card p,
body.otel-style-modern .room-card p,
body.otel-style-modern .review-card p,
body.otel-style-modern .region-card p,
body.otel-style-modern .otel-room-card__excerpt,
body.otel-style-modern .otel-area-card p,
body.otel-style-modern .otel-area-related__body p,
body.otel-style-modern .otel-experience-related__body p{
  font-size:16px !important;
  line-height:1.75 !important;
  color:#6b839d !important;
}

body.otel-style-modern .experience-card span,
body.otel-style-modern .otel-area-card__link,
body.otel-style-modern .otel-area-related__link,
body.otel-style-modern .otel-experience-related__link,
body.otel-style-modern .region-card a{
  font-size:15px !important;
  font-weight:800 !important;
  color:#10243c !important;
  letter-spacing:0 !important;
  text-transform:none !important;
}

body.otel-style-modern .otel-button,
body.otel-style-modern .btn{
  min-height:48px !important;
  border-radius:12px !important;
  box-shadow:none !important;
}

body.otel-style-modern .otel-button:hover,
body.otel-style-modern .btn:hover{
  transform:translateY(-2px) !important;
  box-shadow:none !important;
}

body.otel-style-modern input,
body.otel-style-modern select,
body.otel-style-modern textarea,
body.otel-style-modern .otel-booking-v2__field input,
body.otel-style-modern .otel-booking-v2__field select{
  background:#ffffff !important;
  border:1px solid rgba(15,23,42,.10) !important;
  border-radius:12px !important;
  box-shadow:none !important;
}

body.otel-style-modern .otel-booking-v2__shell{
  border-radius:16px !important;
  border:1px solid rgba(15,23,42,.08) !important;
  box-shadow:none !important;
}

body.otel-style-modern .otel-booking-v2__intro{
  background:#f6f9fc !important;
}

body.otel-style-modern .otel-footer{
  background:#111827 !important;
  color:#dbe5ef !important;
}

/* ===================================
   BUTIK
=================================== */
body.otel-style-butik{
  background:
    radial-gradient(circle at top right, rgba(198,163,126,.12), transparent 28%),
    linear-gradient(180deg, #fbf8f3 0%, #f6efe7 100%) !important;
  color:#34271f !important;
}

body.otel-style-butik section{
  padding-top:118px !important;
  padding-bottom:118px !important;
}

body.otel-style-butik .otel-header{
  background:rgba(255,251,246,.90) !important;
  backdrop-filter:blur(14px) !important;
  -webkit-backdrop-filter:blur(14px) !important;
  border-bottom:1px solid rgba(121,101,80,.14) !important;
  box-shadow:0 10px 26px rgba(63,43,25,.06) !important;
}

body.otel-style-butik .otel-header-inner{
  min-height:88px !important;
}

body.otel-style-butik .otel-nav a{
  font-weight:700 !important;
}

body.otel-style-butik section h2,
body.otel-style-butik .otel-section-head h2,
body.otel-style-butik .otel-room-section__head h2,
body.otel-style-butik .otel-area-section__head h2,
body.otel-style-butik .otel-experience-section__head h2{
  font-family:"Libre Baskerville", Georgia, serif !important;
  font-size:clamp(36px, 4vw, 58px) !important;
  line-height:1.12 !important;
  letter-spacing:-.8px !important;
  font-weight:600 !important;
  color:#35271f !important;
}

body.otel-style-butik section > .container > p,
body.otel-style-butik .otel-section-head p{
  max-width:780px !important;
  font-size:19px !important;
  line-height:1.85 !important;
  color:#816d5c !important;
}

body.otel-style-butik .experience-grid,
body.otel-style-butik .room-grid,
body.otel-style-butik .review-grid,
body.otel-style-butik .region-grid,
body.otel-style-butik .otel-rooms-grid,
body.otel-style-butik .otel-area-grid{
  gap:24px !important;
}

body.otel-style-butik .experience-card,
body.otel-style-butik .room-card,
body.otel-style-butik .review-card,
body.otel-style-butik .region-card,
body.otel-style-butik .otel-room-card,
body.otel-style-butik .otel-area-card,
body.otel-style-butik .otel-area-related__card,
body.otel-style-butik .otel-experience-related__card,
body.otel-style-butik .otel-room-section,
body.otel-style-butik .otel-area-section,
body.otel-style-butik .otel-experience-section,
body.otel-style-butik .otel-room-booking-card,
body.otel-style-butik .otel-area-booking-card,
body.otel-style-butik .otel-experience-booking-card,
body.otel-style-butik .about-box,
body.otel-style-butik .service-card{
  background:linear-gradient(180deg, #fffdfa 0%, #fcf5ee 100%) !important;
  border:1px solid rgba(121,101,80,.12) !important;
  border-radius:34px !important;
  box-shadow:0 22px 54px rgba(63,43,25,.09) !important;
}

body.otel-style-butik .experience-card:nth-child(2),
body.otel-style-butik .room-card:nth-child(2),
body.otel-style-butik .review-card:nth-child(2),
body.otel-style-butik .region-card:nth-child(2){
  transform:translateY(12px) !important;
}

body.otel-style-butik .experience-card-media,
body.otel-style-butik .room-image,
body.otel-style-butik .otel-room-card__media,
body.otel-style-butik .otel-area-card__media,
body.otel-style-butik .otel-area-related__media,
body.otel-style-butik .otel-experience-related__media{
  margin:18px 18px 0 18px !important;
  border-radius:24px !important;
  overflow:hidden !important;
}

body.otel-style-butik .experience-card-body,
body.otel-style-butik .room-card-body,
body.otel-style-butik .otel-room-card__body,
body.otel-style-butik .otel-area-card__body,
body.otel-style-butik .otel-area-related__body,
body.otel-style-butik .otel-experience-related__body{
  padding:26px 26px 30px !important;
}

body.otel-style-butik .experience-card h3,
body.otel-style-butik .room-card h3,
body.otel-style-butik .otel-room-card__title,
body.otel-style-butik .otel-area-card__title,
body.otel-style-butik .otel-area-related__body h3,
body.otel-style-butik .otel-experience-related__body h3{
  font-family:"Libre Baskerville", Georgia, serif !important;
  font-size:29px !important;
  line-height:1.18 !important;
  font-weight:600 !important;
  color:#33261f !important;
}

body.otel-style-butik .experience-card p,
body.otel-style-butik .room-card p,
body.otel-style-butik .review-card p,
body.otel-style-butik .region-card p,
body.otel-style-butik .otel-room-card__excerpt,
body.otel-style-butik .otel-area-card p,
body.otel-style-butik .otel-area-related__body p,
body.otel-style-butik .otel-experience-related__body p{
  font-size:16px !important;
  line-height:1.9 !important;
  color:#7d6a58 !important;
}

body.otel-style-butik .experience-card span,
body.otel-style-butik .otel-area-card__link,
body.otel-style-butik .otel-area-related__link,
body.otel-style-butik .otel-experience-related__link,
body.otel-style-butik .region-card a{
  font-size:15px !important;
  font-weight:700 !important;
  color:#b58652 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
}

body.otel-style-butik .otel-button,
body.otel-style-butik .btn{
  min-height:50px !important;
  border-radius:999px !important;
  padding:0 26px !important;
  box-shadow:0 12px 30px rgba(181,134,82,.18) !important;
}

body.otel-style-butik input,
body.otel-style-butik select,
body.otel-style-butik textarea,
body.otel-style-butik .otel-booking-v2__field input,
body.otel-style-butik .otel-booking-v2__field select{
  background:#fffdfa !important;
  border:1px solid rgba(121,101,80,.14) !important;
  border-radius:18px !important;
}

body.otel-style-butik .otel-booking-v2__shell{
  border-radius:34px !important;
  border:1px solid rgba(121,101,80,.12) !important;
  box-shadow:0 26px 66px rgba(63,43,25,.12) !important;
}

body.otel-style-butik .otel-booking-v2__intro{
  background:linear-gradient(180deg, #faf5ee 0%, #f2e8dd 100%) !important;
}

body.otel-style-butik .otel-footer{
  background:linear-gradient(180deg, #2b221c 0%, #1e1713 100%) !important;
  color:#efe1cf !important;
}
/* =====================================================
   FINAL GLOBAL DESIGN FIX PACK
   - Hero mavi boşluk düzeltme
   - Rezervasyon başlık boyutu düzeltme
   - Section spacing düzeltme
   - Design style renk/tasarım ayrımı güçlendirme
   Dosyanın EN ALTINA ekle
===================================================== */

/* =====================================================
   ORTAK DÜZELTMELER
===================================================== */

/* Hero üst-alt mavi blok sorunu */
body.otel-style-default .otel-hero-v2,
body.otel-style-luxury .otel-hero-v2,
body.otel-style-modern .otel-hero-v2,
body.otel-style-butik .otel-hero-v2{
  background:transparent !important;
  padding-top:0 !important;
  margin-top:0 !important;
}

body.otel-style-default .otel-hero-v2__track,
body.otel-style-luxury .otel-hero-v2__track,
body.otel-style-modern .otel-hero-v2__track,
body.otel-style-butik .otel-hero-v2__track{
  height:720px !important;
  min-height:720px !important;
}

body.otel-style-default .otel-hero-v2__slide,
body.otel-style-luxury .otel-hero-v2__slide,
body.otel-style-modern .otel-hero-v2__slide,
body.otel-style-butik .otel-hero-v2__slide{
  inset:0 !important;
}

body.otel-style-default .otel-hero-v2__media,
body.otel-style-luxury .otel-hero-v2__media,
body.otel-style-modern .otel-hero-v2__media,
body.otel-style-butik .otel-hero-v2__media{
  inset:0 !important;
}

/* Bölümler arası fazla boşluk azalt */
body.otel-style-default section,
body.otel-style-luxury section,
body.otel-style-modern section,
body.otel-style-butik section{
  padding-top:88px !important;
  padding-bottom:88px !important;
}

/* Hero sonrası rezervasyon bloğu daha dengeli */
body.otel-style-default .otel-booking-v2,
body.otel-style-luxury .otel-booking-v2,
body.otel-style-modern .otel-booking-v2,
body.otel-style-butik .otel-booking-v2{
  margin-top:-54px !important;
}

/* Rezervasyon başlığı küçült */
body.otel-style-default .otel-booking-v2__intro h2,
body.otel-style-luxury .otel-booking-v2__intro h2,
body.otel-style-modern .otel-booking-v2__intro h2,
body.otel-style-butik .otel-booking-v2__intro h2{
  font-size:clamp(24px, 2.4vw, 42px) !important;
  line-height:1.08 !important;
  letter-spacing:-.7px !important;
}

body.otel-style-default .otel-booking-v2__intro p,
body.otel-style-luxury .otel-booking-v2__intro p,
body.otel-style-modern .otel-booking-v2__intro p,
body.otel-style-butik .otel-booking-v2__intro p{
  font-size:16px !important;
  line-height:1.8 !important;
}

/* Ana section başlıklarında spacing toparla */
body.otel-style-default .otel-section-head,
body.otel-style-luxury .otel-section-head,
body.otel-style-modern .otel-section-head,
body.otel-style-butik .otel-section-head{
  margin-bottom:22px !important;
}

body.otel-style-default section > .container > p,
body.otel-style-luxury section > .container > p,
body.otel-style-modern section > .container > p,
body.otel-style-butik section > .container > p{
  margin-bottom:26px !important;
}

/* Deneyimler kartı güzel kaldığı için onu koru */
body.otel-style-butik .experience-card{
  border-radius:34px !important;
}

/* =====================================================
   LUXURY
===================================================== */
body.otel-style-luxury{
  background:
    radial-gradient(circle at top left, rgba(181,134,82,.16), transparent 30%),
    radial-gradient(circle at bottom right, rgba(56,40,24,.10), transparent 24%),
    linear-gradient(180deg, #f9f3eb 0%, #efe4d4 100%) !important;
  color:#2e221a !important;
}

body.otel-style-luxury .otel-header{
  background:rgba(255,246,235,.92) !important;
  border-bottom:1px solid rgba(181,134,82,.22) !important;
  box-shadow:0 10px 28px rgba(58,40,20,.08) !important;
}

body.otel-style-luxury .otel-brand-text,
body.otel-style-luxury .otel-nav a{
  color:#3a2a1f !important;
}

body.otel-style-luxury .otel-button,
body.otel-style-luxury .btn{
  background:#b58652 !important;
  border-color:#b58652 !important;
  color:#fff !important;
}

body.otel-style-luxury .otel-button.is-outline{
  background:#fffaf3 !important;
  color:#3a2a1f !important;
  border-color:#d9b487 !important;
}

body.otel-style-luxury section h2,
body.otel-style-luxury .otel-section-head h2{
  font-family:"Libre Baskerville", Georgia, serif !important;
  color:#33241c !important;
}

body.otel-style-luxury section > .container > p,
body.otel-style-luxury .otel-section-head p{
  color:#7d6751 !important;
}

body.otel-style-luxury .experience-card,
body.otel-style-luxury .room-card,
body.otel-style-luxury .review-card,
body.otel-style-luxury .region-card,
body.otel-style-luxury .otel-room-card,
body.otel-style-luxury .otel-area-card,
body.otel-style-luxury .otel-room-section,
body.otel-style-luxury .otel-area-section,
body.otel-style-luxury .otel-experience-section,
body.otel-style-luxury .otel-room-booking-card,
body.otel-style-luxury .otel-area-booking-card,
body.otel-style-luxury .otel-experience-booking-card,
body.otel-style-luxury .about-box,
body.otel-style-luxury .service-card,
body.otel-style-luxury .otel-booking-v2__shell{
  background:linear-gradient(180deg, #fffdf9 0%, #f7efe5 100%) !important;
  border:1px solid rgba(181,134,82,.18) !important;
  box-shadow:0 22px 56px rgba(59,41,22,.10) !important;
}

body.otel-style-luxury .otel-booking-v2__intro{
  background:linear-gradient(180deg, #f7efe4 0%, #efe1cf 100%) !important;
}

body.otel-style-luxury input,
body.otel-style-luxury select,
body.otel-style-luxury textarea,
body.otel-style-luxury .otel-booking-v2__field input,
body.otel-style-luxury .otel-booking-v2__field select{
  background:#fffaf4 !important;
  border-color:rgba(181,134,82,.20) !important;
  color:#35271f !important;
}

body.otel-style-luxury .otel-footer{
  background:linear-gradient(180deg, #20170f 0%, #120d09 100%) !important;
  color:#eadcc8 !important;
}

/* =====================================================
   MODERN
===================================================== */
body.otel-style-modern{
  background:
    linear-gradient(180deg, #eef4fb 0%, #e5edf7 100%) !important;
  color:#10243a !important;
}

body.otel-style-modern .otel-header{
  background:#ffffff !important;
  border-bottom:1px solid rgba(14,28,48,.08) !important;
  box-shadow:none !important;
}

body.otel-style-modern .otel-brand-text,
body.otel-style-modern .otel-nav a{
  color:#10243a !important;
}

body.otel-style-modern .otel-button,
body.otel-style-modern .btn{
  background:#163a63 !important;
  border-color:#163a63 !important;
  color:#ffffff !important;
  border-radius:12px !important;
  box-shadow:none !important;
}

body.otel-style-modern .otel-button.is-outline{
  background:#ffffff !important;
  color:#163a63 !important;
  border-color:#9bb5d0 !important;
}

body.otel-style-modern section h2,
body.otel-style-modern .otel-section-head h2{
  font-family:"Segoe UI", Arial, sans-serif !important;
  color:#0f2742 !important;
}

body.otel-style-modern section > .container > p,
body.otel-style-modern .otel-section-head p{
  color:#5f7b98 !important;
}

body.otel-style-modern .experience-card,
body.otel-style-modern .room-card,
body.otel-style-modern .review-card,
body.otel-style-modern .region-card,
body.otel-style-modern .otel-room-card,
body.otel-style-modern .otel-area-card,
body.otel-style-modern .otel-room-section,
body.otel-style-modern .otel-area-section,
body.otel-style-modern .otel-experience-section,
body.otel-style-modern .otel-room-booking-card,
body.otel-style-modern .otel-area-booking-card,
body.otel-style-modern .otel-experience-booking-card,
body.otel-style-modern .about-box,
body.otel-style-modern .service-card,
body.otel-style-modern .otel-booking-v2__shell{
  background:#ffffff !important;
  border:1px solid rgba(16,36,58,.10) !important;
  box-shadow:none !important;
  border-radius:12px !important;
}

body.otel-style-modern .experience-card-media,
body.otel-style-modern .room-image,
body.otel-style-modern .otel-room-card__media,
body.otel-style-modern .otel-area-card__media{
  margin:0 !important;
  border-radius:0 !important;
}

body.otel-style-modern .otel-booking-v2__intro{
  background:#edf4fb !important;
}

body.otel-style-modern input,
body.otel-style-modern select,
body.otel-style-modern textarea,
body.otel-style-modern .otel-booking-v2__field input,
body.otel-style-modern .otel-booking-v2__field select{
  background:#ffffff !important;
  border-color:rgba(16,36,58,.14) !important;
  color:#10243a !important;
  border-radius:12px !important;
  box-shadow:none !important;
}

body.otel-style-modern .otel-footer{
  background:linear-gradient(180deg, #0f2035 0%, #0a1524 100%) !important;
  color:#d7e4f2 !important;
}

/* =====================================================
   BUTIK
===================================================== */
body.otel-style-butik{
  background:
    radial-gradient(circle at top right, rgba(196,151,103,.14), transparent 28%),
    linear-gradient(180deg, #fbf7f1 0%, #f4ece2 100%) !important;
  color:#34271f !important;
}

body.otel-style-butik .otel-header{
  background:rgba(255,250,244,.92) !important;
  border-bottom:1px solid rgba(176,137,97,.16) !important;
  box-shadow:0 10px 24px rgba(64,45,25,.06) !important;
}

body.otel-style-butik .otel-brand-text,
body.otel-style-butik .otel-nav a{
  color:#3a2b20 !important;
}

body.otel-style-butik .otel-button,
body.otel-style-butik .btn{
  background:#c08c4d !important;
  border-color:#c08c4d !important;
  color:#fff !important;
}

body.otel-style-butik .otel-button.is-outline{
  background:#fffaf4 !important;
  color:#8f6331 !important;
  border-color:#dfbf97 !important;
}

body.otel-style-butik section h2,
body.otel-style-butik .otel-section-head h2{
  font-family:"Libre Baskerville", Georgia, serif !important;
  color:#3a2b21 !important;
}

body.otel-style-butik section > .container > p,
body.otel-style-butik .otel-section-head p{
  color:#846d57 !important;
}

body.otel-style-butik .experience-card,
body.otel-style-butik .room-card,
body.otel-style-butik .review-card,
body.otel-style-butik .region-card,
body.otel-style-butik .otel-room-card,
body.otel-style-butik .otel-area-card,
body.otel-style-butik .otel-room-section,
body.otel-style-butik .otel-area-section,
body.otel-style-butik .otel-experience-section,
body.otel-style-butik .otel-room-booking-card,
body.otel-style-butik .otel-area-booking-card,
body.otel-style-butik .otel-experience-booking-card,
body.otel-style-butik .about-box,
body.otel-style-butik .service-card,
body.otel-style-butik .otel-booking-v2__shell{
  background:linear-gradient(180deg, #fffdfa 0%, #fbf3e9 100%) !important;
  border:1px solid rgba(176,137,97,.13) !important;
  border-radius:32px !important;
  box-shadow:0 20px 48px rgba(64,45,25,.08) !important;
}

body.otel-style-butik .otel-booking-v2__intro{
  background:linear-gradient(180deg, #f8efe5 0%, #efe1d0 100%) !important;
}

body.otel-style-butik input,
body.otel-style-butik select,
body.otel-style-butik textarea,
body.otel-style-butik .otel-booking-v2__field input,
body.otel-style-butik .otel-booking-v2__field select{
  background:#fffcf8 !important;
  border-color:rgba(176,137,97,.16) !important;
  color:#34271f !important;
}

body.otel-style-butik .otel-footer{
  background:linear-gradient(180deg, #2d2119 0%, #1b140f 100%) !important;
  color:#efe1cf !important;
}

/* =====================================================
   HEADER / CTA RENGİ DEĞİŞİMİ GÜÇLENSİN
===================================================== */
body.otel-style-luxury .otel-top-actions .otel-button{
  background:#b58652 !important;
  border-color:#b58652 !important;
}

body.otel-style-modern .otel-top-actions .otel-button{
  background:#163a63 !important;
  border-color:#163a63 !important;
}

body.otel-style-butik .otel-top-actions .otel-button{
  background:#c08c4d !important;
  border-color:#c08c4d !important;
}

/* =====================================================
   HERO OVERLAY TONE AYRIMI
===================================================== */
body.otel-style-luxury .otel-hero-v2__overlay{
  background:
    linear-gradient(180deg, rgba(28,18,11,.12) 0%, rgba(28,18,11,.22) 34%, rgba(28,18,11,.58) 100%),
    linear-gradient(90deg, rgba(45,30,18,.34) 0%, rgba(45,30,18,.16) 55%, rgba(45,30,18,.06) 100%) !important;
}

body.otel-style-modern .otel-hero-v2__overlay{
  background:
    linear-gradient(180deg, rgba(8,19,34,.10) 0%, rgba(8,19,34,.16) 34%, rgba(8,19,34,.46) 100%),
    linear-gradient(90deg, rgba(13,37,66,.24) 0%, rgba(13,37,66,.10) 55%, rgba(13,37,66,.04) 100%) !important;
}

body.otel-style-butik .otel-hero-v2__overlay{
  background:
    linear-gradient(180deg, rgba(34,24,16,.10) 0%, rgba(34,24,16,.18) 34%, rgba(34,24,16,.50) 100%),
    linear-gradient(90deg, rgba(76,54,31,.22) 0%, rgba(76,54,31,.10) 55%, rgba(76,54,31,.04) 100%) !important;
}

/* =====================================================
   MOBİL GÜVENLİK
===================================================== */
@media (max-width: 991px){
  body.otel-style-default section,
  body.otel-style-luxury section,
  body.otel-style-modern section,
  body.otel-style-butik section{
    padding-top:72px !important;
    padding-bottom:72px !important;
  }

  body.otel-style-default .otel-booking-v2,
  body.otel-style-luxury .otel-booking-v2,
  body.otel-style-modern .otel-booking-v2,
  body.otel-style-butik .otel-booking-v2{
    margin-top:-36px !important;
  }

  body.otel-style-default .otel-booking-v2__intro h2,
  body.otel-style-luxury .otel-booking-v2__intro h2,
  body.otel-style-modern .otel-booking-v2__intro h2,
  body.otel-style-butik .otel-booking-v2__intro h2{
    font-size:clamp(22px, 6vw, 34px) !important;
  }

  body.otel-style-butik .experience-card:nth-child(2),
  body.otel-style-butik .room-card:nth-child(2),
  body.otel-style-butik .review-card:nth-child(2),
  body.otel-style-butik .region-card:nth-child(2){
    transform:none !important;
  }
}
/* =========================================
   ANA SAYFA GALERİ (GALERİ 1) - OVAL FIX
   ========================================= */

/* Ana wrapper */
.otel-home-gallery,
.otel-home-gallery-slider{
  position:relative;
}

/* ASIL OLAY BURASI */
.otel-home-gallery img,
.otel-home-gallery-slider img{
  border-radius:32px !important;
}

/* Slider viewport */
.otel-home-gallery-slider__viewport{
  border-radius:32px !important;
  overflow:hidden !important;
}

/* Slide item */
.otel-home-gallery-slider__track > *,
.otel-home-gallery-slider__slide{
  border-radius:32px !important;
  overflow:hidden !important;
}

/* RESİM TAŞMASINI ENGELLE */
.otel-home-gallery-slider img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

/* ALT THUMBNAIL GALERİ (varsa) */
.otel-home-gallery-thumbs img{
  border-radius:14px !important;
}

/* OK BUTONLARI (detay sayfa gibi yuvarlak) */
.otel-home-gallery-slider__arrow{
  border-radius:50% !important;
}

/* DOT BAR */
.otel-home-gallery-slider__dots{
  border-radius:999px !important;
}