/*
Theme Name:        URTC Child
Theme URI:         https://unitedroadtennisandcoaching.org/
Description:       Bespoke GeneratePress child theme for United Road Tennis &amp; Coaching Inc. Built by Flexiweb. Includes custom Programs / Gallery / Testimonials post types, ACF-powered Site Settings, automatic LocalBusiness schema, /lovable-uploads/* redirect handling, /llms.txt generation, security headers, and a built-in editing guide under wp-admin → URTC Help.
Author:            Flexiweb (Flexible Web Strategies Ltd)
Author URI:        https://flexiweb.co.uk/
Template:          generatepress
Version:           1.0.0
Requires at least: 6.0
Requires PHP:      8.0
License:           GPL v2 or later
License URI:       https://www.gnu.org/licenses/gpl-2.0.html
Text Domain:       urtc-child
Tags:              custom-colors, custom-logo, custom-menu, featured-images, full-width-template, theme-options, threaded-comments, translation-ready
*/

:root{
  --c-primary:#0F172A;
  --c-primary-dark:#0B1120;
  --c-accent:#2B6CB0;
  --c-gold:#D4A017;
  --c-green:#3F7D3A;
  --c-bg-soft:#F8FAFC;
  --c-ink:#0F172A;
  --c-muted:#475569;
  --c-bg:#ffffff;
  --c-soft:#EFF4F8;
  --c-border:#D9E2EC;
  --c-dark:#081120;
  --r-card:22px;
  --r-btn:999px;
  --shadow-card:0 18px 40px -24px rgb(15 23 42 / .25);
  --shadow-card-h:0 28px 56px -28px rgb(15 23 42 / .35);
  --container:1200px;
}

