/* Shared visual system for TBCC's secondary pages. Keeps the established
   STAY L.I.T. colors and assets while matching the homepage's quieter polish. */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800;900&display=swap');

.page-premium { --page-line: rgba(17,20,37,.13); color: var(--tbcc-ink); font-family: 'Montserrat',system-ui,sans-serif; }
.page-premium .container { max-width: 1320px; padding-inline: clamp(20px,4vw,48px); }
.page-premium h1,.page-premium h2,.page-premium h3,.page-premium h4,.page-premium h5,.page-premium h6 { font-family: 'Montserrat',system-ui,sans-serif; color: var(--tbcc-ink); letter-spacing: -.045em; font-weight: 800; }
.page-premium .navbar { background: #fff !important; border: 0; border-bottom: 1px solid var(--page-line); box-shadow: none; padding-block: 12px !important; }
.page-premium .navbar-brand img { height: 76px !important; }
.page-premium .navbar-carf-seal,.page-premium .navbar-carf-seal img { width: 62px !important; height: 62px !important; min-width: 62px; max-width: 62px !important; filter: none; }
.page-premium .navbar-nav { align-items: center; gap: 3px; }
.page-premium .navbar-nav .nav-link { color: var(--tbcc-ink) !important; font-size: .72rem; margin: 0; padding-inline: 7px; }
.page-premium .navbar-nav .nav-link:hover,.page-premium .navbar-nav .nav-link:focus,.page-premium .navbar-nav .nav-link.active { color: var(--tbcc-primary) !important; }
.page-premium .navbar-nav .btn { padding: 10px 13px; font-size: .75rem; border-radius: 5px; font-weight: 700; }
.page-premium .navbar-nav .btn-outline-light { color: var(--tbcc-ink); border-color: var(--page-line); }
.page-premium .navbar-toggler { background: var(--tbcc-ink); }
.page-premium .btn { border-radius: 5px; font-weight: 700; letter-spacing: -.015em; }
.page-premium .btn-primary { color: var(--tbcc-ink) !important; background: var(--tbcc-rainbow) !important; box-shadow: none; }
.page-premium .hero,.page-premium .inner-hero { min-height: clamp(185px,21vw,265px); display: grid; place-items: center; padding: clamp(38px,5vw,68px) 0; background: var(--tbcc-ink); border: 0; border-bottom: 3px solid transparent; border-image: var(--tbcc-rainbow) 1; }
.page-premium .hero:not(.about-photo-hero):not(.programs-hero):not(.careers-hero):not(.accomplishments-hero):not(.blog-preview-hero) { background: var(--tbcc-ink); }
.page-premium .hero::before { content: ''; position: absolute; inset: 0; background: radial-gradient(circle at 15% 20%,rgba(255,79,163,.2),transparent 25%),radial-gradient(circle at 85% 15%,rgba(71,209,255,.18),transparent 28%); pointer-events: none; }
.page-premium .hero .overlay { background: rgba(9,11,22,.62); }
.page-premium .hero .container { position: relative; z-index: 1; max-width: 900px; }
.page-premium .inner-hero .container.py-5 { padding-top: 0 !important; padding-bottom: 0 !important; }
.page-premium .hero h1 { color: #fff; font-size: clamp(2.15rem,4vw,3.75rem); line-height: 1; margin: 0 0 14px; }
.page-premium .hero p { color: rgba(255,255,255,.86); max-width: 720px; margin-inline: auto; font-size: clamp(.86rem,1.25vw,1.05rem); line-height: 1.65; }
.page-premium .compact-page-kicker { display: block; margin-bottom: 12px; color: var(--tbcc-sky); font-size: .65rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.page-premium .section { padding-block: clamp(58px,7vw,108px); }
.page-premium .section:nth-of-type(odd) { background: #fff; }
.page-premium .section:nth-of-type(even),.page-premium .bg-light { background: #f6f7f9 !important; }
.page-premium .section > .container > h2:first-child,.page-premium .section-title { font-size: clamp(2rem,3.6vw,3.4rem); line-height: 1.12; margin-top: 0; margin-bottom: 2.25rem !important; }
.page-premium .section > .container > h2:first-child::after,.page-premium .section-title::after { content: ''; display: block; width: 56px; height: 4px; margin: 16px auto 0; background: var(--tbcc-rainbow); }
.page-premium .card { border: 1px solid var(--page-line); border-radius: 8px; box-shadow: none; overflow: hidden; transition: transform .2s ease,box-shadow .2s ease; }
.page-premium .card:hover { transform: translateY(-5px); box-shadow: 0 14px 28px rgba(17,20,37,.09); }
.page-premium .card::before { content: ''; display: block; height: 3px; background: var(--tbcc-rainbow); }
.page-premium .card-title { color: var(--tbcc-ink); font-size: 1.14rem; }
.page-premium .card-text,.page-premium p,.page-premium li { line-height: 1.8; }
.page-premium .form-control,.page-premium .form-select { border-radius: 4px; border-color: var(--page-line); padding: .8rem .9rem; }
.page-premium .form-control:focus,.page-premium .form-select:focus { border-color: var(--tbcc-blue); box-shadow: 0 0 0 .2rem rgba(0,168,255,.15); }
.page-premium .footer { background: var(--tbcc-ink); border-top: 5px solid transparent; border-image: var(--tbcc-rainbow) 1; }
.page-premium .footer :is(h1,h2,h3,h4,h5,h6,p,a) { color: #fff; }
.page-premium :is(a,button,input,select,textarea):focus-visible { outline: 3px solid var(--tbcc-blue); outline-offset: 4px; }
@media (max-width:1199.98px) { .page-premium .navbar-collapse { padding-top: 22px; } .page-premium .navbar-nav { align-items: stretch; gap: 6px; } .page-premium .navbar-nav .nav-link { padding: 10px; font-size: .9rem; } .page-premium .navbar-nav .btn { display: block; margin: 0 0 8px; } .page-premium .navbar-carf-seal { margin-right: auto; } }
@media (max-width:767.98px) { .page-premium .hero,.page-premium .inner-hero { min-height: 185px; padding-block: 38px; } .page-premium .section { padding-block: 54px; } .page-premium .hero h1 { font-size: clamp(2rem,9vw,2.8rem); } }
@media (prefers-reduced-motion:reduce) { .page-premium *,.page-premium *::before,.page-premium *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }
.impact-featured-library { background:#f7f8fb; border-bottom:1px solid rgba(17,20,37,.1); }
.impact-featured-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.impact-featured-card { display:grid; grid-template-columns:42% 1fr; min-height:245px; overflow:hidden; color:#111425; background:#fff; border:1px solid rgba(17,20,37,.13); border-radius:12px; box-shadow:0 12px 28px rgba(17,20,37,.06); transition:transform .25s ease,box-shadow .25s ease; }
.impact-featured-card:hover { transform:translateY(-5px); box-shadow:0 20px 36px rgba(17,20,37,.11); }
.impact-featured-card img { width:100%; height:100%; object-fit:cover; object-position:top; border-right:1px solid rgba(17,20,37,.1); }
.impact-featured-card > span { display:flex; flex-direction:column; justify-content:center; gap:9px; padding:22px; }
.impact-featured-card small { color:#0066b3; font-size:.65rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.impact-featured-card strong { font-size:1.15rem; line-height:1.3; }
.impact-featured-card em { margin-top:8px; color:#0066b3; font-size:.72rem; font-style:normal; font-weight:800; }
.impact-library-jump { display:inline-block; margin-top:24px; }
@media(max-width:991.98px){.impact-featured-grid{grid-template-columns:1fr}.impact-featured-card{min-height:210px}}
