/* NIGHTSHOT V6.11 — unified compact editorial typography.
   Opt-in via existing Nightshot wrappers; does not change input/number sizing. */
:root{--ns-type-page:clamp(1.55rem,2.35vw,2.15rem);--ns-type-section:clamp(1.20rem,1.8vw,1.55rem);--ns-type-card:clamp(.92rem,1.15vw,1.12rem)}

/* Public headings, including large legacy hero titles. */
body.ns-native-app main h1,
body.ns-native-app .hero h1,
body.ns-native-app .hero h1 strong,
body.ns-native-app .legal-hero h1,
body.ns-native-app .ns-editorial-hero h1,
body.ns-native-app .ns-help-hero h1,
body.ns-native-app .venue-hero h1,
body.ns-native-app .people-hero h1,
body.ns-native-app .ns-portfolio-title,
body.ns-native-app .ns-city-head h1,
body.ns-native-app .ns-event-page h1,
body.ns-native-app .ns-event-title,
body.ns-native-app .comm-top h1{
 font-size:var(--ns-type-page)!important;line-height:1.15!important;
 letter-spacing:-.028em!important;max-width:100%;overflow-wrap:anywhere;
}
body.ns-native-app main h2,
body.ns-native-app .section-head h2,
body.ns-native-app .ns-help-cta h2,
body.ns-native-app .legal-card h2{
 font-size:var(--ns-type-section)!important;line-height:1.22!important;
 letter-spacing:-.018em!important;overflow-wrap:anywhere;
}
body.ns-native-app main h3,
body.ns-native-app .ns2-eventi-title,
body.ns-native-app .ns-city-info h2,
body.ns-native-app .ns-venue-card h3,
body.ns-native-app .venue-info h3,
body.ns-native-app .comm-post h2{
 font-size:var(--ns-type-card)!important;line-height:1.3!important;
 letter-spacing:-.01em!important;overflow-wrap:anywhere;
}

/* App Home: the compact screen from V6.03 wins over any earlier global hero styles. */
@media(max-width:768px){
 :root{--ns-type-page:clamp(1.5rem,6vw,1.82rem);--ns-type-section:clamp(1.1rem,4.5vw,1.34rem);--ns-type-card:clamp(.87rem,3.65vw,1.02rem)}
 body.ns-native-app .ns603-home-app .ns603-head h1{font-size:clamp(1.62rem,6.2vw,1.9rem)!important;line-height:1.12!important;letter-spacing:-.035em!important;margin:3px 0 5px!important}
 body.ns-native-app .ns603-home-app .ns603-flyer-head strong{font-size:.92rem!important;line-height:1.25!important}
 body.ns-native-app .ns603-home-app .ns603-flyer-meta strong{font-size:.90rem!important;line-height:1.26!important}
 body.ns-native-app .ns603-home-app .ns603-actions strong{font-size:.92rem!important;line-height:1.28!important}
 body.ns-native-app .ns603-home-app .ns603-place-title strong{font-size:.76rem!important}
 body.ns-native-app .ns603-home-app .ns603-search span{font-size:.91rem!important}
 body.ns-native-app .ns-native-toolbar strong{font-size:.90rem!important}
 body.ns-native-app .ns-city-head h1{font-size:1.06rem!important}
}

/* Admin / Partner panels: consistent scale independent of old page CSS. */
body.ns-admin-page .ns-admin-main h1,
body.ns-admin-page .ns-admin-heading h1,
body.ns-admin-page .ns566-head h1,
body.ns-admin-page main .wrap>h1,
body.ns-admin-page main h1,
body.ns-admin-page .hero h1{
 font-size:clamp(1.55rem,2.3vw,2.15rem)!important;line-height:1.18!important;
 letter-spacing:-.025em!important;overflow-wrap:anywhere;
}
body.ns-admin-page .ns-admin-main h2,
body.ns-admin-page .ns-form-card h2,
body.ns-admin-page .card h2{
 font-size:clamp(1.08rem,1.6vw,1.38rem)!important;line-height:1.25!important;
}
body.ns-admin-page .ns-admin-main h3{font-size:clamp(.95rem,1.2vw,1.1rem)!important;line-height:1.3!important}
body.ns-admin-page .ns-kpi strong,body.ns-admin-page .ns566-kpis strong{font-size:clamp(1.35rem,2.4vw,1.8rem)!important}
body:has(.partner-workbar) main h1,
body:has(.partner-workbar) .partner-hero h1,
body:has(.partner-workbar) .hero h1{
 font-size:clamp(1.55rem,2.3vw,2.15rem)!important;line-height:1.16!important;
 letter-spacing:-.025em!important;overflow-wrap:anywhere;
}
body:has(.partner-workbar) main h2{font-size:clamp(1.12rem,1.7vw,1.42rem)!important;line-height:1.22!important}
body:has(.partner-workbar) main h3{font-size:clamp(.95rem,1.2vw,1.10rem)!important;line-height:1.27!important}
@media(max-width:768px){
 body.ns-admin-page main h1,body.ns-admin-page .ns-admin-heading h1,body.ns-admin-page .ns566-head h1,
 body:has(.partner-workbar) main h1{font-size:clamp(1.48rem,6vw,1.85rem)!important}
 body.ns-admin-page main h2,body:has(.partner-workbar) main h2{font-size:clamp(1.03rem,4.45vw,1.28rem)!important}
}
@media(min-width:769px){
 :root{--ns-type-page:clamp(1.7rem,2.45vw,2.4rem);--ns-type-section:clamp(1.28rem,1.75vw,1.72rem);--ns-type-card:clamp(.97rem,1.05vw,1.16rem)}
}
