@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,300;1,400&family=Jost:wght@200;300;400;500&display=swap');

:root {
  --cream: #FAFAF6;
  --warm:  #F4EFE6;
  --linen: #EDE7DA;
  --gold:  #C4A882;
  --gold-d:#A8885E;
  --gold-l:#D4BEA0;
  --dark:  #1A1712;
  --dark2: #2C2820;
  --mid:   #5A5248;
  --muted: #8A8278;
  --light: #E2DBD0;
  --fd: 'Cormorant Garamond', Georgia, serif;
  --fb: 'Jost', system-ui, sans-serif;
  --ease: cubic-bezier(0.25, 0.46, 0.45, 0.94);
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
}

*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; font-size:16px; }
body { background:var(--cream); color:var(--dark); font-family:var(--fb); font-weight:300; line-height:1.7; overflow-x:hidden; }
a { text-decoration:none; color:inherit; }
img { display:block; max-width:100%; }
.container { max-width:1240px; margin:0 auto; padding:0 48px; }

/* ─── TYPOGRAPHY ─── */
.label {
  font-family:var(--fb); font-weight:300; font-size:0.6rem;
  letter-spacing:0.4em; text-transform:uppercase; color:var(--gold-d);
  display:block; margin-bottom:16px;
}
.label--light { color:var(--gold); }

.section-title {
  font-family:var(--fd); font-weight:300; font-size:clamp(2.2rem,4vw,3.4rem);
  line-height:1.1; color:var(--dark); margin-bottom:1.5rem;
}
.section-title em { font-style:italic; color:var(--gold-d); }
.section-title--light { color:var(--cream); }
.section-title--light em { color:var(--gold); }

.section-link {
  font-family:var(--fb); font-size:0.65rem; font-weight:300;
  letter-spacing:0.2em; text-transform:uppercase; color:var(--gold-d);
  border-bottom:0.5px solid var(--gold-d); padding-bottom:2px;
  transition:opacity .2s;
}
.section-link:hover { opacity:0.6; }

/* ─── BUTTONS ─── */
.btn {
  display:inline-flex; align-items:center; justify-content:center;
  font-family:var(--fb); font-weight:300; font-size:0.65rem;
  letter-spacing:0.28em; text-transform:uppercase;
  padding:15px 36px; border:0.5px solid transparent;
  cursor:pointer; transition:all 0.35s var(--ease); white-space:nowrap;
}
.btn--dark { background:var(--dark); border-color:var(--dark); color:var(--cream); }
.btn--dark:hover { background:var(--dark2); border-color:var(--dark2); }
.btn--gold { background:var(--gold-d); border-color:var(--gold-d); color:var(--cream); }
.btn--gold:hover { background:var(--gold); border-color:var(--gold); }
.btn--ghost-light { background:transparent; border-color:rgba(250,250,246,0.55); color:var(--cream); }
.btn--ghost-light:hover { background:rgba(250,250,246,0.1); border-color:var(--cream); }
.btn--dark-sm { background:var(--dark); border-color:var(--dark); color:var(--cream); font-size:0.58rem; padding:10px 20px; }
.btn--dark-sm:hover { background:var(--gold-d); border-color:var(--gold-d); }
.btn--light-sm { background:var(--cream); border-color:var(--cream); color:var(--dark); font-size:0.58rem; padding:10px 20px; }
.btn--full { width:100%; text-align:center; }

/* ─── REVEAL ─── */
[data-reveal] { opacity:0; transform:translateY(28px); transition:opacity 0.9s var(--ease-out), transform 0.9s var(--ease-out); }
[data-reveal].is-visible { opacity:1; transform:translateY(0); }

/* ─── NAV ─── */
.nav {
  position:fixed; top:0; left:0; right:0; z-index:100;
  padding:24px 0; transition:background 0.5s var(--ease), padding 0.4s var(--ease), box-shadow 0.4s;
}
.nav.is-scrolled {
  background:rgba(250,250,246,0.96); backdrop-filter:blur(12px);
  box-shadow:0 1px 0 var(--light); padding:14px 0;
}
.nav-inner {
  max-width:1240px; margin:0 auto; padding:0 48px;
  display:flex; align-items:center; justify-content:space-between; gap:24px;
}
.nav-links { display:flex; list-style:none; gap:36px; }
.nav-links a {
  font-size:0.6rem; font-weight:300; letter-spacing:0.2em; text-transform:uppercase;
  color:rgba(250,250,246,0.85); transition:color 0.2s;
}
.nav.is-scrolled .nav-links a { color:var(--mid); }
.nav-links a:hover { color:var(--gold); }
.nav.is-scrolled .nav-links a:hover { color:var(--gold-d); }

