/* TEUTA Apartments v5.0 — teuta-main.css */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --cream:#faf7f2;--linen:#f0e9dc;--stone:#d4b896;--stone-md:#a8876a;--stone-dk:#6b4f35;
  --terra:#c1572b;--terra-lt:#e8a882;--terra-pale:#fdf0e8;
  --olive:#5a7a3a;--olive-lt:#e8f0e0;--sky:#7ab5d4;--sky-lt:#e8f4fa;
  --ink:#2c1f10;--mid:#7a6555;--border:rgba(212,184,150,.35);--shadow:rgba(44,31,16,.08);
}
html{scroll-behavior:smooth}
body{background:var(--cream);color:var(--ink);font-weight:300;line-height:1.7;overflow-x:hidden}
a,button{cursor:pointer}img{max-width:100%;display:block}
::-webkit-scrollbar{width:3px}::-webkit-scrollbar-track{background:var(--linen)}::-webkit-scrollbar-thumb{background:var(--terra)}

/* ── TOP BAR ── */
.topbar{position:fixed;top:0;left:0;right:0;z-index:400;height:38px;background:var(--olive);display:flex;align-items:center;justify-content:space-between;padding:0 5vw}
.tb-left{font-size:.58rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.6)}
.tb-right{display:flex;align-items:center;gap:1.6rem}
.tb-link{display:inline-flex;align-items:center;gap:.4rem;font-size:.58rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.75);text-decoration:none;transition:color .2s;white-space:nowrap}
.tb-link:hover{color:#fff}.tb-link svg{width:10px;height:10px;flex-shrink:0}
.tb-sep{width:1px;height:11px;background:rgba(255,255,255,.25);flex-shrink:0}

/* ── HEADER ── */
.site-header{position:fixed;top:38px;left:0;right:0;z-index:300;height:66px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;transition:background .3s,box-shadow .3s}
.site-header.scrolled{background:rgba(250,247,242,.97);border-bottom:1px solid var(--border);box-shadow:0 2px 20px var(--shadow);backdrop-filter:blur(10px)}
.site-logo{font-size:1.3rem;font-weight:400;letter-spacing:.15em;text-transform:uppercase;color:var(--ink);text-decoration:none}
.site-logo span{color:var(--terra)}
.site-nav{display:flex;gap:2.5rem;list-style:none}
.site-nav a{font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);text-decoration:none;opacity:.7;transition:opacity .2s,color .2s}
.site-nav a:hover{opacity:1;color:var(--terra)}
.site-header:not(.scrolled) .site-nav a{color:#fff;opacity:.85}
.site-header:not(.scrolled) .site-logo{color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.3)}
.site-header:not(.scrolled) .site-logo span{color:var(--terra-lt)}

/* hamburger */
.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;padding:4px;width:32px;cursor:pointer}
.hamburger span{display:block;height:1.5px;background:var(--ink);transition:transform .3s,opacity .3s}
.site-header:not(.scrolled) .hamburger span{background:#fff}
.hamburger.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.hamburger.open span:nth-child(2){opacity:0}
.hamburger.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}

/* mobile nav */
.mobile-nav{display:none;position:fixed;top:104px;left:0;right:0;bottom:0;z-index:250;background:var(--cream);flex-direction:column;align-items:center;justify-content:center;gap:2rem;opacity:0;pointer-events:none;transition:opacity .3s;overflow-y:auto;padding:2rem}
.mobile-nav.open{opacity:1;pointer-events:all}
.mobile-nav a{font-size:1.9rem;font-weight:400;font-style:italic;color:var(--ink);text-decoration:none;transition:color .2s}
.mobile-nav a:hover{color:var(--terra)}
.mn-contact{display:flex;flex-direction:column;align-items:center;gap:.5rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border);width:85%;text-align:center}
.mn-contact a{font-size:.82rem;color:var(--mid);text-decoration:none;transition:color .2s}
.mn-contact a:hover{color:var(--terra)}

