/* =============================================================================
   The Arena — Hiranandani Fortune City, Panvel
   Plain static stylesheet. No frameworks.
   ============================================================================= */

/* ---------- Brand font: Zona Pro (as used on the Arena site) ---------- */
@font-face { font-family:'Zona Pro'; src:url('../fonts/ZonaPro-Thin.woff2') format('woff2'); font-weight:100; font-style:normal; font-display:swap; }
@font-face { font-family:'Zona Pro'; src:url('../fonts/ZonaPro-Regular.woff2') format('woff2'); font-weight:400; font-style:normal; font-display:swap; }
@font-face { font-family:'Zona Pro'; src:url('../fonts/ZonaPro-SemiBold.woff2') format('woff2'); font-weight:600; font-style:normal; font-display:swap; }
@font-face { font-family:'Zona Pro'; src:url('../fonts/ZonaPro-Bold.woff2') format('woff2'); font-weight:700; font-style:normal; font-display:swap; }

:root {
  /* Palette taken from the Arena site: brown #9B3A23, gold #C5995B, bronze #B18767, text #414042 */
  --navy:#2B1810; --navy-2:#3A2217;
  --brown:#9B3A23; --brown-hover:#832F1C;
  --gold:#C5995B; --gold-hover:#A8803F; --bronze:#B18767;
  --orange:#F5821F;
  --ink:#414042; --ink-2:#5E5A58; --ink-3:#6B625B;
  --head:#2B1810;
  --bg:#FFFFFF; --bg-soft:#FBF6EE; --line:#E8DCC9;
  --on-dark:#FAF5EC; --on-dark-2:#E3D6C3;
  --error:#B42318;
  --serif:'Zona Pro','Helvetica Neue',system-ui,-apple-system,'Segoe UI',sans-serif;
  --sans:'Zona Pro','Helvetica Neue',system-ui,-apple-system,'Segoe UI',sans-serif;
  --max:1240px; --pad:clamp(18px,4vw,48px); --section:4rem;
  --ease:cubic-bezier(0.16,1,0.3,1);
}

*,*::before,*::after { box-sizing:border-box; }
html { font-size:16px; scroll-behavior:smooth; scroll-padding-top:70px; -webkit-font-smoothing:antialiased; }
body { margin:0; font-family:var(--sans); font-size:1rem; line-height:1.65; color:var(--ink); background:var(--bg); overflow-x:hidden; }
img { max-width:100%; display:block; }
h1,h2,h3 { margin:0; text-wrap:balance; font-family:var(--serif); font-weight:400; color:var(--head); }
p { margin:0 0 16px; text-wrap:pretty; }
ul { margin:0; padding:0; list-style:none; }
a { color:inherit; text-decoration:none; }
button { font-family:inherit; }

.container { max-width:var(--max); margin:0 auto; padding:0 var(--pad); }
.center { text-align:center; }
.eyebrow { font-size:0.75rem; font-weight:600; letter-spacing:0.22em; text-transform:uppercase; color:var(--brown); display:inline-block; }
.hero .eyebrow, .modal__aside .eyebrow, .ty .eyebrow { color:var(--gold); }
.rule { border:0; border-top:1px solid var(--gold); width:56px; margin:18px 0 26px; }
.rule--center { margin-left:auto; margin-right:auto; }
.section-title { font-size:clamp(1.75rem,3.8vw,2.875rem); line-height:1.15; margin-bottom:20px; letter-spacing:-0.01em; }
.section-intro { max-width:70ch; margin:0 auto clamp(36px,5vw,60px); color:var(--ink-2); }
.lead { font-size:clamp(1.0625rem,1.8vw,1.25rem); color:var(--ink); }
.note { font-size:0.8125rem; color:var(--ink-3); margin-top:32px; }

.js .reveal { opacity:0; transform:translateY(22px); transition:opacity 800ms var(--ease),transform 800ms var(--ease); }
.js .reveal.is-visible { opacity:1; transform:none; }
@media (prefers-reduced-motion:reduce){ .js .reveal { opacity:1; transform:none; transition:none; } }