.nav-logo { flex-shrink:0; }
.nav-logo__img { height:40px; width:auto; filter:brightness(0) invert(1); transition:filter 0.4s; }
.nav.is-scrolled .nav-logo__img { filter:brightness(0); }

.nav-right { display:flex; align-items:center; gap:32px; }
.lang-switcher { display:flex; align-items:center; gap:6px; }
.lang-btn { font-size:0.58rem; font-weight:300; letter-spacing:0.15em; text-transform:uppercase; color:rgba(250,250,246,0.55); cursor:pointer; transition:color 0.2s; }
.nav.is-scrolled .lang-btn { color:var(--muted); }
.lang-btn.active { color:var(--cream); font-weight:400; }
.nav.is-scrolled .lang-btn.active { color:var(--dark); }
.lang-btn:hover { color:var(--gold); }
.lang-sep { color:rgba(250,250,246,0.25); font-size:0.6rem; }
.nav.is-scrolled .lang-sep { color:var(--light); }

/* ─── HERO ─── */
.hero {
  position:relative; height:100vh; min-height:640px;
  display:flex; align-items:center; justify-content:center;
  text-align:center; overflow:hidden;
}
.hero-bg { position:absolute; inset:0; }
.hero-bg__photo {
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover;
  opacity:0; transition:opacity 2s var(--ease);
}
.hero-bg__photo.active { opacity:1; }
.hero-overlay {
  position:absolute; inset:0;
  background:linear-gradient(to bottom, rgba(20,16,10,0.52) 0%, rgba(20,16,10,0.22) 45%, rgba(20,16,10,0.72) 100%);
}
.hero-content { position:relative; z-index:2; padding:0 24px; max-width:700px; }
.hero-eyebrow {
  font-size:0.62rem; font-weight:200; letter-spacing:0.55em; text-transform:uppercase;
  color:var(--gold); margin-bottom:24px; opacity:0;
  animation:fadeUp 1.1s var(--ease-out) 0.4s forwards;
}
.hero-logo-wrap { margin-bottom:12px; opacity:0; animation:fadeUp 1.1s var(--ease-out) 0.65s forwards; }
.hero-logo__img { height:90px; width:auto; margin:0 auto; filter:brightness(0) invert(1); }
.hero-rule { width:44px; height:0.5px; background:var(--gold); margin:20px auto; opacity:0; animation:fadeIn 1s var(--ease-out) 1s forwards; }
.hero-sub {
  font-family:var(--fd); font-style:italic; font-weight:300;
  font-size:clamp(1.05rem,2.2vw,1.35rem); color:rgba(250,250,246,0.82);
  margin-bottom:36px; line-height:1.7; opacity:0;
  animation:fadeUp 1.1s var(--ease-out) 1.1s forwards;
}
.hero-ctas { display:flex; gap:14px; justify-content:center; flex-wrap:wrap; opacity:0; animation:fadeUp 1.1s var(--ease-out) 1.35s forwards; }
.hero-scroll-indicator {
  position:absolute; bottom:36px; left:50%; transform:translateX(-50%);
  z-index:2; opacity:0; animation:fadeIn 1s var(--ease-out) 2.2s forwards;
}
.hero-scroll-indicator span {
  display:block; width:1px; height:60px;
  background:linear-gradient(to bottom, rgba(196,168,130,0.7), transparent);
  animation:scrollPulse 2.5s ease infinite;
}

