:root{
  --wine:#5a1018;
  --wine-deep:#2a080d;
  --maroon:#3b0b12;
  --verm:#7a1d25;
  --gold:#c89d49;
  --gold-soft:#e4c67a;
  --cream:#f5ecd9;
  --paper:#eee0c4;
  --ink:#221919;
  --ink-soft:#655457;
  --line:rgba(90,16,24,.14);
  --line-dark:rgba(245,236,217,.18);
  --shadow:0 24px 70px rgba(36,6,10,.16);
  --radius:24px;
  --serif:'Cormorant Garamond', Georgia, serif;
  --sans:'Manrope', Arial, sans-serif;
  --bengali:'Noto Serif Bengali', serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:linear-gradient(180deg,#fbf4e5 0%,#f2e6cf 100%);color:var(--ink);font-family:var(--sans);line-height:1.65}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
::selection{background:var(--gold);color:var(--wine-deep)}

.announcement{padding:.55rem 1rem;text-align:center;background:var(--wine-deep);color:var(--gold-soft);font-family:var(--bengali);font-size:.88rem;letter-spacing:.03em}
.announcement span{margin:0 .65rem;color:#947443}
.site-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1rem clamp(1rem,4vw,4rem);background:rgba(42,8,13,.96);backdrop-filter:blur(14px);border-bottom:1px solid rgba(228,198,122,.14);color:var(--cream)}
.brand{display:flex;align-items:center;gap:.85rem;min-width:max-content}
.brand-mark{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--gold);border-radius:50%;color:var(--gold-soft);font-family:var(--serif);font-size:1.45rem;box-shadow:inset 0 0 0 4px rgba(200,157,73,.08)}
.brand strong{display:block;font-family:var(--serif);font-weight:600;font-size:1.35rem;line-height:1;color:#fff3d7}
.brand small{display:block;margin-top:.28rem;color:#cba969;font-size:.67rem;letter-spacing:.16em;text-transform:uppercase}
.nav{display:flex;align-items:center;gap:1.4rem;font-size:.82rem;letter-spacing:.06em;text-transform:uppercase}
.nav a{color:#ebdfc9;opacity:.88;transition:.2s ease}
.nav a:hover{color:#fff;opacity:1}
.nav-cta{padding:.72rem 1rem;border:1px solid rgba(228,198,122,.45);border-radius:999px;color:#fff0cc!important;background:rgba(200,157,73,.1)}
.nav-toggle{display:none;border:0;background:none;color:#f5ecd9;font-size:1.7rem}

main{overflow:hidden}
.section-shell{width:min(1180px,calc(100% - 2rem));margin-inline:auto}
.section-dark{background:var(--wine-deep);color:var(--cream)}
.section-kicker{margin:0 0 .7rem;color:var(--wine);font-size:.72rem;letter-spacing:.23em;text-transform:uppercase;font-weight:700}
.section-dark .section-kicker{color:var(--gold-soft)}
h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:.96;margin:0 0 1rem}
h1{font-size:clamp(3.2rem,6.6vw,7.3rem);letter-spacing:-.035em}
h2{font-size:clamp(2.4rem,4.5vw,4.7rem);letter-spacing:-.025em}
h3{font-size:clamp(1.65rem,2.8vw,2.35rem)}
em{color:var(--verm);font-style:italic}
.section-dark em{color:var(--gold-soft)}
p{margin:0 0 1rem;color:var(--ink-soft)}
.section-dark p{color:#d7c8af}

.button{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;padding:.9rem 1.25rem;border-radius:999px;border:1px solid transparent;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;font-weight:800;transition:transform .2s ease,background .2s ease,box-shadow .2s ease}
.button:hover{transform:translateY(-2px)}
.button-gold{background:linear-gradient(135deg,#e2be6f,#b9832c);color:#2a080d;box-shadow:0 12px 30px rgba(153,105,27,.22)}
.button-ghost{border-color:rgba(255,255,255,.3);color:#fff7e5;background:rgba(255,255,255,.05)}
.text-link{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:var(--wine)}
.section-dark .text-link{color:var(--gold-soft)}

/* HERO */
.hero{position:relative;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(430px,.92fr);min-height:calc(100vh - 115px);padding:clamp(3rem,6vw,6rem) clamp(1rem,5vw,5rem);background:
  radial-gradient(circle at 78% 52%,rgba(200,157,73,.17),transparent 33%),
  linear-gradient(135deg,#7a1d25 0%,#4a0d14 46%,#23070c 100%);color:#fff2d6}
.hero:before{content:"";position:absolute;inset:0;opacity:.16;background-image:radial-gradient(circle at 15% 15%,#fff 0 1px,transparent 1.3px),radial-gradient(circle at 75% 30%,#fff 0 1px,transparent 1.2px),radial-gradient(circle at 45% 70%,#fff 0 1px,transparent 1.3px);background-size:120px 120px,160px 160px,190px 190px;pointer-events:none}
.hero-text,.hero-art{position:relative;z-index:1}
.hero-text{display:flex;flex-direction:column;justify-content:center;padding-inline:clamp(0rem,2vw,1.8rem)}
.eyebrow{color:var(--gold-soft);letter-spacing:.22em;font-size:.74rem;font-weight:800;text-transform:uppercase;margin-bottom:1.1rem}
.hero h1{max-width:750px;color:#fff2d6;text-shadow:0 7px 25px rgba(0,0,0,.2)}
.hero h1 em{color:var(--gold-soft)}
.hero-lead{max-width:640px;color:#eadcc4;font-size:clamp(1rem,1.65vw,1.24rem);line-height:1.75}
.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin:1rem 0 1.2rem}
.hero-meta{display:flex;flex-wrap:wrap;gap:.6rem .9rem;color:#cfbd99;font-size:.73rem;letter-spacing:.08em;text-transform:uppercase}
.hero-meta span{position:relative;padding-left:1rem}.hero-meta span:before{content:"✦";position:absolute;left:0;color:var(--gold)}
.hero-art{display:grid;place-items:center;min-height:610px}
.halo{position:absolute;border:1px solid rgba(228,198,122,.26);border-radius:50%;aspect-ratio:1}.halo-one{width:min(76%,570px)}.halo-two{width:min(84%,630px);border-color:rgba(228,198,122,.12)}
.nataraj-orb{position:relative;width:min(69%,540px);aspect-ratio:1;display:grid;place-items:center;border-radius:50%;overflow:hidden;border:1px solid rgba(228,198,122,.58);box-shadow:0 0 0 18px rgba(200,157,73,.045),0 0 0 38px rgba(200,157,73,.025),0 35px 100px rgba(0,0,0,.38)}
.nataraj-orb:after{content:"";position:absolute;inset:8%;border:1px solid rgba(228,198,122,.3);border-radius:50%;pointer-events:none}
.nataraj-orb img{width:100%;height:100%;object-fit:cover;filter:saturate(.88) contrast(1.05) brightness(.83)}
.hero-caption{position:absolute;bottom:5%;right:2%;display:flex;flex-direction:column;align-items:flex-end;text-align:right;gap:.2rem}.hero-caption span{font-family:var(--bengali);font-size:1.55rem;color:var(--gold-soft)}.hero-caption strong{font-family:var(--serif);font-size:1.4rem;font-weight:600}.hero-caption small{color:#c9b58e;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase}

/* HOME SECTIONS */
.intro{padding:clamp(5rem,10vw,9rem) 0;text-align:center}.ornament{font-size:1.15rem;color:var(--gold);margin-bottom:1rem}.intro h2{max-width:900px;margin-inline:auto}.intro h2 span{color:var(--wine);font-style:italic}.section-copy{max-width:760px;margin:1.5rem auto 0;font-size:1.06rem}
.discipline-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;padding-bottom:clamp(5rem,9vw,8rem)}
.discipline-card{position:relative;padding:2.2rem;background:rgba(255,255,255,.58);border:1px solid rgba(90,16,24,.12);min-height:330px;box-shadow:0 16px 44px rgba(70,21,15,.06);overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}.discipline-card:after{content:"";position:absolute;width:180px;height:180px;border:1px solid rgba(200,157,73,.25);border-radius:50%;right:-70px;bottom:-75px}
.featured-card{background:linear-gradient(145deg,#fff6df,#e5c78b 130%)}.bengal-card{background:linear-gradient(145deg,#f9efe0,#dfbeb1)}
.card-symbol{width:52px;height:52px;display:grid;place-items:center;border:1px solid var(--gold);border-radius:50%;font-family:var(--serif);font-size:1.45rem;color:var(--wine)}.card-symbol.bengali{font-family:var(--bengali);font-size:1.05rem}
.discipline-card h3{margin-top:.9rem}.discipline-card p{max-width:34rem}.discipline-card a{display:inline-block;margin-top:.45rem;color:var(--wine);font-size:.74rem;text-transform:uppercase;letter-spacing:.11em;font-weight:800}
.journey{padding:clamp(5rem,9vw,8rem) 0}.split-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;margin-bottom:3rem}.split-heading>p{max-width:410px;margin:0}.journey-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line-dark);border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark)}.journey-grid>div{padding:1.6rem;border-right:1px solid var(--line-dark);min-height:210px}.journey-grid>div:nth-child(3n){border-right:0}.journey-grid span{font-size:.7rem;color:var(--gold-soft);letter-spacing:.16em}.journey-grid h3{margin:.75rem 0 .6rem;color:#fff1d5}.journey-grid p{margin:0}
.faculty{padding:clamp(5rem,9vw,8rem) 0}.faculty-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.faculty-card{display:grid;grid-template-columns:180px 1fr;min-height:250px;background:#fff8ec;border:1px solid var(--line);overflow:hidden}.faculty-card img,.portrait-placeholder{width:100%;height:100%;min-height:250px;object-fit:cover;filter:saturate(.75)}.portrait-placeholder{display:grid;place-items:center;background:radial-gradient(circle at 40% 30%,#cd9f4c,#64202a 70%,#2a080d);color:#f5e6bf;font-family:var(--serif);font-size:5rem}.faculty-card>div:last-child{padding:1.8rem}
.events{padding:0 0 clamp(5rem,9vw,8rem)}.event-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.event-card{background:#fff8ec;border:1px solid var(--line);overflow:hidden}.event-card img,.event-art{width:100%;aspect-ratio:1.45;object-fit:cover;background:radial-gradient(circle at 70% 28%,#d1ad58,#65141d 56%,#28080d);display:grid;place-items:center;color:#efdfbe;font-family:var(--bengali);font-size:2rem}.event-card>div:last-child{padding:1.25rem}.event-date{font-size:.72rem;letter-spacing:.14em;color:var(--wine);text-transform:uppercase;font-weight:800}.event-card h3{font-size:2rem;margin:.35rem 0}.event-card span,.event-card p{font-size:.9rem}
.admissions{padding-bottom:clamp(5rem,10vw,9rem)}.admission-band{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:clamp(2rem,5vw,4rem);background:linear-gradient(135deg,#541017,#2b080d);color:#fff1d5;position:relative;overflow:hidden}.admission-band:before{content:"";position:absolute;width:400px;height:400px;border:1px solid rgba(228,198,122,.18);border-radius:50%;right:-180px;top:-160px}.admission-band h2{color:#fff1d5}.admission-band p{color:#dbc9a8}

/* INTERNAL PAGES */
.page-hero{padding:clamp(4.5rem,10vw,8rem) 0 clamp(3rem,6vw,5rem);background:radial-gradient(circle at 75% 45%,rgba(200,157,73,.13),transparent 32%),linear-gradient(135deg,#f8efdf,#e6d5b6);border-bottom:1px solid var(--line)}.page-hero p:not(.section-kicker){max-width:720px;font-size:1.1rem;margin-top:1.2rem}.page-hero h1{max-width:980px}.page-hero h1 .bengali-inline{font-family:var(--bengali);font-size:.4em;vertical-align:middle;color:var(--wine);white-space:nowrap}
.story{display:grid;grid-template-columns:1.1fr .9fr;gap:4rem;align-items:start;padding:clamp(5rem,9vw,8rem) 0}.story-copy{padding-top:1rem}.story-copy p{font-size:1.06rem}.quote{margin-top:2rem;padding:1.3rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-family:var(--serif);font-size:2rem;color:var(--wine)}.story-poster{position:relative;border:1px solid rgba(90,16,24,.15);padding:.7rem;background:#2b080d;box-shadow:var(--shadow)}.story-poster img{width:100%;aspect-ratio:4/5;object-fit:cover;opacity:.86}.story-poster span{position:absolute;bottom:1.2rem;left:1.2rem;color:#f0d39b;font-family:var(--bengali);font-size:1.8rem}
.values{padding:clamp(5rem,9vw,8rem) 0}.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line-dark);margin-top:2rem}.values-grid>div{padding:2rem;border-right:1px solid var(--line-dark);min-height:220px}.values-grid>div:last-child{border-right:0}.values-grid h3{color:#fff1d5}.cta-block{padding:clamp(4rem,7vw,6rem) 0;display:flex;justify-content:space-between;align-items:center;gap:2rem}
.program-list{padding:clamp(4.5rem,8vw,7rem) 0}.program-row{display:grid;grid-template-columns:72px 1fr 70px;gap:1.5rem;align-items:center;padding:2rem 0;border-top:1px solid var(--line)}.program-row:last-child{border-bottom:1px solid var(--line)}.program-number{font-family:var(--serif);font-size:2rem;color:var(--gold)}.program-main h2{font-size:clamp(2rem,4vw,3.6rem)}.program-main h2 span{font-family:var(--bengali);font-size:.34em;color:var(--wine);margin-left:.7rem}.program-main p{max-width:760px}.program-meta{display:flex;flex-wrap:wrap;gap:.5rem .9rem;color:#7c6567;font-size:.74rem;letter-spacing:.1em;text-transform:uppercase}.program-meta span+span{padding-left:.9rem;border-left:1px solid var(--line)}.circle-arrow{width:58px;height:58px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--wine);font-size:1.4rem;transition:.2s}.circle-arrow:hover{background:var(--wine);color:var(--cream)}.mini-cta{display:flex;justify-content:space-between;gap:2rem;align-items:center;padding-bottom:7rem}
.detail{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;padding:clamp(4rem,8vw,7rem) 0}.detail-feature{background:#2b080d;padding:.7rem;box-shadow:var(--shadow)}.detail-feature img{aspect-ratio:1/1.08;width:100%;object-fit:cover}.detail>div:last-child p{font-size:1.02rem}
.events.section-shell{padding-top:clamp(4rem,7vw,6rem)}.event-wide{display:grid;grid-template-columns:38% 1fr;gap:2.3rem;padding:2rem 0;border-bottom:1px solid var(--line)}.event-wide img,.event-art.wide{width:100%;aspect-ratio:1.6;object-fit:cover}.event-wide h2{font-size:3rem}.event-wide span{display:inline-block;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--wine);font-weight:800}.collaboration{padding:clamp(5rem,8vw,7rem) 0}.collaboration .section-shell{display:flex;align-items:center;justify-content:space-between;gap:2rem}.collaboration h2{max-width:720px;color:#fff1d5}.collaboration p{max-width:710px}
.gallery{padding:3rem 0 7rem}.filter-row{display:flex;gap:.45rem;flex-wrap:wrap;margin-bottom:1.5rem}.filter{border:1px solid var(--line);background:rgba(255,255,255,.55);color:var(--wine);border-radius:999px;padding:.6rem .9rem;font-size:.72rem;letter-spacing:.11em;text-transform:uppercase}.filter.active,.filter:hover{background:var(--wine);color:var(--cream)}.gallery-grid{columns:3 280px;column-gap:1rem}.gallery-item{break-inside:avoid;margin:0 0 1rem;background:#fff8ec;border:1px solid var(--line)}.gallery-item img{width:100%;height:auto;max-height:620px;object-fit:cover}.gallery-item figcaption{padding:.95rem 1rem;display:flex;flex-direction:column;gap:.2rem}.gallery-item figcaption strong{font-family:var(--serif);font-size:1.45rem;color:var(--wine);font-weight:600}.gallery-item figcaption span{font-size:.79rem;color:#7a6865}.gallery-item.is-hidden{display:none}
.contact{display:grid;grid-template-columns:.8fr 1.2fr;gap:3rem;padding:clamp(4rem,8vw,7rem) 0}.contact-info{padding-top:1rem}.contact-info h2{font-size:3rem}.contact-line{display:flex;justify-content:space-between;gap:1rem;padding:1rem 0;border-top:1px solid var(--line);font-size:.9rem}.contact-line a{color:var(--wine);font-weight:800}.bengali-inline{font-family:var(--bengali)}.enquiry-form{background:#fff8ec;padding:clamp(1.4rem,3vw,2.2rem);border:1px solid var(--line);box-shadow:0 20px 50px rgba(70,21,15,.07)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-grid label{display:flex;flex-direction:column;gap:.45rem;color:#5a4749;font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800}.form-grid .full{grid-column:1 / -1}.form-grid input,.form-grid select,.form-grid textarea{width:100%;padding:.9rem .95rem;border:1px solid rgba(90,16,24,.17);background:#f7efe1;color:var(--ink);outline:none;border-radius:12px;letter-spacing:normal;text-transform:none;font-weight:500}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(200,157,73,.12)}.form-success{margin-top:1rem;padding:.8rem 1rem;background:#e8f2df;border:1px solid #bcd39f;color:#32501b;border-radius:10px}
.empty-state{padding:3rem;border:1px dashed rgba(90,16,24,.2);text-align:center;color:#7b6965}

/* FOOTER */
.footer{background:#22070b;color:#d9c8aa;position:relative;padding:5rem 0 1.2rem;overflow:hidden}.footer-nataraj{text-align:center;color:#c89d49;font-size:3rem;font-family:var(--serif);opacity:.75;margin-bottom:1rem}.footer-inner{width:min(1180px,calc(100% - 2rem));margin:auto;display:grid;grid-template-columns:1.35fr .65fr .95fr;gap:2rem;padding-bottom:2rem;border-bottom:1px solid rgba(228,198,122,.13)}.footer-brand{font-family:var(--serif);font-size:2.2rem;color:#fff0d0}.footer-inner>div{display:flex;flex-direction:column;gap:.38rem}.footer-inner p{max-width:410px;color:#ad9a7b;margin:.3rem 0 0}.footer-inner a,.footer-inner span:not(.footer-label){color:#c7b595;font-size:.82rem}.footer-label{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-soft);margin-bottom:.2rem;font-weight:800}.footer-bottom{width:min(1180px,calc(100% - 2rem));margin:1rem auto 0;display:flex;justify-content:space-between;gap:1rem;font-size:.68rem;color:#8f7c61;letter-spacing:.07em;text-transform:uppercase}

/* RESPONSIVE */
@media (max-width: 1020px){
  .nav{gap:.9rem}.nav a{font-size:.72rem}.hero{grid-template-columns:1fr .82fr}.hero-art{min-height:520px}.discipline-grid,.event-grid{grid-template-columns:1fr}.faculty-grid{grid-template-columns:1fr}.values-grid{grid-template-columns:1fr 1fr}.values-grid>div:nth-child(2n){border-right:0}.story{grid-template-columns:1fr}.story-poster{max-width:520px}.detail{grid-template-columns:1fr}.contact{grid-template-columns:1fr}
}
@media (max-width: 820px){
  .nav-toggle{display:block}.nav{position:absolute;top:100%;left:0;right:0;display:none;flex-direction:column;align-items:stretch;padding:1rem;background:rgba(42,8,13,.98);border-bottom:1px solid rgba(228,198,122,.12)}.nav.open{display:flex}.nav a{padding:.65rem 1rem}.hero{grid-template-columns:1fr;min-height:auto}.hero-text{padding-top:3rem}.hero-art{min-height:480px}.nataraj-orb{width:min(72%,460px)}.split-heading{flex-direction:column;align-items:flex-start}.journey-grid{grid-template-columns:1fr 1fr}.journey-grid>div:nth-child(3n){border-right:1px solid var(--line-dark)}.journey-grid>div:nth-child(2n){border-right:0}.admission-band,.cta-block,.collaboration .section-shell,.mini-cta{flex-direction:column;align-items:flex-start}.event-wide{grid-template-columns:1fr}.footer-inner{grid-template-columns:1fr 1fr}.footer-bottom{flex-direction:column}
}
@media (max-width: 560px){
  .announcement{font-size:.75rem}.brand strong{font-size:1.1rem}.brand small{font-size:.56rem}.hero{padding-top:2rem}.hero h1{font-size:clamp(2.8rem,15vw,4.5rem)}.hero-art{min-height:380px}.hero-caption{right:4%;bottom:2%}.discipline-card{min-height:300px}.journey-grid{grid-template-columns:1fr}.journey-grid>div{border-right:0!important;border-bottom:1px solid var(--line-dark)}.faculty-card{grid-template-columns:1fr}.faculty-card img,.portrait-placeholder{min-height:300px}.values-grid{grid-template-columns:1fr}.values-grid>div{border-right:0;border-bottom:1px solid var(--line-dark)}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.program-row{grid-template-columns:44px 1fr 52px;gap:.8rem}.program-main h2{font-size:2rem}.circle-arrow{width:46px;height:46px}.footer-inner{grid-template-columns:1fr}.contact-info h2{font-size:2.5rem}
}

.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s ease}.reveal.is-visible{opacity:1;transform:none}

/* ===== GLOBAL QUALITY LAYER ===== */
:focus-visible{outline:3px solid var(--gold-soft);outline-offset:4px}
.skip-link{position:fixed;left:1rem;top:-4rem;z-index:100;color:#fff;background:var(--wine-deep);padding:.7rem 1rem;border-radius:0 0 10px 10px;font-weight:800}.skip-link:focus{top:0}

/* ===== ART-DIRECTED HERO ===== */
.hero-art-directed{position:relative;display:block;min-height:min(860px,calc(100vh - 90px));padding:0;overflow:hidden;background:#2b080e;color:#fff1d3}
.hero-artwork{position:absolute;inset:0;background-image:url('../images/hero-bengal-cinematic.webp');background-size:cover;background-position:center right;background-repeat:no-repeat;transform:scale(1.015)}
.hero-vignette{position:absolute;inset:0;background:linear-gradient(90deg,rgba(42,7,11,.96) 0%,rgba(42,7,11,.84) 22%,rgba(42,7,11,.34) 48%,rgba(42,7,11,.04) 72%),linear-gradient(0deg,rgba(34,5,9,.8),transparent 35%,rgba(34,5,9,.1))}
.hero-grid-overlay{position:absolute;inset:0;background-image:linear-gradient(rgba(255,239,199,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,239,199,.05) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(to right,transparent 0%,black 18%,black 85%,transparent 100%);opacity:.28}
.hero-copy{position:relative;z-index:2;min-height:min(860px,calc(100vh - 90px));display:flex;flex-direction:column;justify-content:center;padding-top:clamp(4rem,8vw,7rem);padding-bottom:clamp(5rem,8vw,7rem);padding-right:45%}
.hero-art-directed .eyebrow{color:#e7c879;margin-bottom:.6rem}.hero-bengali{font-family:var(--bengali);color:#eacb85;font-size:clamp(1rem,1.6vw,1.3rem);margin-bottom:.8rem;letter-spacing:.08em}.hero-art-directed h1{max-width:760px;font-size:clamp(3.6rem,7vw,7.6rem);line-height:.84;color:#fff3d9;text-shadow:0 8px 35px rgba(0,0,0,.34)}.hero-art-directed h1 em{color:#efc96d}.hero-art-directed .hero-lead{max-width:690px;color:#f0dfbf;font-size:clamp(1rem,1.4vw,1.22rem)}
.hero-art-directed .button-light{border-color:rgba(255,245,221,.4);color:#fff4dc;background:rgba(35,9,13,.42)}
.hero-signature{margin-top:1.3rem;display:grid;grid-template-columns:auto auto auto;align-items:center;justify-content:start;gap:.25rem .65rem;color:#e6cb95;font-family:var(--serif);font-size:1.45rem}.hero-signature i{font-weight:500}.hero-signature b{font-size:.9rem;color:#dcae4b}.hero-signature small{grid-column:1/-1;font-family:var(--sans);font-size:.66rem;text-transform:uppercase;letter-spacing:.18em;color:#bea885}
.hero-side-note{position:absolute;z-index:3;right:clamp(1rem,4vw,4rem);bottom:clamp(4rem,8vw,7rem);display:flex;flex-direction:column;align-items:flex-end;text-align:right;color:#ebcc84}.hero-side-note span{font-family:var(--bengali);font-size:2rem}.hero-side-note small{font-size:.68rem;text-transform:uppercase;letter-spacing:.16em;color:#d7bf94}.hero-scroll{position:absolute;left:clamp(1rem,4vw,4rem);bottom:1.6rem;z-index:3;color:#c6ab7a;font-size:.66rem;text-transform:uppercase;letter-spacing:.16em}.hero-scroll span{display:inline-block;margin-left:.5rem;color:#e6c36b}

/* ===== MANIFESTO / HERITAGE ===== */
.manifesto{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(2rem,6vw,6rem);align-items:center;padding:clamp(5rem,10vw,9rem) 0}.manifesto-art{position:relative;overflow:hidden;border:1px solid rgba(90,16,24,.16);box-shadow:0 28px 80px rgba(65,12,20,.13)}.manifesto-art:after{content:"";position:absolute;inset:10px;border:1px solid rgba(228,198,122,.4);pointer-events:none}.manifesto-art img{width:100%;aspect-ratio:1.15;object-fit:cover;filter:saturate(.82) sepia(.12)}.manifesto-copy{max-width:600px}.manifesto-copy h2{margin-bottom:1.25rem}.manifesto-copy p{font-size:1.02rem}.manifesto-copy strong{color:var(--wine)}
.heritage-strip{position:relative;padding:clamp(4rem,7vw,6rem) 0;overflow:hidden}.heritage-strip:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 15% 10%,rgba(228,198,122,.08),transparent 25%),radial-gradient(circle at 85% 80%,rgba(228,198,122,.06),transparent 28%)}.heritage-grid{position:relative;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark)}.heritage-grid article{padding:2rem 1.4rem 1.7rem;border-right:1px solid var(--line-dark);min-height:225px}.heritage-grid article:last-child{border-right:0}.heritage-no{font-size:.68rem;letter-spacing:.16em;color:var(--gold-soft)}.heritage-grid h3{color:#fff0d5;margin:.8rem 0 .55rem}.heritage-grid p{margin:0}

/* ===== FORM TILES ===== */
.dance-forms{padding:clamp(5rem,9vw,8rem) 0}.form-tiles{display:grid;grid-template-columns:repeat(12,1fr);gap:1rem}.form-tile{position:relative;min-height:340px;padding:1.6rem;color:#fff7e6;overflow:hidden;border:1px solid rgba(92,33,31,.18);display:flex;flex-direction:column;justify-content:flex-end;isolation:isolate}.form-tile:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(25,5,8,.08),rgba(25,5,8,.8));z-index:-1}.form-tile:after{content:"";position:absolute;width:240px;height:240px;border:1px solid rgba(234,204,130,.35);border-radius:50%;right:-80px;top:-80px;z-index:-1}.form-tile span{position:absolute;top:1.3rem;left:1.3rem;color:#efcf84;font-size:.72rem;letter-spacing:.16em}.form-tile h3{font-size:clamp(2rem,3vw,3rem);color:#fff1d4;margin:0 0 .35rem}.form-tile p{color:#f1dfc2;max-width:25rem;margin:0 0 .9rem}.form-tile b{font-size:.72rem;letter-spacing:.13em;text-transform:uppercase;color:#f0cd77}.form-kathak{grid-column:span 4;background:linear-gradient(135deg,#6b121d,#23070c)}.form-gaudiya{grid-column:span 4;background:linear-gradient(135deg,#833129,#31100f)}.form-odissi{grid-column:span 4;background:linear-gradient(135deg,#644f28,#20110d)}.form-semi{grid-column:span 6;background:linear-gradient(135deg,#4b1822,#17090d)}.form-creative{grid-column:span 6;background:linear-gradient(135deg,#9a6231,#36100d)}

/* ===== BENGAL STORY ===== */
.bengal-story{position:relative;min-height:650px;background:#3b0c12;color:#fff0d3;overflow:hidden}.bengal-story-bg{position:absolute;inset:0;background-image:url('../images/hero-bengal-cinematic.webp');background-size:cover;background-position:center;filter:saturate(.7) contrast(1.05);opacity:.47}.bengal-story:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(53,9,15,.96),rgba(53,9,15,.68) 50%,rgba(53,9,15,.42)),linear-gradient(0deg,rgba(53,9,15,.5),transparent 55%)}.bengal-story-grid{position:relative;z-index:2;min-height:650px;display:grid;grid-template-columns:1fr .95fr;align-items:center;gap:5rem;padding-top:5rem;padding-bottom:5rem}.tagore-card{max-width:620px}.tagore-card h2{color:#fff1d5}.tagore-card p{color:#e7d3b4}.tagore-quote{margin:1.3rem 0 .4rem;padding:1.1rem 1.2rem;border-left:2px solid #d3a550;font-family:var(--serif);font-size:1.45rem;line-height:1.35;color:#f1d596}.quote-note{display:block;max-width:520px;color:#c9af8b;font-size:.72rem;line-height:1.6}.rural-panel{display:flex;align-items:flex-end;justify-content:flex-end;min-height:430px}.rural-frame{width:min(440px,100%);aspect-ratio:.82;background:linear-gradient(180deg,rgba(255,226,177,.06),rgba(20,5,9,.42)),url('../images/hero-bengal-cinematic.webp') center/cover;border:1px solid rgba(235,205,133,.5);padding:1.2rem;display:flex;flex-direction:column;justify-content:flex-end;box-shadow:0 30px 80px rgba(0,0,0,.28);transform:rotate(2deg)}.rural-frame span{font-family:var(--bengali);font-size:1.4rem;color:#efd08a}.rural-frame strong{font-family:var(--serif);font-size:1.65rem;color:#fff0cf;font-weight:500}

/* ===== DIFFERENTIATION ===== */
.difference{padding:clamp(5rem,9vw,8rem) 0}.difference-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.difference-grid article{padding:2rem 1.2rem 2.1rem;border-right:1px solid var(--line);min-height:285px}.difference-grid article:last-child{border-right:0}.difference-grid .number{font-size:.68rem;letter-spacing:.15em;color:var(--gold);font-weight:800}.difference-grid h3{margin:.8rem 0 .7rem;color:var(--wine)}.difference-grid p{margin:0}

/* ===== ABOUT / CULTURE ===== */
.editorial-hero{background:radial-gradient(circle at 75% 20%,rgba(200,157,73,.15),transparent 25%),linear-gradient(135deg,#4e0d15,#26070c);color:#fff1d4}.editorial-hero h1{color:#fff1d4}.editorial-hero h1 em{color:#e8c574}.editorial-hero p{color:#dbc6a7;max-width:700px}.story{display:grid;grid-template-columns:1.1fr .9fr;gap:4rem;align-items:center;padding:clamp(5rem,9vw,8rem) 0}.story-copy{max-width:680px}.story-copy p{font-size:1.02rem}.quote{margin-top:1.7rem;padding:1.1rem 1.2rem;border-left:2px solid var(--gold);font-family:var(--serif);font-size:1.6rem;color:var(--wine)}.story-poster{position:relative;min-height:470px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 42%,rgba(215,168,81,.32),transparent 30%),linear-gradient(180deg,#64121c,#22070b);border:1px solid rgba(200,157,73,.36);overflow:hidden}.story-poster:before{content:"";position:absolute;inset:9%;border:1px solid rgba(228,198,122,.3);border-radius:50%}.story-poster:after{content:"";position:absolute;width:62%;aspect-ratio:1;border:1px solid rgba(228,198,122,.2);border-radius:50%}.story-poster img{width:100%;height:100%;object-fit:cover;opacity:.18;filter:grayscale(1) sepia(.9) contrast(1.25)}.story-poster span{position:absolute;z-index:3;bottom:1.2rem;font-family:var(--bengali);font-size:1.4rem;color:#e9c878}.cultural-poster{background-image:url('../images/hero-bengal-cinematic.webp');background-position:center; background-size:cover}.cultural-poster:after{border-color:rgba(240,204,121,.3)}.poster-word{position:relative;z-index:3;font-family:var(--bengali);font-size:clamp(4rem,7vw,7rem);color:#fff1d0;text-shadow:0 5px 24px rgba(0,0,0,.5)}.poster-sub{position:relative;z-index:3;color:#edd49b;text-transform:uppercase;letter-spacing:.16em;font-size:.7rem}
.values{padding:clamp(5rem,8vw,7rem) 0}.values-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark)}.values-grid>div{padding:1.8rem 1.2rem;border-right:1px solid var(--line-dark);min-height:205px}.values-grid>div:last-child{border-right:0}.values-grid h3{color:#fff0d5}.values-light{padding:clamp(5rem,8vw,7rem) 0}.culture-compass{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line)}.culture-compass article{padding:1.5rem;border-bottom:1px solid var(--line);border-right:1px solid var(--line);display:flex;flex-direction:column;gap:.3rem}.culture-compass article:nth-child(3n){border-right:0}.culture-compass b{font-family:var(--serif);font-size:1.8rem;color:var(--wine)}.culture-compass span{font-size:.78rem;color:#786866}.cta-block{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:clamp(4rem,8vw,7rem) 0}

.art-culture-intro{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;padding:clamp(5rem,9vw,8rem) 0}.art-culture-intro h2{max-width:650px}.art-culture-intro p{font-size:1.04rem}.art-culture-intro img{width:100%;aspect-ratio:1.25;object-fit:cover;border:1px solid var(--line);box-shadow:0 24px 65px rgba(70,21,15,.12)}.culture-panorama{padding:clamp(5rem,8vw,7rem) 0}.culture-columns{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark)}.culture-columns article{padding:1.6rem;border-right:1px solid var(--line-dark);min-height:240px}.culture-columns article:last-child{border-right:0}.culture-columns span{font-size:.7rem;letter-spacing:.16em;color:var(--gold-soft)}.culture-columns h3{color:#fff0d5;margin:.8rem 0 .55rem}.forms-story{padding:clamp(5rem,9vw,8rem) 0}.forms-story-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.forms-story-grid article{padding:1.7rem;background:#fff8ec;border:1px solid var(--line);min-height:250px}.forms-story-grid span{font-size:.66rem;letter-spacing:.14em;color:var(--gold);font-weight:800}.forms-story-grid h3{color:var(--wine);margin:.7rem 0}.artifact-band{background:radial-gradient(circle at 75% 40%,rgba(231,197,112,.18),transparent 20%),linear-gradient(120deg,#5b1019,#26070c);color:#fff0d5;padding:clamp(4rem,8vw,7rem) 0}.artifact-grid{display:grid;grid-template-columns:1fr .7fr;gap:3rem;align-items:center}.artifact-copy p{color:#dbc8a9;max-width:650px}.artifact-copy h2{color:#fff0d5}.artifact-mark{min-height:270px;border:1px solid rgba(228,198,122,.33);display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(255,255,255,.025)}.artifact-mark span{font-size:2rem;color:var(--gold-soft)}.artifact-mark b{font-family:var(--bengali);font-size:2.7rem;color:#eed084}.artifact-mark small{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:#bda989}

/* ===== EXISTING SECONDARY PAGES ===== */
.page-hero{padding:clamp(5rem,9vw,8rem) 0 4.5rem;background:linear-gradient(135deg,#f2e5c9,#fbf5e7);border-bottom:1px solid var(--line)}.page-hero p:last-child{max-width:720px;font-size:1.08rem}.detail{padding:clamp(4rem,8vw,7rem) 0;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.detail-feature{overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow)}.detail-feature img{width:100%;aspect-ratio:1/1.05;object-fit:cover}.program-list{padding:3rem 0 7rem}.program-row{display:grid;grid-template-columns:64px 1fr 56px;gap:1.4rem;align-items:center;padding:2rem 0;border-bottom:1px solid var(--line)}.program-number{font-family:var(--serif);font-size:2rem;color:var(--gold)}.program-main h2{font-size:3rem;color:var(--wine)}.program-main h2 span{display:block;font-family:var(--bengali);font-size:1rem;color:#7b6460;margin-top:.2rem}.program-meta{display:flex;gap:.5rem;flex-wrap:wrap}.program-meta span{padding:.35rem .7rem;border-radius:999px;border:1px solid var(--line);font-size:.7rem;text-transform:uppercase;letter-spacing:.08em}.circle-arrow{width:52px;height:52px;border:1px solid var(--wine);border-radius:50%;display:grid;place-items:center;color:var(--wine);font-size:1.2rem}.mini-cta{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:0 0 7rem}.event-wide{display:grid;grid-template-columns:.8fr 1.2fr;gap:2rem;padding:2rem 0;border-bottom:1px solid var(--line);align-items:center}.event-wide img,.event-art.wide{width:100%;aspect-ratio:1.6;object-fit:cover}.event-wide h2{font-size:3rem;color:var(--wine)}.event-wide span{display:inline-block;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--wine);font-weight:800}.collaboration{padding:clamp(5rem,8vw,7rem) 0}.collaboration .section-shell{display:flex;align-items:center;justify-content:space-between;gap:2rem}.collaboration h2{max-width:720px;color:#fff1d5}.collaboration p{max-width:710px}.gallery{padding:3rem 0 7rem}.filter-row{display:flex;gap:.45rem;flex-wrap:wrap;margin-bottom:1.5rem}.filter{min-height:44px;border:1px solid var(--line);background:rgba(255,255,255,.55);color:var(--wine);border-radius:999px;padding:.6rem .9rem;font-size:.72rem;letter-spacing:.11em;text-transform:uppercase}.filter.active,.filter:hover{background:var(--wine);color:var(--cream)}.gallery-grid{columns:3 280px;column-gap:1rem}.gallery-item{break-inside:avoid;margin:0 0 1rem;background:#fff8ec;border:1px solid var(--line)}.gallery-item img{width:100%;height:auto;max-height:620px;object-fit:cover}.gallery-item figcaption{padding:.95rem 1rem;display:flex;flex-direction:column;gap:.2rem}.gallery-item figcaption strong{font-family:var(--serif);font-size:1.45rem;color:var(--wine);font-weight:600}.gallery-item figcaption span{font-size:.79rem;color:#7a6865}.gallery-item.is-hidden{display:none}.contact{display:grid;grid-template-columns:.8fr 1.2fr;gap:3rem;padding:clamp(4rem,8vw,7rem) 0}.contact-info{padding-top:1rem}.contact-info h2{font-size:3rem}.contact-line{display:flex;justify-content:space-between;gap:1rem;padding:1rem 0;border-top:1px solid var(--line);font-size:.9rem}.contact-line a{color:var(--wine);font-weight:800}.bengali-inline{font-family:var(--bengali)}.enquiry-form{background:#fff8ec;padding:clamp(1.4rem,3vw,2.2rem);border:1px solid var(--line);box-shadow:0 20px 50px rgba(70,21,15,.07)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-grid label{display:flex;flex-direction:column;gap:.45rem;color:#5a4749;font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800}.form-grid .full{grid-column:1 / -1}.form-grid input,.form-grid select,.form-grid textarea{width:100%;min-height:48px;padding:.9rem .95rem;border:1px solid rgba(90,16,24,.17);background:#f7efe1;color:var(--ink);outline:none;border-radius:12px;letter-spacing:normal;text-transform:none;font-weight:500}.form-grid textarea{min-height:auto}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(200,157,73,.12)}.form-success{margin-top:1rem;padding:.8rem 1rem;background:#e8f2df;border:1px solid #bcd39f;color:#32501b;border-radius:10px}.empty-state{padding:3rem;border:1px dashed rgba(90,16,24,.2);text-align:center;color:#7b6965}

/* ===== FOOTER ===== */
.footer{background:#21070b;color:#d9c8aa;position:relative;padding:5rem 0 1.2rem;overflow:hidden}.footer-ornament{text-align:center;color:#c89d49;font-size:2.4rem;font-family:var(--serif);opacity:.8;margin-bottom:1rem}.footer-inner{width:min(1180px,calc(100% - 2rem));margin:auto;display:grid;grid-template-columns:1.5fr .65fr .75fr .9fr;gap:2rem;padding-bottom:2rem;border-bottom:1px solid rgba(228,198,122,.13)}.footer-brand{font-family:var(--serif);font-size:2.2rem;color:#fff0d0}.footer-inner>div{display:flex;flex-direction:column;gap:.38rem}.footer-inner p{max-width:410px;color:#ad9a7b;margin:.3rem 0 0}.footer-note{font-size:.78rem!important}.footer-inner a,.footer-inner span:not(.footer-label){color:#c7b595;font-size:.82rem}.footer-label{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-soft);margin-bottom:.2rem;font-weight:800}.footer-bottom{width:min(1180px,calc(100% - 2rem));margin:1rem auto 0;display:flex;justify-content:space-between;gap:1rem;font-size:.64rem;color:#8f7c61;letter-spacing:.06em;text-transform:uppercase}

/* ===== RESPONSIVE ===== */
@media (max-width:1199px){.section-shell{width:min(1140px,calc(100% - 2.25rem))}.nav{gap:.8rem}.nav a{font-size:.69rem}.hero-copy{padding-right:42%}.heritage-grid,.difference-grid,.values-grid,.culture-columns,.forms-story-grid{grid-template-columns:repeat(2,1fr)}.heritage-grid article:nth-child(2n),.difference-grid article:nth-child(2n),.values-grid>div:nth-child(2n),.culture-columns article:nth-child(2n),.forms-story-grid article:nth-child(2n){border-right:0}.heritage-grid article:nth-child(-n+2),.difference-grid article:nth-child(-n+2),.values-grid>div:nth-child(-n+2),.culture-columns article:nth-child(-n+2){border-bottom:1px solid var(--line-dark)}.difference-grid article:nth-child(-n+2),.culture-compass article{border-color:var(--line)}.footer-inner{grid-template-columns:1.2fr .8fr .8fr}.footer-inner>div:last-child{grid-column:1/-1;display:grid;grid-template-columns:auto auto 1fr;gap:0 1.5rem}.footer-inner>div:last-child .footer-label{grid-column:1/-1}}
@media (max-width:1020px){.nav-toggle{display:block}.nav{position:absolute;top:100%;left:0;right:0;display:none;flex-direction:column;align-items:stretch;padding:1rem;background:rgba(42,8,13,.99);border-bottom:1px solid rgba(228,198,122,.12)}.nav.open{display:flex}.nav a{padding:.7rem 1rem;font-size:.78rem}.nav-cta{border-radius:12px}.hero-copy{padding-right:35%}.hero-artwork{background-position:58% center}.manifesto,.story,.art-culture-intro{grid-template-columns:1fr}.manifesto-art{max-width:720px}.bengal-story-grid{grid-template-columns:1fr 1fr;gap:2.3rem}.form-kathak,.form-gaudiya,.form-odissi,.form-semi,.form-creative{grid-column:span 6}.forms-story-grid{grid-template-columns:repeat(2,1fr)}.contact,.detail{grid-template-columns:1fr}.event-wide{grid-template-columns:1fr}.faculty-grid{grid-template-columns:1fr}.collaboration .section-shell,.cta-block,.mini-cta{align-items:flex-start;flex-direction:column}.footer-inner{grid-template-columns:1fr 1fr}}
@media (max-width:760px){.announcement{font-size:.7rem}.announcement span:nth-of-type(n+3),.announcement b:nth-of-type(n+2){display:none}.brand strong{font-size:1.12rem}.brand small{font-size:.54rem}.hero-art-directed,.hero-copy{min-height:760px}.hero-copy{padding-right:0;padding-top:8rem;justify-content:flex-start}.hero-artwork{background-position:63% center}.hero-vignette{background:linear-gradient(90deg,rgba(42,7,11,.96),rgba(42,7,11,.6) 60%,rgba(42,7,11,.28)),linear-gradient(0deg,rgba(34,5,9,.94),transparent 55%)}.hero-art-directed h1{font-size:clamp(3rem,15vw,5.1rem)}.hero-signature{font-size:1.22rem}.hero-side-note{right:1rem;bottom:4.5rem}.hero-scroll{display:none}.heritage-grid,.difference-grid,.values-grid,.culture-columns,.culture-compass,.forms-story-grid{grid-template-columns:1fr}.heritage-grid article,.difference-grid article,.values-grid>div,.culture-columns article,.culture-compass article,.forms-story-grid article{border-right:0;border-bottom:1px solid var(--line-dark)}.difference-grid article,.culture-compass article{border-color:var(--line)}.form-kathak,.form-gaudiya,.form-odissi,.form-semi,.form-creative{grid-column:1/-1}.form-tile{min-height:280px}.bengal-story-grid{grid-template-columns:1fr}.rural-panel{justify-content:flex-start}.rural-frame{transform:none}.faculty-card{grid-template-columns:1fr}.footer-inner{grid-template-columns:1fr}.footer-inner>div:last-child{grid-column:auto;display:flex}.footer-bottom{flex-direction:column}.program-row{grid-template-columns:44px 1fr 48px}.program-main h2{font-size:2rem}.circle-arrow{width:44px;height:44px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}}
@media (max-width:575px){.section-shell{width:min(100% - 1.25rem,1140px)}.hero-art-directed,.hero-copy{min-height:730px}.hero-copy{padding-top:7rem}.hero-artwork{background-position:64% center;transform:scale(1.12)}.hero-bengali{font-size:.94rem}.hero-art-directed .hero-lead{font-size:.95rem}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .button{width:100%}.manifesto,.dance-forms,.difference,.forms-story,.values-light{padding-top:4.5rem;padding-bottom:4.5rem}.manifesto-art img{aspect-ratio:1/1.12}.tagore-card h2{font-size:2.5rem}.rural-frame{min-height:350px}.footer-brand{font-size:1.9rem}.contact-info h2{font-size:2.45rem}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.reveal{opacity:1;transform:none;transition:none}.hero-artwork{transform:none}}

/* =====================================================================
   ASHISH E NATARAJ — GLOBAL DESIGN SYSTEM / CONTRAST + DIGITAL CULTURE
   Shared system layer. Changes here intentionally cascade across all pages.
   ===================================================================== */
:root{
  --ds-paper-0:#fffaf0;
  --ds-paper-1:#f6ecd8;
  --ds-paper-2:#ead7b7;
  --ds-ink-900:#261a1a;
  --ds-ink-700:#564447;
  --ds-ink-500:#756163;
  --ds-wine-900:#320a10;
  --ds-wine-800:#4c1018;
  --ds-wine-700:#681722;
  --ds-gold-600:#b9842e;
  --ds-gold-400:#dfb95f;
  --ds-gold-200:#f2ddb0;
  --ds-dark-copy:#f8edd8;
  --ds-line-light:rgba(76,16,24,.13);
  --ds-line-dark:rgba(242,221,176,.22);
  --ds-max:1180px;
  --ds-gutter:clamp(1rem,3vw,2rem);
  --ds-focus:#f2c96d;
  --ds-display:var(--serif);
  --ds-body:var(--sans);
}

html{font-size:16px;scroll-padding-top:5rem}
body{background:linear-gradient(180deg,var(--ds-paper-0),var(--ds-paper-1) 55%,#efe2c8);color:var(--ds-ink-900);font-family:var(--ds-body)}
main{background:transparent}
.section-shell,.footer-inner,.footer-bottom{max-width:var(--ds-max)}

/* Contrast contracts: every shared light surface gets dark text; every dark
   surface gets warm-ivory text. This is the shared rule instead of page fixes. */
.page-hero,
.story,
.program-list,
.detail,
.events.section-shell,
.forms-story,
.values-light,
.art-culture-intro,
.faculty,
.dance-forms,
.difference,
.manifesto,
.contact,
.gallery,
.cta-block,
.home-cta{
  color:var(--ds-ink-900);
}
.page-hero h1,
.story h2,
.program-main h2,
.detail h2,
.event-wide h2,
.forms-story h2,
.forms-story-grid h3,
.art-culture-intro h2,
.faculty h2,
.dance-forms h2,
.difference h2,
.manifesto h2,
.contact h2,
.gallery h2,
.cta-block h2,
.home-cta h2{
  color:var(--ds-wine-900);
}
.page-hero p:not(.section-kicker),
.story-copy p,
.detail>div:last-child p,
.event-wide p,
.forms-story>p,
.forms-story-grid p,
.art-culture-intro p,
.faculty-card p,
.difference-grid p,
.manifesto-copy p,
.contact-info p,
.program-main p,
.gallery-item figcaption span,
.cta-block p,
.home-cta p{
  color:var(--ds-ink-700);
}
.section-dark,
.values,
.journey,
.heritage-strip,
.collaboration,
.artifact-band{
  color:var(--ds-dark-copy);
}
.section-dark h2,
.section-dark h3,
.values h2,
.values h3,
.journey h2,
.journey h3,
.heritage-strip h2,
.heritage-strip h3,
.collaboration h2,
.collaboration h3,
.artifact-band h2,
.artifact-band h3{
  color:var(--ds-dark-copy);
}
.section-dark p,
.values p,
.journey p,
.heritage-strip p,
.collaboration p,
.artifact-band p{color:#decdb0}
.section-kicker{color:var(--ds-wine-700)}
.section-dark .section-kicker,.values .section-kicker,.journey .section-kicker,.heritage-strip .section-kicker,.collaboration .section-kicker,.artifact-band .section-kicker{color:var(--ds-gold-400)}

/* Stronger typographic contrast and readable measure */
h1,h2,h3{font-family:var(--ds-display);text-wrap:balance}
p{max-width:75ch}
.button,.filter,.nav a,.nav-toggle,.circle-arrow,.atlas-node{min-height:44px}
.button:focus-visible,.filter:focus-visible,.nav a:focus-visible,.nav-toggle:focus-visible,.circle-arrow:focus-visible,.atlas-node:focus-visible{outline:3px solid var(--ds-focus);outline-offset:3px}

/* Keep the brand legible against the dark shell */
.site-header,.announcement{background-color:var(--ds-wine-900)}
.site-header .nav a{color:#f8edd8}
.site-header .nav a:hover,.site-header .nav a:focus-visible{color:#fff}
.brand strong{color:#fff6df}
.brand small{color:#d6b970}
.nav-cta{background:linear-gradient(135deg,rgba(223,185,95,.22),rgba(104,23,34,.58));color:#fff7e5!important}

/* Secure-connect language — no public phone number and no published email */
.contact-protection,.contact-mask{font-size:.72rem!important;color:#9f8c71!important;letter-spacing:.05em}
.contact-line{align-items:center}
.contact-line a{min-height:44px;display:inline-flex;align-items:center}
.form-heading{margin-bottom:.35rem;color:var(--ds-wine-900)}
.form-intro{font-size:.92rem;color:var(--ds-ink-500)!important}

/* GLOBAL responsive container and content scale */
@media (min-width:1200px){
  .section-shell{width:min(var(--ds-max),calc(100% - 3rem))}
}
@media (min-width:992px) and (max-width:1199px){
  .section-shell{width:min(1140px,calc(100% - 2.5rem))}
  .nav{gap:.7rem}
}
@media (min-width:768px) and (max-width:991px){
  .section-shell{width:min(960px,calc(100% - 2rem))}
  .nav-toggle{display:block}
  .nav{position:absolute;top:100%;left:0;right:0;display:none;flex-direction:column;align-items:stretch;padding:1rem;background:rgba(50,10,16,.99);border-bottom:1px solid rgba(242,221,176,.18)}
  .nav.open{display:flex}
  .nav a{padding:.7rem 1rem}
}
@media (min-width:576px) and (max-width:767px){
  .section-shell{width:min(720px,calc(100% - 1.75rem))}
  .nav-toggle{display:block}
  .nav{position:absolute;top:100%;left:0;right:0;display:none;flex-direction:column;align-items:stretch;padding:1rem;background:rgba(50,10,16,.99);border-bottom:1px solid rgba(242,221,176,.18)}
  .nav.open{display:flex}
  .nav a{padding:.7rem 1rem}
}
@media (max-width:575px){
  .section-shell{width:calc(100% - 1.25rem)}
  .site-header{padding-inline:.75rem}
  .announcement{font-size:.68rem}
  .brand strong{font-size:1.08rem}
  .brand small{font-size:.51rem;letter-spacing:.11em}
  .page-hero{padding-top:4.25rem;padding-bottom:3rem}
  .page-hero h1{font-size:clamp(2.7rem,15vw,4.3rem)}
}

/* DIGITAL SIGNATURE — Living Heritage Atlas */
.cultural-atlas{padding:clamp(5rem,9vw,8rem) 0}
.atlas-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:2rem;margin-bottom:2.3rem}
.atlas-heading h2{max-width:760px;margin-bottom:.9rem}
.atlas-heading>div:first-child>p:last-child{max-width:720px;color:var(--ds-ink-700);font-size:1rem}
.atlas-stats{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--ds-line-light);background:rgba(255,255,255,.45);min-width:340px}
.atlas-stats>div{min-width:110px;padding:1rem 1.1rem;border-right:1px solid var(--ds-line-light)}
.atlas-stats>div:last-child{border-right:0}
.atlas-stats b{display:block;font-family:var(--ds-display);font-size:2.2rem;line-height:1;color:var(--ds-wine-800)}
.atlas-stats span{display:block;margin-top:.35rem;font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ds-ink-500)}
.atlas-shell{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);gap:1.2rem;align-items:stretch}
.atlas-art{position:relative;min-height:560px;overflow:hidden;border:1px solid rgba(104,23,34,.22);background:linear-gradient(135deg,rgba(50,10,16,.9),rgba(104,23,34,.68)),url('../images/bengal-digital-canvas.webp') center/cover;box-shadow:var(--shadow);isolation:isolate}
.atlas-art:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 51% 47%,rgba(242,221,176,.18),transparent 18%),linear-gradient(180deg,rgba(255,255,255,.03),rgba(0,0,0,.35));z-index:-1}
.atlas-orbit{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border:1px solid rgba(242,221,176,.26);border-radius:50%;aspect-ratio:1;animation:atlasSpin 32s linear infinite}
.orbit-1{width:38%}.orbit-2{width:57%;border-color:rgba(242,221,176,.17);animation-duration:42s;animation-direction:reverse}.orbit-3{width:78%;border-color:rgba(242,221,176,.1);animation-duration:55s}
.atlas-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:180px;height:180px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:radial-gradient(circle,#e1b95e,#8c4a26 56%,#3b0b12 100%);border:1px solid rgba(255,239,199,.72);box-shadow:0 0 0 12px rgba(242,221,176,.06),0 0 80px rgba(223,185,95,.2)}
.atlas-core span{font-family:var(--bengali);font-size:1.35rem;color:#fff1cf}.atlas-core strong{font-family:var(--ds-display);letter-spacing:.14em;color:#fff8e8;font-size:1.15rem}.atlas-core small{font-size:.58rem;letter-spacing:.16em;text-transform:uppercase;color:#f1d9a0}
.atlas-node{position:absolute;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;min-width:92px;padding:.7rem .6rem;border:1px solid rgba(242,221,176,.35);border-radius:999px;background:rgba(50,10,16,.68);color:#fff4d7;backdrop-filter:blur(8px);transition:transform .2s ease,background .2s ease,border-color .2s ease}
.atlas-node:hover,.atlas-node.is-active{transform:translateY(-3px) scale(1.02);background:rgba(223,185,95,.18);border-color:var(--ds-gold-400)}
.atlas-node span{font-size:.56rem;letter-spacing:.14em;color:var(--ds-gold-400)}.atlas-node strong{font-size:.8rem;letter-spacing:.05em}
.node-1{left:8%;top:12%}.node-2{right:8%;top:18%}.node-3{left:7%;bottom:14%}.node-4{right:8%;bottom:14%}.node-5{left:50%;bottom:4%;transform:translateX(-50%)}.node-5:hover,.node-5.is-active{transform:translateX(-50%) translateY(-3px) scale(1.02)}
.atlas-panel{min-height:560px;padding:clamp(2rem,4vw,3.5rem);display:flex;flex-direction:column;justify-content:center;background:var(--ds-wine-900);color:var(--ds-dark-copy);position:relative;overflow:hidden}
.atlas-panel:before{content:"";position:absolute;width:300px;height:300px;right:-110px;top:-130px;border:1px solid rgba(242,221,176,.18);border-radius:50%;box-shadow:0 0 0 26px rgba(242,221,176,.02),0 0 0 54px rgba(242,221,176,.02)}
.atlas-panel .section-kicker{color:var(--ds-gold-400);position:relative}.atlas-panel h3{color:#fff1d5;max-width:620px;font-size:clamp(2.2rem,4vw,3.8rem);position:relative}.atlas-panel p:not(.section-kicker){color:#dccbb0;max-width:600px;position:relative}.atlas-panel .text-link{color:var(--ds-gold-400);position:relative;margin-top:.6rem}.atlas-meter{height:2px;width:100%;background:rgba(242,221,176,.14);margin-top:2rem;position:relative;overflow:hidden}.atlas-meter span{display:block;width:20%;height:100%;background:linear-gradient(90deg,var(--ds-gold-600),var(--ds-gold-400));transition:width .5s ease}
@keyframes atlasSpin{to{transform:translate(-50%,-50%) rotate(360deg)}}

/* More visual distinction for the heritage image frame on light pages */
.bengal-story-bg,.rural-frame,.art-culture-intro img,.manifesto-art img{image-rendering:auto}
.rural-frame{background-image:linear-gradient(180deg,rgba(20,5,9,.18),rgba(20,5,9,.5)),url('../images/bengal-digital-canvas.webp')}

/* Gallery / image system: keep imagery visually rich without sacrificing text contrast. */
.gallery-item{background:var(--ds-paper-0);box-shadow:0 14px 40px rgba(50,10,16,.05)}
.gallery-item figcaption{background:linear-gradient(180deg,rgba(255,250,240,.98),rgba(246,236,216,.98))}
.gallery-item figcaption strong{color:var(--ds-wine-900)}

@media (max-width:991px){
  .atlas-heading{grid-template-columns:1fr;align-items:start}
  .atlas-stats{min-width:0;max-width:560px}
  .atlas-shell{grid-template-columns:1fr}
  .atlas-art,.atlas-panel{min-height:500px}
}
@media (max-width:767px){
  .atlas-stats{width:100%}
  .atlas-stats>div{padding:.9rem .7rem}
  .atlas-stats b{font-size:1.8rem}
  .atlas-art{min-height:440px}
  .atlas-core{width:145px;height:145px}
  .atlas-node{min-width:78px;padding:.58rem .5rem}
  .node-1{left:3%;top:10%}.node-2{right:3%;top:16%}.node-3{left:3%;bottom:12%}.node-4{right:3%;bottom:12%}.node-5{bottom:3%}
  .atlas-panel{min-height:420px;padding:2rem 1.35rem}
}
@media (max-width:575px){
  .atlas-stats{grid-template-columns:1fr 1fr 1fr}
  .atlas-stats span{font-size:.56rem}
  .atlas-art{min-height:390px}
  .atlas-core{width:125px;height:125px}.atlas-core span{font-size:1.05rem}.atlas-core strong{font-size:.95rem}
  .atlas-node{min-width:70px;font-size:.75rem}.atlas-node strong{font-size:.7rem}
  .node-1{left:2%;top:8%}.node-2{right:2%;top:12%}.node-3{left:2%;bottom:13%}.node-4{right:2%;bottom:13%}
}
@media (prefers-reduced-motion:reduce){.atlas-orbit{animation:none}.atlas-meter span{transition:none}}

/* ========================================================================
   V4 GLOBAL DESIGN SYSTEM — shared across all matching templates
   ======================================================================== */
:root{
  --ds-display:'Cormorant Garamond', Georgia, serif;
  --ds-script:'Berkshire Swash', 'Brush Script MT', cursive;
  --ds-body:'Manrope', Arial, sans-serif;
  --ds-cream:#f6ecd8;
  --ds-paper:#efe1c5;
  --ds-wine-950:#22060b;
  --ds-wine-900:#350912;
  --ds-wine-800:#4d1019;
  --ds-wine-700:#6b1b27;
  --ds-gold-500:#d3a14c;
  --ds-gold-400:#e5c878;
  --ds-ink-900:#211416;
  --ds-ink-700:#5f4d4d;
  --ds-line:#d8c5a4;
  --ds-focus:#f1c34f;
  --ds-max:1180px;
  --ds-radius:22px;
}
html{background:var(--ds-cream)}
body{font-family:var(--ds-body);background:linear-gradient(180deg,#fbf4e5 0%,#f0e3c8 100%);color:var(--ds-ink-900)}
main{overflow:clip}
.site-header{min-height:78px}
.brand strong{font-family:var(--ds-script);font-size:1.7rem;letter-spacing:.01em}
.brand small{font-family:var(--ds-body);letter-spacing:.14em}
h1,h2,h3,.footer-brand,.hero-signature i{font-family:var(--ds-display)}
.hero h1,.page-hero h1{letter-spacing:-.02em}
.hero h1 em,h1 em,h2 em,h3 em{font-family:var(--ds-script);font-weight:400}
.hero-bengali,.bengali-inline{font-family:var(--bengali)}
/* decorative hover bubble for text links and navigation */
.nav a,.text-link,.button,.form-heading,.section-kicker{transition:transform .22s ease, color .22s ease, box-shadow .22s ease, background .22s ease, letter-spacing .22s ease}
@media (hover:hover){
  .nav a:not(.nav-cta):hover,.text-link:hover{transform:translateY(-2px) scale(1.03);text-shadow:0 8px 20px rgba(200,157,73,.24)}
  .text-link:hover{letter-spacing:.14em}
  .section-kicker:hover{letter-spacing:.28em}
}
.nav-cta{white-space:nowrap;min-width:152px;justify-content:center;font-family:var(--ds-display);font-size:.95rem;letter-spacing:.04em;text-transform:none}
.nav-contact{white-space:nowrap}
.button{white-space:nowrap}
.button-gold:hover{box-shadow:0 18px 36px rgba(153,105,27,.34)}
/* shared hero media rules — eliminate dead black gutters without changing hierarchy */
.hero-artwork,.page-hero,.editorial-hero,.detail-feature,.story-poster,.manifesto-art,.rural-frame,.contact-art-card,.program-image-frame,.event-wide-media{overflow:hidden}
.hero-artwork{background-position:center center;background-size:cover}
.hero-artwork:before,.page-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(35,7,12,.72),rgba(35,7,12,.22) 52%,rgba(35,7,12,.35));pointer-events:none}
.hero-artwork img,.detail-feature img,.program-image-frame img,.story-poster img,.manifesto-art img,.event-wide-media img,.contact-art-card img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.detail-feature,.program-image-frame,.event-wide-media{position:relative;background:var(--ds-wine-950)}
.detail-feature img{min-height:520px;max-height:650px;object-fit:cover}
.detail-kathak .detail-feature{background:radial-gradient(circle at 50% 25%,#8b3a32 0%,#3d0a12 52%,#190307 100%);padding:1.15rem;min-height:540px}
.detail-kathak .detail-feature img{object-fit:contain;object-position:center bottom;mix-blend-mode:screen;filter:drop-shadow(0 20px 35px rgba(0,0,0,.38))}
.detail-rangoli{position:absolute;right:-45px;bottom:-45px;width:150px;height:150px;border-radius:50%;background:repeating-conic-gradient(from 0deg,#e9c66f 0 8deg,transparent 8deg 22deg);mask:radial-gradient(circle at center,transparent 0 44%,#000 45% 100%);opacity:.42;transform:rotate(13deg)}
.story-poster{position:relative;min-height:360px;background:#2a080d;border-radius:var(--ds-radius)}
.story-poster img{filter:saturate(.86) contrast(1.04);object-position:center}
.poster-overlay{position:absolute;inset:auto 0 0;padding:2rem;background:linear-gradient(180deg,transparent,rgba(35,7,12,.78));color:#fff1d5}
.poster-word{font-family:var(--ds-script);font-size:clamp(2.8rem,6vw,5.3rem);line-height:1}
.poster-sub{font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ds-gold-400)}
.rangoli-medallion{position:absolute;right:1.1rem;top:1.1rem;width:75px;height:75px;border-radius:50%;background:repeating-conic-gradient(#e8c56c 0 9deg,transparent 9deg 18deg);mask:radial-gradient(circle at center,transparent 0 35%,#000 36% 52%,transparent 53% 100%);opacity:.68}
/* artistic six-frame visual system */
.visual-culture{padding:clamp(5rem,9vw,8rem) 0}
.visual-culture-grid{display:grid;grid-template-columns:1.05fr .8fr .8fr;grid-auto-rows:220px;gap:12px}
.visual-frame{position:relative;margin:0;overflow:hidden;border:1px solid rgba(90,16,24,.18);background:var(--ds-wine-900);box-shadow:0 16px 48px rgba(44,7,10,.12);min-height:220px}
.visual-frame img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .4s ease}.visual-frame:hover img{transform:scale(1.055);filter:saturate(1.08) contrast(1.02)}
.visual-frame figcaption{position:absolute;left:0;right:0;bottom:0;padding:.95rem 1rem;background:linear-gradient(180deg,transparent,rgba(35,7,12,.88));color:#fff4db;font-family:var(--ds-display);font-size:1.28rem}
.visual-tall{grid-row:span 2}.visual-wide{grid-column:span 2}
/* rangoli-inspired ornamental corners */
.rangoli-corner{position:absolute;width:95px;height:95px;background:repeating-conic-gradient(from 12deg,rgba(230,195,106,.75) 0 6deg,transparent 6deg 18deg);mask:radial-gradient(circle at center,transparent 0 28%,#000 29% 43%,transparent 44% 55%,#000 56% 66%,transparent 67% 100%);opacity:.55}
.rangoli-corner-a{left:-16px;top:-16px}.rangoli-corner-b{right:-18px;bottom:-18px;transform:rotate(45deg)}
/* contact page */
.contact-hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:2rem;align-items:center}
.contact-hero-ribbon{display:flex;gap:.7rem;align-items:center;margin-top:1.5rem;color:var(--ds-wine-700);font-family:var(--bengali);font-size:1.1rem}
.contact-art-card{position:relative;min-height:440px;border:1px solid rgba(90,16,24,.18);background:radial-gradient(circle at 50% 45%,#6f1c23,#28070c 78%);box-shadow:var(--shadow)}
.contact-art-card img{object-fit:contain;padding:1.2rem;filter:drop-shadow(0 24px 35px rgba(0,0,0,.35))}
.contact-art-card>span{position:absolute;left:1rem;bottom:1rem;color:#f0dcae;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase}
.contact-modern{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:2.5rem;padding-top:clamp(4rem,7vw,6.5rem);padding-bottom:clamp(5rem,9vw,8rem)}
.connect-ways{display:grid;gap:.75rem;margin-top:1.5rem}
.connect-card{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:.85rem;padding:.95rem 1rem;background:rgba(255,250,240,.8);border:1px solid var(--ds-line);min-height:70px;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.connect-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(70,21,15,.11);border-color:rgba(200,157,73,.7)}
.connect-card small{display:block;color:var(--ds-ink-700);margin-top:.08rem}.connect-card b{font-family:var(--ds-display);font-size:1.35rem}.connect-arrow{font-size:1.1rem;color:var(--ds-wine-700)}
.social-icon{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;color:#fff;font-weight:800;font-family:Arial,sans-serif;box-shadow:inset 0 0 0 1px rgba(255,255,255,.2)}
.social-facebook{background:#1877f2}.social-instagram{background:linear-gradient(135deg,#833ab4,#fd1d1d 55%,#fcb045)}.social-youtube{background:#ff0033}.social-whatsapp{background:#25d366}
.contact-note{display:flex;gap:.85rem;margin-top:1.25rem;padding:1rem 1.1rem;border:1px dashed rgba(90,16,24,.25);background:rgba(239,225,197,.5)}
.note-icon{color:var(--ds-gold-500);font-size:1.25rem}.contact-note p{font-size:.86rem;margin:.2rem 0 0}
.contact-signature{background:var(--ds-wine-950);color:var(--ds-gold-400);padding:1rem 0}.signature-inner{display:flex;justify-content:center;align-items:center;gap:.9rem;font-family:var(--ds-script);font-size:1.1rem;letter-spacing:.04em}
/* programs page */
.program-showcase{display:grid;gap:1.3rem;padding-top:clamp(4rem,7vw,6rem);padding-bottom:clamp(5rem,9vw,8rem)}
.program-visual-card{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);min-height:440px;background:#fff8ec;border:1px solid rgba(90,16,24,.12);box-shadow:var(--shadow);overflow:hidden}
.program-visual-card:nth-child(even){grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr)}.program-visual-card:nth-child(even) .program-image-frame{order:2}.program-visual-card:nth-child(even) .program-visual-copy{order:1}
.program-image-frame{min-height:440px}.program-image-frame img{object-position:center}.program-visual-card.is-kathak .program-image-frame{background:radial-gradient(circle at 50% 45%,#8c3d36 0%,#3d0b13 62%,#1b0508 100%)}.program-visual-card.is-kathak .program-image-frame img{object-fit:contain;padding:1rem;filter:drop-shadow(0 20px 30px rgba(0,0,0,.32))}
.program-frame-ornament{position:absolute;inset:18px;border:1px solid rgba(234,201,117,.46);pointer-events:none}.program-frame-ornament:before,.program-frame-ornament:after{content:"✦";position:absolute;color:var(--ds-gold-400);font-size:1rem}.program-frame-ornament:before{left:-.55rem;top:-.75rem}.program-frame-ornament:after{right:-.55rem;bottom:-.75rem}
.program-visual-copy{padding:clamp(2rem,4vw,4rem);position:relative;display:flex;flex-direction:column;justify-content:center}.program-visual-copy h2{font-size:clamp(2.7rem,5vw,5.2rem);max-width:600px}.program-visual-copy h2 span{display:inline-block;margin-left:.35rem;font-family:var(--bengali);font-size:.35em;color:var(--ds-wine-700);vertical-align:middle}.program-visual-index{position:absolute;right:1.6rem;top:1.4rem;font-family:var(--ds-display);font-size:4.5rem;color:rgba(90,16,24,.08)}
/* performances */
.performance-types{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;padding-top:clamp(4rem,7vw,6rem);padding-bottom:clamp(3rem,6vw,5rem)}
.performance-type-card{padding:2rem;background:#fff8ec;border:1px solid var(--ds-line);position:relative;overflow:hidden}.performance-type-card:after{content:"";position:absolute;right:-30px;bottom:-40px;width:120px;height:120px;border-radius:50%;border:1px solid rgba(200,157,73,.42)}.performance-type-card>span{color:var(--ds-gold-500);font-family:var(--ds-display);font-size:2rem}.performance-type-card h3{font-size:2.2rem;margin:.5rem 0}.performance-list{display:grid;gap:1.15rem}.event-wide{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);background:#fff8ec;border:1px solid var(--ds-line);overflow:hidden;box-shadow:0 16px 48px rgba(70,21,15,.06)}.event-wide-media{min-height:330px}.event-wide-media img{object-fit:cover}.event-type-badge{position:absolute;left:1rem;top:1rem;padding:.5rem .7rem;background:rgba(35,7,12,.88);color:#f8e9c9;border:1px solid rgba(229,200,120,.5);font-size:.65rem;letter-spacing:.12em;text-transform:uppercase}.event-wide>div:last-child{padding:clamp(2rem,4vw,3.3rem);display:flex;flex-direction:column;justify-content:center}.event-subtitle{font-family:var(--ds-display);font-size:1.35rem;color:var(--ds-wine-700)}.event-location{margin-top:.5rem;color:var(--ds-wine-700);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase}
/* forms and inputs */
.enquiry-form label{font-size:.78rem;letter-spacing:.05em;text-transform:uppercase;color:var(--ds-wine-800)}
.enquiry-form input,.enquiry-form select,.enquiry-form textarea{background:#fffaf0;border:1px solid #d2bd96;min-height:50px;padding:.8rem .9rem;color:var(--ds-ink-900)}
.enquiry-form input:focus,.enquiry-form select:focus,.enquiry-form textarea:focus{outline:3px solid rgba(229,200,120,.45);outline-offset:1px;border-color:var(--ds-gold-500)}
/* global responsive QA */
@media (min-width:1200px){.section-shell{width:min(var(--ds-max),calc(100% - 3rem))}}
@media (min-width:992px) and (max-width:1199px){.nav{gap:.72rem}.brand small{letter-spacing:.1em}.visual-culture-grid{grid-template-columns:1fr 1fr}.visual-wide{grid-column:span 2}}
@media (min-width:768px) and (max-width:991px){.site-header{flex-wrap:wrap}.nav-toggle{display:block}.nav{position:absolute;top:100%;left:0;right:0;display:none;flex-direction:column;align-items:stretch;padding:1rem;background:rgba(34,6,11,.98)}.nav.open{display:flex}.nav a{padding:.7rem 1rem}.program-visual-card,.program-visual-card:nth-child(even),.event-wide,.contact-modern,.contact-hero-grid{grid-template-columns:1fr}.program-visual-card:nth-child(even) .program-image-frame,.program-visual-card:nth-child(even) .program-visual-copy{order:initial}.performance-types{grid-template-columns:1fr 1fr}.visual-culture-grid{grid-template-columns:1fr 1fr}.visual-tall,.visual-wide{grid-row:span 1;grid-column:auto}.contact-art-card{min-height:380px}}
@media (max-width:767px){.brand strong{font-size:1.45rem}.brand small{font-size:.48rem}.hero{min-height:82vh}.hero-side-note,.hero-scroll{display:none}.visual-culture-grid{grid-template-columns:1fr}.visual-tall,.visual-wide{grid-row:span 1;grid-column:auto}.performance-types{grid-template-columns:1fr}.event-wide-media{min-height:300px}.signature-inner{flex-wrap:wrap;gap:.4rem .65rem;font-size:.95rem}.contact-hero-grid{grid-template-columns:1fr}.contact-modern{grid-template-columns:1fr}.program-visual-card,.program-visual-card:nth-child(even){grid-template-columns:1fr}.program-visual-card:nth-child(even) .program-image-frame{order:initial}.program-image-frame{min-height:360px}.program-visual-copy{padding:2rem 1.3rem}.detail-feature img{min-height:420px}}
@media (max-width:575px){.site-header{min-height:68px}.nav-cta{min-width:144px}.contact-art-card{min-height:330px}.contact-hero-ribbon{flex-wrap:wrap;font-size:.95rem}.connect-card{grid-template-columns:40px 1fr auto}.social-icon{width:40px;height:40px}.program-visual-copy h2{font-size:clamp(2.4rem,14vw,4rem)}.program-image-frame{min-height:320px}.detail-kathak .detail-feature{min-height:420px}.signature-inner span{max-width:90%;text-align:center}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.social-icon svg{width:23px;height:23px;display:block}

/* ========================================================================
   V10 FINAL SHARED DESIGN SYSTEM
   Global fixes requested after visual review: no wasted hero space, full-
   fidelity imagery, stronger typography, lighter gold ornament on dark
   surfaces, one-line enquiry CTA, artistic hover reveal, and symmetrical
   responsive composition.
   ======================================================================== */
:root{
  --v10-cream:#fbf3e3;
  --v10-paper:#f1e0c3;
  --v10-wine:#350912;
  --v10-wine-2:#5d1620;
  --v10-gold:#dcb75e;
  --v10-gold-light:#f0d38b;
  --v10-ink:#251517;
  --v10-muted:#604c4d;
  --v10-max:1180px;
  --v10-hero-h:calc(100svh - 108px);
}

/* One typography contract used throughout the site. */
html,body{font-family:var(--ds-body);color:var(--v10-ink)}
h1,h2,h3,.footer-brand,.hero-signature i{font-family:var(--ds-display);font-weight:600}
h1 em,h2 em,h3 em,.section-kicker em,.quote em{font-family:var(--ds-script);font-style:normal;font-weight:400;transition:transform .25s ease,color .25s ease,text-shadow .25s ease;display:inline-block}
@media (hover:hover){h1 em:hover,h2 em:hover,h3 em:hover,.section-kicker em:hover,.quote em:hover{transform:translateY(-2px) scale(1.03);color:var(--v10-gold);text-shadow:0 5px 18px rgba(220,183,94,.25)}}
.announcement{font-family:var(--ds-display);font-size:.84rem;font-weight:600;letter-spacing:.04em;color:#fff4da;text-shadow:0 1px 0 rgba(0,0,0,.25)}
.announcement span:first-child{font-family:var(--bengali);font-size:.92rem;font-weight:700;color:var(--v10-gold-light)}

/* Compact social utility rail; icon labels remain accessible. */
.micro-social{position:absolute;right:clamp(1rem,2vw,2rem);top:6px;display:flex;gap:.35rem;z-index:15}
.micro-social a{width:28px;height:28px;border:1px solid rgba(240,211,139,.28);border-radius:50%;display:grid;place-items:center;color:#fff2cf;font-family:var(--ds-body);font-weight:800;font-size:.72rem;text-decoration:none;background:rgba(53,9,18,.35);transition:transform .2s ease,background .2s ease,color .2s ease}
.micro-social a:hover,.micro-social a:focus-visible{transform:translateY(-2px) scale(1.06);background:rgba(220,183,94,.2);color:#fff}

/* Hero: image fills the frame rather than leaving top/bottom gutters. */
.hero-art-directed{height:var(--v10-hero-h);min-height:620px;padding:0;display:block;overflow:hidden}
.hero-artwork{inset:0;background-size:100% 100%;background-position:center;background-repeat:no-repeat;transform:none}
.hero-copy{min-height:100%;height:100%;padding-top:0!important;padding-bottom:0!important;display:flex;justify-content:center}
.hero-art-directed h1{font-size:clamp(3.2rem,6.7vw,7rem);line-height:.86;text-wrap:balance}
.hero-art-directed .hero-lead{max-width:640px}
.hero-actions .button{white-space:nowrap}
.hero-side-note{bottom:3.5rem}.hero-scroll{bottom:1rem}

/* All inner-page heroes use the same compact frame, no blank top/bottom. */
.page-hero,.editorial-hero{min-height:clamp(290px,34vh,405px);height:clamp(290px,34vh,405px);padding:0!important;display:flex;align-items:center;position:relative;overflow:hidden;background:linear-gradient(90deg,rgba(53,9,18,.96),rgba(53,9,18,.78)),url('../images/hero-bengal-cinematic.webp') center/cover no-repeat;border-bottom:1px solid rgba(220,183,94,.25)}
.page-hero:after,.editorial-hero:after{content:"";position:absolute;inset:auto 0 0;height:40%;background:linear-gradient(180deg,transparent,rgba(53,9,18,.12));pointer-events:none}
.page-hero .section-shell{position:relative;z-index:2;color:#fff5df}
.page-hero h1,.editorial-hero h1{color:#fff5df;text-shadow:0 5px 24px rgba(0,0,0,.22)}
.page-hero p:not(.section-kicker),.editorial-hero p:not(.section-kicker){color:#f0dfbf}
.page-hero .section-kicker,.editorial-hero .section-kicker{color:var(--v10-gold-light)}
.page-hero-motto{display:flex;align-items:center;gap:.65rem;margin-top:1rem;font-family:var(--ds-display);font-size:1.05rem;color:var(--v10-gold-light);font-weight:600}
.page-hero-motto span{white-space:nowrap}.page-hero-motto i{font-style:normal;opacity:.7}

/* Full-fidelity image contract: no hair/head/feet loss. */
.program-image-frame,.detail-feature,.story-poster,.contact-art-card,.gallery-media,.alpana-card,.heritage-image-grid>img{display:grid;place-items:center;position:relative;overflow:visible}
.program-image-frame img,.detail-feature img,.story-poster img,.contact-art-card img,.gallery-media img,.alpana-card img,.heritage-image-grid>img{width:100%;height:100%;max-height:100%;object-fit:contain;object-position:center}
.program-image-frame img,.detail-feature img,.contact-art-card img,.heritage-image-grid>img{padding:1rem}
.program-image-frame,.detail-feature{background:linear-gradient(145deg,#2b0b10,#5d1620);}
.program-image-frame img,.detail-feature img{filter:drop-shadow(0 18px 28px rgba(0,0,0,.28))}
.story-poster img,.contact-art-card img{background:#1c0a0d}

/* Gallery hover/focus: full image pops forward, then settles. */
.image-peek{position:relative;outline:none}
.image-peek .gallery-media{overflow:visible}
.image-peek img{transform:scale(1);transform-origin:center;transition:transform .34s cubic-bezier(.2,.9,.2,1.1),filter .34s ease,box-shadow .34s ease;will-change:transform}
@media (hover:hover){.image-peek:hover{z-index:20}.image-peek:hover img{transform:scale(1.08) translateY(-5px);filter:drop-shadow(0 18px 30px rgba(40,9,12,.3));}}
.image-peek.is-peek-active{z-index:20}.image-peek.is-peek-active img{transform:scale(1.08) translateY(-5px);filter:drop-shadow(0 18px 30px rgba(40,9,12,.3))}
.peek-hint{position:absolute;right:.65rem;top:.65rem;background:rgba(38,10,14,.78);color:#f6dfaf;border:1px solid rgba(240,211,139,.32);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;padding:.35rem .5rem;border-radius:999px;opacity:.0;transition:opacity .2s ease,transform .2s ease;pointer-events:none}
.image-peek:hover .peek-hint,.image-peek.is-peek-active .peek-hint{opacity:1;transform:translateY(-2px)}

/* Program page symmetry and image balance. */
.program-showcase{padding-block:clamp(2rem,4vw,3.5rem)}
.program-visual-card{min-height:430px}
.program-visual-card:nth-child(even){grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr)}
.program-visual-card:nth-child(even) .program-image-frame{order:2}
.program-visual-card:nth-child(even) .program-visual-copy{order:1}
.program-image-frame img{object-fit:contain}
.heritage-image-band{position:relative;overflow:hidden;background:#2c0a10}
.heritage-image-band:before{display:none!important}
.heritage-image-grid{display:grid;grid-template-columns:minmax(300px,.75fr) minmax(0,1.25fr);align-items:center;gap:3rem;padding-block:clamp(3rem,7vw,6rem);position:relative;z-index:1}
.heritage-image-grid>img{height:360px;border:1px solid rgba(240,211,139,.3);background:#1c0a0d}
.heritage-image-grid h2{color:#fff1d7;font-size:clamp(2.5rem,4.5vw,4.5rem)}
.heritage-image-grid p:not(.section-kicker){color:#decaa5;max-width:58ch}

/* Contact is a connection studio, not a second “contact” navigation page. */
.connect-card{min-height:68px}
.contact-modern{padding-top:clamp(2rem,5vw,4rem)}
.contact-note{border:1px solid var(--ds-line);background:rgba(255,255,255,.46);padding:1rem 1.1rem;display:flex;gap:.8rem;align-items:flex-start;margin-top:1.2rem}
.note-icon{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--v10-wine);color:var(--v10-gold-light);flex:0 0 auto}
.contact-note p{margin:.2rem 0 0;color:var(--v10-muted)}

/* Art & Culture Alpana gallery. */
.alpana-gallery{padding-block:clamp(3rem,6vw,5.5rem)}
.alpana-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.6rem}
.alpana-card{background:#fff8ec;border:1px solid var(--ds-line);padding:.75rem;box-shadow:0 15px 45px rgba(55,12,17,.07)}
.alpana-card img{height:360px;background:#e4d6ba}
.alpana-card figcaption{font-family:var(--ds-display);font-size:1.25rem;color:var(--v10-wine);padding:.7rem .35rem .25rem;font-weight:600}
.source-note{font-size:.7rem;color:#796768;margin-top:.85rem}

/* Inner studio visual ribbon. */
.inner-image-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem;margin-top:1.2rem}
.inner-image-strip img{width:100%;height:180px;object-fit:contain;background:#2a0a0f;border:1px solid var(--ds-line);padding:.3rem}

/* Footer mantra gets the stronger contrast requested. */
.footer-bottom span:nth-child(2){color:#f3d48f;font-family:var(--ds-display);font-weight:600;font-size:.78rem;letter-spacing:.06em}
.footer-note{color:#d5bf9b!important}

@media (max-width:991px){
  :root{--v10-hero-h:calc(100svh - 96px)}
  .hero-art-directed{min-height:560px}
  .hero-artwork{background-size:cover;background-position:60% center}
  .hero-copy{padding-inline:1.25rem!important}
  .heritage-image-grid{grid-template-columns:1fr}
  .heritage-image-grid>img{height:300px}
  .alpana-grid{grid-template-columns:1fr}
}
@media (max-width:767px){
  .micro-social{display:none}
  .hero-art-directed,.hero-copy{min-height:0;height:calc(100svh - 88px)}
  .hero-artwork{background-position:63% center}
  .hero-art-directed .hero-lead{max-width:30rem}
  .page-hero,.editorial-hero{height:310px;min-height:310px}
  .page-hero-motto{flex-wrap:wrap;font-size:.92rem}
  .program-visual-card,.program-visual-card:nth-child(even){grid-template-columns:1fr}
  .program-visual-card:nth-child(even) .program-image-frame,.program-visual-card:nth-child(even) .program-visual-copy{order:initial}
  .program-image-frame{min-height:350px}
  .detail-feature img{min-height:0}
  .inner-image-strip{grid-template-columns:1fr}
  .inner-image-strip img{height:240px}
}
@media (max-width:575px){
  .hero-art-directed,.hero-copy{height:calc(100svh - 82px)}
  .hero-artwork{background-position:66% center}
  .page-hero,.editorial-hero{height:285px;min-height:285px}
  .page-hero h1,.editorial-hero h1{font-size:clamp(2.6rem,13vw,4rem)}
  .page-hero-motto{font-size:.83rem;gap:.45rem}
  .program-image-frame{min-height:315px}
  .heritage-image-grid>img{height:260px}
  .alpana-card img{height:280px}
}


/* =====================================================================
   V11 CONSOLIDATED VISUAL REFINEMENT
   Shared design-system corrections for the reported issues:
   - artistic navigation typography + hover bloom
   - single-line Online & Offline metadata
   - compact, symmetric vertical rhythm across every major section
   - true full-frame imagery without destructive cropping
   - stronger inner-page hero utilization
   ===================================================================== */
:root{
  --v11-section-y:clamp(2.15rem,4vw,4rem);
  --v11-hero-inner:clamp(248px,30vh,330px);
  --v11-nav-script:var(--serif);
  --v11-nav-ink:#fff1d6;
}

/* Navigation: artistic, legible, single-line, with a restrained 'bubble' hover. */
.nav{font-family:var(--v11-nav-script);font-size:1rem;letter-spacing:.015em;text-transform:none;gap:clamp(.85rem,1.35vw,1.45rem);font-weight:600}
.nav a{font-family:var(--v11-nav-script);font-size:1rem;line-height:1;white-space:nowrap;position:relative;padding:.52rem .18rem;color:var(--v11-nav-ink);opacity:.94;border-radius:999px;transition:transform .2s ease,background .2s ease,box-shadow .2s ease,color .2s ease}
.nav a::after{content:"";position:absolute;left:18%;right:18%;bottom:.12rem;height:1px;background:linear-gradient(90deg,transparent,var(--gold-soft),transparent);transform:scaleX(0);transition:transform .22s ease}
.nav a:hover,.nav a:focus-visible{transform:translateY(-1px) scale(1.04);background:rgba(228,198,122,.10);box-shadow:0 0 0 1px rgba(228,198,122,.18),0 8px 24px rgba(0,0,0,.12);color:#fff9ea;opacity:1}
.nav a:hover::after,.nav a:focus-visible::after{transform:scaleX(1)}
.nav-cta{font-family:var(--v11-nav-script)!important;font-size:1rem!important;min-width:10.25rem;white-space:nowrap!important;padding:.72rem 1.15rem!important;border-radius:999px!important;background:linear-gradient(135deg,rgba(220,183,94,.16),rgba(93,22,32,.55));box-shadow:inset 0 0 0 1px rgba(228,198,122,.20)!important}

/* Shared vertical rhythm: no oversized blank top/bottom bands. */
.intro,.discipline-grid,.journey,.faculty,.events,.admissions,.program-showcase,.story,.values,.cta-block,.collaboration,.gallery,.contact,.contact-modern,.visual-culture,.manifesto,.heritage-strip,.dance-forms,.difference,.home-cta,.alpana-gallery,.mini-cta,.forms-story,.values-light,.art-culture-intro,.heritage-image-band{padding-top:var(--v11-section-y);padding-bottom:var(--v11-section-y)}
.program-showcase{gap:1rem}
.program-visual-card{min-height:390px}
.program-image-frame{min-height:390px}
.program-visual-copy{padding:clamp(1.5rem,3vw,2.4rem)}

/* Inner hero: compact and content-led; no artificial top/bottom whitespace. */
.page-hero,.editorial-hero{height:var(--v11-hero-inner);min-height:var(--v11-hero-inner);padding:0!important}
.page-hero .section-shell,.editorial-hero .section-shell{width:min(var(--v10-max),calc(100% - 2rem));padding-block:0;margin-block:auto}
.page-hero h1,.editorial-hero h1{line-height:.9;margin-bottom:.55rem}
.page-hero p:not(.section-kicker),.editorial-hero p:not(.section-kicker){margin-top:.65rem;margin-bottom:.25rem;line-height:1.45}
.page-hero-motto{margin-top:.7rem}

/* Exact one-line metadata pills: especially Online & Offline. */
.program-meta{display:flex;align-items:center;gap:.45rem;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:.8rem 0 1rem}
.program-meta::-webkit-scrollbar{display:none}
.program-meta span{flex:0 0 auto;white-space:nowrap;font-family:var(--serif);font-size:1rem;line-height:1;padding:.38rem .68rem;border:1px solid rgba(90,16,24,.14);border-radius:999px;color:var(--wine);background:rgba(255,255,255,.5);letter-spacing:.01em}

/* Full fidelity image frame: retain complete figure, including hair, hands and feet. */
.program-image-frame img,.detail-feature img,.story-poster img,.contact-art-card img,.gallery-media img,.alpana-card img,.heritage-image-grid>img{object-fit:contain!important;object-position:center center!important}
.program-image-frame img{padding:clamp(.35rem,1vw,1rem)!important}
.story-poster img{object-fit:contain!important;padding:0!important}

/* Mentor portrait: use the provided full portrait without cropping. */
.mentor-portrait{background:linear-gradient(155deg,#2b0a0e,#6c2b2b 55%,#c79c55);display:flex;align-items:center;justify-content:center;overflow:hidden}
.mentor-portrait img{width:100%;height:100%;object-fit:contain!important;object-position:center!important;padding:.45rem;background:#14070a}

/* The recreated Gaudiya/Odissi visual is an editorial support band; existing V4 assets remain primary. */
.program-art-recreation{padding-top:0;padding-bottom:var(--v11-section-y)}
.program-art-recreation .section-shell{position:relative}
.program-art-recreation figure{margin:0;border:1px solid rgba(90,16,24,.12);background:#2a080d;box-shadow:var(--shadow);overflow:hidden}
.program-art-recreation img{width:100%;height:auto;display:block;object-fit:cover}
.program-art-recreation figcaption{padding:.8rem 1rem;font-family:var(--serif);font-size:1.1rem;color:#fff0d2;background:#2b080d;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}

/* Cultural ribbon: brighter gold on dark backgrounds for the requested visibility. */
.announcement{color:#fff4dc!important;font-weight:700!important}
.footer-bottom span:nth-child(2){color:#ffe09a!important;font-weight:700!important}

/* Keep the complete artist visible at every requested viewport. */
@media (min-width:992px){
  .program-visual-card{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr)}
  .program-visual-card:nth-child(even){grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)}
}
@media (max-width:991px){
  .nav{gap:.5rem}
  .nav a{font-size:.98rem}
}
@media (max-width:767px){
  .page-hero,.editorial-hero{height:240px;min-height:240px}
  .program-meta{max-width:100%;}
  .program-meta span{font-size:.96rem}
  .program-visual-card{min-height:0}
  .program-image-frame{min-height:320px}
  .program-art-recreation{padding-top:0}
}
@media (max-width:575px){
  .page-hero,.editorial-hero{height:222px;min-height:222px}
  .page-hero h1,.editorial-hero h1{font-size:clamp(2.45rem,12vw,3.8rem)}
  .page-hero-motto{font-size:.8rem}
  .program-image-frame{min-height:290px}
  .nav-cta{min-width:0;width:100%}
}

/* =====================================================================
   V12 CONSOLIDATED VISUAL CORRECTION LAYER
   One shared system for the latest review: compact rhythm, live ribbon,
   full-image reveal and stronger artistic navigation.
   ===================================================================== */
:root{
  --v12-section-y:clamp(1.55rem,2.75vw,2.8rem);
  --v12-hero-inner:clamp(220px,24vh,292px);
  --v12-ribbon-h:76px;
}

/* Supplied image-3 is treated as a design reference for the live header,
   never as a rasterized screenshot. */
.announcement{display:none!important}
.site-header{
  min-height:var(--v12-ribbon-h);
  padding:.55rem clamp(1rem,3vw,2.2rem);
  background:#2b080d;
  border-bottom:1px solid rgba(228,198,122,.28);
  box-shadow:0 8px 28px rgba(31,5,9,.16);
}
.brand{gap:.7rem}
.brand strong{
  font-family:var(--serif)!important;
  font-weight:600;
  letter-spacing:.01em;
}
.brand small{
  font-family:var(--bengali)!important;
  color:#e0c07a!important;
  letter-spacing:.025em;
}
.nav a{
  font-family:var(--serif)!important;
  font-size:.86rem!important;
  font-weight:600!important;
  letter-spacing:.02em;
  position:relative;
  white-space:nowrap;
  transition:color .22s ease, transform .22s cubic-bezier(.2,.9,.2,1.2), text-shadow .22s ease;
}
.nav a:hover,.nav a:focus-visible{
  color:#f4d78f!important;
  transform:translateY(-2px) scale(1.035);
  text-shadow:0 0 14px rgba(240,207,130,.28);
}
.nav a:not(.nav-cta):after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-.32rem;
  width:0;
  height:2px;
  background:linear-gradient(90deg,transparent,#e5be67,transparent);
  transform:translateX(-50%);
  transition:width .22s ease;
}
.nav a:hover:not(.nav-cta):after,.nav a:focus-visible:not(.nav-cta):after{width:70%}
.nav-cta{white-space:nowrap!important;min-width:142px;text-align:center}

/* Remove the large vertical bands from all matching section classes. */
.intro,.discipline-grid,.journey,.faculty,.events,.admissions,.program-showcase,
.story,.values,.cta-block,.collaboration,.gallery,.contact,.contact-modern,
.visual-culture,.manifesto,.heritage-strip,.dance-forms,.difference,.home-cta,
.alpana-gallery,.mini-cta,.forms-story,.values-light,.art-culture-intro,
.heritage-image-band,.culture-panorama,.artifact-band{padding-top:var(--v12-section-y)!important;padding-bottom:var(--v12-section-y)!important}
.page-hero,.editorial-hero{height:var(--v12-hero-inner)!important;min-height:var(--v12-hero-inner)!important}
.page-hero .section-shell,.editorial-hero .section-shell{padding-top:0!important;padding-bottom:0!important}
.program-showcase{gap:.9rem!important}
.program-visual-card{min-height:350px!important}
.program-image-frame{min-height:350px!important}
.program-visual-copy{padding:clamp(1.35rem,2.7vw,2.5rem)!important}
.program-meta{display:flex!important;flex-wrap:nowrap!important;align-items:center!important;gap:.65rem!important}
.program-meta span{white-space:nowrap!important;display:inline-flex!important;align-items:center;min-height:28px}

/* Clean, full-frame artwork. No destructive crops. */
.program-image-frame,.detail-feature,.story-poster,.contact-art-card,.gallery-media,
.alpana-card,.heritage-image-grid>img,.visual-frame{overflow:visible!important}
.program-image-frame img,.detail-feature img,.story-poster img,.contact-art-card img,
.gallery-media img,.alpana-card img,.heritage-image-grid>img{object-fit:contain!important;object-position:center center!important}

/* One shared hover/focus treatment across program, gallery and visual-culture art.
   The image rises above neighboring tiles so hidden edges can be explored. */
.image-peek img,.visual-frame img,.inner-image-strip img,.story-poster img,
.contact-art-card img,.heritage-image-grid>img{
  transform:scale(1);
  transform-origin:center;
  transition:transform .42s cubic-bezier(.16,1.18,.26,1),filter .32s ease,box-shadow .32s ease;
  will-change:transform;
}
.image-peek:hover,.image-peek:focus-within,.visual-frame:hover,.visual-frame:focus-within{z-index:30}
@media (hover:hover){
  .image-peek:hover img,.visual-frame:hover img,.inner-image-strip figure:hover img,
  .story-poster:hover img,.contact-art-card:hover img,.heritage-image-grid>img:hover{
    transform:scale(1.095) translateY(-5px);
    filter:saturate(1.06) contrast(1.02);
    box-shadow:0 24px 48px rgba(37,7,12,.28);
  }
}
.image-peek:focus-within img,.visual-frame:focus-within img{transform:scale(1.095) translateY(-5px)}

/* Home visual frames now opt into the same hover treatment. */
.visual-frame{z-index:1}
.visual-frame figcaption{z-index:2;pointer-events:none}

/* Normal editorial art section; never render a screenshot-like frame. */
.manifesto-art{background:linear-gradient(135deg,#4b1018,#22070b);border:1px solid rgba(196,153,74,.25);padding:0;overflow:visible!important}
.manifesto-art img{width:100%;aspect-ratio:16/9;object-fit:cover!important;opacity:.96}

/* Compact, symmetric culture panels. */
.bengal-story-grid{padding-top:var(--v12-section-y)!important;padding-bottom:var(--v12-section-y)!important;min-height:0!important}
.bengal-story{min-height:0!important}
.rural-panel{min-height:360px!important}
.rural-frame{transform:none!important;aspect-ratio:1.15!important}

/* Stronger readable cultural ribbon / motto. */
.hero-signature{font-family:var(--serif)!important;font-weight:600}
.hero-signature i{font-family:var(--ds-script)!important;color:#f0cf82}
.section-kicker{font-weight:800!important;color:var(--ds-wine-700)!important}
.section-dark .section-kicker,.values .section-kicker,.journey .section-kicker,.heritage-strip .section-kicker{color:#edc96f!important}

@media (max-width:1020px){
  .site-header{min-height:70px}
  .nav a{white-space:nowrap}
}
@media (max-width:767px){
  :root{--v12-section-y:1.65rem;--v12-hero-inner:250px}
  .site-header{min-height:68px;padding:.5rem .85rem}
  .brand small{max-width:230px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .program-visual-card,.program-visual-card:nth-child(even){min-height:0!important}
  .program-image-frame{min-height:320px!important}
  .program-visual-copy{padding:1.25rem!important}
  .rural-panel{min-height:280px!important}
}
@media (prefers-reduced-motion:reduce){
  .image-peek img,.visual-frame img,.inner-image-strip img,.story-poster img,.contact-art-card img,.heritage-image-grid>img{transition:none!important}
}

/* Program art study: normal editorial content, not a webpage screenshot. */
.program-art-recreation{padding-bottom:var(--v12-section-y)!important}
.practice-study-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.practice-study{position:relative;margin:0;background:#fff7e9;border:1px solid rgba(90,16,24,.14);box-shadow:0 14px 36px rgba(60,13,19,.08);overflow:visible}
.practice-study-media{height:360px;display:grid;place-items:center;background:radial-gradient(circle at 50% 35%,#8c392e,#2b0b10 72%);overflow:visible}
.practice-study-media img{width:100%;height:100%;object-fit:contain;object-position:center;transition:transform .42s cubic-bezier(.16,1.18,.26,1),filter .32s ease;}
.practice-study:hover,.practice-study:focus-within{z-index:30}
@media (hover:hover){.practice-study:hover .practice-study-media img{transform:scale(1.08) translateY(-5px);filter:saturate(1.06) contrast(1.02)}}
.practice-study:focus-within .practice-study-media img{transform:scale(1.08) translateY(-5px)}
.practice-study figcaption{padding:1rem 1.1rem 1.15rem;display:flex;flex-direction:column;gap:.15rem}
.practice-study figcaption strong{font-family:var(--serif);font-size:1.65rem;color:var(--ds-wine-900)}
.practice-study figcaption span{font-family:var(--bengali);font-size:.95rem;color:var(--ds-ink-700)}
@media (max-width:767px){.practice-study-grid{grid-template-columns:1fr}.practice-study-media{height:320px}}

/* =====================================================================
   ASHISH E NATARAJ — MASTER BRAND / BUSINESS ARCHITECTURE
   Shared brand lockup, pillars, and responsive application layer.
   ===================================================================== */
.brand-logo{display:block;flex:0 1 310px;max-width:340px;min-width:240px}
.brand-logo-image{display:block;width:100%;height:auto;max-height:84px;object-fit:contain;object-position:left center}
.brand-logo:focus-visible{outline:3px solid var(--ds-focus);outline-offset:5px;border-radius:10px}
.footer-brand-lockup img{display:block;width:min(100%,390px);height:auto;max-height:118px;object-fit:contain;object-position:left center}
.footer-brand-subline{margin-top:.45rem!important;max-width:460px!important;color:#cdbb9e!important;line-height:1.55}

.brand-architecture{padding:clamp(4.25rem,7vw,6.5rem) 0}
.brand-pillars-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--ds-line-light);border-left:1px solid var(--ds-line-light)}
.brand-pillar{display:grid;grid-template-columns:auto 1fr;gap:1rem;padding:1.55rem 1.35rem;border-right:1px solid var(--ds-line-light);border-bottom:1px solid var(--ds-line-light);background:rgba(255,255,255,.2);transition:transform .2s ease,background .2s ease,box-shadow .2s ease}
.brand-pillar:hover,.brand-pillar:focus-within{transform:translateY(-4px);background:rgba(255,250,240,.7);box-shadow:0 18px 44px rgba(50,10,16,.08)}
.brand-pillar>span{font-family:var(--ds-display);font-size:2rem;line-height:1;color:var(--ds-gold-600)}
.brand-pillar h3{font-size:clamp(1.7rem,2.4vw,2.2rem);margin:.05rem 0 .4rem;color:var(--ds-wine-900)}
.brand-pillar p{color:var(--ds-ink-700);margin:0 0 .8rem;max-width:48ch}
.brand-pillar a{display:inline-flex;align-items:center;min-height:44px;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;font-weight:800;color:var(--ds-wine-800)}
.brand-pillar a:hover,.brand-pillar a:focus-visible{color:var(--ds-gold-600)}

.brand-philosophy-band{padding:clamp(3.5rem,7vw,5.5rem) 0}
.brand-philosophy-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:2.75rem;align-items:end}
.brand-philosophy-grid h2{font-size:clamp(3rem,6vw,6rem);line-height:.9;margin:.2rem 0 .8rem}
.brand-philosophy-tagline{font-family:var(--ds-display);font-size:clamp(1.2rem,2vw,1.7rem)!important;color:#f4d58a!important;max-width:42rem!important}
.brand-philosophy-copy{padding:1.35rem 0 0;border-top:1px solid var(--ds-line-dark)}
.brand-philosophy-copy p{max-width:56ch;margin:0 0 .85rem}
.brand-philosophy-copy strong{font-family:var(--ds-display);font-size:1.55rem;color:#f8e9c8}

.brand-application-notes{padding:clamp(4rem,7vw,6rem) 0}
.application-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--ds-line-light);border-left:1px solid var(--ds-line-light)}
.application-grid>div{min-height:150px;padding:1.35rem;border-right:1px solid var(--ds-line-light);border-bottom:1px solid var(--ds-line-light);display:flex;flex-direction:column;justify-content:center;gap:.35rem;background:rgba(255,255,255,.2)}
.application-grid strong{font-family:var(--ds-display);font-size:1.55rem;color:var(--ds-wine-900)}
.application-grid span{color:var(--ds-ink-700);font-size:.8rem;letter-spacing:.07em;text-transform:uppercase}

/* Application architecture: explicit two-level cards prevent label/descriptor concatenation. */
.application-card{display:grid!important;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:1rem;padding:1.25rem 1.2rem!important;min-height:132px!important;text-align:left}
.application-card>div{display:flex!important;flex-direction:column!important;gap:.28rem!important;min-width:0}
.application-card strong{display:block!important;font-family:var(--ds-display);font-size:clamp(1.35rem,2vw,1.75rem);line-height:1.02;color:var(--ds-wine-900)}
.application-card span:not(.application-index){display:block!important;color:var(--ds-ink-700);font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;line-height:1.3}
.application-index{display:grid!important;place-items:center;width:2.35rem;height:2.35rem;border:1px solid rgba(197,151,51,.55);border-radius:50%;font-family:var(--ds-display);font-size:1rem!important;color:var(--ds-gold-600)!important;background:rgba(255,255,255,.35)}
.application-card:hover .application-index,.application-card:focus-within .application-index{background:var(--ds-wine-900);color:#f9e6bd!important}

/* Global section breathing-space contract: compact, content-led, and consistent. */
section.page-hero,.editorial-hero{padding-block:clamp(2.4rem,4vw,3.6rem)!important;margin-block:0!important;min-height:0!important}
section:not(.hero-art-directed):not(.section-dark):not(.journey):not(.heritage-strip):not(.collaboration):not(.artifact-band):not(.brand-philosophy-band){scroll-margin-top:5rem}

@media (max-width:991px){
  .brand-logo{max-width:285px;min-width:220px}
  .brand-logo-image{max-height:72px}
  .brand-pillars-grid{grid-template-columns:1fr 1fr}
  .brand-philosophy-grid{grid-template-columns:1fr}
  .application-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
  .brand-logo{max-width:250px;min-width:200px}
  .brand-logo-image{max-height:66px}
  .brand-pillars-grid{grid-template-columns:1fr}
  .brand-pillar{padding:1.3rem 1.05rem}
  .application-grid{grid-template-columns:1fr}
  .brand-philosophy-grid h2{font-size:clamp(3rem,16vw,5.2rem)}
}
@media (max-width:575px){
  .brand-logo{max-width:215px;min-width:170px}
  .brand-logo-image{max-height:58px}
  .brand-pillars-grid{border-left:0}
  .brand-pillar{border-left:1px solid var(--ds-line-light)}
  .footer-brand-lockup img{width:min(100%,320px)}
  section.page-hero,.editorial-hero{padding-block:2.15rem!important}
}


/* =====================================================================
   V13.1 — APPROVED SMALL BRAND HEADER + GLOBAL LEARNING + CLEAN ART SCOPE
   ===================================================================== */
.brand-logo{flex:0 0 210px;width:210px;min-width:210px;max-width:210px;height:58px;display:flex;align-items:center}
.brand-logo picture{display:block;width:100%;height:100%}
.brand-logo-image{display:block;width:100%;height:100%;object-fit:contain;object-position:left center;max-height:none}
.global-learning-band{padding:clamp(2.6rem,5vw,4.2rem) 0;background:linear-gradient(135deg,var(--ds-wine-950),var(--ds-wine-800));color:var(--ds-dark-copy)}
.global-learning-grid{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:2rem;align-items:stretch}
.global-learning-grid h2{color:#fff0d3;max-width:520px}.global-learning-grid h2 em{color:var(--ds-gold-400)}
.global-learning-grid>div:first-child>p:not(.section-kicker){color:#dbc9aa;max-width:52ch}
.global-learning-cards{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid rgba(242,221,176,.18)}
.global-learning-cards article{padding:1.35rem;border-right:1px solid rgba(242,221,176,.18);background:rgba(255,255,255,.025)}
.global-learning-cards article:last-child{border-right:0}
.global-learning-cards span{display:block;color:var(--ds-gold-400);font-family:var(--ds-display);font-size:1.8rem;line-height:1}
.global-learning-cards h3{color:#fff0d3;font-size:1.45rem;margin:.35rem 0 .45rem}.global-learning-cards p{color:#d8c6a9;font-size:.88rem}
@media (max-width:991px){.brand-logo{width:190px;min-width:190px;height:54px}.global-learning-grid{grid-template-columns:1fr}.global-learning-cards{grid-template-columns:1fr 1fr}.global-learning-cards article:nth-child(2){border-right:0}.global-learning-cards article:last-child{grid-column:1/-1;border-top:1px solid rgba(242,221,176,.18)}}
@media (max-width:767px){.brand-logo{width:52px;min-width:52px;height:52px}.brand-logo-image{object-position:center}.global-learning-cards{grid-template-columns:1fr}.global-learning-cards article{border-right:0!important;border-bottom:1px solid rgba(242,221,176,.18)}.global-learning-cards article:last-child{grid-column:auto;border-bottom:0}}
/* The studio is an arts/dance site: remove decorative rangoli/alpana geometry from page chrome. */
.rangoli-medallion,.detail-rangoli,.rangoli-corner{display:none!important}
.alpana-gallery{display:none!important}

/* V13 CLEAN — remove the broad master logo treatment from all page chrome. */
.brand-logo-compact{display:flex!important;align-items:center;gap:.7rem;flex:0 0 auto!important;width:auto!important;min-width:0!important;max-width:280px!important;height:54px!important}
.brand-mark-image{display:block!important;width:54px!important;height:54px!important;object-fit:contain!important;flex:0 0 54px!important}
.brand-text{display:flex;flex-direction:column;justify-content:center;min-width:0}
.brand-text strong{font-family:var(--ds-display);font-size:1.55rem;line-height:1;color:#f8e9c8;white-space:nowrap}
.brand-text small{margin-top:.22rem;color:#d7c29f;font-family:var(--serif);font-size:.63rem;line-height:1.1;letter-spacing:.05em;white-space:nowrap}
.footer-brand-markline{display:flex;align-items:center;gap:.8rem}
.footer-brand-emblem{width:54px!important;height:54px!important;object-fit:contain!important}
.footer-brand-name{font-family:var(--ds-display);font-size:1.9rem;line-height:1;color:#f8e9c8}
.footer-brand-tagline{margin-top:.25rem;color:#d7c29f;font-family:var(--serif);font-size:.75rem;line-height:1.2}
@media (max-width:767px){
  .brand-logo-compact{width:52px!important;min-width:52px!important;max-width:52px!important;height:52px!important}
  .brand-text{display:none!important}
  .brand-mark-image{width:52px!important;height:52px!important;flex-basis:52px!important}
}
/* Legacy broad logo class intentionally has no visual footprint anywhere. */
.brand-logo-image{display:none!important}


/* V13.2 — Dance Forms image scale: clean, complete artwork at ~30% of card width on desktop. */
.program-visual-card .program-image-frame{display:grid;place-items:center;overflow:visible}
.program-visual-card .program-image-frame img{width:30%!important;max-width:30%!important;height:auto!important;max-height:82%!important;padding:0!important;object-fit:contain!important;object-position:center!important}
.program-visual-card:hover .program-image-frame img,.program-visual-card:focus-within .program-image-frame img{transform:scale(1.06) translateY(-4px)}
@media (max-width:991px){.program-visual-card .program-image-frame img{width:36%!important;max-width:36%!important}}
@media (max-width:767px){.program-visual-card .program-image-frame img{width:44%!important;max-width:44%!important;max-height:78%!important}}


/* =====================================================================
   V13.3 — MEDIA MANAGEMENT, IMAGE SCALE, CONTRAST & BRAND CREDIT
   ===================================================================== */
/* Dance Forms: compact default image (~30%); hover/focus reveal to ~40%. */
.program-visual-card .program-image-frame img{
  width:30%!important;
  max-width:30%!important;
  height:auto!important;
  max-height:84%!important;
  object-fit:contain!important;
  object-position:center!important;
  padding:0!important;
  transform-origin:center center;
}
@media (hover:hover){
  .program-visual-card:hover .program-image-frame img,
  .program-visual-card:focus-within .program-image-frame img{
    transform:scale(1.3333) translateY(-3px)!important;
  }
}
.program-visual-card:focus-within .program-image-frame img{transform:scale(1.3333) translateY(-3px)!important}
@media (max-width:991px){
  .program-visual-card .program-image-frame img{width:34%!important;max-width:34%!important}
  .program-visual-card:focus-within .program-image-frame img{transform:scale(1.1765) translateY(-3px)!important}
}
@media (max-width:767px){
  .program-visual-card .program-image-frame img{width:42%!important;max-width:42%!important}
  .program-visual-card:focus-within .program-image-frame img{transform:scale(1.0952) translateY(-2px)!important}
}

/* Heritage Promise: never allow the kicker to disappear into the burgundy field. */
.artifact-band .section-kicker{
  display:inline-flex!important;
  align-items:center!important;
  width:max-content!important;
  max-width:100%!important;
  padding:.35rem .6rem!important;
  margin-bottom:.9rem!important;
  background:linear-gradient(90deg,#efcf7a,#d7ae52)!important;
  color:#2b080d!important;
  border:1px solid rgba(255,243,205,.65)!important;
  border-radius:2px!important;
  font-weight:900!important;
  letter-spacing:.2em!important;
  text-shadow:none!important;
  box-shadow:0 5px 16px rgba(0,0,0,.14)!important;
}
.artifact-band .artifact-copy h2{color:#fff5df!important}
.artifact-band .artifact-copy h2 em{color:#f0cd76!important;text-shadow:0 3px 14px rgba(240,205,118,.18)!important}
.artifact-band .artifact-copy p:not(.section-kicker){color:#ead8bd!important}
.artifact-mark{background:rgba(12,3,6,.24)!important;box-shadow:inset 0 0 0 1px rgba(255,232,180,.05)}

/* Admin-manageable page media is documented in the admin help text; no public UI is added. */

@media (hover:hover) and (max-width:991px){.program-visual-card:hover .program-image-frame img,.program-visual-card:focus-within .program-image-frame img{transform:scale(1.1765) translateY(-3px)!important}}
@media (hover:hover) and (max-width:767px){.program-visual-card:hover .program-image-frame img,.program-visual-card:focus-within .program-image-frame img{transform:scale(1.0952) translateY(-2px)!important}}

/* Admin password recovery: shared, low-profile utility surface. */
.admin-recovery-page { padding-top: clamp(2rem, 4vw, 4rem); padding-bottom: clamp(2rem, 4vw, 4rem); min-height: 55vh; display: grid; place-items: center; }
.recovery-card { width: min(680px, 100%); background: rgba(255,255,255,.72); border: 1px solid rgba(99,54,27,.15); box-shadow: 0 18px 45px rgba(43,8,13,.08); padding: clamp(1.5rem, 4vw, 3rem); }
.recovery-card h1 { margin: .15rem 0 1rem; color: #2b080d; }
.recovery-card p { max-width: 58ch; color: #4b3a36; }
.recovery-form { display: grid; gap: .75rem; margin-top: 1.5rem; }
.recovery-form label { font-weight: 700; color: #2b080d; }
.recovery-form input { width: 100%; min-height: 46px; border: 1px solid rgba(43,8,13,.22); padding: .7rem .8rem; font: inherit; background: #fffaf0; }
.recovery-form button { width: fit-content; margin-top: .35rem; }
.recovery-footnote { margin-top: 1.25rem; }
.recovery-footnote a { color: #7f1d2d; font-weight: 700; }

/* V1 — Anukans inline footer credit: stays on the same bottom line, right-aligned. */
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:nowrap}
.footer-credit{margin-left:auto;display:inline-flex!important;align-items:center;justify-content:flex-end;gap:.55rem;white-space:nowrap;color:#d5bf9b!important;font-family:var(--serif);font-size:.72rem!important;letter-spacing:.02em;text-transform:none!important}
.footer-credit img{display:block;width:108px;height:auto;max-height:34px;object-fit:contain;background:#fff;border-radius:4px;padding:2px 5px;box-shadow:0 4px 14px rgba(0,0,0,.12)}
@media (max-width:820px){.footer-bottom{flex-wrap:wrap}.footer-credit{margin-left:0}}
@media (max-width:560px){.footer-bottom{flex-direction:column;align-items:flex-start;gap:.65rem}.footer-credit{margin-left:0;align-self:flex-start;white-space:normal}.footer-credit img{width:100px}}

/* V13.3 — Dance Forms canonical image contract: 30% default, ~40% hover/focus. */
.program-visual-card .program-image-frame{display:grid;place-items:center;overflow:visible}
.program-visual-card .program-image-frame img{width:30%!important;max-width:30%!important;height:auto!important;max-height:84%!important;object-fit:contain!important;object-position:center!important;padding:0!important;transform-origin:center center}
@media (hover:hover){.program-visual-card:hover .program-image-frame img,.program-visual-card:focus-within .program-image-frame img{transform:scale(1.3333) translateY(-3px)!important}}
.program-visual-card:focus-within .program-image-frame img{transform:scale(1.3333) translateY(-3px)!important}
@media (max-width:991px){.program-visual-card .program-image-frame img{width:34%!important;max-width:34%!important}.program-visual-card:focus-within .program-image-frame img{transform:scale(1.1765) translateY(-3px)!important}}
@media (max-width:767px){.program-visual-card .program-image-frame img{width:42%!important;max-width:42%!important}.program-visual-card:focus-within .program-image-frame img{transform:scale(1.0952) translateY(-2px)!important}}


/* =====================================================================
   V2 FINAL GLOBAL DESIGN SYSTEM — CONTENT VISIBILITY + HERO RHYTHM
   Applies to all matching templates; no page-specific patches.
   ===================================================================== */
:root{
  --v2-hero-y:clamp(1.15rem,2.2vw,2rem);
  --v2-hero-min:clamp(220px,23vh,290px);
  --v2-dark-copy:#fff1d4;
  --v2-dark-muted:#ead8bd;
  --v2-dark-kicker:#efc96f;
  --v2-light-copy:#2b080d;
  --v2-light-kicker:#7f1d2d;
}

/* Compact inner heroes: content-led height prevents title clipping and
   removes artificial blank bands above/below the hero across every page. */
section.page-hero,
section.editorial-hero{
  height:auto!important;
  min-height:var(--v2-hero-min)!important;
  padding-block:var(--v2-hero-y)!important;
  margin-block:0!important;
  display:flex!important;
  align-items:center!important;
}
section.page-hero .section-shell,
section.editorial-hero .section-shell{
  width:min(var(--v10-max),calc(100% - 2rem));
  margin-inline:auto!important;
  padding-block:0!important;
}
section.page-hero h1,
section.editorial-hero h1{margin-top:.2rem;line-height:.92!important}
section.page-hero p:not(.section-kicker),
section.editorial-hero p:not(.section-kicker){line-height:1.5!important}

/* Explicit dark-hero contrast: never allow the shared kicker to inherit a
   dark wine colour on a burgundy hero. */
.editorial-hero .section-kicker,
.section-dark .section-kicker,
.heritage-image-band .section-kicker,
.global-learning-band .section-kicker,
.performance-types .section-kicker,
.collaboration .section-kicker,
.artifact-band .section-kicker{
  color:var(--v2-dark-kicker)!important;
  text-shadow:0 1px 10px rgba(0,0,0,.24);
}
.editorial-hero h1,
.section-dark h1,
.heritage-image-band h1,
.global-learning-band h1,
.performance-types h1,
.collaboration h1,
.artifact-band h1{color:var(--v2-dark-copy)!important}
.editorial-hero p:not(.section-kicker),
.section-dark p,
.heritage-image-band p,
.global-learning-band p,
.performance-types p,
.collaboration p,
.artifact-band p:not(.section-kicker){color:var(--v2-dark-muted)!important}

/* Light sections keep the wine kicker for contrast. */
.page-hero:not(.editorial-hero) .section-kicker,
.brand-architecture .section-kicker,
.brand-application-notes .section-kicker{color:var(--v2-light-kicker)!important}

/* Dance Forms: canonical image contract from V13.3, with full-frame clarity. */
.program-image-frame{display:grid;place-items:center;overflow:visible!important}
.program-visual-card .program-image-frame img{
  width:30%!important;
  max-width:30%!important;
  max-height:84%!important;
  height:auto!important;
  object-fit:contain!important;
  object-position:center center!important;
}
@media (hover:hover){
  .program-visual-card:hover .program-image-frame img,
  .program-visual-card:focus-within .program-image-frame img{
    transform:scale(1.3333) translateY(-3px)!important;
    filter:saturate(1.06) contrast(1.02);
  }
}
.program-visual-card:focus-within .program-image-frame img{transform:scale(1.3333) translateY(-3px)!important}
@media (max-width:991px){
  .program-visual-card .program-image-frame img{width:34%!important;max-width:34%!important}
  .program-visual-card:focus-within .program-image-frame img{transform:scale(1.1765) translateY(-3px)!important}
}
@media (max-width:767px){
  .program-visual-card .program-image-frame img{width:42%!important;max-width:42%!important}
  .program-visual-card:focus-within .program-image-frame img{transform:scale(1.0952) translateY(-2px)!important}
}

/* Keep the Dance Forms metadata on a single line without forcing cards wider. */
.program-meta{display:flex!important;flex-wrap:nowrap!important;align-items:center!important;gap:.65rem!important}
.program-meta span{white-space:nowrap!important;display:inline-flex!important;align-items:center;min-height:28px}

/* Footer credit remains on the same bottom line on desktop/tablet. */
.footer-bottom{align-items:center!important}

/* =====================================================================
   V3.1 GLOBAL CONTRAST + HERO RHYTHM AUDIT
   Shared design-system layer. Applies to all matching components.
   ===================================================================== */
:root{
  --v3-light-copy:#2b1b1b;
  --v3-light-muted:#5b4545;
  --v3-light-kicker:#7f1d2d;
  --v3-light-meta:#6d5a56;
  --v3-hero-y:clamp(.75rem,1.6vw,1.25rem);
  --v3-hero-min:clamp(205px,22vh,275px);
}

/* Light surfaces: readable copy against cream/ivory backgrounds. */
.performance-type-card,
.event-wide,
.event-card,
.faculty-card,
.discipline-card,
.forms-story-grid article,
.practice-study,
.gallery-item,
.enquiry-form,
.brand-pillar,
.application-grid>div{
  color:var(--v3-light-copy);
}
.performance-type-card p,
.event-wide p,
.event-card p,
.faculty-card p,
.discipline-card p,
.forms-story-grid article p,
.practice-study p,
.gallery-item figcaption span,
.enquiry-form p,
.brand-pillar p,
.application-grid>div p{
  color:var(--v3-light-muted)!important;
}
.performance-type-card h3,
.event-wide h2,
.event-card h3,
.faculty-card h3,
.discipline-card h3,
.forms-story-grid article h3,
.practice-study h3,
.gallery-item figcaption strong,
.enquiry-form h2,
.brand-pillar h3,
.application-grid>div h3{
  color:var(--v3-light-copy);
}

/* Performance-type cards are light cards, not dark sections. */
.performance-types p:not(.section-kicker){color:var(--v3-light-muted)!important}
.performance-types .section-kicker{color:var(--v3-light-kicker)!important;text-shadow:none}

/* Light-page labels maintain contrast without inheriting dark-section gold. */
.forms-story-grid .section-kicker,
.program-list .section-kicker,
.events .section-kicker,
.faculty .section-kicker,
.contact .section-kicker{
  color:var(--v3-light-kicker)!important;
}

/* Inline metadata on light cards. */
.event-date,
.event-wide .event-location,
.event-card .event-date{color:#6f1726!important}
.event-wide .event-subtitle{color:#7f1d2d!important}

/* Compact inner heroes: content-led and symmetric with minimal unused space. */
section.page-hero,
section.editorial-hero{
  min-height:var(--v3-hero-min)!important;
  padding-block:var(--v3-hero-y)!important;
}
section.page-hero .section-shell,
section.editorial-hero .section-shell{
  padding-block:0!important;
}
section.page-hero h1,
section.editorial-hero h1{
  line-height:.9!important;
}
section.page-hero p:not(.section-kicker),
section.editorial-hero p:not(.section-kicker){
  color:var(--v2-dark-muted)!important;
}

/* Editorial dark heroes retain strong ivory/gold contrast. */
section.editorial-hero .section-kicker{color:var(--v2-dark-kicker)!important;text-shadow:0 1px 10px rgba(0,0,0,.24)}
section.editorial-hero h1{color:var(--v2-dark-copy)!important;text-shadow:0 5px 24px rgba(0,0,0,.26)}

/* Never use a low-contrast wine body color on dark backgrounds. */
.section-dark p,
.section-dark li,
.section-dark .muted,
.global-learning-band p,
.collaboration p,
.artifact-band p:not(.section-kicker),
.heritage-image-band p:not(.section-kicker){
  color:var(--v2-dark-muted)!important;
}

/* Light page body copy remains dark enough against cream. */
:where(main section):not(.section-dark):not(.hero-art-directed):not(.editorial-hero):not(.artifact-band) p{
  color:var(--v3-light-muted);
}

@media (max-width:760px){
  section.page-hero,
  section.editorial-hero{
    min-height:205px!important;
    padding-block:.8rem!important;
  }
}

