.azc_tsh_toggle, .azc_tsh_toggle_open, .azc_tsh_toggle_active, .azc_tsh_toggle_open_active {
margin: 5px 0px 0px 0px !important;
border: 1px solid #007fff;
font-weight:600;
font-size: 14px;
padding: 10px 10px 10px 30px;
background-repeat: no-repeat;
background-position: 10px 10px;
user-select: none;
-webkit-user-select: none;
-moz-user-select: none;
}
.azc_tsh_toggle {
background-image: url(//www.jhtc.org/wp-content/plugins/azurecurve-toggle-showhide/images/azure_plus.png) ;
}
.azc_tsh_toggle_open {
background-image: url(//www.jhtc.org/wp-content/plugins/azurecurve-toggle-showhide/images/azure_plus.png) !important;
}
.azc_tsh_toggle_active {
background-image: url(//www.jhtc.org/wp-content/plugins/azurecurve-toggle-showhide/images/azure_minus.png) !important;
}
.azc_tsh_toggle_open_active {
background-image: url(//www.jhtc.org/wp-content/plugins/azurecurve-toggle-showhide/images/azure_minus.png);
}
.azc_tsh_toggle a,.azc_tsh_toggle_open a, .azc_tsh_toggle_open_active a {
color: #000;
}
.azc_tsh_toggle_container, .azc_tsh_toggle_container_open {
margin: auto;
margin-bottom: 5px !important;
padding: 5px 15px;
border-right: 1px solid #007fff;
border-bottom: 1px solid #007fff;
border-left: 1px solid #007fff;
overflow: auto;
}@import url("https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400&family=DM+Sans:wght@300;400;500;600&display=swap"); :root {
--text: #1a1a1a;
--text-muted: #5a5a5a;
--prim: var(--ast-global-color-0);
--light-prim: var(--ast-global-color-1);
--navy: var(--ast-global-color-2);
--dark-navy: var(--ast-global-color-3);
--b: var(--ast-global-color-4);
--bright-blue: var(--ast-global-color-5);
--cream: var(--ast-global-color-6);
--border: var(--ast-global-color-7);
--tint-blue: var(--ast-global-color-8);
--ast-global-color-0: #ff8957;
--ast-global-color-1: #ffa985;
--ast-global-color-2: #1b3a6b;
--ast-global-color-3: #1a3560;
--ast-global-color-4: #0072ce;
--ast-global-color-5: #00b0ff;
--ast-global-color-6: #fdfbf7;
--ast-global-color-7: #e2e8f0;
--ast-global-color-8: #1d4e89;
}
*, *::before, *::after {
box-sizing: border-box;
margin: 0;
padding: 0;
font-family: 'DM Sans', sans-serif;
}
html {
scroll-behavior: smooth;
overflow-x: hidden;
width: 100%;
}
body {
width: 100%;
overflow-x: hidden;
font-family: 'DM Sans', sans-serif;
color: var(--text);
background: var(--white);
font-size: 16px;
line-height: 1.7;
}
body a, 
body a:hover {
color: var(--prim);
}
img {
max-width: 100%;
height: auto;
display: block;
}
::selection {
background: var(--light-prim);
} section {
padding: 80px 40px;
width: 100%;
display: block;
}
.section-inner {
max-width: 1100px;
margin: 0 auto;
width: 100%;
box-sizing: border-box;
}
.section-label {
font-size: 16px;
font-weight: 600;
letter-spacing: 0.15em;
text-transform: uppercase;
color: var(--prim);
margin-bottom: 12px;
}
.section-title {
font-family: 'Playfair Display', serif;
font-size: 36px;
font-weight: 700;
color: var(--navy);
line-height: 1.25;
margin-bottom: 16px;
}
.section-sub {
font-size: 17px;
color: var(--text-muted);
max-width: 640px;
line-height: 1.75;
font-weight: 400;
margin-bottom: 8px;
}
.divider {
width: 48px;
height: 3px;
background: linear-gradient(90deg, var(--prim), rgba(232, 81, 18, 0.4));
border-radius: 2px;
margin: 20px 0 40px;
}
.two-col {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 48px;
align-items: start;
}
.three-col {
display: grid;
grid-template-columns: repeat(3, 1fr);
margin-top: 40px;
gap: 24px;
} .board-grid,
.advisors-grid {
display: grid;
grid-template-columns: repeat(5, 1fr);
gap: 20px;
margin-top: 36px;
}
.board-card,
.advisor-card {
text-align: center;
}
.board-card img,
.advisor-card img {
border-radius: 50%;
object-fit: cover;
margin: 10px auto 0;
}
.board-card img {
width: 80px;
height: 80px;
border: 3px solid var(--border);
}
.advisor-card img {
width: 70px;
height: 70px;
border: 2px solid var(--border);
margin-bottom: 8px;
}
.board-card .name,
.advisor-card .name {
font-weight: 600;
color: var(--navy);
}
.board-card .name {
font-size: 16px;
}
.advisor-card .name {
font-size: 16px;
}
.board-card .role {
font-size: 15px;
color: var(--text-muted);
margin-top: 2px;
}
.faq-list {
display: flex;
flex-direction: column;
gap: 0;
margin-top: 36px;
}
.faq-item {
border-bottom: 1px solid var(--border);
padding: 20px 0;
}
.faq-item h3 {
font-size: 24px;
font-weight: 600;
color: var(--navy);
margin-bottom: 10px;
}
.faq-item p,
.history-block p {
font-size: 16px;
color: var(--text-muted);
line-height: 1.7;
}
.history-block {
background: var(--cream);
border-left: 4px solid var(--prim);
padding: 24px 28px;
border-radius: 0 6px 6px 0;
margin-bottom: 24px;
}
.history-block h3 {
font-family: 'Playfair Display', serif;
font-size: 24px;
color: var(--navy);
margin-bottom: 10px;
font-weight: 600;
} .top-bar {
background: var(--navy);
padding: 0;
width: 100%;
}
.top-bar-inner {
max-width: 1100px;
margin: 0 auto;
padding: 8px 40px;
display: flex;
justify-content: flex-end;
align-items: center;
gap: 16px;
width: 100%;
}
.top-bar-inner span {
color: var(--white);
font-size: 16px;
font-weight: 500;
letter-spacing: 0.1em;
text-transform: uppercase;
margin-right: 8px;
}
.top-bar-inner a {
color: var(--white);
text-decoration: none;
transition: color 0.2s;
display: flex;
align-items: center;
}
.top-bar-inner a:hover {
color: var(--prim);
}
.top-bar-inner svg {
width: 18px;
height: 18px;
fill: currentColor;
}
.main-header-bar {
background: var(--white);
border-bottom: 1px solid var(--border);
padding: 0;
position: sticky;
top: 0;
z-index: 100;
box-shadow: 0 2px 12px rgba(27, 58, 107, 0.06);
width: 100%;
}
.nav-inner {
max-width: 1100px;
margin: 0 auto;
padding: 0 40px;
display: flex;
align-items: center;
justify-content: space-between;
}
.nav-logo,
.site-branding,
.ast-header-break-point .header-main-layout-1 .site-branding {
padding: 16px 0;
display: flex;
align-items: center;
text-decoration: none;
flex-shrink: 0;
}
.nav-logo img {
height: 52px;
width: auto;
}
header .site-branding .custom-logo-link img {
max-width: 90px;
width: 100%;
height: auto;
image-rendering: -webkit-optimize-contrast;
}
.header-main-layout-1 .main-navigation {
vertical-align: middle;
}
.nav-links,
.menu-item {
display: flex;
align-items: center;
list-style: none;
}
.nav-links a,
.menu-item a.menu-link {
display: block;
padding: 20px 11px;
font-size: 14px;
font-weight: 500;
letter-spacing: 0.04em;
text-transform: uppercase;
color: var(--text-muted);
text-decoration: none;
transition: color 0.2s;
border-bottom: 2px solid transparent;
white-space: nowrap;
line-height: 1;
}
.nav-links a:hover,
.nav-links a.active,
.menu-item.current-menu-item a.menu-link,
.menu-item a.menu-link:hover {
color: var(--navy);
border-bottom-color: var(--prim);
}
.nav-cta {
background: var(--prim) !important;
color: var(--navy) !important;
padding: 10px 16px !important;
border-radius: 4px;
font-weight: 600 !important;
border-bottom: none !important;
margin-left: 10px;
}
.nav-cta:hover {
background: var(--light-prim) !important;
}
.main-header-menu .menu-item:hover > .menu-link,
.main-header-menu .menu-item:hover > .ast-menu-toggle,
.main-header-menu .ast-masthead-custom-menu-items a:hover,
.main-header-menu .menu-item.focus > .menu-link,
.main-header-menu .menu-item.focus > .ast-menu-toggle,
.main-header-menu .current-menu-item > .menu-link,
.main-header-menu .current-menu-ancestor > .menu-link,
.main-header-menu .current-menu-item > .ast-menu-toggle,
.main-header-menu .current-menu-ancestor > .ast-menu-toggle {
color: var(--text);
}
.banner-buttons {
display: flex;
gap: 15px;
flex-wrap: wrap;
} .btn-primary {
background-color: var(--prim) !important;
border: none !important;
color: var(--navy) !important;
padding: 14px 28px;
border-radius: 4px;
font-weight: 600;
font-size: 16px;
text-decoration: none;
letter-spacing: 0.05em;
transition: all 0.2s;
display: inline-block;
}
.btn-primary:hover {
background: var(--light-prim) !important;
color: var(--navy) !important;
text-decoration: none;
}
.btn-navy {
background: var(--navy);
color: var(--white);
padding: 13px 26px;
border-radius: 4px;
font-weight: 600;
font-size: 16px;
text-decoration: none;
transition: all 0.2s;
display: inline-block;
}
.btn-navy:hover {
background: var(--dark-navy);
}
.btn-outline-navy {
border: 1.5px solid var(--navy);
color: var(--navy);
padding: 12px 26px;
border-radius: 4px;
font-weight: 500;
font-size: 16px;
text-decoration: none;
transition: all 0.2s;
display: inline-block;
}
.btn-outline-navy:hover {
background: var(--navy);
color: var(--white);
}
.btn-outline {
border: 1.5px solid var(--white);
color: var(--white);
padding: 14px 28px;
border-radius: 4px;
font-weight: 500;
font-size: 16px;
text-decoration: none;
transition: all 0.2s;
display: inline-block;
}
.btn-outline:hover {
border-color: var(--prim);
color: var(--prim);
}
.btn-group {
position: relative;
display: -ms-inline-flexbox;
display: flex !important;
vertical-align: middle !important;
justify-content: flex-start;
gap: 20px;
flex-wrap: wrap;
} .page-hero,
.fn-hero {
background: linear-gradient(316deg, var(--bright-blue) 0%, var(--b) 30%, var(--navy) 100%);
padding: 80px 40px;
width: 100%;
}
.page-hero-inner {
max-width: 1100px;
margin: 0 auto;
width: 100%;
}
.page-tag,
.hero-tag {
display: inline-block;
background: rgba(201, 168, 76, 0.2);
color: var(--light-prim);
font-size: 14px;
font-weight: 600;
letter-spacing: 0.15em;
text-transform: uppercase;
padding: 6px 14px;
border-radius: 2px;
margin-bottom: 20px;
border: 1px solid rgba(201, 168, 76, 0.3);
}
.page-hero h1 {
font-family: 'Playfair Display', serif;
font-size: 44px;
font-weight: 700;
color: var(--white);
line-height: 1.2;
margin-bottom: 16px;
}
.page-hero p {
color: var(--white);
font-size: 17px;
max-width: 600px;
font-weight: 400;
line-height: 1.7;
}
.hero, .jya-hero {
background: linear-gradient(316deg, var(--bright-blue) 0%, var(--b) 30%, var(--navy) 100%);
padding: 80px 40px 90px;
position: relative;
overflow: hidden;
width: 100%;
}
.hero::before {
content: '';
position: absolute;
top: -60px;
right: -60px;
width: 400px;
height: 400px;
background: radial-gradient(circle, rgba(201, 168, 76, 0.12) 0%, transparent 70%);
pointer-events: none;
}
.hero-inner {
max-width: 1100px;
margin: 0 auto;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 60px;
align-items: center;
}
.hero h1 {
font-family: 'Playfair Display', serif;
font-size: 52px;
font-weight: 700;
color: var(--white);
line-height: 1.15;
margin-bottom: 20px;
}
.hero h1 em {
font-style: italic;
color: var(--prim);
}
.hero-desc {
color: var(--white);
font-size: 18px;
line-height: 1.75;
margin-bottom: 36px;
font-weight: 300;
}
.hero-actions {
display: flex;
gap: 14px;
flex-wrap: wrap;
}
.hero-event-card {
background: rgba(255, 255, 255, 0.15);
border: 1px solid rgba(255, 255, 255, 0.25);
border-radius: 8px;
padding: 36px 32px;
}
.event-card-label {
font-size: 16px;
font-weight: 600;
letter-spacing: 0.15em;
text-transform: uppercase;
color: var(--prim);
margin-bottom: 12px;
}
.event-card-title {
font-family: 'Playfair Display', serif;
font-size: 24px;
color: var(--white);
line-height: 1.3;
margin-bottom: 16px;
font-weight: 600;
}
.event-card-meta {
font-size: 16px;
color: var(--white);
margin-bottom: 24px;
display: flex;
flex-direction: column;
gap: 6px;
}
.event-card-meta span {
display: flex;
align-items: center;
gap: 8px;
}
.event-card-meta svg {
width: 14px;
height: 14px;
fill: none;
stroke: var(--prim);
stroke-width: 1.5;
}
.event-desc {
font-size: 16.5px;
color: var(--white);
margin-bottom: 20px;
line-height: 1.65;
}
.event-register-btn {
display: inline-block;
background: var(--prim);
color: var(--navy);
padding: 12px 24px;
border-radius: 4px;
font-weight: 600;
font-size: 16px;
text-decoration: none;
transition: all 0.2s;
}
.event-register-btn:hover {
background: var(--light-prim);
color: var(--navy);
}
.tagline-strip {
background: rgba(201, 168, 76, 0.15);
border: 1px solid rgba(201, 168, 76, 0.3);
border-radius: 4px;
display: inline-block;
padding: 8px 18px;
font-size: 16px;
font-style: italic;
color: var(--light-prim);
margin-top: 16px;
font-family: 'Playfair Display', serif;
font-weight: 600;
} .sponsors {
background: var(--cream);
}
.sponsors-featured {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 24px;
margin-top: 40px;
}
.sponsor-card-rich {
background: var(--white);
border: 1px solid var(--border);
border-radius: 8px;
overflow: hidden;
transition: box-shadow 0.2s, transform 0.2s;
text-decoration: none;
display: flex;
flex-direction: column;
}
.sponsor-card-rich:hover {
box-shadow: 0 8px 32px rgba(27, 58, 107, 0.1);
transform: translateY(-3px);
border-color: var(--prim);
}
.sponsor-card-rich-logo {
height: 140px;
display: flex;
align-items: center;
justify-content: center;
padding: 24px;
background: var(--cream);
border-bottom: 1px solid var(--border);
}
.sponsor-card-rich-logo img {
max-height: 90px;
max-width: 200px;
object-fit: contain;
}
.sponsor-card-rich-logo .sp-name-text {
font-family: 'Playfair Display', serif;
font-size: 22px;
font-weight: 700;
color: var(--navy);
text-align: center;
}
.sponsor-card-rich-body {
padding: 20px 22px;
flex: 1;
display: flex;
flex-direction: column;
}
.sponsor-card-rich-body h3 {
font-family: 'Playfair Display', serif;
font-size: 24px;
font-weight: 600;
color: var(--navy);
margin-bottom: 10px;
}
.sponsor-card-rich-body p {
font-size: 16px;
color: var(--text-muted);
line-height: 1.65;
flex: 1;
}
.sponsors-grid {
display: grid;
grid-template-columns: repeat(5, 1fr);
gap: 24px;
margin-top: 48px;
align-items: center;
}
.sponsor-card {
background: transparent;
border: none;
border-radius: 0;
padding: 8px 12px;
text-align: center;
transition: opacity 0.2s, transform 0.2s;
text-decoration: none;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 80px;
}
.sponsor-card:hover {
opacity: 0.8;
transform: translateY(-3px);
border-color: var(--prim);
}
.sponsor-card img {
width: 100%;
height: 60px;
object-fit: contain;
filter: none;
transition: opacity 0.2s;
margin: 0 auto;
display: block;
}
.sponsor-name {
font-size: 16px;
font-weight: 600;
color: var(--navy);
}
.sponsor-cta {
margin-top: 40px;
background: linear-gradient(-45deg, var(--b), var(--dark-navy));
border-radius: 8px;
padding: 40px;
display: flex;
justify-content: space-between;
align-items: center;
gap: 24px;
flex-wrap: wrap;
}
.sponsor-cta-text h3 {
font-family: 'Playfair Display', serif;
font-size: 24px;
color: var(--white);
margin-bottom: 10px;
font-weight: 600;
}
.sponsor-cta-text p {
font-size: 16px;
color: var(--white);
} .sponsors-bar {
background: var(--cream);
padding: 40px;
width: 100%;
display: block;
}
.sponsors-bar-inner {
margin: 0 auto;
text-align: center;
color: var(--navy);
font-family: 'Playfair Display', serif;
font-size: 20px;
line-height: 1.25;
font-weight: 600;
}
.sponsors-bar p {
font-size: 16px;
font-weight: 600;
letter-spacing: 0.12em;
text-transform: uppercase;
color: var(--text-muted);
margin-bottom: 20px;
}
.sponsors-logos {
display: flex;
justify-content: center;
align-items: center;
gap: 32px;
flex-wrap: wrap;
}
.sponsors-logos a img {
height: 36px;
width: auto;
object-fit: contain;
filter: grayscale(40%);
opacity: 0.8;
transition: all 0.2s;
}
.sponsors-logos a:hover img {
filter: grayscale(0%);
opacity: 1;
}
.marquee-track {
overflow: hidden;
width: 100%;
margin-top: 16px;
}
.marquee-inner {
display: flex;
align-items: center;
gap: 64px;
width: max-content;
animation: 24s linear infinite marquee;
padding: 0 32px;
}
.marquee-inner:hover {
animation-play-state: paused;
}
.marquee-logo img {
height: 64px;
width: auto;
max-width: 140px;
object-fit: contain;
filter: grayscale(20%);
opacity: 0.85;
transition: 0.2s;
display: block;
}
.marquee-logo:hover img {
filter: grayscale(0%);
opacity: 1;
transform: scale(1.05);
}
@keyframes marquee {
0% { transform: translateX(0); }
100% { transform: translateX(-50%); }
} .partners {
background: var(--cream);
}
.partner-box {
background: linear-gradient(-45deg, var(--b), var(--dark-navy));
border-radius: 8px;
padding: 40px;
}
.partner-box p {
color: rgba(255,255,255,0.75);
font-size: 16px;
line-height: 1.75;
margin-bottom: 20px;
}
.partner-box h3 {
font-family: 'Playfair Display', serif;
font-size: 24px;
color: var(--white);
font-weight: 600;
display: block;
margin-bottom: 10px;
}
.partners-compact {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 16px;
margin-top: 32px;
}
.partner-chip {
background: var(--white);
border: 1px solid var(--border);
border-radius: 8px;
padding: 18px 20px;
display: flex;
align-items: flex-start;
gap: 16px;
transition: box-shadow 0.2s, border-color 0.2s;
text-decoration: none;
}
.partner-chip:hover {
box-shadow: 0 4px 16px rgba(27, 58, 107, 0.08);
transform: translateY(-3px);
border-color: var(--prim);
}
.partner-chip-logo {
width: 56px;
height: 56px;
min-width: 56px;
background: var(--cream);
border: 1px solid var(--border);
border-radius: 6px;
display: flex;
align-items: center;
justify-content: center;
overflow: hidden;
flex-shrink: 0;
}
.partner-chip-logo img {
width: 100%;
height: 100%;
object-fit: contain;
padding: 6px;
}
.partner-chip-logo .partner-initials {
font-family: 'Playfair Display', serif;
font-size: 16px;
font-weight: 700;
color: var(--navy);
text-align: center;
line-height: 1.1;
}
.partner-chip-content {
flex: 1;
}
.partner-chip-content h4 {
font-size: 18px;
font-weight: 700;
color: var(--navy);
margin-bottom: 4px;
}
.partner-chip-content p {
font-size: 16px;
color: var(--text-muted);
line-height: 1.55;
margin:0;
}
.partners-grid {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 24px;
margin-top: 40px;
}
.partner-card {
border: 1px solid var(--border);
border-radius: 8px;
overflow: hidden;
transition: box-shadow 0.2s, transform 0.2s;
}
.partner-card:hover {
box-shadow: 0 8px 32px rgba(27, 58, 107, 0.1);
transform: translateY(-3px);
border-color: var(--prim);
}
.partner-card-top {
height: 180px;
background: var(--navy);
display: flex;
align-items: center;
justify-content: center;
padding: 24px;
position: relative;
overflow: hidden;
}
.partner-card-top img {
max-height: 90px;
max-width: 220px;
object-fit: contain;
filter: brightness(0) invert(1);
opacity: 0.9;
}
.partner-card-top .partner-name-only {
font-family: 'Playfair Display', serif;
font-size: 28px;
font-weight: 700;
color: var(--white);
}
.partner-card-body {
padding: 24px;
background: var(--white);
}
.partner-card-body h3 {
font-family: 'Playfair Display', serif;
font-size: 24px;
font-weight: 600;
color: var(--navy);
margin-bottom: 10px;
}
.partner-card-body p {
font-size: 16px;
color: var(--text-muted);
line-height: 1.7;
margin-bottom: 16px;
}
.partner-link {
font-size: 16px;
font-weight: 600;
color: var(--navy);
text-decoration: none;
border-bottom: 1.5px solid var(--prim);
padding-bottom: 2px;
transition: color 0.2s;
}
.partner-link:hover {
color: var(--prim);
}
.partners .boxes {
display: flex;
flex-direction: row;
gap: 20px;
margin-top: 40px;
}
.partners .boxes a {
background: var(--white);
border: 1px solid var(--border);
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
text-decoration: none;
gap: 12px;
min-height: 130px;
transition: box-shadow 0.2s, border-color 0.2s;
border-radius: 8px;
padding: 28px 20px;
cursor: pointer;
flex: 1;
}
.partners .boxes a:hover {
border-color: var(--prim);
box-shadow: 0 6px 20px rgba(14, 35, 64, 0.09);
}
.partners .boxes a[aria-disabled], 
.partners .boxes a[aria-disabled]:hover {
background: var(--white);
border: 1px dashed var(--border);
opacity: 0.5;
cursor: default;
text-transform: uppercase;
pointer-events: none;
}
.partners a div {
font-size: 16px;
font-weight: 600;
text-align: center;
line-height: 1.4;
color: var(--navy);
}
.partners .boxes img {
width: auto;
height: auto;
max-height: 50px;
}
.jya-footer .section-label {
margin: 16px 0;
}
.contact-form .section-footer,
.jya-footer .section-footer {
text-align: center;
}
.partners .section-footer a, 
.founder-footer .section-footer a,
.contact-form .section-footer a, 
.jya-footer .section-footer a {
color: var(--navy);
font-weight: 600;
}
.partners .section-footer a:hover, 
.founder-footer .section-footer a:hover,
.founder-footer a:hover,
.contact-form .section-footer a:hover, 
.jya-footer .section-footer a:hover {
text-decoration: underline;
}
.founder-footer .section-inner, 
.jya-footer .section-inner {
text-align: center;
align-items: center;
}
.founder-footer .btn-primary, 
.jya-footer .btn-primary {
margin: 16px 0;
} .tiers {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 20px;
align-items: stretch;
}
.tier-card {
border: 1px solid var(--border);
border-radius: 8px;
overflow: hidden;
display: flex;
flex-direction: column;
}
.tier-header {
padding: 28px 28px 22px;
background: linear-gradient(-45deg, var(--bright-blue), var(--dark-navy));
}
.tier-name {
font-family: 'Playfair Display', serif;
font-size: 26px;
color: var(--white);
font-weight: 700;
margin-bottom: 6px;
}
.tier-price {
font-size: 16px;
color: rgba(255, 255, 255, 0.65);
font-weight: 400;
}
.tier-body {
padding: 28px;
background: var(--white);
display: flex;
flex-direction: column;
flex: 1;
}
.tier-body ul {
list-style: none;
display: flex;
flex-direction: column;
gap: 12px;
margin-left: 0;
margin-bottom: 28px;
flex: 1;
}
.tier-body li {
font-size: 16px;
color: var(--text);
display: flex;
align-items: flex-start;
gap: 10px;
line-height: 1.6;
}
.ck {
width: 20px;
height: 20px;
min-width: 20px;
background: var(--prim);
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
margin-top: 1px;
}
.ck svg {
width: 10px;
height: 10px;
fill: none;
stroke: var(--navy);
stroke-width: 2.5;
stroke-linecap: round;
}  .steps {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 24px;
margin-top: 40px;
}
.step {
background: var(--cream);
border: 1px solid var(--border);
border-radius: 8px;
padding: 28px 24px;
}
.step-num {
font-family: 'Playfair Display', serif;
font-size: 48px;
font-weight: 700;
color: var(--prim);
opacity: 0.3;
line-height: 1;
margin-bottom: 8px;
}
.step h3 {
font-size: 24px;
font-weight: 600;
color: var(--navy);
margin-bottom: 10px;
}
.step p {
font-size: 16px;
color: var(--text-muted);
line-height: 1.6;
}
.benefit-list {
list-style: none;
display: flex;
flex-direction: column;
gap: 12px;
margin-top: 20px;
}
.benefit-list li {
display: flex;
align-items: flex-start;
gap: 12px;
font-size: 14px;
color: var(--text);
line-height: 1.5;
}
.check {
width: 20px;
height: 20px;
min-width: 20px;
background: var(--prim);
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
margin-top: 2px;
}
.check svg {
width: 11px;
height: 11px;
fill: none;
stroke: var(--navy);
stroke-width: 2.5;
stroke-linecap: round;
} .mission {
background: var(--cream);
}
.mission-grid {
display: grid;
grid-template-columns: 1fr 2fr;
gap: 60px;
align-items: center;
}
.mission-pillars {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 20px;
}
.pillar {
background: var(--white);
border: 1px solid var(--border);
border-radius: 6px;
padding: 24px 20px;
border-top: 3px solid var(--prim);
}
.pillar-icon {
width: 36px;
height: 36px;
background: rgba(201, 168, 76, 0.12);
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 12px;
}
.pillar-icon svg {
width: 18px;
height: 18px;
fill: none;
stroke: var(--prim);
stroke-width: 1.8;
}
.pillar h3 {
font-size: 24px;
font-weight: 600;
color: var(--navy);
margin-bottom: 10px;
text-transform: uppercase;
letter-spacing: 0.05em;
}
.pillar p {
font-size: 16px;
color: var(--text-muted);
line-height: 1.6;
}
.pillars {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 28px;
margin-top: 40px;
}
.pillar-card {
background: var(--white);
border: 1px solid var(--border);
border-radius: 8px;
padding: 32px 28px;
position: relative;
overflow: hidden;
}
.pillar-card::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 4px;
background: var(--prim);
}
.pillar-num {
font-family: 'Playfair Display', serif;
font-size: 56px;
font-weight: 700;
color: var(--navy);
opacity: 0.07;
line-height: 1;
position: absolute;
top: 12px;
right: 20px;
}
.pillar-name {
font-family: 'Playfair Display', serif;
font-size: 22px;
font-weight: 700;
color: var(--navy);
margin-bottom: 10px;
}
.pillar-desc {
font-size: 16px;
color: var(--text-muted);
line-height: 1.7;
margin-bottom: 16px;
}
.pillar-bullets {
list-style: none;
display: flex;
flex-direction: column;
gap: 7px;
margin: 0;
}
.pillar-bullets li {
font-size: 16px;
color: var(--text);
padding-left: 16px;
position: relative;
line-height: 1.5;
}
.pillar-bullets li::before {
content: '—';
position: absolute;
left: 0;
color: var(--prim);
font-weight: 700;
} .mission-puzzle-wrap {
margin-top: 8px;
}
.fo-content {
width: 100%;
height: 100%;
display: flex;
flex-direction: column;
padding: 28px 26px 24px;
font-family: 'DM Sans', sans-serif;
}
.fo-icon {
width: 36px;
height: 36px;
background: color-mix(in srgb, var(--light-prim) 25%, transparent);
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 10px;
flex-shrink: 0;
}
.fo-icon svg {
width: 17px;
height: 17px;
fill: none;
stroke: var(--prim);
stroke-width: 1.8;
}
.mission-puzzle-wrap svg a {
color: var(--navy);
}
.fo-label {
font-size: 16px;
font-weight: 700;
letter-spacing: 0.12em;
text-transform: uppercase;
color: var(--navy);
margin-bottom: 10px;
}
.fo-text {
font-size: 16px;
line-height: 1.7;
font-weight: 400;
}
.piece-icon svg {
width: 20px;
height: 20px;
fill: none;
stroke: #C9A84C;
stroke-width: 1.8;
}
.piece {
cursor: default;
transition: filter 0.25s;
}
.piece:hover {
filter: drop-shadow(0 10px 28px rgba(27, 58, 107, 0.2));
}
.piece path {
transition: filter 0.2s;
}
.piece:hover path:first-child {
filter: brightness(0.97);
} .quotes {
background: var(--navy);
padding: 70px 40px;
width: 100%;
display: block;
}
.quotes-inner {
max-width: 1100px;
margin: 0 auto;
}
.quotes-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 28px;
margin-top: 48px;
}
.quote-card {
background: rgba(255, 255, 255, 0.06);
border: 1px solid rgba(255, 255, 255, 0.1);
border-radius: 8px;
padding: 28px;
position: relative;
}
.quote-card::before {
content: '"';
font-family: 'Playfair Display', serif;
font-size: 64px;
color: var(--prim);
opacity: 0.5;
position: absolute;
top: 10px;
left: 20px;
line-height: 1;
}
.quote-text {
font-size: 16px;
color: var(--white);
line-height: 1.75;
margin-top: 28px;
font-style: italic;
font-weight: 300;
}
.quote-author {
margin-top: 20px;
font-size: 16px;
font-weight: 600;
color: var(--light-prim);
} .programs-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 24px;
margin-top: 48px;
}
.program-card {
border: 1px solid var(--border);
border-radius: 8px;
overflow: hidden;
transition: box-shadow 0.2s, transform 0.2s;
}
.program-card:hover {
box-shadow: 0 8px 32px rgba(27, 58, 107, 0.1);
transform: translateY(-3px);
border-color: var(--prim);
}
.program-header {
background: var(--navy);
padding: 16px 24px 14px;
position: relative;
overflow: hidden;
height: 64px;
display: flex;
flex-direction: column;
justify-content: flex-end;
}
.program-header::after {
content: "";
position: absolute;
right: -8px;
bottom: -16px;
font-size: 72px;
color: var(--white);
line-height: 1;
}
.program-tag {
display: none;
}
.program-name {
font-family: 'Playfair Display', serif;
font-size: 20px;
color: var(--white);
line-height: 1.25;
font-weight: 600;
}
.program-body {
padding: 24px;
}
.program-body p {
font-size: 16px;
color: var(--text-muted);
line-height: 1.7;
margin-bottom: 20px;
}
.program-link {
font-size: 16px;
font-weight: 600;
color: var(--navy);
text-decoration: none;
display: inline-flex;
align-items: center;
gap: 6px;
border-bottom: 1.5px solid var(--prim);
padding-bottom: 2px;
transition: color 0.2s;
}
.program-link:hover {
color: var(--prim);
}
.program-link svg {
width: 14px;
height: 14px;
fill: none;
stroke: currentColor;
stroke-width: 2;
}
.jya-about { background: var(--white); }
.jya-events { background: var(--cream); }
.jya-footer #mc_embed_signup .mc-field-group, 
.jya-footer #mc_embed_signup .foot {
display: inline-block;
align-items: center;
width: 100%;
}
.jya-footer #mc_embed_signup .mc-field-group input {
width: 100%;
padding: 12px 14px;
border: 1.5px solid var(--border);
border-radius: 4px;
font-family: 'DM Sans', sans-serif;
font-size: 16px;
color: var(--text);
outline: none;
transition: border-color 0.2s;
background: var(--white);
}
.jya-footer #mc_embed_signup .mc-field-group input:focus {
border-color: var(--prim);
}
.jya-footer #mc_embed_signup .button {
background-color: var(--prim) !important;
border: none !important;
color: var(--navy) !important;
padding: 14px 28px;
border-radius: 4px;
font-weight: 600;
font-size: 16px;
text-decoration: none;
letter-spacing: 0.05em;
transition: all 0.2s;
display: inline-block;
height: auto;
margin: 0 0 5px 0;
}
.jya-footer #mc_embed_signup div#mce-responses {
float: left;
top: 0;
padding: 0;
overflow: hidden;
width: 100%;
margin: 0;
clear: both;
}
.jya-footer #mc_embed_signup div.response {
margin: 0 0 1em 0;
padding: 0;
font-weight: bold;
float: left;
top: -1.5em;
z-index: 1;
width: 100%;
}
.jya-footer #mc_embed_signup #mc-embedded-subscribe-form div.mce_inline_error {
margin: 0;
}
.jya-footer #mc_embed_signup .mc-field-group label {
display: block;
font-size: 16px;
font-weight: 600;
color: var(--navy);
margin-bottom: 6px;
text-transform: uppercase;
letter-spacing: 0.06em;
}
.info-card {
background: var(--white);
border: 1px solid var(--border);
border-radius: 8px;
padding: 28px 24px;
}
.info-card h3 {
font-family: 'Playfair Display', serif;
font-size: 24px;
color: var(--navy);
margin-bottom: 10px;
font-weight: 600;
}
.info-card p {
font-size: 16px;
color: var(--text-muted);
line-height: 1.65;
margin-bottom: 16px;
}
.info-card a {
color: var(--navy);
font-size: 16px;
font-weight: 600;
text-decoration: none;
border-bottom: 1.5px solid var(--prim);
padding-bottom: 1px;
}
.photo-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
margin-top: 40px;
gap: 12px;
}
.photo-grid-item {
aspect-ratio: 1;
background: var(--border);
border-radius: 6px;
overflow: hidden;
}
.photo-grid-item img {
width: 100%;
height: 100%;
object-fit: cover;
}
.activity-tags {
display: flex;
flex-wrap: wrap;
gap: 10px;
margin: 20px 0;
}
.activity-tag {
color: var(--navy);
font-size: 16px;
background: rgba(14, 35, 64, 0.07);
padding: 7px 14px;
border-radius: 20px;
font-weight: 500;
} .accordion {
margin-top: 40px;
border: 1px solid var(--border);
border-radius: 8px;
overflow: hidden;
}
.accordion-item {
border-bottom: 1px solid var(--border);
}
.accordion-item:last-child {
border-bottom: none;
}
.accordion-trigger {
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
padding: 24px 28px;
background: var(--white);
border: none;
cursor: pointer;
font-family: 'DM Sans', sans-serif;
text-align: left;
transition: background 0.2s;
}
.accordion-trigger:hover,
.accordion-trigger.open {
background: var(--cream);
}
.accordion-trigger-left {
display: flex;
align-items: center;
gap: 20px;
}
.accordion-label {
font-size: 16px;
font-weight: 600;
letter-spacing: 0.14em;
text-transform: uppercase;
color: var(--prim);
}
.accordion-title {
font-family: 'Playfair Display', serif;
font-size: 22px;
font-weight: 700;
color: var(--navy);
}
.accordion-range {
font-size: 16px;
color: var(--text-muted);
margin-top: 2px;
}
.accordion-icon {
width: 32px;
height: 32px;
border-radius: 50%;
border: 1.5px solid var(--border);
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
transition: transform 0.3s, background 0.2s;
}
.accordion-trigger.open .accordion-icon {
transform: rotate(45deg);
background: var(--navy);
border-color: var(--navy);
}
.accordion-trigger.open .accordion-icon svg {
stroke: var(--white);
}
.accordion-icon svg {
width: 14px;
height: 14px;
fill: none;
stroke: var(--navy);
stroke-width: 2.5;
}
.accordion-body {
display: none;
padding: 0 28px 32px;
background: var(--cream);
}
.accordion-body.open {
display: block;
}
.accordion-desc {
font-size: 16px;
color: var(--text-muted);
line-height: 1.7;
margin-bottom: 32px;
font-weight: 300;
} .volunteer-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 20px;
margin-top: 32px;
}
.vol-card {
background: var(--white);
border: 1px solid var(--border);
border-radius: 6px;
padding: 20px;
border-top: 3px solid var(--prim);
}
.vol-card h4 {
font-size: 16px;
font-weight: 600;
color: var(--navy);
margin-bottom: 6px;
}
.vol-card p {
font-size: 16px;
color: var(--text-muted);
line-height: 1.5;
} .logistics {
background: var(--cream);
}
.logistics-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 16px;
margin-top: 40px;
}
.logistics-item {
background: var(--white);
border: 1px solid var(--border);
border-radius: 6px;
padding: 20px;
}
.logistics-item .l-label {
font-size: 16px;
font-weight: 700;
letter-spacing: 0.1em;
text-transform: uppercase;
color: var(--prim);
margin-bottom: 6px;
}
.logistics-item .l-value {
font-size: 16px;
font-weight: 600;
color: var(--navy);
line-height: 1.4;
}
.logistics-item .l-note {
font-size: 16px;
color: var(--text-muted);
margin-top: 4px;
line-height: 1.4;
}
.who-strip {
background: linear-gradient(-45deg, var(--b), var(--dark-navy));
border-radius: 8px;
padding: 40px;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 40px;
margin-top: 40px;
}
.who-col h3 {
font-family: 'Playfair Display', serif;
font-size: 24px;
color: var(--white);
margin-bottom: 10px;
font-weight: 600;
}
.who-col ul {
list-style: none;
display: flex;
flex-direction: column;
gap: 9px;
margin: 0;
}
.who-col li {
font-size: 16px;
color: var(--white);
padding-left: 16px;
position: relative;
line-height: 1.5;
}
.who-col li::before {
content: '›';
position: absolute;
left: 0;
color: var(--prim);
font-weight: 700;
}
.solves-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 20px;
margin-top: 36px;
}
.solve-card {
background: var(--cream);
border: 1px solid var(--border);
border-radius: 6px;
padding: 22px;
}
.solve-card p {
font-size: 16px;
color: var(--text-muted);
line-height: 1.6;
}
.fn-cta {
background: linear-gradient(135deg, var(--navy) 0, #1a4a7a 100%);
border-radius: 8px;
padding: 52px;
text-align: center;
}
.fn-cta h3 {
font-family: 'Playfair Display', serif;
font-size: 24px;
color: var(--white);
margin-bottom: 10px;
font-weight: 600;
}
.fn-cta .sub {
font-size: 16px;
font-style: italic;
color: var(--light-prim);
margin-bottom: 16px;
font-family: 'Playfair Display', serif;
}
.fn-cta p {
color: var(--white);
font-size: 16px;
max-width: 500px;
margin: 0 auto 32px;
line-height: 1.7;
} .toggle-check {
display: none;
}
.section-toggle-label {
display: inline-flex;
align-items: center;
gap: 10px;
background: var(--navy);
color: var(--white);
padding: 12px 22px;
border-radius: 4px;
font-family: 'DM Sans', sans-serif;
font-size: 16px;
font-weight: 600;
letter-spacing: 0.04em;
cursor: pointer;
transition: background 0.2s;
white-space: nowrap;
user-select: none;
}
.section-toggle-label:hover,
.toggle-check:checked ~ .section-header .section-toggle-label {
background: var(--prim);
color: var(--navy);
}
.toggle-icon {
font-size: 20px;
font-weight: 300;
line-height: 1;
display: inline-block;
transition: transform 0.3s;
}
.section-collapsible {
display: none;
}
.toggle-check:checked ~ .section-header .toggle-icon {
transform: rotate(45deg);
}
.toggle-check:checked ~ .section-collapsible {
display: block;
}
.toggle-check:checked ~ .section-header .show-text,
.hide-text {
display: none;
}
.toggle-check:checked ~ .section-header .hide-text {
display: inline;
} .newsletter {
background: var(--white);
}
.newsletter-inner {
max-width: 640px;
margin: 0 auto;
text-align: center;
}
.newsletter-form {
display: flex;
gap: 12px;
max-width: 480px;
margin: 0 auto;
width: 100%;
}
.newsletter-form input {
flex: 1;
min-width: 0;
padding: 14px 16px;
border: 1.5px solid var(--border);
border-radius: 4px;
font-family: 'DM Sans', sans-serif;
font-size: 16px;
color: var(--text);
outline: none;
}
.newsletter-form input:focus {
border-color: var(--prim);
}
.newsletter-form button {
background: var(--navy);
color: var(--white);
border: none;
padding: 14px 24px;
border-radius: 4px;
font-family: 'DM Sans', sans-serif;
font-size: 16px;
font-weight: 600;
cursor: pointer;
white-space: nowrap;
}
.newsletter-form button:hover {
background: var(--prim);
color: var(--navy);
}
.founder-footer, .jya-footer {
background: linear-gradient(316deg, var(--bright-blue) 0%, var(--b) 30%, var(--navy) 100%);
padding: 72px 40px;
}
.founder-footer h2, .jya-footer h2 {
font-family: 'Playfair Display', serif;
font-size: 36px;
font-weight: 700;
color: var(--white);
margin-bottom: 16px;
line-height: 1.25;
}
.founder-footer p, .jya-footer p {
color: var(--white);
font-size: 16px;
max-width: 560px;
margin: 0 auto;
line-height: 1.7;
}
.founder-footer p.sub-head, .jya-footer p.subhead {
font-style: italic;
color: var(--light-prim);
font-family: 'Playfair Display', serif;
font-size: 16px;
margin-bottom: 16px;
font-weight: 600;
}
.founder-footer .form {
background: var(--white);
border-radius: 10px;
padding: 48px;
max-width: 680px;
margin: 0 auto;
}
.founder-footer .form form {
display: flex;
flex-direction: column;
gap: 20px;
}
.founder-footer .form form > div {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 20px;
}
.founder-footer .form form > div.full {
grid-template-columns: 1fr;
}
.founder-footer .form form > div.full > div {
display: flex;
flex-direction: column;
gap: 10px;
}
.founder-footer .form form > div.full > div label {
display: flex;
align-items: flex-start;
gap: 10px;
cursor: pointer;
padding: 12px 16px;
border: 1.5px solid var(--border);
border-radius: 4px;
transition: border-color 0.2s;
}
.founder-footer .form form > div.full > div label span {
font-size: 16px;
color: var(--text-muted);
line-height: 1.5;
font-weight: 500;
}
.founder-footer .form form > div.full > div label input {
margin-top: 2px;
accent-color: var(--prim);
}
.founder-footer .form form > div.full > div label:hover, 
.founder-footer .form form > div.full > div label:focus {
border-color: var(--prim);
}
.founder-footer .form form > div > div > label,
.founder-footer .form form > div.full > label {
display: block;
font-size: 16px;
font-weight: 700;
letter-spacing: 0.08em;
color: var(--navy);
margin-bottom: 6px;
}
.founder-footer .form form > div label span {
color: #c0392b;
}
input[type=email], 
input[type=number], 
input[type=password], 
input[type=reset], 
input[type=search], 
input[type=tel], 
input[type=text], 
input[type=url], 
select, 
textarea {
width: 100%;
padding: 12px 14px;
border: 1px solid var(--border);
border-radius: 4px;
font-family: "DM Sans", sans-serif;
font-size: 16px;
color: var(--text);
outline: none;
transition: border-color 0.2s;
}
input:focus, 
input[type="text"]:focus, 
input[type="email"]:focus, 
input[type="url"]:focus, 
input[type="password"]:focus, 
input[type="reset"]:focus, 
input[type="search"]:focus, 
input[type="number"]:focus, 
textarea:focus, 
.wp-block-search__input:focus, 
[data-section="section-header-mobile-trigger"] .ast-button-wrap .ast-mobile-menu-trigger-minimal:focus, 
.ast-mobile-popup-drawer.active .menu-toggle-close:focus, 
#ast-scroll-top:focus, 
#coupon_code:focus, 
#ast-coupon-code:focus {
border-color: var(--prim);
}
label, 
.form-field-label {
text-transform: uppercase;
}
.form-radio-label, 
.form-checkbox-label,
input[type="radio"] + label {
text-transform: none;
}
.contact-grid {
display: grid;
grid-template-columns: 2fr 1fr;
gap: 48px;
align-items: start;
}
.contact-form {
background: var(--white);
border: 1px solid var(--border);
border-radius: 8px;
padding: 36px;
}
.contact-form a.btn-primary {
display: block;
text-align: center;
width: 100%;
}
.form-group {
margin-bottom: 20px;
}
.form-group label {
display: block;
font-size: 16px;
font-weight: 600;
color: var(--navy);
margin-bottom: 6px;
text-transform: uppercase;
letter-spacing: 0.06em;
}
.form-group input, 
.form-group textarea, 
.form-group select {
width: 100%;
padding: 12px 14px;
border: 1.5px solid var(--border);
border-radius: 4px;
font-family: 'DM Sans', sans-serif;
font-size: 16px;
color: var(--text);
outline: none;
transition: border-color 0.2s;
background: var(--white);
}
.form-group input:focus, 
.form-group textarea:focus, 
.form-group select:focus {
border-color: var(--prim);
}
.form-group textarea {
height: 140px;
resize: vertical;
}
.contact-info h3 {
font-family: 'Playfair Display', serif;
font-size: 24px;
color: var(--navy);
margin-bottom: 10px;
font-weight: 600;
}
.info-item {
display: flex;
align-items: flex-start;
gap: 14px;
margin-bottom: 20px;
padding-bottom: 20px;
border-bottom: 1px solid var(--border);
}
.info-item:last-child {
border-bottom: none;
}
.info-icon {
width: 38px;
height: 38px;
min-width: 38px;
background: rgba(201, 168, 76, 0.12);
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
}
.info-icon svg {
width: 18px;
height: 18px;
fill: none;
stroke: var(--prim);
stroke-width: 1.8;
}
.info-item .label {
font-size: 11px;
font-weight: 600;
letter-spacing: 0.1em;
text-transform: uppercase;
color: var(--text-muted);
margin-bottom: 4px;
}
.info-item .value {
font-size: 16px;
color: var(--text);
line-height: 1.6;
}
.info-item .value a {
color: var(--navy);
text-decoration: none;
font-weight: 500;
}
.info-item .value a:hover {
color: var(--prim);
}
.venues-grid {
display: grid;
grid-template-columns: 1fr;
gap: 12px;
margin-top: 32px;
}
.venue-card {
background: var(--cream);
border: 1px solid var(--border);
border-radius: 6px;
padding: 16px 18px;
display: flex;
align-items: center;
gap: 14px;
text-decoration: none;
transition: border-color 0.2s;
}
.venue-card:hover {
border-color: var(--prim);
}
.venue-card svg {
width: 18px;
height: 18px;
fill: none;
stroke: var(--prim);
stroke-width: 1.8;
min-width: 18px;
}
.venue-card div .vname {
font-size: 16px;
font-weight: 600;
color: var(--navy);
}
.venue-card div .vaddr {
font-size: 15px;
color: var(--text-muted);
margin-top: 2px;
} footer {
background: #080F1D;
background-color: var(--navy);
padding: 60px 40px 32px;
color: var(--white);
width: 100%;
display: block;
}
.footer-inner {
max-width: 1100px;
margin: 0 auto;
}
.footer-grid {
display: grid;
grid-template-columns: 2fr 1fr 1fr 1fr;
gap: 48px;
margin-bottom: 48px;
}
.footer-brand .footer-logo {
display: flex;
align-items: flex-start;
gap: 10px;
margin-bottom: 16px;
flex-direction: column;
}
.footer-brand .logo-box {
width: 36px;
height: 36px;
background: var(--prim);
border-radius: 3px;
display: flex;
align-items: center;
justify-content: center;
font-family: 'Playfair Display', serif;
font-weight: 700;
font-size: 16px;
color: var(--navy);
flex-shrink: 0;
}
.footer-brand .logo-name {
font-family: 'Playfair Display', serif;
font-size: 20px;
font-weight: 700;
color: var(--white);
line-height: 1.2;
}
.footer-brand p {
font-size: 16px;
line-height: 1.7;
max-width: 260px;
margin-bottom: 20px;
}
.footer-social {
display: flex;
gap: 10px;
}
.footer-social a {
width: 34px;
height: 34px;
background: rgba(255, 255, 255, 0.25);
border-radius: 4px;
display: flex;
align-items: center;
justify-content: center;
color: var(--white);
text-decoration: none;
transition: all 0.2s;
}
.footer-social a:hover {
background: var(--prim);
color: var(--navy);
}
.footer-social svg {
width: 16px;
height: 16px;
fill: currentColor;
}
.footer-col {
display: flex;
flex-direction: column;
justify-content: flex-end;
}
.footer-col h4 {
font-size: 16px;
font-weight: 600;
letter-spacing: 0.12em;
text-transform: uppercase;
color: var(--white);
margin-bottom: 16px;
}
.footer-col ul {
list-style: none;
display: flex;
flex-direction: column;
gap: 8px;
margin-left: 0;
}
.footer-col a {
font-size: 16px;
color: var(--white);
text-decoration: none;
transition: color 0.2s;
opacity: 0.7;
}
.footer-col a:hover {
color: var(--prim);
}
.footer-bottom {
border-top: 1px solid rgba(255, 255, 255, 0.5);
padding-top: 24px;
display: flex;
justify-content: space-between;
align-items: center;
font-size: 16px;
flex-wrap: wrap;
gap: 12px;
}
div#block-9 {
padding-top: 24px;
display: flex;
justify-content: space-between;
align-items: center;
font-size: 16px;
flex-wrap: wrap;
gap: 12px;
}
#block-9 a {
font-weight: 600;
color: var(--prim);
}
#block-9 a:hover {
text-decoration: underline;
}
.footer-bottom span {
color: var(--white);
}
.nonprofit-badge {
background: rgba(201, 168, 76, 0.15);
border: 1px solid rgba(201, 168, 76, 0.25);
color: var(--light-prim);
font-size: 16px;
font-weight: 500;
padding: 5px 12px;
border-radius: 20px;
letter-spacing: 0.05em;
}
.ast-single-post .entry-content a,
.ast-comment-content a:not(.ast-comment-edit-reply-wrap a) {
text-decoration: none;
} @media (max-width: 921px) {
.ast-header-break-point .main-navigation ul .menu-item a.menu-link {
padding: 20px;
border-top: 1px solid var(--border);
background-color: var(--cream);
}
.ast-header-break-point .main-navigation ul .menu-item a.menu-link:hover, .ast-header-break-point .main-navigation ul .menu-item a.menu-link:focus {
background-color: var(--navy);
color: var(--white);
}
}
@media (max-width: 900px) {
section {
padding: 56px 20px;
}
.page-hero {
padding: 48px 20px;
}
.footer-grid {
grid-template-columns: 1fr 1fr;
}
.sponsors-grid,
.sponsors-featured,
.partners-compact,
.programs-grid,
.quotes-grid,
.three-col,
.photo-grid,
.volunteer-grid,
.logistics-grid {
grid-template-columns: repeat(2, 1fr);
}
}
@media (max-width: 700px) {
.board-grid,
.advisors-grid {
grid-template-columns: repeat(3, 1fr);
}
.hero-inner,
.steps,
.two-col,
.who-strip,
.partners-grid,
.tiers,
.mission-grid,
.mission-pillars,
.pillars,
.contact-grid {
grid-template-columns: 1fr;
gap: 20px;
}
.partners .boxes {
flex-direction: column;
}
}
@media (max-width: 600px) {
.nav-links {
display: none;
}
.footer-grid,
.sponsors-featured,
.partners-compact,
.programs-grid,
.quotes-grid,
.three-col,
.photo-grid,
.volunteer-grid,
.logistics-grid {
grid-template-columns: 1fr;
gap: 20px;
}
.sponsors-grid {
grid-template-columns: 1fr 1fr;
gap: 10px;	
margin-top: 20px;
}
.page-hero h1,
.hero h1 {
font-size: 32px;
}
}
@media (max-width: 500px) {
.board-grid,
.advisors-grid {
grid-template-columns: repeat(2, 1fr);
}
.site-branding img, .site-header .site-logo-img .custom-logo-link img {
max-width: 90px;
}
}