:root {
--text: #1a1a1a;
--text-muted: #5a5a5a;
--prim: #ff8957;
--light-prim: #ffa985;
--navy: #0d3b66;
--dark-navy: #1a3560;
--b: #0066b2;
--bright-blue: #00aeef;
--cream: #fdfbf7;
--border: #e2e8f0;
--tint-blue: #1d4e89;
--white: #fff; --gold: var(--prim);
--ink: var(--text); --ast-global-color-0: var(--prim);
--ast-global-color-1: var(--light-prim);
--ast-global-color-2: var(--navy);
--ast-global-color-3: var(--dark-navy);
--ast-global-color-4: var(--b);
--ast-global-color-5: var(--bright-blue);
--ast-global-color-6: var(--cream);
--ast-global-color-7: var(--border);
--ast-global-color-8: var(--tint-blue);
}  :where(.jhtc-main) *,
:where(.jhtc-main) *::before,
:where(.jhtc-main) *::after {
box-sizing: border-box;
margin: 0;
padding: 0;
}
*,
button.button,
form input[type=submit],
body .wp-block-button__link {
font-family: 'DM Sans', sans-serif;
}
html {
scroll-behavior: smooth;
}
html,
body {
width: 100%;
max-width: 100%;
overflow-x: hidden;
}
body.jhtc-theme {
font-family: 'DM Sans', sans-serif;
color: var(--text);
background: var(--white);
font-size: 16px;
line-height: 1.7;
}
body.jhtc-theme p {
line-height: unset;
font-size: unset;
}
html.js-focus-visible {
line-height: 1.5;
font-size: 15px;
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
}
body a,
body a:hover,
.header-navbar__menu ul li a:hover * {
color: var(--prim);
}
a:hover,
.site-footer a:hover {
color: var(--navy);
}
img {
max-width: 100%;
height: auto;
display: block;
}
::selection {
background: var(--light-prim);
}
h1 {
font-family: 'Playfair Display', serif;
font-size: 36px;
font-weight: 700;
color: var(--navy);
line-height: 1.25;
margin-bottom: 16px;
}
h1, h2, h3, h4, h5, h6 {
text-wrap: balance;
}
:where(.jhtc-main) :is(h1, h2, h3, h4, h5, h6) {
white-space: break-spaces;
}
html.js-focus-visible :is(h1, h2, h3, h4, h5, h6),
html.js-focus-visible fieldset legend,
html.js-focus-visible .header-logo__name,
html.js-focus-visible .comment__author,
html.js-focus-visible .hp-review__author,
html.js-focus-visible .hp-message--view-block hp-message__sender,
html.js-focus-visible .woocommerce ul.product_list_widget li .product-title,
html.js-focus-visible .editor-post-title__block,
html.js-focus-visible .editor-post-title__input {
font-family: "Roboto", sans-serif;
font-optical-sizing: auto;
font-style: normal;
}
body.wp-theme-listinghive.jhtc-theme :is(h1, h2, h3) {
text-wrap: balance;
font-family: 'Playfair Display', serif;
font-weight: 700;
line-height: 1.25;
margin-top: 0;
margin-bottom: 16px;
}
section,
section.wp-block-group.has-background {
padding: 80px 40px;
width: 100%;
}
ol.steps li.step:not(:last-child),
ul li:not(:last-child) {
margin-bottom: 0;
}
.primary-text-color { color: var(--prim); }
span.required { color: var(--prim); } .has-ast-global-color-0-color { color: var(--ast-global-color-0) !important; }
.has-ast-global-color-1-color { color: var(--ast-global-color-1) !important; }
.has-ast-global-color-2-color { color: var(--ast-global-color-2) !important; }
.has-ast-global-color-3-color { color: var(--ast-global-color-3) !important; }
.has-ast-global-color-4-color { color: var(--ast-global-color-4) !important; }
.has-ast-global-color-5-color { color: var(--ast-global-color-5) !important; }
.has-ast-global-color-6-color { color: var(--ast-global-color-6) !important; }
.has-ast-global-color-7-color { color: var(--ast-global-color-7) !important; }
.has-ast-global-color-8-color { color: var(--ast-global-color-8) !important; }
.has-ast-global-color-0-background-color { background-color: var(--ast-global-color-0) !important; }
.has-ast-global-color-1-background-color { background-color: var(--ast-global-color-1) !important; }
.has-ast-global-color-2-background-color { background-color: var(--ast-global-color-2) !important; }
.has-ast-global-color-3-background-color { background-color: var(--ast-global-color-3) !important; }
.has-ast-global-color-4-background-color { background-color: var(--ast-global-color-4) !important; }
.has-ast-global-color-5-background-color { background-color: var(--ast-global-color-5) !important; }
.has-ast-global-color-6-background-color { background-color: var(--ast-global-color-6) !important; }
.has-ast-global-color-7-background-color { background-color: var(--ast-global-color-7) !important; }
.has-ast-global-color-8-background-color { background-color: var(--ast-global-color-8) !important; } .section-inner {
max-width: 1100px;
margin: 0 auto;
width: 100%;
box-sizing: border-box;
}
.section-label {
font-size: 14px;
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);
line-height: 1.75;
font-weight: 400;
margin-bottom: 8px;
}
:where(.jhtc-main) .section-sub {
max-width: 640px;
}
.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;
} .jhtc-full-width .site-content {
padding-top: 0;
padding-bottom: 0;
}
.home .site-content, .page-id-11195 .site-content, .page-id-11196 .site-content, .page-id-11197 .site-content, .page-id-11198 .site-content, .page-id-11199 .site-content, .page-id-11200 .site-content, .page-id-11201 .site-content {
padding: 0;
}
.home .site-content .container, .page-id-11195 .site-content .container, .page-id-11196 .site-content .container, .page-id-11197 .site-content .container, .page-id-11198 .site-content .container, .page-id-11199 .site-content .container, .page-id-11200 .site-content .container, .page-id-11201 .site-content .container{width:100%;padding:0;} .top-bar {
background: var(--navy);
padding: 0;
width: 100%;
}
.top-bar-inner {
margin: 0 auto;
padding: .5rem 2rem;
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 * {
color: var(--white);
}
.top-bar-inner a:hover * {
color: var(--prim);
}
.top-bar-inner svg,
.board-card svg {
width: 18px;
height: 18px;
fill: currentColor;
}
.site-header,
.header-navbar,
header.header {
position: relative;
z-index: 100;
}
.header-navbar {
display: flex;
padding: 1rem 2rem;
align-items: center;
justify-content: space-between;
}
.header-logo img {
max-width: 90px;
}
.header-navbar__menu {
align-items: center;
}
.header-navbar__menu > ul#menu-header-1 > li {
padding: 0;
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;
}
.header-navbar__menu ul#menu-header-1 > li.menu-item > a {
display: flex;
gap: 10px;
padding: 20px 11px;
font-size: 14px;
font-weight: 500;
letter-spacing: 0.04em;
text-transform: uppercase;
text-decoration: none;
border-bottom: 2px solid transparent;
white-space: nowrap;
line-height: 1;
}
.header-navbar__menu ul#menu-header-1 li ul li {
padding: .75rem 1.5rem;
}
.header-navbar__menu ul#menu-header-1 li.current-menu-item > a {
color: var(--navy);
border-bottom-color: var(--prim);
}
.header-navbar__menu > ul#menu-header-1 > li.current-menu-item::before {
content: none;
} .header-navbar__actions-menu ul {
margin: 0;
padding: 0;
list-style: none;
}
.header-navbar__actions-menu ul li {
margin: 0;
position: relative;
}
.header-navbar__actions-menu ul li.menu-item-has-children::after {
display: none;
}
.header-navbar__actions-menu ul li ul {
display: none;
position: absolute;
z-index: 1000;
top: 100%;
right: 0;
left: auto;
min-width: 14rem;
padding: 1rem 0;
background-color: #fff;
border: 1px solid rgba(7, 36, 86, 0.075);
border-radius: 3px;
box-shadow: 0 2px 4px 0 rgba(7, 36, 86, 0.075);
}
.header-navbar__actions-menu ul li ul li {
padding: 0;
}
.header-navbar__actions-menu ul li ul li a,
.header-navbar__actions-menu ul li ul li button {
display: block;
width: 100%;
text-align: right;
color: inherit;
transition: color 0.25s, background-color 0.25s;
padding: 0.5rem 1.5rem;
background-color: transparent;
border: none;
white-space: normal;
}
.header-navbar__actions-menu ul li:focus-within > ul,
.header-navbar__actions-menu ul li.active > ul {
display: block;
}
ul li ul li button.hp-menu__item.button.button--secondary,
ul li ul li button.hp-menu__item.button.button--secondary span {
background-color: unset;
color: unset;
font-weight: 400;
border-radius: unset;
}
ul li ul li button.hp-menu__item.button.button--secondary i {
display: none;
}
ul li ul li button.hp-menu__item.button.button--secondary span {
display: block;
}
ul li ul li button.hp-menu__item.button.button--secondary:hover,
ul li ul li button.hp-menu__item.button.button--secondary:hover span,
.header-navbar__actions-menu ul li ul li a:hover,
.header-navbar__actions-menu ul li ul li button:hover {
background: unset;
color: var(--prim);
}
.hp-menu--site-header button.hp-menu__item:not(:last-child) {
margin-right: 0;
} .header-navbar .wp-block-button__link.wp-element-button {
background-color: var(--prim);
color: var(--navy);
position: relative;
}
.header-navbar .wp-block-button__link.wp-element-button::before,
button.hp-menu__item.hp-menu__item--request-submit.button.button--secondary::before {
font-family: "Font Awesome 6 Free";
font-weight: 900;
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
display: inline-block;
font-style: normal;
font-variant: normal;
text-rendering: auto;
line-height: 1;
font-size: 16px;
margin-right: 7.5px;
position: relative;
opacity: 1;
margin-top: 2px;
}
.header-navbar .wp-block-button__link.wp-element-button::before {
content: "\f234";
width: 20px;
}
button.hp-menu__item.hp-menu__item--request-submit.button.button--secondary::before {
content: "\f067";
background-color: transparent;
} .hp-page__sidebar,
.hp-page__sidebar > .hp-menu--user-account,
.hp-page__sidebar .hp-widget {
z-index: 1;
} .private-btn,
.public-btn {
margin-top: 30px;
}
body.logged-in .public-btn,
.wp-container-core-buttons-is-layout-fe48e5de.private-btn,
.private-btn {
display: none !important;
}
body.logged-in .wp-container-core-buttons-is-layout-fe48e5de.private-btn,
body.logged-in .private-btn {
display: flex !important;
} :where(.jhtc-main) .banner-buttons {
display: flex;
gap: 15px;
flex-wrap: wrap;
}
:where(.jhtc-directory) .banner-buttons a {
display: flex;
gap: 15px;
flex-wrap: wrap;
}
a.btn-primary,
button.btn-primary,
.btn-primary a {
background-color: var(--prim) !important;
border: none !important;
color: var(--navy) !important;
padding: 14px 28px;
border-radius: 4px !important;
font-weight: 600;
font-size: 16px;
text-decoration: none;
letter-spacing: 0.05em;
transition: all 0.2s;
display: inline-block;
}
a.btn-primary:hover,
button.btn-primary:hover,
.btn-primary:hover a {
background: var(--light-prim) !important;
color: var(--navy) !important;
text-decoration: none;
}
a.btn-navy,
button.btn-navy,
.btn-navy a {
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;
}
a.btn-navy:hover,
button.btn-navy:hover,
.btn-navy:hover a {
background: var(--dark-navy);
}
a.btn-outline-navy,
button.btn-outline-navy,
.btn-outline-navy a {
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;
}
a.btn-outline-navy:hover,
button.btn-outline-navy:hover,
.btn-outline-navy:hover a {
background: var(--navy);
color: var(--white);
}
a.btn-outline,
button.btn-outline,
.wp-block-button.is-style-outline.btn-outline a.wp-block-button__link {
border: 1.5px solid var(--white);
background-color: transparent;
color: var(--white);
padding: 14px 28px;
border-radius: 4px !important;
font-weight: 500;
font-size: 16px;
text-decoration: none;
transition: all 0.2s;
display: inline-block;
}
a.btn-outline:hover,
button.btn-outline:hover,
.wp-block-button.is-style-outline.btn-outline:hover a.wp-block-button__link {
background-color: transparent;
border-color: var(--prim);
color: var(--prim);
}
.wp-block-button.is-style-outline.btn-outline .wp-block-button__link:hover::before {
opacity: 0;
}
:where(.jhtc-main) .btn-group {
position: relative;
display: flex !important;
vertical-align: middle !important;
justify-content: flex-start;
gap: 20px;
flex-wrap: wrap;
}
:where(.jhtc-directory) .btn-group a {
position: relative;
display: flex !important;
vertical-align: middle !important;
justify-content: flex-start;
gap: 20px;
flex-wrap: wrap;
} .button--primary,
.button--secondary {
background-image: none !important;
}
.button--prim::before,
.button--navy::before,
.button--prim,
.button--navy,
body.wp-theme-listinghive.jhtc-theme button[type=submit]::before,
body.wp-theme-listinghive.jhtc-theme input[type=submit]::before {
background-image: none !important;
background-color: transparent !important;
}
.button--prim::before,
.button--navy::before {
content: none !important;
}
button.button,
span.button.hp-field.hp-field--button {
background-color: var(--prim);
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;
}
body .button::before {
background-color: transparent;
} .button--prim,
a.button[href*="add-listing"],
.button--primary,
form button[type="submit"],
form input[type=submit] {
background-color: var(--prim);
border: none;
color: var(--navy);
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;
background-image: none;
}
form button[type="submit"] * {
color: var(--navy);
}
.button--primary:hover,
form button[type="submit"]:hover,
form input[type=submit]:hover,
button.button:hover,
.button--navy:hover,
.button--prim:hover,
.button--prim:hover::before,
.wp-block-button .wp-block-button__link:hover {
color: var(--navy);
background: var(--light-prim);
}
.wp-block-button.is-style-secondary .wp-block-button__link:hover,
button.hp-menu__item.button.button--secondary:hover,
.button--secondary:hover,
.btn-secondary:hover,
button.hp-menu__item.button.button--secondary:hover * {
color: var(--navy);
background: var(--prim);
} .btn-secondary,
.wp-block-button.is-style-secondary .wp-block-button__link,
.button--secondary,
button.hp-menu__item.button.button--secondary,
button.hp-menu__item.button.button--secondary * {
background-color: var(--navy);
color: var(--white);
border-radius: 4px;
font-weight: 600;
font-size: 16px;
text-decoration: none;
transition: all 0.2s;
} .page-hero,
.fn-hero {
background: linear-gradient(316deg, var(--bright-blue) 0%, var(--b) 30%, var(--navy) 100%);
padding: 80px 40px;
width: 100%;
} body.jhtc-theme .header-hero {
background: linear-gradient(316deg, var(--bright-blue) 0%, var(--b) 30%, var(--navy) 100%);
padding: 40px 0;
}
body.jhtc-theme.jhtc-main .header-hero {
padding: 80px 0;
}
body.jhtc-theme .header-hero h1 {
color: var(--white);
}
section.header-hero.header-hero--title .header-hero__content .col-sm-8.col-sm-offset-2.col-xs-12 {
margin-left: 0;
}
section.header-hero.header-hero--title .header-hero__content .col-sm-8.col-sm-offset-2.col-xs-12 h1.page__title.entry-title {
text-align: left;
align-content: left;
}
.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);
line-height: unset;
}
.page-hero h1,
.header-hero .page-hero-inner h1 {
font-family: 'Playfair Display', serif;
font-size: 44px;
font-weight: 700;
color: var(--white);
line-height: 1.2;
margin-bottom: 16px;
max-width: 800px;
}
.page-hero p,
.header-hero .page-hero-inner p {
color: var(--white);
font-size: 17px;
max-width: 600px;
font-weight: 400;
line-height: 1.7;
}
.header-hero .page-hero-inner .banner-buttons {
margin-top: 28px;
}
.hero,
.jya-hero {
background: linear-gradient(135deg, var(--navy) 0%, var(--b) 30%, var(--bright-blue) 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;
}
.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;
} .event-card-label {
font-size: 16px;
font-weight: 600;
letter-spacing: 0.15em;
text-transform: uppercase;
color: var(--prim);
margin-bottom: 12px;
}
img.event-cover-img {
max-width: 100px;
border-radius: 8px;
margin-bottom: 17px;
border: 1px solid var(--border);
}
.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,
.event-about {
font-size: 16px;
margin-bottom: 24px;
display: flex;
flex-direction: column;
gap: 6px;
}
.hero-event-card .event-card-meta {
color: var(--white);
}
.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);
}
.luma-events-container {
display: flex;
row-gap: 50px;
column-gap: 30px;
padding: 30px;
width: 100%;
justify-content: space-around;
flex-wrap: wrap;
}
.luma-event-card {
min-width: 25%;
display: flex;
flex-direction: column;
justify-content: space-between;
align-content: space-between;
align-items: flex-start;
flex-wrap: wrap;
} .upcoming-card:empty,
.upcoming-card.is-empty {
display: none !important;
}
:is(h1, h2, h3):has(+ :is(.upcoming-card:empty, .upcoming-card.is-empty)) {
display: none !important;
}
.wp-block-group:has(:is(.upcoming-card:empty, .upcoming-card.is-empty)) {
display: none !important;
}
.featured-card {
display: grid;
grid-template-columns: 1fr 220px;
background: var(--white);
border-radius: 12px;
overflow: hidden;
box-shadow: 0 8px 32px rgba(11, 31, 58, 0.18);
border: 1px solid var(--border);
}
.upcoming-card {
background: linear-gradient(-45deg, var(--bright-blue), var(--navy));
border-radius: 12px;
overflow: hidden;
box-shadow: 0 8px 32px rgba(11, 31, 58, 0.18);
border: 1px solid var(--border);
}
.upcoming-left {
padding: 30px;
}
.luma-featured-card.has-cover {
display: flex;
gap: 30px;
}
img.featured-cover-img {
border-radius: 10px;
}
.event-badge,
.upcoming-badge {
display: inline-flex;
align-items: center;
gap: 8px;
font-family: 'DM Sans', sans-serif;
font-size: 12px;
font-weight: 700;
letter-spacing: 0.14em;
text-transform: uppercase;
color: var(--gold);
margin-bottom: 16px;
}
.event-badge::before,
.upcoming-badge::before {
content: '';
width: 8px;
height: 8px;
background: var(--gold);
border-radius: 50%;
display: inline-block;
box-shadow: 0 0 0 3px rgba(232, 81, 18, 0.2);
animation: pulse 2s infinite;
}
.event-title,
.upcoming-title {
font-family: 'Playfair Display', serif;
font-size: 20px;
font-weight: 700;
line-height: 1.2;
}
.event-sub,
.upcoming-sub {
font-size: 15px;
color: var(--gold);
font-style: italic;
margin-bottom: 14px;
}
.event-date,
.event-location,
.upcoming-desc {
font-size: 16px;
line-height: 1.7;
margin-bottom: 24px;
text-wrap: balance;
}
.upcoming-desc,
.upcoming-title {
color: var(--white);
}
.upcoming-meta {
display: flex;
gap: 20px;
flex-wrap: wrap;
margin-bottom: 28px;
}
.upcoming-meta span {
font-size: 15px;
color: var(--white);
display: flex;
align-items: center;
gap: 6px;
}
.upcoming-meta svg {
stroke: var(--gold);
flex-shrink: 0;
}
.upcoming-right {
background: #1a3560f2;
border-left: 1px solid rgba(255, 255, 255, 0.07);
padding: 36px 28px;
display: flex;
flex-direction: column;
justify-content: center;
gap: 16px;
}
.upcoming-right p {
font-size: 15px;
color: var(--white);
line-height: 1.65;
}
.upcoming-right a.view-luma {
font-size: 15px;
color: var(--gold);
text-decoration: none;
display: inline-flex;
align-items: center;
gap: 4px;
border-bottom: 1px solid rgba(232, 81, 18, 0.35);
padding-bottom: 2px;
align-self: flex-start;
margin-top: 4px;
}
.luma-live-badge {
display: inline-flex;
align-items: center;
gap: 8px;
font-size: 14px;
font-weight: 700;
letter-spacing: 0.12em;
text-transform: uppercase;
color: var(--gold);
margin-bottom: 4px;
}
.luma-live-badge svg {
stroke: var(--gold);
}
.luma-wrap {
border-radius: 12px;
overflow: hidden;
border: 1px solid rgba(11, 31, 58, 0.15);
box-shadow: 0 4px 24px rgba(11, 31, 58, 0.18);
background: #1a2744;
}  .jhtc-years-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(360px, 1fr));
gap: 40px 48px;
margin: 2rem 0;
font-family: inherit;
}
.timeline-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 48px 64px;
}
.year-block {
margin-bottom: 8px;
}
.jhtc-year-banner,
.year-header {
display: flex;
align-items: center;
gap: 14px;
margin-bottom: 18px;
}
.jhtc-year-pill,
.year-badge {
font-size: 16px;
font-weight: 700;
color: var(--navy);
background: var(--white);
border: 2px solid var(--navy);
border-radius: 20px;
padding: 3px 14px;
white-space: nowrap;
flex-shrink: 0;
}
.jhtc-year-line,
.year-line {
flex: 1;
height: 2px;
background: var(--border);
} .jhtc-timeline {
position: relative;
padding-left: 24px;
}
.jhtc-timeline::before {
content: "";
position: absolute;
top: 0;
bottom: 0;
left: 5px;
width: 2px;
background-color: var(--border);
}
.jhtc-timeline-item {
position: relative;
border-bottom: 1px solid var(--border);
padding: 12px 0;
background: transparent;
}
.jhtc-timeline-summary {
display: flex;
align-items: center;
cursor: pointer;
list-style: none;
position: relative;
user-select: none;
}
.jhtc-timeline-summary::-webkit-details-marker {
display: none;
}
.jhtc-timeline-summary::before {
content: "";
position: absolute;
left: -24px;
top: 50%;
transform: translateY(-50%);
width: 13px;
height: 13px;
border-radius: 50%;
border: 2px solid var(--border);
background: var(--white);
transition: all 0.2s ease;
z-index: 1;
}
.jhtc-timeline-summary:hover::before,
.jhtc-timeline-item[open] .jhtc-timeline-summary::before {
background: var(--prim);
border: 2px solid var(--prim);
}
.jhtc-month-badge {
color: var(--prim);
font-weight: 700;
font-size: 0.85rem;
letter-spacing: 0.05em;
width: 48px;
flex-shrink: 0;
text-transform: uppercase;
}
.jhtc-event-title,
.tl-title {
font-size: 14px;
font-weight: 500;
color: var(--text);
line-height: 1.4;
display: flex;
align-items: center;
gap: 6px;
transition: color 0.2s;
}
.jhtc-timeline-summary:hover .jhtc-event-title,
.jhtc-timeline-item[open] .jhtc-month-badge,
.jhtc-timeline-item[open] .jhtc-event-title,
.tl-event:hover .tl-title {
color: var(--navy);
}
.jhtc-event-arrow {
padding-left: 6px;
}
.jhtc-timeline-summary:hover .jhtc-event-arrow svg,
.jhtc-timeline-item[open] .jhtc-event-arrow svg {
opacity: 1;
transform: translateX(0);
}
.jhtc-event-details {
padding: 12px 0 8px 48px;
font-size: 16px;
color: var(--text);
line-height: 1.5;
}
.jhtc-event-details p {
margin: 4px 0;
}
.jhtc-event-description {
margin: 10px 0;
color: var(--text-muted);
}
.jhtc-event-link {
color: #2563eb;
text-decoration: none;
font-weight: 600;
display: inline-block;
margin-top: 4px;
}
.jhtc-event-link:hover {
text-decoration: underline;
} .timeline-events {
display: flex;
flex-direction: column;
position: relative;
padding-left: 28px;
}
.timeline-events::before {
content: '';
position: absolute;
left: 9px;
top: 8px;
bottom: 8px;
width: 2px;
background: var(--border);
}
.tl-event {
display: flex;
align-items: flex-start;
gap: 14px;
padding: 10px 0;
position: relative;
text-decoration: none;
}
.tl-dot {
width: 13px;
height: 13px;
min-width: 13px;
border-radius: 50%;
background: var(--white);
border: 2px solid var(--border);
position: absolute;
left: -24px;
top: 14px;
transition: all 0.2s;
}
.tl-event:hover .tl-dot {
background: var(--gold);
border-color: var(--gold);
}
.tl-month {
font-size: 14px;
font-weight: 700;
letter-spacing: 0.1em;
text-transform: uppercase;
color: var(--gold);
min-width: 28px;
margin-top: 2px;
flex-shrink: 0;
}
.tl-content {
flex: 1;
padding-bottom: 10px;
border-bottom: 1px solid var(--border);
}
.tl-event:last-child .tl-content {
border-bottom: none;
}
.tl-meta {
font-size: 14px;
color: var(--text-muted);
margin-top: 2px;
}
.tl-arrow {
width: 13px;
height: 13px;
fill: none;
stroke: var(--gold);
stroke-width: 2;
opacity: 0;
transition: opacity 0.2s;
flex-shrink: 0;
}
.tl-event:hover .tl-arrow {
opacity: 1;
}  .jhtc-noted-section {
margin: 3rem 0;
font-family: inherit;
}
.jhtc-section-heading {
color: var(--navy);
font-size: 1.5rem;
font-weight: 700;
margin-bottom: 1.25rem;
padding-bottom: 8px;
border-bottom: 2px solid var(--border);
}
.jhtc-speakers-list {
list-style: none;
padding: 0;
margin: 0 0 2.5rem 0;
display: grid;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: 16px 24px;
}
.jhtc-speakers-list li {
position: relative;
padding-left: 20px;
font-size: 0.95rem;
line-height: 1.5;
color: var(--text-muted);
}
.jhtc-speakers-list li::before {
content: "";
position: absolute;
left: 0;
top: 9px;
width: 8px;
height: 8px;
border-radius: 50%;
background-color: #e87a5d;
}
.speaker-name {
font-weight: 700;
color: var(--text);
display: inline;
}
.speaker-name::after {
content: ", ";
}
.speaker-desc {
color: #475569;
}
.jhtc-testimonials-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
gap: 24px;
}
.jhtc-testimonial-card,
.advisors-block,
.history-block {
border-left: 4px solid var(--prim);
padding: 24px 28px;
border-radius: 0 6px 6px 0;
margin-bottom: 24px;
}
.jhtc-testimonial-card,
.history-block {
background: var(--cream);
}
.advisors-block {
margin-top: 36px;
background: var(--white);
}
.jhtc-quote {
font-size: 16px;
line-height: 1.6;
color: var(--text-muted);
margin: 0 0 16px 0;
}
.jhtc-author {
font-style: normal;
display: flex;
flex-direction: column;
gap: 2px;
}
.jhtc-author strong {
color: var(--navy);
font-size: 0.95rem;
font-weight: 700;
}
.jhtc-author span {
color: var(--navy);
font-size: 0.85rem;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.03em;
} .board-grid,
.advisors-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 20px;
margin-top: 36px;
margin-bottom: 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);
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,
.pillar h3 {
font-size: 24px;
font-weight: 600;
color: var(--navy);
margin-bottom: 10px;
}
.faq-item p,
.advisors-block p,
.history-block p {
font-size: 16px;
color: var(--text-muted);
line-height: 1.7;
} .advisors-block h3,
.history-block h3,
.info-card h3,
.contact-info h3,
.fn-cta h3,
.sponsor-cta-text h3,
.partner-box h3,
.partner-card-body h3,
.who-col h3 {
font-family: 'Playfair Display', serif;
font-size: 24px;
color: var(--navy);
margin-bottom: 10px;
font-weight: 600;
} :where(.jhtc-main) .steps {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 24px;
margin-top: 40px;
}
:where(.jhtc-main) .step {
background: var(--cream);
border: 1px solid var(--border);
border-radius: 8px;
padding: 28px 24px;
}
:where(.jhtc-main) .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;
}
:where(.jhtc-main) .step h3 {
font-size: 24px;
font-weight: 600;
color: var(--navy);
margin-bottom: 10px;
}
:where(.jhtc-main) .step p {
font-size: 16px;
color: var(--text-muted);
line-height: 1.6;
}
:where(.jhtc-directory) .steps {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 20px;
}
:where(.jhtc-directory) .step {
background: rgba(255, 255, 255, .1);
border: 1px solid rgba(255, 255, 255, .22);
border-radius: 4px;
padding: 28px;
display: flex;
flex-direction: column;
gap: 12px;
}
:where(.jhtc-directory) .step-num {
width: 40px;
height: 40px;
border-radius: 50%;
background: var(--prim);
color: var(--navy);
display: flex;
align-items: center;
justify-content: center;
font-weight: 700;
font-size: 17px;
}
:where(.jhtc-directory) .step h3 {
font-size: 22px;
}
:where(.jhtc-directory) .step p {
font-size: 15px;
line-height: 1.55;
color: var(--white);
} .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;
}
.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;
} .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,
.info-icon {
width: 36px;
height: 36px;
background: rgba(201, 168, 76, 0.12);
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
}
.pillar-icon {
margin-bottom: 12px;
}
.pillar-icon svg,
.info-icon svg,
.venue-card svg {
width: 18px;
height: 18px;
fill: none;
stroke: var(--prim);
stroke-width: 1.8;
}
.pillar h3 {
text-transform: uppercase;
letter-spacing: 0.05em;
}
.pillar p {
font-size: 16px;
color: var(--text-muted);
line-height: 1.6;
} :where(.jhtc-main) .pillars {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 28px;
margin-top: 40px;
}
.wp-block-group.pillars.is-layout-grid {
gap: 25px;
}
:where(.jhtc-directory) .pillars > div {
border: 1px solid var(--border);
box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.07), 0 10px 15px -3px rgba(0, 0, 0, 0.1);
padding: 30px;
border-radius: 10px;
}
.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;
}
.mission-puzzle-wrap svg a {
color: var(--navy);
}
.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;
}
.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,
.partner-card {
border: 1px solid var(--border);
border-radius: 8px;
overflow: hidden;
transition: box-shadow 0.2s, transform 0.2s;
}
.program-card:hover,
.partner-card:hover,
.sponsor-card-rich:hover {
box-shadow: 0 8px 32px rgba(27, 58, 107, 0.1);
transform: translateY(-3px);
border-color: var(--prim);
}
.program-header {
background: linear-gradient(-45deg, var(--bright-blue), 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); } .photo-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
margin-top: 40px;
gap: 12px;
}
.photo-grid a {
display: block;
aspect-ratio: 1 / 1;
overflow: hidden;
border-radius: 8px;
}
.photo-grid img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.2s ease-in-out;
}
.photo-grid img:hover {
transform: scale(1.05);
}
.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;
} .info-card {
background: var(--white);
border: 1px solid var(--border);
border-radius: 8px;
padding: 28px 24px;
}
.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;
}
.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-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(--bright-blue), var(--navy));
border-radius: 8px;
padding: 40px;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 40px;
margin-top: 40px;
}
.who-col h3,
.fn-cta h3,
.sponsor-cta-text h3,
.partner-box h3 {
color: var(--white);
}
.partner-box h3 {
display: block;
}
.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;
margin: 0;
}
.fn-cta {
background: linear-gradient(135deg, var(--navy) 0, #1a4a7a 100%);
border-radius: 8px;
padding: 52px;
text-align: center;
}
.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;
} .summit-eyebrow {
display: block;
font-size: 0.75rem;
font-weight: 700;
letter-spacing: 0.08em;
text-transform: uppercase;
color: #f26b52;
margin-bottom: 6px;
}
.summit-card-title {
font-family: inherit;
font-size: 1.35rem;
font-weight: 700;
color: var(--navy);
margin: 0 0 20px 0;
line-height: 1.3;
}
.summit-card {
display: grid;
grid-auto-flow: column;
gap: 24px;
}
.summit-card-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 16px;
}
.summit-grid-item {
display: flex;
flex-direction: column;
gap: 2px;
}
.item-label {
font-size: 14px;
font-weight: 600;
color: var(--prim);
text-transform: uppercase;
letter-spacing: 0.04em;
}
.item-value {
font-size: 16px;
font-weight: 600;
color: var(--text-muted);
} .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;
}
.jya-footer .section-label {
margin: 16px 0;
}
.partners .section-footer {
margin-top: 16px;
}
.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;
} .points {
display: flex;
flex-direction: column;
gap: 14px;
margin: 6px 0 0;
padding: 0;
list-style: none;
}
.points li {
display: flex;
gap: 14px;
align-items: flex-start;
font-size: 16px;
color: var(--ink);
}
.points svg {
flex: 0 0 auto;
margin-top: 2px;
}
.points strong {
color: var(--navy);
}
.why {
display: flex;
gap: 80px;
align-items: flex-start;
}
.why h2 {
flex: 0 0 250px;
}
.why-body {
display: flex;
flex-direction: column;
gap: 18px;
font-size: 18px;
line-height: 1.7;
color: var(--ink);
}
.nationwide {
display: flex;
gap: 64px;
align-items: center;
}
.globe {
flex: 0 0 128px;
height: 128px;
border-radius: 50%;
border: 3px solid var(--bright-blue);
display: flex;
align-items: center;
justify-content: center;
}
.band {
background: linear-gradient(135deg, var(--navy) 0%, var(--b) 30%, var(--bright-blue) 100%);
color: var(--white);
}
body.wp-theme-listinghive.jhtc-theme .band :is(h2, h3) {
color: var(--white);
}
.how-head {
margin-bottom: 48px;
}
.how-head h2 {
font-size: 40px;
}
.how-head p {
font-size: 16px;
line-height: 1.6;
color: var(--white);
}
.center-head {
text-align: center;
display: flex;
flex-direction: column;
margin-bottom: 44px;
}
.cards {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 24px;
}
.card {
border: 1px solid var(--border);
border-top: 4px solid var(--b);
border-radius: 4px;
padding: 40px;
display: flex;
flex-direction: column;
gap: 20px;
background: var(--white);
align-items: flex-start;
}
.card.alt {
border-top-color: var(--navy);
}
.card h3 {
font-size: 26px;
}
.card .btn {
align-self: flex-start;
font-size: 15px;
padding: 12px 22px;
margin-top: auto;
}
.checks {
list-style: none;
display: flex;
flex-direction: column;
gap: 12px;
margin-left: 0;
margin-bottom: 28px;
flex: 1;
}
ul.checks:not(:last-child) {
margin-bottom: 0;
}
.checks li {
font-size: 16px;
color: var(--text);
display: flex;
align-items: flex-start;
gap: 10px;
line-height: 1.6;
}
.checks .ck {
flex: 0 0 auto;
} body.jhtc-theme.page-id-5 :is(.wp-block-archives, .wp-block-calendar, .wp-block-categories, .wp-block-embed, .wp-block-gallery, .wp-block-group.has-background, .wp-block-image, .wp-block-latest-comments, .wp-block-latest-posts, .wp-block-media-text, .wp-block-pullquote, .wp-block-quote.is-style-large, .wp-block-rss, .wp-block-search, .wp-block-video):not(:last-child) {
margin-bottom: 0;
}
body.jhtc-theme.page-id-5 :is(.wp-block-archives, .wp-block-calendar, .wp-block-categories, .wp-block-embed, .wp-block-gallery, .wp-block-group.has-background, .wp-block-image, .wp-block-latest-comments, .wp-block-latest-posts, .wp-block-media-text, .wp-block-pullquote, .wp-block-quote.is-style-large, .wp-block-rss, .wp-block-search, .wp-block-video):not(:first-child) {
margin-top: 0;
} .sponsors,
.partners {
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-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 0;
flex: 1;
display: flex;
flex-direction: column;
cursor: pointer;
}
.sponsor-card-rich-body h3 {
font-family: 'Playfair Display', serif;
font-size: 20px;
font-weight: 600;
color: var(--navy);
}
.sponsor-title {
display: flex;
justify-content: space-between;
align-items: center;
}
.sponsor-toggle-arrow {
display: inline-block;
transition: transform 0.3s ease;
font-size: 0.85em;
margin-left: 8px;
}
.sponsor-toggle-arrow .tl-arrow {
opacity: 1;
width: 20px;
height: 20px;
stroke: var(--navy);
}
.sponsor-card-rich-body .sponsor-title:hover .sponsor-toggle-arrow .tl-arrow,
.sponsor-card-rich-body.is-open .sponsor-toggle-arrow .tl-arrow {
stroke: var(--prim);
}
.sponsor-card-rich-body p {
font-size: 16px;
color: var(--text-muted);
line-height: 1.65;
flex: 1;
max-height: 0;
overflow: hidden;
opacity: 0;
transition: max-height 0.35s ease, opacity 0.25s ease, margin 0.25s ease;
margin-top: 0;
margin-bottom: 0;
padding-bottom: 20px;
}
.sponsor-card-rich-body.is-open p {
max-height: 500px;
opacity: 1;
margin-top: 0.5rem;
margin-bottom: 0.5rem;
}
.sponsor-card-link {
display: inline-block;
margin-top: 0.25rem;
} .sponsors-grid {
display: flex;
gap: 24px;
margin-top: 48px;
align-items: center;
justify-content: 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(--bright-blue), var(--navy));
border-radius: 8px;
padding: 40px;
display: flex;
justify-content: space-between;
align-items: center;
gap: 24px;
flex-wrap: wrap;
}
.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;
}
.jhtc-sponsor-slider-wrapper {
overflow: hidden;
white-space: nowrap;
position: relative;
width: 100%;
padding: 20px 0;
background: transparent;
}
.jhtc-sponsor-slider-wrapper::before,
.jhtc-sponsor-slider-wrapper::after {
content: '';
position: absolute;
top: 0;
width: 80px;
height: 100%;
z-index: 2;
pointer-events: none;
}
.jhtc-sponsor-slider-wrapper::before {
left: 0;
background: linear-gradient(to right, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0));
}
.jhtc-sponsor-slider-wrapper::after {
right: 0;
background: linear-gradient(to left, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0));
}
.jhtc-sponsor-slider-track {
display: flex;
align-items: center;
width: max-content;
animation: jhtc-scroll 20s linear infinite;
}
.jhtc-sponsor-slider-track:hover,
.marquee-inner:hover {
animation-play-state: paused;
}
.jhtc-sponsor-slide {
flex: 0 0 auto;
padding: 0 30px;
display: flex;
align-items: center;
justify-content: center;
}
.jhtc-sponsor-slide a {
display: inline-block;
transition: transform 0.2s ease, opacity 0.2s ease;
}
.jhtc-sponsor-slide a:hover {
transform: scale(1.05);
}
.jhtc-sponsor-logo {
max-height: 60px;
width: auto;
object-fit: contain;
filter: grayscale(100%);
opacity: 0.7;
transition: filter 0.3s ease, opacity 0.3s ease;
}
.jhtc-sponsor-slide:hover .jhtc-sponsor-logo {
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-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);
} .partner-box {
background: linear-gradient(-45deg, var(--bright-blue), var(--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;
} .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-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 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);
text-wrap: balance;
}
.partners .boxes img {
width: auto;
height: auto;
max-height: 50px;
} .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: var(--white);
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;
}  :where(.jhtc-main) :is(input[type=email], input[type=number], input[type=password], input[type=reset], input[type=search], input[type=tel], input[type=text], input[type=url]),
:where(.jhtc-main) select,
:where(.jhtc-main) 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;
}
:where(.jhtc-main) label {
text-transform: uppercase;
}
:where(.jhtc-main) :is(input, textarea, .wp-block-search__input):focus,
:where(.jhtc-main) :is(input[type=text], input[type=email], input[type=url], input[type=password], input[type=reset], input[type=search], input[type=number]):focus {
border-color: var(--prim);
}
.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,
.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;
}
.form-group input,
.form-group textarea,
.form-group select,
.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);
}
.form-group input:focus,
.form-group textarea:focus,
.form-group select:focus,
.jya-footer #mc_embed_signup .mc-field-group input:focus,
.newsletter-form input:focus {
border-color: var(--prim);
}
.form-group textarea {
height: 140px;
resize: vertical;
}
.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;
}
.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 {
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;
} .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 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);
} .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 .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;
} .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;
} body.jhtc-theme .hp-field__label,
body.jhtc-theme .hp-founder__action--message,
body.jhtc-theme .hp-provider__action--message,
body.jhtc-theme .hp-request__action--message {
font-size: 14px;
font-weight: 600;
}
body.jhtc-theme .hp-field--checkboxes ul ul,
.hp-field--radio ul ul {
margin: .5rem 0 0 0;
}
body.jhtc-theme .hp-field--attachment-upload > div:first-child:not(:empty) {
margin-bottom: 11px !important;
padding-bottom: 0 !important;
} .hp-vendor__summary .hp-row > [class*="hp-col-"],
.hp-founder__summary .hp-row > [class*="hp-col-"],
.hp-provider__summary .hp-row > [class*="hp-col-"] {
min-width: 0;
}
.hp-vendor__attribute,
.hp-founder__attribute,
.hp-provider__attribute,
.hp-vendor__summary .hp-listing__attribute,
.hp-vendor__attributes a,
.hp-vendor__summary a {
min-width: 0;
max-width: 100%;
overflow-wrap: anywhere;
word-break: break-word;
}
.hp-vendor__summary .hp-row > .hp-col-lg-6,
.hp-founder__summary .hp-row > .hp-col-lg-6,
.hp-provider__summary .hp-row > .hp-col-lg-6 {
flex: 0 0 100%;
max-width: 100%;
}
.hp-block.hp-founder__attributes.hp-founder__attributes--prim.widget.hp-widget,
.hp-block.hp-provider__attributes.hp-provider__attributes--prim.widget.hp-widget,
.hp-founder--view-page .hp-founder__attributes--prim,
.hp-provider--view-page .hp-provider__attributes--prim {
border: 1px solid rgba(7, 36, 86, 0.075);
border-radius: 3px;
box-shadow: 0 2px 4px 0 rgba(7, 36, 86, 0.075);
background-color: var(--white);
padding: 1rem 1.5rem;
word-wrap: break-word;
}
.hp-founder--view-page .hp-founder__attributes--prim,
.hp-provider--view-page .hp-provider__attributes--prim {
text-align: center;
font-size: 120%;
}
.hp-founder--view-page .hp-founder__attributes--prim .hp-founder__attribute:not(:last-child),
.hp-provider--view-page .hp-provider__attributes--prim .hp-provider__attribute:not(:last-child) {
border-bottom: 1px solid rgba(7, 36, 86, 0.075);
margin-bottom: 0.5rem;
padding-bottom: 0.5rem;
}
body.list-0 aside.hp-page__sidebar.hp-col-sm-4.hp-col-xs-12.hp-vendor.hp-vendor--view-page.site-sidebar {
-ms-flex-preferred-size: 100%;
flex-basis: 100%;
max-width: 100%;
}
body.list-0 .hp-page__content.hp-col-sm-8.hp-col-xs-12 {
display: none;
-ms-flex-preferred-size: 0%;
flex-basis: 0%;
max-width: 0%;
}
.hp-vendor__image {
aspect-ratio: 1/1;
display: flex;
align-items: center;
border-radius: 50%;
overflow: hidden;
border: 1px solid var(--border);
}
body.jhtc-theme .hp-vendor__image img {
display: block;
width: 100%;
height: auto;
border-radius: 0;
}
.hp-provider__role-badge.hp-meta {
color: var(--navy);
font-size: 14px;
background: rgba(14, 35, 64, 0.07);
padding: 7px 10px;
border-radius: 20px;
font-weight: 500;
text-align: center;
width: 100%;
text-transform: none;
} body.jhtc-theme .hp-form__messages,
body.jhtc-theme :is(.hp-founders__messages, .hp-providers__messages, .hp-requests__messages) .hp-form__message {
background-color: var(--cream);
}
.hp-form--founder-search,
.hp-form--provider-search,
.hp-form--request-search {
border: 1px solid rgba(7, 36, 86, 0.075);
border-radius: 3px;
box-shadow: 0 2px 4px 0 rgba(7, 36, 86, 0.075);
background-color: var(--white);
padding: 0.625rem;
align-items: center;
}
:is(.hp-form--founder-search, .hp-form--provider-search, .hp-form--request-search) .hp-form__field :is(input[type='color'], input[type='date'], input[type='datetime'], input[type='datetime-local'], input[type='email'], input[type='month'], input[type='number'], input[type='password'], input[type='range'], input[type='search'], input[type='tel'], input[type='text'], input[type='time'], input[type='url'], select, textarea) {
padding-top: 0;
padding-bottom: 0;
border: none;
font-size: 1.125rem;
line-height: 3rem;
height: 3rem;
}
:is(form.hp-form.hp-form--user-update-profile, form.hp-form.form.hp-form.hp-form--user-delete, form.hp-form.hp-form--founder-request-submit, form.hp-form.hp-form--provider-request-submit, form.hp-form.hp-form--request-submit) .hp-form__fields {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
:is(form.hp-form.hp-form--user-update-profile, form.hp-form.form.hp-form.hp-form--user-delete, form.hp-form.hp-form--founder-request-submit, form.hp-form.hp-form--provider-request-submit, form.hp-form.hp-form--request-submit) .hp-form__field {
min-width: 32%;
display: flex;
flex-direction: column;
justify-content: space-between;
}
:is(form.hp-form.hp-form--user-update-profile, form.hp-form.form.hp-form.hp-form--user-delete, form.hp-form.hp-form--founder-request-submit, form.hp-form.hp-form--provider-request-submit, form.hp-form.hp-form--request-submit) .hp-form__field.hp-form__field--checkbox {
min-width: 100%;
}
.hp-requests__card-meta {
color: var(--text-muted);
display: grid;
}
.hp-requests__founder,
.hp-requests__provider {
margin-bottom: 15px;
} footer.main {
background-color: var(--navy);
padding: 60px 40px 32px;
color: var(--white);
width: 100%;
display: block;
}
.footer-inner {
max-width: 1100px;
margin: 0 auto;
}
.footer-inner * {
color: var(--white);
}
.footer-inner a {
color: var(--prim);
}
.footer-grid {
display: grid;
grid-template-columns: 1fr 4fr;
gap: 48px;
margin-bottom: 48px;
}
.footer-inner-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
gap: 15px;
align-content: end;
align-items: start;
}
.footer-brand .footer-logo {
display: flex;
align-items: flex-start;
gap: 10px;
margin-bottom: 16px;
flex-direction: column;
}
.footer-brand .footer-logo img.footer-logo-img {
height: 44px;
width: auto;
filter: brightness(0) invert(1);
opacity: 0.8;
margin-bottom: 10px;
}
.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,
.footer-bottom .textwidget.custom-html-widget,
div#block-9 {
display: flex;
justify-content: space-between;
align-items: center;
font-size: 12px;
flex-wrap: wrap;
gap: 12px;
}
.footer-bottom {
border-top: 1px solid rgba(255, 255, 255, 0.5);
padding-top: 24px;
}
.footer-bottom span {
color: var(--white);
} div#block-9 {
padding-top: 24px;
font-size: 16px;
}
#block-9 a {
font-weight: 600;
color: var(--prim);
}
#block-9 a:hover {
text-decoration: underline;
}
.nonprofit-badge {
background: rgba(201, 168, 76, 0.15);
border: 1px solid rgba(201, 168, 76, 0.25);
color: var(--light-prim);
font-weight: 500;
padding: 5px 12px;
border-radius: 20px;
letter-spacing: 0.05em;
} .jhtc-sticky-back-btn {
position: fixed;
bottom: 24px;
left: 24px;
z-index: 9999;
display: inline-flex;
align-items: center;
padding: 10px;
background-color: var(--navy);
color: var(--white);
font-family: inherit;
font-size: 14px;
font-weight: 600;
line-height: 1;
text-decoration: none;
border: none;
border-radius: 6px;
box-shadow: 0 4px 14px rgba(0, 0, 0, 0.15);
cursor: pointer;
transition: all 0.2s ease-in-out;
}
.jhtc-sticky-back-btn[hidden] {
display: none;
}
.jhtc-sticky-back-btn:hover {
background-color: var(--prim);
color: var(--navy);
transform: translateY(-2px);
box-shadow: 0 6px 18px rgba(0, 0, 0, 0.22);
}
.jhtc-sticky-back-btn:active {
transform: translateY(0);
}
.jhtc-sticky-back-btn svg {
display: block;
flex-shrink: 0;
} @keyframes pulse {
0%, 100% { box-shadow: 0 0 0 3px rgba(232, 81, 18, 0.2); }
50%      { box-shadow: 0 0 0 6px rgba(232, 81, 18, 0); }
}
@keyframes marquee {
0%   { transform: translateX(0); }
100% { transform: translateX(-50%); }
}
@keyframes jhtc-scroll {
0%   { transform: translateX(0); }
100% { transform: translateX(-50%); }
} @media (min-width: 768px) {
.hp-page__sidebar > *,
.hp-page__sidebar .hp-menu--user-account {
top: 110px !important;
}
}
@media only screen and (min-width: 48em) {
aside.hp-page__sidebar.hp-col-sm-4.hp-col-xs-12.hp-vendor.hp-vendor--view-page.site-sidebar.list-3.list-3 {
-ms-flex-preferred-size: 66.66666666%;
flex-basis: 66.66666666%;
max-width: 66.66666666%;
}
.hp-page__content.hp-col-sm-8.hp-col-xs-12.list-3 {
-ms-flex-preferred-size: 33.33333333%;
flex-basis: 33.33333333%;
max-width: 33.33333333%;
}
.hp-page__content.hp-col-sm-8.hp-col-xs-12.list-3 .hp-grid__item.hp-col-sm-6.hp-col-xs-12 {
-ms-flex-preferred-size: 100%;
flex-basis: 100%;
max-width: 100%;
}
}
@media (max-width: 900px) {
section,
section.wp-block-group.has-background {
padding: 56px 20px;
}
.page-hero {
padding: 48px 20px;
}
body.jhtc-theme.jhtc-main .header-hero {
padding: 48px 0;
}
.upcoming-card,
.timeline-grid,
.featured-card {
grid-template-columns: 1fr;
}
.upcoming-right {
border-left: none;
border-top: 1px solid rgba(255, 255, 255, 0.07);
}
.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);
}
.luma-featured-card.has-cover {
flex-direction: column-reverse;
}
.luma-event-card {
max-width: 45%;
}
}
@media (max-width: 768px) {
.jhtc-sticky-back-btn {
bottom: 16px;
left: 16px;
padding: 8px 14px;
font-size: 13px;
}
}
@media only screen and (max-width: 47.99em) {
.header-navbar .wp-block-button__link.wp-element-button span {
display: none;
}
.header-navbar .wp-block-button__link.wp-element-button::before,
button.hp-menu__item.hp-menu__item--request-submit.button.button--secondary::before {
margin-right: 0;
}
:is(form.hp-form.hp-form--user-update-profile, form.hp-form.form.hp-form.hp-form--user-delete, form.hp-form.hp-form--founder-request-submit, form.hp-form.hp-form--provider-request-submit, form.hp-form.hp-form--request-submit) .hp-form__field {
min-width: 49%;
}
.hp-form--founder-search,
.hp-form--provider-search,
.hp-form--request-search {
align-items: stretch;
}
:is(.hp-form--founder-search, .hp-form--provider-search, .hp-form--request-search) .hp-form__field:not(:last-child) {
border-right: none;
border-bottom: 1px solid rgba(7, 36, 86, 0.075);
}
:is(.hp-form--founder-search, .hp-form--provider-search, .hp-form--request-search) :is(.hp-form__field, .hp-form__fields):not(:last-child) {
margin: 0;
}
:is(.hp-form--founder-search, .hp-form--provider-search, .hp-form--request-search) .hp-form__fields:not(:last-child) {
margin-bottom: 0.625rem;
}
}
@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,
.solves-grid {
grid-template-columns: 1fr;
gap: 20px;
}
.partners .boxes {
flex-wrap: wrap;
}
.luma-event-card {
max-width: none;
width: 100%;
}
.summit-card {
grid-auto-flow: row;
}
.summit-card-grid {
grid-template-columns: repeat(2, 1fr);
}
}
@media (max-width: 600px) {
.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,
.header-hero .page-hero-inner h1,
.hero h1 {
font-size: 32px;
}
}
@media only screen and (max-width: 576px) {
:is(form.hp-form.hp-form--user-update-profile, form.hp-form.form.hp-form.hp-form--user-delete, form.hp-form.hp-form--founder-request-submit, form.hp-form.hp-form--provider-request-submit, form.hp-form.hp-form--request-submit) .hp-form__field {
min-width: 100%;
}
}
@media (max-width: 500px) {
.board-grid,
.advisors-grid {
grid-template-columns: repeat(2, 1fr);
}
}
@media (max-width: 960px) {
.nav a:not(.btn) { display: none; }
.split, .why, .membership, .member .container { flex-direction: column; align-items: flex-start; gap: 40px; }
.split > img { width: 100%; max-width: 469px; }
.why h2 { flex: none; }
.price-card { flex: none; width: 100%; }
:where(.jhtc-directory) .steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.member-actions { width: 100%; max-width: 320px; }
}
@media (max-width: 640px) {
.section { padding: 64px 0; }
.brand-name { font-size: 16px; }
.hero .container { padding-top: 72px; padding-bottom: 72px; }
.hero p { font-size: 17px; }
.nationwide { flex-direction: column; align-items: flex-start; gap: 24px; }
.globe { flex: none; width: 96px; height: 96px; }
.cards,
.steps { grid-template-columns: 1fr; }
.card,
.price-card { padding: 28px; }
.footer-cols { gap: 40px; }
}