/* VASUNDHARA HOMEPAGE — EDITORIAL REDESIGN
   2026-09-26
   Visual layer only: preserves existing homepage content, interactions and forms.
*/
body.vh-homepage{
  --vh-ink:#172b32;
  --vh-deep:#0d1b20;
  --vh-forest:#203b35;
  --vh-sand:#eee7da;
  --vh-paper:#f7f5f0;
  --vh-gold:#c99a52;
  --vh-line:rgba(23,43,50,.13);
  background:var(--vh-paper);
  color:var(--vh-ink);
}

/* Header: quiet architectural instrument rather than a heavy bar. */
body.vh-homepage .vh-site-nav{
  min-height:82px;
  height:82px;
  padding:12px clamp(24px,4vw,64px);
  display:grid;
  grid-template-columns:minmax(250px,1fr) auto auto;
  align-items:center;
  column-gap:28px;
  background:linear-gradient(180deg,rgba(8,18,21,.66),rgba(8,18,21,0));
  backdrop-filter:blur(0);
  -webkit-backdrop-filter:blur(0);
  transition:background .3s ease,backdrop-filter .3s ease;
}
body.vh-homepage .vh-site-nav.scrolled{
  background:rgba(10,22,25,.94);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}
body.vh-homepage .vh-site-nav .brand{
  align-self:center;
  justify-self:start;
  display:flex;
  align-items:center;
  height:38px;
  margin:0;
}
body.vh-homepage .vh-site-nav .brand span{
  display:block;
  height:38px;
  font-family:Georgia,serif;
  font-size:1.72rem;
  line-height:38px;
  letter-spacing:.18em;
  white-space:nowrap;
}
body.vh-homepage .vh-site-nav nav{
  position:static;
  transform:none;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:clamp(10px,1.35vw,22px);
  margin:0;
  height:50px;
  min-width:0;
}
body.vh-homepage .vh-site-nav nav a{
  display:flex;
  align-items:center;
  justify-content:center;
  height:38px;
  padding:0 0 2px;
  font-size:.64rem;
  line-height:1;
  letter-spacing:.075em;
  text-transform:uppercase;
  opacity:.86;
  white-space:nowrap;
}
body.vh-homepage .vh-site-nav .nav-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:12px;
  margin:0;
  height:50px;
}
body.vh-homepage .vh-site-nav .nav-cta{
  min-height:48px;
  height:48px;
  padding:0 22px;
  border-color:rgba(232,194,125,.6);
  background:rgba(201,154,82,.12);
  font-size:.64rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
/* Hero: cinematic image, restrained copy, one decisive conversion surface. */
body.vh-homepage #hero.hero{
  min-height:100svh;
  height:100svh;
  max-height:none;
  background:#0b171a;
}
body.vh-homepage #hero.hero .hero-slide{
  transform:scale(1.015);
  transition:opacity 1.2s ease,transform 8s ease;
}
body.vh-homepage #hero.hero .hero-slide.is-active{transform:scale(1.045)}
body.vh-homepage #hero.hero:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(5,13,16,.82) 0%,rgba(5,13,16,.46) 43%,rgba(5,13,16,.08) 75%,rgba(5,13,16,.24) 100%),
    linear-gradient(0deg,rgba(5,13,16,.70) 0%,rgba(5,13,16,.03) 56%);
}
body.vh-homepage #hero.hero .hero-copy{
  /* Position is owned by the canonical desktop composition below. */
  z-index:4;
}
body.vh-homepage #hero.hero .hero-copy .eyebrow{
  margin-bottom:18px;
  color:#e8c27d;
  font-size:.58rem;
  letter-spacing:.30em;
}
body.vh-homepage #hero.hero .hero-copy h1{
  max-width:12ch;
  font-size:clamp(4rem,5.8vw,6.2rem);
  line-height:.88;
  letter-spacing:-.052em;
  margin:0 0 18px;
  text-wrap:balance;
}
body.vh-homepage #hero.hero .hero-copy .hero-lede{
  max-width:560px;
  font-size:.86rem;
  line-height:1.55;
  color:rgba(255,255,255,.84);
}
body.vh-homepage #hero.hero .hero-search{
  max-width:720px!important;
  margin:18px 0 9px!important;
  padding:5px;
  min-height:58px;
  height:58px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:10px;
  background:rgba(248,246,239,.96);
  box-shadow:0 18px 55px rgba(0,0,0,.26);
}
body.vh-homepage #hero.hero .search-field{
  height:48px;
  border-color:rgba(23,43,50,.13);
}
body.vh-homepage #hero.hero .hero-search>button{
  height:48px;
  border-radius:7px;
  background:#203f38;
  font-size:.69rem;
  letter-spacing:.09em;
  text-transform:uppercase;
}
body.vh-homepage #hero.hero .hero-commercial-cta{
  margin-top:8px;
}
body.vh-homepage #hero.hero .hero-commercial-cta a{
  color:#f0ce8b;
  font-size:.64rem;
  letter-spacing:.04em;
}
body.vh-homepage #hero.hero .quick-search{
  color:rgba(255,255,255,.72);
  font-size:.61rem;
}
body.vh-homepage #hero.hero .hero-note{
  right:clamp(26px,5vw,72px);
  bottom:clamp(44px,8vh,82px);
  z-index:4;
  max-width:210px;
  font-size:clamp(1.45rem,2.15vw,2.25rem);
  line-height:.94;
  letter-spacing:-.025em;
}
body.vh-homepage #hero.hero .hero-note span{
  margin-top:19px;
  color:#e8c27d;
  font-size:.44rem;
}
body.vh-homepage #hero.hero .hero-scroll{
  right:clamp(24px,3vw,48px);
  top:48%;
  z-index:4;
  color:rgba(255,255,255,.62);
}