/* ─── BOOK BAR ─── */
.book-bar {
  background:var(--warm); border-bottom:0.5px solid var(--light);
  padding:0;
}
.book-bar__inner { max-width:1240px; margin:0 auto; padding:0 48px; }
.book-bar__label {
  font-size:0.58rem; font-weight:300; letter-spacing:0.3em; text-transform:uppercase;
  color:var(--gold-d); padding:14px 0 10px; display:block;
}
.book-bar__fields {
  display:flex; align-items:stretch; background:var(--cream);
  border:0.5px solid var(--light); overflow:hidden;
}
.book-field {
  flex:1; padding:16px 20px; display:flex; flex-direction:column; gap:4px;
  border-right:0.5px solid var(--light); cursor:pointer;
  transition:background 0.2s;
}
.book-field:hover { background:var(--warm); }
.book-field__label { font-size:0.52rem; font-weight:300; letter-spacing:0.22em; text-transform:uppercase; color:var(--gold-d); }
.book-field__val { font-family:var(--fd); font-size:0.95rem; color:var(--mid); }
.book-bar__btn {
  background:var(--dark); color:var(--cream); border:none; padding:16px 32px;
  font-family:var(--fb); font-size:0.6rem; letter-spacing:0.25em; text-transform:uppercase;
  cursor:pointer; flex-shrink:0; transition:background 0.25s; white-space:nowrap;
}
.book-bar__btn:hover { background:var(--gold-d); }

/* ─── MANIFESTO ─── */
.manifesto {
  padding:120px 48px; background:var(--cream);
  display:flex; justify-content:center;
}
.manifesto-inner { max-width:900px; text-align:center; }
.manifesto__title {
  font-family:var(--fd); font-weight:300;
  font-size:clamp(2.4rem,5vw,4rem); line-height:1.1;
  color:var(--dark); margin-bottom:1.5rem;
}
.manifesto__title em { font-style:italic; color:var(--gold-d); }
.manifesto__rule { width:44px; height:0.5px; background:var(--gold); margin:2rem auto; }
.manifesto__body {
  font-family:var(--fd); font-size:clamp(1.05rem,1.8vw,1.2rem);
  font-weight:300; color:var(--mid); line-height:1.9; max-width:640px; margin:0 auto 4rem;
}
.manifesto__pillars { display:grid; grid-template-columns:1fr auto 1fr auto 1fr; gap:0; align-items:start; }
.pillar { padding:32px 24px; }
.pillar__divider { width:0.5px; background:var(--light); align-self:stretch; margin:32px 0; }
.pillar__n {
  font-family:var(--fd); font-size:2rem; font-weight:300;
  color:var(--gold); opacity:0.45; display:block; margin-bottom:12px;
}
.pillar__t { font-weight:400; font-size:0.88rem; color:var(--dark); margin-bottom:8px; }
.pillar__b { font-size:0.82rem; color:var(--muted); line-height:1.7; }

/* ─── STAYS ─── */
.stays { padding:0 0 100px; background:var(--warm); }
.stays__header {
  padding:80px 48px 40px; max-width:1240px; margin:0 auto;
  display:flex; align-items:baseline; gap:24px;
}
.stays__header .section-title { margin-bottom:0; flex:1; }

.stays-grid {
  max-width:1240px; margin:0 auto; padding:0 48px;
  display:grid; grid-template-columns:1fr 1fr; gap:2px;
}
.stays-grid__col { display:flex; flex-direction:column; gap:2px; }

.stay-card { background:var(--cream); overflow:hidden; }
.stay-card__img-wrap { position:relative; overflow:hidden; }
.stay-card--wide .stay-card__img-wrap { height:480px; }
.stay-card:not(.stay-card--wide) .stay-card__img-wrap { height:236px; }
.stay-card__img { width:100%; height:100%; object-fit:cover; transition:transform 0.8s var(--ease); }
.stay-card:hover .stay-card__img { transform:scale(1.04); }
.stay-card__badge {
  position:absolute; top:16px; left:16px;
  font-size:0.52rem; font-weight:300; letter-spacing:0.2em; text-transform:uppercase;
  background:var(--dark); color:var(--cream); padding:5px 12px;
}
.stay-card__badge--gold { background:var(--gold-d); }
.stay-card__hover-overlay {
  position:absolute; inset:0;
  background:rgba(26,23,18,0.45);
  display:flex; align-items:center; justify-content:center;
  opacity:0; transition:opacity 0.35s var(--ease);
}
.stay-card:hover .stay-card__hover-overlay { opacity:1; }
.stay-card__body { padding:24px 28px 28px; }
.stay-card__meta {
  font-size:0.65rem; color:var(--muted); letter-spacing:0.08em;
  margin-bottom:8px; display:flex; gap:8px; align-items:center;
}
.dot { opacity:0.4; }
.stay-card__name {
  font-family:var(--fd); font-weight:400; font-size:1.5rem;
  color:var(--dark); margin-bottom:10px;
}
.stay-card__desc { font-size:0.82rem; color:var(--mid); line-height:1.65; margin-bottom:20px; }
.stay-card__footer { display:flex; align-items:center; justify-content:space-between; }
.stay-card__amenities { display:flex; gap:10px; }
.stay-card__amenities span {
  width:28px; height:28px; border:0.5px solid var(--light);
  display:flex; align-items:center; justify-content:center;
  font-size:0.7rem; color:var(--gold-d);
}