*,*::before,*::after{box-sizing:border-box}
body,button,input,select,textarea{font-family:'Manrope',system-ui,sans-serif;color:var(--c-ink)}
body{background:#fff;line-height:1.6}

h1,h2,h3,h4,h5,h6{font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-weight:700;line-height:1.02;color:var(--c-ink);letter-spacing:.01em;text-transform:uppercase}
h1{font-size:clamp(2rem,4.5vw,3rem)}
h2{font-size:clamp(1.75rem,3.5vw,2.25rem);text-align:center}
h3{font-size:1.25rem}

a{color:var(--c-accent);text-decoration:none}
a:hover{color:var(--c-primary)}

img{max-width:100%;height:auto;display:block}

.urtc-container{max-width:var(--container);margin:0 auto;padding:0 1.25rem}
.urtc-section{padding:5rem 0}
.urtc-section--soft{background:var(--c-soft)}
.urtc-section--lavender{background:#F1F0FB}
.urtc-section--gradient{background:linear-gradient(180deg,#fff 0%,#f6f9fc 100%);position:relative;overflow:hidden}
.urtc-section--gradient::before,.urtc-section--gradient::after{content:'';position:absolute;width:18rem;height:18rem;border-radius:50%;filter:blur(60px);pointer-events:none;z-index:0}
.urtc-section--gradient::before{top:-5rem;right:-5rem;background:rgba(43,108,176,.12)}
.urtc-section--gradient::after{bottom:-5rem;left:-5rem;background:rgba(212,160,23,.10)}
.urtc-section--gradient > *{position:relative;z-index:1}
.urtc-section__head{text-align:center;max-width:720px;margin:0 auto 3rem}
.urtc-section__head p{color:var(--c-muted);margin-top:.75rem}
.urtc-section__head--left{text-align:left;max-width:56rem;margin:0 0 2rem}
.urtc-kicker{display:inline-flex;align-items:center;gap:.5rem;font-size:.8rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--c-accent);margin:0 0 1rem}
.urtc-kicker::before{content:'';width:2.25rem;height:2px;border-radius:999px;background:linear-gradient(90deg,var(--c-gold),var(--c-accent))}

/* === Header === */
.urtc-header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--c-border);height:70px;padding:0 1rem;transition:height .3s ease,box-shadow .3s ease}
@media(min-width:768px){.urtc-header{height:80px;padding:0 2rem}}
/* Scrolled state — slightly shorter + soft shadow (matches live's transition-all duration-300) */
.urtc-header.is-scrolled{height:62px;box-shadow:0 4px 12px -4px rgba(0,0,0,.08)}
@media(min-width:768px){.urtc-header.is-scrolled{height:68px}}
.urtc-header.is-scrolled .urtc-logo img{height:40px}
@media(min-width:768px){.urtc-header.is-scrolled .urtc-logo img{height:48px}}
@media(min-width:1024px){.urtc-header.is-scrolled .urtc-logo img{height:56px}}
@media (prefers-reduced-motion: reduce){
  .urtc-header,.urtc-header .urtc-logo img{transition:none}
}
.urtc-header__inner{display:flex;align-items:center;justify-content:space-between;height:100%;padding:0;max-width:1280px;margin:0 auto;gap:1.5rem}
.urtc-logo{display:inline-flex;align-items:center;flex-shrink:0;height:100%}
.urtc-logo img{height:48px;width:auto;display:block;transition:height .3s ease}
@media(min-width:768px){.urtc-logo img{height:56px}}
@media(min-width:1024px){.urtc-logo img{height:64px}}
.urtc-nav{margin-left:auto}
.urtc-nav ul{display:flex;list-style:none;margin:0;padding:0;align-items:center;gap:1rem}
@media(min-width:1024px){.urtc-nav ul{gap:1.5rem}}
.urtc-phone--desktop{flex-shrink:0}
.urtc-nav a{position:relative;color:var(--c-ink);font-weight:500;font-size:.95rem;padding:.5rem .25rem;display:inline-block;transition:color .3s cubic-bezier(.4,0,.2,1)}
.urtc-nav a::after{content:'';position:absolute;left:.25rem;right:.25rem;bottom:.25rem;height:2px;background:var(--c-primary);transform:scaleX(0);transform-origin:left center;transition:transform .3s cubic-bezier(.4,0,.2,1)}
.urtc-nav a:hover{color:var(--c-primary)}
.urtc-nav a:hover::after{transform:scaleX(1)}
.urtc-nav .current-menu-item a{color:var(--c-primary)}
.urtc-nav .current-menu-item a::after{transform:scaleX(1)}
.urtc-phone{display:inline-flex;align-items:center;gap:.4rem;color:var(--c-primary);font-weight:600;font-size:.95rem}
.urtc-phone--mobile{display:none;align-items:center;justify-content:center;padding:.5rem;color:#16a34a;background:transparent;transition:color .2s ease}
.urtc-phone--mobile:hover,.urtc-phone--mobile:focus-visible{color:#15803d}
.urtc-phone--mobile svg{display:block;stroke:currentColor;fill:none}
.urtc-burger{display:none;align-items:center;justify-content:center;background:#f3f4f6;border:0;border-radius:.375rem;width:36px;height:36px;cursor:pointer;color:#111827;padding:0;transition:background-color .2s ease}
.urtc-burger:hover{background:#e5e7eb}
.urtc-burger span{display:block;width:20px;height:2px;background:currentColor;position:relative}
.urtc-burger span::before,.urtc-burger span::after{content:'';position:absolute;left:0;width:20px;height:2px;background:currentColor;transition:transform .2s ease,top .2s ease}
.urtc-burger span::before{top:-6px}.urtc-burger span::after{top:6px}
.urtc-burger[aria-expanded="true"] span{background:transparent}
.urtc-burger[aria-expanded="true"] span::before{top:0;transform:rotate(45deg)}
.urtc-burger[aria-expanded="true"] span::after{top:0;transform:rotate(-45deg)}

/* === Hero === */
.urtc-hero{position:relative;min-height:560px;height:88vh;display:flex;align-items:center;justify-content:center;color:#fff;overflow:hidden;background:#000}
.urtc-hero__slides{position:absolute;inset:0;z-index:0}
.urtc-hero__slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1.5s ease}
.urtc-hero__slide.is-active{opacity:1}
/* No overlay — keep photos clear and sharp. Frosted glass card provides text contrast. */
.urtc-hero__inner{position:relative;z-index:1;max-width:920px;margin:0 auto;padding:1.5rem 1.25rem;text-align:center;width:100%;display:flex;justify-content:center}
.urtc-hero__card{
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
  background:rgba(0,0,0,.3);
  border:1px solid rgba(255,255,255,.1);
  border-radius:1rem;
  padding:1.75rem;
  box-shadow:0 25px 50px -12px rgba(0,0,0,.4);
  max-width:760px;
  width:100%;
}
@media(min-width:768px){.urtc-hero__card{padding:2.25rem}}
.urtc-hero__title{color:#fff;font-size:clamp(2rem,4.5vw,3rem);margin:0 0 1.25rem;font-weight:700;line-height:1.15;opacity:0;animation:urtcFade .8s ease forwards;animation-delay:.2s}
.urtc-hero__title span{filter:drop-shadow(0 2px 8px rgba(0,0,0,.4))}
.urtc-hero__sub{color:rgba(255,255,255,.92);max-width:560px;margin:0 auto 2rem;font-size:clamp(1rem,1.4vw,1.2rem);line-height:1.6;opacity:0;animation:urtcFade .8s ease forwards;animation-delay:.4s}
.urtc-hero__cta{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;opacity:0;animation:urtcFade .8s ease forwards;animation-delay:.6s}
.urtc-hero__cta .urtc-btn{padding:.75rem 1.75rem;font-size:.95rem;box-shadow:0 10px 15px -3px rgba(0,0,0,.2);transition:transform .2s ease,box-shadow .2s ease,background-color .15s ease}

/* Frosted glass button (matches live "Contact Us") */
.urtc-btn--frost{
  background:rgba(255,255,255,.1);
  -webkit-backdrop-filter:blur(4px);
  backdrop-filter:blur(4px);
  color:#fff;
  border:1px solid rgba(255,255,255,.3);
}
.urtc-btn--frost:hover{background:rgba(255,255,255,.2);color:#fff;transform:translateY(-2px);box-shadow:0 20px 25px -5px rgba(0,0,0,.25)}

.urtc-btn--lift:hover{transform:translateY(-2px);box-shadow:0 20px 25px -5px rgba(0,0,0,.25)}

@keyframes urtcFade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.urtc-hero__title,.urtc-hero__sub,.urtc-hero__cta{opacity:1;animation:none}}

/* Hero dots — bottom-center, white pills, active = wider (matches live) */
.urtc-hero__dots{position:absolute;bottom:2rem;left:0;right:0;z-index:2;display:flex;justify-content:center;gap:.5rem;pointer-events:none}
.urtc-hero__dot{pointer-events:auto;appearance:none;border:0;padding:0;width:8px;height:8px;border-radius:999px;background:rgba(255,255,255,.5);cursor:pointer;transition:width .3s ease,background-color .3s ease}
.urtc-hero__dot:hover{background:rgba(255,255,255,.7)}
.urtc-hero__dot.is-active{background:#fff;width:16px}
.urtc-hero__dot:focus-visible{outline:2px solid #fff;outline-offset:2px}

.urtc-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.75rem 1.5rem;border-radius:var(--r-btn);font-weight:600;font-size:.95rem;border:0;cursor:pointer;transition:all .15s ease;text-align:center}
.urtc-btn--primary{background:var(--c-primary);color:#fff}
.urtc-btn--primary:hover{background:var(--c-primary-dark);color:#fff;transform:translateY(-1px)}
.urtc-btn--ghost{background:transparent;color:#fff;border:1.5px solid #fff}
.urtc-btn--ghost:hover{background:#fff;color:var(--c-ink)}
.urtc-btn--secondary{background:var(--c-soft);color:var(--c-ink)}
.urtc-btn--secondary:hover{background:#e5e7eb;color:var(--c-ink)}
.urtc-hero__cta{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}

/* === Program cards === */
.urtc-grid{display:grid;gap:1.75rem;grid-template-columns:1fr;max-width:1100px;margin:0 auto}
@media(min-width:760px){.urtc-grid{grid-template-columns:repeat(2,1fr)}}
.urtc-card{background:#fff;border:1px solid var(--c-border);border-radius:var(--r-card);overflow:hidden;box-shadow:var(--shadow-card);transition:transform .2s ease,box-shadow .2s ease;display:flex;flex-direction:column;height:100%}
.urtc-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-card-h)}
.urtc-card__img{position:relative;height:200px;overflow:hidden;background:#eee}
.urtc-card__img img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;display:block}
.urtc-card:hover .urtc-card__img img{transform:scale(1.05)}
.urtc-card__overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.7) 0%,rgba(0,0,0,.15) 55%,rgba(0,0,0,0) 100%);pointer-events:none}
.urtc-card__title-bar{position:absolute;bottom:0;left:0;right:0;padding:1rem 1.25rem;display:flex;align-items:center;gap:.85rem}
.urtc-card__icon{flex:0 0 40px;width:40px;height:40px;border-radius:50%;background:var(--c-primary);color:#fff;display:inline-flex;align-items:center;justify-content:center}
.urtc-card__icon svg{width:20px;height:20px}
.urtc-card__title-bar h3{margin:0;color:#fff;font-size:1.2rem;line-height:1.2;text-shadow:0 1px 6px rgba(0,0,0,.4)}
.urtc-card__body{padding:1.5rem 1.25rem 1.25rem;display:flex;flex-direction:column;flex:1}
.urtc-card__body p{color:#374151;margin:0 0 1.25rem;font-size:.95rem;flex:1;line-height:1.6}
.urtc-card__actions{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:auto}
.urtc-card__link{color:var(--c-primary);font-weight:600;font-size:.95rem;text-decoration:none;padding:.25rem 0;border-bottom:1px solid transparent;transition:color .18s ease,border-color .18s ease}
.urtc-card__link:hover,.urtc-card__link:focus-visible{color:#243A24;border-bottom-color:currentColor}
.urtc-card__inquire{display:inline-flex;align-items:center;justify-content:center;background:#fff;color:#111827;font-weight:600;font-size:.9rem;padding:.55rem 1.25rem;border:1.5px solid #d1d5db;border-radius:.5rem;text-decoration:none;transition:background .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.urtc-card__inquire:hover,.urtc-card__inquire:focus-visible{background:var(--c-primary);color:#fff;border-color:var(--c-primary);transform:translateY(-1px);box-shadow:0 6px 14px -4px rgba(48,77,48,.35)}
.urtc-card__inquire:focus-visible{outline:3px solid var(--c-primary);outline-offset:2px}

.urtc-section__cta{text-align:center;margin-top:2.5rem}

/* === Carousel === */
.urtc-carousel{position:relative;overflow:hidden;max-width:1100px;margin:0 auto}
.urtc-carousel--testimonials{max-width:1280px}
.urtc-carousel--testimonials .urtc-testimonial{min-height:330px}
.urtc-carousel__controls{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:2rem}
.urtc-carousel__arrow-btn{
  width:48px;height:48px;
  border-radius:50%;
  background:#fff;
  border:1.5px solid #cbd5e1;
  box-shadow:0 4px 10px -2px rgba(0,0,0,.08),0 2px 4px -1px rgba(0,0,0,.04);
  cursor:pointer;
  display:inline-flex;align-items:center;justify-content:center;
  color:#1f2937;
  padding:0;
  transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease;
}
.urtc-carousel__arrow-btn svg{width:22px;height:22px;display:block;stroke:currentColor;fill:none}
.urtc-carousel__arrow-btn:hover{background:var(--c-primary);color:#fff;border-color:var(--c-primary);transform:translateY(-1px);box-shadow:0 8px 18px -4px rgba(48,77,48,.4)}
.urtc-carousel__arrow-btn:focus-visible{outline:3px solid var(--c-primary);outline-offset:2px}
.urtc-carousel__arrow-btn:active{transform:translateY(0)}
.urtc-carousel__indicators{display:flex;align-items:center;gap:.5rem}
.urtc-carousel__indicator{width:8px;height:8px;border-radius:50%;background:#cbd5e1;border:0;cursor:pointer;padding:0;transition:background .2s ease,width .2s ease}
.urtc-carousel__indicator.is-active{background:var(--c-primary);width:24px;border-radius:4px}
.urtc-carousel__track{display:flex;transition:transform .4s ease;will-change:transform}
.urtc-carousel__slide{flex:0 0 100%;padding:.5rem 1rem;box-sizing:border-box}
.urtc-carousel__nav{display:flex;justify-content:center;gap:.6rem;margin-top:1.75rem}
.urtc-home-gallery-carousel .urtc-carousel__slide{padding:0 .5rem}
@media(min-width:1024px){.urtc-home-gallery-carousel .urtc-carousel__slide{padding:0 .75rem}}
.urtc-home-gallery__nav{margin-top:1.5rem}
.urtc-carousel__dot{width:10px;height:10px;border-radius:50%;background:#cbd5e1;border:0;cursor:pointer;padding:0;transition:background .2s ease,width .2s ease}
.urtc-carousel__dot.is-active{background:var(--c-primary);width:28px;border-radius:6px}
.urtc-carousel__arrow{position:absolute;top:45%;transform:translateY(-50%);z-index:3;width:44px;height:44px;border-radius:50%;background:#fff;border:1px solid var(--c-border);box-shadow:var(--shadow-card);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;color:var(--c-ink)}
.urtc-carousel__arrow:hover{background:var(--c-primary);color:#fff;border-color:var(--c-primary)}
.urtc-carousel__arrow--prev{left:-10px}
.urtc-carousel__arrow--next{right:-10px}
@media(max-width:760px){.urtc-carousel__arrow{display:none}}

/* === Gallery === */
.urtc-gallery{display:grid;grid-template-columns:1fr;gap:1.5rem}
@media(min-width:640px){.urtc-gallery{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.urtc-gallery{grid-template-columns:repeat(3,1fr)}}
@media(min-width:1280px){.urtc-gallery{grid-template-columns:repeat(4,1fr)}}
.urtc-gallery__item{position:relative;aspect-ratio:1/1;overflow:hidden;border-radius:var(--r-card);background:#000;cursor:pointer}
.urtc-gallery__item img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease,opacity .25s ease}
.urtc-gallery__item:hover img{transform:scale(1.06);opacity:.85}
.urtc-gallery__caption{position:absolute;inset:auto 0 0 0;padding:.75rem;color:#fff;font-size:.85rem;background:linear-gradient(0deg,rgba(0,0,0,.75),transparent);opacity:0;transition:opacity .2s ease}
.urtc-gallery__item:hover .urtc-gallery__caption{opacity:1}
.urtc-gallery__item.is-hidden{display:none}
.urtc-gallery-filters{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin:0 0 2rem}
.urtc-gallery-filter{appearance:none;background:#fff;border:1.5px solid #e5e7eb;color:#374151;font:inherit;font-weight:600;font-size:.875rem;padding:.55rem 1.1rem;border-radius:999px;cursor:pointer;transition:background .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.urtc-gallery-filter:hover{background:rgba(48,77,48,.08);border-color:var(--c-primary);color:var(--c-primary)}
.urtc-gallery-filter.is-active{background:var(--c-primary);border-color:var(--c-primary);color:#fff;box-shadow:0 4px 10px -2px rgba(48,77,48,.35)}
.urtc-gallery-filter.is-active:hover{background:var(--c-primary-dark);border-color:var(--c-primary-dark);color:#fff}
.urtc-gallery-filter:focus-visible{outline:3px solid var(--c-primary);outline-offset:2px}

/* === Gallery pagination (matches live's shadcn Pagination — small numbered pills + prev/next) === */
.urtc-pagination{display:flex;justify-content:center;margin:2.5rem 0 0}
.urtc-pagination__list{display:flex;flex-direction:row;align-items:center;gap:.25rem;list-style:none;margin:0;padding:0;flex-wrap:wrap}
.urtc-pagination__btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:.25rem;min-width:40px;height:40px;padding:0 .75rem;background:#fff;border:1px solid #e5e7eb;border-radius:.375rem;color:#374151;font:inherit;font-weight:500;font-size:.875rem;cursor:pointer;text-decoration:none;transition:background-color .15s ease,color .15s ease,border-color .15s ease}
.urtc-pagination__btn:hover{background:rgba(48,77,48,.08);border-color:var(--c-primary);color:var(--c-primary)}
.urtc-pagination__btn.is-active{background:var(--c-primary);border-color:var(--c-primary);color:#fff}
.urtc-pagination__btn.is-active:hover{background:var(--c-primary-dark);border-color:var(--c-primary-dark);color:#fff}
.urtc-pagination__btn:disabled,.urtc-pagination__btn[aria-disabled="true"]{opacity:.4;cursor:not-allowed;pointer-events:none}
.urtc-pagination__btn:focus-visible{outline:3px solid var(--c-primary);outline-offset:2px}
.urtc-pagination__ellipsis{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;color:#9ca3af;font-weight:500}
.urtc-pagination__btn svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

/* === Testimonials === */
.urtc-testimonials{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.urtc-testimonial{background:#fff;border:0;border-radius:.75rem;padding:2rem;box-shadow:0 10px 25px -5px rgba(0,0,0,.08),0 4px 10px -3px rgba(0,0,0,.05);height:100%;display:flex;flex-direction:column}
.urtc-testimonial__stars{display:flex;gap:.25rem;margin-bottom:1.5rem}
.urtc-testimonial__star{width:20px;height:20px;color:#facc15;fill:#facc15}
.urtc-testimonial__quote{margin:0 0 1.5rem;color:#1f2937;line-height:1.7;font-size:1rem;flex:1;font-style:normal;border:0;padding:0}
.urtc-testimonial__divider{border:0;border-top:1px solid #e5e7eb;margin:0 0 1.25rem}
.urtc-testimonial__author{font-weight:700;color:var(--c-ink);font-size:1rem;margin-bottom:.25rem}
.urtc-testimonial__role{color:var(--c-muted);font-size:.875rem}

/* === Breadcrumbs === */
/* Breadcrumbs: sticky just below the header (matches live) */
.urtc-crumbs{position:sticky;top:70px;z-index:40;background:#fff;border-bottom:1px solid #e5e7eb;padding:.5rem 0;font-size:.85rem;color:var(--c-muted);box-shadow:0 1px 2px rgba(0,0,0,.04);transition:top .3s ease}
@media(min-width:768px){.urtc-crumbs{top:80px}}
body.urtc-scrolled .urtc-crumbs{top:62px}
@media(min-width:768px){body.urtc-scrolled .urtc-crumbs{top:68px}}
.urtc-crumbs a{color:var(--c-muted);text-decoration:none}
.urtc-crumbs a:hover,.urtc-crumbs a:focus-visible{color:var(--c-primary)}
.urtc-crumbs .sep{margin:0 .4rem;color:#cbd5e1}

/* === Page intro === */
.urtc-page-intro{text-align:center;padding:3rem 1.25rem 2rem;max-width:760px;margin:0 auto}
.urtc-page-intro h1{margin:0 0 1rem}
.urtc-page-intro p{color:var(--c-muted);font-size:1.05rem}

/* === About content === */
.urtc-prose{max-width:820px;margin:0 auto;padding:1rem 0 3rem;color:var(--c-ink)}
.urtc-prose p{margin:0 0 1.25rem;font-size:1.02rem;line-height:1.75;color:#1f2937}

/* === Program detail page (matches live "Learn more" expanded view) === */
.urtc-program-detail{position:relative;overflow-x:hidden;padding:3rem 1rem 5rem;background:#FAFBFC}
@media(min-width:768px){.urtc-program-detail{padding:4rem 1.5rem 6rem}}
@media(min-width:1024px){.urtc-program-detail{padding:4rem 2rem 6rem}}
.urtc-program-detail__inner{position:relative;max-width:1100px;margin:0 auto}
.urtc-program-detail__bg-blur{position:absolute;border-radius:50%;filter:blur(64px);pointer-events:none;z-index:0}
.urtc-program-detail__bg-blur--tr{top:6rem;right:-4rem;width:16rem;height:16rem;background:rgba(99,102,241,.05)}
.urtc-program-detail__bg-blur--bl{bottom:6rem;left:-4rem;width:20rem;height:20rem;background:rgba(48,77,48,.05)}

.urtc-program-detail__hero{position:relative;z-index:1;text-align:center;margin-bottom:3rem}
.urtc-program-detail__image{position:relative;border-radius:1rem;overflow:hidden;margin-bottom:2rem;max-height:420px;box-shadow:0 12px 30px -10px rgba(0,0,0,.18)}
.urtc-program-detail__image img{width:100%;height:100%;object-fit:cover;display:block;max-height:420px}
.urtc-program-detail__image-tint{position:absolute;inset:0;background:linear-gradient(180deg,rgba(48,77,48,0) 60%,rgba(48,77,48,.18) 100%);pointer-events:none}
.urtc-program-detail__title{margin:0 0 .75rem;font-size:clamp(2rem,4.5vw,2.75rem);font-weight:700;color:#111827;line-height:1.15}
.urtc-program-detail__lead{margin:0 auto;max-width:42rem;color:#4b5563;font-size:1.125rem;line-height:1.6}

.urtc-program-detail__body{position:relative;z-index:1;display:grid;grid-template-columns:1fr;gap:2.5rem;align-items:start;margin-bottom:3.5rem}
@media(min-width:768px){.urtc-program-detail__body{grid-template-columns:1.1fr .9fr;gap:3.5rem}}
@media(min-width:1024px){.urtc-program-detail__body{gap:4.5rem}}

.urtc-program-detail__section-heading{margin:0 0 1rem;font-size:1.5rem;font-weight:700;color:#111827;line-height:1.3}
.urtc-program-detail__details{margin:0 0 1.25rem;color:#374151;font-size:1.05rem;line-height:1.75}

.urtc-program-features{background:#fff;border:1px solid #f3f4f6;border-radius:.75rem;box-shadow:0 4px 6px -1px rgba(0,0,0,.07),0 2px 4px -2px rgba(0,0,0,.05);padding:1.5rem}
@media(min-width:640px){.urtc-program-features{padding:2rem}}
.urtc-program-features__heading{margin:0 0 1.25rem;font-size:1.25rem;font-weight:700;color:#111827}
.urtc-program-features__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.85rem}
.urtc-program-features__list li{display:flex;align-items:flex-start;gap:.75rem;color:#374151;font-size:1rem;line-height:1.55}
.urtc-program-features__check{flex-shrink:0;width:26px;height:26px;border-radius:50%;background:rgba(48,77,48,.12);color:var(--c-primary);display:inline-flex;align-items:center;justify-content:center;margin-top:.1rem}
.urtc-program-features__check svg{width:14px;height:14px;display:block;stroke:currentColor}

.urtc-program-detail__cta{position:relative;z-index:1;background:linear-gradient(135deg,var(--c-primary) 0%,#243A24 100%);color:#fff;border-radius:1rem;padding:2rem 1.5rem;text-align:center;box-shadow:0 12px 28px -12px rgba(48,77,48,.45)}
@media(min-width:640px){.urtc-program-detail__cta{padding:2.5rem 2rem}}
.urtc-program-detail__cta h3{margin:0 0 .5rem;font-size:1.5rem;font-weight:700;color:#fff}
.urtc-program-detail__cta p{margin:0 auto 1.5rem;max-width:36rem;color:#fff;opacity:.95;font-size:1.02rem;line-height:1.55}
.urtc-program-detail__cta-buttons{display:flex;flex-direction:column;gap:.75rem;align-items:center;justify-content:center}
@media(min-width:640px){.urtc-program-detail__cta-buttons{flex-direction:row}}
.urtc-program-detail__cta-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-weight:600;font-size:.95rem;padding:.75rem 1.5rem;border-radius:.5rem;text-decoration:none;transition:background-color .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease}
.urtc-program-detail__cta-btn--primary{background:#fff;color:var(--c-primary)}
.urtc-program-detail__cta-btn--primary:hover,.urtc-program-detail__cta-btn--primary:focus-visible{background:#f3f4f6;transform:translateY(-1px);box-shadow:0 8px 18px -6px rgba(0,0,0,.25)}
.urtc-program-detail__cta-btn--ghost{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.7)}
.urtc-program-detail__cta-btn--ghost:hover,.urtc-program-detail__cta-btn--ghost:focus-visible{background:rgba(255,255,255,.12);border-color:#fff}
.urtc-program-detail__cta-btn:focus-visible{outline:3px solid #fff;outline-offset:2px}
.urtc-program-detail__cta-btn svg{flex-shrink:0}

/* === Contact === */
/* === Contact (matches live, section padding + 2-col grid + blur decorations) === */
.urtc-contact{position:relative;overflow-x:hidden;background:#FAFBFC;padding:5rem 1rem}
@media(min-width:768px){.urtc-contact{padding:6rem 1.5rem}}
@media(min-width:1024px){.urtc-contact{padding:6rem 2rem}}
.urtc-contact__inner{position:relative;max-width:1280px;margin:0 auto}
.urtc-contact__bg-blur{position:absolute;border-radius:50%;filter:blur(64px);pointer-events:none;z-index:0}
.urtc-contact__bg-blur--tr{top:10rem;right:-4rem;width:16rem;height:16rem;background:rgba(99,102,241,.05)}
.urtc-contact__bg-blur--bl{bottom:5rem;left:-4rem;width:20rem;height:20rem;background:rgba(48,77,48,.05)}
.urtc-contact__intro{position:relative;z-index:1;text-align:center;margin-bottom:4rem;max-width:48rem;margin-left:auto;margin-right:auto}
.urtc-contact__intro h2{margin:0 0 1rem;font-size:clamp(1.875rem,4vw,2.5rem);font-weight:700;color:#111827;line-height:1.2}
.urtc-contact__intro p{margin:0;color:#4b5563;font-size:1.125rem;line-height:1.65}
.urtc-contact__grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr;gap:3rem;align-items:stretch}
@media(min-width:768px){.urtc-contact__grid{grid-template-columns:1fr 1fr;gap:4rem}}
@media(min-width:1024px){.urtc-contact__grid{gap:6rem}}
.urtc-contact__col{display:flex;flex-direction:column;height:100%}

/* LEFT column — info items, NO surrounding card */
.urtc-contact__heading{margin:0 0 1.5rem;font-size:1.5rem;font-weight:700;color:#111827;line-height:1.3}
.urtc-contact__items{display:flex;flex-direction:column;gap:2rem}
.urtc-contact-item{display:flex;align-items:flex-start;text-decoration:none;color:inherit;border-radius:.5rem;transition:background-color .25s ease}
.urtc-contact-item--social{padding:.5rem;margin-left:-.5rem;align-items:center}
.urtc-contact-item--social:hover,.urtc-contact-item--social:focus-visible{background:rgba(48,77,48,.05)}
.urtc-contact-item__icon{flex-shrink:0;width:44px;height:44px;border-radius:50%;background:rgba(48,77,48,.1);color:var(--c-primary);display:inline-flex;align-items:center;justify-content:center;margin-right:1rem;transition:background-color .25s ease,color .25s ease}
.urtc-contact-item__icon svg{width:20px;height:20px;display:block;stroke:currentColor}
.urtc-contact-item:hover .urtc-contact-item__icon,
.urtc-contact-item:focus-visible .urtc-contact-item__icon{background:var(--c-primary);color:#fff}
.urtc-contact-item__icon--static{margin-right:1rem}
.urtc-contact-item__body h4{margin:0 0 .25rem;font-size:1rem;font-weight:600;color:#111827;line-height:1.4}
.urtc-contact-item__body p,
.urtc-contact-item__body span{margin:0;display:block;color:#4b5563;font-size:.95rem;line-height:1.5;transition:color .25s ease}
.urtc-contact-item:hover .urtc-contact-item__body p,
.urtc-contact-item:hover .urtc-contact-item__body span,
.urtc-contact-item:focus-visible .urtc-contact-item__body p,
.urtc-contact-item:focus-visible .urtc-contact-item__body span{color:var(--c-primary)}

/* RIGHT column — Opening Hours white card */
.urtc-hours-card{background:#fff;border:1px solid #f3f4f6;border-radius:.5rem;box-shadow:0 4px 6px -1px rgba(0,0,0,.07),0 2px 4px -2px rgba(0,0,0,.05);padding:1.25rem;height:100%;display:flex;flex-direction:column;gap:1rem}
@media(min-width:640px){.urtc-hours-card{padding:2rem}}
.urtc-hours-card__head{display:flex;align-items:center;margin-bottom:.5rem}
.urtc-hours-card__head h3{margin:0;font-size:1.25rem;font-weight:700;color:#111827}
@media(min-width:640px){.urtc-hours-card__head h3{font-size:1.5rem}}
.urtc-hours-card__list-wrap{background:#f9fafb;padding:1rem;border-radius:.5rem}
@media(min-width:640px){.urtc-hours-card__list-wrap{padding:1.25rem}}
.urtc-hours-card__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}
.urtc-hours-card__list li{display:flex;justify-content:space-between;align-items:center}
.urtc-hours-card__day{color:#374151;font-size:.875rem}
.urtc-hours-card__time{font-weight:500;color:#111827;font-size:.875rem}
@media(min-width:640px){.urtc-hours-card__day,.urtc-hours-card__time{font-size:1rem}}

.urtc-cta-card{background:var(--c-primary);color:#fff;padding:1rem;border-radius:.5rem;margin-top:auto}
@media(min-width:640px){.urtc-cta-card{padding:1.25rem}}
.urtc-cta-card h4{margin:0 0 .5rem;font-size:1rem;font-weight:600;color:#fff}
@media(min-width:640px){.urtc-cta-card h4{font-size:1.125rem}}
.urtc-cta-card p{margin:0 0 1rem;font-size:.875rem;line-height:1.55;color:#fff;opacity:.95}
@media(min-width:640px){.urtc-cta-card p{font-size:1rem}}
.urtc-cta-card__buttons{display:flex;flex-direction:column;gap:.75rem}
@media(min-width:640px){.urtc-cta-card__buttons{flex-direction:row}}
.urtc-cta-card__btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:#fff;color:var(--c-primary);padding:.55rem 1rem;border-radius:.375rem;font-weight:500;text-decoration:none;font-size:.875rem;transition:background-color .2s ease}
@media(min-width:640px){.urtc-cta-card__btn{font-size:1rem}}
.urtc-cta-card__btn:hover,.urtc-cta-card__btn:focus-visible{background:#f3f4f6;color:var(--c-primary)}
.urtc-cta-card__btn svg{width:16px;height:16px;stroke:currentColor;flex-shrink:0}

/* Scroll-reveal animation (replaces framer-motion) */
.urtc-reveal{opacity:0;transition:opacity .7s ease,transform .7s ease;will-change:opacity,transform}
.urtc-reveal[data-reveal="left"]{transform:translateX(-30px)}
.urtc-reveal[data-reveal="right"]{transform:translateX(30px)}
.urtc-reveal[data-reveal="up"]{transform:translateY(20px)}
.urtc-reveal.is-in{opacity:1;transform:translate(0,0)}
@media(prefers-reduced-motion:reduce){
  .urtc-reveal,.urtc-reveal[data-reveal="left"],.urtc-reveal[data-reveal="right"],.urtc-reveal[data-reveal="up"]{opacity:1;transform:none;transition:none}
}
.urtc-socials{display:flex;gap:.75rem;margin-top:.5rem}
.urtc-socials a{width:40px;height:40px;border-radius:50%;background:var(--c-soft);display:inline-flex;align-items:center;justify-content:center;color:var(--c-ink);transition:background .15s ease,color .15s ease}
.urtc-socials a:hover{background:var(--c-primary);color:#fff}

/* === Magazine === */
.urtc-magazine-embed{max-width:1000px;margin:0 auto;aspect-ratio:4/3;border-radius:var(--r-card);overflow:hidden;box-shadow:var(--shadow-card-h)}
.urtc-magazine-embed iframe{width:100%;height:100%;border:0;display:block}

/* === Footer === */
.urtc-footer{background:#1a1a1a;color:#9ca3af;padding:3rem 0 0;margin-top:0;overflow-x:hidden}
.urtc-footer a{color:#9ca3af;transition:color .15s ease}
.urtc-footer a:hover{color:#fff}
.urtc-footer__inner{max-width:1280px;margin:0 auto;padding:0 1.25rem 2rem}
@media(min-width:760px){.urtc-footer__inner{padding:0 2rem 2rem}}
.urtc-footer__heading{color:var(--c-primary);font-size:1.125rem;font-weight:600;margin:0 0 1.5rem;text-transform:none;letter-spacing:0}

.urtc-footer__top{display:grid;grid-template-columns:1fr;gap:2.5rem;margin-bottom:2.5rem}
@media(min-width:760px){.urtc-footer__top{grid-template-columns:1fr 1fr;gap:2.5rem}}

.urtc-footer__info-row{display:flex;align-items:center;gap:.5rem;color:#9ca3af;margin-bottom:1rem;font-size:.95rem;line-height:1.4}
.urtc-footer__info-row .urtc-footer__text{font-weight:500}
.urtc-footer__info-cluster{display:flex;flex-direction:column;gap:1rem}
@media(min-width:760px){.urtc-footer__info-cluster{flex-direction:row;gap:1.5rem;align-items:center}}
.urtc-footer__link{display:inline-flex;align-items:center;gap:.5rem;color:#9ca3af;text-decoration:none;font-size:.95rem;font-weight:500;line-height:1.4}
.urtc-footer__link:hover{color:#fff}
.urtc-footer__link:hover .urtc-footer__icon{color:var(--c-primary)}
.urtc-footer__icon{color:var(--c-primary);flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}

.urtc-footer__social{display:flex;flex-direction:column;align-items:flex-start}
@media(min-width:760px){.urtc-footer__social{align-items:flex-end}}
.urtc-footer__social-row{display:flex;gap:1rem;align-items:center}
.urtc-footer__social-link{width:40px;height:40px;padding:.625rem;border-radius:50%;background:rgba(48,77,48,.1);color:#9ca3af;display:inline-flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease}
.urtc-footer__social-link:hover{background:var(--c-primary);color:#fff}

.urtc-footer__nav{border-top:1px solid #2a2a2a;padding-top:2rem;margin-bottom:0}
.urtc-footer__nav ul{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:1.5rem;list-style:none;margin:0;padding:0}
.urtc-footer__nav li{margin:0}
.urtc-footer__nav a{color:#9ca3af;font-size:.95rem;padding:.25rem 0;display:inline-block}
.urtc-footer__nav a:hover{color:var(--c-primary)}

.urtc-footer__copyright{border-top:1px solid #2a2a2a;margin-top:2rem;padding-top:2rem;color:#6b7280;font-size:.875rem;text-align:left;display:flex;flex-direction:column;gap:.15rem}
.urtc-footer__copyright .urtc-footer__rights{color:#6b7280}
@media(min-width:760px){.urtc-footer__copyright{text-align:left}}
.urtc-footer__legal{list-style:none;margin:1rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem 1.25rem;font-size:.75rem}
.urtc-footer__legal li{margin:0}
.urtc-footer__legal a{color:#6b7280;text-decoration:none;transition:color .2s ease}
.urtc-footer__legal a:hover,.urtc-footer__legal a:focus-visible{color:#fff;text-decoration:underline}
.urtc-footer__legal a:focus-visible{outline:2px solid #4ade80;outline-offset:2px;border-radius:2px}

/* === Lightbox === */
/* Invisible scroll sentinel — sits in the normal flow at top of body and
   scrolls with the document. IntersectionObserver watches it to detect
   "page scrolled" state without relying on scroll events. */
.urtc-scroll-sentinel{display:block;width:1px;height:1px;pointer-events:none}

/* === Back-to-top floating button === */
.urtc-back-to-top{position:fixed;bottom:1.5rem;right:1.5rem;width:48px;height:48px;border-radius:50%;background:var(--c-primary);color:#fff;border:0;cursor:pointer;align-items:center;justify-content:center;padding:0;z-index:55;box-shadow:0 8px 18px -4px rgba(48,77,48,.45);display:none}
.urtc-back-to-top.is-visible{display:inline-flex;animation:urtcBackToTopIn .3s ease both}
.urtc-back-to-top:hover,.urtc-back-to-top:focus-visible{background:var(--c-primary-dark);transform:translateY(-2px)}
.urtc-back-to-top:focus-visible{outline:3px solid rgba(48,77,48,.4);outline-offset:2px}
.urtc-back-to-top svg{display:block;stroke:currentColor;fill:none}
@keyframes urtcBackToTopIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media (max-width: 480px){.urtc-back-to-top{bottom:1rem;right:1rem;width:44px;height:44px}}
@media (prefers-reduced-motion: reduce){.urtc-back-to-top.is-visible{animation:none}}

.urtc-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.92);display:none;align-items:center;justify-content:center;z-index:100;padding:2rem;cursor:zoom-out}
.urtc-lightbox.is-open{display:flex}
.urtc-lightbox img{max-width:90vw;max-height:85vh;border-radius:8px}
.urtc-lightbox__cap{position:fixed;bottom:1.5rem;left:0;right:0;text-align:center;color:#fff;font-size:.9rem}
.urtc-lightbox__close{position:fixed;top:1.5rem;right:1.5rem;width:44px;height:44px;border-radius:50%;background:rgba(0,0,0,.55);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.2);color:#fff;cursor:pointer;padding:0;display:inline-flex;align-items:center;justify-content:center;transition:background-color .18s ease,transform .18s ease,border-color .18s ease}
.urtc-lightbox__close svg{display:block;stroke:currentColor;fill:none}
.urtc-lightbox__close:hover{background:rgba(255,255,255,.95);color:#111827;border-color:transparent;transform:scale(1.05)}
.urtc-lightbox__close:focus-visible{outline:3px solid #fff;outline-offset:2px}

/* === Responsive === */
/* Mobile nav: full-screen black slide-in from right (matches live spec) */
.urtc-mobile-nav{position:fixed;inset:0;z-index:60;background:#000;color:#fff;transform:translateX(100%);transition:transform .3s ease-in-out;display:flex;flex-direction:column;padding:6rem 2rem 5rem;overflow-y:auto;visibility:hidden}
.urtc-mobile-nav.is-open{transform:translateX(0);visibility:visible}
.urtc-mobile-nav__close{position:absolute;top:1.5rem;right:1.5rem;background:transparent;border:0;color:#fff;width:44px;height:44px;border-radius:50%;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0;transition:background-color .2s ease}
.urtc-mobile-nav__close:hover{background:rgba(255,255,255,.1)}
.urtc-mobile-nav__close svg{width:28px;height:28px;display:block;stroke:currentColor;fill:none}
.urtc-mobile-nav ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;flex:1}
.urtc-mobile-nav li{border-bottom:1px solid rgba(255,255,255,.1)}
.urtc-mobile-nav a{display:flex;align-items:center;justify-content:space-between;padding:1rem 0;color:#fff;font-size:1.25rem;font-weight:500;text-decoration:none;transition:color .2s ease}
.urtc-mobile-nav a:hover,.urtc-mobile-nav a:focus-visible{color:#4ade80}
.urtc-mobile-nav .current-menu-item a{color:#4ade80}
.urtc-mobile-nav__footer{margin-top:auto;padding-top:2rem;display:flex;flex-direction:column;gap:1rem}
.urtc-mobile-nav__phone{display:inline-flex;align-items:center;gap:.5rem;color:#fff;text-decoration:none;font-size:1.125rem;transition:color .2s ease}
.urtc-mobile-nav__phone:hover,.urtc-mobile-nav__phone:focus-visible{color:#4ade80}
.urtc-mobile-nav__copyright{color:rgba(255,255,255,.6);font-size:.875rem;line-height:1.5}
.urtc-overlay{display:none}

@media(max-width:880px){
  .urtc-nav,.urtc-phone--desktop{display:none}
  .urtc-phone--mobile{display:inline-flex;margin-left:auto;margin-right:.5rem}
  .urtc-burger{display:inline-flex}
  .urtc-header__inner{gap:0}
  body.urtc-mobile-nav-open{overflow:hidden}
}
/* Header sticky on every viewport */
.urtc-header{-webkit-position:sticky;position:sticky;top:0}

/* Respect prefers-reduced-motion */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
}

/* Focus rings */
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--c-primary);outline-offset:2px;border-radius:4px}

/* GeneratePress overrides */
html body #page{background:#fff;max-width:none;padding:0;margin:0;width:100%}
html body main#content.site-content,
html body .site-content{display:block!important;flex:none!important;width:100%!important;max-width:100%!important;padding:0!important;margin:0!important}
html body .site-content > .content-area,
html body .content-area{max-width:100%!important;padding:0!important;width:100%!important;float:none!important}
html body .inside-article{padding:0!important;background:transparent;border:0;box-shadow:none}
html body article{background:transparent;margin:0;padding:0}
html body .entry-content,html body .page .entry-content{margin-top:0;padding:0}
html body .site-header,html body .site-footer,html body .sidebar,html body .widget-area,html body .gen-sidebar-nav,html body #right-sidebar,html body #left-sidebar,html body .navigation{display:none!important}
html body .grid-container.grid-parent,html body .grid-container{max-width:none!important;padding:0!important;margin:0!important;width:100%!important}
html body .container{max-width:none!important;padding:0!important;margin:0!important;width:100%!important}
html body .hfeed.site{display:block!important;max-width:none!important;width:100%!important;padding:0!important;margin:0!important}
html,body{margin:0;padding:0}
/* Prevent horizontal scroll WITHOUT breaking position:sticky on the header.
   Setting overflow-x on the body kills sticky in Safari/Chrome — instead clip
   it on the main content wrapper. */
.site-content,.site,main{overflow-x:clip}

/* === URTC Refresh Overrides === */
.urtc-header{background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(15,23,42,.08);box-shadow:0 6px 30px -24px rgba(15,23,42,.32)}
.urtc-header.is-scrolled{box-shadow:0 14px 34px -26px rgba(15,23,42,.38)}
.urtc-nav a{font-weight:700;letter-spacing:.02em;text-transform:uppercase;font-size:.85rem}
.urtc-nav a::after{background:linear-gradient(90deg,var(--c-gold),var(--c-accent))}
.urtc-phone{color:var(--c-primary)}
.urtc-phone--mobile:hover,.urtc-phone--mobile:focus-visible{color:var(--c-accent)}
.urtc-burger{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border:1px solid rgba(15,23,42,.08)}

.urtc-hero{min-height:620px;height:min(92vh,860px);align-items:flex-end;background:linear-gradient(180deg,rgba(15,23,42,.08),rgba(15,23,42,.45))}
.urtc-hero::before{content:'';position:absolute;inset:0;background:linear-gradient(115deg,rgba(15,23,42,.84) 0%,rgba(15,23,42,.52) 42%,rgba(15,23,42,.18) 100%);z-index:0}
.urtc-hero::after{content:'';position:absolute;inset:auto auto 7rem 8%;width:9rem;height:9rem;border-radius:50%;background:radial-gradient(circle,rgba(212,160,23,.55) 0%,rgba(212,160,23,0) 70%);filter:blur(8px);z-index:1;pointer-events:none}
.urtc-hero__slide{transition:opacity 1.2s ease,transform 6s ease}
.urtc-hero__slide.is-active{transform:scale(1.02)}
.urtc-hero__inner{max-width:1200px;padding:2rem 1.25rem 4.5rem;justify-content:flex-start}
.urtc-hero__card{max-width:760px;text-align:left;background:linear-gradient(180deg,rgba(15,23,42,.58),rgba(15,23,42,.7));border:1px solid rgba(255,255,255,.14);border-radius:28px;padding:2rem 1.5rem 1.75rem;box-shadow:0 40px 90px -50px rgba(0,0,0,.8);backdrop-filter:blur(5px)}
.urtc-hero__eyebrow{display:inline-flex;align-items:center;gap:.65rem;margin:0 0 1rem;color:#dbeafe;font-size:.82rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
.urtc-hero__eyebrow::before{content:'';width:2.5rem;height:2px;border-radius:999px;background:linear-gradient(90deg,var(--c-gold),#facc15)}
.urtc-hero__title{font-size:clamp(2.5rem,7vw,5.6rem);max-width:11ch;margin:0 0 1rem}
.urtc-hero__title span{filter:none}
.urtc-hero__sub{max-width:58ch;margin:0 0 2rem;color:rgba(255,255,255,.9);font-size:clamp(1rem,1.7vw,1.18rem)}
.urtc-hero__cta{justify-content:flex-start}
.urtc-hero__cta .urtc-btn{min-height:50px;padding:.85rem 1.6rem}
.urtc-hero__dots{bottom:1.5rem;justify-content:flex-start;left:1.25rem;right:auto}
@media(min-width:768px){.urtc-hero__dots{left:calc(50% - 575px)}}

.urtc-btn{font-weight:800;letter-spacing:.04em;text-transform:uppercase;padding:.85rem 1.45rem;border-radius:999px}
.urtc-btn--primary{background:linear-gradient(135deg,var(--c-gold),#f4bf33);color:var(--c-primary);box-shadow:0 16px 32px -18px rgba(212,160,23,.75)}
.urtc-btn--primary:hover{background:linear-gradient(135deg,#f4bf33,var(--c-gold));color:var(--c-primary-dark)}
.urtc-btn--frost{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.24)}
.urtc-btn--gold{background:linear-gradient(135deg,var(--c-gold),#f6c34a);color:var(--c-primary);box-shadow:0 14px 28px -18px rgba(212,160,23,.72)}
.urtc-btn--gold:hover{background:linear-gradient(135deg,#f6c34a,var(--c-gold));color:var(--c-primary-dark);transform:translateY(-2px)}
.urtc-inline-link{display:inline-flex;align-items:center;gap:.45rem;color:var(--c-accent);font-weight:700}
.urtc-inline-link::after{content:'>';font-size:.9em}
.urtc-inline-link:hover{color:var(--c-primary)}

.urtc-impact{position:relative;padding:0 0 2rem;margin-top:-3.5rem;z-index:2}
.urtc-impact .urtc-container{position:relative}
.urtc-impact__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.urtc-impact__card{background:#fff;border:1px solid rgba(15,23,42,.06);border-radius:24px;padding:1.4rem 1.2rem;box-shadow:var(--shadow-card)}
.urtc-impact__value{margin:0 0 .45rem;font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-size:clamp(2.2rem,6vw,3.5rem);font-weight:800;line-height:.95;color:var(--c-primary)}
.urtc-impact__card h3{margin:0;font-family:'Manrope',system-ui,sans-serif;font-size:.98rem;font-weight:700;line-height:1.4;text-transform:none;letter-spacing:0;color:var(--c-muted)}

.urtc-program-highlights{display:grid;grid-template-columns:1fr;gap:1rem;margin:0 auto 2rem}
.urtc-program-highlights__card{background:#fff;border:1px solid rgba(15,23,42,.06);border-radius:24px;padding:1.4rem;box-shadow:var(--shadow-card)}
.urtc-program-highlights__badge{display:inline-flex;padding:.4rem .75rem;border-radius:999px;background:rgba(43,108,176,.1);color:var(--c-accent);font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.urtc-program-highlights__card h3{margin:.9rem 0 .75rem;font-size:1.5rem}
.urtc-program-highlights__card p{margin:0 0 1rem;color:var(--c-muted)}
.urtc-programs-carousel-wrap{margin-top:.5rem}

.urtc-card{border:1px solid rgba(15,23,42,.08);border-radius:24px;box-shadow:0 22px 44px -28px rgba(15,23,42,.3)}
.urtc-card__img{height:230px}
.urtc-card__icon{background:linear-gradient(135deg,var(--c-gold),#f4bf33);color:var(--c-primary)}
.urtc-card__body{padding:1.5rem}
.urtc-card__body p{color:var(--c-muted)}
.urtc-card__link{color:var(--c-accent)}
.urtc-card__inquire{border-radius:999px;border-color:rgba(15,23,42,.1)}
.urtc-card__inquire:hover,.urtc-card__inquire:focus-visible{background:var(--c-primary);border-color:var(--c-primary)}

.urtc-magazine-feature{display:grid;grid-template-columns:1fr;gap:1.5rem;align-items:center;background:linear-gradient(135deg,#ffffff,#eef5fb);border:1px solid rgba(15,23,42,.06);border-radius:28px;padding:1.5rem;box-shadow:var(--shadow-card)}
.urtc-magazine-feature__content h2{text-align:left;margin:0 0 .75rem}
.urtc-magazine-feature__subtitle{font-size:1.15rem;font-weight:700;color:var(--c-primary);margin:0 0 .75rem}
.urtc-magazine-feature__content p:last-of-type{color:var(--c-muted);max-width:56ch}
.urtc-magazine-feature__media{position:relative}
.urtc-magazine-feature__media img,.urtc-magazine-feature__placeholder{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:24px;box-shadow:0 26px 48px -28px rgba(15,23,42,.45)}
.urtc-magazine-feature__placeholder{display:flex;flex-direction:column;justify-content:flex-end;padding:1.5rem;background:linear-gradient(160deg,var(--c-primary),#163a63 55%,var(--c-gold) 150%);color:#fff}
.urtc-magazine-feature__issue{display:inline-flex;align-self:flex-start;margin-bottom:auto;padding:.45rem .8rem;border-radius:999px;background:rgba(255,255,255,.14);font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.urtc-magazine-feature__placeholder strong{font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-size:2.5rem;line-height:1;text-transform:uppercase}
.urtc-magazine-feature__placeholder p{margin:.75rem 0 0;color:rgba(255,255,255,.82)}

.urtc-newsletter{padding:0 0 5rem}
.urtc-newsletter__panel{display:grid;grid-template-columns:1fr;gap:1.5rem;background:linear-gradient(135deg,var(--c-primary),#143a63);border-radius:28px;padding:1.6rem;color:#fff;box-shadow:0 32px 64px -34px rgba(15,23,42,.55)}
.urtc-newsletter__copy h2{text-align:left;color:#fff;margin:0 0 .75rem}
.urtc-newsletter__copy p:last-child{color:rgba(255,255,255,.84)}
.urtc-newsletter__copy .urtc-kicker{color:#bfdbfe}
.urtc-newsletter__copy .urtc-kicker::before{background:linear-gradient(90deg,#fde68a,#bfdbfe)}
.urtc-newsletter__form{display:grid;grid-template-columns:1fr;gap:.85rem;align-content:center}
.urtc-newsletter__form input{min-height:54px;border-radius:999px;border:1px solid rgba(255,255,255,.18);padding:0 1.1rem;font-size:1rem;color:var(--c-ink);background:#fff}
.urtc-newsletter__form input::placeholder{color:#64748b}

.urtc-partner-callout{padding:0 0 5rem}
.urtc-partner-callout__inner{display:grid;grid-template-columns:1fr;gap:1.25rem;align-items:center;background:linear-gradient(135deg,rgba(212,160,23,.1),rgba(63,125,58,.1));border:1px solid rgba(15,23,42,.06);border-radius:28px;padding:1.6rem}
.urtc-partner-callout__inner h2{text-align:left;margin:0 0 .75rem}
.urtc-partner-callout__inner p:last-child{margin:0;color:var(--c-muted);max-width:60ch}

.urtc-gallery__item,.urtc-gallery__item img{border-radius:22px}

.urtc-testimonial{border-radius:24px;border:1px solid rgba(15,23,42,.06);box-shadow:var(--shadow-card)}

.urtc-footer{background:linear-gradient(180deg,#0a1020 0%,#101a30 100%);color:#cbd5e1;padding:4rem 0 0}
.urtc-footer__inner{padding:0 1.25rem 2rem}
.urtc-footer__top{display:grid;grid-template-columns:1fr;gap:2rem;margin-bottom:2rem}
.urtc-footer__brand,.urtc-footer__info,.urtc-footer__nav-group,.urtc-footer__social{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);border-radius:24px;padding:1.4rem}
.urtc-footer__eyebrow{margin:0 0 .8rem;color:#93c5fd;font-size:.8rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.urtc-footer__heading{margin:0 0 .85rem;color:#fff;font-size:1.8rem;text-align:left}
.urtc-footer__subheading{margin:0 0 1rem;color:#fff;font-size:1rem;font-family:'Manrope',system-ui,sans-serif;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.urtc-footer__blurb{margin:0;color:#cbd5e1}
.urtc-footer__info-row,.urtc-footer__link{align-items:flex-start;color:#cbd5e1}
.urtc-footer__icon{color:#f4bf33}
.urtc-footer__nav{border-top:0;padding-top:0}
.urtc-footer__nav ul{display:grid;grid-template-columns:1fr 1fr;gap:.8rem 1rem;justify-content:flex-start}
.urtc-footer__nav a{color:#e2e8f0;padding:0}
.urtc-footer__social-row{margin-bottom:1rem}
.urtc-footer__social-link{background:rgba(255,255,255,.08);color:#fff}
.urtc-footer__social-link:hover{background:linear-gradient(135deg,var(--c-gold),#f4bf33);color:var(--c-primary)}
.urtc-footer__road-link{display:inline-flex;align-items:center;gap:.45rem;color:#fcd34d;font-weight:700}
.urtc-footer__road-link::after{content:'>';font-size:.9em}
.urtc-footer__copyright{border-top:1px solid rgba(255,255,255,.1);margin-top:0;padding-top:1.5rem;color:#94a3b8}
.urtc-footer__legal a{color:#94a3b8}

.urtc-mobile-nav{background:linear-gradient(180deg,#081120 0%,#0f172a 100%)}
.urtc-mobile-nav a:hover,.urtc-mobile-nav a:focus-visible,.urtc-mobile-nav .current-menu-item a,.urtc-mobile-nav__phone:hover,.urtc-mobile-nav__phone:focus-visible{color:#fcd34d}

@media(min-width:640px){
  .urtc-impact__grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .urtc-program-highlights{grid-template-columns:repeat(2,minmax(0,1fr))}
  .urtc-newsletter__form{grid-template-columns:minmax(0,1fr) auto}
  .urtc-partner-callout__inner{grid-template-columns:minmax(0,1fr) auto}
}

@media(min-width:960px){
  .urtc-magazine-feature{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);padding:2rem}
  .urtc-newsletter__panel{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);padding:2rem}
  .urtc-footer__top{grid-template-columns:1.2fr .95fr .8fr .8fr}
}

@media(max-width:759px){
  .urtc-section{padding:4rem 0}
  .urtc-hero{min-height:560px;height:auto}
  .urtc-hero__inner{padding:1.5rem 1rem 4rem}
  .urtc-hero__card{padding:1.5rem 1.15rem 1.35rem;border-radius:24px}
  .urtc-hero__title{max-width:none}
  .urtc-impact{margin-top:-2rem}
  .urtc-impact__grid{grid-template-columns:1fr 1fr}
  .urtc-footer__nav ul{grid-template-columns:1fr}
}

@media(max-width:479px){
  .urtc-impact__grid{grid-template-columns:1fr}
  .urtc-hero__cta .urtc-btn,.urtc-newsletter__form .urtc-btn,.urtc-partner-callout__inner .urtc-btn{width:100%;justify-content:center}
}
