/* Immersive Indian presentation. Existing content and management stay connected. */
.indian-experience { --scene-dark: #102f27; --scene-light: #f6f5ef; --scene-accent: #dfce9f; }
.indian-experience .site-nav { min-height: 94px; background: transparent; border-bottom-color: #ffffff38; backdrop-filter: none; -webkit-backdrop-filter: none; color: white; }
.indian-experience .site-nav .brand-mark span, .indian-experience .site-nav .brand-mark small, .indian-experience .site-nav .nav-links, .indian-experience .site-nav .management-top-link, .indian-experience .site-nav .menu-toggle { color: white; }
.indian-experience .site-nav .management-top-link { border-color: #ffffffa6; }
.indian-experience .site-nav.is-scrolled, .indian-experience .site-nav:has(.nav-links.is-open) { min-height: 78px; background: var(--scene-light); color: var(--ink); border-bottom-color: var(--line); }
.indian-experience .site-nav.is-scrolled :is(.brand-mark span, .brand-mark small, .nav-links, .management-top-link, .menu-toggle), .indian-experience .site-nav:has(.nav-links.is-open) :is(.brand-mark span, .brand-mark small, .nav-links, .management-top-link, .menu-toggle) { color: var(--ink); }
.indian-experience .site-nav.is-scrolled .management-top-link { border-color: #708468; }
.indian-experience .site-nav .nav-links { font-size: .875rem; }
.indian-experience .site-nav .nav-links a:hover { color: var(--scene-accent); }
.indian-experience .site-nav.is-scrolled .nav-links a:hover { color: var(--navy); }
.indian-experience .site-nav:has(.nav-links.is-open) .nav-links a:hover { color: var(--navy); }
.indian-experience .hero { display: flex; align-items: flex-end; margin: 0; min-height: 100svh; padding: 180px var(--gutter) 54px; overflow: hidden; background: var(--scene-dark); scroll-margin-top: 0; }
.indian-experience .hero-content { display: grid; grid-template-columns: 1.15fr .85fr; column-gap: 8vw; row-gap: 28px; padding: 0; color: #fff; width: 100%; max-width: none; text-align: left; align-self: auto; }
.indian-experience .hero .eyebrow { grid-column: 1 / -1; margin: 0; color: #f0e7ca; font-size: .75rem; line-height: 1.6; letter-spacing: .2em; }
.indian-experience .hero .eyebrow::before { background: #e0cf9e; }
.indian-experience .hero-editorial { grid-column: 1; grid-row: 2; color: #fff; font-size: clamp(2rem, 3.5vw, 3.8rem); font-style: normal; line-height: 1.14; letter-spacing: -.035em; margin: 0; max-width: 630px; text-wrap: balance; }
.indian-experience .hero-copy { grid-column: 2; grid-row: 2; align-self: end; color: #f3f2e9; font-size: 1rem; line-height: 1.7; max-width: 390px; margin: 0; }
.indian-experience .hero h1 { grid-column: 1 / -1; grid-row: 3; font-size: clamp(4rem, 13.3vw, 13rem); font-weight: 400; line-height: 1.02; letter-spacing: -.055em; white-space: nowrap; margin: 0 0 12px; max-width: none; padding-block: 8px; border-bottom: 1px solid #ffffff60; color: #fff; }
.indian-experience .hero-actions { grid-column: 1; grid-row: 4; margin: 0; align-items: center; gap: 24px; }
.indian-experience .hero .button { background: #f6f5ef; color: #183e31; border-color: #f6f5ef; font-size: .875rem; }
.indian-experience .hero .button:hover { background: #dfce9f; border-color: #dfce9f; }
.indian-experience .hero-resident-link { color: #fff; border-color: #ffffff80; font-size: .875rem; }
.indian-experience .hero-signature { grid-column: 2; grid-row: 4; justify-content: flex-end; align-self: center; margin: 0; padding: 0; background: transparent; border: 0; }
.indian-experience .hero-signature span { color: #f0e7ca; font-size: .75rem; }
.indian-experience .hero-signature img { filter: brightness(0) invert(1); width: 160px; height: 46px; }
.indian-experience .hero-visual { position: absolute; inset: 0; margin: 0; width: 100%; height: 100%; z-index: 0; }
.indian-experience .hero-media { inset: 0; box-shadow: none; background: #102f27; }
.indian-experience .hero-media img, .indian-experience .hero-media video { object-position: 58% 45%; transform: scale(1.04); filter: saturate(.85); }
.indian-experience .hero-visual::after { content: ''; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(180deg, #071a17c9 0%, #071a1708 30%, #071a17b8 56%, #071a17e8 100%); }
.indian-experience .hero-photo-label, .indian-experience .hero-visual figcaption { display: none; }
.indian-experience .project-index { background: var(--scene-dark); color: #f6f5ef; border-color: #ffffff40; font-size: .875rem; }
.indian-experience .project-index a { border-color: #ffffff40; }
.indian-experience .project-index a > span:first-child { color: var(--scene-accent); }
.indian-experience .project-index a:hover { color: var(--scene-accent); }
.indian-experience .index-dot { background: #dfce9f; }

/* Architectural story: a large drawing and an unhurried reading column. */
.indian-experience { font-size: 1rem; }
.indian-experience :is(.indian-section, .intro-section, .work-section, .progress-section, .media-section, .technical-section, .profile-section, .location-section, .cta-section) { padding-block: clamp(80px, 8vw, 140px); }
.indian-experience .section-kicker { font-size: .75rem; }
.indian-experience .experience-story.reveal { opacity: 1; transform: none; }
.indian-experience .story-heading { max-width: 1100px; margin: 0 auto 70px; text-align: center; }
.indian-experience .story-heading h2 { font-size: clamp(3rem, 6.6vw, 7rem); line-height: 1.08; margin: 0; text-wrap: balance; }
.indian-experience .story-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .85fr); gap: clamp(48px, 8vw, 140px); align-items: center; }
.indian-experience .story-layout .profile-visual { grid-area: auto; display: block; width: 100%; max-width: 560px; min-height: 0; align-self: center; transform: none; box-shadow: none; }
.indian-experience .story-layout .profile-visual::before, .indian-experience .story-layout .profile-visual::after { display: none; }
.indian-experience .story-layout .profile-visual img { display: block; width: 100%; height: auto; transform: none; filter: none; }
.indian-experience .story-layout .profile-visual figcaption { font-size: .75rem; padding: 18px 0; text-align: left; }
.indian-experience .story-copy { max-width: 530px; text-align: left; }
.indian-experience .story-copy p { color: var(--muted); font-size: 1rem; line-height: 1.9; margin: 0 0 28px; }
.indian-experience .story-copy p:first-child { font-family: var(--serif); font-size: clamp(1.5rem, 2.2vw, 2.1rem); line-height: 1.5; letter-spacing: -.02em; color: var(--ink); }
.indian-experience .about-links { font-size: .875rem; gap: 18px 26px; }

/* Selectable phase chapters; the complete pair remains available without enhancement. */
.indian-experience .phases-section { background: var(--scene-dark); color: var(--scene-light); --line: #ffffff42; --muted: #d4ded3; --ocean: #dfce9f; }
.indian-experience .phases-section .section-kicker, .indian-experience .phases-section h2 em { color: var(--scene-accent); }
.indian-experience .phases-section h2 { font-size: clamp(3rem, 5.8vw, 6rem); }
.indian-experience .indian-section-heading > p { font-size: 1rem; }
.phase-scene-tabs { display: flex; gap: 44px; margin-top: 64px; border-bottom: 1px solid #ffffff42; }
.phase-scene-tabs button { display: flex; align-items: baseline; gap: 16px; padding: 18px 2px 22px; margin-bottom: -1px; background: transparent; border: 0; border-bottom: 2px solid transparent; color: #c4d1c7; font: inherit; cursor: pointer; }
.phase-scene-tabs button[aria-selected=true] { color: #fff; border-bottom-color: var(--scene-accent); }
.phase-scene-tabs button:hover { color: var(--scene-accent); }
.phase-tab-number { font-family: var(--serif); font-size: 1.5rem; color: var(--scene-accent); }
.indian-experience .phase-release-notice { margin-top: 48px; padding: 32px; background: #f1e7cc; color: #173b30; border-left: 4px solid #c1a56a; }
.indian-experience .phase-release-copy .phase-release-label { margin: 0 0 10px; color: #365545; font-size: .6875rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; }
.indian-experience .phase-release-copy h3 { margin: 0 0 12px; color: #173b30; font-family: var(--serif); font-size: clamp(1.6rem, 2.3vw, 2.1rem); font-weight: 400; line-height: 1.2; }
.indian-experience .phase-release-copy p { margin: 0; color: #173b30; font-size: 1rem; line-height: 1.7; max-width: 70ch; }
.phase-scene-tabs button:disabled, .phase-scene-tabs button:disabled:hover { color: #c4d1c7; cursor: not-allowed; opacity: 1; }
.phase-scene-tabs button:disabled .phase-tab-number { color: #c4d1c7; }
.phase-tab-status { align-self: center; padding: 4px 8px; border: 1px solid #ffffff55; font-size: .6875rem; line-height: 1.4; letter-spacing: .02em; }
.indian-experience .phase-chart-controls button:disabled { color: #43584c; background: #e7e9df; border-color: #aeb9aa; cursor: not-allowed; opacity: 1; }
.phase-control-status { display: block; margin-top: 4px; font-size: .6875rem; font-weight: 400; }
.indian-experience .progress-copy .phase-pending-note { color: #43584c; border-left: 2px solid #a48b53; padding-left: 12px; font-size: .8125rem; }
@media (max-width: 700px) {
  .indian-experience .phase-release-notice { padding: 24px; margin-top: 32px; }
  .phase-scene-tabs { gap: 24px; }
  .phase-scene-tabs button { flex: 1; display: grid; grid-template-columns: auto 1fr; align-content: start; column-gap: 10px; row-gap: 8px; text-align: left; }
  .phase-tab-status { grid-column: 1 / -1; justify-self: start; text-align: center; }
}
.indian-experience .phase-grid.phase-scenes-ready { display: block; margin: 0; }
.indian-experience .phases-section .phase-card { background: transparent; border: 0; color: var(--scene-light); --line: #ffffff42; --muted: #d4ded3; padding: 48px 0 0; box-shadow: none; }
.indian-experience .phases-section .phase-card::before { display: none; }
.indian-experience .phase-scenes-ready .phase-card { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(48px, 8vw, 140px); }
.indian-experience .phases-section .phase-number { display: block; font-size: clamp(5rem, 9vw, 9rem); line-height: 1; color: var(--scene-accent); margin-bottom: 24px; }
.indian-experience .phases-section .phase-card .status-pill { float: none; margin: 0; font-size: .75rem; padding: 7px 12px; border-color: #b0c1a5; }
.indian-experience .phases-section .phase-card h3 { font-size: clamp(2.5rem, 4vw, 4rem); line-height: 1.1; margin: 24px 0; }
.indian-experience .phases-section .phase-card p { font-size: 1rem; line-height: 1.8; color: var(--muted); white-space: pre-wrap; }
.indian-experience .phase-scene-overview > p { max-width: 430px; }
.indian-experience .phases-section .phase-card dl { margin-top: 0; font-size: .875rem; }
.indian-experience .phases-section .phase-card dl > div { padding: 18px 0; }
.indian-experience .phases-section .phase-card dl > div:first-child { border-top: 1px solid var(--line); }
.indian-experience .phases-section .phase-card dt { color: #d4ded3; }
.indian-experience .phases-section .phase-card dd { color: #fff; }
.indian-experience .phases-section .phase-guidance { font-size: .875rem; padding-top: 24px; margin-top: 24px; }
.indian-experience .phases-section .phase-evolution-link { font-size: .875rem; color: var(--scene-accent); padding-block: 22px 8px; }

/* Comfortable reading sizes and a consistent rhythm through the remaining chapters. */
.indian-experience .progress-copy > p:not(.section-kicker), .indian-experience .resident-intro > p:not(.section-kicker), .indian-experience .faq-answer, .indian-experience .technical-copy > p:not(.section-kicker), .indian-experience .profile-content > p:not(.section-kicker), .indian-experience .location-copy > p:not(.section-kicker), .indian-experience .signal-strip p, .indian-experience .process-item p { font-size: 1rem; }
.indian-experience .progress-copy .evolution-note { font-size: .875rem; }
.indian-experience .progress-card-title, .indian-experience .progress-card p, .indian-experience .phase-chart-controls button, .indian-experience .faq-filter, .indian-experience .faq-filter select, .indian-experience .media-view-switch button, .indian-experience .media-date-filter button { font-size: .875rem; }
.indian-experience .journey-heading span, .indian-experience .journey-metric > span:not(.journey-label), .indian-experience .journey-label, .indian-experience .journey-progress-copy, .indian-experience .journey-dates, .indian-experience .indian-journey-sketch figcaption, .indian-experience #faqNotice { font-size: .75rem; }
.indian-experience .faq-section summary { font-size: 1rem; }
.indian-experience .media-section { background: #1b3b31; }
.indian-experience .media-section h2 { font-size: clamp(3rem, 5.6vw, 5.6rem); max-width: 800px; }
.indian-experience .signal-strip { padding-top: 80px; }
.indian-experience .profile-section { display: block; }
.indian-experience .profile-content { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: 24px 8vw; }
.indian-experience .profile-content .section-kicker { grid-column: 1; margin: 0; }
.indian-experience .profile-content h2 { grid-column: 1; margin: 0; }
.indian-experience .profile-content > p:not(.section-kicker) { grid-column: 1; margin: 0; max-width: 450px; }
.indian-experience .profile-list { grid-column: 2; grid-row: 1 / 4; align-self: center; margin: 0; }
.indian-experience .profile-list dt, .indian-experience .technical-list dt { font-size: .875rem; }
.indian-experience .technical-list dd, .indian-experience .location-address strong { font-size: 1rem; }
.indian-experience .site-footer { font-size: .875rem; }
.indian-experience .footer-office { font-size: .75rem; }

/* Motion accompanies native scrolling and is optional. */
.indian-experience.experience-motion .hero-media :is(img, video) { transform: translateY(var(--scene-drift, 0px)) scale(1.16); }
.indian-experience.experience-motion .hero-content > * { animation: indian-scene-enter 1s cubic-bezier(.2,.7,.2,1) both; }
.indian-experience.experience-motion .hero h1 { animation-delay: .12s; }
.indian-experience.experience-motion .hero-actions, .indian-experience.experience-motion .hero-signature { animation-delay: .22s; }
.scene-reveal { opacity: 0; transform: translateY(28px); transition: opacity 800ms ease, transform 900ms cubic-bezier(.2,.7,.2,1); }
.scene-reveal.scene-visible { opacity: 1; transform: none; }
@keyframes indian-scene-enter { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) {
  .indian-experience .scene-reveal { opacity: 1; transform: none; transition: none; }
  .indian-experience.experience-motion .hero-content > * { animation: none; }
  .indian-experience.experience-motion .hero-media :is(img, video) { transform: none; }
}
@media (max-width: 1100px) {
  .indian-experience .site-nav { min-height: 78px; }
  .indian-experience .site-nav .nav-links { color: var(--ink); }
  .indian-experience .hero { padding-top: 150px; }
  .indian-experience .hero-content { column-gap: 40px; }
  .indian-experience .hero-actions { flex-direction: column; align-items: flex-start; gap: 12px; }
}
@media (max-width: 760px) {
  .indian-experience :is(.indian-section, .intro-section, .work-section, .progress-section, .media-section, .technical-section, .profile-section, .location-section, .cta-section) { padding-block: 64px; }
  .indian-experience .story-heading { text-align: left; margin-bottom: 36px; }
  .indian-experience .story-heading h2 { font-size: clamp(2.75rem, 9vw, 4rem); }
  .indian-experience .story-layout { grid-template-columns: minmax(0, 1fr); gap: 36px; }
  .indian-experience .story-layout .profile-visual { max-width: 480px; }
  .indian-experience .story-copy { max-width: none; }
  .phase-scene-tabs { gap: 32px; margin-top: 32px; }
  .indian-experience .phase-scenes-ready .phase-card { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .indian-experience .phases-section .phase-card { padding-top: 32px; }
  .indian-experience .phases-section .phase-number { font-size: 5rem; }
  .indian-experience .profile-content { display: block; }
  .indian-experience .profile-content .section-kicker { margin-bottom: 20px; }
  .indian-experience .profile-content > p:not(.section-kicker) { margin-top: 24px; }
  .indian-experience .profile-list { margin-top: 28px; }
  .indian-experience .signal-strip { padding-top: 48px; }
  .indian-experience .hero { min-height: 100svh; padding: 140px var(--gutter) 36px; }
  .indian-experience .hero-content { display: flex; flex-direction: column; gap: 22px; }
  .indian-experience .hero .eyebrow { order: 0; font-size: .75rem; }
  .indian-experience .hero-editorial { order: 1; font-size: 2.1rem; max-width: 400px; }
  .indian-experience .hero h1 { order: 2; font-size: clamp(4.4rem, 18vw, 7rem); white-space: normal; line-height: .98; margin: 0; padding-bottom: 20px; max-width: 510px; }
  .indian-experience .hero-copy { order: 3; align-self: auto; max-width: 480px; }
  .indian-experience .hero-actions { order: 4; width: 100%; flex-direction: row; flex-wrap: wrap; gap: 12px 24px; }
  .indian-experience .hero-signature { order: 5; justify-content: flex-start; margin-top: 8px; }
  .indian-experience .hero-media img, .indian-experience .hero-media video { object-position: 64% 50%; }
  .indian-experience .hero-visual::after { background: linear-gradient(180deg, #071a17b8, #071a1755 20%, #071a17c9 55%, #071a17f0); }
}
@media (max-width: 390px) {
  .indian-experience .hero h1 { font-size: clamp(3.8rem, 18vw, 4.4rem); }
  .indian-experience .hero-editorial { font-size: 1.8rem; }
  .indian-experience .progress-dashboard { grid-template-columns: minmax(0, 1fr); }
  .indian-experience .progress-card { grid-column: 1; }
}
