/* Main-domain phone refinements, layered after the approved Rajasthan design. */
.rr-mobile-pass-controls,.rr-phone-rail-controls { display:none; }
@media (max-width:767px) {
  html { -webkit-text-size-adjust:100%; scroll-behavior:auto!important; }
  #rr-top { position:relative; font-size:10px; padding:7px 12px; }
  body .rr-hero.rr-rajasthan-hero { padding-inline:18px; }
  .rr-raj-nav { min-height:64px; gap:10px; }
  .rr-raj-brand { width:clamp(155px,48vw,200px); height:54px; }
  .rr-raj-nav .rr-raj-nav-ticket { min-height:44px; padding:10px 12px; display:flex; align-items:center; font-size:11px; }
  .rr-raj-hero-grid { padding-top:22px; gap:24px; }
  .rr-raj-hero-copy { display:flex; flex-direction:column; }
  .rr-raj-hero-copy > .rr-raj-eyebrow { display:none; }
  #rr-rajasthan-title { order:0; font-size:clamp(43px,12vw,57px); }
  .rr-raj-event-name { font-size:10px; letter-spacing:.18em; margin-bottom:10px; }
  .rr-raj-year { display:inline; margin:0 0 0 7px; font-size:.51em; }
  .rr-raj-hero-line { order:1; font-size:23px; margin:17px 0 0; }
  .rr-raj-hero-line br,.rr-raj-hero-line em { display:none; }
  .rr-raj-meta { order:2; display:grid; grid-template-columns:1fr; gap:8px; padding:20px 0; margin:0; }
  .rr-raj-meta > span { font-size:12px; line-height:1.5; }
  .rr-raj-meta > span:last-child { grid-column:auto; }
  .rr-raj-meta small { display:inline-block; min-width:44px; font-size:9px; color:#d2bca2; margin-right:8px; }
  a.rr-raj-primary { order:3; min-height:54px; font-size:15px; }
  .rr-raj-price-note { order:4; font-size:11px; line-height:1.8; margin-top:10px; color:#dfcdbc; }
  .rr-raj-price-note i { margin-inline:3px; }
  .rr-raj-description { order:5; margin-top:18px; font-size:14px; line-height:1.7; color:#d9c8bf; }
  .rr-raj-hero-art { aspect-ratio:1.55; max-height:280px; border-radius:44% 44% 4px 4px; }
  .rr-raj-hero-art figcaption { left:18px; bottom:17px; right:16px; }
  .rr-raj-hero-art figcaption > span { display:none; }
  .rr-raj-hero-art figcaption strong { font-size:23px; margin:0 0 7px; }
  .rr-raj-hero-art figcaption small { font-size:9px; }
  .rr-raj-art-seal { display:none; }
  .rr-raj-signature { font-size:8px; letter-spacing:.06em; padding:14px 0; }
  .rr-raj-film-section,.rr-raj-details,.rr-raj-venue { padding:38px 18px; }
  .rr-raj-eyebrow { font-size:10px; letter-spacing:.12em; }
  .rr-raj-film-grid h2,.rr-raj-details h2,.rr-raj-venue h2 { font-size:32px; line-height:1.15; }
  .rr-raj-film-grid > div > p:not(.rr-raj-eyebrow):not(.rr-raj-film-note),
  .rr-raj-details-inner > div > p:not(.rr-raj-eyebrow),
  .rr-raj-venue-copy > p:not(.rr-raj-eyebrow),
  .rr-raj-detail-cards p { font-size:14px; line-height:1.7; }
  .rr-raj-film-note { font-size:12px; line-height:1.6; }
  a.rr-raj-text-link { font-size:13px; }
  .rr-raj-detail-cards article { padding:20px; }
  .rr-raj-detail-cards article > span { font-size:10px; }
  .rr-raj-detail-cards h3 { margin:12px 0; }
  .rr-raj-detail-bar { grid-template-columns:1fr; gap:16px; padding:20px 0; }
  .rr-raj-detail-bar > span { font-size:13px; }
  .rr-raj-detail-bar small,.rr-raj-venue-copy dt { font-size:10px; }
  .rr-raj-detail-bar a { font-size:14px; min-height:48px; }
  .rr-raj-venue-copy dd { font-size:14px; }
  #workshop-for-you { padding:40px 18px; }
  #workshop-for-you article { padding:20px 18px; }
  #workshop-for-you li { padding-block:9px; gap:10px; font-size:15px; line-height:1.55; }
  #workshop-for-you h3 { padding-bottom:14px; font-size:22px; }
  #workshop-for-you .rr-audience-grid { gap:16px; }
  #participate.rr-passes { padding:40px 16px; }
  #participate .rr-ticket-instruction { color:#d6c7b7; font-size:14px; line-height:1.7; font-weight:400; letter-spacing:0; text-transform:none; }
  #rr-ticket-options { scroll-margin-top:16px; gap:14px; }
  #participate .rr-ticket-tabs-enabled .rr-mobile-pass-controls { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; width:100%; }
  .rr-mobile-pass-controls button { min-width:0; min-height:64px; padding:10px 4px; border:1px solid #a98c675c; border-radius:9px; background:#2f2026; color:#f7e8d2; font:600 14px/1.4 Poppins,sans-serif; touch-action:manipulation; }
  .rr-mobile-pass-controls button span { display:block; margin-top:3px; font-size:12px; font-weight:400; color:#cdb99d; }
  .rr-mobile-pass-controls button[aria-selected="true"] { background:#ead4aa; color:#301c18; border-color:#f5dfb2; }
  .rr-mobile-pass-controls button[aria-selected="true"] span { color:#553f29; }
  .rr-mobile-pass-controls button:focus-visible,.rr-phone-rail-controls button:focus-visible { outline:3px solid #c58e37; outline-offset:3px; }
  #participate .rr-pass-card[hidden] { display:none!important; }
  #participate .rr-pass-card { --rr-card-pad:18px; }
  #participate .rr-pass-banner { aspect-ratio:2.9; }
  #participate .rr-pass-banner h3 { font-size:36px; }
  #participate .rr-pass-banner span { font-size:9px; }
  #participate .rr-pass-pricing { padding:16px 0 12px; }
  #participate .rr-pass-price strong { font-size:28px; }
  #participate .rr-pass-unit { font-size:12px; }
  #participate .rr-pass-card > a { font-size:15px; min-height:54px; margin-block:14px; }
  #participate .rr-pass-card li { font-size:14px; line-height:1.65; }
  .rr-story-cta p { font-size:13px; line-height:1.65; }
  .rr-story-cta .rr-story-eyebrow { font-size:10px; }
  a.rr-story-button[href="#rr-ticket-options"] { font-size:14px; }
  .rr-phone-rail-controls { display:flex; align-items:center; justify-content:space-between; gap:10px; margin:22px 0 12px; }
  .rr-phone-rail-controls > span { font:500 12px/1.6 Poppins,sans-serif; color:#715748; }
  .rr-phone-rail-controls > div { display:flex; gap:8px; flex:none; }
  .rr-phone-rail-controls button { width:44px; height:44px; border:1px solid #b99d75; border-radius:50%; background:#faf3e8; color:#5f2b35; font-size:20px; }
  .rr-phone-rail-controls button:disabled { opacity:.35; }
  body .rr-phone-rail,#awards .rr-achievements-expanded.rr-phone-rail { display:grid; grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:min(86%,320px); align-items:stretch; gap:14px; width:100%; max-width:none; margin:0; padding:3px 0 15px; overflow-x:auto; scroll-snap-type:x mandatory; scroll-padding-inline:0; overscroll-behavior-x:contain; scrollbar-width:thin; scrollbar-color:#af8b54 transparent; }
  .rr-phone-rail > * { scroll-snap-align:start; min-width:0; }
  .rr-phone-rail > .lift { padding:18px; }
  .rr-phone-rail .rr-learning-photo { margin:-18px -18px 18px; width:calc(100% + 36px); max-width:none; aspect-ratio:16/10; height:auto; object-fit:cover; }
  .rr-phone-rail h3 { font-size:20px; line-height:1.3; }
  .rr-phone-rail p { font-size:14px; line-height:1.7; }
  #awards .rr-phone-rail figure { margin:0; border:1px solid #d9c4a3; border-radius:12px; overflow:hidden; background:#fffaf2; }
  #awards .rr-phone-rail img { width:100%; height:285px; object-fit:contain; background:#e7dcca; }
  #awards .rr-phone-rail figcaption { font-size:13px; line-height:1.5; padding:12px; }
  .rr-legal-footer p { font-size:13px; line-height:1.7; }
  #rr-sticky .rr-sticky-cta { font-size:14px; min-height:50px; }
  #rr-sticky > p { font-size:11px; }
  .rr-raj-city-art > small { font-size:10px; }
}
@media (max-width:359px) {
  .rr-raj-nav { gap:8px; }
  .rr-raj-nav .rr-raj-nav-ticket { padding-inline:8px; font-size:10px; }
  .rr-raj-price-note { font-size:10px; }
  .rr-raj-hero-line { font-size:21px; }
  #rr-sticky .rr-sticky-cta { font-size:13px; }
}
