/* =========================================================================
   TA Dialogues — TALR v2 · additions + overrides on top of talr.css
   Loaded AFTER talr.css, so anything in here wins.

   Covers the client change-list:
   - Hero tightened + centred (was left-aligned + tall)
   - New TA Dialogues logo (real PNG) in header + footer
   - "Sm" button variant (Request Invitation / Partner With Us shrunk)
   - Larger "Presented by" logo per city
   - Metrics row with 4 tiles + ∞ icon + animated counters
   - Moving stripe (marquee) inside Bengaluru only
   - Testimonial band: 1 quote + auto-sliding 3-of-6 face carousel
   - Newsletter × 2 (inline band between cities + full block above footer)
   - CTA cards display-only (no click, hover animation only)
   - Footer transparent-bg logo, 3-line address, Peepal Consulting link,
     social icon row
   ========================================================================= */

/* -------- Header: real PNG logo (transparent, no chip) ------------------ */
.tad-page--talr .tad-header__logo--real img {
    height: 44px; width: auto;
    display: block;
    background: transparent;
}
.tad-page--talr .tad-header__logo--real { display: inline-block; padding: 0; }

/* -------- Small button variant (Request Invitation / Partner With Us) --- */
.tad-page--talr .tad-btn.tad-btn--sm {
    padding: 10px 20px;
    font-size: 12px;
    letter-spacing: 0.1em;
}

/* -------- Hero: TIGHTER top padding + centred layout ------------------- */
.tad-page--talr .tad-hero--tight {
    padding-block: clamp(48px, 5vw, 80px) !important;
}
.tad-page--talr .tad-hero--tight .tad-hero__bg,
.tad-page--talr .tad-hero--tight .tad-hero__bg::after { display: none; }
.tad-page--talr .tad-hero--centred .tad-hero__inner {
    max-width: 880px;
    margin-inline: auto;
    text-align: center;
}
.tad-page--talr .tad-hero--centred .tad-hero__title {
    font-family: var(--tad-font-display);
    font-size: clamp(2.25rem, 4vw, 3.5rem);
    margin-inline: auto;
    max-width: 22ch;
}
.tad-page--talr .tad-hero--centred .tad-hero__line {
    margin-inline: auto;
    max-width: 62ch;
}
.tad-page--talr .tad-hero__ctas--centred {
    justify-content: center;
}

/* -------- Metrics row (100+, 20+, 8+, ∞) with counter ------------------- */
.tad-page--talr .tad-metrics {
    padding-block: clamp(40px, 5vw, 72px);
    background: var(--tad-bg-alt);
    border-block: var(--tad-border-thin);
}
.tad-page--talr .tad-metrics__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: var(--tad-space-5);
    align-items: end;
}
.tad-page--talr .tad-metric {
    text-align: center;
    padding: var(--tad-space-5) var(--tad-space-3);
}
.tad-page--talr .tad-metric__num {
    font-family: var(--tad-font-display);
    font-size: clamp(2.2rem, 4vw, 3rem);
    font-weight: 700;
    line-height: 1;
    color: var(--tad-accent);
    letter-spacing: -0.02em;
    margin-bottom: var(--tad-space-3);
    min-height: 3rem;
    display: flex;
    align-items: center;
    justify-content: center;
}
.tad-page--talr .tad-metric__num--icon {
    color: var(--tad-accent);
}
.tad-page--talr .tad-metric__num--icon svg { display: block; }
.tad-page--talr .tad-metric__label {
    font-family: "Fira Code", ui-monospace, monospace;
    font-size: var(--tad-fs-xs);
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--tad-ink-muted);
    max-width: 22ch;
    margin-inline: auto;
    line-height: 1.5;
}
@media (max-width: 780px) {
    .tad-page--talr .tad-metrics__grid { grid-template-columns: repeat(2, 1fr); }
}

/* -------- MOVING STRIPE (Bengaluru only) --------------------------------- */
.tad-page--talr .tad-city--flagship .tad-stripe {
    position: relative;
    overflow: hidden;
    background: var(--tad-brand);
    color: #fff;
    border-block: var(--tad-border-thin);
    margin-bottom: var(--tad-space-6);
    padding-block: 12px;
}
.tad-page--talr .tad-stripe__track {
    display: flex; gap: 32px; align-items: center; white-space: nowrap;
    animation: tad-stripe-scroll 32s linear infinite;
    font-family: "Fira Code", ui-monospace, monospace;
    font-size: var(--tad-fs-xs);
    letter-spacing: 0.14em;
    text-transform: uppercase;
    font-weight: 500;
}
.tad-page--talr .tad-stripe__track span { flex-shrink: 0; }
@keyframes tad-stripe-scroll {
    from { transform: translateX(0); }
    to   { transform: translateX(-50%); }
}

