/* Local Tehran adaptation of the captured NYRR class and event page components.
   NYRR's original block classes and base CSS remain in the HTML. */
:root{--tc-green:#103e37;--tc-green-2:#174d44;--tc-mint:#25b195;--tc-purple:#6c79e0;--tc-yellow:#ffcd05;--tc-paper:#f4f5f2;--tc-ink:#103e37}
html{scroll-behavior:smooth}
body{background:#fff!important;color:var(--tc-ink)}
main.tc-nyrr-detail{margin-top:0!important;direction:rtl;overflow:clip}
.tc-nyrr-detail *{box-sizing:border-box}
.tc-nyrr-detail h1,.tc-nyrr-detail h2,.tc-nyrr-detail h3,.tc-nyrr-detail h4,.tc-nyrr-detail p,.tc-nyrr-detail li,.tc-nyrr-detail a,.tc-nyrr-detail span{font-family:IRANSansWeb,IRANSans,Arial,sans-serif}
.tc-nyrr-detail h1,.tc-nyrr-detail h2,.tc-nyrr-detail h3,.tc-nyrr-detail h4{letter-spacing:normal}
.tc-nyrr-detail p,.tc-nyrr-detail li{line-height:1.95}
.tc-nyrr-detail section[id]{scroll-margin-top:100px}

/* Group Training: retain NYRR's deluxe title and alternating content rhythm. */
.tc-class-page [data-block-type="deluxe-header-block"]{background:linear-gradient(180deg,#0d2825 0%,#174d44 56%,#103e37 100%)}
.tc-class-page [data-block-type="deluxe-header-block"] ._92c1sv2{background:transparent!important}
.tc-class-page [data-block-type="deluxe-header-block"] h2{color:#fff!important}
.tc-class-page [data-block-type="promo-block"]{background:var(--tc-paper)}
.tc-class-page [data-block-type="promo-block"] picture{background:#e8e9e2;border-radius:18px;overflow:hidden}
.tc-class-page [data-block-type="promo-block"] picture img{object-fit:contain!important;object-position:center!important;background:#242d55}
.tc-class-page [data-block-type="promo-block"] h3{color:var(--tc-green);font-size:clamp(30px,3.6vw,54px);line-height:1.35}
.tc-class-page [data-block-type="rich-text-block"]{padding-block:clamp(32px,5vw,76px)}
.tc-class-page [data-block-type="rich-text-block"] h2{color:var(--tc-green);margin-block:22px;font-size:clamp(28px,3vw,43px)}
.tc-class-page [data-block-type="rich-text-block"] h3{color:var(--tc-green);margin-block:24px 8px}
.tc-class-page #class-facts{background:#fff}
.tc-class-page #class-facts ul{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding:0;list-style:none;margin-block:30px}
.tc-class-page #class-facts li{background:var(--tc-green);color:#fff;border-radius:16px;min-height:106px;display:grid;place-items:center;text-align:center;padding:16px;font-size:20px;font-weight:800}
.tc-class-page #class-facts li:nth-child(2){background:var(--tc-purple)}
.tc-class-page #class-facts li:nth-child(3){background:var(--tc-yellow);color:var(--tc-green)}
.tc-class-page #class-facts li:nth-child(4){background:#5e6968}
.tc-class-page #class-how{background:var(--tc-paper)}
.tc-class-page #class-schedule{background:#fff}
.tc-class-page #class-schedule .x2jflr1>ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;list-style:none;padding:0;margin:25px 0}
.tc-class-page #class-schedule .x2jflr1>ul li{padding:22px;background:#eff3f0;border-right:4px solid var(--tc-mint);border-radius:12px;font-weight:800}
.tc-class-page [data-block-type="accordion-block"]{padding-block:clamp(64px,8vw,114px)}
.tc-class-page #class-workouts{background:var(--tc-green);color:#fff}
.tc-class-page #class-workouts h2,.tc-class-page #class-workouts h3{color:#fff!important}
.tc-class-page #class-workouts .imoico5 p{color:#eef6f3}
.tc-class-page #class-coach{background:var(--tc-paper)}
.tc-class-page #class-faq{background:#fff}
.tc-nyrr-detail [data-block-type="accordion-block"] h2,
.tc-nyrr-detail [data-block-type="accordion-block"] h2 span{color:var(--tc-green)!important;opacity:1!important}
.tc-class-page #class-workouts h2,
.tc-class-page #class-workouts h2 span{color:#fff!important}
.tc-classes-page #classes-intro picture img{object-fit:cover!important;background:var(--tc-green)}
.tc-classes-page #classes-overview{background:#fff}
.tc-classes-page #classes-overview .x2jflr1{max-width:850px;margin-inline:auto}
.tc-classes-page #classes-formats{background:var(--tc-green);color:#fff}
.tc-classes-page #classes-formats h2,.tc-classes-page #classes-formats h2 span,.tc-classes-page #classes-formats h3{color:#fff!important}
.tc-classes-page #classes-formats .imoico5 p{color:#edf5f2}
.tc-classes-page #classes-faq{background:var(--tc-paper)}
.tc-classes-page ._15no4wh8,.tc-classes-page ._15no4whb{min-width:0}

/* Event: original NYRR event hero/card/accordion markup, in Tehran colors. */
.tc-event-page ._48knws0{background:var(--tc-green)}
.tc-event-page ._48knws1>picture img{object-fit:cover!important;object-position:center 78%!important}
.tc-event-page ._48knws3{background:linear-gradient(90deg,#041d1a8c,#041d1a45 50%,#041d1a8c)!important}
.tc-event-page ._48knws4{direction:rtl}
.tc-event-page ._48knws5{background:#071e1cd1;border:1px solid #ffffff30;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px)}
.tc-event-page ._48knws6{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.tc-event-page ._48knws7,.tc-event-page ._48knwsf{direction:rtl}
.tc-event-page ._48knwsb,.tc-event-page ._48knwsh{text-align:right}
.tc-event-page ._48knwsl:empty{display:none}
.tc-event-page ._48knwsa{display:flex;align-items:center;justify-content:center}
.tc-event-page ._48knwsa .tc-event-logo{display:block;width:auto;max-width:170px;height:108px;max-height:108px;object-fit:contain}
.tc-ended-pill{display:inline-flex;align-items:center;background:#eaf0ed;color:var(--tc-green);padding:6px 16px;border-radius:99px;font-weight:800;font-size:13px}
.tc-event-mark{color:#fff;display:block;font-family:Arial,sans-serif!important;font-size:clamp(20px,2vw,30px);font-weight:900;direction:ltr;white-space:nowrap}
.tc-event-mark em{font-style:normal;color:var(--tc-yellow)}
.tc-race-pill{display:inline-flex;align-items:center;background:var(--tc-yellow);color:var(--tc-green);font-size:14px;font-weight:900;border-radius:999px;padding:7px 18px}
.tc-event-page ._48knwsd{font-size:clamp(53px,5vw,80px)}
.tc-event-page ._48knwsl{text-transform:none}
.tc-event-page ._48knwsp{font-size:clamp(40px,5vw,72px);line-height:1.22;text-align:right;max-width:680px}
.tc-event-page ._48knwsq{background:var(--tc-green)!important}
.tc-event-page ._48knwsq a{background:#f5f1e8;color:var(--tc-green);font-weight:800}
.tc-event-page ._48knwsq a:hover{background:var(--tc-yellow)}
.tc-event-page #event-details{padding-top:clamp(72px,8vw,120px)}
.tc-event-page #event-details .tc-event-description-title,.tc-event-page #event-details .tc-event-description-title span{color:var(--trc-green)!important;text-align:right}
.tc-event-page #event-details .tc-event-description-title{margin:0 0 var(--responsive-space-3xl)}
.tc-event-page #event-details .x2jflr1 figure{margin:1.5em 0}
.tc-event-page #event-details .x2jflr1 img{max-width:100%;height:auto}
.tc-legacy-event #event-details .tc-event-description-body .vc_row,
.tc-legacy-event #event-details .tc-event-description-body .wpb_column,
.tc-legacy-event #event-details .tc-event-description-body .vc_column-inner{display:block;width:100%;max-width:none;margin-inline:0;padding-inline:0}
.tc-legacy-event #event-details .tc-event-description-body .vc_row:not(:has(p,img,a,iframe,video,table,ul,ol,h2,h3,h4)){display:none}
.tc-legacy-event #event-details .tc-event-description-body .wpb_text_column{margin-block:0 24px}
.tc-legacy-event #event-details .tc-event-description-body :is(h2,h3){color:var(--trc-green);margin-block:30px 14px}
.tc-event-page #event-details .x2jflr1 table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse}
.tc-event-page #event-details .x2jflr1 td,.tc-event-page #event-details .x2jflr1 th{border:1px solid #d9e2dc;padding:10px}
.tc-event-page{background:#f7f4f0}
.tc-event-page #event-details ._11zij9n0{border:1px solid #dde6df;box-shadow:0 14px 36px #103e3712}
.tc-event-page #event-details [data-event-status=completed]{background:#edf0ef;color:#61706b}
.tc-event-page #event-details ._11zij9n2{background:var(--tc-green);color:#fff}
.tc-event-page [data-block-type="accordion-block"]{padding-block:clamp(70px,8vw,116px)}
.tc-event-page [data-block-type="accordion-block"]:not(:has(details)){display:none}
.tc-event-page :is(#event-before,#event-day,#event-more):not(:has(details)){display:none}
.tc-event-page #event-before,.tc-event-page #event-day,.tc-event-page #event-more{background:transparent}
.tc-event-page .imoico5 h4{font-size:19px;color:var(--tc-green);margin:22px 0 10px}
.tc-event-page .imoico5 h4:first-child{margin-top:0}
.tc-event-page .imoico5 table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse;margin:16px 0}
.tc-event-page .imoico5 td,.tc-event-page .imoico5 th{border:1px solid #d9e2dc;padding:9px}
.tc-event-page .imoico5 ul{padding-inline-start:25px;line-height:1.9}
.tc-event-page .imoico5 figure{margin:18px 0;max-width:760px}
.tc-event-page .imoico5 figure img{display:block;max-width:100%;height:auto}
.tc-event-page #event-related{padding-block:clamp(68px,8vw,110px);background:transparent}
.tc-event-page #event-related h2{color:var(--trc-green)!important;text-align:right}
.tc-event-page #event-related .n6mqmfj img{object-fit:cover!important}
/* Related-card titles retain the NYRR card color; only the section title is mint. */
.tc-event-page #event-related .tc-related-tag{font-size:13px;font-weight:800;color:var(--tc-purple);margin:10px 0 0}
.tc-event-page #event-gallery{background:#fff!important;color:var(--tc-green);padding-block:clamp(70px,8vw,112px)}
.tc-event-page #event-gallery h2,.tc-event-page #event-gallery h2 span{color:var(--trc-green)!important}
.tc-event-page #event-gallery .tc-gallery-note{max-width:720px;color:#435d57!important;font-size:15px;line-height:1.9;margin:12px 0 24px}
.tc-event-page #event-gallery .rtv30b2{background:#183e38}
.tc-event-page #event-gallery .rtv30bl{object-fit:cover!important}
.tc-event-page #event-gallery .rtv30b8{color:#fff}
.tc-event-page #event-gallery .tc-gallery-viewer{position:fixed;inset:0;margin:auto;width:min(96vw,1100px);max-height:94vh;padding:18px 18px 12px;border:0;background:#071e1c;color:#fff;box-shadow:0 22px 80px #0008;z-index:1000}
.tc-event-page #event-gallery .tc-gallery-viewer::backdrop{background:#000c}
.tc-event-page #event-gallery .tc-gallery-viewer figure{margin:0;display:grid;justify-items:center;gap:8px}
.tc-event-page #event-gallery .tc-gallery-viewer img{display:block;max-width:100%;max-height:75vh;object-fit:contain}
.tc-event-page #event-gallery .tc-gallery-viewer video{display:block;max-width:100%;max-height:75vh}
.tc-event-page #event-gallery .tc-gallery-viewer :is(img,video)[hidden]{display:none!important}
.tc-event-page #event-gallery .tc-gallery-video-card{position:relative}
.tc-event-page #event-gallery .tc-gallery-play{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:68px;height:68px;border-radius:50%;background:#fff;color:var(--tc-green);font-size:25px;pointer-events:none}
.tc-event-page #event-gallery .tc-gallery-viewer figcaption{text-align:center;font-size:14px;line-height:1.6}
.tc-event-page #event-gallery .tc-gallery-close{position:absolute;top:8px;left:12px;border:0;background:#fff;color:var(--tc-green);width:38px;height:38px;border-radius:50%;font-size:27px;cursor:pointer}
.tc-event-page #event-gallery .tc-gallery-viewer-controls{display:flex;align-items:center;justify-content:center;gap:28px;margin-top:12px}
.tc-event-page #event-gallery .tc-gallery-viewer-controls button{border:1px solid #fff8;background:transparent;color:#fff;border-radius:50%;width:38px;height:38px;font-size:22px;cursor:pointer}
.tc-event-page #event-gallery .tc-gallery-count{font-variant-numeric:tabular-nums;direction:ltr}

.tc-final{background:var(--tc-purple);color:#fff;padding:clamp(72px,8vw,110px) 24px;text-align:center}
.tc-final>div{max-width:780px;margin:auto}
.tc-final span{display:block;color:var(--tc-yellow);font-size:14px;font-weight:800;margin-bottom:22px}
.tc-final h2{font-size:clamp(34px,4vw,56px);color:#fff;line-height:1.35;margin:0}
.tc-final a{display:inline-flex;justify-content:center;margin-top:30px;padding:15px 30px;min-width:190px;background:var(--tc-yellow);color:var(--tc-green);border-radius:99px;text-decoration:none;font-weight:800}
@media(max-width:900px){.tc-class-page #class-facts ul{grid-template-columns:repeat(2,minmax(0,1fr))}.tc-event-page ._48knwsp{font-size:clamp(37px,7vw,58px)}}
@media(max-width:600px){.tc-class-page #class-facts ul{gap:8px}.tc-class-page #class-facts li{min-height:85px;font-size:15px;padding:8px}.tc-class-page #class-schedule .x2jflr1>ul{grid-template-columns:1fr}.tc-event-page ._48knws5{backdrop-filter:none}.tc-event-page ._48knwsp{font-size:clamp(35px,9vw,52px)}.tc-event-page ._48knws4{gap:24px}.tc-event-page ._48knws6{min-height:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Service scope notice: NYRR page grid, typography and error-surface token. */
.tc-event-service-notice{padding-block:var(--space-24);background:var(--surface-state-error-light,#fff0ed);border-inline-start:4px solid var(--feedback-error-600,#b42318);color:var(--text-brand-higher-contrast);margin-block-start:var(--space-24)}
.tc-event-service-notice p{margin:0;line-height:1.9}
.tc-event-service-notice a{text-decoration:underline;text-underline-offset:3px}