.stays-cta-bar { max-width:1240px; margin:40px auto 0; padding:0 48px; text-align:center; }

/* ─── TEXTURE BREAK ─── */
.texture-section {
  background:var(--dark2);
  padding:100px 48px; display:flex; align-items:center; justify-content:center;
}
.texture-section__quote { text-align:center; max-width:600px; }
.texture-section__mark {
  font-family:var(--fd); font-size:5rem; line-height:0.6;
  color:var(--gold); display:block; margin-bottom:20px; opacity:0.6;
}
.texture-section__text {
  font-family:var(--fd); font-style:italic; font-weight:300;
  font-size:clamp(1.2rem,2.5vw,1.7rem); color:var(--cream);
  line-height:1.6; margin-bottom:20px;
}
.texture-section__attr {
  font-size:0.6rem; font-weight:300; letter-spacing:0.35em;
  text-transform:uppercase; color:var(--gold); opacity:0.7;
}

/* ─── EXPERIENCES ─── */
.experiences { padding:100px 0; background:var(--dark); }
.experiences__header { max-width:1240px; margin:0 auto 56px; padding:0 48px; }
.exp-intro { font-family:var(--fd); font-style:italic; font-weight:300; font-size:1.1rem; color:rgba(250,250,246,0.6); max-width:480px; line-height:1.7; margin-top:-0.5rem; }
.exp-grid {
  max-width:1240px; margin:0 auto; padding:0 48px;
  display:grid; grid-template-columns:repeat(4,1fr);
  border-top:0.5px solid rgba(196,168,130,0.18);
}
.exp-card {
  padding:40px 32px; border-right:0.5px solid rgba(196,168,130,0.18);
  transition:background 0.3s;
}
.exp-card:last-child { border-right:none; }
.exp-card:hover { background:rgba(255,255,255,0.03); }
.exp-card__top { display:flex; flex-direction:column; gap:12px; margin-bottom:16px; }
.exp-card__num { font-family:var(--fd); font-size:2.2rem; font-weight:300; color:var(--gold); opacity:0.35; line-height:1; }
.exp-card h3 { font-family:var(--fd); font-weight:300; font-size:1.25rem; color:var(--cream); }
.exp-card p { font-size:0.8rem; color:rgba(250,250,246,0.5); line-height:1.8; margin-bottom:24px; }
.exp-card__tag {
  font-size:0.55rem; font-weight:300; letter-spacing:0.22em; text-transform:uppercase;
  color:var(--gold); border:0.5px solid rgba(196,168,130,0.35); padding:5px 12px;
  display:inline-block;
}

/* ─── ABOUT ─── */
.about { padding:120px 0; background:var(--cream); overflow:hidden; }
.about-grid {
  max-width:1240px; margin:0 auto; padding:0 48px;
  display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center;
}
.about-img-col { position:relative; }
.about-img-frame { position:relative; }
.about-img-frame img { width:100%; height:560px; object-fit:cover; }
.about-img-accent {
  position:absolute; bottom:-20px; right:-20px;
  width:160px; height:160px;
  border:0.5px solid var(--gold); z-index:-1;
}
.about-text-col { }
.about-body { font-size:0.92rem; color:var(--mid); line-height:1.85; margin-bottom:1.2rem; max-width:480px; }
.about-stats {
  display:flex; align-items:center; gap:0;
  border-top:0.5px solid var(--light); border-bottom:0.5px solid var(--light);
  margin:2rem 0;
}
.stat { flex:1; padding:24px 0; text-align:center; }
.stat__div { width:0.5px; background:var(--light); align-self:stretch; }
.stat__n { font-family:var(--fd); font-size:2rem; font-weight:300; color:var(--gold-d); display:block; }
.stat__l { font-size:0.6rem; font-weight:300; letter-spacing:0.15em; text-transform:uppercase; color:var(--muted); }