/* -------- "Presented by" box · big, with real logo on the right ------- */
.tad-page--talr .tad-city__presented--big {
    display: flex; align-items: center; gap: var(--tad-space-5);
    padding: var(--tad-space-5) var(--tad-space-6);
    background: var(--tad-bg);
    border: var(--tad-border-thin);
    border-radius: var(--tad-radius-md);
    margin-bottom: var(--tad-space-5);
    min-height: 120px;
}
.tad-page--talr .tad-city__presented-label {
    font-family: var(--tad-font-display);
    font-weight: 700;
    font-size: 15px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--tad-ink);
    flex-shrink: 0;
    padding-right: var(--tad-space-5);
    border-right: 1px solid var(--tad-divider);
}
.tad-page--talr .tad-city__presented-logo {
    height: 84px;
    width: auto;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    display: block;
    background: transparent;
    flex: 1 1 auto;
    min-width: 0;
}
@media (max-width: 560px) {
    .tad-page--talr .tad-city__presented--big {
        flex-direction: column; align-items: flex-start; gap: var(--tad-space-3);
        padding: var(--tad-space-4);
    }
    .tad-page--talr .tad-city__presented-label {
        padding-right: 0; border-right: 0; font-size: 12px;
    }
    .tad-page--talr .tad-city__presented-logo { height: 60px; }
}

/* -------- TESTIMONIAL BAND (Bengaluru only) ---------------------------- */
.tad-page--talr .tad-testimonial-band {
    display: grid;
    grid-template-columns: 1.1fr 2.4fr;
    gap: var(--tad-space-6);
    align-items: center;
    margin-top: var(--tad-space-7);
    padding-top: var(--tad-space-6);
    border-top: 1px dashed var(--tad-divider);
}
.tad-page--talr .tad-testimonial__quote p {
    font-family: var(--tad-font-display);
    font-style: italic;
    color: var(--tad-brand);
    font-size: var(--tad-fs-lg);
    line-height: 1.4;
    margin: 0 0 var(--tad-space-3);
    quotes: "\201C" "\201D";
}
.tad-page--talr .tad-testimonial__attribution {
    font-family: "Fira Code", ui-monospace, monospace;
    font-size: 11px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--tad-ink-muted);
}
.tad-page--talr .tad-testimonial__viewport {
    overflow: hidden;
    position: relative;
}
.tad-page--talr .tad-testimonial__track {
    display: flex;
    gap: var(--tad-space-4);
    transition: transform 700ms cubic-bezier(0.4, 0, 0.2, 1);
    will-change: transform;
}
.tad-page--talr .tad-testimonial__card {
    flex: 0 0 calc((100% - var(--tad-space-4) * 2) / 3);
    display: flex;
    align-items: center;
    gap: var(--tad-space-3);
    padding: var(--tad-space-3);
    background: var(--tad-bg);
    border: var(--tad-border-thin);
    border-radius: var(--tad-radius-md);
    min-width: 0;
}
.tad-page--talr .tad-testimonial__card img {
    width: 52px; height: 52px; border-radius: 50%;
    object-fit: cover;
    border: 2px solid #fff;
    box-shadow: var(--tad-shadow-soft);
    flex-shrink: 0;
}
.tad-page--talr .tad-testimonial__card strong {
    display: block; font-size: var(--tad-fs-sm);
    color: var(--tad-ink); font-weight: 600;
}
.tad-page--talr .tad-testimonial__card span {
    display: block; font-size: 11px;
    color: var(--tad-ink-muted); margin-top: 2px;
}
@media (max-width: 900px) {
    .tad-page--talr .tad-testimonial-band { grid-template-columns: 1fr; }
    .tad-page--talr .tad-testimonial__card { flex: 0 0 calc((100% - var(--tad-space-4)) / 2); }
}
@media (max-width: 560px) {
    .tad-page--talr .tad-testimonial__card { flex: 0 0 100%; }
}

/* -------- NEWSLETTER inline band (between cities) ---------------------- */
.tad-page--talr .tad-newsletter-band {
    background: var(--tad-bg-inverse);
    color: var(--tad-ink-inverse);
    padding-block: clamp(32px, 4vw, 56px);
}
.tad-page--talr .tad-newsletter-band__grid {
    display: grid;
    grid-template-columns: 1.2fr 1.3fr;
    gap: var(--tad-space-6);
    align-items: center;
}
.tad-page--talr .tad-newsletter-band__eyebrow {
    font-family: "Fira Code", monospace;
    font-size: var(--tad-fs-xs);
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--tad-accent);
    margin-bottom: var(--tad-space-2);
}
.tad-page--talr .tad-newsletter-band__title {
    font-family: var(--tad-font-display);
    font-size: var(--tad-fs-xl);
    color: var(--tad-ink-inverse);
    margin: 0;
    line-height: 1.3;
}
.tad-page--talr .tad-newsletter {
    display: flex;
    gap: var(--tad-space-3);
    align-items: stretch;
    flex-wrap: wrap;
}
.tad-page--talr .tad-newsletter__input {
    flex: 1;
    min-width: 220px;
    padding: 12px 16px;
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(255,255,255,0.16);
    border-radius: var(--tad-radius-sm);
    color: var(--tad-ink-inverse);
    font-family: var(--tad-font-body);
    font-size: var(--tad-fs-base);
    transition: border-color var(--tad-dur-fast) var(--tad-ease);
}
.tad-page--talr .tad-newsletter__input::placeholder { color: rgba(255,255,255,0.5); }
.tad-page--talr .tad-newsletter__input:focus {
    outline: 0;
    border-color: var(--tad-accent);
    background: rgba(255,255,255,0.12);
}
.tad-page--talr .tad-newsletter .tad-form__status {
    flex-basis: 100%;
    margin-top: var(--tad-space-2);
    font-size: var(--tad-fs-sm);
    color: var(--tad-accent);
    display: block;
}
@media (max-width: 780px) {
    .tad-page--talr .tad-newsletter-band__grid { grid-template-columns: 1fr; }
}