/* Category rail becomes a compact architectural index. */
body.vh-homepage .category-rail{
  position:relative;
  z-index:5;
  margin-top:-1px;
  padding:0 clamp(18px,4vw,64px);
  justify-content:flex-start;
  background:#f7f5f0;
  border-bottom:1px solid var(--vh-line);
  box-shadow:none;
}
body.vh-homepage .category-rail button{
  min-width:auto;
  min-height:66px;
  padding:11px 17px;
  flex:0 0 auto;
  border-right:0;
  border-bottom:2px solid transparent;
  font-size:.59rem;
  letter-spacing:.06em;
  text-transform:uppercase;
}
body.vh-homepage .category-rail button span:first-child{display:none}
body.vh-homepage .category-rail button small{font-size:.49rem;letter-spacing:.08em}
body.vh-homepage .category-rail button.active{
  background:transparent;
  color:var(--vh-ink);
  border-bottom-color:var(--vh-gold);
}

/* Catalogue: gallery-first, more breathing room, less dashboard-like. */
body.vh-homepage .catalogue{
  padding-top:clamp(38px,4vw,58px);
  padding-bottom:clamp(64px,7vw,96px);
  background:#f7f5f0;
}
body.vh-homepage .programme-line{
  max-width:1500px;
  color:#647177;
  border-color:var(--vh-line);
  font-size:.55rem;
  letter-spacing:.16em;
}
body.vh-homepage .programme-line strong{color:#263b40}
body.vh-homepage .section-head{margin-bottom:30px}
body.vh-homepage .section-head h2{
  max-width:850px;
  font-size:clamp(3rem,5vw,5.6rem);
  line-height:.92;
  letter-spacing:-.055em;
}
body.vh-homepage .section-head>div:first-child>p:last-child{
  max-width:610px;
  font-size:.9rem;
}
body.vh-homepage .home-grid{gap:22px}
body.vh-homepage .home-card{
  border-radius:0;
  background:#fff;
  box-shadow:0 10px 34px rgba(30,44,47,.06);
  transition:transform .35s ease,box-shadow .35s ease;
}
body.vh-homepage .home-card:hover{
  transform:translateY(-5px);
  box-shadow:0 18px 42px rgba(30,44,47,.12);
}
body.vh-homepage .home-image{
  height:clamp(240px,23vw,340px)!important;
}
body.vh-homepage .home-image:after{
  background:linear-gradient(0deg,rgba(5,13,16,.48),transparent 52%);
}
body.vh-homepage .home-info{padding:19px 19px 21px}
body.vh-homepage .home-info h3{
  font-family:'Playfair Display',Georgia,serif;
  font-size:1.12rem!important;
  letter-spacing:-.02em;
}
body.vh-homepage .home-info p{font-size:.7rem!important;color:#66757b}
body.vh-homepage .home-info .chips{gap:5px}
body.vh-homepage .home-info em{
  border-radius:999px;
  background:#f0eee8;
  padding:5px 8px;
  font-size:.51rem;
}
body.vh-homepage .catalogue-controls{
  padding-top:31px;
}

/* Editorial statement: a strong pause in the scroll. */
body.vh-homepage .thesis{
  padding-top:clamp(92px,10vw,145px);
  padding-bottom:clamp(92px,10vw,145px);
  background:#19342f;
  color:#fff;
}
body.vh-homepage .thesis .kicker,
body.vh-homepage .thesis h2,
body.vh-homepage .thesis p{color:#fff}
body.vh-homepage .thesis h2{
  max-width:900px;
  font-size:clamp(3rem,5.5vw,6rem);
  line-height:.92;
  letter-spacing:-.055em;
}
body.vh-homepage .thesis-cards{gap:0;border-top:1px solid rgba(255,255,255,.16)}
body.vh-homepage .thesis-cards article{
  padding:31px 28px 12px 0;
  border-right:1px solid rgba(255,255,255,.13);
}
body.vh-homepage .thesis-cards article+article{padding-left:28px}
body.vh-homepage .thesis-cards b{color:#e2b96f;font-size:.58rem;letter-spacing:.14em}
body.vh-homepage .thesis-cards h3{color:#fff;font-size:1.45rem}
body.vh-homepage .thesis-cards p{color:rgba(255,255,255,.68);font-size:.76rem}

/* Make split sections feel like architecture spreads. */
body.vh-homepage .split-dark,
body.vh-homepage .split-light,
body.vh-homepage .plot,
body.vh-homepage .region,
body.vh-homepage .landscape,
body.vh-homepage .product-world{
  min-height:680px;
}
body.vh-homepage .land-photo,
body.vh-homepage .plot-photo,
body.vh-homepage .region-photo,
body.vh-homepage .regional-photo,
body.vh-homepage .landscape-photo,
body.vh-homepage .sea-wall{
  min-height:100%;
}
body.vh-homepage .copy,
body.vh-homepage .plot-copy,
body.vh-homepage .region>div:first-child,
body.vh-homepage .landscape-copy,
body.vh-homepage .product-world>div:last-child{
  padding:clamp(70px,8vw,130px);
}
body.vh-homepage .copy h2,
body.vh-homepage .plot h2,
body.vh-homepage .region h2,
body.vh-homepage .landscape h2,
body.vh-homepage .product-world h2{
  font-size:clamp(3rem,5vw,5.5rem);
  line-height:.91;
  letter-spacing:-.055em;
}
body.vh-homepage .split-dark .copy{background:#11232a}
body.vh-homepage .split-light .copy{background:#f3eee5}

/* Finder becomes a clean four-entry gateway. */
body.vh-homepage .finder{
  padding-top:clamp(90px,9vw,135px);
  padding-bottom:clamp(90px,9vw,135px);
  background:#e9e3d8;
}
body.vh-homepage .finder h2{font-size:clamp(3rem,5vw,5.3rem)}
body.vh-homepage .finder-grid{gap:0;border-top:1px solid rgba(23,43,50,.2)}
body.vh-homepage .finder-grid a{
  padding:27px 26px 30px 0;
  border-right:1px solid rgba(23,43,50,.14);
  transition:padding .25s ease,background .25s ease;
}
body.vh-homepage .finder-grid a+ a{padding-left:25px}
body.vh-homepage .finder-grid a:hover{background:rgba(255,255,255,.34);padding-top:23px}
body.vh-homepage .finder-grid b{color:#9a7442;font-size:.58rem}
body.vh-homepage .finder-grid strong{display:block;margin-top:25px;font-family:'Playfair Display',Georgia,serif;font-size:1.35rem}
body.vh-homepage .finder-grid span{display:block;margin-top:8px;color:#647177;font-size:.68rem;line-height:1.55}

/* Collections / gallery: visual rather than catalogue-like. */
body.vh-homepage .collections,
body.vh-homepage .gallery,
body.vh-homepage .materials-light{
  padding-top:clamp(90px,9vw,135px);
  padding-bottom:clamp(90px,9vw,135px);
}
/* Materials: full-bleed photography with a quiet editorial card system.
   Reset the older foundation span/card rules explicitly so the image never
   inherits text spacing or card padding. */
body.vh-homepage .materials-light>div{gap:16px}
body.vh-homepage .materials-light a{
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  min-width:0;
  min-height:100%;
  padding:0 0 20px !important;
  background:#f8f5ee;
  text-align:left;
  border:1px solid rgba(23,43,50,.10);
  box-shadow:0 10px 28px rgba(35,45,45,.07);
  transition:transform .3s ease,box-shadow .3s ease;
}
body.vh-homepage .materials-light a:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 38px rgba(35,45,45,.12);
}
body.vh-homepage .materials-light .material-image{
  display:block !important;
  width:100% !important;
  height:230px !important;
  min-height:230px;
  margin:0 !important;
  padding:0 !important;
  aspect-ratio:auto;
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
  flex:none;
}
body.vh-homepage .materials-light a:nth-child(1) .material-image{
  background-image:url("https://commons.wikimedia.org/wiki/Special:FilePath/Stone_Wall_Construction_in_Kodaikanal.jpg?width=1600");
}
body.vh-homepage .materials-light a:nth-child(2) .material-image{
  background-image:url("https://commons.wikimedia.org/wiki/Special:FilePath/Brick_temple_Bhitargaon_Kanpur.jpg?width=1600");
}
body.vh-homepage .materials-light a:nth-child(3) .material-image{
  background-image:url("https://commons.wikimedia.org/wiki/Special:FilePath/Premises_of_Kamteswari_Temple%2C_Gosanimari%2C_Dinhata%2C_Cooch_Behar%2C_West_Bengal%2C_India._23.jpg?width=1600");
}
body.vh-homepage .materials-light a:nth-child(4) .material-image{
  background-image:url("https://commons.wikimedia.org/wiki/Special:FilePath/Traditional_Kinnauri_house%2C_Sangla%2C_Himachal_Pradesh%2C_India.jpg?width=1600");
}
body.vh-homepage .materials-light a strong{
  display:block;
  margin:19px 22px 0;
  color:#173447;
  font:400 1.5rem/1.05 "Playfair Display",Georgia,serif;
  letter-spacing:-.02em;
}
body.vh-homepage .materials-light a>span:not(.material-image){
  display:block;
  margin:9px 22px 0;
  color:#657278;
  font:400 .76rem/1.5 "DM Sans",Arial,sans-serif;
}
body.vh-homepage .materials-light a small{
  display:block;
  margin:13px 22px 0;
  padding-top:10px;
  border-top:1px solid rgba(23,43,50,.10);
  color:#8b7a61;
  font:500 .46rem/1.35 Arial,sans-serif;
  letter-spacing:.055em;
  text-transform:uppercase;
}
@media(max-width:750px){
  body.vh-homepage .materials-light .material-image{
    height:210px !important;
    min-height:210px;
  }
}
body.vh-homepage .collections{background:#f7f5f0}
body.vh-homepage .collection-grid{gap:1px;background:var(--vh-line)}
body.vh-homepage .collection-grid a{
  min-height:270px;
  padding:28px;
  background:#eee9df;
  transition:background .3s ease;
}
body.vh-homepage .collection-grid a:hover{background:#e4d9c8}
body.vh-homepage .collection-grid b{font-size:clamp(1.55rem,2.2vw,2.25rem)}
body.vh-homepage .gallery{background:#ddd7cc}
body.vh-homepage .mosaic{gap:4px;grid-template-rows:320px 320px}
body.vh-homepage .mosaic span{font-size:.54rem;letter-spacing:.19em}

/* Research / network hierarchy. */
body.vh-homepage .network{
  padding-top:clamp(52px,5vw,76px);
  padding-bottom:clamp(64px,6vw,88px);
  background:#f7f5f0;
}
body.vh-homepage .network h2,
body.vh-homepage .research h2{
  max-width:920px;
  font-size:clamp(2.8rem,4.55vw,5rem);
  line-height:.91;
}
body.vh-homepage .network-map{
  height:360px;
  min-height:0;
  background:
    radial-gradient(circle at center,rgba(201,154,82,.32),transparent 19%),
    linear-gradient(135deg,#dce5e0,#c7d4ce);
}
body.vh-homepage .research{
  padding-top:clamp(90px,9vw,135px);
  padding-bottom:clamp(90px,9vw,135px);
  background:#ece7de;
}
body.vh-homepage .research-grid{gap:1px;background:rgba(23,43,50,.13)}
body.vh-homepage .research-grid article{padding:36px;background:#f8f6f1;border:0}
body.vh-homepage .research-grid article h3{font-size:1.65rem}

/* Dark partner / PIN bands become intentional brand anchors. */
body.vh-homepage .partners{
  padding-top:clamp(72px,7vw,104px);
  padding-bottom:clamp(72px,7vw,104px);
  background:#0f2223;
}
body.vh-homepage .partners h2{
  max-width:760px;
  font-size:clamp(2.8rem,4.25vw,4.7rem);
  line-height:.92;
  letter-spacing:-.045em;
}
body.vh-homepage .partners p{
  max-width:650px;
  margin-top:24px;
  font-size:.86rem;
  line-height:1.7;
}
body.vh-homepage .partner-points{
  gap:10px;
  padding-left:2vw;
}
body.vh-homepage .partner-points span{
  padding:22px 24px;
  min-height:72px;
  display:flex;
  align-items:center;
  border-color:rgba(255,255,255,.12);
  background:rgba(255,255,255,.018);
}
body.vh-homepage .pin-check{
  padding-top:clamp(76px,8vw,110px);
  padding-bottom:clamp(76px,8vw,110px);
  background:#27473e;
}
body.vh-homepage .trust{
  background:#0d1b20;
}

/* Final CTA: simpler, more premium. */
body.vh-homepage .final-cta{
  min-height:700px;
  height:700px;
}
body.vh-homepage .final-bg{
  background-image:
    linear-gradient(90deg,rgba(7,16,19,.74),rgba(7,16,19,.20)),
    url('https://commons.wikimedia.org/wiki/Special:FilePath/Dawn_at_chitkul_village.jpg?width=2400');
  transform:scale(1.02);
}
body.vh-homepage .final-cta>div:last-child{max-width:800px;padding:30px}
body.vh-homepage .final-cta h2{font-size:clamp(3.5rem,6vw,6.6rem);line-height:.88;letter-spacing:-.055em}
body.vh-homepage .final-cta .journey{
  display:inline-flex;
  margin-top:18px;
  min-height:52px;
  padding:0 26px;
  border:1px solid rgba(255,255,255,.5);
  border-radius:999px;
  background:#e1b86d;
  color:#18312f;
  align-items:center;
  font-weight:700;
}

/* Footer geometry is owned by sitewide-hero-system.css. */

/* Mobile: preserve the editorial hierarchy without desktop geometry leaks. */
@media(max-width:750px){
  body.vh-homepage .vh-site-nav{height:72px;min-height:72px;padding:12px 18px}
  body.vh-homepage .vh-site-nav .brand span{font-size:1.08rem}
  body.vh-homepage #hero.hero{height:auto;min-height:820px;max-height:none}
  body.vh-homepage #hero.hero .hero-copy{
    left:18px!important;right:18px!important;bottom:34px!important;
    width:auto!important;max-width:none!important;
  }
  body.vh-homepage #hero.hero .hero-copy h1{font-size:clamp(3.25rem,15vw,5rem);line-height:.87}
  body.vh-homepage #hero.hero .hero-lede{font-size:.83rem}
  body.vh-homepage #hero.hero .hero-search{height:auto;min-height:0;grid-template-columns:1fr!important}
  body.vh-homepage #hero.hero .search-field{border-right:0;border-bottom:1px solid #d8d6cf}
  body.vh-homepage #hero.hero .hero-search>button{height:48px}
  body.vh-homepage #hero.hero .hero-note,
  body.vh-homepage #hero.hero .hero-scroll{display:none}
  body.vh-homepage .category-rail{padding:0 8px}
  body.vh-homepage .category-rail button{min-height:58px;padding:10px 12px}
  body.vh-homepage .catalogue,
  body.vh-homepage .thesis,
  body.vh-homepage .finder,
  body.vh-homepage .collections,
  body.vh-homepage .gallery,
  body.vh-homepage .network,
  body.vh-homepage .research,
  body.vh-homepage .materials-light{padding-left:20px;padding-right:20px}
  body.vh-homepage .home-grid{grid-template-columns:1fr 1fr;gap:10px}
  body.vh-homepage .home-image{height:210px!important}
  body.vh-homepage .home-info{padding:13px}
  body.vh-homepage .home-info p{font-size:.63rem!important}
  body.vh-homepage .thesis-cards{grid-template-columns:1fr}
  body.vh-homepage .thesis-cards article,
  body.vh-homepage .thesis-cards article+article{padding:22px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.13)}
  body.vh-homepage .finder-grid{grid-template-columns:1fr}
  body.vh-homepage .finder-grid a,
  body.vh-homepage .finder-grid a+a{padding:23px 0;border-right:0;border-bottom:1px solid rgba(23,43,50,.14)}
  body.vh-homepage .split-dark,
  body.vh-homepage .split-light,
  body.vh-homepage .plot,
  body.vh-homepage .region,
  body.vh-homepage .landscape,
  body.vh-homepage .product-world{min-height:0}
  body.vh-homepage .land-photo,
  body.vh-homepage .plot-photo,
  body.vh-homepage .region-photo,
  body.vh-homepage .regional-photo,
  body.vh-homepage .landscape-photo,
  body.vh-homepage .sea-wall{min-height:52vh}
  body.vh-homepage .copy,
  body.vh-homepage .plot-copy,
  body.vh-homepage .region>div:first-child,
  body.vh-homepage .landscape-copy,
  body.vh-homepage .product-world>div:last-child{padding:68px 24px}
  body.vh-homepage .collection-grid{grid-template-columns:1fr}
  body.vh-homepage .mosaic{grid-template-columns:1fr;grid-template-rows:260px 210px 210px}
  body.vh-homepage .network-grid,
  body.vh-homepage .research-grid{grid-template-columns:1fr}
  body.vh-homepage .network-map{height:300px}
  body.vh-homepage .partner-points{grid-template-columns:1fr 1fr}
  body.vh-homepage .final-cta{height:560px;min-height:560px}
  body.vh-homepage .final-cta h2{font-size:clamp(3.1rem,14vw,5rem)}
  body.vh-homepage footer{align-items:flex-start;flex-direction:column}
}
@media(max-width:430px){
  body.vh-homepage .home-grid{grid-template-columns:1fr}
  body.vh-homepage .partner-points{grid-template-columns:1fr}
}

/* Editorial gallery rhythm — break the uniform card grid without changing catalogue data. */
@media(min-width:1200px){
  body.vh-homepage .home-grid .home-card:first-child{grid-column:span 2}
  body.vh-homepage .home-grid .home-card:first-child .home-image{height:clamp(300px,31vw,460px)!important}
  body.vh-homepage .home-grid .home-card:first-child .home-info{padding:24px 24px 27px}
  body.vh-homepage .home-grid .home-card:first-child .home-info h3{font-size:1.35rem!important}
  body.vh-homepage .home-grid .home-card:nth-child(6){margin-top:42px}
  body.vh-homepage .home-grid .home-card:nth-child(7){margin-top:42px}
}
@media(min-width:751px){
  /* Image mosaic should read as a composition, not a two-column template. */
  body.vh-homepage .mosaic{grid-template-columns:1.55fr .72fr .72fr;grid-template-rows:250px 250px}
  body.vh-homepage .mosaic .m1{grid-column:1;grid-row:1/3}
  body.vh-homepage .mosaic .m2{grid-column:2;grid-row:1}
  body.vh-homepage .mosaic .m3{grid-column:3;grid-row:1/3}
  body.vh-homepage .mosaic .m4{display:block;grid-column:2;grid-row:2}
}
body.vh-homepage .gallery .section-head-simple{
  max-width:var(--vh-content);
  margin:0 auto 42px;
}
body.vh-homepage .gallery .section-head-simple h2{
  max-width:900px;
  font-size:clamp(3rem,5vw,5.4rem);
  line-height:.9;
  letter-spacing:-.055em;
}
body.vh-homepage .gallery .mosaic>div{
  transition:transform .5s ease,filter .5s ease;
}
body.vh-homepage .gallery .mosaic>div:hover{
  transform:scale(.992);
  filter:saturate(1.06);
}
body.vh-homepage .gallery .mosaic span{
  background:rgba(8,18,21,.38);
  padding:7px 10px;
  left:16px;
  bottom:16px;
}

/* Subtle section separators: architectural datum lines. */
body.vh-homepage .catalogue,
body.vh-homepage .finder,
body.vh-homepage .collections,
body.vh-homepage .gallery,
body.vh-homepage .network,
body.vh-homepage .research{
  position:relative;
}
body.vh-homepage .catalogue:before,
body.vh-homepage .finder:before,
body.vh-homepage .collections:before,
body.vh-homepage .gallery:before,
body.vh-homepage .network:before,
body.vh-homepage .research:before{
  content:"";
  position:absolute;
  top:0;
  left:clamp(20px,4vw,64px);
  right:clamp(20px,4vw,64px);
  border-top:1px solid var(--vh-line);
  pointer-events:none;
}


/* Visual storytelling pass — India-first image rhythm.
   Unsplash references used here are published as free-to-use under the Unsplash License.
   The existing India architecture references remain source-linked in the foundation layer.
*/
body.vh-homepage #hero.hero .hero-slide{
  background-image:url("https://amazingarchitecture.com/storage/files/1/architecture-firms/architecture-interspace/house-on-a-farm/house_on_a_farm_architecture_interspace_karaikal_pondicherry_india-18.jpg");
  background-position:center 48%;
}
body.vh-homepage .land-photo{
  background-image:
    linear-gradient(90deg,rgba(8,20,22,.08),rgba(8,20,22,.08)),
    url("https://amazingarchitecture.com/storage/files/1/architecture-firms/architecture-interspace/house-on-a-farm/house_on_a_farm_architecture_interspace_karaikal_pondicherry_india-18.jpg");
  background-position:center;
}
body.vh-homepage .plot-photo{
  background-image:
    linear-gradient(0deg,rgba(7,18,24,.44),rgba(7,18,24,.02)),
    url("https://amazingarchitecture.com/storage/files/1/architecture-firms/vpa-architects/tamara-villa/35-tamara-villa-vpa-architects-india.jpg");
  background-position:center;
}
body.vh-homepage .collection-grid a{
  background-image:
    linear-gradient(0deg,rgba(5,15,21,.76),rgba(5,15,21,.08)),
    url("https://amazingarchitecture.com/storage/files/1/architecture-firms/architecture-interspace/house-on-a-farm/house_on_a_farm_architecture_interspace_karaikal_pondicherry_india-18.jpg");
}
body.vh-homepage .collection-grid a:nth-child(2){
  background-image:
    linear-gradient(0deg,rgba(5,15,21,.76),rgba(5,15,21,.08)),
    url("https://amazingarchitecture.com/storage/files/1/architecture-firms/vpa-architects/tamara-villa/35-tamara-villa-vpa-architects-india.jpg");
}
body.vh-homepage .collection-grid a:nth-child(3){
  background-image:
    linear-gradient(0deg,rgba(5,15,21,.76),rgba(5,15,21,.08)),
    url("https://assets.architecturaldigest.in/photos/66fc286088c82aa685f9ad3b/master/w_1600%2Cc_limit/05.jpg");
}
body.vh-homepage .collection-grid a:nth-child(4){
  background-image:
    linear-gradient(0deg,rgba(5,15,21,.76),rgba(5,15,21,.08)),
    url("https://amazingarchitecture.com/storage/files/1/architecture-firms/architecture-interspace/house-on-a-farm/house_on_a_farm_architecture_interspace_karaikal_pondicherry_india-18.jpg");
}
body.vh-homepage .mosaic .m1{
  background-image:
    linear-gradient(0deg,rgba(5,15,21,.44),transparent),
    url("https://amazingarchitecture.com/storage/files/1/architecture-firms/architecture-interspace/house-on-a-farm/house_on_a_farm_architecture_interspace_karaikal_pondicherry_india-18.jpg");
}
body.vh-homepage .mosaic .m2{
  background-image:
    linear-gradient(0deg,rgba(5,15,21,.44),transparent),
    url("https://amazingarchitecture.com/storage/files/1/architecture-firms/vpa-architects/tamara-villa/35-tamara-villa-vpa-architects-india.jpg");
}
body.vh-homepage .mosaic .m3{
  background-image:
    linear-gradient(0deg,rgba(5,15,21,.44),transparent),
    url("https://amazingarchitecture.com/storage/files/1/architecture-firms/vpa-architects/tamara-villa/35-tamara-villa-vpa-architects-india.jpg");
}
body.vh-homepage .mosaic .m4{
  background-image:
    linear-gradient(0deg,rgba(5,15,21,.44),transparent),
    url("https://assets.architecturaldigest.in/photos/66fc286088c82aa685f9ad3b/master/w_1600%2Cc_limit/05.jpg");
}
body.vh-homepage .regional-photo{
  background-image:
    linear-gradient(0deg,rgba(5,15,21,.20),rgba(5,15,21,.02)),
    url("https://assets.architecturaldigest.in/photos/66fc286088c82aa685f9ad3b/master/w_1600%2Cc_limit/05.jpg");
  background-position:center;
}
body.vh-homepage .landscape-photo{
  background-image:
    linear-gradient(90deg,rgba(5,9,22,.08),rgba(8,10,24,.72)),
    url("https://commons.wikimedia.org/wiki/Special:FilePath/Chitkul_in_the_evening.jpg?width=2400");
  background-position:center;
}
body.vh-homepage .final-bg{
  background-image:
    linear-gradient(0deg,rgba(4,9,20,.76),rgba(13,13,38,.12)),
    url("https://commons.wikimedia.org/wiki/Special:FilePath/Dawn_at_chitkul_village.jpg?width=2400");
}
@media(max-width:750px){
  body.vh-homepage #hero.hero .hero-slide{background-position:62% center}
  body.vh-homepage .plot-photo,
  body.vh-homepage .land-photo,
  body.vh-homepage .regional-photo,
  body.vh-homepage .landscape-photo{background-position:center}
}


/* Homepage micro-elements kept out of markup. */
body.vh-homepage .hero-commercial-cta{
  margin:18px 0 0;
  text-align:center;
}
body.vh-homepage .hero-commercial-cta a{
  color:inherit;
  text-decoration:underline;
  text-underline-offset:4px;
  font-weight:700;
}
body.vh-homepage .suggestion-status{
  padding:14px;
  font-size:.68rem;
}


/* 2026-09-26 legibility pass — thesis, finder, final CTA */
body.vh-homepage .thesis-cards article{
  background:rgba(255,255,255,.045);
  border-top:2px solid #e2b96f;
  border-right:1px solid rgba(255,255,255,.10);
  padding:27px 24px 25px;
}
body.vh-homepage .thesis-cards h3{
  color:#fff;
  margin-top:16px;
}
body.vh-homepage .thesis-cards p{
  color:rgba(255,255,255,.72);
  margin:0;
}
body.vh-homepage .finder{
  color:#24343b;
}
body.vh-homepage .finder h2{
  color:#17232d;
  max-width:820px;
}
body.vh-homepage .finder>div>p{
  color:#5e6c73;
}
body.vh-homepage .finder-grid a{
  color:#24343b;
  background:rgba(255,255,255,.22);
  border-color:rgba(23,43,50,.15);
}
body.vh-homepage .finder-grid a+ a{
  border-left:0;
}
body.vh-homepage .finder-grid strong{
  color:#17232d;
}
body.vh-homepage .finder-grid span{
  color:#647177;
}
body.vh-homepage .final-bg{
  background-image:
    linear-gradient(90deg,rgba(4,13,21,.82),rgba(4,13,21,.48)),
    linear-gradient(180deg,rgba(4,13,21,.12),rgba(4,13,21,.35)),
    url('https://commons.wikimedia.org/wiki/Special:FilePath/Dawn_at_chitkul_village.jpg?width=2400');
}
body.vh-homepage .final-cta>div:last-child{
  width:min(1100px,calc(100% - 48px));
  max-width:1100px;
  padding:30px;
}
body.vh-homepage .final-cta .kicker{
  display:block !important;
  width:100% !important;
  margin:0 auto !important;
  color:#e2b96f;
  text-align:center !important;
}
body.vh-homepage .final-cta p:not(.kicker){
  color:rgba(255,255,255,.86);
}
@media(min-width:751px){
  body.vh-homepage .thesis-cards article{
    min-height:190px;
  }
}


/* 2026-09-26 finder grid refinement — stable desktop cells, single-column mobile */
body.vh-homepage .finder-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0;
  border:1px solid rgba(23,43,50,.16);
  background:rgba(23,43,50,.16);
}
body.vh-homepage .finder-grid a,
body.vh-homepage .finder-grid a+ a{
  min-width:0;
  min-height:190px;
  margin:0;
  padding:28px 30px;
  border:0;
  background:#eee9df;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  transition:background .2s ease;
}
body.vh-homepage .finder-grid a:nth-child(odd){
  border-right:1px solid rgba(23,43,50,.16);
}
body.vh-homepage .finder-grid a:nth-child(-n+2){
  border-bottom:1px solid rgba(23,43,50,.16);
}
body.vh-homepage .finder-grid a:hover{
  padding-top:28px;
  background:#f4f0e8;
}
body.vh-homepage .finder-grid b{
  display:block;
  margin:0;
}
body.vh-homepage .finder-grid strong{
  margin:18px 0 0;
  font-size:clamp(1.45rem,2vw,2rem);
  line-height:1.08;
}
body.vh-homepage .finder-grid span{
  margin-top:8px;
  font-size:.76rem;
  line-height:1.5;
}
@media(max-width:750px){
  body.vh-homepage .finder-grid{
    grid-template-columns:1fr;
    width:100%;
  }
  body.vh-homepage .finder-grid a,
  body.vh-homepage .finder-grid a+ a{
    min-height:190px;
    padding:24px 22px;
    border:0;
    border-bottom:1px solid rgba(23,43,50,.16);
  }
  body.vh-homepage .finder-grid a:last-child{
    border-bottom:0;
  }
  body.vh-homepage .finder-grid a:nth-child(odd){
    border-right:0;
  }
}


/* 2026-09-26 finder cell inset — explicit content safe area */
body.vh-homepage .finder-grid a,
body.vh-homepage .finder-grid a+ a{
  box-sizing:border-box;
  padding:34px 36px 32px !important;
}
body.vh-homepage .finder-grid a:hover{
  padding-top:34px !important;
}
body.vh-homepage .finder-grid b{
  margin:0 0 0 0;
}
body.vh-homepage .finder-grid strong{
  margin:20px 0 0;
}
body.vh-homepage .finder-grid span{
  margin:10px 0 0;
}
@media(max-width:750px){
  body.vh-homepage .finder-grid a,
  body.vh-homepage .finder-grid a+ a{
    padding:28px 28px 26px !important;
  }
}


/* Materials gallery: photographic cards only. The former decorative CSS artwork layer is intentionally removed. */

/* 200 km model: keep the explanatory copy visually connected to the service-cell diagram. */
@media(min-width:751px){
  body.vh-homepage .network-grid{gap:5.5vw;margin-top:32px;align-items:center}
  body.vh-homepage .network-grid>div:last-child{max-width:560px}
  body.vh-homepage .network-grid>div:last-child h3{max-width:500px}
}


/* 2026-09-26 — final finder card spacing */
body.vh-homepage .finder-grid a,
body.vh-homepage .finder-grid a+a{
  padding-left:26px;
  padding-right:26px;
}
body.vh-homepage .finder-grid a:first-child{padding-left:26px}
body.vh-homepage .finder-grid a:last-child{padding-right:26px}
@media(max-width:750px){
  body.vh-homepage .finder-grid a,
  body.vh-homepage .finder-grid a+a{
    padding-left:22px;
    padding-right:22px;
  }
}
/* Keep the homepage hero locked to the visible viewport on desktop. */
@media(min-width:751px){
  body.vh-homepage #hero.hero{height:100svh;min-height:100svh;max-height:none}
}


/* HERO HEADER ALIGNMENT — the shared header grid owns wordmark position. */


/* THESIS — align the statement and the three-part proposition on one
   vertical axis. The card row is centered against the statement rather
   than sitting on its lower edge. */
body.vh-homepage .thesis{
  align-items:center;
}
body.vh-homepage .thesis > div:first-child{
  align-self:center;
}
body.vh-homepage .thesis-cards{
  align-self:center;
}
@media(max-width:900px){
  body.vh-homepage .thesis,
  body.vh-homepage .thesis > div:first-child,
  body.vh-homepage .thesis-cards{
    align-self:stretch;
  }
}


/* HOMEPAGE — edge-to-edge editorial copy panels.
   The section itself remains full-bleed; copy panels no longer carry the
   large inset padding that previously made the text feel boxed-in. */
body.vh-homepage .split-dark .copy,
body.vh-homepage .split-light .copy,
body.vh-homepage .plot-copy,
body.vh-homepage .region>div:first-child,
body.vh-homepage .landscape-copy,
body.vh-homepage .product-world>div:last-child{
  padding:0!important;
  align-self:stretch;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
body.vh-homepage .split-dark .copy>*,
body.vh-homepage .split-light .copy>*,
body.vh-homepage .plot-copy>*,
body.vh-homepage .region>div:first-child>*,
body.vh-homepage .landscape-copy>*,
body.vh-homepage .product-world>div:last-child>*{
  max-width:none;
}


/* CATALOGUE — nine-card editorial rhythm: three rows using a 2:1:1,
   1:2:1, 1:1:2 four-column grid. */
body.vh-homepage .catalogue .home-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
  grid-auto-flow:row;
}
body.vh-homepage .catalogue .home-card{grid-column:span 1;}
body.vh-homepage .catalogue .home-card:nth-child(9n+1),
body.vh-homepage .catalogue .home-card:nth-child(9n+5),
body.vh-homepage .catalogue .home-card:nth-child(9n+9){grid-column:span 2;}
body.vh-homepage .catalogue .home-card:nth-child(9n+3),
body.vh-homepage .catalogue .home-card:nth-child(9n+6),
body.vh-homepage .catalogue .home-card:nth-child(9n+7){grid-column:span 1;}
body.vh-homepage .catalogue .home-card:nth-child(9n+2),
body.vh-homepage .catalogue .home-card:nth-child(9n+4),
body.vh-homepage .catalogue .home-card:nth-child(9n+8){grid-column:span 1;}
body.vh-homepage .catalogue .home-card:nth-child(9n+1) .home-image,
body.vh-homepage .catalogue .home-card:nth-child(9n+5) .home-image,
body.vh-homepage .catalogue .home-card:nth-child(9n+9) .home-image{
  height:clamp(255px,20vw,320px);
}
@media(max-width:850px){
  body.vh-homepage .catalogue .home-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  body.vh-homepage .catalogue .home-card,
  body.vh-homepage .catalogue .home-card:nth-child(9n+1),
  body.vh-homepage .catalogue .home-card:nth-child(9n+5),
  body.vh-homepage .catalogue .home-card:nth-child(9n+9){grid-column:span 2;}
}
@media(max-width:600px){
  body.vh-homepage .catalogue .home-grid{grid-template-columns:1fr;}
  body.vh-homepage .catalogue .home-card,
  body.vh-homepage .catalogue .home-card:nth-child(9n+1),
  body.vh-homepage .catalogue .home-card:nth-child(9n+5),
  body.vh-homepage .catalogue .home-card:nth-child(9n+9){grid-column:span 1;}
}


/* HOMEPAGE — consistent 10% horizontal text safe-area.
   Hero content is intentionally excluded: its left edge is owned by the
   canonical hero composition above so it aligns with the header wordmark. */
body.vh-homepage .catalogue .section-head,
body.vh-homepage .catalogue .programme-line{margin-left:10%;margin-right:10%}
body.vh-homepage .thesis{padding-left:10%!important;padding-right:10%!important}
body.vh-homepage .split-dark .copy,
body.vh-homepage .split-light .copy,
body.vh-homepage .plot-copy,
body.vh-homepage .region>div:first-child,
body.vh-homepage .regional .copy,
body.vh-homepage .landscape-copy,
body.vh-homepage .product-world>div:last-child{
  padding-left:10%!important;padding-right:10%!important;
}
body.vh-homepage .finder{padding-left:10%!important;padding-right:10%!important}
body.vh-homepage .finder-grid a{padding-left:10%!important;padding-right:10%!important}
body.vh-homepage .collections,
body.vh-homepage .gallery,
body.vh-homepage .network,
body.vh-homepage .partners,
body.vh-homepage .research,
body.vh-homepage .materials-light{padding-left:10%!important;padding-right:10%!important}
body.vh-homepage .final-cta>div:last-child{
  padding-left:10%!important;padding-right:10%!important;max-width:none;
}


/* HERO IMAGE — current photographic source only. */
body.vh-homepage #hero.hero .hero-slide-a{
  background-image:url('https://www.buildofy.com/blog/content/images/size/w1200/2023/06/E_EPHX_1228LR.jpg') !important;
  background-position:center center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
  background-color:#09181b !important;
}

/* 2026-09-27 — hero composition correction.
   The residence photograph should read as architecture first, not as a dark
   abstract field. Preserve legibility with a restrained left/bottom veil. */
body.vh-homepage #hero.hero .hero-slide{
  transform:none !important;
}
body.vh-homepage #hero.hero .hero-slide.is-active{
  transform:scale(1.012) !important;
}
body.vh-homepage #hero.hero:after{
  background:
    linear-gradient(90deg,rgba(5,13,16,.58) 0%,rgba(5,13,16,.28) 42%,rgba(5,13,16,.03) 78%,rgba(5,13,16,.10) 100%),
    linear-gradient(0deg,rgba(5,13,16,.44) 0%,rgba(5,13,16,.02) 58%);
}
body.vh-homepage #hero.hero .hero-slide-a{
  background-position:center center !important;
  background-size:cover !important;
}


/* HOMEPAGE THESIS — equalize the two-column type scale. */
body.vh-homepage .thesis > div:first-child h2{
  max-width:760px;
  font-size:clamp(1.45rem,2.15vw,2.05rem);
  line-height:1.08;
  letter-spacing:-.035em;
}
body.vh-homepage .thesis-cards h3{
  font-size:clamp(1.45rem,2.15vw,2.05rem);
  line-height:1.08;
  letter-spacing:-.025em;
}
body.vh-homepage .thesis-cards p{
  font-size:.76rem;
  line-height:1.55;
}

/* HOMEPAGE FINDER — tighten the gateway block. */
body.vh-homepage .finder{
  padding-top:clamp(64px,6vw,92px);
  padding-bottom:clamp(64px,6vw,92px);
}
body.vh-homepage .finder h2{
  font-size:clamp(2.5rem,4vw,4.25rem);
  line-height:.94;
  letter-spacing:-.045em;
}
body.vh-homepage .finder-grid{
  margin-top:clamp(22px,2.5vw,34px);
}
body.vh-homepage .finder-grid a{
  padding-top:21px;
  padding-bottom:22px;
}
body.vh-homepage .finder-grid a+a{padding-left:20px}
body.vh-homepage .finder-grid strong{
  margin-top:17px;
  font-size:1.28rem;
}
body.vh-homepage .finder-grid span{
  margin-top:6px;
  line-height:1.45;
}

/* HOMEPAGE NAV — compact, legible hero header. */
body.vh-homepage .vh-site-nav{
  min-height:94px;
  height:94px;
  padding:16px clamp(34px,5vw,72px);
  gap:28px;
  display:flex!important;
  align-items:center!important;
  box-sizing:border-box;
  background:linear-gradient(180deg,rgba(5,12,18,.94) 0%,rgba(5,12,18,.72) 58%,rgba(5,12,18,.18) 100%);
}
body.vh-homepage .vh-site-nav .brand{
  position:relative;
  left:auto;
  top:auto;
  transform:none;
  z-index:2;
  flex:0 0 auto;
  align-self:center;
  margin:0;
  padding:0 12px 0 0;
}
body.vh-homepage .vh-site-nav .brand span{
  font-size:1.65rem;
  letter-spacing:.13em;
  text-shadow:0 2px 14px rgba(0,0,0,.55);
}
body.vh-homepage .vh-site-nav nav{
  flex:1 1 auto;
  justify-content:flex-end;
  align-items:center;
  gap:clamp(16px,2vw,28px);
  margin:0;
  min-width:0;
}
body.vh-homepage .vh-site-nav nav a{
  font-size:.71rem;
  letter-spacing:.025em;
  text-shadow:0 1px 8px rgba(0,0,0,.5);
}
body.vh-homepage .vh-site-nav .nav-actions{
  flex:0 0 auto;
  align-items:center;
  justify-content:flex-end;
  margin:0;
  gap:8px;
}
body.vh-homepage .vh-site-nav .nav-cta{
  min-height:48px;
  padding:0 21px;
  background:rgba(24,39,43,.58);
  border-color:rgba(255,255,255,.28);
}


/* 2026-09-27 — homepage vertical rhythm tightening. */
@media(min-width:751px){
  body.vh-homepage .catalogue{
    padding-top:clamp(28px,3vw,42px);
    padding-bottom:clamp(48px,5vw,70px);
  }
  body.vh-homepage .catalogue-controls{padding-top:22px}

  body.vh-homepage .thesis{
    padding-top:clamp(64px,7vw,96px);
    padding-bottom:clamp(64px,7vw,96px);
  }

  body.vh-homepage .split-dark,
  body.vh-homepage .split-light,
  body.vh-homepage .plot,
  body.vh-homepage .region,
  body.vh-homepage .landscape,
  body.vh-homepage .product-world{
    min-height:580px;
  }

  body.vh-homepage .collections,
  body.vh-homepage .gallery,
  body.vh-homepage .materials-light,
  body.vh-homepage .research{
    padding-top:clamp(62px,6.5vw,92px);
    padding-bottom:clamp(62px,6.5vw,92px);
  }

  body.vh-homepage .finder{
    padding-top:clamp(50px,5vw,72px);
    padding-bottom:clamp(50px,5vw,72px);
  }

  body.vh-homepage .network{
    padding-top:clamp(42px,4.5vw,64px);
    padding-bottom:clamp(50px,5vw,72px);
  }

  body.vh-homepage .partners{
    padding-top:clamp(56px,5.5vw,78px);
    padding-bottom:clamp(56px,5.5vw,78px);
  }

  body.vh-homepage .pin-check{
    padding-top:clamp(58px,6vw,82px);
    padding-bottom:clamp(58px,6vw,82px);
  }

  body.vh-homepage .final-cta{
    min-height:620px;
    height:620px;
  }
}

@media(max-width:750px){
  body.vh-homepage .catalogue{
    padding-top:30px;
    padding-bottom:52px;
  }
  body.vh-homepage .thesis{
    padding-top:64px;
    padding-bottom:64px;
  }
  body.vh-homepage .collections,
  body.vh-homepage .gallery,
  body.vh-homepage .materials-light,
  body.vh-homepage .research{
    padding-top:64px;
    padding-bottom:64px;
  }
  body.vh-homepage .finder{
    padding-top:52px;
    padding-bottom:52px;
  }
  body.vh-homepage .network{
    padding-top:44px;
    padding-bottom:56px;
  }
  body.vh-homepage .partners,
  body.vh-homepage .pin-check{
    padding-top:58px;
    padding-bottom:58px;
  }
  body.vh-homepage .final-cta{
    min-height:560px;
    height:560px;
  }
}


/* 2026-09-27 — homepage quadrant composition: reverse the lower split. */
@media(min-width:751px){
  body.vh-homepage .product-world>div:first-child{order:2}
  body.vh-homepage .product-world>div:last-child{order:1}
}