/* ---------- Buttons ---------- */
.btn {
  display:inline-flex; align-items:center; justify-content:center; font-size:0.7812rem; font-weight:600;
  letter-spacing:0.14em; text-transform:uppercase; padding:15px 28px; border-radius:2px; cursor:pointer; gap:9px;
  border:1px solid var(--gold); transition:all 300ms; white-space:nowrap;
}
.btn--gold { background:var(--gold); color:var(--navy); }
.btn--gold:hover { background:var(--gold-hover); border-color:var(--gold-hover); }
.btn--brown { background:var(--brown); border-color:var(--brown); color:#fff; }
.btn--brown:hover { background:var(--brown-hover); border-color:var(--brown-hover); }
.btn--ghost { background:transparent; color:#fff; border-color:rgba(255,255,255,0.55); }
.btn--ghost:hover { border-color:var(--gold); color:var(--gold); }
.btn--dark { background:var(--brown); color:#fff; border-color:var(--brown); margin-top:8px; }
.btn--dark:hover { background:var(--brown-hover); border-color:var(--brown-hover); color:#fff; }
.btn--sm { padding:11px 16px; font-size:0.7188rem; letter-spacing:0.12em; }
.btn--block { width:100%; }
.btn__ico { width:17px; height:17px; flex:0 0 auto; transition:transform 300ms var(--ease); }
.btn:hover .btn__ico { transform:translateX(2px) rotate(-8deg); }
.btn--shine { position:relative; overflow:hidden; }
.btn--shine::after {
  content:''; position:absolute; top:0; left:-80%; width:50%; height:100%; pointer-events:none;
  background:linear-gradient(110deg,transparent 0%,rgba(255,255,255,0.65) 50%,transparent 100%);
  transform:skewX(-22deg); animation:btn-shine 3.2s ease-in-out infinite;
}
.btn--ghost.btn--shine::after { background:linear-gradient(110deg,transparent 0%,rgba(255,255,255,0.35) 50%,transparent 100%); }
@keyframes btn-shine { 0% { left:-80%; } 55%,100% { left:140%; } }
@media (prefers-reduced-motion:reduce){ .btn--shine::after { animation:none; display:none; } }
.btn[disabled] { opacity:0.6; pointer-events:none; }

/* ---------- Header (white bar carrying the brand logos) ---------- */
.nav { position:sticky; top:0; z-index:100; background:#fff; box-shadow:0 1px 0 var(--line); transition:box-shadow 300ms; }
.nav.scrolled { box-shadow:0 4px 22px rgba(43,24,16,0.12); }
.nav__inner { max-width:none; margin:0; padding:10px clamp(18px,3.5vw,64px); display:flex; align-items:center; justify-content:space-between; gap:24px; }
.brand { display:flex; align-items:center; gap:clamp(10px,1.6vw,20px); }
.brand__logo { height:clamp(34px,4vw,52px); width:auto; }
.brand__divider { width:1px; height:clamp(28px,3.2vw,42px); background:var(--line); }
.nav__menu { display:flex; align-items:center; gap:clamp(14px,1.5vw,26px); }
.brand { flex:0 0 auto; }
.nav__link { white-space:nowrap; font-size:0.75rem; font-weight:600; letter-spacing:0.14em; text-transform:uppercase; color:var(--ink); transition:color 250ms; }
.nav__link:hover { color:var(--brown); }

/* ---------- 1. Hero ---------- */
.hero { position:relative; min-height:calc(100vh - 74px); min-height:calc(100svh - 74px); display:flex; flex-direction:column; justify-content:center; padding:4rem 0; background:var(--navy); overflow:hidden; isolation:isolate; }
.hero__slides { position:absolute; inset:0; z-index:-2; }
.hero__slide { filter:saturate(0.82); position:absolute; inset:0; background:center 35%/cover no-repeat; opacity:0; transform:scale(1.06); transition:opacity 1400ms ease,transform 9000ms ease-out; }
.hero__slide.is-active { opacity:1; transform:scale(1); }
.hero__shade { position:absolute; inset:0; z-index:-1;
  background:linear-gradient(90deg,rgba(12,14,18,0.9) 0%,rgba(12,14,18,0.68) 45%,rgba(12,14,18,0.28) 100%),
             linear-gradient(0deg,rgba(12,14,18,0.5) 0%,rgba(12,14,18,0) 35%); }
.hero__grid { position:relative; width:100%; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,440px); gap:clamp(40px,8vw,140px); align-items:center; justify-content:space-between; }
.hero__copy { max-width:720px; }
.hero__copy .eyebrow { padding-left:46px; position:relative; }
.hero__copy .eyebrow::before { content:''; position:absolute; left:0; top:50%; width:34px; height:1px; background:var(--gold); }
.hero__title { font-size:clamp(3.5rem,9vw,8rem); line-height:0.95; color:#fff; letter-spacing:-0.025em; margin:18px 0 18px; text-shadow:0 4px 30px rgba(0,0,0,0.35); }
.hero__launch { display:inline-block; font-family:var(--sans); font-size:clamp(0.8125rem,1.4vw,1.0625rem); font-weight:700; letter-spacing:0.22em; text-transform:uppercase; color:#fff; background:var(--brown); padding:11px 20px; margin-bottom:22px; }
.hero__text { color:var(--on-dark-2); font-size:clamp(1rem,1.6vw,1.25rem); max-width:46ch; }
.hero__cta { display:flex; flex-wrap:wrap; gap:10px; margin-top:30px; }
.hero__cta .btn { padding:15px clamp(14px,1.4vw,20px); font-size:0.75rem; letter-spacing:0.1em; }
.hero > .container { width:100%; max-width:1440px; }
.hero__thumbs { display:flex; gap:10px; margin-top:26px; }
.hero__thumb { padding:0; width:clamp(64px,7vw,92px); aspect-ratio:3/2; border:2px solid rgba(255,255,255,0.35); background:none; border-radius:3px; overflow:hidden; cursor:pointer; opacity:0.75; transition:all 250ms; }
.hero__thumb img { width:100%; height:100%; object-fit:cover; }
.hero__thumb:hover { opacity:1; border-color:var(--gold); }
.hero__thumb.is-active { opacity:1; border-color:var(--gold); box-shadow:0 0 0 2px rgba(197,153,91,0.35); }
@media (prefers-reduced-motion:reduce){ .hero__slide { transition:opacity 400ms; transform:none; } }

/* ---------- 2. Welcome ---------- */
.welcome { padding:var(--section) 0; background:linear-gradient(180deg,#fff 0%,var(--bg-soft) 100%); position:relative; overflow:hidden; }
.welcome::before { content:''; position:absolute; top:-120px; right:-120px; width:380px; height:380px; border-radius:50%; background:radial-gradient(circle,rgba(197,153,91,0.16),transparent 70%); pointer-events:none; }
.welcome > .container { max-width:1440px; }
.welcome__grid { position:relative; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,0.95fr); gap:clamp(40px,9vw,160px); align-items:center; }
.welcome__copy { max-width:620px; }
.welcome__points { margin:6px 0 26px; }
.welcome__points li { position:relative; padding:9px 0 9px 30px; color:var(--ink); border-bottom:1px solid var(--line); }
.welcome__points li:first-child { border-top:1px solid var(--line); }
.welcome__points li::before { content:''; position:absolute; left:2px; top:15px; width:16px; height:16px; border-radius:50%; background:var(--brown) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m4.5 8.3 2.2 2.2 4.8-4.8' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat; }
.welcome__media { position:relative; padding:0 0 28px 28px; }
.welcome__media::before { content:''; position:absolute; left:0; bottom:0; width:78%; height:78%; border:2px solid var(--gold); z-index:0; }
.welcome__img { position:relative; z-index:1; width:100%; aspect-ratio:4/3.3; object-fit:cover; box-shadow:0 24px 60px rgba(43,24,16,0.22); }
.welcome__badge { position:absolute; z-index:2; left:0; bottom:0; display:flex; align-items:center; gap:14px; background:var(--brown); color:#fff; padding:16px 22px; box-shadow:0 14px 34px rgba(155,58,35,0.4); }
.welcome__badge strong { font-family:var(--serif); font-weight:400; font-size:clamp(2.125rem,3.6vw,2.875rem); line-height:1; color:#fff; }
.welcome__badge > span { font-size:0.75rem; font-weight:600; letter-spacing:0.14em; text-transform:uppercase; line-height:1.45; color:var(--on-dark); }

.stats { position:relative; display:grid; grid-template-columns:repeat(4,1fr); margin-top:clamp(48px,6vw,88px); background:#fff; border:1px solid var(--line); box-shadow:0 20px 60px rgba(43,24,16,0.08); }
.stat { position:relative; padding:clamp(26px,3vw,40px) 16px; text-align:center; border-left:1px solid var(--line); transition:background 300ms; }
.stat:first-child { border-left:0; }
.stat::after { content:''; position:absolute; left:20%; right:20%; top:0; height:3px; background:var(--brown); transform:scaleX(0); transition:transform 500ms var(--ease); }
.stat:hover { background:var(--bg-soft); }
.stat:hover::after { transform:scaleX(1); }
.stat__icon { width:34px; height:34px; color:var(--gold); margin:0 auto 12px; }
.stat__num { font-family:var(--serif); font-size:clamp(2rem,4vw,3.5rem); line-height:1.05; color:var(--brown); letter-spacing:-0.01em; }
.stat__label { margin-top:10px; font-size:0.75rem; font-weight:600; letter-spacing:0.2em; text-transform:uppercase; color:var(--ink-2); }

/* ---------- 3. Configuration ---------- */
.config { padding:var(--section) 0; background:var(--bg-soft); border-top:1px solid var(--line); position:relative; overflow:hidden; }
.config::before { content:''; position:absolute; bottom:-160px; left:-160px; width:420px; height:420px; border-radius:50%; background:radial-gradient(circle,rgba(155,58,35,0.08),transparent 70%); pointer-events:none; }
.config > .container { max-width:1440px; }
.cfg__grid { position:relative; display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(18px,2.4vw,40px); margin:clamp(28px,4vw,44px) 0 0; align-items:stretch; }
.cfg { position:relative; background:#fff; border:1px solid var(--line); display:flex; flex-direction:column; overflow:hidden; transition:transform 350ms var(--ease),box-shadow 350ms var(--ease),border-color 350ms; }
.cfg:hover { transform:translateY(-6px); box-shadow:0 24px 56px rgba(43,24,16,0.14); border-color:var(--brown); }
.cfg--featured { border-color:var(--brown); box-shadow:0 18px 44px rgba(155,58,35,0.18); }
.cfg__tag { position:absolute; top:14px; right:-36px; z-index:2; transform:rotate(40deg); background:var(--gold); color:var(--navy); font-size:0.6562rem; font-weight:700; letter-spacing:0.16em; text-transform:uppercase; padding:5px 38px; }
.cfg__top { display:flex; align-items:flex-end; gap:12px; padding:clamp(18px,2vw,26px) clamp(20px,2vw,28px) 16px; color:#fff;
  background:linear-gradient(135deg,#9B3A23 0%,#7E2D1B 100%); position:relative; }
.cfg__top::after { content:''; position:absolute; left:0; right:0; bottom:0; height:3px; background:var(--gold); }
.cfg__num { font-family:var(--serif); font-size:clamp(3rem,5vw,4.125rem); line-height:0.85; color:#fff; }
.cfg__unit { display:flex; flex-direction:column; font-family:var(--serif); font-size:clamp(1.25rem,2vw,1.625rem); line-height:1.1; color:#fff; padding-bottom:2px; }
.cfg__unit small { margin-top:5px; font-family:var(--sans); font-size:0.6562rem; font-weight:600; letter-spacing:0.18em; text-transform:uppercase; color:rgba(255,255,255,0.85); }
.cfg__body { display:flex; flex-direction:column; flex:1; padding:clamp(16px,1.8vw,22px) clamp(20px,2vw,28px) clamp(20px,2.2vw,26px); }
.cfg__line { font-size:1rem; line-height:1.45; color:var(--head); margin-bottom:10px; }
.cfg__list { margin:0 0 18px; flex:1; }
.cfg__list li { position:relative; padding:8px 0 8px 22px; font-size:0.875rem; color:var(--ink-2); border-top:1px solid var(--line); }
.cfg__list li::before { content:''; position:absolute; left:2px; top:15px; width:7px; height:7px; background:var(--gold); transform:rotate(45deg); }

/* ---------- 4. Amenities ---------- */
.amen { padding:var(--section) 0; background:var(--bg); border-top:1px solid var(--line); }
.amen > .container { max-width:1440px; }
.amen__tabs { display:grid; grid-template-columns:repeat(4,1fr); gap:clamp(10px,1.4vw,20px); margin-top:clamp(8px,2vw,20px); }
.amen__tab {
  position:relative; display:flex; align-items:center; gap:14px; padding:14px clamp(14px,1.6vw,22px); text-align:left;
  background:#fff; border:1px solid var(--line); border-radius:4px; cursor:pointer; font-family:inherit; color:var(--head);
  transition:background 300ms,border-color 300ms,color 300ms,box-shadow 300ms,transform 300ms var(--ease);
}
.amen__ico { flex:0 0 auto; width:48px; height:48px; border-radius:50%; display:flex; align-items:center; justify-content:center; background:var(--bg-soft); color:var(--brown); border:1px solid var(--line); transition:all 300ms; }
.amen__ico svg { width:24px; height:24px; }
.amen__txt { display:flex; flex-direction:column; min-width:0; line-height:1.2; }
.amen__txt b { font-family:var(--serif); font-weight:400; font-size:clamp(1rem,1.5vw,1.25rem); color:inherit; }
.amen__txt small { margin-top:5px; font-size:0.6875rem; font-weight:600; letter-spacing:0.16em; text-transform:uppercase; color:var(--ink-3); transition:color 300ms; }
.amen__tab:hover { border-color:var(--brown); transform:translateY(-2px); box-shadow:0 10px 26px rgba(43,24,16,0.1); }
.amen__tab.is-active { background:var(--brown); border-color:var(--brown); color:#fff; box-shadow:0 14px 32px rgba(155,58,35,0.32); }
.amen__tab.is-active .amen__ico { background:rgba(255,255,255,0.14); border-color:rgba(255,255,255,0.35); color:#fff; }
.amen__tab.is-active .amen__txt small { color:rgba(255,255,255,0.8); }
.amen__tab.is-active::after { content:''; position:absolute; left:50%; bottom:-8px; width:14px; height:14px; background:var(--brown); transform:translateX(-50%) rotate(45deg); }
.amen__tab:focus-visible { outline:2px solid var(--gold); outline-offset:2px; }
.amen__panel { display:grid; grid-template-columns:1.05fr 1fr; gap:clamp(24px,4vw,64px); align-items:center; padding:clamp(34px,4vw,56px) 0 0; animation:amen-in 500ms var(--ease); }
.amen__panel[hidden] { display:none; }
@keyframes amen-in { from { opacity:0; transform:translateY(14px); } to { opacity:1; transform:none; } }
.carousel { position:relative; }
.carousel__viewport { overflow:hidden; box-shadow:0 20px 50px rgba(43,24,16,0.18); background:var(--bg-soft); }
.carousel__track { display:flex; transition:transform 600ms var(--ease); will-change:transform; }
.carousel__slide { flex:0 0 100%; }
.carousel__slide img { width:100%; aspect-ratio:16/11; object-fit:cover; display:block; }
.carousel__btn { position:absolute; top:50%; transform:translateY(-50%); z-index:2; width:46px; height:46px; border-radius:50%; border:0; cursor:pointer; background:rgba(255,255,255,0.92); color:var(--brown); display:flex; align-items:center; justify-content:center; box-shadow:0 6px 18px rgba(0,0,0,0.25); transition:all 250ms; }
.carousel__btn svg { width:20px; height:20px; }
.carousel__btn:hover { background:var(--brown); color:#fff; }
.carousel__btn--prev { left:14px; } .carousel__btn--next { right:14px; }
.carousel__dots { position:absolute; left:50%; bottom:16px; transform:translateX(-50%); display:flex; gap:8px; z-index:2; padding:7px 12px; border-radius:20px; background:rgba(43,24,16,0.45); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); }
.carousel__dot { width:9px; height:9px; padding:0; border-radius:50%; border:0; cursor:pointer; background:rgba(255,255,255,0.55); transition:all 300ms; }
.carousel__dot.is-active { background:var(--gold); width:24px; border-radius:5px; }
.carousel__count { position:absolute; top:14px; right:14px; z-index:2; padding:5px 12px; border-radius:20px; background:rgba(43,24,16,0.55); color:#fff; font-size:0.75rem; font-weight:600; letter-spacing:0.1em; }
@media (prefers-reduced-motion:reduce){ .carousel__track { transition:none; } }
.amen__body h3 { font-size:clamp(1.625rem,3vw,2.375rem); line-height:1.15; color:var(--head); }
.amen__tag { color:var(--brown); font-size:0.8125rem; font-weight:600; letter-spacing:0.1em; text-transform:uppercase; margin:8px 0 18px; }
.amen__chips { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:24px; }
.amen__chips li { padding:7px 14px; font-size:0.875rem; color:var(--ink); background:var(--bg-soft); border:1px solid var(--line); border-radius:999px; transition:all 200ms; }
@media (prefers-reduced-motion:reduce){ .amen__panel { animation:none; } }

/* ---------- 5. Connectivity ---------- */
.conn { padding:var(--section) 0; background:var(--bg-soft); border-top:1px solid var(--line); }
.conn > .container, .address > .container { max-width:1440px; }
.conn__grid { display:grid; grid-template-columns:0.8fr 1.2fr; gap:clamp(32px,8vw,140px); align-items:center; margin-top:clamp(28px,4vw,48px); }
.conn__head { font-size:clamp(1.5rem,2.6vw,2rem); color:var(--navy); margin-bottom:18px; }
.conn__list { margin-bottom:28px; }
.conn__list li { padding:14px 0 14px 20px; border-top:1px solid var(--line); position:relative; color:var(--ink); }
.conn__list li:last-child { border-bottom:1px solid var(--line); }
.conn__list li::before { content:''; position:absolute; left:0; top:24px; width:7px; height:7px; background:var(--gold); transform:rotate(45deg); }
.conn__map { position:relative; display:block; border:1px solid var(--line); box-shadow:0 14px 40px rgba(43,24,16,0.1); background:#fff; }
.conn__map img { width:100%; height:auto; }

/* ---------- 6. Address ---------- */
.address { padding:var(--section) 0; background:var(--bg); border-top:1px solid var(--line); }
.address__grid { display:grid; grid-template-columns:1fr 1fr; gap:clamp(36px,8vw,140px); align-items:center; }
.address__img { width:100%; aspect-ratio:4/3.4; object-fit:cover; box-shadow:0 20px 50px rgba(43,24,16,0.15); }

/* ---------- Footer ---------- */
.site-footer { background:var(--navy); color:var(--on-dark-2); }
.site-footer__inner { max-width:1440px; padding-top:clamp(40px,5vw,64px); padding-bottom:clamp(96px,8vw,56px); }
.site-footer__top { display:flex; flex-direction:column; justify-content:center; text-align:center; align-items:center; gap:clamp(24px,5vw,80px); flex-wrap:wrap; }
.site-footer__addr { font-size:0.9062rem; line-height:1.7; margin:0; color:var(--on-dark-2); }
.site-footer__addr strong { color:#fff; font-family:var(--serif); font-weight:400; font-size:1.125rem; }
.site-footer__divider { height:1px; background:rgba(255,255,255,0.14); margin:clamp(24px,3vw,36px) 0; }
.site-footer__legal { font-size:0.7812rem; line-height:1.8; max-width:none; margin:0 0 24px; color:#B8A99A; }
.site-footer__legal a { text-decoration:underline; }
.site-footer__bottom { display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; padding-top:20px; border-top:1px solid rgba(255,255,255,0.1); }
.site-footer__copy { font-size:0.8125rem; margin:0; }
.site-footer__privacy { font-size:0.8125rem; text-decoration:underline; text-underline-offset:3px; color:var(--on-dark-2); }
.site-footer__privacy:hover { color:var(--gold); }
.rera-group { display:flex; flex-wrap:wrap; justify-content:center; gap:clamp(20px,3vw,40px); }
.rera { display:flex; align-items:center; gap:16px; }
.rera__qr { width:104px; height:104px; background:#fff; padding:6px; flex:0 0 auto; }
.rera__no { margin:0 0 6px; font-size:0.875rem; font-weight:600; letter-spacing:0.06em; line-height:1.5; color:#fff; }
.rera__txt a { font-size:0.8125rem; text-decoration:underline; color:var(--on-dark-2); }
.rera__txt a:hover { color:var(--gold); }

/* ---------- Modal + form ---------- */
.modal { position:fixed; inset:0; z-index:1000; display:flex; align-items:center; justify-content:center; padding:clamp(16px,4vw,40px); opacity:0; pointer-events:none; transition:opacity 350ms var(--ease); }
.modal.open { opacity:1; pointer-events:auto; }
.modal__backdrop { position:absolute; inset:0; background:rgba(43,24,16,0.7); }
.modal__card { position:relative; width:min(480px,96vw); max-height:94vh; max-height:94dvh; overflow:auto; display:grid; grid-template-columns:1fr; background:#fff; border-top:3px solid var(--gold); box-shadow:0 24px 64px rgba(0,0,0,0.35); transform:translateY(18px); transition:transform 400ms var(--ease); }
.modal.open .modal__card { transform:none; }
.modal__close { position:absolute; top:14px; right:14px; width:36px; height:36px; background:transparent; border:1px solid var(--line); border-radius:2px; cursor:pointer; color:var(--ink-2); font-size:0.9375rem; z-index:2; }
.modal__close:hover { border-color:var(--gold); color:var(--gold-hover); }
.modal__body { padding:clamp(22px,3vw,34px) clamp(20px,3vw,38px); min-width:0; }
.modal__title { font-size:clamp(1.5rem,2.6vw,1.875rem); line-height:1.15; color:var(--navy); margin:4px 0 4px; }
.modal__sub { font-size:0.875rem; line-height:1.45; color:var(--ink-2); margin:0 0 14px; }

.lead-form { display:flex; flex-direction:column; gap:16px; }
.field { display:flex; flex-direction:column; gap:7px; }
.field__label, .configpick__label { font-size:0.6875rem; font-weight:600; letter-spacing:0.14em; text-transform:uppercase; color:var(--ink-2); }
.field__label b { color:var(--brown); }
.field input {
  font-family:inherit; font-size:0.9375rem; height:50px; padding:0 16px; width:100%;
  background:#fff; color:var(--ink); border:1px solid #D9CBB6; border-radius:3px; outline:none;
  transition:border-color 200ms,box-shadow 200ms,background 200ms;
}
.field input::placeholder { color:#A99B8B; }
.field input:hover { border-color:#A99B8B; }
.field input:focus { border-color:var(--gold); box-shadow:0 0 0 3px rgba(197,153,91,0.25); }
.field__error { font-size:0.7812rem; line-height:1.4; color:var(--error); }
.field--error input { border-color:var(--error); box-shadow:0 0 0 3px rgba(180,35,24,0.1); }
.configpick { display:flex; flex-direction:column; gap:8px; }
.configpick__opts { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.chip { height:44px; font-family:inherit; font-size:0.875rem; font-weight:600; border-radius:3px; cursor:pointer; border:1px solid #D9CBB6; background:#fff; color:var(--ink-2); transition:all 200ms; }
.chip:hover { border-color:var(--brown); color:var(--brown); }
.chip.active:hover { color:#fff; }
.chip.active { border-color:var(--brown); background:var(--brown); color:#fff; box-shadow:0 4px 14px rgba(155,58,35,0.35); }
.form-legal { font-size:0.6875rem; line-height:1.6; color:var(--ink-3); margin:0; text-align:center; }
.form-or { display:flex; align-items:center; gap:12px; margin:2px 0; font-size:0.6875rem; font-weight:600; letter-spacing:0.16em; text-transform:uppercase; color:var(--ink-3); }
.form-or::before, .form-or::after { content:''; flex:1; height:1px; background:var(--line); }

/* intl-tel-input */
.iti { width:100%; --iti-dropdown-bg:#fff; --iti-hover-color:rgba(197,153,91,0.14); --iti-border-color:#D9CBB6; }
.iti__selected-country { border-radius:3px 0 0 3px; }
.iti__country-list { font-size:0.875rem; color:var(--ink); max-width:min(340px,86vw); }
.iti--container { z-index:1100; }

/* Logos */
.modal__logos { display:flex; align-items:center; gap:12px; margin-bottom:12px; padding-right:44px; }
.modal__logos img { height:34px; width:auto; }
.conn__logo { height:64px; width:auto; margin-bottom:20px; }
.site-footer__logos { display:inline-flex; align-items:center; flex-wrap:wrap; gap:clamp(16px,3vw,32px); background:#fff; padding:12px clamp(16px,2.4vw,28px); margin-bottom:18px; }
.site-footer__logos img { height:clamp(38px,4.4vw,54px); width:auto; }

/* ---------- Responsive ---------- */
.nav__toggle { display:none; width:44px; height:44px; padding:0; background:none; border:0; cursor:pointer; flex-direction:column; align-items:center; justify-content:center; gap:5px; }
.nav__toggle span { display:block; width:24px; height:2px; background:var(--ink); border-radius:2px; transition:transform 250ms, opacity 250ms; }
.nav__toggle[aria-expanded="true"] span:nth-child(1) { transform:translateY(7px) rotate(45deg); }
.nav__toggle[aria-expanded="true"] span:nth-child(2) { opacity:0; }
.nav__toggle[aria-expanded="true"] span:nth-child(3) { transform:translateY(-7px) rotate(-45deg); }
@media (max-width:1100px){
  .nav__toggle { display:flex; }
  .nav__menu { display:none; position:absolute; top:100%; left:0; right:0; flex-direction:column; align-items:stretch; gap:0; padding:8px clamp(18px,3.5vw,64px) 18px; background:#fff; box-shadow:0 14px 24px rgba(43,24,16,0.12); }
  .nav__menu.is-open { display:flex; }
  .nav__menu .nav__link { padding:14px 0; border-bottom:1px solid var(--line); }
  .nav__menu .btn--sm { display:inline-flex; justify-content:center; margin-top:14px; }
}
@media (max-width:1024px){
  .hero__grid { grid-template-columns:minmax(0,1fr); }
  .hero__shade { background:linear-gradient(180deg,rgba(12,14,18,0.85) 0%,rgba(12,14,18,0.72) 100%); }
}
@media (max-width:900px){
  .welcome__media { padding:0 0 22px 18px; }
  .welcome__grid, .address__grid, .conn__grid, .cfg__grid, .amen__panel { grid-template-columns:1fr; }
}
@media (max-width:560px){
  .amen__tabs { grid-template-columns:repeat(2,1fr); gap:10px; }
  .amen__tab { padding:12px 10px; gap:10px; }
  .amen__ico { width:38px; height:38px; }
  .amen__ico svg { width:20px; height:20px; }
  .amen__txt b { font-size:0.9375rem; }
  .amen__txt small { font-size:0.625rem; letter-spacing:0.1em; }
  .amen__tab.is-active::after { display:none; }
  .stats { grid-template-columns:repeat(2,1fr); }
  .stat:nth-child(odd) { border-left:0; }
  .stat:nth-child(n+3) { border-top:1px solid var(--line); }
  .hero__cta { flex-wrap:wrap; gap:8px; }
  .hero__cta .btn { flex:1 1 40%; padding-left:12px; padding-right:12px; white-space:normal; text-align:center; }
  .hero__cta   }

/* ---------- Thank-you / notice pages ---------- */
.ty { background:var(--bg-soft); color:var(--ink); min-height:calc(100vh - 140px); display:flex; align-items:center; padding:clamp(40px,7vw,96px) 0; text-align:center; }
.ty__card { max-width:720px; margin:0 auto; background:#fff; border:1px solid var(--line); border-top:4px solid var(--brown); box-shadow:0 24px 60px rgba(43,24,16,0.10); padding:clamp(32px,6vw,64px) clamp(20px,5vw,56px); }
.ty__inner { max-width:680px; margin:0 auto; }
.ty__rule { border:0; border-top:1px solid var(--gold); width:56px; margin:26px auto; }
.ty__list { margin:0 0 32px; padding:0; list-style:none; }
.ty__list li { color:var(--ink-2); margin-bottom:8px; }
.ty__check { width:72px; height:72px; margin:0 auto 20px; border-radius:50%; background:var(--brown); color:#fff; display:grid; place-items:center; box-shadow:0 0 0 8px rgba(155,58,35,0.12); }
.ty__check svg { width:36px; height:36px; }
.ty .eyebrow { color:var(--brown); }
.ty__title { font-size:clamp(2rem,5vw,3.25rem); line-height:1.1; margin:12px 0 0; color:var(--head); }
.ty__lede { color:var(--ink-2); font-size:clamp(1rem,2vw,1.125rem); max-width:52ch; margin:18px auto 28px; }
.ty__steps { list-style:none; margin:0 0 32px; padding:20px; background:var(--bg-soft); border:1px dashed var(--gold); text-align:left; display:grid; gap:14px; }
.ty__steps li { display:flex; align-items:center; gap:14px; color:var(--ink); }
.ty__steps b { flex:0 0 32px; height:32px; border-radius:50%; background:var(--brown); color:#fff; display:grid; place-items:center; font-size:0.875rem; }
.ty__actions { display:flex; flex-wrap:wrap; justify-content:center; gap:12px; }
.btn--ghost-dark { background:transparent; border-color:var(--brown); color:var(--brown); }
.btn--ghost-dark:hover { background:var(--brown); color:#fff; }
.ty__debug { max-width:720px; margin:24px auto 0; background:#fff; border:1px solid var(--line); padding:20px 24px; text-align:left; font-size:0.875rem; }
.ty__debug h2 { margin:0 0 10px; font-size:1.5rem; color:var(--head); }
.ty__debug p { margin:12px 0 6px; }
.ty__debug pre { margin:0; padding:12px; background:#f5f5f5; font:0.75rem/1.5 monospace; white-space:pre-wrap; word-break:break-word; }
.ty__debug .is-ok { color:#1a7f37; }
.ty__debug .is-fail { color:var(--error); }
.ty__note { font-size:0.8125rem; color:var(--ink-3); margin-top:22px; }

/* ---------- Privacy policy page ---------- */
.policy { padding:clamp(48px,7vw,96px) 0; background:var(--bg); }
.policy__inner { max-width:860px; }
.policy__list { margin:0 0 28px; padding-left:20px; list-style:disc; }
.policy__list li { margin-bottom:12px; color:var(--ink-2); }
.policy__list li::marker { color:var(--gold); }
.form-legal a { text-decoration:underline; }

/* ---------- Chat assistant ---------- */
.live-dot { width:8px; height:8px; border-radius:50%; background:#22C55E; box-shadow:0 0 0 0 rgba(34,197,94,0.6); animation:live-pulse 1.8s infinite; flex:0 0 auto; }
@keyframes live-pulse { 70% { box-shadow:0 0 0 8px rgba(34,197,94,0); } 100% { box-shadow:0 0 0 0 rgba(34,197,94,0); } }

.chat-launcher {
  position:fixed; right:clamp(14px,3vw,28px); bottom:clamp(14px,3vw,28px); z-index:600;
  width:60px; height:60px; border-radius:50%; border:0; cursor:pointer; background:var(--navy); color:var(--gold);
  display:flex; align-items:center; justify-content:center; box-shadow:0 12px 32px rgba(0,0,0,0.35);
  transition:transform 250ms var(--ease),opacity 250ms; animation:launcher-ring 2.6s infinite;
}
.chat-launcher:hover { transform:scale(1.06); }
.chat-launcher--hidden { opacity:0; transform:scale(0.6); pointer-events:none; }
.chat-launcher__label { position:absolute; right:70px; white-space:nowrap; background:#fff; color:var(--navy); font-size:0.75rem; font-weight:600; letter-spacing:0.08em; padding:8px 12px; border-radius:3px; box-shadow:0 6px 20px rgba(0,0,0,0.2); opacity:0; transform:translateX(6px); transition:all 250ms; pointer-events:none; }
.chat-launcher:hover .chat-launcher__label, .chat-launcher:focus-visible .chat-launcher__label { opacity:1; transform:none; }
@keyframes launcher-ring { 0% { box-shadow:0 12px 32px rgba(0,0,0,0.35),0 0 0 0 rgba(197,153,91,0.5); } 70%,100% { box-shadow:0 12px 32px rgba(0,0,0,0.35),0 0 0 14px rgba(197,153,91,0); } }
@media (prefers-reduced-motion:reduce){ .chat-launcher, .live-dot { animation:none; } }

.chat {
  position:fixed; right:clamp(12px,2vw,24px); bottom:clamp(12px,2vw,24px); z-index:900;
  width:min(390px,calc(100vw - 24px)); height:min(620px,calc(100vh - 40px)); height:min(620px,calc(100svh - 40px));
  display:flex; flex-direction:column; background:#fff; border-radius:10px; overflow:hidden;
  box-shadow:0 24px 70px rgba(0,0,0,0.4); border-top:3px solid var(--gold);
  opacity:0; visibility:hidden; transform:translateY(24px) scale(0.97); transform-origin:bottom right;
  transition:opacity 300ms var(--ease),transform 300ms var(--ease),visibility 0s 300ms;
}
.chat--open { opacity:1; visibility:visible; transform:none; transition-delay:0s; }
.chat__head { display:flex; align-items:center; gap:12px; padding:12px 14px; background:var(--navy); color:#fff; }
.chat__avatar { width:48px; height:40px; object-fit:contain; background:#fff; border-radius:4px; padding:2px; }
.chat__title { flex:1; min-width:0; display:flex; flex-direction:column; line-height:1.25; }
.chat__title strong { font-size:0.9375rem; font-weight:600; }
.chat__title span { font-size:0.75rem; color:var(--on-dark-2); display:flex; align-items:center; gap:6px; }
.chat__dot { width:8px; height:8px; border-radius:50%; background:#22C55E; display:inline-block; }
.chat__close { width:34px; height:34px; border:1px solid rgba(255,255,255,0.3); background:transparent; color:#fff; border-radius:50%; cursor:pointer; font-size:0.875rem; }
.chat__close:hover { border-color:var(--gold); color:var(--gold); }
.chat__body { flex:1; overflow-y:auto; padding:16px 14px; background:#F6F0E6; display:flex; flex-direction:column; gap:10px; scroll-behavior:smooth; }
.chat__msg { max-width:86%; padding:10px 14px; font-size:0.9062rem; line-height:1.5; border-radius:14px; word-wrap:break-word; animation:chat-in 250ms var(--ease); }
.chat__msg a { text-decoration:underline; }
.chat__msg--bot { align-self:flex-start; background:#fff; color:var(--ink); border-bottom-left-radius:4px; box-shadow:0 1px 2px rgba(43,24,16,0.08); }
.chat__msg--user { align-self:flex-end; background:var(--gold); color:var(--navy); font-weight:600; border-bottom-right-radius:4px; }
.chat__typing { display:flex; gap:5px; padding:14px 16px; }
.chat__typing i { width:7px; height:7px; border-radius:50%; background:#A99B8B; animation:chat-bounce 1s infinite; }
.chat__typing i:nth-child(2) { animation-delay:0.15s; } .chat__typing i:nth-child(3) { animation-delay:0.3s; }
@keyframes chat-bounce { 0%,60%,100% { transform:none; opacity:0.5; } 30% { transform:translateY(-5px); opacity:1; } }
@keyframes chat-in { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:none; } }
.chat__foot { padding:12px 14px; background:#fff; border-top:1px solid var(--line); min-height:64px; max-height:44%; overflow-y:auto; }
.chat__choices { display:flex; flex-wrap:wrap; gap:8px; }
.chat__choice { font-family:inherit; font-size:0.8438rem; font-weight:600; padding:9px 14px; border-radius:20px; cursor:pointer; background:#fff; color:var(--navy); border:1px solid var(--gold); transition:all 200ms; }
.chat__choice:hover { background:var(--gold); }
.chat__input { display:flex; gap:8px; align-items:stretch; }
.chat__field { flex:1; min-width:0; }
.chat__input input { width:100%; height:46px; font-family:inherit; font-size:0.9375rem; padding:0 14px; border:1px solid #D9CBB6; border-radius:23px; outline:none; }
.chat__input input:focus { border-color:var(--gold); box-shadow:0 0 0 3px rgba(197,153,91,0.25); }
.chat__field .iti input { border-radius:23px; }
.chat__send { width:46px; height:46px; flex:0 0 auto; border:0; border-radius:50%; background:var(--navy); color:var(--gold); cursor:pointer; display:flex; align-items:center; justify-content:center; }
.chat__send:hover { background:var(--gold); color:var(--navy); }
.chat__err { font-size:0.7812rem; color:var(--error); margin:0 0 8px 6px; }
@media (max-width:560px){
  .chat { right:8px; left:8px; width:auto; bottom:8px; height:min(86vh,640px); height:min(86svh,640px); }
}

/* ---------- Popup: XL two-column layout, compact so it never needs scrolling ---------- */
.modal .lead-form { gap:12px; }
.modal .field { gap:5px; }
.modal .field input { height:46px; }
.modal .chip { height:40px; }
.modal .btn { padding-top:13px; padding-bottom:13px; }
.modal .form-or { margin:0; }
.modal .form-legal { font-size:0.6562rem; line-height:1.5; }
@media (max-width:760px){
  .modal { padding:10px; align-items:center; }
  .modal__card { grid-template-columns:1fr; width:min(440px,100%); max-height:96vh; max-height:96dvh; }
  .modal__body { padding:18px 18px 16px; }
  .modal__logos { margin-bottom:8px; padding-right:40px; }
  .modal__logos img { height:28px; }
  .modal__title { font-size:1.375rem; }
  .modal__sub, .modal .form-or, .modal   .modal .lead-form { gap:10px; }
  .modal .field input { height:44px; }
  .modal .chip { height:38px; }
  .modal .field__label, .modal .configpick__label { font-size:0.6562rem; }
  .modal__close { top:10px; right:10px; width:32px; height:32px; }
}
@media (max-height:640px){
  .modal .field input { height:40px; }
  .modal .lead-form { gap:8px; }
  .modal__logos { display:none; }
}

/* ---------- Bottom action bar (Call · WhatsApp · Enquire) ---------- */
.dock {
  position:fixed; left:50%; bottom:clamp(14px,2.4vw,26px); z-index:500; transform:translate(-50%,20px);
  display:flex; align-items:center; gap:clamp(4px,1vw,10px); padding:8px; background:#fff; border-radius:999px;
  border:1.5px solid var(--brown); box-shadow:0 14px 40px rgba(43,24,16,0.28);
  opacity:0; pointer-events:none; transition:opacity 500ms var(--ease),transform 500ms var(--ease);
}
.dock.visible { opacity:1; transform:translate(-50%,0); pointer-events:auto; }
.dock__item {
  display:inline-flex; align-items:center; gap:9px; height:46px; padding:0 clamp(14px,2vw,22px); border:0; border-radius:999px;
  background:#fff; color:var(--brown); font-family:inherit; font-size:0.9375rem; font-weight:600; cursor:pointer; white-space:nowrap; transition:background 300ms,color 300ms;
}
.dock__item svg { width:19px; height:19px; flex:0 0 auto; color:var(--brown); transform-origin:50% 60%; transition:color 300ms; animation:dock-wiggle 2.8s ease-in-out infinite; }
.dock__item:hover, .dock__item:focus-visible { background:var(--brown); color:#fff; }
.dock__item:hover svg, .dock__item:focus-visible svg { color:#fff; }
@keyframes dock-wiggle { 0%,55%,100% { transform:rotate(0); } 10% { transform:rotate(-14deg); } 25% { transform:rotate(14deg); } 40% { transform:rotate(-8deg); } }
@media (prefers-reduced-motion:reduce){ .dock__item svg { animation:none; } }
@media (max-width:700px){
  .dock { bottom:12px; }
  .dock__item { height:42px; font-size:0.8125rem; padding:0 11px; gap:6px; }
  .dock__item svg { width:16px; height:16px; }
  .dock { padding:5px; gap:2px; width:calc(100vw - 16px); max-width:calc(100vw - 16px); justify-content:space-between; }
  .dock__item { flex:1 1 auto; min-width:0; justify-content:center; height:40px; font-size:0.75rem; padding:0 8px; gap:4px; }
  .dock__item svg { width:14px; height:14px; }
  .chat-launcher { bottom:86px; }
}
@media (max-width:380px){
  .dock__item { font-size:0.6875rem; padding:0 6px; gap:3px; }
  .dock__item svg { display:none; }
}

@media (max-width:700px){
  .site-footer__bottom { flex-direction:column; align-items:flex-start; }
  .site-footer__brand { width:100%; }
  .site-footer__logos { display:flex; flex-wrap:nowrap; justify-content:space-between; gap:12px; padding:10px 12px; }
  .site-footer__logos img { flex:1 1 0; min-width:0; max-width:48%; height:auto; max-height:44px; object-fit:contain; }
}

/* ---------- Submit loader (full-page, shown while the form posts) ---------- */
.loader { position:fixed; inset:0; z-index:2000; display:flex; align-items:center; justify-content:center; padding:20px; background:rgba(43,24,16,0.82); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); opacity:0; visibility:hidden; transition:opacity 250ms,visibility 0s 250ms; }
.loader.is-on { opacity:1; visibility:visible; transition-delay:0s; }
.loader__box { width:min(380px,100%); text-align:center; background:#fff; border-top:3px solid var(--gold); padding:34px 28px 30px; box-shadow:0 30px 80px rgba(0,0,0,0.45); }
.loader__ring { position:relative; width:84px; height:84px; margin:0 auto 18px; display:flex; align-items:center; justify-content:center; }
.loader__ring span { position:absolute; inset:0; border-radius:50%; border:4px solid var(--line); border-top-color:var(--brown); border-right-color:var(--gold); animation:loader-spin 0.9s linear infinite; }
.loader__ring img { width:40px; height:40px; object-fit:contain; }
@keyframes loader-spin { to { transform:rotate(360deg); } }
.loader__title { font-family:var(--serif); font-size:1.375rem; color:var(--head); margin:0 0 6px; }
.loader__sub { font-size:0.875rem; color:var(--ink-2); margin:0 0 18px; }
.loader__bar { height:4px; background:var(--line); overflow:hidden; border-radius:2px; }
.loader__bar i { display:block; height:100%; width:40%; background:linear-gradient(90deg,var(--brown),var(--gold)); animation:loader-bar 1.2s ease-in-out infinite; }
@keyframes loader-bar { 0% { transform:translateX(-100%); } 100% { transform:translateX(260%); } }
@media (prefers-reduced-motion:reduce){ .loader__ring span, .loader__bar i { animation-duration:3s; } }

/* ---------- Banner info card ---------- */
.hero__card { background:#fff; border-radius:10px; overflow:hidden; box-shadow:0 30px 70px rgba(0,0,0,0.45); border:1px solid var(--brown); }
.info__ribbon { background:var(--brown); color:#fff; text-align:center; font-size:0.7812rem; font-weight:700; letter-spacing:0.16em; text-transform:uppercase; padding:11px 14px; }
.info__body { padding:clamp(20px,2.2vw,30px) clamp(20px,2.2vw,30px) clamp(22px,2.4vw,30px); text-align:center; }
.info__title { font-size:clamp(1.875rem,3vw,2.5rem); line-height:1.1; color:var(--head); font-weight:600; }
.info__sub { margin:6px 0 14px; font-size:0.75rem; font-weight:600; letter-spacing:0.14em; text-transform:uppercase; color:var(--ink-3); }
.hero__rera { display:flex; flex-wrap:wrap; gap:6px 18px; margin:0 0 22px; font-size:0.75rem; font-weight:600; letter-spacing:0.08em; color:rgba(255,255,255,0.85); }
.hero__rera::before { content:"MahaRERA Reg."; color:var(--gold,#C9A36B); text-transform:uppercase; }
.info__pills { display:flex; flex-wrap:wrap; justify-content:center; gap:8px; margin-bottom:16px; }
.info__pills .info__pill { margin-bottom:0; }
.info__pill { display:inline-flex; gap:8px; align-items:center; padding:5px 14px; border:1px solid var(--line); border-radius:999px; background:#fff; font-size:0.7812rem; font-weight:600; color:var(--head); margin-bottom:16px; }
.info__pill span { color:var(--ink-3); font-weight:500; }
.info__stats { display:grid; grid-template-columns:repeat(3,1fr); background:var(--bg-soft); border:1px solid var(--line); border-radius:8px; padding:14px 6px; margin-bottom:16px; }
.info__stats > div { padding:0 6px; border-left:1px solid var(--line); }
.info__stats > div:first-child { border-left:0; }
.info__stats small { display:block; font-size:0.6562rem; font-weight:600; letter-spacing:0.14em; text-transform:uppercase; color:var(--ink-3); margin-bottom:5px; }
.info__stats strong { font-size:0.9375rem; color:var(--head); font-weight:700; }
.info__perks { border:1.5px dashed var(--gold); border-radius:8px; background:#FFFBF3; padding:14px 12px; margin-bottom:18px; }
.info__perks li { font-size:0.7812rem; font-weight:700; letter-spacing:0.08em; text-transform:uppercase; color:var(--brown); line-height:1.9; }
.info__line { margin:0 0 4px; font-size:0.875rem; color:var(--ink-2); }
.info__line strong { color:var(--head); }
.info__price sup { font-size:0.6em; vertical-align:baseline; position:relative; top:-0.35em; }
.info__price small { font-family:var(--sans); font-size:0.42em; font-weight:600; color:var(--ink-3); letter-spacing:0.02em; }
.info__price { margin:0 0 16px; font-family:var(--serif); font-size:clamp(1.625rem,2.6vw,2.125rem); color:var(--head); font-weight:600; }

.carousel__slide { position:relative; }
.carousel__label { position:absolute; left:14px; top:14px; z-index:1; max-width:calc(100% - 100px); padding:8px 14px; border-left:3px solid var(--gold); background:rgba(43,24,16,0.72); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); color:#fff; font-size:0.875rem; font-weight:600; letter-spacing:0.04em; }
.conn__box { position:absolute; left:14px; bottom:14px; max-width:min(300px,calc(100% - 28px)); padding:12px 16px; border-left:3px solid var(--gold); background:rgba(43,24,16,0.82); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); color:#fff; font-size:0.8125rem; line-height:1.5; }
.conn__box b { display:block; margin-bottom:4px; font-size:0.875rem; }
.conn__box ul { margin:0; padding:0; list-style:none; }
@media (max-width:600px){ .conn__box { position:static; max-width:none; } .carousel__label { font-size:0.75rem; padding:6px 10px; } }

.carousel__slide > a { display:block; cursor:zoom-in; }

/* Mobile-sized hero images (same artwork, smaller files) */
@media (max-width:767px){
  .hero__slide:nth-child(1){ background-image:url('../images/hero-2-m.webp') !important; }
  .hero__slide:nth-child(2){ background-image:url('../images/hero-m.webp') !important; }
  .hero__slide:nth-child(3){ background-image:url('../images/hero-3-m.webp') !important; }
  .hero__slide:nth-child(4){ background-image:url('../images/hero-4-m.webp') !important; }
}