/* -------- NEWSLETTER block (above footer) ------------------------------- */
.tad-page--talr .tad-newsletter-block {
    padding-block: clamp(48px, 6vw, 80px);
    background: var(--tad-bg-alt);
    text-align: center;
}
.tad-page--talr .tad-newsletter-block__eyebrow {
    font-family: "Fira Code", monospace;
    font-size: var(--tad-fs-xs);
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--tad-brand);
    margin-bottom: var(--tad-space-3);
}
.tad-page--talr .tad-newsletter-block__title {
    font-family: var(--tad-font-display);
    font-size: var(--tad-fs-2xl);
    color: var(--tad-ink);
    margin: 0 0 var(--tad-space-3);
}
.tad-page--talr .tad-newsletter-block__sub {
    color: var(--tad-ink-muted);
    max-width: 60ch;
    margin: 0 auto var(--tad-space-6);
}
.tad-page--talr .tad-newsletter--large {
    max-width: 520px;
    margin: 0 auto;
    justify-content: center;
}
.tad-page--talr .tad-newsletter--large .tad-newsletter__input {
    background: #fff;
    border-color: var(--tad-border);
    color: var(--tad-ink);
}
.tad-page--talr .tad-newsletter--large .tad-newsletter__input::placeholder {
    color: var(--tad-ink-muted);
}
.tad-page--talr .tad-newsletter--large .tad-form__status { color: var(--tad-brand); }

/* -------- CTA cards: display-only, hover animation only ---------------- */
.tad-page--talr .tad-cta-cards--display .tad-cta-card {
    cursor: default;
}
.tad-page--talr .tad-cta-cards--display .tad-cta-card__cta { display: none; }
.tad-page--talr .tad-cta-cards--display .tad-cta-card {
    transition: transform var(--tad-dur-fast) var(--tad-ease),
                background var(--tad-dur-fast) var(--tad-ease),
                border-color var(--tad-dur-fast) var(--tad-ease);
}
.tad-page--talr .tad-cta-cards--display .tad-cta-card:hover {
    transform: translateY(-6px);
    background: rgba(255,255,255,0.09);
    border-color: var(--tad-accent);
}

/* -------- FOOTER v2 · transparent logo, 3-line address, Peepal link ---- */
.tad-page--talr .tad-footer--v2 .tad-footer__logo {
    height: 48px; width: auto;
    background: transparent !important;
    margin-bottom: var(--tad-space-4);
    display: block;
}
.tad-page--talr .tad-footer--v2 .tad-footer__powered {
    margin-top: var(--tad-space-4);
    font-size: var(--tad-fs-xs);
    color: var(--tad-ink-muted);
    letter-spacing: 0.06em;
    text-transform: uppercase;
}
.tad-page--talr .tad-footer--v2 .tad-footer__powered a {
    color: var(--tad-brand);
    font-weight: 600;
    text-decoration: none;
    border-bottom: 1px solid transparent;
    transition: border-color var(--tad-dur-fast) var(--tad-ease);
}
.tad-page--talr .tad-footer--v2 .tad-footer__powered a:hover { border-bottom-color: var(--tad-brand); }

.tad-page--talr .tad-footer__contact--3line span {
    display: block;
    color: var(--tad-ink-muted);
    line-height: 1.7;
}

/* =========================================================================
   EDITION STATE MODEL · 4 explicit states + shared badge system
   Matches the HTML cheat-sheet comment in TA-Leadership-Roundtable/index.html
   =========================================================================

   1. --coming-soon   Announced, no date yet  → blurred gallery + Coming Soon badge
   2. --upcoming      Registration in Progress → countdown + Register CTA
   3. --live          Ongoing (event happening) → LIVE badge, countdown hidden
   4. --past          Completed → photos unblurred, Completed tag, no countdown
   ========================================================================= */

/* --- Shared badge (works next to the eyebrow on any state) ---------- */
.tad-page--talr .tad-city__badge {
    display: inline-flex; align-items: center; gap: 6px;
    margin-left: var(--tad-space-3);
    padding: 4px 10px;
    border-radius: 999px;
    font-family: "Fira Code", monospace;
    font-size: 10px; font-weight: 600;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    vertical-align: middle;
}
.tad-page--talr .tad-city__badge-dot {
    width: 7px; height: 7px; border-radius: 50%;
    animation: tad-live-pulse 1.6s ease-in-out infinite;
}
@keyframes tad-live-pulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50%      { opacity: 0.4; transform: scale(1.3); }
}

/* Badge colour variants — pick per state ---------------------------- */
/* Registrations Open — orange pulse (used with --upcoming) */
.tad-page--talr .tad-city__badge--registering {
    background: var(--tad-accent-soft); color: var(--tad-accent);
}
.tad-page--talr .tad-city__badge--registering .tad-city__badge-dot { background: var(--tad-accent); }

/* LIVE NOW — orange (urgent, matches brand palette; no green/red) */
.tad-page--talr .tad-city__badge--live {
    background: var(--tad-accent-soft); color: var(--tad-accent);
    padding: 5px 12px; font-size: 11px;
    box-shadow: 0 0 0 2px rgba(242, 127, 12, 0.18);
}
.tad-page--talr .tad-city__badge--live .tad-city__badge-dot {
    width: 8px; height: 8px;
    background: var(--tad-accent);
    box-shadow: 0 0 0 4px var(--tad-accent-soft);
}