/* ─── HOSTS ─── */
.hosts { padding:100px 0; background:var(--dark); }
.hosts-inner {
  max-width:1240px; margin:0 auto; padding:0 48px;
  display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:start;
}
.hosts-body { font-size:0.88rem; color:rgba(250,250,246,0.6); line-height:1.85; margin-bottom:2rem; max-width:440px; }
.hosts-services { display:flex; flex-direction:column; }
.host-svc {
  display:flex; gap:20px; padding:24px 0;
  border-bottom:0.5px solid rgba(250,250,246,0.08);
}
.host-svc:first-child { border-top:0.5px solid rgba(250,250,246,0.08); }
.host-svc__icon { color:var(--gold); font-size:1rem; flex-shrink:0; margin-top:2px; }
.host-svc__t { font-weight:400; font-size:0.88rem; color:var(--cream); margin-bottom:4px; }
.host-svc__b { font-size:0.78rem; color:rgba(250,250,246,0.45); line-height:1.6; }

/* ─── TESTIMONIALS ─── */
.testimonials { padding:100px 0; background:var(--warm); }
.testimonials__header { max-width:1240px; margin:0 auto 48px; padding:0 48px; }
.test-grid {
  max-width:1240px; margin:0 auto; padding:0 48px;
  display:grid; grid-template-columns:1fr 1.35fr 1fr; gap:2px;
}
.test-card { background:var(--cream); padding:40px 36px; }
.test-card--featured { background:var(--dark); }
.test-stars { color:var(--gold-d); font-size:0.75rem; letter-spacing:3px; margin-bottom:20px; display:block; }
.test-card--featured .test-stars { color:var(--gold); }
.test-quote {
  font-family:var(--fd); font-style:italic; font-weight:300;
  font-size:1.05rem; color:var(--dark); line-height:1.7; margin-bottom:28px;
}
.test-card--featured .test-quote { color:var(--cream); font-size:1.15rem; }
.test-author { display:flex; align-items:center; gap:14px; padding-top:20px; border-top:0.5px solid var(--light); }
.test-card--featured .test-author { border-top-color:rgba(250,250,246,0.12); }
.test-avatar {
  width:40px; height:40px; border-radius:50%; background:var(--linen);
  display:flex; align-items:center; justify-content:center;
  font-size:0.68rem; font-weight:400; color:var(--mid); flex-shrink:0;
}
.test-card--featured .test-avatar { background:rgba(196,168,130,0.2); color:var(--gold); }
.test-name { font-size:0.8rem; font-weight:400; color:var(--dark); margin-bottom:2px; }
.test-card--featured .test-name { color:var(--cream); }
.test-origin { font-size:0.7rem; color:var(--muted); }
.test-card--featured .test-origin { color:rgba(250,250,246,0.45); }

/* ─── CONTACT ─── */
.contact { padding:120px 0; background:var(--cream); border-top:0.5px solid var(--light); }
.contact-grid {
  max-width:1240px; margin:0 auto; padding:0 48px;
  display:grid; grid-template-columns:1fr 1.5fr; gap:80px; align-items:start;
}
.contact-sub { font-size:0.88rem; color:var(--mid); line-height:1.8; margin-bottom:2rem; max-width:360px; }
.contact-details { display:flex; flex-direction:column; gap:14px; margin-bottom:2.5rem; }
.cdetail { display:flex; align-items:center; gap:12px; font-size:0.85rem; color:var(--mid); transition:color .2s; }
.cdetail:hover { color:var(--gold-d); }
.cdetail__icon {
  width:32px; height:32px; border:0.5px solid var(--light); display:flex;
  align-items:center; justify-content:center; font-size:0.8rem;
  color:var(--gold-d); flex-shrink:0;
}
.contact-location { display:flex; flex-direction:column; gap:3px; }
.contact-location__label { font-size:0.58rem; font-weight:300; letter-spacing:0.25em; text-transform:uppercase; color:var(--gold-d); margin-bottom:6px; }
.contact-location span:not(.contact-location__label) { font-size:0.82rem; color:var(--mid); }

