/*
Theme Name: Global Rotaract
Theme URI: https://globalrotaract.org
Author: The Rotaract Club of Newport Beach
Description: Block theme for The Rotaract Club of Newport Beach, a Rotaract Global Service Club. Includes the home page (what we are creating, scholarship seats, top 10 reasons to join) and a built in scholarship application form that saves each application in the dashboard and emails the site admin.
Requires at least: 6.4
Tested up to: 6.8
Requires PHP: 7.4
Version: 1.8.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: globalrotaract
*/

:root {
	--rc-navy: #1b2a4a;
	--rc-rose: #d93d75;
	--rc-gold: #f2a93b;
	--rc-orange: #eb7a3a;
	--rc-green: #6bb43f;
	--rc-on-navy-soft: #c9d3e8;
	--rc-line: #dde2ee;
	--rc-muted: #56617a;
	--rc-err: #b42318;
	--rc-ok: #2f7d32;
}

html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
:where(h1, h2, h3) { text-wrap: balance; }
:focus-visible { outline: 3px solid #2f6fe0; outline-offset: 2px; }
[id] { scroll-margin-top: 90px; }

.eyebrow { font-size: 0.78rem; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; color: var(--wp--preset--color--accent); margin-bottom: 0.5rem; }
.is-navy .eyebrow { color: var(--rc-gold); }
.lede { color: var(--rc-muted); max-width: 62ch; font-size: 1.08rem; }
.is-navy .lede, .is-navy p { color: var(--rc-on-navy-soft); }
.is-navy h1, .is-navy h2, .is-navy h3 { color: #fff; }

/* Header */
.rc-header { position: sticky; top: 0; z-index: 50; }
.admin-bar .rc-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .rc-header { top: 0; position: relative; } }
.rc-brand { display: flex; align-items: center; gap: 12px; color: #fff; text-decoration: none; }
.rc-brand b { font-family: var(--wp--preset--font-family--display); font-weight: 800; font-size: 1.05rem; display: block; line-height: 1.1; }
.rc-brand small { color: var(--rc-on-navy-soft); font-size: 0.75rem; letter-spacing: 0.06em; }
.rc-tiles { display: grid; grid-template-columns: repeat(2, 1fr); gap: 4px; width: 46px; flex: none; }
.rc-tiles span { aspect-ratio: 1; border-radius: 5px; display: grid; place-items: center; font: 800 0.8rem/1 var(--wp--preset--font-family--display); color: #fff; }
.rc-t4 { background: var(--rc-gold); } .rc-t7 { background: var(--rc-orange); } .rc-t8 { background: var(--rc-rose); } .rc-t17 { background: var(--rc-green); }
.rc-nav { display: flex; gap: 20px; align-items: center; flex-wrap: wrap; margin: 0; }
.rc-nav a { color: var(--rc-on-navy-soft); text-decoration: none; font-weight: 600; font-size: 0.95rem; }
.rc-nav a:hover { color: #fff; }
.rc-nav a.rc-pill { background: var(--rc-rose); color: #fff; padding: 8px 16px; border-radius: 999px; }
@media (max-width: 760px) { .rc-nav a:not(.rc-pill) { display: none; } }

/* Hero */
.rc-hero { position: relative; overflow: hidden; }
.rc-hero h1 em { font-style: normal; color: var(--rc-rose); }
.rc-hero .rc-ghost .wp-block-button__link { background: transparent; border: 2px solid rgba(255,255,255,0.45); color: #fff; }
.rc-frame img { background: #fff; padding: 12px; border-radius: 14px; box-shadow: 0 20px 50px rgba(0,0,0,0.35); }
.rc-frame figcaption { color: var(--rc-on-navy-soft); text-align: center; font-size: 0.85rem; }
.rc-waves { position: absolute; left: 0; right: 0; bottom: 0; width: 100%; height: 90px; display: block; margin: 0 !important; }
.rc-waves svg { width: 100%; height: 90px; display: block; }

/* Stats */
.rc-stats { margin-top: -44px !important; position: relative; z-index: 2; background: #fff; border: 1px solid var(--rc-line); border-radius: 16px; box-shadow: 0 10px 30px rgba(20,30,60,0.08); gap: 0 !important; }
.rc-stats > .wp-block-column { padding: 22px 24px; border-left: 1px solid var(--rc-line); }
.rc-stats > .wp-block-column:first-child { border-left: 0; }
.rc-num { font: 800 2.2rem/1 var(--wp--preset--font-family--display); margin: 0; font-variant-numeric: tabular-nums; }
.rc-stats p:not(.rc-num) { color: var(--rc-muted); font-size: 0.92rem; margin-top: 6px; }
@media (max-width: 781px) { .rc-stats > .wp-block-column { border-left: 0; border-top: 1px solid var(--rc-line); } .rc-stats > .wp-block-column:first-child { border-top: 0; } }

/* Cards */
.rc-card { background: #fff; border: 1px solid var(--rc-line); border-radius: 16px; padding: 26px; }
.rc-card ul { color: var(--rc-muted); }
.rc-tags { display: flex; gap: 8px; flex-wrap: wrap; }
.rc-tags span { font-size: 0.82rem; font-weight: 700; padding: 5px 12px; border-radius: 999px; background: #fbe6ee; color: var(--wp--preset--color--accent); }
.rc-big { font: 800 2.6rem/1 var(--wp--preset--font-family--display); margin: 0; }
.rc-fw .wp-block-column:nth-child(1) .rc-big { color: var(--rc-gold); }
.rc-fw .wp-block-column:nth-child(2) .rc-big { color: var(--rc-orange); }
.rc-fw .wp-block-column:nth-child(3) .rc-big { color: var(--rc-rose); }
.rc-fw .wp-block-column:nth-child(4) .rc-big { color: var(--rc-green); }
.rc-fw p:not(.rc-big) { color: var(--rc-muted); font-size: 0.95rem; }
.rc-reef { border-radius: 16px; }
.rc-sdg14 { background: #0a97d9; color: #fff; border-radius: 10px; width: 88px; height: 88px; display: grid; place-items: center; text-align: center; font: 800 1.9rem/1 var(--wp--preset--font-family--display); }
.rc-sdg14 small { display: block; font: 700 0.6rem/1.2 var(--wp--preset--font-family--body); letter-spacing: 0.04em; text-transform: uppercase; margin-top: 4px; }

/* Seats */
.rc-legend { display: grid; gap: 14px; }
.rc-legend div { display: flex; gap: 12px; align-items: flex-start; }
.rc-dot { width: 18px; height: 18px; border-radius: 5px; flex: none; margin-top: 4px; }
.rc-dot.s, .rc-seats i.s { background: var(--rc-gold); }
.rc-dot.p, .rc-seats i.p { border: 2px solid var(--rc-muted); }
.rc-seats-box { background: #fff; border: 1px solid var(--rc-line); border-radius: 16px; padding: 18px; overflow-x: auto; }
table.rc-seats { border-collapse: collapse; width: 100%; font-size: 0.9rem; margin: 0; }
.rc-seats td { padding: 5px 6px; border: 0; border-top: 1px solid var(--rc-line); vertical-align: middle; }
.rc-seats tr:first-child td { border-top: 0; }
.rc-seats .n { width: 34px; text-align: center; color: #fff; font: 800 0.85rem/1 var(--wp--preset--font-family--display); border-radius: 6px; padding: 7px 0; }
.rc-seats .g { white-space: nowrap; padding-left: 10px; }
.rc-seats .d { display: flex; gap: 5px; justify-content: flex-end; }
.rc-seats i { width: 16px; height: 16px; border-radius: 4px; display: block; box-sizing: border-box; }
.rc-seats-foot { display: flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; color: var(--rc-muted); font-size: 0.88rem; margin-top: 12px; }

/* Top ten */
ol.rc-ten { list-style: none; padding: 0; margin: 0; counter-reset: r; display: grid; grid-template-columns: 1fr 1fr; gap: 0 48px; }
ol.rc-ten > li { counter-increment: r; position: relative; padding: 22px 0 22px 72px; border-top: 1px solid var(--rc-line); color: var(--rc-muted); }
ol.rc-ten > li::before { content: counter(r); position: absolute; left: 0; top: 20px; width: 56px; font: 800 2.2rem/1 var(--wp--preset--font-family--display); color: var(--wp--preset--color--accent); }
ol.rc-ten > li strong { display: block; color: var(--wp--preset--color--ink); font-family: var(--wp--preset--font-family--display); font-size: 1.15rem; font-weight: 600; margin-bottom: 4px; }
@media (max-width: 820px) { ol.rc-ten { grid-template-columns: 1fr; } }
.rc-travel { background: #fbe6ee; border-radius: 14px; }

/* Application form */
.rc-form, .rc-done { background: #fff; color: var(--wp--preset--color--ink); border-radius: 18px; padding: 28px; display: grid; gap: 18px; }
.rc-form fieldset { border: 0; padding: 0; margin: 0; display: grid; gap: 14px; min-width: 0; }
.rc-form legend { font: 600 1.15rem/1.2 var(--wp--preset--font-family--display); padding: 0; margin-bottom: 4px; color: var(--wp--preset--color--ink); }
.rc-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
@media (max-width: 560px) { .rc-row { grid-template-columns: 1fr; } }
.rc-field { display: grid; gap: 6px; min-width: 0; }
.rc-form label { font-weight: 600; font-size: 0.92rem; color: var(--wp--preset--color--ink); }
.rc-form .opt { color: var(--rc-muted); font-weight: 500; }
.rc-form input[type=text], .rc-form input[type=email], .rc-form input[type=tel], .rc-form select, .rc-form textarea { font: inherit; font-size: 1rem; color: var(--wp--preset--color--ink); background: #f6f7fb; border: 1.5px solid var(--rc-line); border-radius: 10px; padding: 11px 12px; width: 100%; box-sizing: border-box; }
.rc-form textarea { min-height: 140px; resize: vertical; }
.rc-form .rc-invalid { border-color: var(--rc-err) !important; }
.rc-form .hint, .rc-done p { color: var(--rc-muted) !important; font-size: 0.86rem; margin: 0; }
.rc-choice { display: grid; gap: 10px; }
.rc-choice label { display: flex; gap: 10px; align-items: flex-start; font-weight: 500; background: #f6f7fb; border: 1.5px solid var(--rc-line); border-radius: 10px; padding: 12px 14px; cursor: pointer; }
.rc-choice b { display: block; }
.rc-form input[type=radio], .rc-form input[type=checkbox] { margin-top: 5px; accent-color: var(--rc-rose); }
.rc-check { display: flex; gap: 10px; align-items: flex-start; font-weight: 500 !important; }
.rc-errors { color: var(--rc-err) !important; font-weight: 600; font-size: 0.92rem; margin: 0; }
.rc-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.rc-submit { justify-self: start; font: 700 1rem/1 var(--wp--preset--font-family--body); padding: 14px 22px; border-radius: 999px; border: 0; background: var(--rc-rose); color: #fff; cursor: pointer; }
.rc-submit:hover { filter: brightness(1.08); }
.rc-done .eyebrow { color: var(--rc-ok) !important; }
.rc-done h3 { color: var(--wp--preset--color--ink) !important; margin: 0; }
.rc-who { font-size: 1.5rem !important; font-weight: 800 !important; }
.rc-reef h3 { font-size: 1.4rem !important; }
.is-navy li { color: var(--rc-on-navy-soft); }
.is-navy .rc-form li { color: inherit; }

/* Strategic partners */
.rc-banner-link img { border-radius: 18px; box-shadow: 0 16px 40px rgba(20,30,60,0.18); transition: transform 0.2s; width: 100%; height: auto; }
.rc-banner-link a:hover img { transform: translateY(-3px); }
.rc-banner-link figcaption { text-align: center; color: var(--rc-muted); }
.rc-feature { background: #fff; border: 1px solid var(--rc-line); border-radius: 18px; overflow: hidden; }
.rc-feature-photo { margin: 0; height: 100%; }
.rc-feature-photo img { width: 100%; height: 100%; min-height: 320px; object-fit: cover; display: block; }
.rc-feature-text { padding: 32px 36px; }
.rc-feature .is-style-outline .wp-block-button__link { background: transparent; color: var(--wp--preset--color--accent); border: 2px solid currentColor; }
.rc-panama { border-radius: 18px; background-image: radial-gradient(circle at 90% 10%, rgba(10,151,217,0.35), transparent 55%); }
.rc-panama h2, .rc-panama p:not(.eyebrow) { max-width: 60ch; }
.rc-panama .rc-ghost .wp-block-button__link { background: transparent; border: 2px solid rgba(255,255,255,0.45); color: #fff; }
.rc-sites { gap: 16px !important; }
.rc-site { display: grid; gap: 6px; align-content: start; }
.rc-site h3 { margin: 0; }
.rc-site h3 a { color: var(--wp--preset--color--ink); text-decoration: none; }
.rc-site h3 a:hover { color: var(--wp--preset--color--accent); }
.rc-site p { color: var(--rc-muted); margin: 0; font-size: 0.95rem; }
.rc-site .rc-url { color: var(--wp--preset--color--accent); font-size: 0.82rem; font-weight: 600; overflow-wrap: anywhere; }
.rc-site { border-top: 4px solid var(--rc-gold); }
.rc-site:nth-child(4n+2) { border-top-color: var(--rc-orange); }
.rc-site:nth-child(4n+3) { border-top-color: var(--rc-rose); }
.rc-site:nth-child(4n+4) { border-top-color: var(--rc-green); }
.rc-panama ul { max-width: 60ch; }
.rc-gallery { margin-top: 24px !important; gap: 10px !important; }
.rc-gallery img { border-radius: 10px; aspect-ratio: 4 / 3; object-fit: cover; }

/* Layout fixes */
.lede { max-width: min(1120px, 100%) !important; box-sizing: border-box; padding-right: max(0px, calc(100% - 64ch)); }
.rc-legend p { margin: 0; }
.rc-travel { box-sizing: border-box; }
.rc-reef { flex-wrap: nowrap !important; gap: 24px !important; }
@media (max-width: 600px) { .rc-reef { flex-wrap: wrap !important; } }
.rc-fw h3 { font-size: 1.15rem !important; }
.rc-site h3 { font-size: 1.3rem !important; }
.rc-feature > .wp-block-column:first-child { align-self: stretch; }
.rc-feature-photo, .rc-feature-photo a { display: block; height: 100%; }
.rc-panama .rc-gallery { margin-left: 0 !important; margin-right: 0 !important; padding: 0 !important; }
.rc-gallery.wp-block-gallery { margin-left: 0 !important; margin-right: 0 !important; }
.wp-site-blocks > * + * { margin-block-start: 0 !important; }
.rc-waves { max-width: none !important; }
@media (max-width: 520px) { .rc-brand small { display: none; } .rc-brand b { font-size: 0.95rem; } }

/* Map */
.rc-map-wrap { display: grid; gap: 12px; }
.rc-map-tabs { display: flex; gap: 8px; flex-wrap: wrap; }
.rc-map-tab { font: 700 0.92rem/1 var(--wp--preset--font-family--body); padding: 10px 16px; border-radius: 999px; border: 2px solid var(--rc-line); background: #fff; color: var(--wp--preset--color--ink); cursor: pointer; }
.rc-map-tab.is-active { background: var(--rc-navy); border-color: var(--rc-navy); color: #fff; }
.rc-map { height: 480px; border-radius: 18px; border: 1px solid var(--rc-line); background: #cfe6f2; z-index: 0; }
@media (max-width: 600px) { .rc-map { height: 380px; } }
.rc-pin span { display: block; width: 22px; height: 22px; border-radius: 50%; border: 3px solid #fff; box-shadow: 0 2px 8px rgba(0,0,0,0.35); }
.rc-map .leaflet-popup-content { font-family: var(--wp--preset--font-family--body); margin: 14px 16px; }
.rc-map .leaflet-popup-content strong { display: block; font-size: 1rem; color: var(--wp--preset--color--ink); }
.rc-map .leaflet-popup-content p { margin: 6px 0 8px; color: var(--rc-muted); }
.rc-map .leaflet-popup-content a { color: var(--wp--preset--color--accent); font-weight: 700; }

/* Official Rotaract logo header (white, so the cranberry mark is used as supplied) */
.rc-header { border-bottom: 1px solid var(--rc-line); }
.rc-logo { display: block; height: 66px; width: auto; max-width: 100%; }
.rc-header .rc-nav a { color: var(--wp--preset--color--ink); }
.rc-header .rc-nav a:hover { color: var(--wp--preset--color--accent); }
.rc-header .rc-nav a.rc-pill { color: #fff; }
@media (max-width: 600px) { .rc-logo { height: 48px; } }

/* Rotaractors at work mosaic */
.rc-mosaic figure { position: relative; margin: 0; border-radius: 16px; overflow: hidden; }
.rc-mosaic img { display: block; width: 100%; object-fit: cover; }
.rc-mosaic-tall img { height: 572px; }
.rc-mosaic-stack { display: grid; gap: 12px; }
.rc-mosaic-stack img { height: 280px; }
.rc-mosaic figcaption { position: absolute; left: 0; right: 0; bottom: 0; margin: 0; padding: 28px 16px 12px; color: #fff; font-size: 0.88rem; font-weight: 600; text-align: left; background: linear-gradient(transparent, rgba(15, 22, 38, 0.82)); }
@media (max-width: 781px) { .rc-mosaic-tall img { height: 420px; } .rc-mosaic-stack img { height: 240px; } }

.rc-work-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 12px; }
.rc-work-grid img { height: 260px; }
@media (max-width: 781px) { .rc-work-grid { grid-template-columns: minmax(0, 1fr); } .rc-work-grid img { height: 240px; } }
.rc-work-grid img[src*="temple-blessing"] { object-position: center 35%; }
.rc-work-grid img[src*="47817-presentation"] { object-position: left center; }
.rc-macaw-photo { position: relative; }
.rc-macaw-photo figcaption { position: absolute; left: 0; right: 0; bottom: 0; margin: 0; padding: 24px 16px 10px; color: #fff; font-size: 0.8rem; text-align: left; background: linear-gradient(transparent, rgba(15, 22, 38, 0.75)); }
.rc-macaw-photo figcaption a { color: #fff; }

/* Our big goals story */
.rc-goals { border-radius: 18px; background-image: radial-gradient(circle at 92% 8%, rgba(107, 180, 63, 0.35), transparent 50%), radial-gradient(circle at 5% 95%, rgba(10, 151, 217, 0.3), transparent 50%); }
.rc-goals h2 { max-width: 22ch; }
.rc-goal { background: rgba(255, 255, 255, 0.06); border: 1px solid rgba(255, 255, 255, 0.14); border-radius: 16px; padding: 0 0 22px; overflow: hidden; min-width: 0; }
.rc-goal figure { margin: 0 0 18px; }
.rc-goal img { display: block; width: 100%; height: 260px; object-fit: cover; }
.rc-goal h3, .rc-goal p { padding: 0 24px; }
.rc-timeline { list-style: none; margin: 18px 0 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.rc-timeline li { border-top: 3px solid var(--rc-gold); padding-top: 12px; color: var(--rc-on-navy-soft); }
.rc-timeline li:last-child { border-top-color: #6bb43f; }
.rc-timeline b { display: block; color: #fff; font-family: var(--wp--preset--font-family--display, inherit); font-size: 1.6rem; line-height: 1.1; margin-bottom: 6px; }
.rc-timeline span { font-size: 0.95rem; }
.rc-goals-close { margin-top: 32px; font-size: 1.15rem; max-width: 60ch; }
.rc-goals .rc-goals-close strong { color: #fff; }
.rc-goals .rc-ghost .wp-block-button__link { background: transparent; border: 2px solid rgba(255, 255, 255, 0.45); color: #fff; }
@media (max-width: 781px) { .rc-goals { padding-left: 22px !important; padding-right: 22px !important; } .rc-timeline { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } .rc-goal img { height: 220px; } .rc-goal h3, .rc-goal p { padding: 0 18px; } }
.rc-goal-news { margin: 18px 24px 0 !important; padding: 14px 16px !important; border-left: 3px solid var(--rc-gold); background: rgba(255, 255, 255, 0.07); border-radius: 0 10px 10px 0; }
.is-navy .rc-goal-news strong { color: #fff; }
.rc-feature .rc-goal-news { margin: 18px 0 !important; background: #fff7ec; color: var(--wp--preset--color--ink); }
@media (max-width: 781px) { .rc-goals .rc-goal-news { margin: 18px 18px 0 !important; } }
.is-navy .rc-goal a { color: #fff; }

/* Header: tighter nav and a mobile menu */
.rc-header .rc-nav { gap: 16px; }
.rc-header .rc-nav a { font-size: 0.9rem; }
.rc-menu { display: none; position: relative; }
.rc-menu summary { list-style: none; cursor: pointer; font-weight: 700; font-size: 0.95rem; color: var(--wp--preset--color--ink); border: 1.5px solid var(--rc-line); border-radius: 999px; padding: 8px 16px; }
.rc-menu summary::-webkit-details-marker { display: none; }
.rc-menu nav { position: absolute; right: 0; top: calc(100% + 8px); background: #fff; border: 1px solid var(--rc-line); border-radius: 14px; box-shadow: 0 12px 30px rgba(20, 30, 60, 0.14); padding: 8px; display: grid; min-width: 200px; z-index: 60; }
.rc-menu nav a { color: var(--wp--preset--color--ink); text-decoration: none; font-weight: 600; padding: 10px 12px; border-radius: 8px; }
.rc-menu nav a:hover { background: #f6f7fb; }
@media (max-width: 1180px) { .rc-header .rc-nav a:not(.rc-pill) { display: none; } .rc-menu { display: block; } }
@media (max-width: 1180px) { .rc-header .alignwide { gap: 10px; } .rc-header .alignwide > .rc-nav { margin-left: auto; } }

/* Meetings and projects */
.rc-events-label { font-size: 1rem; margin: 32px 0 12px; color: var(--rc-muted); text-transform: uppercase; letter-spacing: 0.08em; }
.rc-events { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.rc-events-two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.rc-event { background: #fff; border: 1px solid var(--rc-line); border-radius: 16px; padding: 22px 24px; border-top: 4px solid var(--rc-gold); }
.rc-event-trip { border-top-color: var(--rc-rose); }
.rc-event h3 { font-size: 1.2rem; margin: 4px 0 8px; }
.rc-event p { margin: 0; color: var(--rc-muted); }
.rc-event .rc-event-when { font-weight: 700; font-size: 0.85rem; color: var(--wp--preset--color--accent); text-transform: uppercase; letter-spacing: 0.06em; }
@media (max-width: 781px) { .rc-events, .rc-events-two { grid-template-columns: minmax(0, 1fr); } }

/* FAQ */
.rc-faq { display: grid; gap: 10px; }
.rc-faq details { background: #fff; border: 1px solid var(--rc-line); border-radius: 14px; padding: 0 20px; }
.rc-faq summary { cursor: pointer; font-weight: 700; padding: 16px 28px 16px 0; position: relative; list-style: none; }
.rc-faq summary::-webkit-details-marker { display: none; }
.rc-faq summary::after { content: "+"; position: absolute; right: 0; top: 12px; font-size: 1.4rem; color: var(--wp--preset--color--accent); }
.rc-faq details[open] summary::after { content: "\2212"; }
.rc-faq details p { margin: 0 0 16px; color: var(--rc-muted); }

/* Contact */
.rc-contact-form, #contact .rc-done { border: 1px solid var(--rc-line); }
.rc-sponsor { margin-top: 24px; border-top: 4px solid var(--rc-rose); }
.rc-sponsor h3 { margin-top: 0; }

/* Reef video */
.rc-video { display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr); gap: 28px; align-items: center; margin-top: 20px; background: var(--rc-navy); color: #fff; border-radius: 18px; padding: 28px; }
.rc-video h3 { color: #fff; margin: 4px 0 10px; font-size: 1.5rem; }
.rc-video p { color: var(--rc-on-navy-soft); margin: 0; }
.rc-video .eyebrow { color: var(--rc-gold); }
.rc-video-frame { position: relative; aspect-ratio: 16 / 9; border-radius: 12px; overflow: hidden; background: #0d1626; }
.rc-video-frame iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
@media (max-width: 781px) { .rc-video { grid-template-columns: minmax(0, 1fr); padding: 20px; } }

/* Mentors */
.rc-mentors { list-style: none; margin: 28px 0 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.rc-mentors li { display: flex; align-items: center; gap: 14px; background: #fff; border: 1px solid var(--rc-line); border-radius: 14px; padding: 14px 16px; }
.rc-avatar { flex: 0 0 auto; width: 48px; height: 48px; border-radius: 50%; display: grid; place-items: center; color: #fff; font-weight: 800; font-family: var(--wp--preset--font-family--display, inherit); }
.rc-avatar-0 { background: var(--rc-rose); }
.rc-avatar-1 { background: var(--rc-navy); }
.rc-avatar-2 { background: #6bb43f; }
.rc-avatar-3 { background: #0a97d9; }
.rc-mentor-name { font-weight: 700; color: var(--wp--preset--color--ink); }
@media (max-width: 900px) { .rc-mentors { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 480px) { .rc-mentors { grid-template-columns: minmax(0, 1fr); } }
.rc-header .rc-nav a.rc-lang, .rc-menu nav a.rc-lang { font-weight: 600; opacity: .85; }
.rc-header .rc-nav a.rc-lang { border: 1px solid currentColor; border-radius: 999px; padding: 6px 12px; }