/* Completed — navy blue tag (used with --past). No green anywhere. */
.tad-page--talr .tad-city__badge--completed {
    background: var(--tad-brand-soft); color: var(--tad-brand);
}
.tad-page--talr .tad-city__badge--completed .tad-city__badge-dot {
    background: var(--tad-brand); animation: none;
}

/* --- STATE 3 · ONGOING / LIVE ---------------------------------------- */
/* Event is happening TODAY: hide countdown + stripe, keep venue + register */
.tad-page--talr .tad-city--live { background: var(--tad-bg); }
.tad-page--talr .tad-city--live .tad-countdown { display: none !important; }
.tad-page--talr .tad-city--live .tad-stripe    { display: none !important; }
.tad-page--talr .tad-city--live .tad-city__gallery-img { filter: none; opacity: 1; }
/* Auto-inject a big LIVE badge if the section is --live but no explicit badge in HTML */
.tad-page--talr .tad-city--live .tad-city__eyebrow::after {
    content: "LIVE NOW";
    display: inline-block;
    margin-left: var(--tad-space-3);
    padding: 5px 12px;
    background: var(--tad-accent-soft);
    color: var(--tad-accent);
    border-radius: 999px;
    font-family: "Fira Code", monospace;
    font-size: 11px; font-weight: 700;
    letter-spacing: 0.14em;
    animation: tad-live-glow 1.6s ease-in-out infinite;
    vertical-align: middle;
}
/* If the HTML already has an explicit badge, hide the ::after so we don't double-badge */
.tad-page--talr .tad-city--live .tad-city__eyebrow:has(.tad-city__badge)::after { display: none; }
@keyframes tad-live-glow {
    0%, 100% { box-shadow: 0 0 0 0 rgba(242, 127, 12, 0.4); }
    50%      { box-shadow: 0 0 0 8px rgba(242, 127, 12, 0);   }
}

/* --- STATE 5 · TBD (To Be Decided) -------------------------------------
   Same as coming-soon visually but keeps chips visible with "Date TBD".
   Add class="tad-city tad-city--tbd" for any un-dated city with an
   announced venue/theme but no locked date. */
.tad-page--talr .tad-city--tbd { background: var(--tad-bg-alt); }
.tad-page--talr .tad-city--tbd .tad-countdown { display: none !important; }
.tad-page--talr .tad-city--tbd .tad-stripe    { display: none !important; }
.tad-page--talr .tad-city--tbd .tad-city__gallery-img { filter: blur(6px); opacity: 0.7; }
.tad-page--talr .tad-city--tbd .tad-city__coming-badge::before { content: "Date TBD · "; }
.tad-page--talr .tad-city--tbd .tad-city__eyebrow::after {
    content: "TBD";
    display: inline-block;
    margin-left: var(--tad-space-3);
    padding: 4px 10px;
    background: var(--tad-brand-soft);
    color: var(--tad-brand);
    border-radius: 999px;
    font-family: "Fira Code", monospace;
    font-size: 10px; font-weight: 600;
    letter-spacing: 0.12em;
    vertical-align: middle;
}
.tad-page--talr .tad-city--tbd .tad-city__eyebrow:has(.tad-city__badge)::after { display: none; }

/* --- STATE 4 · COMPLETED --------------------------------------------- */
/* Event is done: photos activated, Completed tag, no countdown / register */
.tad-page--talr .tad-city--past { background: var(--tad-bg-alt); }
.tad-page--talr .tad-city--past .tad-countdown { display: none !important; }
.tad-page--talr .tad-city--past .tad-stripe    { display: none !important; }
.tad-page--talr .tad-city--past .tad-city__gallery-img { filter: none; opacity: 1; }
.tad-page--talr .tad-city--past .tad-city__coming-badge { display: none; }
/* Hide the primary "Register Now / Request Invitation" CTA; keep any secondary link */
.tad-page--talr .tad-city--past .tad-city__cta .tad-btn--accent,
.tad-page--talr .tad-city--past .tad-city__cta .tad-btn--primary { display: none; }
/* Auto-inject a "COMPLETED" tag if no explicit badge in HTML */
.tad-page--talr .tad-city--past .tad-city__eyebrow::after {
    content: "COMPLETED";
    display: inline-block;
    margin-left: var(--tad-space-3);
    padding: 4px 10px;
    background: var(--tad-brand-soft);
    color: var(--tad-brand);
    border-radius: 999px;
    font-family: "Fira Code", monospace;
    font-size: 10px; font-weight: 600;
    letter-spacing: 0.12em;
    vertical-align: middle;
}
.tad-page--talr .tad-city--past .tad-city__eyebrow:has(.tad-city__badge)::after { display: none; }
/* Small "View Event Recap" hint (only shows on --past) */
.tad-page--talr .tad-city--past .tad-city__cta::after {
    content: "Photos & recap below ↓";
    display: block; width: 100%;
    margin-top: var(--tad-space-2);
    font-family: "Fira Code", monospace;
    font-size: 11px; color: var(--tad-ink-muted);
    letter-spacing: 0.06em;
}

.tad-page--talr .tad-city__theme {
    font-family: var(--tad-font-display);
    font-style: italic;
    color: var(--tad-brand);
    font-size: var(--tad-fs-lg);
    margin: -8px 0 var(--tad-space-5);
    line-height: 1.4;
}

