/* v91 — online Mila Stays fonts (Google Fonts).
   Visual font families remain unchanged: Cormorant Garamond, DM Sans, Marck Script. */

:root{
  --font-body:"DM Sans",system-ui,sans-serif;
  --font-display:"Cormorant Garamond",Georgia,serif;
  --font-script:"Marck Script",cursive;

  --fs-micro:10px;
  --fs-caption:12px;
  --fs-small:14px;
  --fs-body:16px;
  --fs-body-lg:18px;
  --fs-lead:20px;
  --fs-subheading:24px;
  --fs-card-title:28px;
  --fs-heading-sm:34px;
  --fs-heading:42px;
  --fs-heading-lg:52px;
  --fs-display-mobile:72px;
  --fs-card-title-fluid:clamp(24px,2.4vw,30px);
  --fs-heading-sm-fluid:clamp(32px,4vw,42px);
  --fs-section-title:clamp(38px,5vw,58px);
  --fs-page-title:clamp(48px,6vw,78px);
  --fs-display:clamp(72px,10vw,128px);
  --fs-script:clamp(28px,4vw,46px);

  --ink:#12110f;
  --cream:#f5efe4;
  --paper:#fffaf1;
  --gold:#b98a3a;
  --gold2:#d9b36f;
  --brown:#573414;
  --line:rgba(18,17,15,.14);
  --muted:#6d675e;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--font-body);background:var(--paper);color:var(--ink);line-height:1.55}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit}
.container{width:min(var(--max),calc(100% - 36px));margin:auto}
.site-header{position:fixed;top:0;left:0;right:0;z-index:30;background:rgba(17,16,14,.72);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.12)}
.nav-wrap{height:82px;display:flex;align-items:center;gap:28px;color:white}
.brand{display:flex;align-items:center;gap:12px;min-width:max-content}
.brand-mark{width:42px;height:42px;border:1px solid rgba(255,255,255,.5);border-radius:50%;display:grid;place-items:center;font-family:var(--font-display);font-size:var(--fs-subheading);color:var(--gold2)}
.brand-stack strong{display:block;font-family:var(--font-display);font-size:var(--fs-card-title);letter-spacing:.06em;line-height:1}
.brand-stack small{display:block;font-size:var(--fs-caption);color:rgba(255,255,255,.78);margin-top:4px}
.main-nav{margin-left:auto;display:flex;gap:25px;align-items:center}
.main-nav a{font-size:var(--fs-small);color:rgba(255,255,255,.88)}
.main-nav a:hover{color:white}
.lang-switch{display:flex;gap:5px}
.lang{border:1px solid rgba(255,255,255,.25);background:transparent;color:white;border-radius:999px;padding:6px 9px;cursor:pointer;font-size:var(--fs-caption)}
.lang.active{background:var(--gold);border-color:var(--gold);color:#111}
.menu-toggle{display:none;background:none;border:0;color:white;font-size:var(--fs-card-title);margin-left:auto}
.hero{min-height:92vh;position:relative;display:grid;align-items:end;color:white;background:#111}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.78) 0%,rgba(0,0,0,.46) 45%,rgba(0,0,0,.22) 100%),linear-gradient(0deg,rgba(0,0,0,.5),transparent 55%)}
.hero-content{position:relative;padding:0 0 22px;align-self:end;width:100%}
.kicker,.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:var(--fs-caption);font-weight:700}
.kicker{color:#e2c28c}
.hero-brand{font-family:var(--font-display);font-size:var(--fs-display);line-height:.92;max-width:850px;margin:6px 0 2px;letter-spacing:.02em}
.hero-tagline{font-family:var(--font-script);font-size:var(--fs-script);color:#eed7b1;margin:0 0 20px}
.hero-copy{max-width:760px;font-size:var(--fs-small);line-height:1.5;color:rgba(255,255,255,.82);margin:0 0 12px}
.hero-actions{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:0;width:100%}
.btn{display:inline-flex;justify-content:center;align-items:center;padding:14px 21px;border-radius:999px;font-weight:700;font-size:var(--fs-small);transition:.2s}
.btn:hover{transform:translateY(-2px)}
.btn-gold{background:var(--gold2);color:#16120d}
.btn-ghost{border:1px solid rgba(255,255,255,.45);color:white;background:rgba(0,0,0,.14)}
.btn-dark{background:#15130f;color:white}
.hero-trust{display:flex;gap:12px;align-items:center;margin-top:16px;font-size:var(--fs-caption);letter-spacing:.08em;color:rgba(255,255,255,.68)}
.hero-trust i{width:4px;height:4px;border-radius:50%;background:var(--gold2)}
.section{padding:96px 0}
.split{display:grid;grid-template-columns:1fr 1fr;gap:80px}
.section h2{font-family:var(--font-display);font-size:var(--fs-section-title);line-height:1.05;margin:12px 0}
.eyebrow{color:var(--gold)}
.intro-copy{font-size:var(--fs-lead);color:var(--muted);align-self:end}
.apartments{background:#f0e9dd}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:34px}
.section-head>p{max-width:420px;color:var(--muted)}
.apartment-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.stay-card{background:white;border:1px solid rgba(0,0,0,.07);border-radius:24px;overflow:hidden;box-shadow:0 16px 50px rgba(31,23,14,.08)}
.stay-visual{height:360px;background-size:cover;background-position:center;position:relative}
.visual-one{background-image:linear-gradient(rgba(0,0,0,.07),rgba(0,0,0,.07)),url('assets/airbnb-apartment-1.webp')}
.visual-two{background-image:linear-gradient(rgba(0,0,0,.05),rgba(0,0,0,.05)),url('assets/airbnb-apartment-2.webp')}
.pill{position:absolute;top:18px;left:18px;background:rgba(255,250,241,.92);backdrop-filter:blur(8px);border-radius:999px;padding:8px 12px;font-size:var(--fs-caption);font-weight:700}
.stay-body{padding:28px}
.location{font-size:var(--fs-caption);letter-spacing:.15em;color:var(--gold);font-weight:700}
.stay-body h3{font-family:var(--font-display);font-size:var(--fs-heading-sm);line-height:1.05;margin:8px 0 12px}
.desc{color:var(--muted)}
.feature-row{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}
.feature-row span{font-size:var(--fs-caption);border:1px solid var(--line);border-radius:999px;padding:7px 10px}
.text-link{display:inline-flex;gap:8px;font-weight:700;border-bottom:1px solid #111;padding-bottom:2px}
.owners{background:#14120f;color:white}
.owners-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}
.owners-intro{position:sticky;top:110px;height:max-content}
.owners-intro p{color:rgba(255,255,255,.7)}
.owners-intro .eyebrow{color:#d6b474}
.owners-intro .btn{margin-top:20px;background:#d1aa64;color:#111}
.service-list{border-top:1px solid rgba(255,255,255,.15)}
.service-list article{display:grid;grid-template-columns:50px 1fr;gap:18px;padding:24px 0;border-bottom:1px solid rgba(255,255,255,.15)}
.service-list article>span{color:#d6b474;font-size:var(--fs-caption)}
.service-list h3{font-family:var(--font-display);font-size:var(--fs-subheading);margin:0 0 8px}
.service-list p{margin:0;color:rgba(255,255,255,.67)}
.recommend{background:#fffaf1}
.recommend-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}
.recommend-image{min-height:600px;border-radius:28px;background:url('assets/bansko-hero.webp') center/cover;box-shadow:0 24px 70px rgba(50,30,10,.12)}
.recommend-copy p{color:var(--muted);font-size:var(--fs-body-lg)}
.mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:26px}
.mini-grid span{padding:16px 18px;border:1px solid var(--line);border-radius:16px;font-weight:700}
.contact{padding-top:30px}
.contact-card{background:#ede1cf;border-radius:28px;padding:54px;display:grid;grid-template-columns:1fr 1fr;gap:60px;position:relative;overflow:hidden}
.contact-card:after{content:"";position:absolute;width:360px;height:360px;border-radius:50%;right:-160px;bottom:-180px;border:1px solid rgba(185,138,58,.35)}
.contact-links{display:grid;gap:14px}
.contact-links a,.contact-links>div{padding:16px 0;border-bottom:1px solid rgba(0,0,0,.15)}
.contact-links small{display:block;color:var(--muted);margin-bottom:2px}
.contact-links strong{font-size:var(--fs-body-lg)}
footer{background:#0e0d0b;color:white;padding:34px 0}
.footer-grid{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:30px;font-size:var(--fs-small);color:rgba(255,255,255,.65)}
.footer-brand .brand-mark{border-color:rgba(255,255,255,.25)}
@media (max-width:900px){
  .menu-toggle{display:block}
  .main-nav{display:none;position:absolute;top:82px;left:0;right:0;background:#15130f;padding:20px 18px;flex-direction:column;align-items:flex-start}
  .main-nav.open{display:flex}
  .lang-switch{margin-left:0}
  .hero{min-height:90vh}
  .hero-content{padding-top:150px}
  .split,.owners-grid,.recommend-grid,.contact-card{grid-template-columns:1fr}
  .owners-intro{position:static}
  .apartment-grid{grid-template-columns:1fr}
  .stay-visual{height:330px}
  .section{padding:72px 0}
}
@media (max-width:600px){
  .container{width:min(100% - 24px,var(--max))}
  .site-header .brand-stack small{display:none}
  .nav-wrap{height:72px}
  .main-nav{top:72px}
  .lang-switch{display:none}
  .hero-content{padding:126px 0 24px}
  .hero-brand{font-size:var(--fs-display-mobile)}
  .hero-tagline{font-size:var(--fs-card-title)}
  .hero-copy{font-size:var(--fs-body-lg)}
  .hero-trust{flex-wrap:wrap}
  .section-head{display:block}
  .section-head>p{margin-top:16px}
  .stay-visual{height:290px}
  .stay-body{padding:22px}
  .contact-card{padding:30px 22px}
  .footer-grid{grid-template-columns:1fr;gap:12px}
}


/* About Mila */
.about-me{background:#fffaf1}
.about-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:68px;align-items:center}
.about-visual img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:28px;box-shadow:0 24px 70px rgba(50,30,10,.12)}
.about-copy p{font-size:var(--fs-body-lg);color:var(--muted)}
.about-copy blockquote{font-family:var(--font-display);font-size:var(--fs-card-title);line-height:1.25;margin:28px 0 0;border-left:3px solid var(--gold);padding-left:22px;color:var(--ink)}

/* Full recommendations */
.full-recommend{background:#fffaf1}
.tabs{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 28px}
.tab{border:1px solid var(--line);background:#fff;border-radius:999px;padding:11px 16px;cursor:pointer;font-weight:700}
.tab.active{background:#17140f;color:#fff;border-color:#17140f}
.tab-panel{display:none}
.tab-panel.active{display:block}
.recommend-grid-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.rec-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;min-height:150px}
.rec-card h3{font-family:var(--font-display);font-size:var(--fs-subheading);line-height:1.08;margin:0 0 8px}
.rec-card p{font-size:var(--fs-small);font-weight:700;color:var(--gold);margin:0 0 8px}
.rec-card small{font-size:var(--fs-small);color:var(--muted)}
.disclaimer{margin:26px 0 0;font-size:var(--fs-caption);color:#81786b}

@media(max-width:950px){
  .about-grid{grid-template-columns:1fr}
  .recommend-grid-cards{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  .recommend-grid-cards{grid-template-columns:1fr}
  .about-copy blockquote{font-size:var(--fs-card-title)}
}


/* v6 refinements */
.about-grid{
  display:block !important;
  max-width:900px;
}
.about-copy{
  max-width:900px;
}
.about-visual{
  display:none !important;
}

/* v17 — softer About Mila section only */
.about-soft{
  background:
    radial-gradient(circle at 85% 20%, rgba(218,185,118,.13), transparent 30%),
    #fffaf1;
}
.about-soft-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1.18fr) minmax(240px,.72fr) !important;
  gap:64px;
  align-items:center;
  max-width:1080px !important;
}
.about-soft-copy{
  max-width:720px;
}
.about-soft-copy .about-script{
  margin:0 0 -2px;
  font-family:var(--font-script);
  font-size:var(--fs-heading);
  line-height:1;
  color:var(--gold);
}
.about-soft-copy .eyebrow{
  margin-top:18px;
}
.about-soft-copy h2{
  max-width:680px;
  margin-top:10px;
  font-size:var(--fs-section-title);
}
.about-soft-copy > p:not(.eyebrow):not(.about-script){
  font-size:var(--fs-body-lg);
  line-height:1.75;
  color:var(--muted);
}
.about-soft-copy blockquote{
  margin:28px 0 0 !important;
  padding:18px 22px 18px 58px !important;
  border:1px solid rgba(185,138,58,.16) !important;
  border-left:none !important;
  border-radius:18px;
  background:rgba(255,255,255,.58);
  position:relative;
  font-family:var(--font-display);
  font-size:var(--fs-card-title) !important;
  line-height:1.32;
  color:#5b3a19 !important;
}
.about-soft-copy blockquote::before{
  content:"♡";
  position:absolute;
  left:20px;
  top:16px;
  color:var(--gold);
  font-size:var(--fs-card-title);
  font-family:var(--font-display);
}
.about-soft-photo{
  justify-self:end;
  width:min(100%,320px);
}
.about-soft-photo img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:auto;
  object-fit:contain;
  object-position:center;
  border-radius:24px;
  border:7px solid rgba(255,255,255,.72);
  box-shadow:0 18px 50px rgba(62,45,24,.12);
}

@media(max-width:950px){
  .about-soft-grid{
    grid-template-columns:1fr !important;
    gap:32px;
  }
  .about-soft-photo{
    order:-1;
    justify-self:center;
    width:min(68vw,300px);
  }
  .about-soft-copy{
    max-width:760px;
    margin:0 auto;
  }
}

@media(max-width:620px){
  .about-soft{
    padding-top:105px;
    padding-bottom:62px;
  }
  .about-soft-grid{
    gap:26px;
  }
  .about-soft-photo{
    width:min(66vw,250px);
  }
  .about-soft-copy .about-script{
    font-size:var(--fs-heading-sm);
  }
  .about-soft-copy h2{
    font-size:var(--fs-heading-sm);
  }
  .about-soft-copy > p:not(.eyebrow):not(.about-script){
    font-size:var(--fs-body);
    line-height:1.68;
  }
  .about-soft-copy blockquote{
    font-size:var(--fs-subheading) !important;
    padding:17px 18px 17px 52px !important;
  }
}

/* SEO heading: accessible to search engines/screen readers without changing the visual design */
.seo-h1{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}


/* v29 — owner-focused improvements */
.owner-trust-strip{
  background:#15130f;
  color:#fff;
  border-top:1px solid rgba(255,255,255,.08);
}
.owner-trust-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:1px;
  background:rgba(255,255,255,.08);
}
.owner-trust-grid>div{
  background:#15130f;
  padding:18px 16px;
  text-align:center;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.owner-trust-grid strong{
  font-family:var(--font-display);
  font-size:var(--fs-subheading);
  color:var(--gold2);
}
.owner-trust-grid span{
  font-size:var(--fs-caption);
  color:rgba(255,255,255,.7);
}

.owners-page{background:#fbf5ea;color:#1c1915}
.owners-page main{padding-top:0}
.owners-page .lang{text-decoration:none;display:inline-flex;align-items:center}
.owner-page-hero{
  padding:145px 0 42px;
  background:
    radial-gradient(circle at 85% 18%,rgba(192,143,59,.16),transparent 34%),
    linear-gradient(135deg,#fffaf2,#f5ead8);
  border-bottom:1px solid rgba(78,53,22,.08);
}
.owner-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(260px,.72fr);
  gap:70px;
  align-items:center;
}
.owner-hero-copy h1{
  font-family:var(--font-display);
  font-size:var(--fs-page-title);
  line-height:.9;
  margin:12px 0 22px;
  letter-spacing:-.025em;
}
.owner-hero-copy h1 em{font-weight:500;color:#9a6423}
.owner-lead{
  max-width:690px;
  font-size:var(--fs-lead);
  line-height:1.7;
  color:#5f584f;
}
.owner-hero-actions{display:flex;align-items:center;gap:24px;margin-top:28px;flex-wrap:wrap}
.owner-portrait-card{
  width:min(100%,320px);
  justify-self:end;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(165,119,53,.18);
  border-radius:28px;
  padding:10px;
}
.owner-portrait-card img{
  width:100%;
  height:auto;
  aspect-ratio:auto;
  object-fit:contain;
  object-position:center;
  border-radius:21px;
  display:block;
}
.owner-portrait-caption{padding:15px 12px 10px;display:flex;flex-direction:column;gap:3px}
.owner-portrait-caption strong{font-family:var(--font-script);font-size:var(--fs-heading-sm);font-weight:400;line-height:1.05;color:var(--gold);text-align:center;width:100%;display:block;letter-spacing:.01em}
.owner-portrait-caption span{font-size:var(--fs-caption);color:#71685e;line-height:1.5}
.owner-proof-grid{
  margin-top:44px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid rgba(134,96,43,.2);
  border-bottom:1px solid rgba(134,96,43,.2);
}
.owner-proof-grid>div{padding:18px 16px;text-align:center;border-right:1px solid rgba(134,96,43,.16)}
.owner-proof-grid>div:last-child{border-right:0}
.owner-proof-grid strong{display:block;font-family:var(--font-display);font-size:var(--fs-card-title);color:#8a5a1e}
.owner-proof-grid span{display:block;margin-top:2px;font-size:var(--fs-caption);color:#766c61}
.owner-section-head{align-items:end}
.owner-boutique-note{
  max-width:900px;
  margin:34px auto 0;
  padding:24px 30px;
  text-align:center;
  border-top:1px solid rgba(165,116,49,.24);
  border-bottom:1px solid rgba(165,116,49,.24);
}
.owner-boutique-note p{
  margin:0;
  font-family:var(--font-display);
  font-size:var(--fs-card-title-fluid);
  line-height:1.25;
  font-weight:600;
  color:#6f4b22;
}
.owner-service-cards{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  margin-top:34px;
}
.owner-service-cards article{
  background:#fffaf2;
  border:1px solid rgba(130,91,38,.12);
  border-radius:22px;
  padding:25px;
}
.owner-service-cards article>span{
  display:inline-flex;
  width:38px;height:38px;border-radius:50%;
  align-items:center;justify-content:center;
  background:#15130f;color:#d7a85a;
  font-family:var(--font-display);font-size:var(--fs-body-lg);
}
.owner-service-cards h3{font-family:var(--font-display);font-size:var(--fs-card-title);margin:16px 0 8px}
.owner-service-cards p{color:#71685e;line-height:1.6;font-size:var(--fs-small)}
.owner-process{background:#171511;color:#fff}
.owner-process .eyebrow{color:#d5a65a}
.owner-process .section-head h2{color:#fff}
.owner-process .section-head>p{color:rgba(255,255,255,.65)}
.process-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:35px}
.process-steps article{padding:20px 16px;border-top:1px solid rgba(215,168,90,.4)}
.process-steps b{font-family:var(--font-display);font-size:var(--fs-heading-sm);color:#d5a65a;font-weight:500}
.process-steps h3{font-size:var(--fs-body-lg);margin:8px 0;color:#fff}
.process-steps p{font-size:var(--fs-small);line-height:1.6;color:rgba(255,255,255,.62)}
.owner-price{background:#fffaf2}
.owner-price-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center}
.owner-price-grid h2,.owner-evidence h2,.owner-faq h2,.owner-contact-box h2{
  font-family:var(--font-display);font-size:var(--fs-section-title);line-height:1;margin:10px 0 18px
}
.owner-price-grid>div>p{color:#6d645b;line-height:1.7}
.owner-price-note{padding:30px;border:1px solid rgba(147,104,43,.18);border-radius:24px;background:#f4e8d4}
.owner-price-note strong{font-family:var(--font-display);font-size:var(--fs-card-title)}
.owner-price-note p{margin:10px 0 22px}
.owner-evidence{background:#f3e6d0}
.owner-evidence-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:75px;align-items:center}
.owner-evidence-grid>div>p{color:#665e55;line-height:1.7}
.owner-evidence-note{font-family:var(--font-display);font-size:var(--fs-subheading) !important;color:#714c1f!important}
.owner-evidence-box{display:grid;gap:10px}
.owner-evidence-box>div{background:#fff9ef;border-radius:18px;padding:18px 22px;display:flex;justify-content:space-between;align-items:center}
.owner-evidence-box strong{font-family:var(--font-display);font-size:var(--fs-heading-sm);color:#8b5c20}
.owner-evidence-box span{font-size:var(--fs-caption);color:#756b61}
.owner-faq{background:#fff}
.owner-faq-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px;align-items:start}
.owner-faq-grid>div:first-child>p:last-child{color:#6b635a}
.faq-list{border-top:1px solid rgba(93,69,37,.18)}
.faq-list details{border-bottom:1px solid rgba(93,69,37,.18);padding:18px 0}
.faq-list summary{cursor:pointer;font-weight:700;list-style:none;padding-right:30px;position:relative}
.faq-list summary::after{content:"+";position:absolute;right:4px;top:-3px;font-family:var(--font-display);font-size:var(--fs-card-title);color:#a57431}
.faq-list details[open] summary::after{content:"–"}
.faq-list details p{color:#6c645b;line-height:1.65;margin:12px 28px 2px 0;font-size:var(--fs-small)}
.owner-contact-cta{background:#15130f;color:#fff}
.owner-contact-box{text-align:center;max-width:920px}
.owner-contact-box .eyebrow{color:#d4a65e}
.owner-contact-box h2{color:#fff}
.owner-contact-box>p:not(.eyebrow){max-width:720px;margin:0 auto;color:rgba(255,255,255,.68);line-height:1.7}
.owner-contact-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:26px}
.btn-ghost-dark{border:1px solid rgba(255,255,255,.28);color:#fff;background:transparent}
.btn-ghost-dark:hover{border-color:#fff}
.owners-page footer{background:#0e0d0b}

@media(max-width:900px){
  .owner-hero-grid,.owner-price-grid,.owner-evidence-grid,.owner-faq-grid{grid-template-columns:1fr;gap:34px}
  .owner-portrait-card{justify-self:center;width:min(60vw,300px)}
  .owner-service-cards{grid-template-columns:1fr 1fr}
  .process-steps{grid-template-columns:1fr 1fr}
  .owner-proof-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  .owner-trust-grid{grid-template-columns:1fr 1fr}
  .owner-trust-grid>div{padding:13px 8px}
  .owner-trust-grid strong{font-size:var(--fs-lead)}
  .owner-trust-grid span{font-size:var(--fs-micro)}
  .owner-page-hero{padding:105px 0 30px}
  .owner-hero-grid{gap:24px}
  .owner-hero-copy h1{font-size:var(--fs-heading-lg)}
  .owner-lead{font-size:var(--fs-body)}
  .owner-portrait-card{order:-1;width:min(57vw,230px)}
  .owner-portrait-caption{display:none}
  .owner-proof-grid{margin-top:28px}
  .owner-proof-grid>div{padding:12px 7px}
  .owner-proof-grid strong{font-size:var(--fs-lead)}
  .owner-proof-grid span{font-size:var(--fs-micro)}
  .owner-boutique-note{margin-top:26px;padding:20px 8px}
  .owner-boutique-note p{font-size:var(--fs-subheading);line-height:1.3}
  .owner-service-cards{grid-template-columns:1fr}
  .process-steps{grid-template-columns:1fr}
  .process-steps article{display:grid;grid-template-columns:45px 1fr;gap:12px}
  .owner-price-grid h2,.owner-evidence h2,.owner-faq h2,.owner-contact-box h2{font-size:var(--fs-heading-sm)}
  .owner-evidence-grid,.owner-faq-grid{gap:28px}
  .owner-contact-actions{flex-direction:column}
  .owner-contact-actions .btn{width:100%}
  .owners-page .main-nav{top:72px}
}


/* v30 — Airbnb + Booking links under each apartment */
.booking-links{display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px}
.booking-link{color:#85602c;border-bottom-color:#b98b45}
@media(max-width:620px){.booking-links{gap:10px 16px}.booking-links .text-link{font-size:var(--fs-small)}}


/* BG About heading — slightly smaller for cleaner line wrapping */
.about-soft-copy h2{
  font-size:var(--fs-heading-sm-fluid);
  line-height:1.04;
}

/* v39 — personal boutique typography across BG + EN */
:root{
  --gold-glow:rgba(217,179,111,.28);
}
.brand-stack strong,
.section h2,
.stay-body h3,
.service-list h3,
.rec-card h3,
.owner-hero-copy h1,
.owner-service-cards h3,
.owner-price-grid h2,
.owner-evidence h2,
.owner-faq h2,
.owner-contact-box h2,
.owner-price-note strong,
.owner-portrait-caption strong{
  font-family:var(--font-display);
  letter-spacing:.01em;
}
.brand-stack strong{
  font-weight:600;
  text-shadow:0 0 12px rgba(217,179,111,.16);
}
.eyebrow,
.location{
  letter-spacing:.18em;
}
.about-soft-copy h2,
.owner-hero-copy h1 em,
.about-copy blockquote,
.owner-evidence-note{
  font-weight:500;
}
.about-soft-copy h2 em,
.owner-hero-copy h1 em{
  color:#9a6423;
}
.about-soft blockquote,
.owner-evidence-note,
.owner-portrait-caption strong{
  position:relative;
}
.about-soft blockquote::first-letter,
.owner-evidence-note::first-letter{
  color:#a9752f;
}
/* a very light handwritten accent only in selected intimate lines */
.hero-tagline,
.personal-script{
  font-family:var(--font-script);
  font-weight:400;
}
.owner-hero-copy h1 em,
.about-soft blockquote{
  text-shadow:0 0 10px rgba(217,179,111,.12);
}
.btn-gold,
.lang.active,
.owner-trust-grid strong,
.owner-proof-grid strong,
.owner-evidence-box strong{
  box-shadow:0 0 18px rgba(217,179,111,.08);
}
@media(min-width:901px){
  .section h2,
  .owner-hero-copy h1,
  .stay-body h3{
    text-rendering:optimizeLegibility;
  }
}


/* v42 — standalone apartment branding service */
.owner-branding{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 78% 20%,rgba(217,179,111,.16),transparent 34%),
    radial-gradient(circle at 12% 84%,rgba(185,138,58,.09),transparent 32%),
    linear-gradient(135deg,#15130f 0%,#201b14 52%,#12110f 100%);
  color:#fff;
}
.owner-branding::after{
  content:"";
  position:absolute;
  width:420px;height:420px;
  right:-210px;top:-210px;
  border:1px solid rgba(217,179,111,.16);
  border-radius:50%;
  box-shadow:0 0 80px rgba(217,179,111,.06);
  pointer-events:none;
}
.owner-branding-grid{
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr);
  gap:64px;
  align-items:center;
  position:relative;
  z-index:1;
}
.owner-branding .eyebrow{color:#ddb76f}
.owner-branding-copy h2{
  font-family:var(--font-display);
  font-size:var(--fs-page-title);
  line-height:.98;
  margin:10px 0 20px;
  letter-spacing:-.02em;
  color:#fff9ef;
}
.owner-branding-copy h2 em{
  display:block;
  font-family:var(--font-script);
  font-size:1em;
  line-height:1.08;
  font-weight:400;
  color:#e4bd74;
  letter-spacing:.01em;
  text-shadow:0 0 22px rgba(217,179,111,.16);
}
.owner-branding-lead{
  max-width:620px;
  font-family:var(--font-display);
  font-size:var(--fs-card-title) !important;
  line-height:1.3!important;
  color:#f1dfc0!important;
  margin:0 0 14px;
}
.owner-branding-copy>p:not(.eyebrow):not(.owner-branding-lead):not(.owner-branding-quote){
  max-width:650px;
  color:rgba(255,255,255,.68);
  line-height:1.72;
}
.owner-branding-options{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin:26px 0 18px;
}
.owner-branding-options article{
  min-height:148px;
  padding:18px;
  border:1px solid rgba(222,183,112,.18);
  border-radius:20px;
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.018));
  backdrop-filter:blur(8px);
}
.owner-branding-options article>span{
  display:block;
  font-family:var(--font-display);
  font-size:var(--fs-body-lg);
  color:#ddb76f;
  margin-bottom:10px;
}
.owner-branding-options h3{
  font-family:var(--font-display);
  font-size:var(--fs-subheading);
  line-height:1.05;
  margin:0 0 7px;
  color:#fff8ec;
}
.owner-branding-options p{
  margin:0;
  color:rgba(255,255,255,.60);
  font-size:var(--fs-small);
  line-height:1.55;
}
.owner-welcome-note{
  display:flex;
  gap:15px;
  align-items:flex-start;
  padding:16px 18px;
  border-left:2px solid #d9b36f;
  background:rgba(217,179,111,.07);
  border-radius:0 14px 14px 0;
}
.owner-welcome-note strong{
  flex:0 0 auto;
  font-family:var(--font-display);
  font-size:var(--fs-lead);
  color:#e5bd73;
}
.owner-welcome-note span{
  color:rgba(255,255,255,.66);
  font-size:var(--fs-small);
  line-height:1.55;
}
.owner-branding-quote{
  font-family:var(--font-display);
  font-size:var(--fs-subheading);
  font-style:italic;
  color:#f0d6aa;
  margin:20px 0 18px;
}
.owner-branding-actions{
  display:flex;
  align-items:center;
  gap:18px;
  flex-wrap:wrap;
}
.owner-branding-actions>span{
  max-width:260px;
  font-size:var(--fs-caption);
  line-height:1.45;
  color:rgba(255,255,255,.47);
}
.owner-branding-media{
  position:relative;
  padding:12px;
  border-radius:30px;
  background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(217,179,111,.045));
  border:1px solid rgba(217,179,111,.20);
  box-shadow:0 30px 90px rgba(0,0,0,.32),0 0 45px rgba(217,179,111,.055);
}
.owner-branding-image-wrap{
  overflow:hidden;
  border-radius:22px;
  background:#0d0c0b;
}
.owner-branding-image-wrap img{
  width:100%;
  aspect-ratio:1.52/1;
  object-fit:cover;
  object-position:center center;
}
.owner-branding-caption{
  padding:17px 14px 10px;
  display:flex;
  flex-direction:column;
  gap:2px;
}
.owner-branding-caption span{
  text-transform:uppercase;
  letter-spacing:.18em;
  font-size:var(--fs-micro);
  color:#d9b36f;
}
.owner-branding-caption strong{
  font-family:var(--font-display);
  font-size:var(--fs-card-title);
  font-weight:500;
  color:#fff6e7;
}
@media(max-width:900px){
  .owner-branding-grid{grid-template-columns:1fr;gap:34px}
  .owner-branding-media{order:-1}
  .owner-branding-image-wrap img{aspect-ratio:1.8/1}
}
@media(max-width:620px){
  .owner-branding-copy h2{font-size:var(--fs-heading)}
  .owner-branding-lead{font-size:var(--fs-subheading) !important}
  .owner-branding-options{grid-template-columns:1fr}
  .owner-branding-options article{min-height:0}
  .owner-welcome-note{display:block}
  .owner-welcome-note strong{display:block;margin-bottom:5px}
  .owner-branding-actions .btn{width:100%}
  .owner-branding-actions>span{max-width:none;text-align:center;width:100%}
  .owner-branding-media{padding:8px;border-radius:22px}
  .owner-branding-image-wrap{border-radius:16px}
  .owner-branding-image-wrap img{aspect-ratio:1.5/1}
  .owner-branding-caption strong{font-size:var(--fs-subheading)}
}


/* v43 — blended brand-service visual: blurred photo atmosphere + soft foreground image */
.owner-branding{
  isolation:isolate;
  background:
    linear-gradient(90deg,rgba(13,12,10,.94) 0%,rgba(18,15,11,.90) 42%,rgba(18,14,9,.74) 70%,rgba(10,9,8,.92) 100%),
    url('assets/brand-apartment-box-selected.webp') center 46%/cover no-repeat;
}

.owner-branding::before{
  content:"";
  position:absolute;
  inset:-34px;
  z-index:-2;
  background:url('assets/brand-apartment-box-selected.webp') center/cover no-repeat;
  filter:blur(30px) saturate(.92) brightness(.58);
  transform:scale(1.06);
  opacity:.78;
}

.owner-branding::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  width:auto;
  height:auto;
  border:0;
  border-radius:0;
  box-shadow:none;
  background:
    radial-gradient(circle at 78% 42%,rgba(223,180,97,.18),transparent 29%),
    linear-gradient(90deg,rgba(8,8,7,.24),rgba(8,8,7,.02) 60%,rgba(8,8,7,.22));
  pointer-events:none;
}

.owner-branding-grid{
  gap:72px;
}

.owner-branding-copy{
  position:relative;
  padding:18px 0;
}

.owner-branding-media{
  position:relative;
  padding:0;
  border:0;
  border-radius:34px;
  background:transparent;
  box-shadow:none;
}

.owner-branding-image-wrap{
  position:relative;
  overflow:visible;
  border-radius:30px;
  background:transparent;
}

.owner-branding-image-wrap::before{
  content:"";
  position:absolute;
  inset:8% 4% 4%;
  border-radius:34px;
  background:rgba(0,0,0,.28);
  filter:blur(28px);
  transform:translateY(18px);
  z-index:-1;
}

.owner-branding-image-wrap img{
  display:block;
  width:100%;
  aspect-ratio:1.64/1;
  object-fit:cover;
  object-position:center;
  border-radius:28px;
  box-shadow:
    0 30px 80px rgba(0,0,0,.34),
    0 0 48px rgba(218,174,92,.10);
  -webkit-mask-image:linear-gradient(to right,transparent 0%,#000 8%,#000 92%,transparent 100%);
  mask-image:linear-gradient(to right,transparent 0%,#000 8%,#000 92%,transparent 100%);
}

.owner-branding-caption{
  padding:18px 24px 0;
  align-items:flex-end;
  text-align:right;
}

@media(max-width:900px){
  .owner-branding{
    background:
      linear-gradient(180deg,rgba(13,12,10,.88),rgba(15,13,10,.94)),
      url('assets/brand-apartment-box-selected.webp') center/cover no-repeat;
  }
  .owner-branding-grid{gap:30px}
  .owner-branding-image-wrap img{
    aspect-ratio:1.75/1;
    -webkit-mask-image:linear-gradient(to right,transparent 0%,#000 5%,#000 95%,transparent 100%);
    mask-image:linear-gradient(to right,transparent 0%,#000 5%,#000 95%,transparent 100%);
  }
  .owner-branding-caption{align-items:flex-start;text-align:left;padding-inline:8px}
}

@media(max-width:620px){
  .owner-branding-image-wrap img{
    aspect-ratio:1.55/1;
    border-radius:20px;
  }
}


/* v44 — dedicated Apartment Branding page */
.brand-page{background:#f6eddf;color:#211d18}
.brand-page .site-header{background:rgba(17,16,14,.96);border-bottom:1px solid rgba(208,166,87,.20)}
.brand-page-header .brand strong,.brand-page-header .main-nav a{color:#fff8ec}
.brand-page-header .brand small{color:rgba(255,248,236,.72)}

.brand-service-hero{
  position:relative;overflow:hidden;padding:118px 0 92px;
  background:
    radial-gradient(circle at 82% 16%,rgba(255,244,216,.95),rgba(255,244,216,0) 30%),
    radial-gradient(circle at 12% 12%,rgba(255,255,255,.70),rgba(255,255,255,0) 28%),
    linear-gradient(128deg,#fbf5ea 0%,#f6e4bf 48%,#e6bd69 100%);
}
.brand-service-hero::after{
  content:"";position:absolute;inset:auto -8% -44% 45%;height:72%;
  background:radial-gradient(ellipse,rgba(158,102,28,.18),transparent 68%);
  filter:blur(28px);pointer-events:none
}
.brand-service-hero-grid{
  position:relative;z-index:1;display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:76px;align-items:center
}
.brand-service-copy .eyebrow,.brand-section-head .eyebrow,
.brand-welcome-section .eyebrow,.brand-contact-card .eyebrow{
  color:#996514;letter-spacing:.20em
}
.brand-service-copy h1{
  margin:12px 0 22px;max-width:680px;font-family:var(--font-display);
  font-size:var(--fs-page-title);line-height:.90;font-weight:600;
  letter-spacing:-.035em;color:#211c17
}
.brand-service-copy h1 em{
  display:block;font-weight:500;color:#b47a21;
  text-shadow:0 0 22px rgba(216,166,80,.16)
}
.brand-service-lead{
  margin:0 0 16px;max-width:610px;font-family:var(--font-display);
  font-size:var(--fs-card-title-fluid);line-height:1.25;font-weight:600
}
.brand-service-copy>p:not(.eyebrow):not(.brand-service-lead):not(.brand-service-note){
  max-width:640px;font-size:var(--fs-body-lg);line-height:1.75;color:#4c4236
}
.brand-service-note{
  max-width:620px;margin-top:18px;font-size:var(--fs-small);line-height:1.65;color:#78644b
}
.brand-service-actions{
  display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:34px
}
.btn-brand-gold{
  background:linear-gradient(135deg,#b7791c,#dcac50);color:#fffaf0;
  border:1px solid rgba(116,71,14,.16);box-shadow:0 14px 34px rgba(155,101,26,.20)
}
.btn-brand-gold:hover{transform:translateY(-1px);box-shadow:0 18px 40px rgba(155,101,26,.25)}
.brand-text-link{
  color:#70501e;font-weight:600;text-decoration:none;border-bottom:1px solid rgba(112,80,30,.28)
}
.brand-service-visual{
  position:relative;min-height:520px;display:flex;align-items:center;justify-content:center;
  padding:36px 24px 86px
}
.brand-service-image-glow{
  position:absolute;inset:7% 2% 13%;border-radius:46%;
  background:radial-gradient(ellipse,rgba(255,249,232,.88),rgba(208,153,64,.18) 48%,transparent 72%);
  filter:blur(18px)
}
.brand-service-visual img{
  position:relative;z-index:1;width:min(100%,760px);display:block;border-radius:30px;
  box-shadow:0 34px 80px rgba(74,47,16,.22),0 0 55px rgba(228,190,114,.20);
  -webkit-mask-image:linear-gradient(to right,transparent 0%,#000 7%,#000 93%,transparent 100%);
  mask-image:linear-gradient(to right,transparent 0%,#000 7%,#000 93%,transparent 100%)
}
.brand-service-signature{
  position:absolute;z-index:2;left:13%;right:9%;bottom:8px;padding:22px 28px;
  border-radius:22px;background:rgba(255,250,239,.70);border:1px solid rgba(174,123,41,.18);
  backdrop-filter:blur(12px);box-shadow:0 18px 44px rgba(105,68,20,.10)
}
.brand-service-signature span{
  display:block;margin-bottom:6px;color:#9b681b;font-size:var(--fs-caption);letter-spacing:.18em;text-transform:uppercase
}
.brand-service-signature strong{
  display:block;font-family:var(--font-display);font-size:var(--fs-subheading);line-height:1.15;font-weight:600
}

.brand-service-section{padding:92px 0}
.brand-options-section{background:linear-gradient(180deg,#fffaf2,#f9edd8)}
.brand-section-head{max-width:840px;margin-bottom:38px}
.brand-section-head.centered{margin-inline:auto;text-align:center}
.brand-section-head h2,.brand-welcome-grid h2,.brand-contact-card h2{
  margin:8px 0 0;font-family:var(--font-display);
  font-size:var(--fs-section-title);line-height:1;font-weight:600;letter-spacing:-.025em
}
.brand-option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.brand-option-card{
  position:relative;min-height:310px;padding:38px;overflow:hidden;border-radius:26px;
  background:linear-gradient(145deg,rgba(255,255,255,.80),rgba(248,224,180,.60)),#f8e7c5;
  border:1px solid rgba(178,124,36,.20);box-shadow:0 18px 48px rgba(111,74,25,.08)
}
.brand-option-card::after{
  content:"";position:absolute;width:220px;height:220px;right:-70px;bottom:-100px;border-radius:50%;
  background:radial-gradient(circle,rgba(203,151,67,.15),transparent 68%)
}
.brand-card-num{
  display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;
  border:1px solid rgba(170,113,27,.36);color:#a46d19;
  font-family:var(--font-display);font-size:var(--fs-lead);font-weight:700
}
.brand-option-card h3{
  margin:24px 0 12px;max-width:420px;font-family:var(--font-display);
  font-size:var(--fs-heading-sm);line-height:1.04;font-weight:600
}
.brand-option-card p{max-width:540px;color:#5a4c3d;line-height:1.7}
.brand-card-line{width:62px;height:1px;margin:24px 0 14px;background:linear-gradient(90deg,#b47a21,transparent)}
.brand-option-card small{color:#8e6b37;font-family:var(--font-display);font-size:var(--fs-body-lg);font-style:italic}

.brand-welcome-section{
  background:radial-gradient(circle at 88% 34%,rgba(225,183,105,.26),transparent 24%),
             linear-gradient(118deg,#f4dfba,#fff8eb 52%,#ecd09a)
}
.brand-welcome-grid{
  display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:72px;align-items:center
}
.brand-welcome-grid>div:first-child{max-width:760px}
.brand-welcome-grid p{font-size:var(--fs-body-lg);line-height:1.75;color:#554839}
.brand-welcome-seal{
  justify-self:center;width:230px;height:230px;border-radius:50%;
  display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#573a13;
  background:radial-gradient(circle at 35% 28%,#fff6d8,#dfb35d 54%,#a86d19 100%);
  border:7px double rgba(104,64,13,.32);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.48),0 22px 50px rgba(105,67,18,.20)
}
.brand-welcome-seal>span{font-size:var(--fs-card-title);margin-bottom:8px}
.brand-welcome-seal strong{font-family:var(--font-display);font-size:var(--fs-card-title);line-height:1;font-weight:700}
.brand-welcome-seal small{margin-top:10px;letter-spacing:.18em;text-transform:uppercase}

.brand-why-section{background:#fffaf2}
.brand-benefits-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.brand-benefits-grid article{
  padding:30px 24px;text-align:center;border-radius:22px;border:1px solid rgba(178,124,36,.16);
  background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(248,234,208,.76));
  box-shadow:0 14px 36px rgba(105,69,22,.06)
}
.brand-benefits-grid b{display:block;margin-bottom:16px;color:#b67b20;font-size:var(--fs-card-title);font-weight:400}
.brand-benefits-grid h3{
  margin:0 0 10px;font-family:var(--font-display);font-size:var(--fs-card-title);line-height:1.05;font-weight:600
}
.brand-benefits-grid p{margin:0;color:#695a48;font-size:var(--fs-small);line-height:1.55}

.brand-contact-section{padding-top:74px;background:linear-gradient(180deg,#f5e5c5,#e5bd70)}
.brand-contact-card{
  padding:64px;text-align:center;border-radius:34px;
  background:radial-gradient(circle at 82% 0%,rgba(255,255,255,.60),transparent 26%),rgba(255,248,235,.74);
  border:1px solid rgba(160,107,27,.18);box-shadow:0 26px 64px rgba(97,62,18,.12)
}
.brand-contact-card h2{max-width:760px;margin:8px auto 18px}
.brand-contact-card>p:not(.eyebrow){max-width:760px;margin-inline:auto;color:#5d4e3d;line-height:1.7}
.brand-contact-actions{
  margin-top:30px;display:flex;justify-content:center;align-items:center;gap:24px;flex-wrap:wrap
}
.btn-brand-dark{background:#201c17;color:#fff9ed;border:1px solid #201c17}
.brand-mail-link{color:#6d4a19;font-weight:600;text-decoration:none;border-bottom:1px solid rgba(109,74,25,.28)}
.brand-page-footer{background:#171512;color:#fff8ed}
.brand-page-footer .brand small,.brand-page-footer p{color:rgba(255,248,237,.66)}

/* Owners teaser */
.brand-teaser{
  position:relative;overflow:hidden;
  background:radial-gradient(circle at 83% 20%,rgba(230,190,113,.22),transparent 26%),
             linear-gradient(110deg,#171512 0%,#211c16 52%,#4b351b 100%);
  color:#fff8ec
}
.brand-teaser::after{
  content:"";position:absolute;inset:-15% -5% -15% 55%;
  background:url('assets/brand-apartment-box-selected.webp') center/cover no-repeat;
  filter:blur(38px) brightness(.45);opacity:.28
}
.brand-teaser-grid{
  position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.78fr);
  gap:64px;align-items:center
}
.brand-teaser-copy{max-width:700px}
.brand-teaser .eyebrow{color:#deb65f}
.brand-teaser h2{
  margin:8px 0 16px;font-family:var(--font-display);
  font-size:var(--fs-section-title);line-height:.98
}
.brand-teaser h2 em{color:#e4bb67;font-weight:500}
.brand-teaser p{max-width:660px;color:rgba(255,248,236,.76);line-height:1.72}
.brand-teaser-actions{margin-top:26px;display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.brand-teaser-actions span{color:rgba(255,248,236,.56);font-size:var(--fs-small)}
.brand-teaser-media{
  display:block;position:relative;border-radius:28px;overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,.28)
}
.brand-teaser-media img{display:block;width:100%;aspect-ratio:1.75/1;object-fit:cover;transition:transform .35s ease}
.brand-teaser-media:hover img{transform:scale(1.025)}

@media(max-width:900px){
  .brand-service-hero{padding:94px 0 70px}
  .brand-service-hero-grid,.brand-welcome-grid,.brand-teaser-grid{grid-template-columns:1fr;gap:38px}
  .brand-service-copy h1{font-size:var(--fs-page-title)}
  .brand-service-visual{min-height:auto;padding:10px 0 76px}
  .brand-service-signature{left:4%;right:4%}
  .brand-option-grid{grid-template-columns:1fr}
  .brand-benefits-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .brand-welcome-seal{width:190px;height:190px}
  .brand-contact-card{padding:44px 28px}
  .brand-teaser-media{max-width:720px}
}
@media(max-width:620px){
  .brand-service-hero{padding:84px 0 54px}
  .brand-service-copy h1{font-size:var(--fs-heading-lg)}
  .brand-service-copy .brand-service-lead{font-size:var(--fs-card-title)}
  .brand-service-actions{align-items:flex-start;flex-direction:column}
  .brand-service-signature{position:relative;left:auto;right:auto;bottom:auto;margin:-22px 12px 0}
  .brand-service-visual{padding-bottom:0}
  .brand-service-section{padding:64px 0}
  .brand-option-card{padding:28px;min-height:auto}
  .brand-section-head h2,.brand-welcome-grid h2,.brand-contact-card h2{font-size:var(--fs-heading)}
  .brand-benefits-grid{grid-template-columns:1fr}
  .brand-contact-actions{flex-direction:column}
  .brand-teaser-grid{gap:26px}
  .brand-teaser-actions{align-items:flex-start;flex-direction:column}
}


/* v45 — selected branding visual: softer champagne blend */
.brand-service-visual img{
  background:#ead0a2;
  object-fit:cover;
  object-position:center;
  border-radius:32px;
  box-shadow:
    0 34px 84px rgba(74,47,16,.20),
    0 0 70px rgba(230,193,120,.22);
  -webkit-mask-image:linear-gradient(to right,transparent 0%,#000 5%,#000 95%,transparent 100%);
  mask-image:linear-gradient(to right,transparent 0%,#000 5%,#000 95%,transparent 100%);
}

.brand-service-image-glow{
  inset:4% -3% 10%;
  background:radial-gradient(ellipse,rgba(255,250,236,.94),rgba(217,166,80,.20) 49%,transparent 74%);
  filter:blur(22px);
}

.brand-teaser-media img{
  object-position:center 42%;
}


/* v46 — Your Signature teaser refinement */
.brand-teaser-grid{
  grid-template-columns:1fr !important;
  gap:28px !important;
}

.brand-teaser-copy{
  max-width:860px !important;
}

.brand-teaser h2{
  color:#e2b85f !important;
  font-style:normal !important;
  text-shadow:0 0 20px rgba(226,184,95,.10);
}

.brand-teaser .btn.btn-gold{
  background:linear-gradient(135deg,#c89438,#e4bd69) !important;
  color:#17130d !important;
  border-color:rgba(255,224,156,.30) !important;
  box-shadow:0 12px 28px rgba(200,148,56,.18) !important;
}

.brand-teaser-media{
  width:100%;
  max-width:none !important;
  border-radius:22px !important;
  overflow:hidden;
  background:rgba(255,255,255,.02);
}

.brand-teaser-media img{
  width:100% !important;
  height:clamp(150px,17vw,230px) !important;
  aspect-ratio:auto !important;
  object-fit:cover !important;
  object-position:center 49% !important;
  transform:none !important;
}

.brand-teaser-media:hover img{
  transform:scale(1.008) !important;
}

@media(max-width:900px){
  .brand-teaser-media img{
    height:190px !important;
  }
}

@media(max-width:620px){
  .brand-teaser-media img{
    height:150px !important;
  }
}


/* v47 — reset structure per requested navigation + concise owner branding teaser */
.main-nav a.active{
  color:#e0b55c;
}
.main-nav a.active::after{
  transform:scaleX(1);
}

.brand-teaser-compact{
  padding:72px 0;
  background:
    radial-gradient(circle at 84% 42%,rgba(220,175,88,.22),transparent 24%),
    linear-gradient(105deg,#171512 0%,#211b14 52%,#3b2a17 100%);
}

.brand-teaser-compact-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,.82fr);
  gap:56px;
  align-items:center;
}

.brand-teaser-compact-copy{
  max-width:720px;
}

.brand-teaser-compact .eyebrow{
  color:#dfb45e;
}

.brand-teaser-compact h2{
  margin:6px 0 14px;
  color:#e5bb68;
  font-family:var(--font-display);
  font-size:var(--fs-page-title);
  line-height:.98;
  font-weight:600;
}

.brand-teaser-compact p{
  max-width:680px;
  color:rgba(255,248,236,.76);
  line-height:1.72;
}

.brand-strengths{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin:24px 0 28px;
}

.brand-strengths span{
  display:inline-flex;
  align-items:center;
  min-height:42px;
  padding:10px 14px;
  border-radius:999px;
  border:1px solid rgba(225,183,98,.22);
  background:rgba(255,248,236,.055);
  color:#f2d492;
  font-size:var(--fs-small);
  line-height:1.25;
}

.brand-teaser-cta{
  min-width:220px;
  text-align:center;
}

.brand-teaser-compact-media{
  display:block;
  overflow:hidden;
  border-radius:24px;
  box-shadow:0 26px 62px rgba(0,0,0,.30);
}

.brand-teaser-compact-media img{
  display:block;
  width:100%;
  aspect-ratio:2.15/1;
  object-fit:cover;
  object-position:center;
  transition:transform .35s ease;
}

.brand-teaser-compact-media:hover img{
  transform:scale(1.02);
}

@media(max-width:1020px){
  .main-nav{gap:17px}
  .main-nav a{font-size:var(--fs-small)}
}

@media(max-width:900px){
  .brand-teaser-compact-grid{
    grid-template-columns:1fr;
    gap:28px;
  }
  .brand-teaser-compact-media{
    max-width:760px;
  }
}

@media(max-width:620px){
  .brand-teaser-compact{
    padding:56px 0;
  }
  .brand-strengths{
    flex-direction:column;
    align-items:flex-start;
  }
  .brand-teaser-compact-media img{
    aspect-ratio:1.8/1;
  }
}


/* v48 — light owner teaser, no box image, centered larger CTA */
.brand-teaser-light{
  padding: 76px 0;
  background: linear-gradient(180deg, #fbf6ee 0%, #f6efe2 100%);
  border-top: 1px solid rgba(176, 129, 48, 0.10);
  border-bottom: 1px solid rgba(176, 129, 48, 0.10);
}

.brand-teaser-light-wrap{
  max-width: 1120px;
}

.brand-teaser-light-copy{
  max-width: 820px;
  margin: 0 auto;
  text-align: center;
}

.brand-teaser-light .eyebrow{
  color:#b88a33;
}

.brand-teaser-light h2{
  margin: 8px 0 16px;
  font-family:var(--font-display);
  font-size:var(--fs-page-title);
  line-height: 0.98;
  color:#221b14;
}

.brand-teaser-light p{
  margin: 0 auto;
  max-width: 760px;
  color: #5a5043;
  line-height: 1.8;
}

.brand-strengths-grid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin: 36px auto 34px;
}

.brand-strengths-grid span{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  min-height: 114px;
  padding: 22px 24px;
  border-radius: 22px;
  border:1px solid rgba(193, 150, 71, 0.18);
  background: rgba(255,255,255,0.68);
  box-shadow: 0 10px 28px rgba(110, 86, 39, 0.06);
  color:#5e4f35;
  text-align:left;
}

.brand-strengths-grid span strong{
  display:block;
  margin-bottom: 10px;
  color:#2c2217;
  font-size:var(--fs-body-lg);
  line-height:1.3;
}

.brand-strengths-grid span small{
  display:block;
  font-size:var(--fs-body);
  line-height: 1.55;
  color:#6e6256;
}

.brand-teaser-cta-wrap{
  display:flex;
  justify-content:center;
  margin-top: 8px;
}

.brand-teaser-cta-large{
  min-width: 320px;
  padding: 20px 36px;
  font-size:var(--fs-body);
  border-radius: 999px;
  text-align:center;
  box-shadow: 0 16px 34px rgba(189, 143, 56, 0.22);
}

@media (max-width: 820px){
  .brand-teaser-light{
    padding: 56px 0;
  }
  .brand-strengths-grid{
    grid-template-columns: 1fr;
  }
  .brand-strengths-grid span{
    min-height: 0;
  }
  .brand-teaser-cta-large{
    width:100%;
    min-width:0;
  }
}


/* v49 — Your Signature is intentionally a single visual page beneath the Mila Stays header */
.brand-poster-page{
  margin:0;
  background:#f5e6c7;
  color:#211c17;
}

.brand-poster-page .site-header{
  position:relative;
  z-index:10;
  background:#1a1815;
  border-bottom:1px solid rgba(216,174,90,.18);
}

.brand-poster-page .main-nav a.active{
  color:#e1b85e;
}

.brand-poster-main{
  width:100%;
  margin:0;
  padding:0;
  overflow:hidden;
  background:#f3e1bd;
}

.brand-poster-image{
  display:block;
  width:100%;
  height:auto;
  margin:0 auto;
}

@media(max-width:900px){
  .brand-poster-main{
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
  }
  .brand-poster-image{
    width:1100px;
    max-width:none;
  }
}

@media(max-width:620px){
  .brand-poster-image{
    width:980px;
  }
}


/* v51 — Events in Bansko */
.events-intro{max-width:850px;margin:4px 0 28px;padding:26px 28px;border-radius:22px;background:linear-gradient(135deg,rgba(219,175,94,.14),rgba(255,255,255,.92));border:1px solid rgba(184,137,52,.18)}
.events-kicker{margin:0 0 6px!important;color:var(--gold)!important;font-size:var(--fs-caption) !important;font-weight:800!important;letter-spacing:.16em;text-transform:uppercase}
.events-intro h3{margin:0 0 8px;font-family:var(--font-display);font-size:var(--fs-heading-sm);line-height:1}
.events-intro>p:last-child{margin:0;max-width:720px;color:var(--muted);line-height:1.65}
.events-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.event-card{position:relative;min-height:178px;overflow:hidden;background:linear-gradient(180deg,#fff,#fffaf1)}
.event-card::after{content:"";position:absolute;width:90px;height:90px;right:-34px;bottom:-42px;border-radius:50%;background:radial-gradient(circle,rgba(215,169,85,.16),transparent 68%)}
.event-card .event-date{display:inline-flex;width:auto;margin:0 0 12px;padding:6px 10px;border-radius:999px;background:rgba(205,156,68,.12);color:#a16e1d;font-size:var(--fs-caption);font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.event-card h3{font-size:var(--fs-subheading)}
.events-disclaimer{margin:26px 0 0;padding:16px 18px;border-left:3px solid var(--gold);border-radius:0 12px 12px 0;background:rgba(205,156,68,.08);color:var(--muted);font-size:var(--fs-small);line-height:1.6}
@media(max-width:980px){.events-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.events-intro{padding:22px 20px}.events-intro h3{font-size:var(--fs-heading-sm)}.events-grid{grid-template-columns:1fr}.event-card{min-height:0}}

/* Owner portrait signature — requested handwritten gold name under photo */
.owner-portrait-caption strong{
  font-family:var(--font-script);
  font-size:var(--fs-heading-sm);
  font-weight:400;
  line-height:1.05;
  color:var(--gold);
  text-align:center;
  width:100%;
  display:block;
  letter-spacing:.01em;
  text-shadow:0 1px 8px rgba(185,138,58,.12);
}

/* v59 — Your Signature rebuilt as real HTML; BG and EN share one structure */
.brand-live-page{
  margin:0;
  background:#f6f1e8;
  color:#211c17;
}
.brand-live-page .site-header{
  position:relative;
  z-index:20;
  background:#171613;
  border-bottom:1px solid rgba(216,174,90,.18);
}
.brand-live-page .main-nav a.active{color:#e1b85e}
.brand-live-main{
  position:relative;
  overflow:hidden;
  padding:50px 0 34px;
  background:
    radial-gradient(circle at 70% 12%,rgba(255,255,255,.72) 0,rgba(255,255,255,0) 22%),
    radial-gradient(circle at 18% 10%,rgba(255,255,255,.58) 0,rgba(255,255,255,0) 20%),
    linear-gradient(180deg,#f8f4ec 0%,#f5efe4 100%);
}
.brand-live-main::before{
  content:"";
  position:absolute;inset:0;pointer-events:none;opacity:.16;
  background:
    linear-gradient(110deg,transparent 0 42%,rgba(255,255,255,.28) 50%,transparent 60%),
    radial-gradient(ellipse at 30% 60%,rgba(255,247,224,.44),transparent 47%);
  filter:blur(18px);
}
.brand-live-hero,
.brand-live-options,
.brand-live-benefits,
.brand-live-bottom{position:relative;z-index:1}
.brand-live-hero{
  display:grid;
  grid-template-columns:minmax(0,.93fr) minmax(0,1.07fr);
  gap:54px;
  align-items:center;
  padding:34px 36px;
  border-radius:34px;
  background:linear-gradient(180deg,rgba(239,231,218,.94),rgba(233,223,209,.92));
  border:1px solid rgba(116,88,47,.10);
  box-shadow:0 16px 34px rgba(66,49,24,.06);
}
.brand-live-copy{padding:6px 0 0 16px}
.brand-live-kicker{
  margin:0 0 18px;
  font-size:var(--fs-small);
  font-weight:700;
  letter-spacing:.19em;
  text-transform:uppercase;
  color:#4d4337;
}
.brand-live-kicker::after{content:"";display:block;width:55px;height:1px;margin-top:12px;background:#b67a1e}
.brand-live-copy h1{
  margin:0;
  max-width:720px;
  font-family:var(--font-display);
  font-size:var(--fs-page-title);
  line-height:.88;
  font-weight:500;
  letter-spacing:-.025em;
  text-transform:uppercase;
}
.brand-live-copy h1 span,.brand-live-copy h1 em{display:block}
.brand-live-copy h1 em{font-style:normal;color:#ae741d;font-weight:500;white-space:nowrap}
.brand-live-rule{width:58px;height:2px;margin:24px 0 18px;background:#bd8020}
.brand-live-tagline{
  margin:0 0 14px!important;
  color:#2a251f!important;
  font-size:var(--fs-lead) !important;
  line-height:1.35!important;
  font-weight:600!important;
}
.brand-live-tagline span,.brand-live-bottom p span{color:#c98d2c}
.brand-live-copy>p:not(.brand-live-kicker):not(.brand-live-tagline){
  max-width:620px;
  margin:0 0 12px;
  font-size:var(--fs-body);
  line-height:1.55;
  color:#5f5447;
}
.brand-live-visual{
  position:relative;
  min-height:420px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.brand-live-glow{
  position:absolute;
  inset:6% -5% 2%;
  background:radial-gradient(ellipse,rgba(255,245,213,.92),rgba(185,120,29,.17) 50%,transparent 73%);
  filter:blur(22px);
}
.brand-live-visual img{
  position:relative;
  z-index:1;
  width:min(100%,670px);
  aspect-ratio:1.18/1;
  object-fit:cover;
  border-radius:30px;
  box-shadow:0 28px 70px rgba(76,48,13,.20),0 0 42px rgba(255,239,198,.30);
  -webkit-mask-image:linear-gradient(to right,transparent 0%,#000 5%,#000 97%,transparent 100%);
  mask-image:linear-gradient(to right,transparent 0%,#000 5%,#000 97%,transparent 100%);
}
.brand-live-options{
  display:grid;
  grid-template-columns:1fr 1fr 1.25fr;
  gap:20px;
  margin-top:20px;
}
.brand-live-card{
  min-height:190px;
  display:grid;
  grid-template-columns:74px 1fr;
  gap:18px;
  align-items:start;
  padding:26px 24px;
  border-radius:24px;
  background:linear-gradient(145deg,rgba(255,251,243,.84),rgba(249,229,194,.72));
  border:1px solid rgba(181,126,42,.16);
  box-shadow:0 18px 42px rgba(97,63,19,.07);
  backdrop-filter:blur(6px);
}
.brand-live-card-welcome{align-items:center;background:linear-gradient(145deg,rgba(255,247,231,.83),rgba(237,203,144,.66))}
.brand-live-icon{display:block;width:68px;height:68px;color:#b77a1d}
.brand-live-icon.large{width:80px;height:80px}
.brand-live-icon svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}
.brand-live-card h2{
  margin:2px 0 8px;
  font-family:var(--font-display);
  font-size:var(--fs-subheading);
  line-height:1.02;
  font-weight:600;
  color:#30281f;
  text-transform:uppercase;
}
.brand-live-card-welcome h2{color:#a76d17;font-family:var(--font-body);font-size:var(--fs-body-lg);letter-spacing:.02em}
.mini-rule{display:block;width:42px;height:2px;margin:11px 0 10px;background:#c68b2a}
.brand-live-card p{margin:0;font-size:var(--fs-small);line-height:1.48;color:#625647}
.brand-live-card-two p+p{margin-top:10px}
.brand-live-benefits{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  margin-top:22px;
  padding:20px 10px;
  border-top:1px solid rgba(173,119,38,.14);
  border-bottom:1px solid rgba(173,119,38,.14);
}
.brand-live-benefits div{
  min-height:76px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  gap:7px;
  border-right:1px solid rgba(165,112,34,.22);
}
.brand-live-benefits div:last-child{border-right:0}
.brand-live-benefits span{font-size:var(--fs-card-title);line-height:1;color:#b87a1d;font-family:var(--font-display)}
.brand-live-benefits strong{font-size:var(--fs-caption);line-height:1.25;letter-spacing:.05em;text-transform:uppercase;color:#3f372e}
.brand-live-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  padding-top:20px;
}
.brand-live-bottom p{
  margin:0;
  font-family:var(--font-display);
  font-size:var(--fs-card-title-fluid);
  line-height:1.1;
  color:#30271f;
}
.brand-live-cta{
  flex:0 0 auto;
  min-width:345px;
  padding:15px 24px;
  border-radius:999px;
  text-align:center;
  text-decoration:none;
  text-transform:uppercase;
  font-size:var(--fs-caption);
  font-weight:600;
  letter-spacing:.03em;
  color:#fff8e9;
  background:linear-gradient(90deg,#b27417,#d19732);
  box-shadow:0 12px 28px rgba(145,91,19,.17);
}
.brand-live-cta b{margin-left:12px;font-size:var(--fs-body-lg);font-weight:400}

@media(max-width:1050px){
  .brand-live-copy h1{font-size:var(--fs-page-title)}
  .brand-live-options{grid-template-columns:1fr 1fr}
  .brand-live-card-welcome{grid-column:1/-1}
  .brand-live-visual{min-height:360px}
}
@media(max-width:820px){
  .brand-live-main{padding-top:34px}
  .brand-live-hero{grid-template-columns:1fr;gap:18px}
  .brand-live-copy{padding-inline:0}
  .brand-live-copy h1{font-size:var(--fs-page-title)}
  .brand-live-copy h1 em{white-space:normal}
  .brand-live-visual{min-height:0}
  .brand-live-visual img{width:100%;aspect-ratio:1.35/1;border-radius:24px}
  .brand-live-options{grid-template-columns:1fr;margin-top:24px}
  .brand-live-card-welcome{grid-column:auto}
  .brand-live-benefits{grid-template-columns:repeat(2,1fr);gap:0;padding:12px 0}
  .brand-live-benefits div{border-right:0;border-bottom:1px solid rgba(165,112,34,.15);padding:14px}
  .brand-live-benefits div:last-child{grid-column:1/-1;border-bottom:0}
  .brand-live-bottom{flex-direction:column;text-align:center}
  .brand-live-cta{width:100%;min-width:0}
}
@media(max-width:520px){
  .brand-live-main{padding-bottom:24px}
  .brand-live-copy h1{font-size:var(--fs-heading-lg)}
  .brand-live-tagline{font-size:var(--fs-body-lg) !important}
  .brand-live-card{grid-template-columns:56px 1fr;padding:22px 18px}
  .brand-live-icon{width:52px;height:52px}
  .brand-live-icon.large{width:58px;height:58px}
  .brand-live-card h2{font-size:var(--fs-subheading)}
  .brand-live-bottom p{font-size:var(--fs-card-title)}
}

/* v59.1 — keep the desktop hero title fully inside the text column */
@media(min-width:821px){
  .brand-live-copy h1{font-size:var(--fs-page-title);line-height:.91}
  .brand-live-copy h1 em{white-space:normal}
}


/* v60 — luxury Your Signature teaser on owners page */
.owner-brand-luxe{
  position:relative;
  overflow:hidden;
  padding:92px 0 86px;
  background:
    radial-gradient(circle at 50% -20%, rgba(232,196,129,.23), transparent 48%),
    linear-gradient(180deg,#fbf7f0 0%,#f3e8d6 100%);
  border-top:1px solid rgba(176,129,48,.12);
  border-bottom:1px solid rgba(176,129,48,.16);
}
.owner-brand-luxe:before,
.owner-brand-luxe:after{
  content:"";
  position:absolute;
  border-radius:50%;
  border:1px solid rgba(183,137,61,.11);
  pointer-events:none;
}
.owner-brand-luxe:before{width:420px;height:420px;left:-260px;top:-260px}
.owner-brand-luxe:after{width:360px;height:360px;right:-230px;bottom:-250px}
.owner-brand-luxe-wrap{position:relative;z-index:1;max-width:1160px}
.owner-brand-luxe-head{max-width:900px;margin:0 auto;text-align:center}
.owner-brand-luxe .eyebrow{margin:0 0 12px;color:#aa7932;letter-spacing:.22em}
.owner-brand-luxe h2{
  margin:0;
  font-family:var(--font-display);
  font-size:var(--fs-page-title);
  font-weight:600;
  line-height:.96;
  color:#9a6a2c;
  text-shadow:0 7px 24px rgba(166,111,38,.08);
}
.owner-brand-luxe-lead{
  max-width:780px;
  margin:26px auto 0;
  font-family:var(--font-display);
  font-size:var(--fs-card-title-fluid);
  line-height:1.18;
  color:#4f3c29;
}
.owner-brand-luxe-copy{
  max-width:760px;
  margin:22px auto 0;
  font-size:var(--fs-body);
  line-height:1.8;
  color:#756656;
}
.owner-brand-luxe-divider{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:16px;
  width:min(760px,80%);
  margin:42px auto 38px;
  color:#bd8b3e;
}
.owner-brand-luxe-divider:before,
.owner-brand-luxe-divider:after{content:"";height:1px;flex:1;background:linear-gradient(90deg,transparent,rgba(181,133,57,.42))}
.owner-brand-luxe-divider:after{background:linear-gradient(90deg,rgba(181,133,57,.42),transparent)}
.owner-brand-luxe-divider span{font-size:var(--fs-small)}
.owner-brand-luxe-points{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  max-width:1100px;
  margin:0 auto;
}
.owner-brand-luxe-points article{
  min-height:180px;
  padding:4px 28px 12px;
  text-align:center;
  border-right:1px solid rgba(177,132,61,.2);
}
.owner-brand-luxe-points article:last-child{border-right:0}
.owner-brand-luxe-no{
  display:block;
  margin:0 auto 13px;
  font-family:var(--font-display);
  font-size:var(--fs-small);
  letter-spacing:.16em;
  color:#b8873a;
}
.owner-brand-luxe-points h3{
  margin:0 0 11px;
  font-family:var(--font-display);
  font-size:var(--fs-card-title);
  font-weight:600;
  line-height:1.05;
  color:#9b6b2d;
}
.owner-brand-luxe-points p{
  margin:0 auto;
  max-width:220px;
  font-size:var(--fs-small);
  line-height:1.65;
  color:#786a5a;
}
.owner-brand-luxe-foot{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:23px;
  margin-top:34px;
}
.owner-brand-luxe-signature{
  margin:0;
  font-family:var(--font-display);
  font-size:var(--fs-heading-sm-fluid);
  font-weight:600;
  line-height:1.22;
  letter-spacing:.01em;
  color:#b47d2f;
  text-align:center;
}
.owner-brand-luxe-cta{
  min-width:330px;
  padding:17px 34px;
  border:1px solid rgba(132,84,22,.13);
  background:linear-gradient(135deg,#d8ad61 0%,#b77b29 100%);
  color:#fffaf1;
  box-shadow:0 16px 34px rgba(154,102,35,.19);
}
.owner-brand-luxe-cta:hover{box-shadow:0 20px 42px rgba(154,102,35,.25)}
@media(max-width:900px){
  .owner-brand-luxe{padding:72px 0 68px}
  .owner-brand-luxe-points{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:28px}
  .owner-brand-luxe-points article:nth-child(2){border-right:0}
  .owner-brand-luxe-points article:nth-child(-n+2){padding-bottom:28px;border-bottom:1px solid rgba(177,132,61,.18)}
}
@media(max-width:620px){
  .owner-brand-luxe{padding:58px 0 54px}
  .owner-brand-luxe-head{max-width:100%}
  .owner-brand-luxe h2{font-size:var(--fs-heading-lg)}
  .owner-brand-luxe-lead{font-size:var(--fs-card-title)}
  .owner-brand-luxe-copy{font-size:var(--fs-body);line-height:1.72}
  .owner-brand-luxe-divider{margin:34px auto 30px}
  .owner-brand-luxe-points{grid-template-columns:1fr}
  .owner-brand-luxe-points article{
    min-height:0;
    padding:22px 12px!important;
    border-right:0!important;
    border-bottom:1px solid rgba(177,132,61,.18);
  }
  .owner-brand-luxe-points article:last-child{border-bottom:0}
  .owner-brand-luxe-foot{margin-top:24px}
  .owner-brand-luxe-cta{width:100%;min-width:0}
}


/* v61 — refined black-box placement in the owners branding teaser */
.owner-brand-luxe-top{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);
  align-items:center;
  gap:58px;
  max-width:1100px;
  margin:0 auto;
}
.owner-brand-luxe-top .owner-brand-luxe-head{
  max-width:720px;
  margin:0;
  text-align:left;
}
.owner-brand-luxe-top .owner-brand-luxe-head .owner-brand-luxe-lead,
.owner-brand-luxe-top .owner-brand-luxe-head .owner-brand-luxe-copy{
  margin-left:0;
  margin-right:0;
}
.owner-brand-luxe-box{
  position:relative;
  margin:0;
  padding:10px;
  border:1px solid rgba(180,128,43,.22);
  border-radius:28px;
  background:rgba(255,250,240,.45);
  box-shadow:0 24px 60px rgba(92,60,20,.12);
}
.owner-brand-luxe-box-glow{
  position:absolute;
  width:78%;
  aspect-ratio:1;
  left:11%;
  top:4%;
  border-radius:50%;
  background:radial-gradient(circle,rgba(213,164,78,.22),rgba(213,164,78,0) 70%);
  filter:blur(12px);
  pointer-events:none;
}
.owner-brand-luxe-box img{
  position:relative;
  z-index:1;
  display:block;
  width:100%;
  aspect-ratio:1.18/1;
  object-fit:cover;
  object-position:center;
  border-radius:21px;
}
.owner-brand-luxe-box figcaption{
  position:relative;
  z-index:1;
  margin:12px 6px 4px;
  text-align:center;
  font-family:var(--font-display);
  font-size:var(--fs-body-lg);
  font-style:italic;
  color:#9d6d2e;
}
.owner-brand-luxe-top + .owner-brand-luxe-divider{margin-top:46px}
@media(max-width:900px){
  .owner-brand-luxe-top{grid-template-columns:1fr;gap:30px;max-width:780px}
  .owner-brand-luxe-top .owner-brand-luxe-head{text-align:center;max-width:780px;margin:0 auto}
  .owner-brand-luxe-top .owner-brand-luxe-head .owner-brand-luxe-lead,
  .owner-brand-luxe-top .owner-brand-luxe-head .owner-brand-luxe-copy{margin-left:auto;margin-right:auto}
  .owner-brand-luxe-box{width:min(440px,78%);margin:0 auto}
}
@media(max-width:620px){
  .owner-brand-luxe-box{width:88%;border-radius:22px;padding:8px}
  .owner-brand-luxe-box img{border-radius:16px;aspect-ratio:1.25/1}
  .owner-brand-luxe-box figcaption{font-size:var(--fs-body-lg)}
}

/* v64 — refined Your Signature mobile layout. BG is the master; EN shares identical structure. */
@media(max-width:520px){
  .brand-live-main{
    padding-top:28px;
    padding-bottom:30px;
  }
  .brand-live-hero{
    gap:22px;
    padding:22px 18px;
    border-radius:24px;
  }
  .brand-live-copy{
    padding:0;
  }
  .brand-live-kicker{
    margin-bottom:15px;
    font-size:var(--fs-caption);
    letter-spacing:.18em;
  }
  .brand-live-kicker::after{
    width:48px;
    margin-top:10px;
  }
  .brand-live-copy h1{
    max-width:100%;
    font-size:var(--fs-heading);
    line-height:.92;
    letter-spacing:-.02em;
  }
  .brand-live-copy h1 span,
  .brand-live-copy h1 em{
    display:block;
  }
  .brand-live-rule{
    width:50px;
    margin:19px 0 16px;
  }
  .brand-live-tagline{
    margin-bottom:13px!important;
    font-size:var(--fs-body-lg) !important;
    line-height:1.38!important;
  }
  .brand-live-copy>p:not(.brand-live-kicker):not(.brand-live-tagline){
    margin-bottom:11px;
    font-size:var(--fs-body);
    line-height:1.58;
  }
  .brand-live-visual{
    margin-top:2px;
  }
  .brand-live-visual img{
    width:100%;
    aspect-ratio:1.28/1;
    object-position:center;
    border-radius:20px;
    box-shadow:0 20px 44px rgba(76,48,13,.17),0 0 28px rgba(255,239,198,.24);
  }
  .brand-live-options{
    gap:14px;
    margin-top:24px;
  }
  .brand-live-card{
    min-height:0;
    grid-template-columns:50px minmax(0,1fr);
    gap:14px;
    padding:20px 17px;
    border-radius:20px;
  }
  .brand-live-icon{
    width:48px;
    height:48px;
  }
  .brand-live-icon.large{
    width:50px;
    height:50px;
  }
  .brand-live-card h2{
    margin-top:1px;
    margin-bottom:7px;
    font-size:var(--fs-lead);
    line-height:1.04;
  }
  .brand-live-card-welcome h2{
    font-size:var(--fs-body);
    line-height:1.12;
  }
  .mini-rule{
    width:38px;
    margin:9px 0 9px;
  }
  .brand-live-card p{
    font-size:var(--fs-caption);
    line-height:1.5;
  }
  .brand-live-card-two p{
    font-size:var(--fs-small);
    line-height:1.62;
  }
  .brand-live-card-two p+p{
    margin-top:11px;
  }
  .brand-live-benefits{
    grid-template-columns:repeat(2,minmax(0,1fr));
    margin-top:20px;
    padding:8px 0;
  }
  .brand-live-benefits div{
    min-height:92px;
    padding:13px 8px;
    gap:8px;
    border-right:0;
    border-bottom:1px solid rgba(165,112,34,.16);
  }
  .brand-live-benefits div:nth-child(odd):not(:last-child){
    border-right:1px solid rgba(165,112,34,.16);
  }
  .brand-live-benefits div:last-child{
    grid-column:1/-1;
    min-height:82px;
  }
  .brand-live-benefits span{
    font-size:var(--fs-card-title);
  }
  .brand-live-benefits strong{
    font-size:var(--fs-micro);
    line-height:1.28;
  }
  .brand-live-bottom{
    gap:20px;
    padding-top:20px;
  }
  .brand-live-bottom p{
    max-width:330px;
    margin-inline:auto;
    font-size:var(--fs-card-title);
    line-height:1.08;
  }
  .brand-live-cta{
    width:100%;
    min-width:0;
    padding:15px 16px;
    font-size:var(--fs-caption);
    letter-spacing:.025em;
  }
}


/* Standalone recommendations page: content is unchanged; only page spacing. */
.recommend-page .recommend-page-section{
  padding-top:72px;
  min-height:72vh;
}
.recommend-page .recommend-page-section > .container{
  max-width:1180px;
}

/* BG is the layout master; EN uses the exact same geometry for first page headings. */
.owners-page .owner-hero-copy,
.brand-live-page .brand-live-copy,
.recommend-page .section-head > div{
  min-width:0;
}
@media (min-width:901px){
  .owners-page .owner-hero-copy h1,
  .brand-live-page .brand-live-copy h1{
    min-height:2.05em;
  }
}

/* v65 title geometry: translations use the same explicit line structure */
.brand-live-copy h1 em > span{display:block;color:inherit}
.recommend-page .section-head h2 > span{display:inline}

/* v66 — longer personal About Mila story */
.about-soft-copy > p:not(.eyebrow):not(.about-script){
  margin:0 0 15px;
}
.about-soft-copy .about-final{
  margin-top:24px !important;
  font-family:var(--font-display);
  font-size:var(--fs-card-title) !important;
  line-height:1.35 !important;
  color:#5b3a19 !important;
}
@media(min-width:951px){
  .about-soft-grid{
    align-items:start;
  }
  .about-soft-photo{
    position:sticky;
    top:110px;
    margin-top:34px;
  }
}
@media(max-width:620px){
  .about-soft-copy .about-final{
    font-size:var(--fs-subheading) !important;
  }
}


/* v69 — About Mila, selected variant 2: handwritten heading + handwritten closing line */
.about-soft-copy h2{
  font-family:var(--font-script)!important;
  font-weight:400 !important;
  color:#6b431b !important;
  letter-spacing:.01em;
  line-height:1.02 !important;
}
.about-soft-copy > p:not(.eyebrow):not(.about-final):not(.about-script){
  margin-bottom:10px !important;
}
.about-soft-copy .about-final{
  margin-top:16px !important;
  font-family:var(--font-script)!important;
  font-size:var(--fs-card-title) !important;
  font-weight:400 !important;
  line-height:1.12 !important;
  color:#b47a20 !important;
}
.about-soft-copy .about-final strong{
  font:inherit !important;
  color:inherit !important;
}
@media(max-width:620px){
  .about-soft-copy h2{
    font-size:var(--fs-section-title) !important;
  }
  .about-soft-copy > p:not(.eyebrow):not(.about-final):not(.about-script){
    margin-bottom:9px !important;
  }
  .about-soft-copy .about-final{
    margin-top:14px !important;
    font-size:var(--fs-card-title) !important;
  }
}

/* v76 — About is now a standalone page */
.about-page .about-soft{
  min-height:72vh;
}
@media(min-width:901px){
  .about-page .about-soft{
    padding-top:76px;
  }
}


/* v79 — QA fixes: semantic page headings */
.about-soft-copy h1{
  max-width:680px;
  margin:10px 0 12px;
  font-size:var(--fs-heading-sm-fluid);
  line-height:1.02;
  font-family:var(--font-script)!important;
  font-weight:400 !important;
  color:#6b431b !important;
  letter-spacing:.01em;
}
.recommend-page .section-head h1{
  font-family:var(--font-display);
  font-size:var(--fs-section-title);
  line-height:1.05;
  margin:12px 0;
  letter-spacing:.01em;
}
.recommend-page .section-head h1 > span{display:inline}

@media(max-width:620px){
  .about-soft-copy h1{
    font-size:var(--fs-section-title) !important;
  }
}

/* v82 — apartment photo galleries, mobile hero spacing, Back to top */
.stay-gallery{
  position:relative;
  background:#181613;
  border-bottom:1px solid rgba(0,0,0,.08);
}
.gallery-main{
  position:relative;
  display:block;
  width:100%;
  height:390px;
  padding:0;
  border:0;
  background:#201d19;
  cursor:zoom-in;
  overflow:hidden;
}
.gallery-main img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  transition:transform .28s ease,opacity .18s ease;
}
.gallery-main:hover img{transform:scale(1.015)}
.gallery-main .pill{z-index:2}
.gallery-expand,
.gallery-count{
  position:absolute;
  z-index:2;
  bottom:14px;
  color:#fff;
  background:rgba(12,11,10,.68);
  border:1px solid rgba(255,255,255,.18);
  backdrop-filter:blur(8px);
  box-shadow:0 6px 18px rgba(0,0,0,.18);
}
.gallery-expand{
  right:14px;
  width:38px;
  height:38px;
  border-radius:50%;
  display:grid;
  place-items:center;
  font-size:var(--fs-body-lg);
}
.gallery-count{
  left:14px;
  border-radius:999px;
  padding:7px 10px;
  font-size:var(--fs-caption);
  letter-spacing:.06em;
}
.gallery-thumbs{
  display:flex;
  gap:8px;
  overflow-x:auto;
  padding:10px;
  scrollbar-width:thin;
  background:#f5efe6;
  scroll-snap-type:x proximity;
}
.gallery-thumb{
  flex:0 0 74px;
  width:74px;
  height:62px;
  padding:0;
  border:2px solid transparent;
  border-radius:9px;
  overflow:hidden;
  background:#ddd3c4;
  cursor:pointer;
  opacity:.72;
  scroll-snap-align:start;
  transition:opacity .18s ease,border-color .18s ease,transform .18s ease;
}
.gallery-thumb:hover{opacity:1;transform:translateY(-1px)}
.gallery-thumb.active{opacity:1;border-color:var(--gold)}
.gallery-thumb img{width:100%;height:100%;object-fit:cover}

.gallery-lightbox{
  position:fixed;
  inset:0;
  z-index:200;
  display:none;
  place-items:center;
  padding:28px 72px;
  background:rgba(7,7,7,.92);
  backdrop-filter:blur(8px);
}
.gallery-lightbox.open{display:grid}
.gallery-lightbox img{
  max-width:min(1180px,92vw);
  max-height:88vh;
  width:auto;
  height:auto;
  object-fit:contain;
  border-radius:10px;
  box-shadow:0 26px 90px rgba(0,0,0,.48);
}
.gallery-lightbox-close,
.gallery-lightbox-prev,
.gallery-lightbox-next{
  position:fixed;
  z-index:2;
  border:1px solid rgba(255,255,255,.25);
  color:#fff;
  background:rgba(20,18,16,.66);
  backdrop-filter:blur(8px);
  cursor:pointer;
  display:grid;
  place-items:center;
}
.gallery-lightbox-close{
  top:18px;
  right:18px;
  width:44px;
  height:44px;
  border-radius:50%;
  font-size:var(--fs-card-title);
}
.gallery-lightbox-prev,
.gallery-lightbox-next{
  top:50%;
  width:48px;
  height:58px;
  margin-top:-29px;
  border-radius:14px;
  font-size:var(--fs-card-title);
}
.gallery-lightbox-prev{left:16px}
.gallery-lightbox-next{right:16px}
.gallery-lightbox-caption{
  position:fixed;
  left:50%;
  bottom:14px;
  transform:translateX(-50%);
  max-width:80vw;
  color:rgba(255,255,255,.82);
  font-size:var(--fs-small);
  text-align:center;
}
body.gallery-open{overflow:hidden}

.back-to-top{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:90;
  width:46px;
  height:46px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:50%;
  display:grid;
  place-items:center;
  background:rgba(20,18,15,.88);
  color:#fff;
  box-shadow:0 10px 28px rgba(0,0,0,.22);
  backdrop-filter:blur(10px);
  cursor:pointer;
  opacity:0;
  visibility:hidden;
  transform:translateY(10px);
  transition:opacity .2s ease,transform .2s ease,visibility .2s ease,background .2s ease;
}
.back-to-top:hover{background:#b98a3a;color:#111}
.back-to-top.visible{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}

@media(max-width:900px){
  .gallery-main{height:430px}
}

@media(max-width:600px){
  .gallery-main{height:min(112vw,430px)}
  .gallery-thumb{flex-basis:68px;width:68px;height:58px}
  .gallery-lightbox{padding:58px 10px 62px}
  .gallery-lightbox img{max-width:96vw;max-height:80vh}
  .gallery-lightbox-prev,
  .gallery-lightbox-next{width:42px;height:52px;background:rgba(20,18,16,.72)}
  .gallery-lightbox-prev{left:7px}
  .gallery-lightbox-next{right:7px}
  .back-to-top{right:14px;bottom:14px;width:44px;height:44px}
}

/* v83 — About closing line: match the heading's font and colour only */
.about-soft-copy .about-final,
.about-soft-copy .about-final strong{
  font-family:var(--font-script)!important;
  font-weight:400 !important;
  color:#6b431b !important;
}

/* v87 SEO — apartment detail pages. Existing page design remains unchanged. */
.stay-detail-page{background:#f7f2ea;color:var(--ink)}
.stay-detail-page main{padding-top:0}
.stay-detail-hero{padding-top:42px;padding-bottom:34px}
.stay-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:28px;font-size:var(--fs-caption);color:#776b5e}
.stay-breadcrumb a{color:inherit;text-decoration:none}
.stay-breadcrumb a:hover{color:var(--gold)}
.stay-breadcrumb strong{font-weight:600;color:#4a4138}
.stay-detail-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:44px;align-items:end;margin-bottom:30px}
.stay-detail-heading h1{max-width:850px;margin:4px 0 14px;font-family:var(--font-display);font-size:var(--fs-page-title);line-height:.98;font-weight:600;color:#211d18}
.stay-detail-lead{max-width:760px;margin:0;color:#62594f;font-size:var(--fs-body-lg);line-height:1.62}
.stay-detail-actions{display:flex;flex-direction:column;gap:10px;min-width:230px}
.stay-detail-actions .btn{text-align:center;white-space:nowrap}
.stay-detail-gallery{overflow:hidden;border-radius:28px;box-shadow:0 20px 58px rgba(47,34,18,.12);background:#f2ece3}
.stay-detail-gallery .gallery-main{
  height:auto;
  min-height:520px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#f2ece3;
}
.stay-detail-gallery .gallery-main img{
  display:block;
  width:auto;
  height:auto;
  max-width:100%;
  max-height:min(76vh,720px);
  object-fit:contain;
  object-position:center;
  margin:auto;
  transform:none;
}
.stay-detail-gallery .gallery-main:hover img{transform:none}
.stay-detail-gallery .gallery-thumbs{padding:12px 14px}
.stay-detail-gallery .gallery-thumb{flex-basis:92px;width:92px;height:70px}
.stay-detail-copy{padding-top:34px}
.stay-detail-copy-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.42fr);gap:70px;align-items:start}
.stay-detail-copy h2{margin:8px 0 14px;font-family:var(--font-display);font-size:var(--fs-heading-sm-fluid);line-height:1.06;font-weight:600;color:#2d271f}
.stay-detail-copy h2:not(:first-of-type){margin-top:36px}
.stay-detail-copy p{max-width:760px;color:#665c51;line-height:1.72}
.stay-detail-amenities{padding:28px;border-radius:24px;background:#eee3d3;border:1px solid rgba(123,92,47,.10)}
.stay-detail-amenities ul{list-style:none;margin:14px 0 28px;padding:0}
.stay-detail-amenities li{padding:11px 0;border-bottom:1px solid rgba(99,76,44,.12);font-size:var(--fs-small);color:#4c4339}
.stay-detail-amenities li::before{content:"✓";margin-right:10px;color:#b98a3a;font-weight:700}
.stay-detail-booking{padding-top:6px}
.stay-detail-booking strong{display:block;margin-bottom:7px;font-family:var(--font-display);font-size:var(--fs-subheading)}
.stay-detail-booking p{margin:0 0 12px;font-size:var(--fs-small);line-height:1.55}
.stay-detail-booking .text-link{display:block;width:max-content;margin-top:9px}
.stay-title-link{color:inherit;text-decoration:none}
.stay-title-link:hover{color:inherit}

@media(max-width:900px){
  .stay-detail-page .site-header{position:relative}
  .stay-detail-hero{padding-top:28px}
  .stay-detail-heading{grid-template-columns:1fr;gap:20px;align-items:start}
  .stay-detail-actions{flex-direction:row;flex-wrap:wrap;min-width:0}
  .stay-detail-copy-grid{grid-template-columns:1fr;gap:34px}
}
@media(max-width:600px){
  .stay-detail-hero{padding-top:22px;padding-bottom:24px}
  .stay-breadcrumb{margin-bottom:20px;font-size:var(--fs-caption)}
  .stay-detail-heading h1{font-size:var(--fs-heading)}
  .stay-detail-lead{font-size:var(--fs-body)}
  .stay-detail-actions{display:grid;grid-template-columns:1fr;gap:9px;width:100%}
  .stay-detail-gallery{border-radius:20px}
  .stay-detail-gallery .gallery-thumb{flex-basis:70px;width:70px;height:58px}
  .stay-detail-copy{padding-top:24px}
  .stay-detail-copy-grid{gap:26px}
  .stay-detail-amenities{padding:22px 18px;border-radius:20px}
}

/* v88 — mobile galleries: show the full photo before opening zoom */
@media (max-width:600px){
  .stay-gallery{
    background:#f2ece3;
  }
  .stay-gallery .gallery-main,
  .stay-detail-gallery .gallery-main{
    height:auto !important;
    min-height:0 !important;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#f2ece3;
  }
  .stay-gallery .gallery-main img,
  .stay-detail-gallery .gallery-main img{
    display:block;
    width:auto !important;
    height:auto !important;
    max-width:100% !important;
    max-height:72svh !important;
    object-fit:contain !important;
    object-position:center !important;
    margin:auto;
    transform:none !important;
  }
  .gallery-main:hover img{
    transform:none !important;
  }
}

/* v89 — mobile media scaling audit: show complete content photos, not cropped */
@media (max-width:600px){
  /* Personal portrait on My Story + For Owners */
  .about-soft-photo img,
  .owner-portrait-card img{
    width:100% !important;
    height:auto !important;
    aspect-ratio:auto !important;
    object-fit:contain !important;
    object-position:center !important;
  }

  /* Branding imagery on For Owners + Your Signature */
  .owner-brand-luxe-box img,
  .brand-live-visual img{
    width:100% !important;
    height:auto !important;
    aspect-ratio:auto !important;
    object-fit:contain !important;
    object-position:center !important;
  }

}


/* v90 — mobile readability for Mila’s Apartments brand option */
@media(max-width:520px){
  .brand-live-card-two p{
    font-size:var(--fs-small);
    line-height:1.62;
  }
  .brand-live-card-two p + p{
    margin-top:12px;
  }
  .brand-live-card-two p strong{
    font-weight:600;
  }
}


/* v90 journal — Selected by Mila articles */
.journal-module{margin:56px 0 72px;padding-top:40px;border-top:1px solid rgba(18,17,15,.1)}
.journal-module-head{display:grid;grid-template-columns:1.15fr .85fr;gap:50px;align-items:end;margin-bottom:24px}
.journal-module-head h2,.recommendations-subhead h2,.article-related-head h2{font-family:var(--font-display);font-size:var(--fs-section-title);line-height:1.03;margin:8px 0 0;letter-spacing:.005em}
.journal-module-head>p,.recommendations-subhead>p:last-child{margin:0;color:var(--muted);max-width:530px}
.journal-filters{display:flex;gap:9px;flex-wrap:wrap;margin:0 0 24px}
.journal-filter{border:1px solid var(--line);background:#fff;border-radius:999px;padding:10px 15px;font-weight:700;cursor:pointer;color:#514b43;transition:.2s ease}
.journal-filter:hover,.journal-filter.active{background:#17140f;color:#fff;border-color:#17140f}
.journal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.journal-card{display:grid;grid-template-columns:42% 1fr;background:#fff;border:1px solid rgba(18,17,15,.09);border-radius:22px;overflow:hidden;min-height:280px;box-shadow:0 12px 35px rgba(50,30,10,.055);transition:transform .22s ease,box-shadow .22s ease}
.journal-card:hover{transform:translateY(-3px);box-shadow:0 18px 42px rgba(50,30,10,.09)}
.journal-card[hidden]{display:none!important}
.journal-card-media{min-height:100%;overflow:hidden;background:#e8dfd2}
.journal-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.journal-card:hover .journal-card-media img{transform:scale(1.025)}
.journal-card-body{padding:24px 24px 22px;display:flex;flex-direction:column;min-width:0}
.journal-card-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#9a6a24;font-size:var(--fs-caption);font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:12px}
.journal-card h3{font-family:var(--font-display);font-size:var(--fs-card-title-fluid);line-height:1.04;margin:0 0 11px}
.journal-card h3 a:hover{color:#9b6719}
.journal-card p{font-size:var(--fs-small);line-height:1.6;color:var(--muted);margin:0 0 18px}
.journal-card-link{font-size:var(--fs-small);font-weight:700;color:#8e5f1b;margin-top:auto;display:inline-flex;gap:7px;align-items:center}
.recommendations-subhead{margin:72px 0 24px;padding-top:42px;border-top:1px solid rgba(18,17,15,.1)}
.recommendations-subhead h2{font-size:var(--fs-heading-sm-fluid)}
.recommendations-subhead>p:last-child{margin-top:10px}

/* Article pages */
.article-page{background:#fffaf1}
.article-page .site-header{background:rgba(17,16,14,.86)}
.journal-article{overflow:hidden}
.article-hero{padding:138px 0 54px;background:linear-gradient(180deg,#f0e5d4 0%,#fffaf1 86%)}
.article-hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:58px;align-items:center}
.article-hero-copy{min-width:0}
.article-back{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 16px;border:1px solid rgba(173,126,51,.38);border-radius:999px;background:rgba(255,255,255,.78);box-shadow:0 7px 20px rgba(53,37,17,.06);font-size:var(--fs-small);font-weight:700;letter-spacing:.01em;color:#7c5b2f;margin-bottom:28px;transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease}.article-back:hover{background:#fff;border-color:rgba(173,126,51,.7);box-shadow:0 10px 24px rgba(53,37,17,.1);transform:translateY(-1px)}.article-back:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.article-hero h1{font-family:var(--font-display);font-size:var(--fs-page-title);line-height:.98;letter-spacing:-.015em;margin:10px 0 20px;max-width:840px}
.article-meta{display:flex;align-items:center;gap:10px;color:#756d63;font-size:var(--fs-caption);font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.article-meta i{width:4px;height:4px;border-radius:50%;background:var(--gold)}
.article-hero-media{margin:0;border-radius:28px;overflow:hidden;box-shadow:0 24px 60px rgba(50,30,10,.12);aspect-ratio:4/3;background:#e3d6c4}
.article-hero-media img{width:100%;height:100%;object-fit:cover}
.article-content-section{padding:20px 18px 86px}
.article-content{width:min(760px,100%);margin:0 auto;font-size:var(--fs-body-lg);line-height:1.78;color:#37332e}
.article-content>p{margin:0 0 17px}
.article-content h2{font-family:var(--font-display);font-size:var(--fs-heading-sm-fluid);line-height:1.05;color:#17140f;margin:52px 0 18px}
.article-content blockquote{font-family:var(--font-display);font-size:var(--fs-card-title-fluid);line-height:1.25;color:#714816;margin:30px 0;padding:4px 0 4px 24px;border-left:2px solid var(--gold)}
.article-content strong{color:#1f1b16}
.article-cta{margin:42px 0 28px;padding:30px 32px;border-radius:22px;background:#ede1cf;border:1px solid rgba(173,126,51,.15)}
.article-cta p{margin:0 0 18px;color:#423a30}
.article-cta-soft{background:#fff;border-color:rgba(18,17,15,.1)}
.article-cta .btn{width:auto;min-width:0;padding:12px 18px}
.text-link{font-weight:700;color:#8f5e16}
.article-note{margin:30px 0;padding:20px 22px;border-left:3px solid var(--gold);background:#fff7e9;border-radius:0 14px 14px 0;color:#655b50;font-size:var(--fs-small);line-height:1.65}
.article-signature{margin-top:46px;padding-top:28px;border-top:1px solid rgba(18,17,15,.1);display:flex;flex-direction:column;align-items:flex-start}
.article-signature span{font-family:var(--font-script);font-size:var(--fs-heading);color:#a76d17;line-height:1}
.article-signature strong{font-family:var(--font-display);font-size:var(--fs-body-lg);letter-spacing:.04em;color:#453727;margin-top:6px}
.article-related{padding:76px 0 92px;background:#f4ebdd;border-top:1px solid rgba(18,17,15,.06)}
.article-related-head{text-align:center;max-width:720px;margin:0 auto 32px}
.article-related-head h2{font-size:var(--fs-section-title)}
.journal-grid-compact{grid-template-columns:repeat(3,minmax(0,1fr))}
.journal-grid-compact .journal-card{grid-template-columns:1fr;min-height:0}
.journal-grid-compact .journal-card-media{height:190px}
.journal-grid-compact .journal-card-body{padding:20px}
.journal-grid-compact .journal-card h3{font-size:var(--fs-card-title)}
.journal-grid-compact .journal-card p{font-size:var(--fs-small)}

@media(max-width:980px){
  .journal-module-head{grid-template-columns:1fr;gap:14px;align-items:start}
  .article-hero-grid{grid-template-columns:1fr;gap:34px}
  .article-hero-copy{max-width:790px}
  .article-hero-media{max-height:520px;aspect-ratio:16/9}
  .journal-grid-compact{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .journal-grid{grid-template-columns:1fr}
  .journal-card{grid-template-columns:38% 1fr;min-height:240px}
  .journal-module{margin-top:40px;padding-top:32px}
  .recommendations-subhead{margin-top:56px}
}
@media(max-width:620px){
  .recommend-page .recommend-page-section{padding-top:88px}
  .journal-module{margin:34px 0 54px;padding-top:28px}
  .journal-module-head h2{font-size:var(--fs-heading-sm)}
  .journal-module-head>p{font-size:var(--fs-small);line-height:1.6}
  .journal-filters{flex-wrap:nowrap;overflow-x:auto;margin-left:-12px;margin-right:-12px;padding:0 12px 4px;scrollbar-width:none}
  .journal-filters::-webkit-scrollbar{display:none}
  .journal-filter{white-space:nowrap;flex:0 0 auto;padding:9px 14px;font-size:var(--fs-small)}
  .journal-card{grid-template-columns:1fr;min-height:0;border-radius:20px}
  .journal-card-media{height:205px;min-height:0}
  .journal-card-body{padding:20px 19px 21px}
  .journal-card-meta{font-size:var(--fs-micro);margin-bottom:10px}
  .journal-card h3{font-size:var(--fs-card-title)}
  .journal-card p{font-size:var(--fs-small)}
  .recommendations-subhead{margin-top:54px;padding-top:32px}
  .recommendations-subhead h2{font-size:var(--fs-heading-sm)}
  .article-hero{padding:104px 0 34px}
  .article-hero-grid{gap:26px}
  .article-back{margin-bottom:20px;min-height:44px;padding:10px 15px;font-size:var(--fs-small)}
  .article-hero h1{font-size:var(--fs-section-title);line-height:1.01;margin:8px 0 16px}
  .article-meta{font-size:var(--fs-micro);gap:8px;flex-wrap:wrap}
  .article-hero-media{border-radius:20px;aspect-ratio:4/3}
  .article-content-section{padding:10px 16px 64px}
  .article-content{font-size:var(--fs-body);line-height:1.72}
  .article-content>p{margin-bottom:15px}
  .article-content h2{font-size:var(--fs-heading-sm);margin:42px 0 16px}
  .article-content blockquote{font-size:var(--fs-card-title);margin:24px 0;padding-left:18px}
  .article-cta{margin:34px 0 24px;padding:24px 21px}
  .article-cta .btn{width:100%;text-align:center}
  .article-note{margin:26px 0;padding:18px 17px;font-size:var(--fs-small)}
  .article-signature{margin-top:38px}
  .article-related{padding:58px 0 68px}
  .journal-grid-compact{grid-template-columns:1fr}
  .journal-grid-compact .journal-card-media{height:205px}
}

/* v90 journal photography — selected personal images with Mila Stays watermark */
.article-inline-media{
  margin:38px 0 44px;
  border-radius:22px;
  overflow:hidden;
  background:#eadfce;
  box-shadow:0 18px 44px rgba(50,30,10,.09);
}
.article-inline-media img{
  display:block;
  width:100%;
  height:auto;
}
@media (max-width:640px){
  .article-inline-media{
    margin:28px 0 34px;
    border-radius:18px;
  }
}


/* v90 polish — final UX pass before testimonials */
/* 1. Homepage: clearly distinguish guests from owners without changing the approved CTAs. */
.hero-actions .hero-path{display:flex;flex-direction:column;gap:7px;min-width:280px}
.hero-actions .hero-path:first-child{align-items:flex-start;margin-right:auto}
.hero-actions .hero-path:last-child{align-items:flex-end;margin-left:auto}
.hero-path-label{font-size:var(--fs-micro);line-height:1;text-transform:uppercase;letter-spacing:.18em;font-weight:700;color:rgba(255,255,255,.72);padding:0 10px}
.hero-actions .hero-path .btn{min-width:280px!important;margin:0!important}

/* 2. Apartment pages: a small personal Mila note. */
.stay-personal-note{max-width:720px;margin:18px 0 0;padding:15px 18px 15px 20px;border-left:2px solid #b98a3a;background:rgba(255,250,242,.7);border-radius:0 14px 14px 0}
.stay-personal-note span{display:block;margin-bottom:5px;font-size:var(--fs-micro);text-transform:uppercase;letter-spacing:.17em;font-weight:800;color:#a16f28}
.stay-personal-note p{margin:0;font-family:var(--font-display);font-size:var(--fs-subheading);line-height:1.28;color:#5f4527}

/* 3. Stronger final booking action + unobtrusive mobile shortcut. */
.stay-detail-booking{padding-top:4px}
.stay-detail-booking strong{font-size:var(--fs-card-title)}
.stay-detail-booking>p{margin-bottom:16px}
.stay-booking-actions{display:grid;gap:9px;margin-top:16px}
.stay-booking-actions .btn{width:100%;text-align:center}
.mobile-stay-cta{display:none}

/* 6. Help owners recognise themselves before choosing a service. */
.owner-fit-block{margin:34px 0 0;padding:26px 0 4px}
.owner-fit-block>h3{margin:0 0 18px;text-align:center;font-family:var(--font-display);font-size:var(--fs-card-title);line-height:1.1;color:#34291e}
.owner-fit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.owner-fit-grid article{display:grid;grid-template-columns:38px 1fr;gap:12px;align-items:start;padding:18px 16px;border-radius:18px;background:rgba(255,250,242,.72);border:1px solid rgba(130,91,38,.11)}
.owner-fit-grid span{display:flex;width:34px;height:34px;align-items:center;justify-content:center;border-radius:50%;background:#f0e3ce;color:#8b5d22;font-family:var(--font-display);font-weight:700}
.owner-fit-grid p{margin:2px 0 0;color:#665e55;font-size:var(--fs-small);line-height:1.55}

/* 7. Give the boutique promise more air and make it feel like a personal signature. */
.owner-boutique-note-featured{position:relative;margin-top:42px!important;margin-bottom:8px!important;padding:34px 38px 32px!important;border-top:0!important;border-bottom:0!important;border-radius:24px;background:linear-gradient(135deg,#f6ead7,#fffaf2);box-shadow:0 14px 38px rgba(72,47,19,.06)}
.owner-boutique-note-featured::before{content:"✦";display:block;margin:0 auto 13px;color:#b58235;font-size:var(--fs-body)}
.owner-boutique-note-featured p{max-width:780px;margin:0 auto!important}

/* 4. Stronger separation between the journal and Mila's recommendation categories. */
.recommend-page .journal-module{margin-top:34px;padding-top:0;border-top:0}
.recommend-page .recommendations-subhead{margin-top:82px;padding:46px 34px 0;border-top:1px solid rgba(18,17,15,.1);text-align:center}
.recommend-page .recommendations-subhead>p:last-child{max-width:760px;margin:12px auto 0;line-height:1.65}
.recommend-page .tabs{justify-content:center;margin-top:26px}

/* 9. Final mobile readability pass. */
@media(max-width:900px){
  .owner-fit-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
  .hero-actions{grid-template-columns:1fr 1fr!important;gap:10px!important;align-items:end!important}
  .hero-actions .hero-path{min-width:0;width:100%;gap:5px}
  .hero-actions .hero-path:first-child,.hero-actions .hero-path:last-child{align-items:stretch;margin:0}
  .hero-path-label{text-align:center;font-size:var(--fs-micro);padding:0 2px}
  .hero-actions .hero-path .btn{min-width:0!important;width:100%!important}

  .stay-personal-note{margin-top:15px;padding:13px 15px 13px 17px}
  .stay-personal-note p{font-size:var(--fs-lead)}
  .stay-booking-actions{gap:8px}
  .stay-detail-page{padding-bottom:74px}
  .mobile-stay-cta{position:fixed;left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:26;min-height:50px;display:flex;align-items:center;justify-content:center;border-radius:999px;background:#d7a85a;color:#17130e;font-size:var(--fs-small);font-weight:800;box-shadow:0 12px 30px rgba(35,25,12,.22);opacity:0;pointer-events:none;transform:translateY(12px);transition:opacity .18s ease,transform .18s ease}
  .mobile-stay-cta.visible{opacity:1;pointer-events:auto;transform:translateY(0)}
  .stay-detail-page .back-to-top{bottom:calc(74px + env(safe-area-inset-bottom))!important}

  .owner-boutique-note-featured{margin-top:30px!important;padding:26px 18px 24px!important;border-radius:20px}
  .owner-boutique-note-featured p{font-size:var(--fs-subheading) !important;line-height:1.28!important}
  .owner-fit-block{margin-top:25px;padding-top:18px}
  .owner-fit-block>h3{font-size:var(--fs-card-title);margin-bottom:14px}
  .owner-fit-grid article{padding:16px 14px}

  .recommend-page .recommendations-subhead{margin-top:58px;padding:34px 0 0}
  .recommend-page .recommendations-subhead h2{font-size:var(--fs-heading-sm);line-height:1.04}
  .recommend-page .tabs{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;margin-left:-12px;margin-right:-12px;padding:0 12px 6px;scrollbar-width:none}
  .recommend-page .tabs::-webkit-scrollbar{display:none}
  .recommend-page .tab{white-space:nowrap;flex:0 0 auto}

  /* Show the whole hero photograph in articles on phones; cards may still crop as thumbnails. */
  .article-hero-media{aspect-ratio:auto;max-height:none;background:#eadfce}
  .article-hero-media img{width:100%;height:auto;object-fit:contain}
}


/* v90 polish — guest reviews */
.guest-reviews{background:linear-gradient(180deg,#fffaf2 0%,#f7ecdc 100%)}
.guest-reviews-head{align-items:end}
.guest-reviews-head>p{max-width:460px}
.guest-review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:34px}
.guest-review-card{display:flex;flex-direction:column;min-height:100%;padding:28px 26px 24px;border:1px solid rgba(127,88,35,.12);border-radius:24px;background:rgba(255,255,255,.78);box-shadow:0 16px 42px rgba(64,42,15,.06)}
.guest-review-meta{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:20px}
.guest-review-meta strong{font-family:var(--font-display);font-size:var(--fs-subheading);line-height:1;color:#a8762f;letter-spacing:.02em}
.guest-review-meta span{font-size:var(--fs-caption);line-height:1.3;text-align:right;text-transform:uppercase;letter-spacing:.08em;color:#85786a}
.guest-review-card blockquote{margin:0;flex:1;font-family:var(--font-display);font-size:var(--fs-subheading);line-height:1.38;color:#3f3327}
.guest-review-footer{margin-top:24px;padding-top:18px;border-top:1px solid rgba(93,65,31,.12)}
.guest-review-footer>span{display:block;margin-bottom:9px;font-size:var(--fs-caption);font-weight:800;color:#4f453a}
.guest-review-footer a{display:inline-flex;align-items:center;gap:5px;font-size:var(--fs-caption);font-weight:800;color:#986a2d;text-decoration:none}
.guest-review-footer a:hover{text-decoration:underline;text-underline-offset:3px}
.guest-review-footer b{font-size:var(--fs-small)}
@media(max-width:900px){
  .guest-review-grid{grid-template-columns:1fr;gap:14px}
  .guest-review-card{min-height:0}
}
@media(max-width:620px){
  .guest-reviews-head{display:block}
  .guest-reviews-head>p{margin-top:10px}
  .guest-review-grid{margin-top:24px}
  .guest-review-card{padding:22px 18px 20px;border-radius:20px}
  .guest-review-card blockquote{font-size:var(--fs-subheading);line-height:1.4}
  .guest-review-meta{align-items:flex-start;margin-bottom:16px}
  .guest-review-meta strong{font-size:var(--fs-subheading)}
  .guest-review-meta span{font-size:var(--fs-micro);max-width:145px}
  .guest-review-footer{margin-top:20px;padding-top:15px}
  .guest-review-footer a{font-size:var(--fs-caption);line-height:1.35}
}


/* v90 final correction — homepage owners section restored + clearer review source links */
.guest-review-footer{display:flex;flex-direction:column;align-items:flex-start;gap:0}
.guest-review-footer>span{margin-bottom:0}
.guest-review-footer .review-source-link{margin-top:14px;padding:8px 12px;border-radius:999px;border:1px solid transparent;text-decoration:none;line-height:1.25;transition:background .2s ease,border-color .2s ease,transform .2s ease}
.guest-review-footer .review-source-link:hover{transform:translateY(-1px);text-decoration:none}
.guest-review-footer .booking-review-link{color:#0757a3;background:#eef6ff;border-color:rgba(7,87,163,.18)}
.guest-review-footer .booking-review-link:hover{background:#e2f0ff;border-color:rgba(7,87,163,.32)}
.guest-review-footer .airbnb-review-link{color:#986a2d;background:rgba(185,138,58,.08);border-color:rgba(185,138,58,.16)}
.guest-review-footer .airbnb-review-link:hover{background:rgba(185,138,58,.14);border-color:rgba(185,138,58,.28)}
@media(max-width:620px){
  .guest-review-footer .review-source-link{margin-top:13px;padding:9px 12px;white-space:normal}
}


/* v90 polish v3 — clearer review footer spacing */
.guest-review-footer{display:block !important;margin-top:28px;padding-top:20px}
.guest-review-person{display:block;font-size:var(--fs-small);font-weight:800;line-height:1.45;color:#4f453a}
.guest-review-action{display:block;margin-top:18px}
.guest-review-action .review-source-link{display:inline-flex;align-items:center;gap:7px;margin-top:0 !important;padding:10px 14px;border-radius:999px;line-height:1.3}
@media(max-width:620px){
  .guest-review-footer{margin-top:24px;padding-top:18px}
  .guest-review-person{font-size:var(--fs-small);line-height:1.5}
  .guest-review-action{margin-top:16px}
  .guest-review-action .review-source-link{display:inline-flex;max-width:100%;padding:10px 13px;white-space:normal}
}

/* v4 — clearer guest-review footer and platform links */
.guest-review-footer{
  display:block !important;
  margin-top:30px !important;
  padding-top:20px !important;
  border-top:1px solid rgba(93,65,31,.12);
}
.guest-review-person{
  display:block;
  margin:0 0 20px 0;
  font-size:var(--fs-small);
  font-weight:800;
  line-height:1.55;
  color:#4f453a;
}
.guest-review-action{
  display:block;
  margin:0;
  padding:0;
}
.guest-review-action .review-source-link{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:44px;
  margin:0 !important;
  padding:11px 17px !important;
  border:1px solid transparent;
  border-radius:12px !important;
  font-size:var(--fs-caption);
  font-weight:800;
  line-height:1.35;
  letter-spacing:.01em;
  text-decoration:none !important;
  box-shadow:0 8px 22px rgba(45,34,22,.06);
  transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease;
}
.guest-review-action .review-source-link:hover{
  transform:translateY(-1px);
  box-shadow:0 10px 24px rgba(45,34,22,.10);
  text-decoration:none !important;
}
.guest-review-action .booking-review-link{
  color:#fff !important;
  background:#0757a3 !important;
  border-color:#0757a3 !important;
}
.guest-review-action .booking-review-link:hover{
  background:#064b8d !important;
  border-color:#064b8d !important;
}
.guest-review-action .airbnb-review-link{
  color:#5e4322 !important;
  background:#f1dfbd !important;
  border-color:#dfc18a !important;
}
.guest-review-action .airbnb-review-link:hover{
  background:#ead3a8 !important;
  border-color:#d6b576 !important;
}
.guest-review-action .review-source-link b{
  flex:0 0 auto;
  font-size:var(--fs-small);
  line-height:1;
}
@media(max-width:640px){
  .guest-review-card{padding:24px 20px 22px !important;}
  .guest-review-card blockquote{margin-bottom:2px;}
  .guest-review-footer{
    margin-top:28px !important;
    padding-top:20px !important;
  }
  .guest-review-person{
    margin-bottom:18px;
    font-size:var(--fs-small);
    line-height:1.6;
  }
  .guest-review-action .review-source-link{
    width:100%;
    max-width:100%;
    min-height:46px;
    padding:12px 14px !important;
    white-space:normal;
    text-align:center;
  }
}


/* v16 — PageSpeed accessibility polish: stronger small-text contrast without changing the boutique palette. */
:root{--gold-text:#8a5e1e}
.eyebrow,.location{color:var(--gold-text)}
.stay-personal-note span{color:#87591b}
.guest-review-meta strong{color:#805516}
.guest-review-meta span{color:#665d53}
.hero-path-label{color:rgba(255,255,255,.92)}
.hero-trust{color:rgba(255,255,255,.90)}
.site-header .brand-stack small{color:rgba(255,255,255,.90)}
.service-list p{color:rgba(255,255,255,.78)}
.footer-grid{color:rgba(255,255,255,.78)}
/* v17 — Accessibility: stronger contrast in Contacts (BG/EN, mobile/desktop) */
.contact-card .eyebrow{
  color:#76531c;
}
.contact-card .contact-links small{
  color:#5f574d;
}

/* v18 — contextual internal links and lightweight homepage journal cluster */
.owner-story-link{
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin-top:15px;
  color:#8f5e16;
  font-size:var(--fs-small);
  font-weight:700;
  line-height:1.45;
}
.owner-story-link:hover,.brand-live-story-link:hover{color:#6f4510}
.owner-brand-story-link{margin-top:-7px;text-align:center}
.brand-live-bottom-copy{max-width:620px}
.brand-live-story-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:11px;
  color:#8f5e16;
  font-size:var(--fs-small);
  font-weight:700;
  line-height:1.5;
}
.journal-grid-related-two{grid-template-columns:repeat(2,minmax(0,1fr));max-width:920px;margin-inline:auto}
.home-journal-teaser{background:#f4ebdd;border-top:1px solid rgba(18,17,15,.06);border-bottom:1px solid rgba(18,17,15,.06)}
.home-journal-head{max-width:820px;margin:0 auto 28px;text-align:center}
.home-journal-head h2{font-family:var(--font-display);font-size:var(--fs-section-title);line-height:1.05;margin:8px 0 0}
.home-journal-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:1040px;margin:0 auto}
.home-journal-links a{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;padding:20px 21px;border:1px solid rgba(18,17,15,.09);border-radius:18px;background:rgba(255,255,255,.72);box-shadow:0 10px 28px rgba(50,30,10,.045);transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.home-journal-links a:hover{transform:translateY(-2px);background:#fff;box-shadow:0 15px 34px rgba(50,30,10,.075)}
.home-journal-links span{color:#a87325;font-size:var(--fs-caption);font-weight:700;letter-spacing:.08em}
.home-journal-links strong{font-family:var(--font-display);font-size:var(--fs-subheading);line-height:1.05;font-weight:600}
.home-journal-links b{color:#9a681c;font-size:var(--fs-body-lg);font-weight:500}
@media(max-width:900px){.home-journal-links{grid-template-columns:1fr}.home-journal-links a{padding:18px 20px}}
@media(max-width:620px){.home-journal-teaser{padding-top:58px;padding-bottom:58px}.home-journal-head{margin-bottom:22px}.home-journal-head h2{font-size:var(--fs-heading-sm)}.home-journal-links strong{font-size:var(--fs-subheading)}.journal-grid-related-two{grid-template-columns:1fr}}

/* v19 — Accessibility: contrast in homepage “Selected by Mila” teaser */
.home-journal-head .eyebrow,
.home-journal-links span,
.home-journal-links b{
  color:#76531c;
}

/* v20 — Accessibility + cache-busted contrast for homepage journal teaser */
.home-journal-teaser .home-journal-head .eyebrow{
  color:#684513;
}
.home-journal-teaser .home-journal-links a{
  color:#12110f;
}
.home-journal-teaser .home-journal-links a span,
.home-journal-teaser .home-journal-links a b{
  color:#684513;
}

/* v37 — owner service packages and pricing */
.owner-service-plans{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.owner-service-plan{position:relative;display:flex;flex-direction:column;align-items:flex-start;min-height:300px}
.owner-service-plan .owner-plan-label{margin:0 0 6px;color:#8b5c20;font-family:var(--font-body);font-size:var(--fs-caption);font-weight:700;letter-spacing:.11em;text-transform:uppercase}
.owner-service-plan h3{font-size:var(--fs-heading-sm);margin:6px 0 14px}
.owner-service-plan .owner-story-link{margin-top:auto;padding-top:16px}
.owner-service-plan-featured{background:#f4e8d4!important;border-color:rgba(139,92,32,.34)!important;box-shadow:0 18px 44px rgba(76,53,27,.08)}
.owner-plan-badge{display:inline-block!important;margin:0 0 13px!important;padding:6px 10px;border-radius:999px;background:#15130f;color:#d7a85a!important;font-size:var(--fs-micro) !important;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.owner-package-details{display:grid;gap:26px;margin-top:70px}
.owner-package-detail{scroll-margin-top:100px;padding:36px;border:1px solid rgba(130,91,38,.14);border-radius:26px;background:#fffaf2}
.owner-package-detail-featured{background:#f4e8d4;border-color:rgba(139,92,32,.34)}
.owner-package-detail-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:start;margin-bottom:18px}
.owner-package-detail-head h3{font-family:var(--font-display);font-size:var(--fs-heading-sm-fluid);line-height:1.02;margin:8px 0 0}
.owner-package-detail>p,.owner-experience-block p,.owner-comparison-highlight p{color:#6d645b;line-height:1.7}
.owner-package-detail h4{font-family:var(--font-display);font-size:var(--fs-card-title);margin:28px 0 14px;color:#47351f}
.owner-package-price{margin:0!important;text-align:right;font-family:var(--font-display);font-size:var(--fs-heading-sm) !important;font-weight:700!important;line-height:1;color:#7b501c!important;white-space:nowrap}
.owner-package-price span{display:block;margin-top:6px;font-family:var(--font-body);font-size:var(--fs-caption);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#786b5b}
.owner-package-list{columns:2;column-gap:42px;margin:0;padding:0;list-style:none}
.owner-package-list li{break-inside:avoid;position:relative;padding:7px 0 7px 20px;color:#5f584f;line-height:1.55}
.owner-package-list li::before{content:"✦";position:absolute;left:0;top:8px;color:#aa7736;font-size:var(--fs-micro)}
.owner-package-list-compact{columns:1}
.owner-package-note,.owner-package-legal{margin-top:24px;padding:16px 18px;border-radius:16px;background:rgba(255,255,255,.62)}
.owner-package-legal{font-size:var(--fs-caption) !important;color:#776e64!important}
.owner-package-highlight{margin:24px 0;padding:18px 20px;border-left:3px solid #a57431;background:rgba(255,255,255,.58);color:#49351d!important}
.owner-experience-block{margin-top:30px;padding:26px;border-radius:20px;background:rgba(255,255,255,.68);border:1px solid rgba(139,92,32,.15)}
.owner-experience-block h4{margin-top:0}
.owner-package-links{display:flex;flex-wrap:wrap;gap:18px 28px;margin-top:24px}
.owner-comparison{scroll-margin-top:100px;margin-top:76px;padding-top:66px;border-top:1px solid rgba(93,69,37,.16)}
.owner-comparison-table-wrap{margin-top:34px;overflow-x:auto;border:1px solid rgba(93,69,37,.14);border-radius:22px;background:#fff}
.owner-comparison-table{width:100%;min-width:950px;border-collapse:collapse;font-size:var(--fs-caption);line-height:1.45}
.owner-comparison-table th,.owner-comparison-table td{padding:15px 13px;border-bottom:1px solid rgba(93,69,37,.11);border-right:1px solid rgba(93,69,37,.08);vertical-align:top;text-align:left}
.owner-comparison-table thead th{background:#171511;color:#fff;font-family:var(--font-body);font-size:var(--fs-caption);letter-spacing:.025em}
.owner-comparison-table tbody th{width:20%;color:#4f4438;background:#fffaf2;font-weight:700}
.owner-comparison-table .is-featured{background:#f4e8d4;color:#4b351c}
.owner-comparison-table thead .is-featured{background:#8b5c20;color:#fff}
.owner-comparison-table tr:last-child th,.owner-comparison-table tr:last-child td{border-bottom:0}
.owner-comparison-highlight{margin-top:28px;padding:26px 28px;border-radius:22px;background:#171511;color:#fff}
.owner-comparison-highlight h3{margin:0 0 12px;font-family:var(--font-display);font-size:var(--fs-card-title);color:#fff}
.owner-comparison-highlight p{color:rgba(255,255,255,.76)}
.owner-comparison-highlight strong{color:#fff}
.owner-comparison-mobile{display:none}
@media(max-width:900px){
  .owner-service-plans{grid-template-columns:1fr 1fr}
  .owner-package-list{columns:1}
  .owner-package-detail{padding:28px}
}
@media(max-width:720px){
  .owner-service-plans{grid-template-columns:1fr}
  .owner-package-detail{padding:23px 19px;border-radius:20px}
  .owner-package-detail-head{grid-template-columns:1fr;gap:13px}
  .owner-package-price{text-align:left;font-size:var(--fs-heading-sm) !important}
  .owner-package-price span{display:inline;margin-left:5px}
  .owner-package-links{flex-direction:column;gap:10px}
  .owner-comparison-table-wrap{display:none}
  .owner-comparison-mobile{display:grid;gap:12px;margin-top:28px}
  .owner-comparison-mobile article{padding:20px;border-radius:18px;background:#fffaf2;border:1px solid rgba(130,91,38,.14)}
  .owner-comparison-mobile article.is-featured{background:#f4e8d4;border-color:rgba(139,92,32,.34)}
  .owner-comparison-mobile h3{margin:0 0 8px;font-family:var(--font-display);font-size:var(--fs-card-title)}
  .owner-comparison-mobile p{margin:0;color:#6d645b;line-height:1.6;font-size:var(--fs-small)}
  .owner-comparison-highlight{padding:22px 20px}
}


/* v39 — owner package reveal: details appear only after “See what’s included” */
.owner-plan-toggle{
  appearance:none;
  border:0;
  background:transparent;
  padding-left:0;
  padding-right:0;
  font:inherit;
  text-align:left;
  cursor:pointer;
}
.owner-plan-toggle:focus-visible{outline:2px solid #8b5c20;outline-offset:4px;border-radius:4px}
.owner-plan-toggle-arrow{display:inline-block;transition:transform .18s ease}
.owner-plan-toggle[aria-expanded="true"] .owner-plan-toggle-arrow{transform:rotate(180deg)}
.owner-package-details-collapsible{margin-top:34px}
.owner-package-details-collapsible[hidden]{display:none!important}
.owner-package-details-collapsible .owner-package-detail[hidden]{display:none!important}
@media(prefers-reduced-motion:reduce){.owner-plan-toggle-arrow{transition:none}}


/* v40 — owner package readability, spacing and end-of-panel close action */
.owner-package-details-collapsible{margin-top:52px}
.owner-package-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 46px;margin-top:32px}
.owner-package-group{min-width:0;padding-top:18px;border-top:1px solid rgba(93,69,37,.14)}
.owner-package-group h4{margin:0 0 10px;font-size:var(--fs-subheading)}
.owner-package-group .owner-package-list{columns:1}
.owner-package-close{
  appearance:none;
  border:0;
  background:transparent;
  padding:0;
  margin-top:34px;
  font:inherit;
  cursor:pointer;
}
.owner-package-close:focus-visible{outline:2px solid #8b5c20;outline-offset:4px;border-radius:4px}
@media(max-width:720px){
  .owner-package-details-collapsible{margin-top:40px}
  .owner-package-groups{grid-template-columns:1fr;gap:22px;margin-top:28px}
  .owner-package-group{padding-top:16px}
  .owner-package-group h4{font-size:var(--fs-subheading)}
  .owner-package-close{margin-top:30px}
}


/* v40 — final owner package spacing + four-service homepage alignment */
.owner-package-detail{scroll-margin-top:128px}
.owner-package-details-collapsible:not([hidden]){padding-top:4px}
@media(min-width:901px){
  .owner-package-details-collapsible{margin-top:58px}
  .owner-package-detail{padding:42px 44px}
  .owner-package-groups{gap:34px 54px}
}
@media(max-width:720px){
  .owner-package-detail{scroll-margin-top:92px}
}


/* v40 final — subtle premium emphasis, clearer comparison and owner package polish */
.owner-service-plan-featured{
  background:linear-gradient(180deg,#f8eddd 0%,#f4e8d4 100%)!important;
  border-color:rgba(185,138,58,.48)!important;
  box-shadow:0 20px 48px rgba(76,53,27,.10),inset 0 3px 0 rgba(185,138,58,.34);
}
.owner-service-plan-featured h3{color:#754b19}
.owner-plan-badge{
  display:flex!important;
  align-items:center;
  gap:8px;
  margin:0 0 13px!important;
  padding:0!important;
  border-radius:0;
  background:transparent!important;
  color:var(--gold)!important;
  font-size:var(--fs-caption) !important;
  font-weight:800;
  letter-spacing:.10em;
  text-transform:uppercase;
}
.owner-plan-badge::before,.owner-plan-badge::after{content:"✦";font-size:var(--fs-micro);color:var(--gold)}
.owner-package-detail-featured{box-shadow:inset 0 3px 0 rgba(185,138,58,.30)}

.mila-stays-accent{color:var(--gold);font-weight:700}
.owner-comparison-featured-label{
  display:block;
  margin:0 0 7px;
  color:var(--gold2);
  font-size:var(--fs-micro);
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  line-height:1.3;
}
.owner-comparison-table .is-featured{
  background:#f8eddd;
  color:#4b351c;
  box-shadow:inset 2px 0 0 rgba(185,138,58,.24),inset -2px 0 0 rgba(185,138,58,.24);
}
.owner-comparison-table thead .is-featured{
  background:#76501f;
  color:#fff;
  box-shadow:inset 2px 0 0 rgba(217,179,111,.55),inset -2px 0 0 rgba(217,179,111,.55),inset 0 3px 0 rgba(217,179,111,.72);
}
.owner-comparison-table thead .is-featured .owner-comparison-featured-label{color:#f1d49b}
.owner-comparison-table tbody tr:hover td,.owner-comparison-table tbody tr:hover th{background-color:#fff7ea}
.owner-comparison-table tbody tr:hover td.is-featured{background-color:#f4e4ca}
.owner-comparison-mobile article.is-featured{
  background:linear-gradient(180deg,#f8eddd 0%,#f4e8d4 100%);
  border-color:rgba(185,138,58,.48);
  box-shadow:inset 0 3px 0 rgba(185,138,58,.30);
}
.owner-comparison-mobile article.is-featured .owner-comparison-featured-label{color:#8a5e1e}

@media(min-width:901px){
  .owner-comparison-table{font-size:var(--fs-small);line-height:1.5;min-width:1040px}
  .owner-comparison-table th,.owner-comparison-table td{padding:17px 15px}
  .owner-comparison-table thead th{font-size:var(--fs-caption);line-height:1.45}
  .owner-package-detail{padding:44px 46px}
  .owner-package-detail>p{max-width:980px}
  .owner-package-close{margin-top:38px}
}


/* v41 — softer boutique badge + reliable owner package mobile reveal offset */
.owner-plan-badge{
  background:rgba(185,138,58,.09)!important;
  color:#8a5e1e!important;
  border:1px solid rgba(185,138,58,.28);
  box-shadow:none!important;
  padding:5px 11px!important;
}
.owner-plan-badge::before,.owner-plan-badge::after{
  color:#b98a3a;
  opacity:.88;
}
@media(max-width:720px){
  .owner-package-details-collapsible{margin-top:44px}
  .owner-package-details-collapsible:not([hidden]){padding-top:10px}
  .owner-package-detail{scroll-margin-top:118px}
}


/* v41 final — mobile/tablet comparison slider + premium badge + fixed-header reveal */
.owner-plan-badge{
  text-transform:none!important;
  letter-spacing:.045em!important;
  font-size:var(--fs-caption) !important;
  color:#9b681e!important;
  background:rgba(185,138,58,.08)!important;
  border:1px solid rgba(185,138,58,.24)!important;
  border-radius:999px!important;
  padding:6px 12px!important;
}
.owner-comparison-slider{display:none}
.owner-comparison-slider-controls{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin:0 2px 12px}
.owner-comparison-nav{appearance:none;width:44px;height:44px;border-radius:50%;border:1px solid rgba(130,91,38,.2);background:#fffaf2;color:#76501f;font:700 20px/1 "DM Sans",sans-serif;cursor:pointer}
.owner-comparison-nav:disabled{opacity:.28;cursor:default}
.owner-comparison-nav:focus-visible,.owner-comparison-dot:focus-visible{outline:2px solid #8b5c20;outline-offset:3px}
.owner-comparison-counter{min-width:52px;text-align:center;color:#7b6a58;font:700 12px/1 "DM Sans",sans-serif;letter-spacing:.06em}
.owner-comparison-track{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:2px;padding:2px 2px 12px;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;scrollbar-width:none}
.owner-comparison-track::-webkit-scrollbar{display:none}
.owner-comparison-slide{flex:0 0 min(88%,460px);scroll-snap-align:start;scroll-snap-stop:always;min-width:0;padding:24px 21px;border-radius:20px;background:#fffaf2;border:1px solid rgba(130,91,38,.14)}
.owner-comparison-slide.is-featured{background:linear-gradient(180deg,#fbf2e5 0%,#f5e7d1 100%);border-color:rgba(185,138,58,.42);box-shadow:inset 0 3px 0 rgba(185,138,58,.26)}
.owner-comparison-slide-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:20px;padding-bottom:17px;border-bottom:1px solid rgba(93,69,37,.13)}
.owner-comparison-slide h3{margin:0;font-family:var(--font-display);font-size:var(--fs-card-title);line-height:1.02;color:#241f19}
.owner-comparison-slide-price{margin:0!important;flex:0 0 auto;color:#8b5c20!important;font-family:var(--font-display)!important;font-size:var(--fs-subheading) !important;font-weight:700!important;line-height:1!important;text-align:right}
.owner-comparison-slide-list{margin:0}
.owner-comparison-slide-row{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:14px;padding:11px 0;border-bottom:1px solid rgba(93,69,37,.10)}
.owner-comparison-slide-row:last-child{border-bottom:0;padding-bottom:0}
.owner-comparison-slide-row dt,.owner-comparison-slide-row dd{margin:0;min-width:0;overflow-wrap:anywhere}
.owner-comparison-slide-row dt{color:#5c4e3d;font:700 11.5px/1.45 "DM Sans",sans-serif}
.owner-comparison-slide-row dd{color:#70665b;font:400 12px/1.5 "DM Sans",sans-serif}
.owner-comparison-dots{display:flex;justify-content:center;align-items:center;gap:5px;margin-top:4px}
.owner-comparison-dot{appearance:none;border:0;background:transparent;color:#c6b6a1;padding:8px 5px;font-size:var(--fs-subheading);line-height:1;cursor:pointer}
.owner-comparison-dot.is-active{color:#9b681e}

@media(max-width:900px){
  .owner-comparison-table-wrap{display:none!important}
  .owner-comparison-mobile{display:block!important;margin-top:28px}
  .owner-comparison-mobile>article{display:none!important}
  .owner-comparison-slider .owner-comparison-slide{display:block!important}
  .owner-package-detail{scroll-margin-top:156px}
  .owner-comparison-highlight{margin-top:30px}
}
@media(min-width:721px) and (max-width:900px){
  .owner-comparison-slide{flex-basis:min(72%,560px);padding:28px 26px}
}
@media(max-width:520px){
  .owner-comparison-slide{flex-basis:91%;padding:22px 18px}
  .owner-comparison-slide-head{align-items:flex-start;flex-direction:column;gap:7px}
  .owner-comparison-slide-price{text-align:left}
  .owner-comparison-slide-row{grid-template-columns:1fr;gap:4px;padding:10px 0}
  .owner-comparison-slide-row dt{font-size:var(--fs-caption)}
  .owner-comparison-slide-row dd{font-size:var(--fs-caption)}
}
@media(min-width:901px){
  .owner-comparison-slider{display:none!important}
  .owner-comparison-table-wrap{display:block}
}


/* v43 draft — owner choice article bridge */
.owner-plan-guide-link{display:inline-flex;align-items:center;gap:6px;margin-top:9px;color:#8a5e1e;font:700 12px/1.4 "DM Sans",sans-serif;text-decoration:none;border-bottom:1px solid rgba(155,104,30,.28);padding-bottom:2px}
.owner-plan-guide-link:hover{color:#684513;border-color:#684513}
.owner-choice-bridge{padding-top:18px;padding-bottom:72px}
.owner-choice-card{max-width:1050px;padding:42px 46px;border:1px solid rgba(185,138,58,.28);border-radius:28px;background:linear-gradient(135deg,#fffaf2 0%,#f7ead7 100%);box-shadow:0 18px 44px rgba(76,53,27,.07)}
.owner-choice-card h2{margin:7px 0 20px;font-family:var(--font-display);font-size:var(--fs-heading-sm-fluid);line-height:1.05;color:#2d241a}
.owner-choice-card>p:not(.eyebrow){max-width:920px;color:#665c51;line-height:1.72}
.owner-choice-key{margin:22px 0 18px!important;padding-left:18px;border-left:2px solid #b98a3a;color:#4e3a22!important;font-weight:700}
.owner-choice-link{display:inline-flex;margin-top:8px}
@media(max-width:720px){.owner-choice-bridge{padding-top:8px;padding-bottom:54px}.owner-choice-card{padding:28px 22px;border-radius:22px}.owner-choice-card h2{font-size:var(--fs-heading-sm)}.owner-plan-guide-link{font-size:var(--fs-caption)}}


/* v43 final — owner guide + recommendation accordions */
.owner-service-plan .owner-plan-guide-link{margin-top:10px}
.events-group-title{margin:34px 0 15px;font-family:var(--font-display);font-size:var(--fs-card-title);line-height:1.1;color:#3c3024}
.events-group-title:first-of-type{margin-top:24px}
.tab[aria-expanded="true"]{background:#171511;color:#fff;border-color:#171511}
.tab-panel[hidden]{display:none!important}
@media(max-width:640px){.events-group-title{font-size:var(--fs-card-title);margin-top:30px}.owner-choice-card{padding:26px 20px}}


/* v59 — owner service card actions: aligned, separated and visually consistent */
.owner-service-plan .owner-plan-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  width:100%;
  margin-top:auto;
  padding-top:22px;
}
.owner-service-plan .owner-plan-actions .owner-story-link,
.owner-service-plan .owner-plan-actions .owner-plan-guide-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:38px;
  margin:0;
  padding:9px 13px;
  border:1px solid rgba(143,94,22,.28);
  border-radius:999px;
  background:rgba(255,255,255,.5);
  color:#80551b;
  font:700 12px/1.35 "DM Sans",sans-serif;
  text-decoration:none;
  white-space:nowrap;
  transition:background-color .18s ease,border-color .18s ease,color .18s ease;
}
.owner-service-plan .owner-plan-actions .owner-story-link{
  padding-top:9px;
}
.owner-service-plan .owner-plan-actions .owner-story-link:hover,
.owner-service-plan .owner-plan-actions .owner-plan-guide-link:hover{
  background:#fffaf2;
  border-color:rgba(111,69,16,.52);
  color:#6f4510;
}
.owner-service-plan .owner-plan-actions .owner-plan-guide-link{
  margin-left:auto;
}
@media(max-width:560px){
  .owner-service-plan .owner-plan-actions{
    flex-direction:column;
    align-items:stretch;
    gap:10px;
    padding-top:20px;
  }
  .owner-service-plan .owner-plan-actions .owner-story-link,
  .owner-service-plan .owner-plan-actions .owner-plan-guide-link{
    width:100%;
    white-space:normal;
    text-align:center;
  }
  .owner-service-plan .owner-plan-actions .owner-plan-guide-link{
    margin-left:0;
  }
}
@media(prefers-reduced-motion:reduce){
  .owner-service-plan .owner-plan-actions .owner-story-link,
  .owner-service-plan .owner-plan-actions .owner-plan-guide-link{
    transition:none;
  }
}


/* v60 — subtle Mila Stays signature treatment in personal editorial copy */
.article-content .mila-signature{
  display:inline-block;
  font-family:var(--font-script);
  font-size:1em;
  font-weight:400;
  font-style:normal;
  line-height:1;
  letter-spacing:.01em;
  color:#8f611d;
  white-space:nowrap;
}
.article-content h2 .mila-signature{
  font-size:1em;
}
.article-signature .mila-signature{
  font-size:1em;
}


/* v62 — mobile-only apartment thumbnails 5+5 and wrapped recommendation controls */
@media(max-width:600px){
  /* Home apartment galleries: show all 10 thumbnails in two rows of five. */
  .apartment-grid .gallery-thumbs{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:6px;
    overflow:visible;
    scroll-snap-type:none;
    padding:8px;
  }
  .apartment-grid .gallery-thumb{
    width:100%;
    height:auto;
    aspect-ratio:1.15/1;
    min-width:0;
    flex:none;
  }

  /* “Selected by Mila” categories: no sideways scrolling on phones. */
  .recommend-page .tabs{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px;
    overflow:visible;
    margin-left:0;
    margin-right:0;
    padding:0;
  }
  .recommend-page .tab{
    width:100%;
    min-width:0;
    white-space:normal;
    line-height:1.25;
    padding:10px 9px;
    text-align:center;
  }
  .recommend-page .tab:last-child{
    grid-column:1 / -1;
    width:calc(50% - 4.5px);
    justify-self:center;
  }
}
@media(max-width:360px){
  .recommend-page .tabs{
    grid-template-columns:1fr;
  }
  .recommend-page .tab:last-child{
    grid-column:auto;
    width:100%;
  }
}


/* v64 — discreet return link for long Events section */
#events-start{
  scroll-margin-top:96px;
}
.events-back{
  display:flex;
  justify-content:flex-end;
  margin:16px 0 4px;
}
.events-back-link{
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:#80551b;
  font:700 12px/1.35 "DM Sans",sans-serif;
  text-decoration:none;
  letter-spacing:.01em;
  padding:7px 10px;
  border-radius:999px;
  border:1px solid rgba(143,94,22,.22);
  background:rgba(255,255,255,.42);
}
.events-back-link:hover{
  color:#6f4510;
  border-color:rgba(111,69,16,.45);
  background:#fffaf2;
}
@media(max-width:620px){
  .events-back{
    justify-content:center;
    margin:14px 0 8px;
  }
  .events-back-link{
    min-height:38px;
    justify-content:center;
  }
}


/* v66 — expanded Boutique Brand editorial content */
.brand-editorial,
.brand-memory{
  position:relative;
  z-index:1;
}
.brand-editorial{
  margin-top:24px;
}
.brand-editorial-lead,
.brand-editorial-panel,
.brand-memory{
  border:1px solid rgba(181,126,42,.14);
  box-shadow:0 18px 42px rgba(97,63,19,.055);
}
.brand-editorial-lead{
  padding:42px 46px;
  border-radius:28px;
  background:linear-gradient(145deg,rgba(255,252,246,.84),rgba(246,234,214,.74));
}
.brand-editorial-kicker{
  margin:0 0 10px;
  color:#9b681d;
  font:700 11px/1.3 "DM Sans",sans-serif;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.brand-editorial h2,
.brand-memory h2{
  margin:0 0 16px;
  color:#30271f;
  font-family:var(--font-display);
  font-size:var(--fs-heading-sm-fluid);
  line-height:1.02;
  font-weight:600;
}
.brand-editorial p,
.brand-memory p{
  color:#625647;
  font-size:var(--fs-body);
  line-height:1.68;
}
.brand-editorial-lead>p:not(.brand-editorial-kicker){
  max-width:850px;
  margin:0 0 10px;
}
.brand-editorial-lines{
  display:grid;
  gap:5px;
  margin:18px 0;
  color:#4b4034;
  font-family:var(--font-display);
  font-size:var(--fs-subheading);
  font-style:italic;
  line-height:1.25;
}
.brand-editorial-wide{
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
  gap:34px 46px;
  margin-top:20px;
  padding:34px 38px;
  border-radius:26px;
  background:rgba(255,250,241,.72);
}
.brand-editorial-wide .brand-editorial-note{
  grid-column:1/-1;
  margin:0;
  padding-top:18px;
  border-top:1px solid rgba(165,112,34,.16);
  font-style:italic;
}
.brand-editorial-list{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9px 24px;
  margin:0;
  padding:0;
  list-style:none;
}
.brand-editorial-list li{
  position:relative;
  padding-left:17px;
  color:#55493d;
  font-size:var(--fs-small);
  line-height:1.48;
}
.brand-editorial-list li::before{
  content:"◇";
  position:absolute;
  left:0;
  top:0;
  color:#b77a1d;
}
.brand-editorial-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
  margin-top:20px;
}
.brand-editorial-panel{
  padding:30px 32px;
  border-radius:24px;
  background:linear-gradient(145deg,rgba(255,251,243,.82),rgba(249,229,194,.62));
}
.brand-editorial-panel p{
  margin:0 0 11px;
}
.brand-editorial-panel p:last-child{
  margin-bottom:0;
}
.brand-memory{
  margin-top:22px;
  padding:42px 46px;
  border-radius:28px;
  background:
    radial-gradient(circle at 85% 20%,rgba(222,177,93,.18),transparent 36%),
    linear-gradient(145deg,rgba(244,231,208,.84),rgba(255,251,243,.86));
}
.brand-memory-copy{
  max-width:920px;
}
.brand-memory-copy>p{
  margin:0 0 12px;
}
.brand-memory-keepsake{
  margin-top:24px;
  padding:22px 24px;
  border-left:2px solid #b77a1d;
  border-radius:0 18px 18px 0;
  background:rgba(255,255,255,.44);
}
.brand-memory-keepsake p{
  margin:0 0 8px;
}
.brand-memory-keepsake p:last-child{
  margin-bottom:0;
}
.brand-editorial-after{
  margin-top:22px;
}
.brand-editorial-closing blockquote{
  margin:18px 0;
  padding:0;
  border:0;
  color:#9b681d;
  font-family:var(--font-display);
  font-size:var(--fs-card-title);
  font-style:italic;
  line-height:1.1;
}
@media(max-width:820px){
  .brand-editorial-lead,
  .brand-memory{
    padding:30px 28px;
  }
  .brand-editorial-wide,
  .brand-editorial-grid{
    grid-template-columns:1fr;
  }
  .brand-editorial-wide{
    gap:18px;
    padding:28px;
  }
  .brand-editorial-list{
    grid-template-columns:1fr;
  }
}
@media(max-width:520px){
  .brand-editorial{
    margin-top:18px;
  }
  .brand-editorial-lead,
  .brand-editorial-panel,
  .brand-memory{
    border-radius:20px;
  }
  .brand-editorial-lead,
  .brand-memory{
    padding:24px 19px;
  }
  .brand-editorial-panel{
    padding:22px 19px;
  }
  .brand-editorial-wide{
    padding:22px 19px;
    border-radius:20px;
  }
  .brand-editorial h2,
  .brand-memory h2{
    font-size:var(--fs-card-title);
  }
  .brand-editorial p,
  .brand-memory p{
    font-size:var(--fs-small);
    line-height:1.62;
  }
  .brand-editorial-lines{
    font-size:var(--fs-lead);
  }
  .brand-memory-keepsake{
    margin-top:20px;
    padding:18px 16px;
  }
  .brand-editorial-closing blockquote{
    font-size:var(--fs-card-title);
  }
}


/* v67 — softer Boutique Brand option cards */
.brand-live-options-soft{
  align-items:stretch;
}
.brand-live-options-soft .brand-live-card{
  padding-top:24px;
  padding-bottom:24px;
}
.brand-live-options-soft .brand-live-card h2{
  font-size:var(--fs-card-title-fluid);
  line-height:1.08;
  letter-spacing:0;
  text-transform:none;
}
.brand-live-options-soft .brand-live-card p{
  margin:0 0 10px;
  font-size:var(--fs-small);
  line-height:1.58;
}
.brand-live-options-soft .brand-live-card p:last-child{
  margin-bottom:0;
}
.brand-live-options-soft .brand-live-card-middle{
  background:linear-gradient(145deg,rgba(255,250,241,.92),rgba(247,226,188,.72));
  border-color:rgba(174,114,29,.24);
}
.brand-live-options-soft .brand-live-card-middle .brand-live-icon{
  transform:scale(1.02);
}
@media(max-width:620px){
  .brand-live-options-soft .brand-live-card{
    padding:22px 18px;
  }
  .brand-live-options-soft .brand-live-card h2{
    font-size:var(--fs-subheading);
  }
  .brand-live-options-soft .brand-live-card p{
    font-size:var(--fs-small);
    line-height:1.55;
  }
}


/* v69 — Events split into Bansko / Around Bansko */
.events-chooser{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  max-width:560px;
  margin:20px auto 8px;
}
.events-choice{
  appearance:none;
  min-height:46px;
  padding:11px 18px;
  border:1px solid rgba(143,94,22,.26);
  border-radius:999px;
  background:rgba(255,255,255,.58);
  color:#80551b;
  font:700 13px/1.3 "DM Sans",sans-serif;
  cursor:pointer;
  transition:background-color .18s ease,border-color .18s ease,transform .18s ease;
}
.events-choice:hover,
.events-choice:focus-visible{
  background:#fffaf2;
  border-color:rgba(111,69,16,.5);
}
.events-choice:active{
  transform:translateY(1px);
}
.events-subpanel{
  margin-top:20px;
}
.events-subpanel[hidden]{
  display:none !important;
}
.events-back-link{
  appearance:none;
  cursor:pointer;
}
@media(max-width:520px){
  .events-chooser{
    grid-template-columns:1fr 1fr;
    gap:9px;
    margin-top:16px;
  }
  .events-choice{
    min-height:42px;
    padding:9px 10px;
    font-size:var(--fs-caption);
  }
}
@media(prefers-reduced-motion:reduce){
  .events-choice{
    transition:none;
  }
}


/* v73 — centre the Events calendar intro on laptop/desktop only */
@media (min-width: 821px){
  .recommend-page #events .events-intro{
    width:100%;
    max-width:850px;
    margin-top:4px;
    margin-right:auto;
    margin-bottom:28px;
    margin-left:auto;
  }
}


/* v74 — trust polish: legal footer, legal pages, owner CTA reassurance */
.footer-grid{grid-template-columns:1fr auto auto auto}
.footer-legal{display:flex;align-items:center;justify-content:flex-end;gap:8px;white-space:nowrap}
.footer-legal a{color:rgba(255,255,255,.68);font-size:var(--fs-caption);text-decoration:none}
.footer-legal a:hover,.footer-legal a:focus-visible{color:#fff8ed;text-decoration:underline;text-underline-offset:3px}
.footer-legal span{color:rgba(255,255,255,.34)}
.owner-contact-reassurance{max-width:720px;margin:14px auto 20px;color:rgba(44,37,30,.72);font-size:var(--fs-small);line-height:1.55;font-style:italic}
.legal-page-section{min-height:68vh;padding-top:70px;padding-bottom:82px;background:radial-gradient(circle at 82% 8%,rgba(187,137,55,.09),transparent 32%),linear-gradient(180deg,#fbf8f2 0%,#f7f1e7 100%)}
.legal-page-wrap{max-width:900px}
.legal-page-head{max-width:760px;margin-bottom:30px}
.legal-page-head h1{margin:7px 0 12px;color:#29241f;font-family:var(--font-display);font-size:var(--fs-section-title);line-height:1;font-weight:600}
.legal-page-lead{margin:0;color:#5c5349;font-size:var(--fs-body);line-height:1.65}
.legal-page-date{margin:12px 0 0;color:#8b7c6c;font-size:var(--fs-caption)}
.legal-page-body{display:grid;gap:16px}
.legal-page-block{padding:25px 28px;border:1px solid rgba(152,103,37,.13);border-radius:20px;background:rgba(255,255,255,.58);box-shadow:0 12px 28px rgba(79,57,25,.035)}
.legal-page-block h2{margin:0 0 10px;color:#3b332b;font-family:var(--font-display);font-size:var(--fs-card-title);line-height:1.1;font-weight:600}
.legal-page-block p{margin:0 0 10px;color:#62584d;font-size:var(--fs-small);line-height:1.68}
.legal-page-block p:last-child{margin-bottom:0}
.legal-page-block a{color:#8d611f;font-weight:700}
@media(max-width:960px){
  .footer-grid{grid-template-columns:1fr auto}
  .footer-legal{grid-column:1/-1;justify-content:flex-start}
}
@media(max-width:640px){
  .footer-grid{grid-template-columns:1fr;gap:12px}
  .footer-legal{grid-column:auto;flex-wrap:wrap}
  .legal-page-section{padding-top:48px;padding-bottom:58px}
  .legal-page-block{padding:21px 18px;border-radius:17px}
  .legal-page-lead{font-size:var(--fs-body)}
  .owner-contact-reassurance{margin:12px 0 18px;font-size:var(--fs-caption)}
}


/* v75 — protected contact details */
[data-protected-contact]{
  cursor:pointer;
}
[data-protected-contact] [data-contact-value]{
  transition:opacity .15s ease;
}
.protected-contact-inline{
  font-weight:700;
  text-decoration:underline;
  text-underline-offset:3px;
}

/* v77 — legal identity details */
.legal-identity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}
.legal-identity-card{padding:16px 18px;border:1px solid rgba(152,103,37,.12);border-radius:14px;background:rgba(255,255,255,.45)}
.legal-identity-card strong{display:block;margin-bottom:7px;color:#3b332b;font-family:var(--font-display);font-size:var(--fs-subheading)}
.legal-identity-card p{margin:3px 0;font-size:var(--fs-small);line-height:1.5}
@media(max-width:640px){.legal-identity-grid{grid-template-columns:1fr}}


/* v79 — legal transparency notes */
.owner-price-vat-note{
  max-width:960px;
  margin:16px auto 0;
  text-align:center;
  color:rgba(44,37,30,.68);
  font-size:var(--fs-caption);
  line-height:1.55;
}
.guest-review-transparency{
  max-width:980px;
  margin:18px auto 0;
  color:rgba(44,37,30,.64);
  font-size:var(--fs-caption);
  line-height:1.55;
  text-align:center;
}
@media(max-width:640px){
  .owner-price-vat-note,
  .guest-review-transparency{
    text-align:left;
  }
}


/* v81 — Boutique Brand inclusion and standalone pricing */
.owner-brand-pricing-note{
  margin:11px 0 0;
  color:rgba(44,37,30,.74);
  font-size:var(--fs-small);
  line-height:1.6;
}
.owner-brand-pricing-note-included{
  margin-top:16px;
  color:#3b332b;
}
.brand-live-pricing-note{
  margin-top:12px;
  color:rgba(44,37,30,.78);
}
.brand-live-pricing-note-included{
  margin-top:20px;
  color:#3b332b;
}


/* v82 — canonical typography system
   Cormorant Garamond = Mila Stays / headings
   DM Sans = body / navigation / controls
   Marck Script = handwritten personal accents
*/
body{font-family:var(--font-body);font-size:var(--fs-body)}
.brand-mark,
.brand-stack strong,
.hero-brand,
h1,h2,h3,h4,
.legal-page-head h1,
.legal-page-block h2{font-family:var(--font-display)}
.hero-brand{font-size:var(--fs-display)}
.section h2,
.owner-price-grid h2,
.owner-evidence h2,
.owner-faq h2,
.owner-contact-box h2,
.recommend-page .section-head h1{font-size:var(--fs-section-title)}
.owner-hero-copy h1,
.brand-service-copy h1,
.brand-live-copy h1,
.article-hero h1,
.stay-detail-heading h1,
.legal-page-head h1{font-size:var(--fs-page-title)}
.stay-body h3,
.journal-card h3,
.article-content h2,
.owner-package-detail-head h3,
.owner-choice-card h2{font-size:var(--fs-heading-sm-fluid)}
.hero-tagline,
.personal-script,
.owner-portrait-caption strong,
.article-signature span,
.article-content .mila-signature,
.about-soft-copy h1,
.about-soft-copy h2,
.about-soft-copy .about-final{
  font-family:var(--font-script)!important;
}
.hero-tagline{font-size:var(--fs-script)}

/* v87 — image download deterrence */
img,
picture img{
  -webkit-user-drag:none;
  -webkit-touch-callout:none;
  user-select:none;
  -webkit-user-select:none;
}

/* v99 — clean responsive source of truth
   Replaces the stacked v95/v96/v97 repair layers.
   Header: one geometry for BG/EN; laptop uses hamburger before labels can collide.
   Hero: one stone-tower master, cropped from the same source at every breakpoint.
   My Story: stable portrait size and spacing on laptop/desktop. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}

/* Header */
.site-header{
  background:rgba(17,16,14,.88);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}
.site-header .nav-wrap{
  width:min(1540px,calc(100% - 36px));
  height:76px;
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:nowrap;
}
.site-header .brand{
  flex:0 1 auto;
  min-width:0;
  max-width:min(360px,42vw);
  gap:11px;
}
.site-header .brand-mark{flex:0 0 42px}
.site-header .brand-stack{min-width:0}
.site-header .brand-stack strong{white-space:nowrap}
.site-header .brand-stack small{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.site-header .lang-switch{
  display:flex;
  flex:0 0 auto;
  gap:6px;
  margin-left:0;
  position:relative;
  z-index:34;
}
.site-header .lang,
.site-header .lang.active{
  box-sizing:border-box;
  width:40px;
  min-width:40px;
  max-width:40px;
  height:40px;
  min-height:40px;
  max-height:40px;
  padding:0;
  display:inline-grid;
  place-items:center;
  border-radius:50%;
  font-family:var(--font-body);
  font-size:12px;
  font-weight:700;
  line-height:1;
  letter-spacing:0;
  transform:none;
  white-space:nowrap;
}
.site-header .main-nav a,
.site-header .main-nav a.active{
  box-sizing:border-box;
  min-height:40px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:8px 3px;
  font-family:var(--font-body);
  font-size:13px;
  font-weight:600;
  line-height:1.15;
  letter-spacing:0;
  text-transform:none;
  transform:none;
  white-space:nowrap;
}
.site-header .main-nav a.active{color:#e0b55c}
.site-header .main-nav a.active::after{display:none}

/* Full navigation only on genuinely wide desktops. */
@media (min-width:1240px){
  .site-header .nav-wrap{height:82px;gap:16px}
  .site-header .brand{flex:0 0 auto;max-width:none}
  .site-header .brand-stack small{display:block}
  .site-header .main-nav{
    position:static;
    display:flex;
    flex:1 1 auto;
    min-width:0;
    margin-left:auto;
    padding:0;
    align-items:center;
    justify-content:center;
    flex-direction:row;
    gap:clamp(6px,.55vw,10px);
    background:transparent;
    border:0;
    box-shadow:none;
  }
  .site-header .menu-toggle{display:none}
}

/* Laptop / tablet / mobile: compact header, no collisions. */
@media (max-width:1239px){
  .site-header .nav-wrap{height:72px;gap:10px}
  .site-header .brand{
    flex:1 1 auto;
    max-width:calc(100% - 154px);
  }
  .site-header .brand-stack small{display:none}
  .site-header .menu-toggle{
    display:block;
    flex:0 0 auto;
    order:2;
    margin-left:auto;
    padding:3px 5px;
    font-size:26px;
    line-height:1;
    position:relative;
    z-index:34;
  }
  .site-header .lang-switch{order:3}
  .site-header .main-nav{
    display:none;
    position:fixed;
    top:72px;
    left:0;
    right:0;
    z-index:33;
    margin:0;
    padding:12px max(18px,calc((100vw - var(--max))/2)) 18px;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    background:rgba(21,19,15,.985);
    border-top:1px solid rgba(255,255,255,.08);
    box-shadow:0 18px 34px rgba(0,0,0,.24);
  }
  .site-header .main-nav.open{display:flex}
  .site-header .main-nav a,
  .site-header .main-nav a.active{
    width:100%;
    min-height:46px;
    justify-content:flex-start;
    padding:12px 2px;
    font-size:14px;
    line-height:1.2;
    white-space:normal;
    border-bottom:1px solid rgba(255,255,255,.08);
  }
  .site-header .main-nav a:last-child{border-bottom:0}
}

@media (max-width:520px){
  .site-header .nav-wrap{width:calc(100% - 24px);gap:7px}
  .site-header .brand{max-width:calc(100% - 142px);gap:8px}
  .site-header .brand-mark{width:38px;height:38px;flex-basis:38px;font-size:21px}
  .site-header .brand-stack strong{font-size:clamp(22px,7vw,28px)}
  .site-header .lang-switch{gap:4px}
  .site-header .lang,
  .site-header .lang.active{
    width:38px;min-width:38px;max-width:38px;
    height:38px;min-height:38px;max-height:38px;
    font-size:12px;
  }
  .site-header .menu-toggle{font-size:25px;padding:3px}
}
@media (max-width:370px){
  .site-header .brand-stack strong{font-size:21px}
  .site-header .brand-mark{width:34px;height:34px;flex-basis:34px}
  .site-header .lang,.site-header .lang.active{
    width:34px;min-width:34px;max-width:34px;
    height:34px;min-height:34px;max-height:34px;
    font-size:11px;
  }
}

/* Homepage hero: background is CSS-based so BG/EN and nested paths cannot lose the cover. */
.hero{
  position:relative;
  width:100%;
  min-height:100svh;
  height:100svh;
  margin:0;
  overflow:hidden;
  display:grid;
  align-items:end;
  color:#fff;
  background:#17130f;
}
.hero-media{
  position:absolute;
  inset:0;
  z-index:0;
  display:block;
  width:100%;
  height:100%;
  background-image:url('assets/bansko-hero-master-desktop.b1715857bb.webp');
  background-size:cover;
  background-repeat:no-repeat;
  background-position:center center;
}
.hero-overlay{
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(0deg,rgba(7,7,7,.68) 0%,rgba(7,7,7,.28) 23%,rgba(7,7,7,.04) 50%,rgba(7,7,7,0) 70%);
}
.hero-place-branding{
  position:absolute;
  z-index:2;
  top:13%;
  left:33%;
  transform:none;
  width:min(500px,35vw);
  text-align:center;
  color:#2b2118;
  text-shadow:0 1px 1px rgba(255,246,226,.32);
  pointer-events:none;
}
.hero-place-title{
  font-family:var(--font-display);
  font-size:clamp(64px,7vw,106px);
  font-weight:600;
  line-height:.88;
  letter-spacing:.04em;
}
.hero-place-country{
  width:max-content;
  max-width:100%;
  margin:14px auto 0;
  padding:0 28px;
  position:relative;
  font-size:clamp(12px,1vw,16px);
  font-weight:600;
  line-height:1;
  letter-spacing:.30em;
}
.hero-place-country::before,.hero-place-country::after{
  content:"";
  position:absolute;
  top:50%;
  width:54px;
  height:1px;
  background:currentColor;
  opacity:.65;
}
.hero-place-country::before{right:100%}
.hero-place-country::after{left:100%}
.hero-place-tagline{
  margin-top:18px;
  font-family:var(--font-script);
  font-size:clamp(30px,3.1vw,48px);
  line-height:1.02;
  color:#39291b;
}
.hero-place-tagline span{display:block}
.hero-content{
  position:relative;
  z-index:3;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  align-self:stretch;
  width:min(var(--max),calc(100% - 36px));
  min-height:100%;
  margin-inline:auto;
  padding:0 0 calc(26px + env(safe-area-inset-bottom));
}
.hero-actions{margin-bottom:10px}
.hero-trust{margin-top:0;color:rgba(255,255,255,.92)}

@media (min-width:701px) and (max-width:1100px){
  .hero-media{
    background-image:url('assets/bansko-hero-master-tablet.825c25c3cd.webp');
    background-position:center center;
  }
  .hero-place-branding{
    top:14%;left:34%;right:auto;transform:none;width:43%;
  }
  .hero-place-title{font-size:clamp(48px,7vw,72px)}
  .hero-place-tagline{font-size:clamp(27px,4vw,38px)}
  .hero-actions{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    width:min(760px,100%);
    margin:0 auto 10px;
  }
  .hero-actions .hero-path{width:100%;min-width:0;align-items:stretch;margin:0}
  .hero-actions .hero-path .btn{width:100%;min-width:0;margin:0}
  .hero-path-label{text-align:center}
  .hero-trust{justify-content:center}
}

@media (max-width:700px){
  .hero-media{
    background-image:url('assets/bansko-sunset-cover-mobile-sky-fd3d40b683.webp');
    background-position:center top;
  }
  .hero-place-branding{
    top:12%;left:42%;right:auto;transform:none;width:54%;
  }
  .hero-place-title{font-size:clamp(38px,12vw,52px);letter-spacing:.02em}
  .hero-place-country{margin-top:10px;padding:0 14px;font-size:10px;letter-spacing:.22em}
  .hero-place-country::before,.hero-place-country::after{width:22px}
  .hero-place-tagline{margin-top:12px;font-size:clamp(23px,8vw,34px);line-height:1.02}
  .hero-content{
    width:calc(100% - 28px);
    padding-bottom:calc(16px + env(safe-area-inset-bottom));
  }
  .hero-actions{
    display:grid;
    grid-template-columns:1fr;
    width:min(430px,100%);
    gap:8px;
    margin:0 auto 9px;
  }
  .hero-actions .hero-path{width:100%;min-width:0;align-items:stretch;margin:0;gap:4px}
  .hero-actions .hero-path .btn{width:100%;min-width:0;min-height:46px;margin:0;padding:12px 14px}
  .hero-path-label{text-align:center;font-size:var(--fs-micro)}
  .hero-trust{justify-content:center;gap:8px;flex-wrap:wrap;text-align:center;font-size:var(--fs-micro)}
}

/* My Story / My Story — same geometry in BG and EN. */
.about-page .about-soft{
  min-height:72vh;
  padding-top:132px;
  padding-bottom:76px;
}
.about-page .about-soft-grid{
  grid-template-columns:minmax(0,1fr) 320px;
  gap:56px;
  align-items:start;
  max-width:1080px;
}
.about-page .about-soft-copy{max-width:690px}
.about-page .about-soft-photo{
  width:320px;
  max-width:100%;
  justify-self:end;
  position:sticky;
  top:108px;
  margin-top:20px;
}
.about-page .about-soft-photo img{
  display:block;
  width:100%;
  height:auto;
  max-height:none;
  aspect-ratio:auto;
  object-fit:contain;
  object-position:center;
}
@media (max-width:980px){
  .about-page .about-soft{padding-top:104px}
  .about-page .about-soft-grid{grid-template-columns:1fr;gap:30px}
  .about-page .about-soft-photo{
    order:-1;
    position:static;
    justify-self:center;
    width:min(260px,68vw);
    margin-top:0;
  }
  .about-page .about-soft-copy{max-width:760px;margin:0 auto}
}
@media (max-width:620px){
  .about-page .about-soft{padding-top:92px;padding-bottom:58px}
  .about-page .about-soft-photo{width:min(230px,64vw)}
}

/* Apartment galleries: show the photo naturally rather than cropping it aggressively. */
.gallery-main{height:auto;min-height:360px;display:grid;place-items:center}
.gallery-main>img{width:100%;height:auto;max-height:620px;object-fit:contain;object-position:center;background:#181613}
@media(max-width:760px){
  .gallery-main{min-height:0;height:auto}
  .gallery-main>img{height:auto;max-height:none;object-fit:contain}
}

/* v100 — apartment images only: uniform 3:2 crop for listing cards and in-apartment galleries. */
.apartment-grid .stay-visual{
  height:auto;
  aspect-ratio:3 / 2;
  background-size:cover;
  background-position:center;
}

.stay-gallery .gallery-main,
.stay-detail-gallery .gallery-main{
  width:100%;
  height:auto !important;
  min-height:0 !important;
  aspect-ratio:3 / 2;
  display:block;
  overflow:hidden;
  background:#181613;
}

.stay-gallery .gallery-main > img,
.stay-detail-gallery .gallery-main > img{
  display:block;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  margin:0 !important;
  object-fit:cover !important;
  object-position:center !important;
  transform:none !important;
}

.stay-gallery .gallery-main:hover > img,
.stay-detail-gallery .gallery-main:hover > img{
  transform:none !important;
}


/* v101 — selected sunset cover + matching handwritten hero treatment (BG/EN) */
.hero-media{
  background-image:url('assets/bansko-sunset-cover-desktop-b0dd3d0cd7.webp')!important;
  background-position:center top!important;
}
.hero-place-branding{
  top:19%;
  left:50%;
  right:auto;
  transform:translateX(-50%);
  width:min(760px,70vw);
  color:#fff;
  text-shadow:0 2px 14px rgba(0,0,0,.58);
}
.hero-place-country{font-size:clamp(12px,.95vw,15px);}
.hero-place-tagline{
  font-family:var(--font-script)!important;
  font-weight:400!important;
  color:#fff!important;
  text-shadow:0 2px 12px rgba(0,0,0,.62);
}
@media (min-width:701px) and (max-width:1240px){
  .hero-media{background-image:url('assets/bansko-sunset-cover-desktop-b0dd3d0cd7.webp')!important;background-position:center top!important;}
  .hero-place-branding{top:18%;left:50%;right:auto;transform:translateX(-50%);width:min(680px,72vw);}
  .hero-place-tagline{font-family:var(--font-script)!important;font-weight:400!important;font-size:clamp(30px,4vw,42px);}
}
@media (max-width:700px){
  .hero-media{background-image:url('assets/bansko-sunset-cover-mobile-sky-fd3d40b683.webp')!important;background-position:center center!important;}
  .hero-place-branding{top:14%;left:50%;right:auto;transform:translateX(-50%);width:92%;}
  .hero-place-title{font-size:clamp(48px,15vw,66px);letter-spacing:.035em;}
  .hero-place-country{margin-top:11px;font-size:10px;letter-spacing:.28em;padding:0 18px;}
  .hero-place-country::before,.hero-place-country::after{width:28px;}
  .hero-place-tagline{margin-top:15px;font-family:var(--font-script)!important;font-size:clamp(28px,8.8vw,38px);line-height:1.02;color:#fff!important;}
  .hero-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;width:100%!important;margin:0 0 8px!important;align-items:end!important;}
  .hero-actions .hero-path{width:100%!important;min-width:0!important;align-items:stretch!important;margin:0!important;gap:5px!important;}
  .hero-actions .hero-path .btn{width:100%!important;min-width:0!important;min-height:48px!important;padding:11px 8px!important;font-size:12px!important;line-height:1.15!important;white-space:normal!important;}
  .hero-path-label{text-align:center!important;font-size:9px!important;letter-spacing:.11em!important;padding:0 2px!important;}
}


/* v102 — cache-safe global CSS, contact social row, and approved mobile hero headroom.
   Existing watermarks are not edited. */
.contact-social-row{
  display:flex;align-items:center;gap:12px;flex-wrap:nowrap;white-space:nowrap;
  padding:16px 0;border-bottom:1px solid rgba(0,0,0,.15);
}
.contact-links .contact-social-row .contact-social-link{
  display:inline-flex;align-items:center;gap:7px;min-width:0;
  padding:0;border:0;text-decoration:none;color:#3f3429;
}
.contact-links .contact-social-row .contact-social-link:hover,
.contact-links .contact-social-row .contact-social-link:focus-visible{color:#7a531c;}
.contact-social-icon{width:20px;height:20px;flex:0 0 20px;color:var(--gold);}
.contact-social-row .contact-social-link strong{font-size:clamp(15px,1.5vw,18px);line-height:1.2;}
.contact-social-separator{color:#9c7a49;font-size:18px;line-height:1;}
@media(max-width:420px){
  .contact-social-row{gap:8px;}
  .contact-social-icon{width:18px;height:18px;flex-basis:18px;}
  .contact-social-row .contact-social-link{gap:5px!important;}
  .contact-social-row .contact-social-link strong{font-size:14px;}
  .contact-social-separator{font-size:16px;}
}


/* v105 — hero title placement: keep branding left over the mountain, clear of the church tower. */
.hero-place-branding{top:17%!important;left:7%!important;right:auto!important;transform:none!important;width:min(520px,40vw)!important;text-align:left!important;}
.hero-place-country{margin-left:0!important;margin-right:auto!important;}
@media (min-width:701px) and (max-width:1240px){.hero-place-branding{top:16%!important;left:5%!important;right:auto!important;transform:none!important;width:46vw!important;text-align:left!important;}}
@media (max-width:700px){.hero-place-branding{top:12%!important;left:5%!important;right:auto!important;transform:none!important;width:72%!important;text-align:left!important;}.hero-place-title{font-size:clamp(42px,13vw,60px)!important;}.hero-place-country{margin-left:0!important;margin-right:auto!important;}.hero-place-tagline{font-size:clamp(27px,8vw,36px)!important;}}


/* v105 FINAL — approved hero branding position: right over the mountain, clear of the church tower. */
.hero-place-branding{
  top:17%!important;
  left:auto!important;
  right:5.5%!important;
  transform:none!important;
  width:min(520px,40vw)!important;
  text-align:center!important;
}
.hero-place-country{margin-left:auto!important;margin-right:auto!important;}
@media (min-width:701px) and (max-width:1240px){
  .hero-place-branding{top:15%!important;left:auto!important;right:4%!important;transform:none!important;width:48vw!important;text-align:center!important;}
  .hero-place-country{margin-left:auto!important;margin-right:auto!important;}
}
@media (max-width:700px){
  .hero-place-branding{top:12.5%!important;left:auto!important;right:2%!important;transform:none!important;width:62%!important;text-align:center!important;}
  .hero-place-title{font-size:clamp(46px,15vw,60px)!important;letter-spacing:.025em!important;}
  .hero-place-country{margin-left:auto!important;margin-right:auto!important;}
  .hero-place-tagline{font-size:clamp(27px,8.6vw,35px)!important;line-height:1.02!important;}
}


/* v106 — POSITION ONLY. Keep the approved hero images unchanged.
   Fresh cache-safe CSS also prevents stale hero positioning. */
.hero-media{
  background-image:url('assets/bansko-sunset-cover-desktop-b0dd3d0cd7.webp')!important;
  background-position:center top!important;
}
.hero-place-branding{
  top:17%!important;
  left:auto!important;
  right:20%!important;
  transform:none!important;
  width:min(470px,33vw)!important;
  text-align:center!important;
}
.hero-place-country{margin-left:auto!important;margin-right:auto!important;}

@media (min-width:701px) and (max-width:1240px){
  .hero-media{
    background-image:url('assets/bansko-sunset-cover-desktop-b0dd3d0cd7.webp')!important;
    background-position:center top!important;
  }
  .hero-place-branding{
    top:15%!important;
    left:auto!important;
    right:14%!important;
    transform:none!important;
    width:38vw!important;
    text-align:center!important;
  }
}

@media (max-width:700px){
  .hero-media{
    background-image:url('assets/bansko-sunset-cover-mobile-sky-fd3d40b683.webp')!important;
    background-position:center top!important;
  }
  .hero-place-branding{
    top:12.5%!important;
    left:auto!important;
    right:1%!important;
    transform:none!important;
    width:60%!important;
    text-align:center!important;
  }
  .hero-place-title{font-size:clamp(44px,14.5vw,60px)!important;letter-spacing:.025em!important;}
  .hero-place-tagline{font-size:clamp(27px,8.4vw,35px)!important;line-height:1.02!important;}
}

/* v106 — lightbox focus treatment.
   Remove Safari/browser click ring; preserve an accessible Mila Stays focus-visible cue. */
.gallery-lightbox-close:focus,
.gallery-lightbox-prev:focus,
.gallery-lightbox-next:focus{
  outline:none!important;
  box-shadow:none!important;
}
.gallery-lightbox-close:focus-visible,
.gallery-lightbox-prev:focus-visible,
.gallery-lightbox-next:focus-visible{
  outline:2px solid #c99832!important;
  outline-offset:3px!important;
  box-shadow:0 0 0 3px rgba(10,8,6,.55)!important;
}
@media (hover:none) and (pointer:coarse){
  .gallery-lightbox-close:focus,
  .gallery-lightbox-prev:focus,
  .gallery-lightbox-next:focus,
  .gallery-lightbox-close:focus-visible,
  .gallery-lightbox-prev:focus-visible,
  .gallery-lightbox-next:focus-visible{
    outline:none!important;
    box-shadow:none!important;
  }
}

/* v107 — article hero watermark visibility on laptop/tablet only.
   Keep the full first article image visible at the 621–980px breakpoint,
   so the existing Mila Stays watermark is not cropped out. */
@media (min-width:621px) and (max-width:980px){
  .article-page .article-hero-media{
    aspect-ratio:auto;
    max-height:none;
  }
  .article-page .article-hero-media img{
    width:100%;
    height:auto;
    object-fit:contain;
  }
}

/* v119 FINAL — reading-first article photography, clean hero headroom, equal Boutique Brand frames.
   This is the single active rule set for these areas. */

/* ARTICLE PHOTOS — preserve every source proportion; never crop or stretch. */
.article-page figure.article-hero-media,
.article-page figure.article-inline-media,
.article-page figure.article-inline-media.article-inline-media-bean{
  margin-left:auto!important;
  margin-right:auto!important;
  background:transparent!important;
  overflow:visible!important;
  border-radius:0!important;
  text-align:center!important;
}
.article-page figure.article-hero-media img,
.article-page figure.article-inline-media img,
.article-page figure.article-inline-media.article-inline-media-bean img{
  display:block!important;
  width:auto!important;
  height:auto!important;
  object-fit:contain!important;
  margin:0 auto!important;
  border-radius:18px!important;
}

/* Laptop / desktop: normal images remain readable; tall images become clearly smaller. */
@media (min-width:981px){
  .article-page figure.article-media-standard{
    width:360px!important;
    max-width:360px!important;
  }
  .article-page figure.article-media-standard img{
    max-width:360px!important;
    max-height:330px!important;
  }
  .article-page figure.article-media-tall,
  .article-page figure.article-inline-media.article-inline-media-bean.article-media-tall{
    width:280px!important;
    max-width:280px!important;
  }
  .article-page figure.article-media-tall img,
  .article-page figure.article-inline-media.article-inline-media-bean.article-media-tall img{
    max-width:280px!important;
    max-height:330px!important;
  }
  .article-page figure.article-inline-media{
    margin-top:24px!important;
    margin-bottom:30px!important;
  }
}

/* Tablet */
@media (min-width:621px) and (max-width:980px){
  .article-page figure.article-media-standard{
    width:min(82vw,370px)!important;
    max-width:370px!important;
  }
  .article-page figure.article-media-standard img{
    max-width:min(82vw,370px)!important;
    max-height:340px!important;
  }
  .article-page figure.article-media-tall,
  .article-page figure.article-inline-media.article-inline-media-bean.article-media-tall{
    width:min(68vw,300px)!important;
    max-width:300px!important;
  }
  .article-page figure.article-media-tall img,
  .article-page figure.article-inline-media.article-inline-media-bean.article-media-tall img{
    max-width:min(68vw,300px)!important;
    max-height:340px!important;
  }
  .article-page figure.article-inline-media{margin-top:22px!important;margin-bottom:28px!important;}
}

/* Mobile — compact enough to keep the reading rhythm. */
@media (max-width:620px){
  .article-page figure.article-media-standard{
    width:min(86vw,340px)!important;
    max-width:340px!important;
  }
  .article-page figure.article-media-standard img{
    max-width:min(86vw,340px)!important;
    max-height:320px!important;
  }
  .article-page figure.article-media-tall,
  .article-page figure.article-inline-media.article-inline-media-bean.article-media-tall{
    width:min(72vw,280px)!important;
    max-width:280px!important;
  }
  .article-page figure.article-media-tall img,
  .article-page figure.article-inline-media.article-inline-media-bean.article-media-tall img{
    max-width:min(72vw,280px)!important;
    max-height:320px!important;
  }
  .article-page figure.article-inline-media{margin-top:20px!important;margin-bottom:25px!important;}
  .article-page figure.article-hero-media img,
  .article-page figure.article-inline-media img{border-radius:16px!important;}
}

/* HOMEPAGE HERO — new cache-safe real-sky cover; no 52px offset and no pseudo strip. */
@media (min-width:701px){
  .hero-media{
    background-image:url('assets/bansko-sunset-cover-desktop-air-v119.webp')!important;
    background-size:cover!important;
    background-repeat:no-repeat!important;
    background-position:center top!important;
    background-color:#17130f!important;
  }
  .hero-media::before,
  .hero-media::after{
    content:none!important;
    display:none!important;
  }
}
@media (max-width:700px){
  .hero-media::before,
  .hero-media::after{content:none!important;display:none!important;}
}

/* BOUTIQUE BRAND — exactly equal image frames on all three cards. */
.brand-live-page .brand-level-grid{align-items:stretch!important;}
.brand-live-page .brand-level-card{height:100%!important;}
.brand-live-page .brand-level-card>summary{height:100%!important;display:flex!important;flex-direction:column!important;}
.brand-live-page .brand-level-summary{flex:1!important;}
.brand-live-page .brand-level-visual{
  width:100%!important;
  aspect-ratio:3/2!important;
  height:auto!important;
  overflow:hidden!important;
  background:#eee8dc!important;
}
.brand-live-page .brand-level-visual img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
}


/* v120 — EN mobile homepage hero: same approved cover with extra real-sky headroom. */
@media (max-width:700px){
  html[lang="en"] .hero-media{
    background-image:url('assets/bansko-sunset-cover-mobile-en-air-v121.webp')!important;
    background-position:center top!important;
    background-size:cover!important;
  }
}


/* v121 CLEAN — definitive EN mobile hero headroom. */
@media (max-width:700px){
  html[lang="en"] .hero-media{
    background-image:url('assets/bansko-sunset-cover-mobile-en-air-v121.webp')!important;
    background-position:center top!important;
    background-size:cover!important;
    background-repeat:no-repeat!important;
  }
}

/* v122 — EN mobile homepage hero: show the real sky above the tower.
   The fixed 72px header must not cover the top of the photograph.
   Keep the approved image unchanged and avoid background-size:cover cropping. */
@media (max-width:700px){
  html[lang="en"] .hero-media{
    inset:72px 0 0 0!important;
    width:100%!important;
    height:auto!important;
    background-image:url('assets/bansko-sunset-cover-mobile-en-air-v121.webp')!important;
    background-size:100% auto!important;
    background-position:center top!important;
    background-repeat:no-repeat!important;
    background-color:#17130f!important;
  }
  html[lang="en"] .hero-media::before,
  html[lang="en"] .hero-media::after{
    content:none!important;
    display:none!important;
  }
}

/* v123 — BG mobile homepage hero: match the approved EN mobile no-crop behaviour.
   Use the approved no-crop mobile hero asset shared with EN; start the real photograph below the fixed 72px header. */
@media (max-width:700px){
  html[lang="bg"] .hero-media{
    inset:72px 0 0 0!important;
    width:100%!important;
    height:auto!important;
    background-image:url('assets/bansko-sunset-cover-mobile-en-air-v121.webp')!important;
    background-size:100% auto!important;
    background-position:center top!important;
    background-repeat:no-repeat!important;
    background-color:#17130f!important;
  }
  html[lang="bg"] .hero-media::before,
  html[lang="bg"] .hero-media::after{
    content:none!important;
    display:none!important;
  }
}

/* v124 — Mila Stays hero watermark, matched to the handwritten gold treatment used across the photography. */
.hero-media::after{
  content:"Mila Stays"!important;
  display:block!important;
  position:absolute!important;
  right:clamp(16px,2.3vw,34px)!important;
  bottom:clamp(16px,2.3vw,30px)!important;
  z-index:3!important;
  font-family:var(--font-script)!important;
  font-size:clamp(18px,2.05vw,30px)!important;
  font-weight:400!important;
  line-height:1!important;
  letter-spacing:0!important;
  color:#e5c184!important;
  opacity:.74!important;
  text-shadow:0 1px 3px rgba(25,18,11,.48)!important;
  pointer-events:none!important;
  white-space:nowrap!important;
}
@media (max-width:700px){
  html[lang="bg"] .hero-media::after,
  html[lang="en"] .hero-media::after{
    content:"Mila Stays"!important;
    display:block!important;
    right:16px!important;
    bottom:18px!important;
    font-size:20px!important;
    opacity:.74!important;
  }
}

/* v124 — Boutique Brand accordion fix.
   Keep the three image frames identical, but never stretch the entire <details>
   cards/summaries to the height of the currently opened card. This keeps the
   native details content visible and prevents the other two cards from looking
   open when only one level is expanded. */
.brand-live-page .brand-level-grid{
  align-items:start!important;
}
.brand-live-page details.brand-level-card{
  height:auto!important;
  align-self:start!important;
}
.brand-live-page .brand-level-card>summary{
  height:auto!important;
  min-height:0!important;
  display:block!important;
}
.brand-live-page .brand-level-summary{
  flex:none!important;
}


/* v124 — Boutique Brand close controls and number cleanup. */
.brand-live-page .brand-level-close{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
  margin:20px 0 4px!important;
  padding:9px 18px!important;
  border:1px solid rgba(107,67,27,.42)!important;
  border-radius:999px!important;
  background:transparent!important;
  color:#6b431b!important;
  font:650 .86rem/1.2 var(--font-body)!important;
  letter-spacing:.02em!important;
  cursor:pointer!important;
}
.brand-live-page .brand-level-close:hover,
.brand-live-page .brand-level-close:focus-visible{
  background:rgba(180,122,32,.08)!important;
  border-color:#b47a20!important;
  outline:none!important;
}
.brand-live-page .brand-level-summary h3{
  margin-top:.15rem!important;
}
@media (max-width:620px){
  .brand-live-page .brand-level-close{
    width:100%!important;
    margin-top:17px!important;
  }
}


/* v125 — editorial test on FIRST Selected by Mila article only (BG + EN).
   Larger photography, original proportions, no crop, no stretch. */
@media (min-width:981px){
  .article-page.article-feature-v125 figure.article-hero-media.article-media-standard{
    width:min(43vw,560px)!important;max-width:560px!important;
  }
  .article-page.article-feature-v125 figure.article-hero-media.article-media-standard img{
    width:100%!important;max-width:100%!important;max-height:none!important;
  }
  .article-page.article-feature-v125 figure.article-inline-media.article-media-tall{
    width:340px!important;max-width:340px!important;
  }
  .article-page.article-feature-v125 figure.article-inline-media.article-media-tall img{
    max-width:340px!important;max-height:470px!important;
  }
}
@media (min-width:621px) and (max-width:980px){
  .article-page.article-feature-v125 figure.article-hero-media.article-media-standard{
    width:min(88vw,520px)!important;max-width:520px!important;
  }
  .article-page.article-feature-v125 figure.article-hero-media.article-media-standard img{
    max-width:min(88vw,520px)!important;max-height:none!important;
  }
  .article-page.article-feature-v125 figure.article-inline-media.article-media-tall{
    width:min(72vw,330px)!important;max-width:330px!important;
  }
  .article-page.article-feature-v125 figure.article-inline-media.article-media-tall img{
    max-width:min(72vw,330px)!important;max-height:455px!important;
  }
}
@media (max-width:620px){
  .article-page.article-feature-v125 figure.article-hero-media.article-media-standard{
    width:min(92vw,370px)!important;max-width:370px!important;
  }
  .article-page.article-feature-v125 figure.article-hero-media.article-media-standard img{
    max-width:min(92vw,370px)!important;max-height:none!important;
  }
  .article-page.article-feature-v125 figure.article-inline-media.article-media-tall{
    width:min(80vw,315px)!important;max-width:315px!important;
  }
  .article-page.article-feature-v125 figure.article-inline-media.article-media-tall img{
    max-width:min(80vw,315px)!important;max-height:430px!important;
  }
}

/* v125 — Boutique Brand visual balance.
   All three frames remain identical 3:2; the denser middle photograph gets an inset mat
   so its visual weight matches the two editorial boards without cropping its content. */
.brand-live-page .brand-level-card:nth-child(2) .brand-level-visual{
  display:flex!important;align-items:center!important;justify-content:center!important;
  padding:10px!important;box-sizing:border-box!important;
}
.brand-live-page .brand-level-card:nth-child(2) .brand-level-visual img{
  width:94%!important;height:94%!important;object-fit:contain!important;
  border-radius:12px!important;
}
@media (max-width:620px){
  .brand-live-page .brand-level-card:nth-child(2) .brand-level-visual{padding:8px!important;}
  .brand-live-page .brand-level-card:nth-child(2) .brand-level-visual img{width:95%!important;height:95%!important;border-radius:10px!important;}
}

/* v125 — For Owners Boutique Brand image: explicit real-photo crop focused on the gold seal.
   The dedicated asset is already cropped; never re-crop it in CSS. */
.owners-page .owner-brand-luxe-box img{
  width:100%!important;height:auto!important;aspect-ratio:auto!important;
  object-fit:contain!important;object-position:center!important;
}

.owner-intro-note{margin:18px auto 0;max-width:620px;line-height:1.7;color:rgba(44,37,30,.78)}
#owner-contact{scroll-margin-top:120px}