/* ── HERO ── */
.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;padding-top:104px;overflow:hidden}
.hero-slides{position:absolute;inset:0;overflow:hidden}
.hero-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1.8s ease-in-out}
.hero-slide.active{opacity:1}
.hero-slide::after{content:'';position:absolute;inset:0;background:linear-gradient(160deg,rgba(250,247,242,.04) 0%,rgba(0,0,0,0) 40%,rgba(44,31,16,.35) 70%,rgba(44,31,16,.82) 100%)}
.hero-dots{position:absolute;right:4vw;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:.6rem;z-index:10}
.hero-dot{width:6px;height:6px;border-radius:50%;border:none;padding:0;background:rgba(255,255,255,.3);cursor:pointer;transition:background .3s,transform .3s}
.hero-dot.active{background:#fff;transform:scale(1.5)}
.hero-counter{position:absolute;left:5vw;bottom:calc(var(--ib,150px) + 20px);font-size:.55rem;letter-spacing:.2em;color:rgba(255,255,255,.4);z-index:10}
.hero-content{position:relative;z-index:5;padding:0 5vw 4vh}
.hero-content::before{content:'';position:absolute;left:-5vw;right:-5vw;top:-4vh;bottom:0;background:linear-gradient(to right,rgba(20,12,4,.58) 0%,rgba(20,12,4,.38) 55%,rgba(20,12,4,0) 100%);pointer-events:none;z-index:-1}
.hero-title{font-size:clamp(2.6rem,6vw,5.6rem);font-weight:400;line-height:1.05;color:#fff;margin-bottom:.7rem;text-shadow:0 2px 20px rgba(0,0,0,.35)}
.hero-title em{font-style:italic;color:var(--terra-lt)}
.hero-sub{font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.92);margin-bottom:2.5rem;display:inline-block;background:rgba(44,31,16,.48);backdrop-filter:blur(8px);padding:.4rem 1rem;border-radius:2px}
.hero-actions{display:flex;gap:1rem;flex-wrap:wrap;align-items:center}

/* buttons */
.btn-primary{display:inline-block;font-size:.65rem;letter-spacing:.16em;text-transform:uppercase;font-weight:500;background:var(--terra);color:#fff;padding:.85rem 2.2rem;text-decoration:none;transition:background .2s,transform .15s;border:2px solid var(--terra)}
.btn-primary:hover{background:#a8451f;border-color:#a8451f;transform:translateY(-1px);color:#fff}
.btn-secondary{display:inline-block;font-size:.65rem;letter-spacing:.16em;text-transform:uppercase;color:#fff;padding:.85rem 2.2rem;text-decoration:none;border:2px solid rgba(255,255,255,.45);transition:border-color .2s,background .2s}
.btn-secondary:hover{border-color:#fff;background:rgba(255,255,255,.1)}
.btn-olive{display:inline-block;font-size:.65rem;letter-spacing:.16em;text-transform:uppercase;font-weight:500;background:var(--olive);color:#fff;padding:.85rem 2.2rem;text-decoration:none;border:2px solid var(--olive);white-space:nowrap;transition:background .2s;flex-shrink:0}
.btn-olive:hover{background:#476e2e;color:#fff}

/* infobar */
.hero-infobar{position:relative;z-index:5;display:grid;grid-template-columns:repeat(4,1fr);background:rgba(250,247,242,.97);border-top:3px solid var(--terra);box-shadow:0 -4px 30px rgba(44,31,16,.15)}
.hib-cell{padding:1rem 1.3rem;border-right:1px solid var(--border);display:flex;flex-direction:column;gap:.2rem}
.hib-cell:last-child{border-right:none}
.hib-label{font-size:.52rem;letter-spacing:.25em;text-transform:uppercase;color:var(--terra);font-weight:500}
.hib-value{font-size:.75rem;color:var(--ink);line-height:1.4}
.hib-value a{color:var(--olive);text-decoration:none;transition:color .2s}.hib-value a:hover{color:var(--terra)}

/* ── SHARED ── */
.sec-tag{display:inline-flex;align-items:center;gap:.7rem;font-size:.58rem;letter-spacing:.28em;text-transform:uppercase;color:var(--terra);margin-bottom:.9rem}
.sec-tag::before{content:'';width:22px;height:1px;background:var(--terra)}
.sec-title{font-size:clamp(1.8rem,3.2vw,2.8rem);font-weight:400;line-height:1.15;color:var(--ink)}
.sec-title em{font-style:italic;color:var(--stone-md)}
.sec-body{font-size:.88rem;color:var(--mid);line-height:1.9;max-width:54ch}

/* ── ABOUT ── */
.about-section{display:grid;grid-template-columns:1fr 1fr;min-height:85vh}
.about-visual{position:relative;overflow:hidden;background-color:var(--stone);background-size:cover;background-position:center}
.about-visual::before{content:'';position:absolute;inset:0;background:linear-gradient(to right,rgba(250,247,242,0) 55%,rgba(250,247,242,.85) 100%)}
.about-caption{position:absolute;bottom:2rem;left:2rem;font-size:.55rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(44,31,16,.4);writing-mode:vertical-rl}
.about-text{padding:8vh 6vw;display:flex;flex-direction:column;justify-content:center;background:var(--cream)}
.about-text .sec-title{margin-bottom:1.6rem}
.about-divider{width:40px;height:2px;background:linear-gradient(to right,var(--terra),var(--stone));margin:2rem 0}
.about-stats{display:flex;gap:2.5rem;padding-top:2rem;border-top:1px solid var(--border);flex-wrap:wrap}
.astat-num{font-size:2.4rem;font-weight:400;color:var(--terra);line-height:1}
.astat-lbl{font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:var(--mid);margin-top:.3rem}

/* ── STRIPE ── */
.feature-stripe{background:linear-gradient(135deg,var(--linen) 0%,var(--olive-lt) 100%);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:2.5rem 5vw;display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap}
.fs-text{font-size:clamp(1rem,2.2vw,1.6rem);font-weight:400;font-style:italic;color:var(--ink);max-width:620px;line-height:1.4}
.fs-text strong{font-style:normal;font-weight:600;color:var(--olive)}

/* ── APARTMENTS ── */
.apartments-section{padding:7vh 5vw;background:var(--linen)}
.apts-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:4vh;flex-wrap:wrap;gap:1.2rem}
.apts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.apt-card{background:var(--cream);overflow:hidden;box-shadow:0 2px 16px var(--shadow);transition:transform .35s cubic-bezier(.25,.8,.25,1),box-shadow .35s;cursor:pointer;border-radius:2px}
.apt-card:hover{transform:translateY(-5px);box-shadow:0 12px 40px rgba(44,31,16,.14)}
.apt-photo{width:100%;aspect-ratio:4/3;background-size:cover;background-position:center;background-color:var(--stone);position:relative;overflow:hidden;transition:transform .6s}
.apt-card:hover .apt-photo{transform:scale(1.04)}
.apt-photo::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(44,31,16,.55) 0%,rgba(44,31,16,0) 50%);transition:opacity .3s}
.apt-card:hover .apt-photo::after{opacity:.7}
.apt-photo-num{position:absolute;bottom:1rem;left:1.2rem;font-size:.7rem;font-style:italic;letter-spacing:.1em;color:rgba(255,255,255,.6);z-index:2}
.apt-view-btn{position:absolute;bottom:1rem;right:1rem;z-index:3;display:inline-flex;align-items:center;gap:.4rem;font-size:.58rem;letter-spacing:.15em;text-transform:uppercase;font-weight:500;background:rgba(250,247,242,.93);color:var(--terra);padding:.45rem .9rem;border:1px solid rgba(193,87,43,.25);opacity:0;transform:translateY(6px);transition:opacity .25s,transform .25s;pointer-events:none;border-radius:1px}
.apt-view-btn svg{width:13px;height:13px;flex-shrink:0}
.apt-card:hover .apt-view-btn{opacity:1;transform:translateY(0);pointer-events:all}
.apt-info{padding:1.2rem 1.4rem 1.5rem}
.apt-name{font-size:1.05rem;font-weight:400;color:var(--ink);margin-bottom:.3rem;transition:color .2s}
.apt-card:hover .apt-name{color:var(--terra)}
.apt-desc{font-size:.76rem;color:var(--mid);line-height:1.65}
.apt-tag{display:inline-block;margin-top:.6rem;font-size:.55rem;letter-spacing:.18em;text-transform:uppercase;color:var(--terra);border-bottom:1px solid var(--terra-lt);padding-bottom:1px}

/* ── GALLERY STRIP ── */
.gallery-strip{display:grid;grid-template-columns:repeat(4,1fr);height:240px;gap:3px;background:var(--border)}
.gstrip-item{overflow:hidden;background-size:cover;background-position:center;background-color:var(--stone);transition:transform .5s}
.gstrip-item:hover{transform:scale(1.04)}

/* ── LIGHTBOX ── */
.lightbox{display:none;position:fixed;inset:0;z-index:9000;background:rgba(20,12,4,.96);flex-direction:column;align-items:center;justify-content:center;opacity:0;transition:opacity .3s}
.lightbox.open{display:flex;opacity:1}
.lb-bar{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.5rem;background:linear-gradient(to bottom,rgba(20,12,4,.8),transparent);z-index:2}
.lb-title{font-size:1rem;font-weight:400;font-style:italic;color:rgba(255,255,255,.8)}
.lb-counter{font-size:.62rem;letter-spacing:.2em;color:rgba(255,255,255,.4)}
.lb-close{background:none;border:none;color:rgba(255,255,255,.6);font-size:1.6rem;line-height:1;padding:.3rem .6rem;transition:color .2s;cursor:pointer}
.lb-close:hover{color:#fff}
.lb-stage{position:relative;display:flex;align-items:center;justify-content:center;width:100%;flex:1;padding:4rem 5rem;overflow:hidden}
.lb-img{max-width:100%;max-height:100%;object-fit:contain;border-radius:2px;box-shadow:0 8px 60px rgba(0,0,0,.6);transition:opacity .3s,transform .3s;user-select:none}
.lb-img.switching{opacity:0;transform:scale(.97)}
.lb-arrow{position:absolute;top:50%;transform:translateY(-50%);background:rgba(250,247,242,.1);border:1px solid rgba(255,255,255,.15);color:#fff;width:50px;height:50px;display:flex;align-items:center;justify-content:center;transition:background .2s;z-index:2;cursor:pointer;border-radius:2px}
.lb-arrow:hover{background:rgba(250,247,242,.22)}
.lb-arrow.prev{left:1rem}.lb-arrow.next{right:1rem}
.lb-arrow svg{width:22px;height:22px;pointer-events:none}
.lb-thumbs{position:absolute;bottom:0;left:0;right:0;display:flex;gap:6px;justify-content:center;padding:1rem 1.5rem 1.2rem;background:linear-gradient(to top,rgba(20,12,4,.85),transparent);overflow-x:auto;scrollbar-width:none}
.lb-thumbs::-webkit-scrollbar{display:none}
.lb-thumb{width:58px;height:42px;flex-shrink:0;border:2px solid transparent;background-size:cover;background-position:center;cursor:pointer;opacity:.5;transition:opacity .2s,border-color .2s,transform .2s;border-radius:1px}
.lb-thumb.active{border-color:var(--terra);opacity:1;transform:translateY(-2px)}
.lb-thumb:hover{opacity:.85}
.lb-contact{position:absolute;bottom:5.5rem;right:1.5rem;display:flex;flex-direction:column;gap:.5rem;align-items:flex-end}
.lb-contact-btn{display:inline-flex;align-items:center;gap:.5rem;font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;font-weight:500;background:var(--terra);color:#fff;padding:.55rem 1.2rem;text-decoration:none;transition:background .2s;white-space:nowrap;border-radius:1px}
.lb-contact-btn:hover{background:#a8451f;color:#fff}
.lb-contact-btn.ghost{background:rgba(250,247,242,.1);border:1px solid rgba(255,255,255,.25)}
.lb-contact-btn.ghost:hover{background:rgba(250,247,242,.2)}
.lb-contact-btn svg{width:13px;height:13px}

/* ── LOCATION ── */
.location-section{display:grid;grid-template-columns:5fr 7fr;min-height:65vh}
.loc-text{padding:8vh 5vw;display:flex;flex-direction:column;justify-content:center;background:var(--cream);border-right:1px solid var(--border)}
.loc-text .sec-title{margin-bottom:2.5rem}
.loc-item{display:flex;gap:1rem;align-items:flex-start;padding:.9rem 0;border-bottom:1px solid var(--border)}
.loc-item:first-of-type{border-top:1px solid var(--border)}
.loc-dot{width:6px;height:6px;border-radius:50%;background:var(--terra);flex-shrink:0;margin-top:.55rem}
.loc-detail{font-size:.82rem;color:var(--mid);line-height:1.6}
.loc-detail strong{display:block;font-size:.58rem;letter-spacing:.2em;text-transform:uppercase;color:var(--stone-dk);font-weight:500;margin-bottom:.15rem}
.loc-detail a{color:var(--olive);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s,color .2s}
.loc-detail a:hover{color:var(--terra);border-color:var(--terra)}
.loc-map{position:relative;overflow:hidden;background-color:var(--sky-lt);min-height:480px}
.loc-map::before{content:'';position:absolute;inset:0;background:linear-gradient(to left,rgba(250,247,242,0) 60%,rgba(250,247,242,.06) 100%);z-index:1;pointer-events:none}
.loc-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:sepia(12%) saturate(88%) brightness(107%)}
.loc-map-pin{position:absolute;bottom:1.5rem;left:1.5rem;z-index:2;pointer-events:none}
.loc-pin-label{background:rgba(250,247,242,.96);border-left:3px solid var(--terra);padding:.7rem 1rem;font-size:.75rem;color:var(--ink);line-height:1.5;box-shadow:0 4px 20px rgba(44,31,16,.15)}
.loc-pin-label strong{display:block;font-size:.63rem;letter-spacing:.12em;text-transform:uppercase;color:var(--terra);font-weight:500;margin-bottom:.2rem}

/* ── CONTACT SECTION ── */
.contact-section{background:var(--terra);padding:9vh 5vw;text-align:center;position:relative;overflow:hidden}
.contact-section::before{content:'TEUTA';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:clamp(5rem,16vw,14rem);font-weight:400;font-style:italic;color:rgba(255,255,255,.06);pointer-events:none;white-space:nowrap}
.contact-section .sec-tag{color:rgba(255,255,255,.55);justify-content:center}
.contact-section .sec-tag::before{background:rgba(255,255,255,.35)}
.contact-section .sec-title{color:#fff;margin:0 auto .8rem;max-width:500px}
.contact-section .sec-title em{color:rgba(255,255,255,.72)}
.contact-section .sec-body{color:rgba(255,255,255,.65);margin:0 auto 3rem}
.contact-btns{display:flex;gap:.8rem;justify-content:center;flex-wrap:wrap}
.cbtn{display:inline-block;font-size:.65rem;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;padding:.85rem 2.2rem;border:2px solid rgba(255,255,255,.4);color:#fff;transition:background .2s,border-color .2s;border-radius:2px}
.cbtn:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.8);color:#fff}
.cbtn.main{background:#fff;color:var(--terra);border-color:#fff;font-weight:500}
.cbtn.main:hover{background:var(--linen);border-color:var(--linen);color:var(--terra)}

/* ── FOOTER ── */
.site-footer{background:var(--ink);padding:2rem 5vw;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;border-top:2px solid var(--terra)}
.footer-logo{font-size:1rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:rgba(250,247,242,.35);text-decoration:none}
.footer-logo span{color:rgba(193,87,43,.6)}
.footer-copy{font-size:.58rem;letter-spacing:.09em;color:rgba(250,247,242,.18)}
.footer-fb a{font-size:.58rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(250,247,242,.22);text-decoration:none;transition:color .2s}
.footer-fb a:hover{color:var(--terra-lt)}

/* ── REVEAL ── */
.fade-up{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s ease}
.fade-left{opacity:0;transform:translateX(-28px);transition:opacity .75s ease,transform .75s ease}
.fade-right{opacity:0;transform:translateX(28px);transition:opacity .75s ease,transform .75s ease}
.fade-up.visible,.fade-left.visible,.fade-right.visible{opacity:1;transform:none}

/* ══════════════════════════════════════
   RESPONSIVE — Mobile First
══════════════════════════════════════ */

/* Tablet */
@media(max-width:1024px){
  .apts-grid{grid-template-columns:repeat(2,1fr)}
  .about-section{grid-template-columns:1fr}
  .about-visual{min-height:55vw}
  .about-visual::before{background:linear-gradient(to bottom,rgba(250,247,242,0) 60%,rgba(250,247,242,.9) 100%)}
  .location-section{grid-template-columns:1fr}
  .loc-text{border-right:none;border-bottom:1px solid var(--border)}
  .loc-map{min-height:55vw}
  .hero-infobar{grid-template-columns:repeat(2,1fr)}
  .hib-cell:nth-child(2){border-right:none}
  .gallery-strip{grid-template-columns:repeat(2,1fr);height:auto}
  .gstrip-item{height:200px}
}

/* Mobile */
@media(max-width:768px){
  /* Header */
  .site-nav{display:none}
  .hamburger{display:flex}
  .mobile-nav{display:flex}
  .tb-left{display:none}
  /* Hero */
  .hero{min-height:100svh}
  .hero-title{font-size:clamp(2.2rem,8vw,3.2rem)}
  .hero-sub{font-size:.62rem}
  .hero-actions{gap:.8rem}
  .btn-primary,.btn-secondary{padding:.75rem 1.6rem;font-size:.6rem}
  .hero-counter{display:none}
  .hero-dots{right:3vw;gap:.5rem}
  /* Infobar */
  .hero-infobar{grid-template-columns:1fr 1fr}
  .hib-cell{padding:.8rem 1rem}
  .hib-value{font-size:.7rem}
  /* About */
  .about-stats{flex-direction:column;gap:1.5rem}
  .about-text{padding:5vh 5vw}
  /* Stripe */
  .feature-stripe{flex-direction:column;text-align:center;gap:1.2rem;padding:2rem 5vw}
  /* Apartments */
  .apartments-section{padding:5vh 4vw}
  .apts-grid{grid-template-columns:1fr}
  .apts-head{flex-direction:column;align-items:flex-start;gap:1rem}
  /* Gallery */
  .gallery-strip{grid-template-columns:repeat(2,1fr);height:auto}
  .gstrip-item{height:160px}
  /* Location */
  .loc-text{padding:5vh 5vw}
  .loc-map{min-height:60vw}
  /* Contact */
  .contact-btns{flex-direction:column;align-items:center}
  .cbtn{width:100%;max-width:320px;text-align:center}
  /* Footer */
  .site-footer{flex-direction:column;text-align:center;padding:1.5rem 5vw}
  /* Lightbox */
  .lb-stage{padding:3.5rem 3rem}
  .lb-contact{display:none}
  .lb-arrow{width:38px;height:38px}
  .lb-thumb{width:46px;height:32px}
}

/* Small mobile */
@media(max-width:480px){
  .topbar{padding:0 4vw}
  .tb-right{gap:1rem}
  .tb-link span{display:none}/* show only icons on small screens */
  .hero-infobar{grid-template-columns:1fr}
  .hib-cell{border-right:none;border-bottom:1px solid var(--border)}
  .hib-cell:last-child{border-bottom:none}
  .hero-title{font-size:clamp(2rem,8vw,2.8rem)}
  .about-visual{min-height:65vw}
  .apts-grid{gap:10px}
  .lb-stage{padding:2.5rem 2rem}
  .lb-arrow.prev{left:.4rem}
  .lb-arrow.next{right:.4rem}
}

/* ── v6.0 AIRBNB BUTTON ── */
.cbtn-airbnb{
  display:inline-flex;align-items:center;justify-content:center;
  background:rgba(255,90,95,0.15);
  border-color:rgba(255,90,95,.5);
}
.cbtn-airbnb:hover{
  background:rgba(255,90,95,.25);
  border-color:rgba(255,90,95,.9);
  color:#fff;
}

/* ── v6.0 GALLERY STRIP — items without photo get filled by JS ── */
.gstrip-item[style="background-image:url('')"]{
  background-color:var(--stone);
}
