:root{
    --cream:#F2F2F2;
    --cream-2:#eeeeee;
    --ink:#1C1C1C;
    --ink-2:#222222;
    --gold:#85898B;
    --gold-light:#85898B;
    --gold-dim:#85898B;
    --text-dark:#313130;
    --text-muted:#6a6a6a;
    --line:#e1e1df;
    --radius:2px;
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    font-family:'Inter',sans-serif;
    color:var(--text-dark);
    background:var(--cream);
    -webkit-font-smoothing:antialiased;
  }

h2 {font-weight: normal;}

  img{max-width:100%;display:block;}
  a{text-decoration:none;color:inherit;}
  ul{list-style:none;}
  .serif{font-family: 'IM Fell English', serif;}
  .eyebrow{
    text-transform:uppercase;
    letter-spacing:.18em;
    font-size:.72rem;
    font-weight:400;
    color:var(--gold);
  }
  .container{
    max-width:1180px;
    margin:0 auto;
    padding:0px;
  }
  .btn{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:14px 28px;
    font-size:.78rem;
    font-weight:400;
    letter-spacing:.08em;
    text-transform:uppercase;
    border-radius:var(--radius);
    transition:all .25s ease;
    cursor:pointer;
    border:1px solid transparent;
  }
  .btn-gold{background:var(--gold);color:#fff;}
  .btn-gold:hover{background:var(--gold-light);transform:translateY(-1px);}
  .btn-dark{background:var(--ink);color:#f3efe7;}
  .btn-dark:hover{background:#000;}
  .btn-outline{border-color:rgba(255,255,255,.5);color:#fff;}
  .btn-outline:hover{border-color:var(--gold);color:var(--gold);}

  /* ===== HEADER ===== */
  header{
    position:absolute;
    top:0;left:0;right:0;
    z-index:50;
    padding:26px 0;
  }
  header.solid{
    position:fixed;
    background:rgba(27,24,21,.92);
    backdrop-filter:blur(10px);
    padding:16px 0;
    box-shadow:0 4px 24px rgba(0,0,0,.25);
  }
  .nav-wrap{
    display:flex;
    align-items:center;
    justify-content:space-between;
  }
  .logo{
    display:flex;
    align-items:center;
    gap:10px;
    color:#fff;
  }
  .logo svg{width:26px;height:26px;flex-shrink:0;}
  .logo-text{line-height:1.05;}
  .logo-text .l1{font-family: 'IM Fell English', serif;font-size:2rem;letter-spacing:.14em;}
  .logo-text .l2{font-size:.6rem;letter-spacing:.35em;color:var(--gold-light);}
  nav ul{display:flex;gap:34px;}
  nav a{
    color:#f3efe7;
    font-size:.78rem;
    letter-spacing:.06em;
    text-transform:uppercase;
    font-weight:500;
    position:relative;
    padding-bottom:4px;
  }
  nav a.active{color:var(--gold-light);}
  nav a::after{
    content:'';
    position:absolute;left:0;bottom:0;
    width:0;height:1px;background:var(--gold-light);
    transition:width .25s ease;
  }
  nav a:hover::after,nav a.active::after{width:100%;}
  .menu-toggle{display:none;background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;}
  @media (max-width:1240px){ nav ul{gap:22px;} }

  /* ===== HERO ===== */
  .hero{
    position:relative;
    min-height:100vh;
    display:flex;
    align-items:center;
    overflow:hidden;
    background:linear-gradient(100deg,#100e0b 0%,#1c1812 38%,#3a3226 70%,#6b5638 100%);
  }
  .hero-photo{
    position:absolute;inset:0;
    background:
      linear-gradient(100deg, rgba(10,9,7,.92) 0%, rgba(10,9,7,.72) 30%, rgba(20,17,12,.35) 55%, rgba(40,32,20,.15) 75%),
      url('../img/hero-building.jpg') center/cover no-repeat;
  }
  .hero-content{
    position:relative;z-index:2;
    max-width:1180px;
    width:1180px;
    padding:140px 0 100px;
  }
  .hero-content .eyebrow{margin-bottom:22px;display:block;}
  .hero h1{
    font-size:clamp(2.6rem,5.4vw,4.1rem);
    line-height:1.08;
    font-weight:400;
    color:#fdfbf7;
  }
  .hero h1 em{
    font-style:italic;
    font-weight:500;
    color:var(--gold-light);
  }
  .hero-rule{
    width:56px;height:2px;background:var(--gold);
    margin:26px 0 22px;
  }
  .hero p{
    font-size:1.02rem;
    color:#d9d3c6;
    line-height:1.6;
    max-width:420px;
    margin-bottom:38px;
    font-weight:300;
  }

  /* ===== STATS BAR ===== */
  .stats{
    background:#F2F2F2;
    padding:44px 0;
    border-bottom:1px solid var(--line);
  }
  .stats .container{
    display:grid;
    grid-template-columns:repeat(5,1fr);
  }
  .stat{
    text-align:center;
    padding:0 14px;
    border-right:1px solid var(--line);
  }
  .stat:last-child{border-right:none;}
  .stat svg{width:26px;height:26px;color:var(--gold);margin-bottom:12px;}
  .stat-title{font-size:.85rem;font-weight:400;color:var(--text-dark);margin-bottom:4px;}
  .stat-sub{font-size:.72rem;color:var(--text-muted);}

  /* ===== SECTION HEADS ===== */
  .section{padding:110px 0;}
  .section-head{max-width:560px;margin-bottom:56px;}
  .section-head .eyebrow{display:block;margin-bottom:14px;}
  .section-head h2{
    font-size:clamp(1.9rem,3.4vw,2.7rem);
    font-weight:400;
    line-height:1.18;
    color:var(--text-dark);
  }
  .section-head h2 em{font-style:italic;font-weight:500;color:var(--gold-dim);}
  .section-head p{margin-top:16px;color:var(--text-muted);font-weight:300;line-height:1.6;}

  /* ===== STUDIOS ===== */
  .studios-layout{
    display:grid;
    grid-template-columns:.85fr 2.15fr;
    gap:60px;
    align-items:start;
  }
  .studios-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;
  }
  .studio-card{
    background:#fff;
    border:1px solid var(--line);
  }
  .studio-photo{height:150px;overflow:hidden;}
  .studio-photo img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;}
  .studio-card:hover .studio-photo img{transform:scale(1.06);}
  .studio-info{padding:20px;}
  .studio-info h3{font-family: 'IM Fell English', serif;font-size:1.08rem;font-weight:400;margin-bottom:8px;}
  .studio-info p{font-size:.84rem;color:var(--text-muted);line-height:1.5;margin-bottom:14px;font-weight:300;}
  .studio-info .arrow{color:var(--gold-dim);font-size:1rem;}

  /* ===== SECURITY (dark) ===== */
  .security{
    background:var(--ink);
    color:#f3efe7;
    padding:100px 0;
  }
  .security-top{
    display:grid;
    grid-template-columns:minmax(300px,.7fr) 1.65fr;
    gap:0px;
    align-items:center;
  }
  .security-copy{max-width:500px;}
  .security-top .eyebrow{display:block;margin-bottom:14px;}
  .security-top h2{font-size:clamp(1.9rem,3.2vw,2.6rem);font-weight:400;max-width:380px;}
  .security-top h2 em{font-style:italic;color:var(--gold-light);}
  .security-top p{color:#c9c8c7;max-width:340px;font-weight:300;line-height:1.6;margin-top:14px;}
  .security-top .btn-outline{margin-top:26px;}
  .security-grid{
    display:grid;
    grid-template-columns:repeat(5,1fr);
  }
  .security-item{
    background:var(--ink);
    padding:30px 15px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:flex-start;
    text-align:center;
  }
  .security-item img{
    display:block;
    width:80px;
    height:auto;
    margin:0 auto 16px;
  }
  .security-item svg{width:32px;height:32px;color:var(--gold-light);margin:0 auto 16px;}
  .security-item h4{font-size:.86rem;font-weight:400;margin-bottom:8px;color:#f3efe7;}
  .security-item p{font-size:.76rem;color:#c9c8c7;line-height:1.5;font-weight:300;max-width:200px;}
  /* dividers for the 3 + 2 grid */
  .security-grid .security-item{border-right:1px solid rgba(255,255,255,.09);}
  .security-grid .security-item:nth-child(3n),
  .security-grid .security-item:nth-child(-n+3){border-bottom:0px solid rgba(255,255,255,.09);}

  /* ===== LOCATION ===== */
  .location{
    background:var(--cream-2);
    padding:0;
  }
  .location-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    align-items:stretch;
  }
  .location-photo{min-height:520px;overflow:hidden;}
  .location-photo img{width:100%;height:100%;object-fit:cover;}
  .location-copy{
    padding:90px 70px;
    display:flex;
    flex-direction:column;
    justify-content:center;
  }
  .location-copy .eyebrow{display:block;margin-bottom:16px;}
  .location-copy h2{font-size:clamp(1.8rem,3vw,2.4rem);font-weight:400;line-height:1.2;margin-bottom:18px;}
  .location-copy h2 em{font-style:italic;color:var(--gold-dim);}
  .location-copy p{color:var(--text-muted);font-weight:300;line-height:1.65;margin-bottom:32px;max-width:420px;}
  .location-facts{display:flex;gap:36px;margin-bottom:34px;flex-wrap:wrap;}
  .loc-fact{display:flex;align-items:center;gap:12px;}
  .loc-fact svg{width:20px;height:20px;color:var(--gold-dim);flex-shrink:0;}
  .loc-fact strong{display:block;font-size:.86rem;}
  .loc-fact span{display:block;font-size:.74rem;color:var(--text-muted);}

  /* ===== TESTIMONIAL ===== */
  .testimonial{
    background:var(--cream);
    padding:110px 0;
    text-align:center;
    position:relative;
  }
  .testimonial blockquote{
    font-family: 'IM Fell English', serif;
    font-style:italic;
    font-weight:500;
    font-size:clamp(1.3rem,2.6vw,1.9rem);
    line-height:1.5;
    max-width:760px;
    margin:0 auto 24px;
    color:var(--text-dark);
  }
  .testimonial blockquote em{color:var(--gold-dim);font-style:italic;}
  .testimonial cite{
    display:block;
    font-style:normal;
    font-size:.76rem;
    letter-spacing:.1em;
    text-transform:uppercase;
    color:var(--text-muted);
    margin-bottom:28px;
  }
  .dots{display:flex;justify-content:center;gap:8px;}
  .dots span{width:6px;height:6px;border-radius:50%;background:var(--line);}
  .dots span.on{background:var(--gold-dim);}
  .t-arrow{
    position:absolute;top:50%;transform:translateY(-50%);
    width:42px;height:42px;border:1px solid var(--line);border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    cursor:pointer;color:var(--text-muted);
    transition:.2s;
  }
  .t-arrow:hover{border-color:var(--gold-dim);color:var(--gold-dim);}
  .t-arrow.left{left:6%;}
  .t-arrow.right{right:6%;}

  /* ===== CTA (dark) ===== */
  .cta{
    background:var(--ink);
    color:#f3efe7;
    padding:0;
  }
  .cta-grid{
    display:grid;
    grid-template-columns:1.3fr 1fr;
    align-items:center;
  }
  .cta-copy{padding:90px 70px;}
  .cta-copy h2{font-family: 'IM Fell English', serif;font-size:clamp(2rem,3.6vw,2.7rem);font-weight:400;line-height:1.15;margin-bottom:0;}
  .cta-copy h2 em{font-style:italic;color:var(--gold-light);}
  .cta-divider{
    display:flex;align-items:center;gap:40px;
  }
  .cta-copy-inner{flex:1;}
  .vline{width:1px;height:100px;background:rgba(255,255,255,.15);}
  .cta-side{padding:70px;}
  .cta-side p{color:#c9c3b5;font-weight:300;margin-bottom:22px;line-height:1.6;}
  .cta-photo{
    height:100%;
    min-height:380px;
    background:
      linear-gradient(180deg, rgba(10,9,7,.15), rgba(10,9,7,.55)),
      url('../img/studio-plus.jpg') center/cover no-repeat;
  }

  /* ===== FOOTER ===== */
  footer{background:var(--cream-2);padding-top:80px;border-top:1px solid var(--line);}
  .footer-grid{
    display:grid;
    grid-template-columns:1.6fr 1fr 1fr 1.2fr;
    gap:40px;
    padding-bottom:60px;
  }
  .footer-logo{display:flex;align-items:center;gap:10px;margin-bottom:18px;color:var(--text-dark);}
  .footer-logo svg{width:24px;height:24px;color:var(--gold-dim);}
  .footer-logo .l1{font-family: 'IM Fell English', serif;font-size:1.05rem;letter-spacing:.12em;}
  .footer-logo .l2{font-size:.56rem;letter-spacing:.3em;color:var(--text-muted);}
  footer p.about{font-size:.82rem;color:var(--text-muted);line-height:1.6;max-width:260px;margin-bottom:22px;font-weight:300;}
  .social{display:flex;gap:10px;}
  .social a{
    width:34px;height:34px;border:1px solid var(--line);border-radius:50%;
    display:flex;align-items:center;justify-content:center;color:var(--text-dark);
    transition:.2s;
  }
  .social a:hover{background:var(--gold-dim);border-color:var(--gold-dim);color:#fff;}
  .social svg{width:15px;height:15px;}
  .fcol h5{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-dim);margin-bottom:18px;}
  .fcol li{margin-bottom:11px;}
  .fcol a{font-size:.85rem;color:var(--text-muted);}
  .fcol a:hover{color:var(--text-dark);}
  .fcol .contact-line{display:flex;gap:10px;align-items:flex-start;margin-bottom:14px;font-size:.85rem;color:var(--text-muted);}
  .fcol .contact-line svg{width:16px;height:16px;color:var(--gold-dim);flex-shrink:0;margin-top:2px;}
  .footer-bottom{
    border-top:1px solid var(--line);
    padding:22px 0;
    display:flex;
    justify-content:space-between;
    font-size:.74rem;
    color:var(--text-muted);
  }

  /* ===== RESPONSIVE ===== */
  @media (max-width:980px){
    nav{display:none;}
    .menu-toggle{display:block;}
    .stats .container{grid-template-columns:repeat(3,1fr);row-gap:24px;}
    .stat{border-right:none;}
    .studios-layout{grid-template-columns:1fr;}
    .studios-grid{grid-template-columns:repeat(2,1fr);}
    .security-top{grid-template-columns:1fr;gap:46px;}
    .security-copy{max-width:none;}
    .location-grid{grid-template-columns:1fr;}
    .location-copy{padding:60px 36px;}
    .cta-grid{grid-template-columns:1fr;}
    .cta-copy{padding:60px 36px;}
    .cta-divider{flex-direction:column;align-items:flex-start;gap:24px;}
    .vline{display:none;}
    .cta-side{padding:0 36px 60px;}
    .footer-grid{grid-template-columns:1fr 1fr;}
  }
  @media (max-width:600px){
    .container{padding:0 22px;}
    .stats .container{grid-template-columns:repeat(2,1fr);}
    .studios-grid{grid-template-columns:1fr;}
    .security-grid{grid-template-columns:repeat(2,1fr);}
    .security-grid .security-item{border-right:1px solid rgba(255,255,255,.09);border-bottom:none;}
    .security-grid .security-item:nth-child(2n),
    .security-grid .security-item:last-child{border-right:none;}
    .security-grid .security-item:nth-child(-n+4){border-bottom:1px solid rgba(255,255,255,.09);}
    .footer-grid{grid-template-columns:1fr;}
    .footer-bottom{flex-direction:column;gap:8px;text-align:center;}
    .t-arrow{display:none;}
  }




  /*OUR ROOMS PAGE*/

/* ===== PAGE HERO ===== */
  .page-hero{position:relative;min-height:45vh;display:flex;align-items:flex-start;overflow:hidden;background:var(--ink);color:#fdfbf7;}
  .page-hero-photo{position:absolute;inset:0;
    background:linear-gradient(180deg,rgba(10,9,7,.6) 0%,rgba(10,9,7,.3) 45%,rgba(10,9,7,.9) 100%),
    url('../img/hero-building.jpg') center/cover no-repeat;}
  .page-hero .container{position:relative;z-index:2;width:100%;padding-top:170px;padding-bottom:80px;}
  .crumbs{font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:#c9c8c7;margin-bottom:28px;}
  .crumbs a:hover{color:#fff;}
  .crumbs span{margin:0 10px;opacity:.5;}
  .page-hero .eyebrow{display:block;margin-bottom:18px;}
  .page-hero h1{font-size:clamp(2.6rem,5.4vw,4.1rem);line-height:1.08;font-weight:400;}
  .page-hero h1 em{font-style:italic;color:var(--gold-light);}
  .page-hero p{font-size:1.02rem;color:#d9d3c6;line-height:1.6;max-width:470px;font-weight:300;}

  /* ===== JUMP NAV ===== */
  .page-tabs{position:sticky;top:var(--hdr-h,0px);z-index:40;background:#fff;border-bottom:1px solid var(--line);}
  .page-tabs .container{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;}
  .page-tabs .container::-webkit-scrollbar{display:none;}
  .page-tabs a{flex:0 0 auto;padding:18px 18px 17px;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid transparent;margin-bottom:-1px;transition:color .2s,border-color .2s;}
  .page-tabs a:hover{color:var(--text-dark);}
  .page-tabs a.on{color:var(--text-dark);border-bottom-color:var(--text-dark);}
  .page-tabs a.tab-plan{margin-left:auto;color:var(--text-dark);}

  /* ===== INTRO ===== */
  .rooms-intro{padding:100px 0 30px;}
  .rooms-intro .container{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start;}
  .rooms-intro .section-head{margin-bottom:0;}
  .intro-copy p{color:var(--text-muted);font-weight:300;line-height:1.75;margin-bottom:26px;}
  .intro-points{display:flex;flex-wrap:wrap;gap:10px;}
  .intro-points li{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;padding:9px 14px;border:1px solid var(--line);background:#fff;}

  /* ===== STUDIO TYPES ===== */
  .studio-types{padding:30px 0 50px;}
  .studio-detail{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:center;padding:70px 0;border-bottom:1px solid var(--line);scroll-margin-top:140px;}
  .studio-detail:last-child{border-bottom:none;}
  .studio-detail:nth-child(even) .sd-media{order:2;}
  .sd-media{position:relative;}
  .sd-media::before{content:"";position:absolute;inset:22px -22px -22px 22px;border:1px solid rgba(28,28,28,.16);}
  .studio-detail:nth-child(even) .sd-media::before{inset:22px 22px -22px -22px;}
  .sd-photo{position:relative;z-index:1;aspect-ratio:4/3;overflow:hidden;background:var(--cream-2);}
  .sd-photo img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease;}
  .studio-detail:hover .sd-photo img{transform:scale(1.03);}
  .sd-badge{position:absolute;left:18px;bottom:18px;z-index:2;background:#fff;color:var(--text-dark);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;padding:9px 14px;}
  .sd-num{font-family:'IM Fell English',serif;font-size:4.2rem;line-height:1;color:#d4d4d2;margin-bottom:6px;}
  .sd-copy .eyebrow{display:block;}
  .sd-copy h2{font-family:'IM Fell English',serif;font-size:clamp(2rem,3.4vw,2.7rem);line-height:1.1;margin:10px 0 16px;}
  .sd-copy h2 em{font-style:italic;color:var(--gold-dim);}
  .sd-copy > p{color:var(--text-muted);font-weight:300;line-height:1.7;margin-bottom:26px;max-width:460px;}
  .sd-specs{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:22px;}
  .sd-specs div{padding:16px 14px 16px 0;}
  .sd-specs div + div{padding-left:14px;border-left:1px solid var(--line);}
  .sd-specs dt{font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px;}
  .sd-specs dd{font-family:'IM Fell English',serif;font-size:1.2rem;line-height:1.25;}
  .sd-units{margin-bottom:30px;}
  .sd-units strong{display:block;font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted);font-weight:400;margin-bottom:10px;}
  .sd-units span{display:inline-block;font-size:.76rem;padding:5px 9px;margin:0 4px 6px 0;border:1px solid var(--line);background:#fff;}
  .sd-actions{display:flex;gap:12px;flex-wrap:wrap;}
  .btn-line{border-color:var(--text-dark);color:var(--text-dark);}
  .btn-line:hover{background:var(--ink);border-color:var(--ink);color:#fff;}

  /* ===== LAYOUT PLAN BAND ===== */
  .plan-band{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:56px 0;}
  .plan-band .container{display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;}
  .plan-band h3{font-family:'IM Fell English',serif;font-weight:400;font-size:clamp(1.5rem,2.4vw,2rem);}
  .plan-band h3 em{font-style:italic;color:var(--gold-dim);}
  .plan-band p{color:var(--text-muted);font-weight:300;margin-top:6px;font-size:.92rem;}

  /* ===== STUDIO FEATURES ===== */
  .features{padding:110px 0 100px;scroll-margin-top:60px;}
  .features-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line);}
  .feature{padding:34px 30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;}
  .feature svg{width:26px;height:26px;color:var(--gold-dim);margin-bottom:18px;}
  .feature h3{font-family:'IM Fell English',serif;font-weight:400;font-size:1.18rem;margin-bottom:8px;}
  .feature p{font-size:.84rem;color:var(--text-muted);line-height:1.6;font-weight:300;}
  .features-note{max-width:720px;margin:50px auto 0;text-align:center;font-family:'IM Fell English',serif;font-style:italic;font-size:clamp(1.2rem,2.2vw,1.6rem);line-height:1.5;}

  /* ===== INCLUDED SERVICES ===== */
  .services{background:var(--cream-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:50px 0;}
  .services .container{display:grid;grid-template-columns:1.25fr repeat(4,1fr);align-items:center;}
  .services-head .eyebrow{display:block;margin-bottom:8px;}
  .services-head h3{font-family:'IM Fell English',serif;font-weight:400;font-size:1.6rem;line-height:1.2;}
  .services-head h3 em{font-style:italic;color:var(--gold-dim);}
  .service{text-align:center;padding:6px 14px;border-left:1px solid var(--line);}
  .service svg{width:26px;height:26px;color:var(--gold-dim);margin:0 auto 12px;}
  .service strong{display:block;font-size:.85rem;font-weight:400;margin-bottom:3px;}
  .service span{font-size:.72rem;color:var(--text-muted);}

  /* ===== SAFETY + CONVENIENCE (reuse home sections) ===== */
  #safety,#convenience{scroll-margin-top:60px;}
  #safety .security-item p{max-width:210px;}
  #safety .security-item svg{width:46px;height:46px;stroke-width:1.1;margin:16px auto 30px;}
  @media (min-width:601px){
    #safety .security-grid{grid-template-columns:repeat(3,1fr);}
    #safety .security-item:nth-child(3n){border-right:none;}
    #safety .security-item:nth-child(-n+3){border-bottom:1px solid rgba(255,255,255,.09);}
  }

  /* ===== LEASE & FEES ===== */
  .lease{padding:110px 0;background:#fff;border-top:1px solid var(--line);scroll-margin-top:60px;}
  .lease-facts{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);margin-bottom:30px;}
  .lease-fact{padding:30px 28px;}
  .lease-fact + .lease-fact{border-left:1px solid var(--line);}
  .lease-fact dt{font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted);margin-bottom:8px;}
  .lease-fact dd{font-family:'IM Fell English',serif;font-size:clamp(1.5rem,2.4vw,2rem);line-height:1.15;}
  .lease-fact small{display:block;font-size:.78rem;color:var(--text-muted);margin-top:6px;font-weight:300;}
  .lease-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;}
  .lease-card{background:var(--cream);border:1px solid var(--line);padding:38px 36px;display:flex;flex-direction:column;}
  .lease-card > .eyebrow{display:block;margin-bottom:10px;}
  .lease-card h3{font-family:'IM Fell English',serif;font-weight:400;font-size:1.6rem;margin-bottom:24px;}
  .lease-card h3 em{font-style:italic;color:var(--gold-dim);}
  .lease-row{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:18px 0;border-top:1px solid var(--line);}
  .lease-row strong{display:block;font-weight:400;font-size:.95rem;}
  .lease-row span{display:block;font-size:.8rem;color:var(--text-muted);font-weight:300;margin-top:3px;}
  .lease-row .price{font-family:'IM Fell English',serif;font-size:1.45rem;white-space:nowrap;}
  .lease-or{display:flex;align-items:center;gap:14px;font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--text-muted);}
  .lease-or::before,.lease-or::after{content:"";flex:1;height:1px;background:var(--line);}
  .lease-or + .lease-row{border-top:none;}
  .lease-note{margin-top:auto;padding-top:20px;border-top:1px solid var(--line);font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dark);}
  @media (max-width:980px){.lease-grid{grid-template-columns:1fr;}}
  @media (max-width:600px){
    .lease-facts{grid-template-columns:1fr;}
    .lease-fact + .lease-fact{border-left:none;border-top:1px solid var(--line);}
    .lease-card{padding:30px 22px;}
  }

  /*GALLERY PAGE*/

  /* ===== GALLERY ===== */
  .room-gallery{padding:100px 0 110px;scroll-margin-top:60px;}
  .room-gallery .section-head{margin-bottom:44px;}
  .gallery-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:22px;}
  .gallery-filters{display:flex;gap:8px;flex-wrap:wrap;}
  .gallery-filters button{font-family:inherit;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;padding:10px 16px;border:1px solid var(--line);background:#fff;color:var(--text-muted);cursor:pointer;border-radius:var(--radius);transition:all .2s;}
  .gallery-filters button span{margin-left:6px;opacity:.6;}
  .gallery-filters button:hover{color:var(--text-dark);border-color:var(--text-dark);}
  .gallery-filters button.on{background:var(--ink);border-color:var(--ink);color:#fff;}
  .gallery-count{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted);}
  .gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:210px;gap:10px;grid-auto-flow:dense;}
  .g-item{position:relative;border:0;padding:0;background:var(--cream-2);cursor:zoom-in;overflow:hidden;}
  .g-item.big{grid-column:span 2;grid-row:span 2;}
  .g-item[hidden]{display:none;}
  .g-item img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease;}
  .g-item::after{content:"";position:absolute;inset:0;background:rgba(28,28,28,0);transition:background .3s;}
  .g-item:hover img{transform:scale(1.05);}
  .g-item:hover::after{background:rgba(28,28,28,.18);}

  .lightbox{position:fixed;inset:0;z-index:200;background:rgba(14,14,14,.95);display:none;align-items:center;justify-content:center;}
  .lightbox.open{display:flex;}
  .lightbox img{max-width:88vw;max-height:80vh;object-fit:contain;}
  .lb-btn{position:absolute;width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:none;color:#fff;font-size:1.1rem;cursor:pointer;transition:border-color .2s;}
  .lb-btn:hover{border-color:#fff;}
  .lb-close{top:24px;right:24px;}
  .lb-prev{left:3vw;top:50%;transform:translateY(-50%);}
  .lb-next{right:3vw;top:50%;transform:translateY(-50%);}
  .lb-count{position:absolute;bottom:26px;left:0;right:0;text-align:center;color:#c9c8c7;font-size:.74rem;letter-spacing:.16em;}

  /* ===== RESPONSIVE ===== */
  @media (max-width:980px){
    .rooms-intro .container{grid-template-columns:1fr;gap:30px;}
    .studio-detail{grid-template-columns:1fr;gap:54px;padding:56px 0;}
    .studio-detail:nth-child(even) .sd-media{order:0;}
    .sd-media::before,.studio-detail:nth-child(even) .sd-media::before{inset:14px -10px -14px 10px;}
    .features-grid{grid-template-columns:repeat(2,1fr);}
    .services .container{grid-template-columns:repeat(2,1fr);row-gap:28px;}
    .services-head{grid-column:1/-1;}
    .service:nth-child(2n){border-left:none;}
    .gallery-grid{grid-template-columns:repeat(3,1fr);}
  }
  @media (max-width:600px){
    .page-hero{min-height:60vh;}
    .sd-specs{grid-template-columns:1fr 1fr;}
    .sd-specs div:nth-child(3){grid-column:1/-1;padding-left:0;border-left:none;border-top:1px solid var(--line);}
    .features-grid{grid-template-columns:1fr;}
    .gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:150px;}
    .g-item.big{grid-row:span 1;}
    .lb-prev,.lb-next{top:auto;bottom:16px;transform:none;}
  }

  /*ABOUT PAGE*/

  /* ===== INTRO ===== */
  .about-intro{padding:110px 0 100px;}
  .about-intro .container{display:grid;grid-template-columns:1.05fr 1fr;gap:90px;align-items:center;}
  .about-copy .eyebrow{display:block;margin-bottom:14px;}
  .about-copy h2{font-size:clamp(2rem,3.4vw,2.8rem);line-height:1.12;margin-bottom:24px;}
  .about-copy h2 em{font-style:italic;color:var(--gold-dim);}
  .about-copy p{color:var(--text-muted);font-weight:300;line-height:1.75;margin-bottom:18px;max-width:480px;}
  .about-copy p.lead{font-family:'IM Fell English',serif;font-size:1.35rem;line-height:1.45;color:var(--text-dark);}
  .about-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px;}

  /* ===== AT A GLANCE ===== */
  .about-figures{background:var(--ink);color:#f3efe7;padding:60px 0;}
  .about-figures .container{display:grid;grid-template-columns:repeat(4,1fr);}
  .figure{padding:6px 24px;text-align:center;border-left:1px solid rgba(255,255,255,.12);}
  .figure:first-child{border-left:none;}
  .figure strong{display:block;font-family:'IM Fell English',serif;font-weight:400;font-size:clamp(2rem,3.4vw,2.8rem);line-height:1.1;margin-bottom:8px;}
  .figure strong small{font-size:.5em;font-style:italic;color:var(--gold-light);}
  .figure span{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#c9c8c7;}

  /* ===== SAFETY (location layout) ===== */
  .about-safety .location-copy h2{max-width:460px;}

  /* ===== GOOD TO KNOW ===== */
  .about-notes{padding:110px 0;}
  .notes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
  .note{background:#fff;border:1px solid var(--line);padding:36px 32px;}
  .note-num{display:block;font-family:'IM Fell English',serif;font-size:2.4rem;line-height:1;color:#d4d4d2;margin-bottom:22px;}
  .note h3{font-family:'IM Fell English',serif;font-weight:400;font-size:1.3rem;margin-bottom:10px;}
  .note p{font-size:.86rem;color:var(--text-muted);line-height:1.65;font-weight:300;}
  .note a{color:var(--text-dark);border-bottom:1px solid var(--line);white-space:nowrap;}
  .note a:hover{border-color:var(--text-dark);}

  /* ===== FIND US ===== */
  .find-us{background:#fff;border-top:1px solid var(--line);scroll-margin-top:60px;}
  .find-us-grid{display:grid;grid-template-columns:1fr 1.5fr;align-items:stretch;}
  .find-us-copy{padding:90px 70px;display:flex;flex-direction:column;justify-content:center;}
  .find-us-copy .eyebrow{display:block;margin-bottom:14px;}
  .find-us-copy h2{font-size:clamp(1.8rem,3vw,2.4rem);line-height:1.2;margin-bottom:30px;}
  .find-us-copy h2 em{font-style:italic;color:var(--gold-dim);}
  .find-us-lines li{display:flex;gap:14px;align-items:flex-start;padding:16px 0;border-top:1px solid var(--line);}
  .find-us-lines li:last-child{border-bottom:1px solid var(--line);}
  .find-us-lines svg{width:20px;height:20px;color:var(--gold-dim);flex-shrink:0;margin-top:2px;}
  .find-us-lines strong{display:block;font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted);font-weight:400;margin-bottom:4px;}
  .find-us-lines span,.find-us-lines a{font-size:.95rem;color:var(--text-dark);}
  .find-us-lines a:hover{color:var(--gold-dim);}
  .find-us-note{margin-top:24px;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dark);}
  .find-us-map{min-height:480px;background:var(--cream-2);}
  .find-us-map iframe{display:block;width:100%;height:100%;min-height:480px;border:0;filter:grayscale(.85) contrast(1.05);}

  @media (max-width:980px){
    .about-intro .container{grid-template-columns:1fr;gap:60px;}
    .about-figures .container{grid-template-columns:repeat(2,1fr);row-gap:36px;}
    .figure:nth-child(3){border-left:none;}
    .notes-grid{grid-template-columns:1fr;}
    .find-us-grid{grid-template-columns:1fr;}
    .find-us-copy{padding:60px 36px;}
    .find-us-map,.find-us-map iframe{min-height:360px;}
  }
  @media (max-width:600px){
    .about-intro{padding:70px 0;}
    .figure{padding:6px 10px;}
    .find-us-copy{padding:56px 22px;}
  }

  /* ===== ABOUT: BUILDING PHOTOS ===== */
  .about-gallery{background:#fff;border-bottom:1px solid var(--line);}


  /*HOW TO BOOK PAGE*/

  .book{padding:110px 0 100px;}
  .book-layout{display:grid;grid-template-columns:.85fr 1.5fr;gap:90px;align-items:start;}

  /* ===== KEY DATES (sticky) ===== */
  .book-aside{position:sticky;top:110px;background:var(--ink);color:#f3efe7;padding:42px 38px;}
  .book-aside .eyebrow{display:block;margin-bottom:14px;}
  .book-aside h2{font-size:clamp(1.8rem,2.8vw,2.3rem);line-height:1.15;margin-bottom:28px;}
  .book-aside h2 em{font-style:italic;color:var(--gold-light);}
  .book-dates{margin-bottom:30px;}
  .book-dates div{padding:16px 0;border-top:1px solid rgba(255,255,255,.12);}
  .book-dates div:last-child{border-bottom:1px solid rgba(255,255,255,.12);}
  .book-dates dt{font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:#a9a8a7;margin-bottom:4px;}
  .book-dates dd{font-family:'IM Fell English',serif;font-size:1.35rem;}
  .book-dates dd small{font-family:'Inter',sans-serif;font-size:.74rem;color:#a9a8a7;margin-left:6px;}
  .book-aside .btn{width:100%;justify-content:center;}
  .book-aside-note{margin-top:18px;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:#c9c8c7;text-align:center;}

  /* ===== STEPS TIMELINE ===== */
  .steps{list-style:none;counter-reset:none;}
  .step{position:relative;display:grid;grid-template-columns:76px 1fr;gap:34px;padding-bottom:56px;}
  .step:last-child{padding-bottom:0;}
  .step::before{content:"";position:absolute;left:38px;top:76px;bottom:0;width:1px;background:var(--line);}
  .step:last-child::before{display:none;}
  .step-num{width:76px;height:76px;border-radius:50%;border:1px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:center;font-family:'IM Fell English',serif;font-size:1.6rem;color:var(--text-dark);}
  .step-body{padding-top:8px;}
  .step-body .eyebrow{display:block;margin-bottom:8px;}
  .step-body h3{font-family:'IM Fell English',serif;font-weight:400;font-size:clamp(1.5rem,2.4vw,1.9rem);line-height:1.2;margin-bottom:12px;}
  .step-body p{color:var(--text-muted);font-weight:300;line-height:1.75;max-width:540px;}
  .step-body p a{color:var(--text-dark);border-bottom:1px solid var(--line);}
  .step-body p a:hover{border-color:var(--text-dark);}
  .step-actions{margin-top:22px;display:flex;gap:12px;flex-wrap:wrap;}
  .step-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px;max-width:560px;}
  .step-options div{background:#fff;border:1px solid var(--line);padding:18px 20px;}
  .step-options strong{display:block;font-family:'IM Fell English',serif;font-weight:400;font-size:1.15rem;margin-bottom:4px;}
  .step-options span{font-size:.82rem;color:var(--text-muted);font-weight:300;line-height:1.5;}

  /* questions band links */
  .plan-band p a{color:var(--text-dark);border-bottom:1px solid var(--line);}

  @media (max-width:980px){
    .book-layout{grid-template-columns:1fr;gap:60px;}
    .book-aside{position:static;}
  }
  @media (max-width:600px){
    .book{padding:70px 0;}
    .book-aside{padding:34px 24px;}
    .step{grid-template-columns:52px 1fr;gap:18px;padding-bottom:44px;}
    .step::before{left:26px;top:52px;}
    .step-num{width:52px;height:52px;font-size:1.2rem;}
    .step-body{padding-top:2px;}
    .step-options{grid-template-columns:1fr;}
  }


  /*FAQ PAGE*/

  .faq-page{padding:110px 0 100px;}
  .faq-layout{display:grid;grid-template-columns:.75fr 1.6fr;gap:90px;align-items:start;}

  /* ===== SIDEBAR (sticky) ===== */
  .faq-aside{position:sticky;top:110px;}
  .faq-aside .eyebrow{display:block;margin-bottom:14px;}
  .faq-aside h2{font-size:clamp(1.9rem,3vw,2.5rem);line-height:1.15;margin-bottom:28px;}
  .faq-aside h2 em{font-style:italic;color:var(--gold-dim);}
  .faq-topics{display:flex;flex-direction:column;margin-bottom:34px;}
  .faq-topics a{display:flex;justify-content:space-between;padding:14px 0;border-top:1px solid var(--line);font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-dark);transition:color .2s;}
  .faq-topics a:last-child{border-bottom:1px solid var(--line);}
  .faq-topics a span{color:var(--text-muted);}
  .faq-topics a:hover{color:var(--gold-dim);}
  .faq-ask{background:var(--ink);color:#f3efe7;padding:30px 28px;}
  .faq-ask h3{font-family:'IM Fell English',serif;font-weight:400;font-size:1.4rem;margin-bottom:6px;}
  .faq-ask p{font-size:.84rem;color:#c9c8c7;font-weight:300;margin-bottom:20px;}
  .faq-ask .btn{width:100%;justify-content:center;background:#fff;color:var(--ink);}
  .faq-ask .btn:hover{background:var(--cream);}
  .faq-ask-mail{display:block;text-align:center;margin-top:14px;font-size:.82rem;color:#c9c8c7;}
  .faq-ask-mail:hover{color:#fff;}

  /* ===== ACCORDION ===== */
  .faq-group{scroll-margin-top:110px;}
  .faq-group + .faq-group{margin-top:60px;}
  .faq-group > .eyebrow{display:block;margin-bottom:16px;}
  .faq-item{border-top:1px solid var(--line);scroll-margin-top:110px;}
  .faq-group .faq-item:last-child{border-bottom:1px solid var(--line);}
  .faq-item summary{list-style:none;cursor:pointer;position:relative;padding:24px 50px 24px 0;font-family:'IM Fell English',serif;font-size:clamp(1.2rem,2vw,1.4rem);line-height:1.3;color:var(--text-dark);transition:color .2s;}
  .faq-item summary::-webkit-details-marker{display:none;}
  .faq-item summary::after{content:"";position:absolute;right:4px;top:50%;width:30px;height:30px;margin-top:-15px;border:1px solid var(--line);border-radius:50%;
    background:linear-gradient(var(--text-dark),var(--text-dark)) center/10px 1px no-repeat,linear-gradient(var(--text-dark),var(--text-dark)) center/1px 10px no-repeat;transition:transform .25s,border-color .2s;}
  .faq-item[open] summary::after{transform:rotate(45deg);border-color:var(--text-dark);}
  .faq-item summary:hover{color:var(--gold-dim);}
  .faq-item summary:focus-visible{outline:1px solid var(--text-dark);outline-offset:4px;}
  .faq-answer{padding:0 50px 26px 0;}
  .faq-answer p{color:var(--text-muted);font-weight:300;line-height:1.75;max-width:620px;}
  .faq-answer p + p{margin-top:12px;}
  .faq-answer a{color:var(--text-dark);border-bottom:1px solid var(--line);}
  .faq-answer a:hover{border-color:var(--text-dark);}

  @media (max-width:980px){
    .faq-layout{grid-template-columns:1fr;gap:50px;}
    .faq-aside{position:static;}
    .faq-ask{display:none;}
  }
  @media (max-width:600px){
    .faq-page{padding:70px 0;}
    .faq-item summary{padding:20px 44px 20px 0;}
    .faq-answer{padding-right:0;}
  }

  /* contact card shown below the questions on smaller screens */
  .faq-ask-bottom{display:none;margin-top:50px;}
  @media (max-width:980px){ .faq-ask-bottom{display:block;} }