.tad-page--talr .tad-city__panel {
    margin-block: var(--tad-space-5);
    padding: var(--tad-space-4) var(--tad-space-5);
    background: var(--tad-bg-alt);
    border: 1px solid var(--tad-divider);
    border-radius: var(--tad-radius-md);
}
.tad-page--talr .tad-city__panel-heading,
.tad-page--talr .tad-city__agenda-heading {
    font-family: "Fira Code", monospace;
    font-size: 11px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--tad-ink-muted);
    margin-bottom: var(--tad-space-3);
}
.tad-page--talr .tad-city__panel-row {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: var(--tad-space-3);
}
.tad-page--talr .tad-city__panel-face {
    display: flex; align-items: center; gap: 8px;
    min-width: 0;
}
.tad-page--talr .tad-city__panel-face img {
    width: 40px; height: 40px; border-radius: 50%;
    object-fit: cover; border: 2px solid #fff;
    box-shadow: var(--tad-shadow-soft); flex-shrink: 0;
}
.tad-page--talr .tad-city__panel-face strong {
    display: block; font-size: 12px; color: var(--tad-ink); font-weight: 600;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.tad-page--talr .tad-city__panel-face span {
    display: block; font-size: 10px; color: var(--tad-ink-muted);
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
@media (max-width: 780px) {
    .tad-page--talr .tad-city__panel-row { grid-template-columns: repeat(2, 1fr); }
}

.tad-page--talr .tad-city__agenda {
    margin-block: var(--tad-space-5);
    padding: var(--tad-space-4) var(--tad-space-5);
    background: #fff;
    border: 1px solid var(--tad-divider);
    border-radius: var(--tad-radius-md);
}
.tad-page--talr .tad-city__agenda ul {
    list-style: none; padding: 0; margin: 0;
    display: flex; flex-direction: column;
}
.tad-page--talr .tad-city__agenda li {
    display: grid;
    grid-template-columns: 90px 1fr;
    gap: var(--tad-space-4);
    padding: 8px 0;
    border-top: 1px dashed var(--tad-divider);
    font-size: var(--tad-fs-sm);
    color: var(--tad-ink);
    line-height: 1.5;
}
.tad-page--talr .tad-city__agenda li:first-child { border-top: 0; }
.tad-page--talr .tad-city__agenda li span {
    font-family: "Fira Code", monospace;
    font-size: 11px;
    color: var(--tad-brand);
    letter-spacing: 0.06em;
    padding-top: 2px;
}

.tad-page--talr .tad-city__seats {
    margin-top: var(--tad-space-3);
    font-family: "Fira Code", monospace;
    font-size: 11px;
    color: var(--tad-accent);
    letter-spacing: 0.06em;
}

/* =========================================================================
   RESPONSIVE — Tablet (≤ 1024px) + Mobile (≤ 640px)
   Every rule in here is a v2 override that wins because we load AFTER talr.css.
   ========================================================================= */

/* ---------- Tablet (portrait iPad and small laptops, ≤ 1024px) --------- */
@media (max-width: 1024px) {
    .tad-page--talr .tad-hero--tight { padding-block: clamp(40px, 5vw, 64px) !important; }
    .tad-page--talr .tad-hero__title { font-size: clamp(2rem, 4.5vw, 3rem); }

    /* Header: keep nav but tighten spacing */
    .tad-page--talr .tad-header__inner { min-height: 68px; gap: var(--tad-space-4); }
    .tad-page--talr .tad-header__nav { gap: var(--tad-space-5); }
    .tad-page--talr .tad-header__logo--real img { height: 40px; }
    .tad-page--talr .tad-header__cta { padding: 8px 14px; font-size: 11px; }

    /* Metrics: still 4 across on tablet but tighter */
    .tad-page--talr .tad-metric { padding: var(--tad-space-4) var(--tad-space-2); }
    .tad-page--talr .tad-metric__num { font-size: clamp(1.8rem, 3.5vw, 2.5rem); }

    /* City grid — stack sooner (was 960px in base) */
    .tad-page--talr .tad-city__grid { gap: var(--tad-space-5); }
    .tad-page--talr .tad-city__title { font-size: clamp(1.8rem, 3.5vw, 2.4rem); }

    /* Testimonial: fall back to 2-per-view on tablet */
    .tad-page--talr .tad-testimonial-band { grid-template-columns: 1fr; gap: var(--tad-space-5); }
    .tad-page--talr .tad-testimonial__card { flex: 0 0 calc((100% - var(--tad-space-4)) / 2); }

    /* Live-showcase Chennai — panel drops to 2 columns */
    .tad-page--talr .tad-city__panel-row { grid-template-columns: repeat(2, 1fr); }

    /* Newsletter inline: title + form stack */
    .tad-page--talr .tad-newsletter-band__grid { grid-template-columns: 1fr; gap: var(--tad-space-4); }

    /* Footer: 2×2 grid instead of 4-across */
    .tad-page--talr .tad-footer__inner { grid-template-columns: 1fr 1fr; gap: var(--tad-space-6); }

    /* Moving stripe: slow it down for tablets so text stays readable */
    .tad-page--talr .tad-stripe__track { animation-duration: 40s; }
}

/* ---------- Mobile (≤ 640px) ------------------------------------------- */
@media (max-width: 640px) {
    /* Tagback: hide the meta on tiny screens, just the back-link stays */
    .tad-page--talr .tad-tagback__meta { display: none; }
    .tad-page--talr .tad-tagback__inner { padding-block: 8px; }
    .tad-page--talr .tad-tagback__link { font-size: 10px; }

    /* Header collapses to logo + hamburger; CTA moves into the menu drawer */
    .tad-page--talr .tad-header__inner { min-height: 60px; padding-block: 8px; position: relative; }
    .tad-page--talr .tad-header__nav { display: none; }
    .tad-page--talr .tad-header__cta { display: none; }
    .tad-page--talr .tad-header__menu-toggle { display: flex; flex-direction: column; gap: 5px; padding: 8px; }
    .tad-page--talr .tad-header__menu-toggle span {
        display: block; width: 22px; height: 2px; background: var(--tad-ink); border-radius: 2px;
    }
    .tad-page--talr .tad-header__logo--real img { height: 34px; }

    /* Hero — big compression */
    .tad-page--talr .tad-hero--tight { padding-block: 32px !important; }
    .tad-page--talr .tad-hero__title { font-size: 1.75rem; line-height: 1.15; }
    .tad-page--talr .tad-hero__subtitle { font-size: 10px; letter-spacing: 0.14em; }
    .tad-page--talr .tad-hero__line { font-size: 15px; }
    .tad-page--talr .tad-hero__ctas--centred { flex-direction: column; align-items: stretch; gap: 10px; }
    .tad-page--talr .tad-hero__ctas--centred .tad-btn { justify-content: center; }

    /* About */
    .tad-page--talr .tad-intro { padding-block: 24px; }
    .tad-page--talr .tad-intro__lead { font-size: 15px; }

    /* Metrics: 2 columns stacked */
    .tad-page--talr .tad-metrics { padding-block: 32px; }
    .tad-page--talr .tad-metrics__grid { grid-template-columns: 1fr 1fr; gap: var(--tad-space-3); }
    .tad-page--talr .tad-metric { padding: var(--tad-space-4) var(--tad-space-2); }
    .tad-page--talr .tad-metric__num { font-size: 1.75rem; min-height: 2rem; margin-bottom: 8px; }
    .tad-page--talr .tad-metric__label { font-size: 10px; letter-spacing: 0.06em; }
    .tad-page--talr .tad-metric__num--icon svg { width: 60px; height: 30px; }

    /* Editions band */
    .tad-page--talr .tad-editions-band { padding-block: 32px; }
    .tad-page--talr .tad-editions-band__title { font-size: 1.5rem; }

    /* City blocks: 1-column stack, mobile-friendly gallery */
    .tad-page--talr .tad-city { padding-block: 40px; }
    .tad-page--talr .tad-city__grid { grid-template-columns: 1fr; gap: var(--tad-space-4); }
    .tad-page--talr .tad-city__title { font-size: 1.75rem; }
    .tad-page--talr .tad-city__chips { gap: 6px; }
    .tad-page--talr .tad-city__chips .tad-chip { font-size: 10px; padding: 5px 10px; }
    .tad-page--talr .tad-countdown { gap: 8px; flex-wrap: wrap; justify-content: flex-start; }
    .tad-page--talr .tad-countdown__unit { min-width: 60px; padding: 8px; }
    .tad-page--talr .tad-countdown__num { font-size: 1.25rem; }
    .tad-page--talr .tad-city__cta { flex-direction: column; align-items: stretch; }
    .tad-page--talr .tad-city__cta .tad-btn { justify-content: center; }
    .tad-page--talr .tad-city__gallery {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: auto auto auto;
        gap: 6px;
    }
    .tad-page--talr .tad-city__gallery-img:nth-child(1) {
        grid-column: 1 / -1; grid-row: 1;
        aspect-ratio: 16 / 9;
    }

    /* Coming-soon badge fits the smaller box */
    .tad-page--talr .tad-city__coming-badge { font-size: 10px; padding: 6px 12px; }

    /* Moving stripe: smaller font + faster loop (shorter viewport) */
    .tad-page--talr .tad-stripe__track { font-size: 10px; gap: 20px; animation-duration: 20s; }

    /* Testimonial band: 1-per-view on phone, stacked vertically */
    .tad-page--talr .tad-testimonial-band { padding-top: var(--tad-space-4); }
    .tad-page--talr .tad-testimonial__quote p { font-size: 1rem; }
    .tad-page--talr .tad-testimonial__card { flex: 0 0 100%; padding: 12px; }
    .tad-page--talr .tad-testimonial__card img { width: 44px; height: 44px; }
    .tad-page--talr .tad-testimonial__card strong { font-size: 13px; }
    .tad-page--talr .tad-testimonial__card span { font-size: 10px; }

    /* Live-showcase Chennai */
    .tad-page--talr .tad-city__badge { margin-left: 0; margin-top: 4px; display: inline-flex; }
    .tad-page--talr .tad-city__theme { font-size: 1rem; }
    .tad-page--talr .tad-city__panel { padding: var(--tad-space-3); }
    .tad-page--talr .tad-city__panel-row { grid-template-columns: 1fr; gap: 10px; }
    .tad-page--talr .tad-city__panel-face { padding: 6px 0; border-bottom: 1px dashed var(--tad-divider); }
    .tad-page--talr .tad-city__panel-face:last-child { border-bottom: 0; }
    .tad-page--talr .tad-city__agenda { padding: var(--tad-space-3); }
    .tad-page--talr .tad-city__agenda li { grid-template-columns: 70px 1fr; gap: 10px; font-size: 12px; }

    /* Newsletter blocks */
    .tad-page--talr .tad-newsletter-band { padding-block: 28px; }
    .tad-page--talr .tad-newsletter-band__title { font-size: 1.15rem; }
    .tad-page--talr .tad-newsletter { flex-direction: column; align-items: stretch; }
    .tad-page--talr .tad-newsletter__input { min-width: 0; width: 100%; }
    .tad-page--talr .tad-newsletter .tad-btn { justify-content: center; }
    .tad-page--talr .tad-newsletter-block { padding-block: 40px; }
    .tad-page--talr .tad-newsletter-block__title { font-size: 1.5rem; }

    /* CTA closer + form */
    .tad-page--talr .tad-cta-closer { padding-block: 40px; }
    .tad-page--talr .tad-cta-closer__title { font-size: 1.5rem; }
    .tad-page--talr .tad-cta-cards { grid-template-columns: 1fr; gap: 14px; }
    .tad-page--talr .tad-cta-card { padding: 20px; }
    .tad-page--talr .tad-form { padding: 20px; }
    .tad-page--talr .tad-form__grid { grid-template-columns: 1fr; gap: 12px; }
    .tad-page--talr .tad-form__submit { width: 100%; justify-content: center; }

    /* Footer: 1-column stack */
    .tad-page--talr .tad-footer--v2 { padding-block: 40px; }
    .tad-page--talr .tad-footer__inner { grid-template-columns: 1fr; gap: var(--tad-space-5); }
    .tad-page--talr .tad-footer--v2 .tad-footer__logo { height: 40px; }
    .tad-page--talr .tad-footer__contact--3line span { font-size: 13px; }
    .tad-page--talr .tad-footer__social--icons { justify-content: flex-start; }
}

/* Slightly-larger phones (landscape / big screens like iPhone Pro Max) */
@media (min-width: 480px) and (max-width: 640px) {
    .tad-page--talr .tad-metrics__grid { grid-template-columns: repeat(2, 1fr); }
    .tad-page--talr .tad-hero__ctas--centred { flex-direction: row; justify-content: center; }
}

/* Very small phones (≤ 380px) — one final safety net for tiny SE-class screens */
@media (max-width: 380px) {
    .tad-page--talr .tad-countdown__unit { min-width: 52px; padding: 6px; }
    .tad-page--talr .tad-countdown__num { font-size: 1.1rem; }
    .tad-page--talr .tad-hero__title { font-size: 1.5rem; }
    .tad-page--talr .tad-form__label { font-size: 10px; }
}

/* Larger desktop (≥ 1280px) — bump up display sizes a touch */
@media (min-width: 1280px) {
    .tad-page--talr .tad-hero__title { font-size: 3.5rem; }
    .tad-page--talr .tad-city__title { font-size: 2.5rem; }
    .tad-page--talr .tad-metric__num { font-size: 3.25rem; }
}

/* ======================================================================
   POLISH PASS (2026-08-05) · matches client screenshots + notes
   ---------------------------------------------------------------------
   1. Top blue CTA band → newsletter form styling
   2. Tighter spacing above & below the band (no dead white space)
   3. Badges (Completed / Registrations Open / TBD) get an outlined box
      treatment so they stand out from the eyebrow text
   4. Social icons forced to a single horizontal row (was stacking)
   5. Buttons get a stronger lift + shadow on hover
   ====================================================================== */

/* 1 + 2 · Top blue newsletter band (was Request-an-Invitation) */
.tad-page--talr .tad-cta-band {
    background: var(--tad-brand);
    color: #fff;
    padding-block: var(--tad-space-4) !important;
    margin: 0 !important;
}
.tad-page--talr .tad-cta-band__inner {
    display: flex; align-items: center; justify-content: space-between;
    gap: var(--tad-space-5); flex-wrap: wrap;
}
.tad-page--talr .tad-cta-band__copy strong {
    display: block;
    font-family: "Chakra Petch", "Space Grotesk", sans-serif;
    font-size: var(--tad-fs-lg);
    color: #fff; line-height: 1.25; margin-bottom: 4px;
}
.tad-page--talr .tad-cta-band__copy span {
    font-size: var(--tad-fs-sm);
    color: rgba(255,255,255,0.85);
}
.tad-page--talr .tad-cta-band__form {
    display: flex; gap: 8px; align-items: stretch; flex-wrap: wrap;
    margin-left: auto;
}
.tad-page--talr .tad-cta-band__email {
    padding: 10px 14px;
    min-width: 260px;
    background: rgba(255,255,255,0.14);
    border: 1px solid rgba(255,255,255,0.28);
    border-radius: var(--tad-radius-sm);
    color: #fff; font-family: var(--tad-font-body);
    font-size: var(--tad-fs-sm);
}
.tad-page--talr .tad-cta-band__email::placeholder { color: rgba(255,255,255,0.6); }
.tad-page--talr .tad-cta-band__email:focus {
    outline: 0; border-color: var(--tad-accent); background: rgba(255,255,255,0.2);
}
.tad-page--talr .tad-cta-band .tad-form__status {
    flex-basis: 100%; text-align: right;
    color: rgba(255,255,255,0.85); font-size: var(--tad-fs-xs);
}
/* Tighten spacing above and below the band */
.tad-page--talr .tad-hero--tight { padding-bottom: var(--tad-space-5) !important; }
.tad-page--talr .tad-cta-band + .tad-intro { padding-top: var(--tad-space-5) !important; }
@media (max-width: 780px) {
    .tad-page--talr .tad-cta-band__inner { flex-direction: column; align-items: flex-start; }
    .tad-page--talr .tad-cta-band__form { margin-left: 0; width: 100%; }
    .tad-page--talr .tad-cta-band__email { min-width: 0; flex: 1; }
}

/* 3 · Outlined-box treatment for state badges (Completed / Registrations Open / TBD) */
.tad-page--talr .tad-city__badge {
    border: 1.5px solid currentColor;
    padding: 5px 12px;
    font-weight: 700;
    background: transparent !important;
    box-shadow: 0 0 0 3px rgba(6, 48, 132, 0.04);
}
/* Registrations Open — orange outlined pill */
.tad-page--talr .tad-city__badge--registering {
    color: var(--tad-accent);
    box-shadow: 0 0 0 3px rgba(242, 127, 12, 0.10);
}
/* Auto-injected COMPLETED tag on --past sections — outlined navy */
.tad-page--talr .tad-city--past .tad-city__eyebrow::after {
    border: 1.5px solid var(--tad-brand);
    background: transparent;
    box-shadow: 0 0 0 3px rgba(6, 48, 132, 0.08);
    font-weight: 700;
}
/* Auto-injected TBD tag on --tbd sections — outlined navy */
.tad-page--talr .tad-city--tbd .tad-city__eyebrow::after {
    border: 1.5px solid var(--tad-brand);
    background: transparent;
    box-shadow: 0 0 0 3px rgba(6, 48, 132, 0.08);
    font-weight: 700;
}
/* Auto-injected LIVE NOW tag on --live sections — outlined orange */
.tad-page--talr .tad-city--live .tad-city__eyebrow::after {
    border: 1.5px solid var(--tad-accent);
    background: transparent;
    box-shadow: 0 0 0 3px rgba(242, 127, 12, 0.10);
    font-weight: 700;
}

/* 5 · Stronger button hover — lift + shadow */
.tad-page--talr .tad-btn {
    transition: transform 220ms cubic-bezier(0.2,0.7,0.2,1),
                background-color 180ms ease,
                box-shadow 260ms cubic-bezier(0.2,0.7,0.2,1),
                filter 180ms ease;
}
.tad-page--talr .tad-btn--primary:hover,
.tad-page--talr .tad-btn--accent:hover {
    transform: translateY(-3px);
    box-shadow: 0 14px 28px -8px rgba(6, 48, 132, 0.35),
                0 6px 12px -4px rgba(6, 48, 132, 0.2);
    filter: brightness(1.05);
}
.tad-page--talr .tad-btn--accent:hover {
    box-shadow: 0 14px 28px -8px rgba(242, 127, 12, 0.4),
                0 6px 12px -4px rgba(242, 127, 12, 0.25);
}
.tad-page--talr .tad-btn--ghost:hover {
    transform: translateY(-3px);
    background: rgba(6, 48, 132, 0.06);
    box-shadow: 0 10px 24px -8px rgba(11, 27, 59, 0.18);
}

/* 4 · Footer social icons · FORCED horizontal single row */
.tad-page--talr .tad-footer__social,
.tad-page--talr .tad-footer__social--icons {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: var(--tad-space-3);
    align-items: center;
    padding: 0; margin: 0;
    list-style: none;
}
.tad-page--talr .tad-footer__social li,
.tad-page--talr .tad-footer__social--icons li { list-style: none; margin: 0; }
.tad-page--talr .tad-footer__social--icons a {
    display: grid; place-items: center;
    width: 40px; height: 40px;
    border-radius: 50%;
    background: rgba(11,27,59,0.06);
    color: var(--tad-brand);
    transition: background var(--tad-dur-fast) var(--tad-ease),
                color var(--tad-dur-fast) var(--tad-ease),
                transform var(--tad-dur-fast) var(--tad-ease);
    text-decoration: none;
}
.tad-page--talr .tad-footer__social--icons a:hover {
    background: var(--tad-brand);
    color: #fff;
    transform: translateY(-2px);
}

/* ===== Blue CTA band (below hero, above About) ========================= */
.tad-page--talr .tad-cta-band {
    background: var(--tad-brand);
    color: #fff;
    padding-block: clamp(18px, 2.6vw, 28px);
}
.tad-page--talr .tad-cta-band__inner {
    display: flex; align-items: center; justify-content: space-between;
    gap: clamp(16px, 3vw, 36px);
    flex-wrap: wrap;
}
.tad-page--talr .tad-cta-band__copy { display: flex; flex-direction: column; gap: 2px; }
.tad-page--talr .tad-cta-band__copy strong {
    font-family: var(--tad-font-display);
    font-size: clamp(1rem, 1.4vw, 1.25rem);
    font-weight: 600; letter-spacing: 0.01em;
}
.tad-page--talr .tad-cta-band__copy span {
    font-size: var(--tad-fs-sm);
    color: rgba(255,255,255,0.85);
}
@media (max-width: 640px) {
    .tad-page--talr .tad-cta-band__inner { justify-content: center; text-align: center; }
    .tad-page--talr .tad-cta-band__copy { align-items: center; }
}

/* Alternate city bg: white / off-white — keeps sections visually distinct */
.tad-page--talr .tad-city { background: #FFFFFF; }
.tad-page--talr .tad-city:nth-of-type(even) { background: #F7F5F0; }

/* Newsletter section gets a mild tint so it separates from footer */
.tad-page--talr .tad-newsletter-block { background: #F7F5F0; }