.contact-form { display:flex; flex-direction:column; gap:20px; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.form-group { display:flex; flex-direction:column; gap:8px; }
.form-group label { font-size:0.58rem; font-weight:300; letter-spacing:0.22em; text-transform:uppercase; color:var(--muted); }
.form-group input, .form-group select, .form-group textarea {
  background:var(--warm); border:0.5px solid var(--light);
  padding:14px 16px; font-family:var(--fb); font-size:0.85rem;
  font-weight:300; color:var(--dark); outline:none; resize:none;
  transition:border-color .2s; border-radius:0; appearance:none; width:100%;
}
.form-group input:focus, .form-group select:focus, .form-group textarea:focus { border-color:var(--gold); }

/* ─── FOOTER ─── */
.footer { background:var(--dark); padding:72px 0 0; }
.footer-top {
  max-width:1240px; margin:0 auto; padding:0 48px 60px;
  display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr;
  gap:48px; border-bottom:0.5px solid rgba(250,250,246,0.08);
}
.footer-logo { height:44px; width:auto; filter:brightness(0) invert(1); opacity:0.82; margin-bottom:16px; }
.footer-tagline { font-size:0.8rem; color:rgba(250,250,246,0.4); line-height:1.7; margin-bottom:24px; }
.footer-social { display:flex; gap:12px; }
.footer-social a {
  width:36px; height:36px; border:0.5px solid rgba(250,250,246,0.12);
  display:flex; align-items:center; justify-content:center;
  color:rgba(250,250,246,0.45); transition:all .2s;
}
.footer-social a:hover { color:var(--gold); border-color:rgba(196,168,130,0.4); }
.footer-nav { grid-column:span 3; display:grid; grid-template-columns:1fr 1fr 1fr; gap:40px; }
.footer-col { display:flex; flex-direction:column; gap:12px; }
.footer-col__title { font-size:0.58rem; font-weight:300; letter-spacing:0.28em; text-transform:uppercase; color:var(--gold); margin-bottom:4px; }
.footer-col a { font-size:0.8rem; color:rgba(250,250,246,0.42); transition:color .2s; }
.footer-col a:hover { color:var(--cream); }
.footer-bottom {
  max-width:1240px; margin:0 auto; padding:22px 48px;
  display:flex; justify-content:space-between; align-items:center;
}
.footer-bottom p { font-size:0.65rem; color:rgba(250,250,246,0.22); letter-spacing:0.04em; }

/* ─── WA FLOAT ─── */
.wa-float {
  position:fixed; bottom:30px; right:30px; z-index:90;
  width:52px; height:52px; border-radius:50%; background:#25D366;
  display:flex; align-items:center; justify-content:center;
  color:white; transition:transform .3s var(--ease);
  box-shadow:0 4px 24px rgba(37,211,102,0.3);
}
.wa-float:hover { transform:scale(1.1); }

/* ─── ANIMATIONS ─── */
@keyframes fadeUp { from { opacity:0; transform:translateY(20px); } to { opacity:1; transform:translateY(0); } }
@keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
@keyframes scrollPulse { 0%,100% { transform:scaleY(1); opacity:0.5; } 50% { transform:scaleY(0.4); opacity:1; } }

/* ─── RESPONSIVE ─── */
@media (max-width:1024px) {
  .stays-grid, .about-grid, .hosts-inner, .contact-grid { grid-template-columns:1fr; }
  .stays-grid__col { flex-direction:row; }
  .exp-grid { grid-template-columns:repeat(2,1fr); }
  .test-grid { grid-template-columns:1fr; }
  .footer-top { grid-template-columns:1fr 1fr; }
  .footer-nav { grid-column:span 2; }
  .manifesto__pillars { grid-template-columns:1fr; }
  .pillar__divider { display:none; }
  .about-img-frame img { height:360px; }
}
@media (max-width:768px) {
  .container, .stays__header, .stays-grid, .stays-cta-bar,
  .experiences__header, .exp-grid, .about-grid, .hosts-inner,
  .testimonials__header, .test-grid, .contact-grid, .footer-top,
  .footer-bottom, .manifesto, .nav-inner { padding-left:20px; padding-right:20px; }
  .nav-links--left { display:none; }
  .stays-grid { gap:2px; }
  .stays-grid__col { flex-direction:column; }
  .stay-card--wide .stay-card__img-wrap { height:300px; }
  .exp-grid { grid-template-columns:1fr; border-top:none; }
  .exp-card { border-right:none; border-bottom:0.5px solid rgba(196,168,130,0.18); }
  .form-row { grid-template-columns:1fr; }
  .footer-top { grid-template-columns:1fr; }
  .footer-nav { grid-column:span 1; grid-template-columns:1fr 1fr; }
  .hero-logo__img { height:64px; }
  .book-bar__fields { flex-wrap:wrap; }
  .book-field { flex:1 1 45%; }
}
