.gl-hero,
.gl-section {
--glh-font-heading: 'Playfair Display', Georgia, serif;
--glh-font-body: 'Montserrat', 'Helvetica Neue', Arial, sans-serif;
--glh-navy: #141E30;
--glh-navy-rgb: 20, 30, 48;
--glh-navy-light: #1A2740;
--glh-gold: #C49A5C;
--glh-gold-hover: #B38A4C;
--glh-gold-soft: rgba(196, 154, 92, 0.16); --glh-gold-text: #7F5D2E; --glh-gold-accent: #A07A3E;  --glh-focus: var(--glh-navy);
--glh-white: #FFFFFF;
--glh-cream: #F5F0EB;
--glh-cream-rgb: 245, 240, 235;
--glh-charcoal: #2C2C2C;
--glh-radius: 6px;
--glh-maxw: 1280px;
--glh-ease: cubic-bezier(0.22, 1, 0.36, 1);
} .gl-hero--panel-navy .gl-hero__content,
.gl-hero--scrimcolor-navy .gl-hero__content,
.gl-hero__mission,
.gl-hero__strip,
.gl-hero--statband-navy .gl-hero__statband,
.gl-hero--cards-navy .gl-hero__cards,
.gl-hero__communities,
.gl-block--bg-navy,
.gl-feat--navy,
.gl-tmwall-drawer__head,
.gl-linksq {
--glh-gold-text: var(--glh-gold);
--glh-gold-accent: var(--glh-gold);
--glh-focus: var(--glh-gold);
} .gl-hero :where(a, button, input, select, textarea, summary, [tabindex]):focus-visible,
.gl-section :where(a, button, input, select, textarea, summary, [tabindex]):focus-visible,
.gl-tmwall-drawer :where(a, button, [tabindex]):focus-visible {
outline: 2px solid var(--glh-focus);
outline-offset: 3px;
} .gl-section {
font-family: var(--glh-font-body);
color: var(--glh-charcoal);
}
.gl-hero {
font-family: var(--glh-font-body);
color: var(--glh-charcoal);
max-width: var(--glh-maxw);
margin: 0 auto;
border: 1px solid var(--glh-navy);
border-radius: var(--glh-radius);
overflow: hidden;
background: var(--glh-navy);
box-shadow: 0 18px 50px rgba(20, 30, 48, 0.18);
} .gl-hero--kind-community,
.gl-hero--ctx-contact {
--glh-navy: #0E2040;
--glh-navy-rgb: 14, 32, 64;
} .gl-hero--full {
width: 100vw;
max-width: 100vw;
margin-left: calc(50% - 50vw);
margin-right: calc(50% - 50vw);
border: 0; border-radius: 0;
box-shadow: none;
} .gl-hero--screen {
display: flex;
flex-direction: column;
min-height: calc(100vh - var(--glh-screen-offset, 0px));
min-height: calc(100svh - var(--glh-screen-offset, 0px));
}
.gl-hero--screen .gl-hero__main {
flex: 1 1 auto;
min-height: 0;
}
.gl-hero--screen .gl-hero__media { min-height: 100%; } .gl-hero--screen.gl-hero--divider-diagonal .gl-hero__main,
.gl-hero--screen.gl-hero--divider-arrow .gl-hero__main {
display: flex;
flex-direction: column;
align-items: flex-start;
}
.gl-hero--screen.gl-hero--divider-diagonal .gl-hero__content,
.gl-hero--screen.gl-hero--divider-arrow .gl-hero__content {
flex: 1 1 auto;
}
@media (max-width: 900px) { .gl-hero--screen { min-height: 0; }
}
.gl-hero * { box-sizing: border-box; } .gl-hero__main {
display: grid;
grid-template-columns:
minmax(0, var(--glh-split-left, 1.05fr))
minmax(0, var(--glh-split-right, 1fr));
background: var(--glh-cream);
}
.gl-hero__content { container-type: inline-size;
padding: clamp(18px, 1.6vw, 34px) clamp(26px, 3.6vw, 56px) clamp(24px, 2.8vw, 46px);
display: flex;
flex-direction: column;
justify-content: center;
} .gl-hero__eyebrow {
font-family: var(--glh-font-body);
font-weight: 600;
font-size: clamp(12px, 2.4cqi, 14px);
letter-spacing: 2.6px;
text-transform: uppercase;
color: var(--glh-gold-text);
margin: 0 0 clamp(12px, 1.4cqi, 18px);
display: inline-flex;
align-items: center;
gap: 11px;
}
.gl-hero__eyebrow::before {
content: "";
width: 8px; height: 8px;
background: var(--glh-gold);
transform: rotate(45deg);
flex: 0 0 auto;
} .gl-hero__title {
font-family: var(--glh-font-heading);
color: var(--glh-navy);
font-weight: 700;
line-height: 1.04;
letter-spacing: -0.5px;
margin: 0; font-size: clamp(34px, 10.6cqi, 76px);
}
.gl-hero__line { display: block; }
.gl-hero__line--accent {
font-style: italic;
color: var(--glh-gold-accent);
font-weight: 600;
}
.gl-hero__intro {
margin: clamp(16px, 2.2cqi, 28px) 0 0;
max-width: 46ch;
font-size: clamp(16px, 3.3cqi, 19px);
line-height: 1.7;
color: var(--glh-charcoal);
opacity: 0.86;
} .gl-hero__highlights {
margin-top: clamp(22px, 3cqi, 38px);
display: grid;
grid-template-columns: repeat(var(--glh-hl-cols, 2), minmax(0, 1fr));
gap: clamp(18px, 2.4cqi, 32px) clamp(20px, 2.6cqi, 40px);
}
.gl-hero__highlight { display: flex; gap: clamp(11px, 1.4cqi, 16px); min-width: 0; }
.gl-hero__highlight-icon {
flex: 0 0 auto;
width: clamp(26px, 3.2cqi, 34px);
height: clamp(26px, 3.2cqi, 34px);
margin-top: 2px;
}
.gl-hero__highlight-icon svg,
.gl-hero__highlight-icon img { width: 100%; height: 100%; display: block; }
.gl-hero__highlight-icon svg {
stroke: var(--glh-gold);
stroke-width: 1.6;
stroke-linecap: round;
stroke-linejoin: round;
fill: none;
}
.gl-hero__highlight-title {
margin: 0;
font-family: var(--glh-font-body);
font-size: clamp(12px, 1.9cqi, 15px);
font-weight: 700;
letter-spacing: 1.2px;
text-transform: uppercase;
color: var(--glh-navy);
line-height: 1.25;
}
.gl-hero__highlight-text {
margin: clamp(5px, 0.7cqi, 8px) 0 0;
font-size: clamp(14px, 2cqi, 15px);
line-height: 1.5;
color: var(--glh-charcoal);
opacity: 0.78;
} .gl-hero--panel-navy .gl-hero__highlight-title,
.gl-hero--scrimcolor-navy .gl-hero__highlight-title { color: var(--glh-white); }
.gl-hero--panel-navy .gl-hero__highlight-text,
.gl-hero--scrimcolor-navy .gl-hero__highlight-text { color: rgba(255, 255, 255, 0.82); opacity: 1; } .gl-hero__stats {
margin-top: clamp(22px, 3.2cqi, 40px);
padding-top: clamp(20px, 2.8cqi, 32px);
border-top: 1px solid rgba(20, 30, 48, 0.12);
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: clamp(14px, 1.8vw, 26px);
}
.gl-hero__stat { min-width: 0; }
.gl-hero__stat-icon { display: block; width: clamp(26px, 3.4cqi, 34px); height: clamp(26px, 3.4cqi, 34px); margin-bottom: clamp(9px, 1.3cqi, 14px); }
.gl-hero__stat-icon svg {
width: 100%; height: 100%;
stroke: var(--glh-gold);
stroke-width: 1.6;
stroke-linecap: round;
stroke-linejoin: round;
fill: none;
}
.gl-hero__stat-value {
display: block;
font-family: var(--glh-font-heading);
font-weight: 700;
font-size: clamp(20px, 4.4cqi, 32px);
color: var(--glh-navy);
line-height: 1.05;
font-variant-numeric: tabular-nums;
}
.gl-hero__stat-label {
display: block;
margin-top: 7px;
font-size: clamp(12px, 1.9cqi, 13px);
font-weight: 600;
letter-spacing: 1.4px;
text-transform: uppercase;
color: var(--glh-gold-text);
}
.gl-hero__stat-sub {
display: block;
margin-top: 8px;
font-size: clamp(14px, 2.1cqi, 15px);
line-height: 1.5;
color: var(--glh-charcoal);
opacity: 0.72;
} .gl-hero__statband {
display: grid;
grid-template-columns: repeat(var(--glh-statband-cols, 5), minmax(0, 1fr));
background: var(--glh-cream);
border-top: 1px solid rgba(20, 30, 48, 0.10);
}
.gl-hero--statband-navy .gl-hero__statband {
background: var(--glh-navy);
border-top-color: rgba(255, 255, 255, 0.12);
}
.gl-hero__statband-item {
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
padding: clamp(28px, 4vw, 30px) clamp(16px, 2vw, 30px);
min-width: 0;
} .gl-hero__statband-item + .gl-hero__statband-item {
border-left: 1px solid rgba(20, 30, 48, 0.10);
}
.gl-hero--statband-navy .gl-hero__statband-item + .gl-hero__statband-item {
border-left-color: rgba(255, 255, 255, 0.12);
}
.gl-hero__statband-icon {
width: clamp(30px, 3vw, 40px);
height: clamp(30px, 3vw, 40px);
margin-bottom: clamp(12px, 1.4vw, 18px);
}
.gl-hero__statband-icon svg,
.gl-hero__statband-icon img { width: 100%; height: 100%; display: block; }
.gl-hero__statband-icon svg {
stroke: var(--glh-gold);
stroke-width: 1.6;
stroke-linecap: round;
stroke-linejoin: round;
fill: none;
}
.gl-hero__statband-value {
font-family: var(--glh-font-heading);
font-weight: 700;
font-size: clamp(28px, 3.4vw, 44px);
line-height: 1.04;
color: var(--glh-navy);
font-variant-numeric: tabular-nums;
}
.gl-hero--statband-navy .gl-hero__statband-value { color: var(--glh-white); }
.gl-hero__statband-label {
margin-top: clamp(8px, 0.9vw, 12px);
font-family: var(--glh-font-body);
font-size: clamp(12px, 1vw, 13px);
font-weight: 600;
letter-spacing: 1.6px;
text-transform: uppercase;
color: var(--glh-gold-text);
}
.gl-hero__statband-sub {
margin-top: clamp(8px, 0.9vw, 12px);
max-width: 22ch;
font-size: clamp(14px, 1vw, 14.5px);
line-height: 1.5;
color: var(--glh-charcoal);
opacity: 0.74;
}
.gl-hero--statband-navy .gl-hero__statband-sub { color: rgba(255, 255, 255, 0.82); opacity: 1; } .gl-hero__statband--contact .gl-hero__statband-value {
font-family: var(--glh-font-body);
font-weight: 700;
font-size: clamp(15px, 1.25vw, 18px);
line-height: 1.45;
font-variant-numeric: normal;
max-width: 24ch;
}
.gl-hero__statband--contact .gl-hero__statband-value--link { display: inline-block;
padding-block: 0.5em;
margin-block: -0.5em;
text-decoration: none;
transition: color 0.25s var(--glh-ease);
}
.gl-hero__statband--contact .gl-hero__statband-value--link:hover,
.gl-hero__statband--contact .gl-hero__statband-value--link:focus-visible {
color: var(--glh-gold);
text-decoration: underline;
} @media (max-width: 1100px) {
.gl-hero__statband { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.gl-hero__statband-item + .gl-hero__statband-item { border-left: none; }
.gl-hero__statband-item { border-top: 1px solid rgba(20, 30, 48, 0.08); }
.gl-hero--statband-navy .gl-hero__statband-item { border-top-color: rgba(255, 255, 255, 0.10); }
}
@media (max-width: 640px) {
.gl-hero__statband { grid-template-columns: repeat(2, minmax(0, 1fr)); } .gl-hero__statband--contact { grid-template-columns: 1fr; }
} .gl-hero__media {
position: relative;
overflow: hidden;
min-height: 340px;
}
.gl-hero__photo {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
object-fit: cover;
object-position: var(--glh-photo-pos, center top);
display: block;
} .gl-hero__formpanel {
position: relative;
display: flex;
flex-direction: column;
justify-content: flex-start;
gap: clamp(24px, 2.6vw, 36px);
min-height: 340px;
padding: clamp(14px, 1.6vw, 24px) clamp(32px, 3.6vw, 56px) clamp(32px, 3.6vw, 56px);
background: var(--glh-white);
}
.gl-hero__formpanel-embed { width: 100%; }
.gl-hero__formpanel-chat {
display: flex;
flex-wrap: wrap;
align-items: flex-start;
gap: 16px;
padding-top: clamp(20px, 2.4vw, 28px);
border-top: 1px solid rgba(20, 30, 48, 0.10);
}
.gl-hero__formpanel-chat-icon {
flex: 0 0 auto;
width: 44px;
height: 44px;
display: flex;
align-items: center;
justify-content: center;
border-radius: 50%;
background: rgba(196, 154, 92, 0.12);
color: var(--glh-gold);
}
.gl-hero__formpanel-chat-icon svg { width: 22px; height: 22px; stroke: currentColor; }
.gl-hero__formpanel-chat-body { flex: 1 1 220px; min-width: 0; }
.gl-hero__formpanel-chat-heading {
margin: 0 0 4px;
font-family: var(--glh-font-heading);
font-weight: 700;
font-size: 16px;
line-height: 1.3;
color: var(--glh-navy);
}
.gl-hero__formpanel-chat-text {
margin: 0;
font-size: 13.5px;
line-height: 1.55;
color: var(--glh-charcoal);
opacity: 0.82;
}
.gl-hero__formpanel-chat-btn { flex: 0 0 auto; align-self: center; white-space: nowrap; min-height: 44px; } .gl-hero__formpanel-chat-note {
flex: 0 0 auto;
align-self: center;
display: inline-flex;
align-items: center;
gap: 8px;
padding: 8px 14px;
border-radius: 999px;
background: var(--glh-gold-soft);
color: var(--glh-gold-text);
font-family: var(--glh-font-body);
font-size: 12px;
font-weight: 700;
letter-spacing: 1.4px;
text-transform: uppercase;
white-space: nowrap;
}
.gl-hero__formpanel-chat-note::before {
content: "";
width: 7px; height: 7px;
border-radius: 50%;
background: var(--glh-gold);
}
@media (max-width: 900px) {
.gl-hero__formpanel { min-height: 0; }
}
@media (max-width: 480px) {
.gl-hero__formpanel-chat-btn,
.gl-hero__formpanel-chat-note { align-self: flex-start; }
} .gl-hero--photo-contain .gl-hero__media { background: var(--glh-cream); }
.gl-hero--photo-contain .gl-hero__photo {
object-fit: contain;
object-position: var(--glh-photo-pos, center bottom);
} .gl-hero.gl-anim-ready.gl-hero--photo-contain .gl-hero__photo {
animation: none;
} .gl-hero__photo-empty {
position: absolute;
inset: 0;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
text-align: center;
gap: 8px;
padding: 24px;
background:
repeating-linear-gradient(45deg, rgba(20,30,48,0.04) 0 14px, rgba(20,30,48,0.07) 14px 28px),
var(--glh-cream);
color: var(--glh-navy);
}
.gl-hero__photo-empty span { font-family: var(--glh-font-heading); font-size: 19px; font-weight: 700; }
.gl-hero__photo-empty small { font-size: 12.5px; opacity: 0.7; max-width: 30ch; line-height: 1.5; }
.gl-hero__photo-empty code { background: var(--glh-gold-soft); padding: 1px 5px; border-radius: 3px; } .gl-hero__mission {
background: var(--glh-navy);
color: var(--glh-white);
padding: clamp(13px, 1.1vw, 26px) clamp(26px, 3.6vw, 56px);
display: grid;
grid-template-columns: auto minmax(0, 1.1fr) minmax(0, 1.2fr);
align-items: center;
gap: clamp(20px, 3vw, 46px);
}
.gl-hero__mission-mark { width: clamp(48px, 3.4vw, 78px); height: clamp(48px, 3.4vw, 78px); display: block; }
.gl-hero__mission-mark svg {
width: 100%; height: 100%;
stroke: var(--glh-gold);
stroke-width: 1.4;
fill: none;
} .gl-hero__mission-mark--img { width: auto; height: clamp(52px, 3.6vw, 84px); aspect-ratio: var(--glh-logo-ar, auto); }
.gl-hero__mission-logo {
display: block;
width: auto;
height: 100%;
max-width: 160px;
object-fit: contain;
}
.gl-hero__mission-statement { position: relative; padding-right: clamp(20px, 3vw, 46px); }
.gl-hero__mission-statement::after {
content: "";
position: absolute;
right: 0; top: 4px; bottom: 4px;
width: 1px;
background: rgba(255, 255, 255, 0.18);
}
.gl-hero__mission-eyebrow {
font-size: clamp(12px, 0.9vw, 15px);
font-weight: 600;
letter-spacing: 2.4px;
text-transform: uppercase;
color: var(--glh-gold);
margin: 0 0 8px;
}
.gl-hero__mission-heading {
font-family: var(--glh-font-heading);
font-size: clamp(19px, 1.7vw, 34px);
line-height: 1.25;
margin: 0;
color: var(--glh-white);
}
.gl-hero__mission-heading em { font-style: italic; color: var(--glh-gold-accent); white-space: nowrap; }
.gl-hero__mission-body {
margin: 0;
font-size: clamp(14px, 1vw, 21px);
line-height: 1.65;
color: rgba(255, 255, 255, 0.78);
} .gl-hero__ctas {
display: flex;
flex-wrap: wrap;
gap: 14px;
margin-top: clamp(22px, 3cqi, 36px);
}
.gl-hero__cta {
display: inline-flex;
align-items: center;
min-height: 44px;
gap: 10px;
font-family: var(--glh-font-body);
font-weight: 600;
font-size: clamp(12px, 1.9cqi, 13.5px);
letter-spacing: 1.2px;
text-transform: uppercase;
padding: 0.95em 1.4em;
border-radius: var(--glh-radius);
text-decoration: none;
border: 1px solid var(--glh-navy);
transition: background 0.25s var(--glh-ease), color 0.25s var(--glh-ease), border-color 0.25s var(--glh-ease);
}
.gl-hero__cta-arrow { width: 1.25em; height: 1.25em; flex: 0 0 auto; }
.gl-hero__cta--solid { background: var(--glh-navy); color: var(--glh-white); }
.gl-hero__cta--solid:hover { background: var(--glh-navy-light); }
.gl-hero__cta--outline { background: transparent; color: var(--glh-navy); }
.gl-hero__cta--outline:hover { background: var(--glh-navy); color: var(--glh-white); } .gl-hero--panel-navy .gl-hero__cta--solid,
.gl-hero--scrimcolor-navy .gl-hero__cta--solid { background: var(--glh-gold); color: var(--glh-navy); border-color: var(--glh-gold); }
.gl-hero--panel-navy .gl-hero__cta--solid:hover,
.gl-hero--scrimcolor-navy .gl-hero__cta--solid:hover { background: var(--glh-gold-hover); border-color: var(--glh-gold-hover); }
.gl-hero--panel-navy .gl-hero__cta--outline,
.gl-hero--scrimcolor-navy .gl-hero__cta--outline { color: var(--glh-white); border-color: rgba(255, 255, 255, 0.5); }
.gl-hero--panel-navy .gl-hero__cta--outline:hover,
.gl-hero--scrimcolor-navy .gl-hero__cta--outline:hover { background: var(--glh-white); color: var(--glh-navy); border-color: var(--glh-white); } .gl-hero__cta:focus-visible,
.gl-hero__bd-toggle:focus-visible,
.gl-hero__bd-dot:focus-visible {
outline: 2px solid var(--glh-focus);
outline-offset: 3px;
} .gl-hero__cards {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
align-items: stretch;
border-top: 2px solid var(--glh-gold);
}
.gl-hero--cards-navy .gl-hero__cards { background: var(--glh-navy); }
.gl-hero--cards-light .gl-hero__cards { background: var(--glh-cream); }
.gl-hero__card {
position: relative;
text-align: center;
padding: clamp(22px, 2.8vw, 42px) clamp(16px, 2vw, 32px);
}
.gl-hero__card + .gl-hero__card::before {
content: "";
position: absolute;
left: 0; top: 24%; bottom: 24%;
width: 1px;
}
.gl-hero--cards-navy .gl-hero__card + .gl-hero__card::before { background: rgba(255, 255, 255, 0.16); }
.gl-hero--cards-light .gl-hero__card + .gl-hero__card::before { background: rgba(20, 30, 48, 0.12); }
.gl-hero__card-icon { display: inline-block; width: clamp(30px, 2.4vw, 42px); height: clamp(30px, 2.4vw, 42px); margin-bottom: 14px; }
.gl-hero__card-icon svg {
width: 100%; height: 100%;
stroke: var(--glh-gold);
stroke-width: 1.6;
stroke-linecap: round;
stroke-linejoin: round;
fill: none;
}
.gl-hero__icon-img { display: block; width: 100%; height: 100%; object-fit: contain; }
.gl-hero__card-title {
font-family: var(--glh-font-body);
font-weight: 700;
font-size: clamp(12px, 0.95vw, 15px);
letter-spacing: 1.4px;
text-transform: uppercase;
margin: 0 0 10px;
}
.gl-hero--cards-navy .gl-hero__card-title { color: var(--glh-white); }
.gl-hero--cards-light .gl-hero__card-title { color: var(--glh-navy); }
.gl-hero__card-text {
margin: 0;
font-size: clamp(14px, 0.95vw, 14.5px);
line-height: 1.6;
}
.gl-hero--cards-navy .gl-hero__card-text { color: rgba(255, 255, 255, 0.72); }
.gl-hero--cards-light .gl-hero__card-text { color: var(--glh-charcoal); opacity: 0.78; } .gl-hero--divider-diagonal .gl-hero__main {
display: block;
position: relative;
min-height: clamp(440px, 52vh, 680px);
}
.gl-hero--divider-diagonal .gl-hero__media {
position: absolute;
top: 0; right: 0; bottom: 0; left: auto;
width: var(--glh-divider-media-w, 54%);
min-height: 0;
clip-path: polygon(0 0, 100% 0, 100% 100%, var(--glh-diag, 8%) 100%);
}
.gl-hero--divider-diagonal .gl-hero__content {
position: relative;
z-index: 2;
width: var(--glh-divider-content-w, 52%); padding-right: clamp(44px, 9vw, 150px);
} .gl-hero--divider-arrow .gl-hero__main {
display: block;
position: relative;
min-height: clamp(440px, 52vh, 680px);
}
.gl-hero--divider-arrow .gl-hero__media {
position: absolute;
top: 0; right: 0; bottom: 0; left: auto;
width: var(--glh-divider-media-w, 62%);
min-height: 0; clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%, var(--glh-arrow, 16%) 50%);
}
.gl-hero--divider-arrow .gl-hero__content {
position: relative;
z-index: 2;
width: var(--glh-divider-content-w, 56%); padding-right: clamp(48px, 9vw, 200px);
} @media (min-width: 901px) {
.gl-hero--divider-diagonal .gl-hero__eyebrow,
.gl-hero--divider-arrow .gl-hero__eyebrow { font-size: clamp(12px, 1.3vw, 14px); }
.gl-hero--divider-diagonal .gl-hero__title { font-size: calc(clamp(40px, 5.5vw, 76px) * var(--glh-title-fit, 1)); }
.gl-hero--divider-arrow .gl-hero__title    { font-size: calc(clamp(40px, 5.9vw, 76px) * var(--glh-title-fit, 1)); }
.gl-hero--divider-diagonal .gl-hero__intro,
.gl-hero--divider-arrow .gl-hero__intro    { font-size: clamp(15px, 1.8vw, 19px); }
} .gl-hero--overlay .gl-hero__main {
display: block;
position: relative;
min-height: clamp(460px, 56vh, 720px);
}
.gl-hero--overlay .gl-hero__media {
position: absolute;
inset: 0;
z-index: 0;
min-height: 0;
} .gl-hero--overlay { --glh-scrim-rgb: var(--glh-cream-rgb); }
.gl-hero--overlay .gl-hero__main::before {
content: "";
position: absolute;
inset: 0;
z-index: 1;
pointer-events: none;
background: linear-gradient(90deg,
rgb(var(--glh-scrim-rgb)) 0%,
rgba(var(--glh-scrim-rgb), 0.92) var(--glh-scrim-1, 28%),
rgba(var(--glh-scrim-rgb), 0.45) var(--glh-scrim-2, 48%),
rgba(var(--glh-scrim-rgb), 0) var(--glh-scrim-3, 66%));
}
.gl-hero--overlay .gl-hero__content {
position: relative;
z-index: 2;
max-width: 46rem;
} .gl-hero--scrim-none .gl-hero__main::before { display: none; }
.gl-hero--scrim-light  { --glh-scrim-1: 16%; --glh-scrim-2: 30%; --glh-scrim-3: 46%; }
.gl-hero--scrim-medium { --glh-scrim-1: 28%; --glh-scrim-2: 48%; --glh-scrim-3: 66%; }
.gl-hero--scrim-strong { --glh-scrim-1: 40%; --glh-scrim-2: 62%; --glh-scrim-3: 84%; } .gl-hero--scrimcolor-navy { --glh-scrim-rgb: var(--glh-navy-rgb); } .gl-hero--panel-navy .gl-hero__content { background: var(--glh-navy); } .gl-hero--scrimcolor-navy .gl-hero__title,
.gl-hero--scrimcolor-navy .gl-hero__line,
.gl-hero--panel-navy .gl-hero__title,
.gl-hero--panel-navy .gl-hero__line { color: var(--glh-white); }
.gl-hero--scrimcolor-navy .gl-hero__line--accent,
.gl-hero--panel-navy .gl-hero__line--accent { color: var(--glh-gold); }
.gl-hero--scrimcolor-navy .gl-hero__intro,
.gl-hero--panel-navy .gl-hero__intro { color: rgba(255, 255, 255, 0.85); opacity: 1; }
.gl-hero--scrimcolor-navy .gl-hero__stat-value,
.gl-hero--panel-navy .gl-hero__stat-value { color: var(--glh-white); }
.gl-hero--scrimcolor-navy .gl-hero__stat-sub,
.gl-hero--panel-navy .gl-hero__stat-sub { color: rgba(255, 255, 255, 0.78); opacity: 1; }
.gl-hero--scrimcolor-navy .gl-hero__stats,
.gl-hero--panel-navy .gl-hero__stats { border-top-color: rgba(255, 255, 255, 0.22); } @media (max-width: 900px) {
.gl-hero--overlay .gl-hero__main { min-height: 520px; }
.gl-hero--overlay .gl-hero__main::before {
background: linear-gradient(180deg,
rgba(var(--glh-scrim-rgb), 0.96) 0%,
rgba(var(--glh-scrim-rgb), 0.88) 50%,
rgba(var(--glh-scrim-rgb), 0.25) 88%,
rgba(var(--glh-scrim-rgb), 0) 100%);
}
} .gl-hero--valign-top .gl-hero__content { justify-content: flex-start; }
.gl-hero--valign-center .gl-hero__content { justify-content: center; }
.gl-hero--valign-bottom .gl-hero__content { justify-content: flex-end; }  .gl-hero--panel-navy.gl-hero--divider-arrow .gl-hero__main,
.gl-hero--panel-navy.gl-hero--divider-diagonal .gl-hero__main {
background: var(--glh-navy);
}
.gl-hero--panel-navy.gl-hero--divider-arrow .gl-hero__content,
.gl-hero--panel-navy.gl-hero--divider-diagonal .gl-hero__content {
background: transparent;
} .gl-hero--no-eyebrow-mark .gl-hero__eyebrow { gap: 0; }
.gl-hero--no-eyebrow-mark .gl-hero__eyebrow::before { display: none; } .gl-hero__line-tail { font-style: normal; color: var(--glh-navy); }
.gl-hero--panel-navy .gl-hero__line-tail,
.gl-hero--scrimcolor-navy .gl-hero__line-tail { color: var(--glh-white); } .gl-hero--panel-pattern .gl-hero__content {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220' viewBox='0 0 220 220'%3E%3Cg fill='none' stroke='%23C49A5C' stroke-width='7' opacity='0.10'%3E%3Cpath d='M8 120 64 64 120 120'/%3E%3Cpath d='M8 156 64 100 120 156'/%3E%3Cpath d='M8 192 64 136 120 192'/%3E%3C/g%3E%3C/svg%3E");
background-repeat: no-repeat;
background-position: left bottom;
background-size: clamp(120px, 17vw, 210px) auto;
} .gl-hero__communities {
background: var(--glh-navy);
padding: clamp(16px, 2vw, 30px) clamp(18px, 3.4vw, 56px) clamp(24px, 3vw, 48px);
} .gl-hero__comm-heading {
display: flex;
align-items: center;
justify-content: center;
gap: clamp(14px, 2vw, 30px);
margin: 0 0 clamp(12px, 1.5vw, 22px);
}
.gl-hero__comm-heading > span {
font-family: var(--glh-font-body);
font-weight: 700;
font-size: clamp(14px, 1.4vw, 19px);
letter-spacing: 2.4px;
text-transform: uppercase;
color: var(--glh-gold);
text-align: center;
}
.gl-hero__comm-heading::before,
.gl-hero__comm-heading::after {
content: "";
height: 1px;
flex: 1 1 auto;
max-width: clamp(40px, 12vw, 210px);
}
.gl-hero__comm-heading::before { background: linear-gradient(90deg, rgba(196, 154, 92, 0) 0%, rgba(196, 154, 92, 0.6) 100%); }
.gl-hero__comm-heading::after  { background: linear-gradient(90deg, rgba(196, 154, 92, 0.6) 0%, rgba(196, 154, 92, 0) 100%); } .gl-hero__comm-grid {
display: grid;
grid-template-columns: repeat(6, minmax(0, 1fr));
gap: clamp(12px, 1.2vw, 20px);
} @media (min-width: 1101px) {
.gl-hero__comm-grid[data-gl-comm-count="1"] { grid-template-columns: minmax(0, 460px); justify-content: center; }
.gl-hero__comm-grid[data-gl-comm-count="2"] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.gl-hero__comm-grid[data-gl-comm-count="3"] { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.gl-hero__comm-grid[data-gl-comm-count="4"] { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.gl-hero__comm-grid[data-gl-comm-count="5"] { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.gl-hero__comm-grid[data-gl-comm-count="7"] { grid-template-columns: repeat(7, minmax(0, 1fr)); }
} .gl-hero__comm-card {
position: relative;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center; text-align: center;
gap: clamp(10px, 1vw, 16px); aspect-ratio: 1 / 1; min-height: 0;
padding: clamp(18px, 1.5vw, 26px) clamp(12px, 1vw, 18px) clamp(34px, 2.4vw, 40px);
border-radius: var(--glh-radius);
overflow: hidden;
text-decoration: none;
color: var(--glh-white);
background: var(--glh-navy-light);
border: 1px solid rgba(255, 255, 255, 0.10);
isolation: isolate;
}
.gl-hero__comm-photo-wrap { position: absolute; inset: 0; z-index: 0; }
.gl-hero__comm-photo { width: 100%; height: 100%; object-fit: cover; display: block; } .gl-hero__comm-photo-empty {
position: absolute;
inset: 0;
z-index: 1;
display: flex;
align-items: flex-start;
justify-content: center;
padding-top: 10px;
background:
repeating-linear-gradient(45deg, rgba(255, 255, 255, 0.03) 0 12px, rgba(255, 255, 255, 0.06) 12px 24px),
var(--glh-navy-light);
}
.gl-hero__comm-photo-empty small { font-size: 10px; letter-spacing: 0.3px; color: rgba(255, 255, 255, 0.55); }
.gl-hero__comm-photo-empty code { color: var(--glh-gold); } .gl-hero__comm-scrim {
position: absolute;
inset: 0;
z-index: 1;
pointer-events: none;
background: linear-gradient(180deg,
rgba(20, 30, 48, 0.25) 0%,
rgba(20, 30, 48, 0.42) 42%,
rgba(20, 30, 48, 0.85) 100%);
}
.gl-hero__comm-icon {
position: relative;
z-index: 2;
width: clamp(34px, 3vw, 46px);
height: clamp(34px, 3vw, 46px);
}
.gl-hero__comm-icon svg {
width: 100%; height: 100%;
stroke: var(--glh-white);
stroke-width: 1.6;
stroke-linecap: round;
stroke-linejoin: round;
fill: none;
}
.gl-hero__comm-icon .gl-hero__icon-img { object-fit: contain; }
.gl-hero__comm-body {
position: relative;
z-index: 2;
margin-top: 0;
display: flex;
flex-direction: column;
gap: 6px;
}
.gl-hero__comm-name {
font-family: var(--glh-font-body);
font-weight: 700;
font-size: clamp(13px, 1vw, 15px);
letter-spacing: 1.4px;
text-transform: uppercase;
color: var(--glh-white);
}
.gl-hero__comm-desc {
font-size: clamp(14px, 0.85vw, 14.5px);
line-height: 1.45;
color: rgba(255, 255, 255, 0.82);
}
.gl-hero__comm-arrow {
position: absolute;
z-index: 2;
right: clamp(12px, 1vw, 16px);
bottom: clamp(12px, 1vw, 16px);
width: 22px; height: 22px;
color: var(--glh-gold);
}
.gl-hero__comm-arrow svg { width: 100%; height: 100%; display: block; }
.gl-hero__comm-card:focus-visible { outline: 2px solid var(--glh-gold); outline-offset: 3px; } .gl-hero__comm-footer {
margin: clamp(24px, 2.6vw, 40px) 0 0;
display: flex;
align-items: center;
justify-content: center;
gap: 12px;
color: rgba(255, 255, 255, 0.85);
font-size: clamp(12px, 1vw, 15px);
font-weight: 600;
letter-spacing: 1.8px;
text-transform: uppercase;
text-align: center;
}
.gl-hero__comm-footer-icon { width: clamp(20px, 1.6vw, 26px); height: clamp(20px, 1.6vw, 26px); display: inline-block; flex: 0 0 auto; }
.gl-hero__comm-footer-icon svg { width: 100%; height: 100%; stroke: var(--glh-gold); stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; fill: none; } .gl-hero__comm-empty {
margin: 0;
text-align: center;
color: rgba(255, 255, 255, 0.7);
font-size: clamp(13px, 1vw, 15px);
line-height: 1.6;
padding: clamp(20px, 2.4vw, 36px);
border: 1px dashed rgba(255, 255, 255, 0.22);
border-radius: var(--glh-radius);
} @media (hover: hover) and (prefers-reduced-motion: no-preference) {
.gl-hero__comm-card { transition: transform 0.4s var(--glh-ease), border-color 0.4s var(--glh-ease), box-shadow 0.4s var(--glh-ease); }
.gl-hero__comm-photo { transition: transform 0.6s var(--glh-ease); }
.gl-hero__comm-arrow { transition: transform 0.35s var(--glh-ease); }
a.gl-hero__comm-card:hover { transform: translateY(-6px); border-color: rgba(196, 154, 92, 0.7); box-shadow: 0 16px 32px rgba(0, 0, 0, 0.34); }
a.gl-hero__comm-card:hover .gl-hero__comm-photo { transform: scale(1.06); }
a.gl-hero__comm-card:hover .gl-hero__comm-arrow { transform: translateX(4px); }
} @media (max-width: 1100px) { .gl-hero__comm-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 700px)  { .gl-hero__comm-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 480px)  {
.gl-hero__comm-grid { grid-template-columns: 1fr; }
.gl-hero__comm-heading::before, .gl-hero__comm-heading::after { display: none; }
} @media (max-width: 900px) {
.gl-hero__main { grid-template-columns: 1fr; }
.gl-hero__media { order: -1; min-height: 300px; aspect-ratio: 16 / 11; }
.gl-hero__mission { grid-template-columns: auto 1fr; }
.gl-hero__mission-body { grid-column: 1 / -1; }
.gl-hero__mission-statement { padding-right: 0; }
.gl-hero__mission-statement::after { display: none; } .gl-hero__cards { grid-template-columns: repeat(2, 1fr); }
.gl-hero__card:nth-child(odd)::before { display: none; } .gl-hero--divider-diagonal .gl-hero__main,
.gl-hero--divider-arrow .gl-hero__main { display: flex; flex-direction: column; min-height: 0; }
.gl-hero--divider-diagonal .gl-hero__media,
.gl-hero--divider-arrow .gl-hero__media { position: relative; width: auto; clip-path: none; order: -1; aspect-ratio: 16 / 11; }
.gl-hero--divider-diagonal .gl-hero__content,
.gl-hero--divider-arrow .gl-hero__content { width: auto; }
}
@media (max-width: 560px) {
.gl-hero__stats { grid-template-columns: repeat(2, 1fr); gap: 22px 18px; }
.gl-hero__mission { grid-template-columns: 1fr; text-align: center; justify-items: center; gap: 16px; }
.gl-hero__mission-mark { width: 48px; height: 48px; margin-inline: auto; }
.gl-hero__mission-mark--img { width: auto; margin-inline: auto; }
.gl-hero__mission-logo { margin-inline: auto; }
.gl-hero__mission-statement { padding-right: 0; }
.gl-hero__mission-statement::after { display: none; }
.gl-hero__cards { grid-template-columns: 1fr; }
.gl-hero__card::before { display: none !important; }
.gl-hero__card + .gl-hero__card { border-top: 1px solid rgba(255, 255, 255, 0.12); }
.gl-hero--cards-light .gl-hero__card + .gl-hero__card { border-top-color: rgba(20, 30, 48, 0.1); }
} .gl-hero.gl-anim-ready [data-gl-reveal] {
opacity: 0;
transform: translateY(18px);
}
.gl-hero.gl-anim-ready.gl-revealed [data-gl-reveal] {
opacity: 1;
transform: none;
transition: opacity 0.7s var(--glh-ease), transform 0.7s var(--glh-ease);
transition-delay: var(--gl-d, 0ms);
} [data-gl-count].is-counting {
position: relative;
-webkit-text-fill-color: transparent;
}
[data-gl-count].is-counting::before {
content: attr(data-gl-anim);
position: absolute;
inset: 0;
-webkit-text-fill-color: currentColor;
white-space: nowrap;
pointer-events: none;
} .gl-hero.gl-anim-ready .gl-hero__photo {
animation: glh-kenburns 26s ease-in-out 1.2s infinite alternate;
transform-origin: 60% 30%;
}
@keyframes glh-kenburns {
from { transform: scale(1); }
to   { transform: scale(1.06); }
}
@media (prefers-reduced-motion: reduce) {
.gl-hero.gl-anim-ready [data-gl-reveal] { opacity: 1 !important; transform: none !important; }
.gl-hero.gl-anim-ready .gl-hero__photo { animation: none !important; }
} .gl-hero--slider { display: block; }
.gl-hero__slider { width: 100%; }
.gl-hero__slider > * { max-width: none; } .gl-hero--backdrop { --glh-bd-offset: var(--glh-screen-offset, 120px);
--glh-bd-fade: 1.4s; --glh-bd-dur: 9s; }
.gl-hero--backdrop .gl-hero__main {
display: flex;
flex-direction: column;
position: relative;
isolation: isolate;
overflow: hidden;
background: var(--glh-navy);  min-height: min(max(540px, calc(100vh  - var(--glh-bd-offset))), 960px);
min-height: min(max(540px, calc(100svh - var(--glh-bd-offset))), 960px);
} .gl-hero__backdrop {
position: absolute;
inset: 0;
z-index: 0;
pointer-events: none;
}
.gl-hero__bd-item {
position: absolute;
inset: 0;
opacity: 0;
transition: opacity var(--glh-bd-fade) var(--glh-ease);
will-change: opacity;
}
.gl-hero__bd-item.is-active { opacity: 1; }
.gl-hero__bd-img,
.gl-hero__bd-video {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
display: block;
object-fit: cover;
object-position: var(--glh-bd-pos, center);
background: var(--glh-navy);
} .gl-hero.gl-anim-ready .gl-hero__bd-item.is-active .gl-hero__bd-img,
.gl-hero.gl-anim-ready .gl-hero__bd-item.is-leaving .gl-hero__bd-img { animation: glh-bd-zoom var(--glh-bd-dur) ease-out forwards;
transform-origin: var(--glh-bd-pos, center);
} .gl-hero__bd-item.is-leaving { z-index: 0; }
.gl-hero__bd-item.is-active  { z-index: 1; }
@keyframes glh-bd-zoom {
from { transform: scale(1); }
to   { transform: scale(1.06); }
} .gl-hero__bd-empty {
position: absolute;
left: 16px; bottom: 16px;
z-index: 3;
pointer-events: auto;
max-width: 34ch;
padding: 8px 12px;
border-radius: var(--glh-radius);
background: rgba(255, 255, 255, 0.92);
color: var(--glh-navy);
font-size: 12.5px;
line-height: 1.5;
}
.gl-hero__bd-empty code { background: var(--glh-gold-soft); padding: 1px 5px; border-radius: 3px; }  .gl-hero--backdrop .gl-hero__main::before {
content: "";
position: absolute;
inset: 0;
z-index: 1;
pointer-events: none;
background:
linear-gradient(180deg, rgba(var(--glh-navy-rgb), 0.10) 0%, rgba(var(--glh-navy-rgb), 0) 40%, rgba(var(--glh-navy-rgb), 0.55) 100%),
linear-gradient(90deg,
rgba(var(--glh-navy-rgb), var(--glh-bds-a, 0.86)) 0%,
rgba(var(--glh-navy-rgb), var(--glh-bds-b, 0.72)) var(--glh-bds-1, 32%),
rgba(var(--glh-navy-rgb), 0.30) var(--glh-bds-2, 58%),
rgba(var(--glh-navy-rgb), 0.08) 100%);
}
.gl-hero--bdscrim-light  { --glh-bds-a: 0.72; --glh-bds-b: 0.55; --glh-bds-1: 26%; --glh-bds-2: 50%; }
.gl-hero--bdscrim-medium { --glh-bds-a: 0.86; --glh-bds-b: 0.72; --glh-bds-1: 32%; --glh-bds-2: 58%; }
.gl-hero--bdscrim-strong { --glh-bds-a: 0.94; --glh-bds-b: 0.86; --glh-bds-1: 42%; --glh-bds-2: 70%; } .gl-hero--backdrop .gl-hero__content {
position: relative;
z-index: 2;
flex: 1 1 auto;
width: 100%;
max-width: var(--glh-maxw);
margin: 0 auto;
background: transparent; padding: clamp(36px, 6vw, 88px) clamp(20px, 4vw, 64px) clamp(56px, 7vw, 96px);
} .gl-hero--backdrop .gl-hero__eyebrow { font-size: clamp(12px, 1.05cqi, 14px); letter-spacing: 2.8px; }
.gl-hero--backdrop .gl-hero__title {
font-size: clamp(36px, 6.4cqi, 78px);
line-height: 1.06;
letter-spacing: -0.6px; }
.gl-hero--backdrop .gl-hero__line--accent { font-weight: 500; }
.gl-hero--backdrop .gl-hero__intro {
font-size: clamp(16px, 1.55cqi, 19px);
line-height: 1.7;
max-width: 52ch;
margin-top: clamp(18px, 2cqi, 30px);
}
.gl-hero--backdrop .gl-hero__ctas { margin-top: clamp(24px, 2.6cqi, 40px); gap: 14px 16px; }
.gl-hero--backdrop .gl-hero__cta {
font-size: clamp(12px, 0.95cqi, 13.5px);
padding: 1em 1.5em;
min-height: 44px; } .gl-hero--backdrop .gl-hero__title,
.gl-hero--backdrop .gl-hero__intro,
.gl-hero--backdrop .gl-hero__eyebrow { text-shadow: 0 1px 2px rgba(0, 0, 0, 0.25), 0 8px 28px rgba(14, 32, 64, 0.35); }  .gl-hero__bd-controls {
display: none;
position: absolute;
z-index: 3;
right: clamp(12px, 3vw, 40px);
bottom: calc(var(--glh-strip-h, 0px) + 14px);
align-items: center;
gap: 6px;
}
.gl-hero.gl-anim-ready .gl-hero__bd-controls { display: flex; }
.gl-hero__bd-toggle,
.gl-hero__bd-dot {
appearance: none;
-webkit-appearance: none;
background: transparent;
border: 0;
margin: 0;
padding: 0;
cursor: pointer;
color: var(--glh-white);
}
.gl-hero__bd-toggle {
width: 44px; height: 44px;
display: inline-flex;
align-items: center;
justify-content: center;
border-radius: 50%;
}
.gl-hero__bd-toggle::before {
content: "";
position: absolute;
width: 34px; height: 34px;
border-radius: 50%;
border: 1px solid rgba(255, 255, 255, 0.55);
background: rgba(var(--glh-navy-rgb), 0.35);
transition: background 0.25s var(--glh-ease), border-color 0.25s var(--glh-ease);
}
.gl-hero__bd-toggle:hover::before { background: rgba(var(--glh-navy-rgb), 0.65); border-color: var(--glh-white); }
.gl-hero__bd-toggle { position: relative; }
.gl-hero__bd-toggle svg { position: relative; width: 16px; height: 16px; }
.gl-hero__bd-ico-play { display: none; }
.gl-hero__bd-toggle.is-paused .gl-hero__bd-ico-play  { display: block; }
.gl-hero__bd-toggle.is-paused .gl-hero__bd-ico-pause { display: none; }
.gl-hero__bd-dots { display: inline-flex; align-items: center; }
.gl-hero__bd-dot {
width: 30px; height: 44px; display: inline-flex;
align-items: center;
justify-content: center;
}
.gl-hero__bd-dot::before {
content: "";
width: 9px; height: 9px;
border-radius: 50%;
background: rgba(255, 255, 255, 0.45);
box-shadow: 0 0 0 1px rgba(var(--glh-navy-rgb), 0.35);
transition: background 0.25s var(--glh-ease), transform 0.25s var(--glh-ease);
}
.gl-hero__bd-dot:hover::before { background: rgba(255, 255, 255, 0.85); }
.gl-hero__bd-dot.is-active::before { background: var(--glh-gold); transform: scale(1.25); } .gl-hero__strip {
position: relative;
z-index: 2;
flex: 0 0 auto;
background: rgba(var(--glh-navy-rgb), 0.58);
-webkit-backdrop-filter: blur(12px) saturate(1.1);
backdrop-filter: blur(12px) saturate(1.1);
border-top: 1px solid rgba(255, 255, 255, 0.14);
}
.gl-hero__strip-inner {
max-width: var(--glh-maxw);
margin: 0 auto;
padding: clamp(16px, 2vw, 26px) clamp(20px, 4vw, 64px);
display: grid;
grid-template-columns: repeat(var(--glh-strip-cols, 4), minmax(0, 1fr));
gap: clamp(14px, 2vw, 32px);
}
.gl-hero__strip-item { display: flex; align-items: flex-start; gap: clamp(10px, 1vw, 14px); min-width: 0; }
.gl-hero__strip-icon {
flex: 0 0 auto;
width: clamp(26px, 2.2vw, 32px);
height: clamp(26px, 2.2vw, 32px);
margin-top: 1px;
}
.gl-hero__strip-icon svg,
.gl-hero__strip-icon img { width: 100%; height: 100%; display: block; }
.gl-hero__strip-icon svg {
stroke: var(--glh-gold);
stroke-width: 1.6;
stroke-linecap: round;
stroke-linejoin: round;
fill: none;
}
.gl-hero__strip-title {
margin: 0;
font-family: var(--glh-font-body);
font-size: clamp(12px, 0.9vw, 14px);
font-weight: 700;
letter-spacing: 1.4px;
text-transform: uppercase;
color: var(--glh-white);
line-height: 1.3;
}
.gl-hero__strip-text {
margin: 5px 0 0;
font-size: clamp(14px, 0.95vw, 14.5px);
line-height: 1.5;
color: rgba(255, 255, 255, 0.78);
} @media (max-width: 900px) {
.gl-hero--backdrop { --glh-bd-offset: var(--glh-screen-offset, 72px); }
.gl-hero--backdrop .gl-hero__main {
min-height: min(max(520px, calc(100vh  - var(--glh-bd-offset))), 900px);
min-height: min(max(520px, calc(100svh - var(--glh-bd-offset))), 900px);
} .gl-hero--backdrop .gl-hero__main::before {
background: linear-gradient(180deg,
rgba(var(--glh-navy-rgb), 0.90) 0%,
rgba(var(--glh-navy-rgb), 0.82) 48%,
rgba(var(--glh-navy-rgb), 0.45) 80%,
rgba(var(--glh-navy-rgb), 0.55) 100%);
}
.gl-hero--backdrop .gl-hero__content { padding-bottom: clamp(64px, 12vw, 96px); }
.gl-hero__strip-inner { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 18px; }
.gl-hero__bd-controls { right: 10px; }
}
@media (max-width: 480px) { .gl-hero__strip-text { display: none; }
.gl-hero__strip-item { align-items: center; }
.gl-hero__strip-icon { width: 24px; height: 24px; margin-top: 0; }
.gl-hero__strip-title { font-size: 12px; letter-spacing: 1.1px; }
.gl-hero__strip-inner { padding-top: 14px; padding-bottom: 14px; }
.gl-hero--backdrop .gl-hero__ctas .gl-hero__cta { flex: 1 1 100%; justify-content: center; }
} @media (prefers-reduced-motion: reduce) {
.gl-hero__bd-item { transition: none !important; }
.gl-hero.gl-anim-ready .gl-hero__bd-item.is-active .gl-hero__bd-img,
.gl-hero.gl-anim-ready .gl-hero__bd-item.is-leaving .gl-hero__bd-img { animation: none !important; }
}.gl-section--full {
width: 100vw;
margin-left: calc(50% - 50vw);
margin-right: calc(50% - 50vw);
}
.gl-section__inner {
max-width: 1500px;
margin: 0 auto;
padding: clamp(34px, 4.4vw, 64px) clamp(20px, 5vw, 64px);
} .gl-section.gl-anim-ready [data-gl-reveal] { opacity: 0; transform: translateY(18px); }
.gl-section.gl-anim-ready.gl-revealed [data-gl-reveal] {
opacity: 1;
transform: none;
transition: opacity 0.7s var(--glh-ease, cubic-bezier(0.22,1,0.36,1)), transform 0.7s var(--glh-ease, cubic-bezier(0.22,1,0.36,1));
transition-delay: var(--gl-d, 0ms);
}
@media (prefers-reduced-motion: reduce) {
.gl-section.gl-anim-ready [data-gl-reveal] { opacity: 1 !important; transform: none !important; }
} .gl-sec-head { max-width: 760px; }
.gl-sec-head--center { margin: 0 auto; text-align: center; }
.gl-sec-head--left   { margin: 0; text-align: left; }
.gl-sec-head__eyebrow {
margin: 0 0 clamp(14px, 1.6vw, 22px);
font-family: var(--glh-font-body);
font-size: clamp(12px, 1vw, 14px);
font-weight: 600;
letter-spacing: 2.4px;
text-transform: uppercase;
color: var(--glh-gold-text);
}
.gl-sec-head__title {
margin: 0;
font-family: var(--glh-font-heading);
font-weight: 700;
font-size: clamp(30px, 4.4vw, 54px);
line-height: 1.08;
color: var(--glh-navy);
}
.gl-sec-head__title .gl-sec-head__accent { color: var(--glh-gold-accent); }
.gl-sec-head--center .gl-sec-head__title::after {
content: "";
display: block;
width: 64px;
height: 2px;
margin: clamp(18px, 2vw, 26px) auto 0;
background: var(--glh-gold);
opacity: 0.85;
}
.gl-sec-head__intro {
margin: clamp(18px, 2vw, 28px) auto 0;
max-width: 80ch;
font-size: clamp(15px, 1vw, 16px);
line-height: 1.7;
color: var(--glh-charcoal);
opacity: 0.84;
}
.gl-sec-head--left .gl-sec-head__intro { margin-left: 0; margin-right: 0; } .gl-feat--light { background: var(--glh-cream); }
.gl-feat--cream { background: var(--glh-cream); }
.gl-feat--white { background: var(--glh-white); }
.gl-feat--navy  { background: var(--glh-navy); }
.gl-feat--navy .gl-sec-head__title { color: var(--glh-white); }
.gl-feat--navy .gl-sec-head__intro { color: rgba(255,255,255,0.82); opacity: 1; }
.gl-feat__grid {
margin-top: clamp(22px, 2.8vw, 40px);
display: grid;
grid-template-columns: repeat(var(--gl-feat-cols, 5), minmax(0, 1fr));
gap: clamp(10px, 1.3vw, 18px);
} .gl-feat__card {
display: flex;
flex-direction: column;
min-width: 0;
background: transparent;
border-radius: 12px;
box-shadow: 0 0 6px rgba(var(--glh-navy-rgb), 0.20);
padding: 0;
}
.gl-feat__media {
position: relative; border-radius: 12px;
aspect-ratio: 4 / 3; background: rgba(var(--glh-navy-rgb), 0.06);
}
.gl-feat__media img,
.gl-feat__media .gl-hero__icon-img,
.gl-feat__media .wp-post-image {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
border-radius: 8px; }
.gl-feat__badge {
position: absolute;
left: 50%;
bottom: 0;
transform: translate(-50%, 50%);
width: clamp(50px, 4.6vw, 64px);
height: clamp(50px, 4.6vw, 64px);
border-radius: 50%;
background: #f6f4f1;
border: 1px solid rgba(var(--glh-navy-rgb), 0.06);
box-shadow: 0 0 6px rgba(var(--glh-navy-rgb), 0.18);
display: grid;
place-items: center;
z-index: 2;
}
.gl-feat__badge svg { width: 58%; height: 58%; stroke: var(--glh-gold); stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; fill: none; }
.gl-feat__badge img { width: 38%; height: 38%; object-fit: contain; }
.gl-feat__body {
text-align: center;
padding: clamp(28px, 2.8vw, 36px) clamp(6px, 0.8vw, 12px) clamp(14px, 1.4vw, 20px);
}
.gl-feat__title {
margin: 0;
font-family: var(--glh-font-body);
font-size: clamp(12.5px, 0.95vw, 13.5px);
font-weight: 700;
letter-spacing: 1.2px;
text-transform: uppercase;
color: var(--glh-navy);
}
.gl-feat__text {
margin: clamp(8px, 0.9vw, 12px) 0 0;
font-size: clamp(14px, 0.9vw, 14.5px);
line-height: 1.6;
color: var(--glh-navy);
opacity: 0.78;
}
@media (max-width: 1080px) {
.gl-feat__grid { grid-template-columns: repeat(3, minmax(0,1fr)); row-gap: clamp(44px, 6vw, 60px); }
}
@media (max-width: 680px) {
.gl-feat__grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 420px) {
.gl-feat__grid { grid-template-columns: 1fr; }
} .gl-market { background: var(--glh-cream); }
.gl-market__panel {
background: var(--glh-navy);
border-radius: 14px;
padding: clamp(32px, 4vw, 60px) clamp(28px, 4vw, 64px);
display: grid;
grid-template-columns: minmax(0, 0.92fr) minmax(0, 2fr);
gap: clamp(28px, 4vw, 64px);
align-items: center;
}
.gl-market__eyebrow {
margin: 0 0 clamp(12px, 1.4vw, 18px);
font-family: var(--glh-font-body);
font-size: clamp(12px, 1vw, 13px);
font-weight: 600;
letter-spacing: 2.2px;
text-transform: uppercase;
color: var(--glh-gold-text);
}
.gl-market__title {
margin: 0;
font-family: var(--glh-font-heading);
font-weight: 700;
font-size: clamp(28px, 3.2vw, 44px);
line-height: 1.06;
color: var(--glh-white);
}
.gl-market__title .gl-market__line { display: block; }
.gl-market__title .gl-market__accent { display: block; font-style: italic; font-weight: 500; color: var(--glh-gold-accent); }
.gl-market__lead {
margin: clamp(14px, 1.6vw, 22px) 0 0;
max-width: 42ch;
font-size: clamp(15px, 1vw, 16px);
line-height: 1.65;
color: rgba(255,255,255,0.8);
}
.gl-market__cta {
display: inline-flex;
align-items: center;
gap: 10px;
margin-top: clamp(20px, 2.2vw, 30px);
padding: 13px 24px;
border: 1px solid rgba(201,162,92,0.6);
border-radius: 2px;
font-family: var(--glh-font-body);
font-size: 13px;
font-weight: 600;
letter-spacing: 1.6px;
text-transform: uppercase;
color: var(--glh-gold-text);
text-decoration: none;
transition: background 0.3s var(--glh-ease), color 0.3s var(--glh-ease), border-color 0.3s var(--glh-ease);
}
.gl-market__cta svg { width: 18px; height: 18px; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; fill: none; transition: transform 0.3s var(--glh-ease); }
.gl-market__cta:hover { background: var(--glh-gold); color: var(--glh-navy); border-color: var(--glh-gold); }
.gl-market__cta:hover svg { transform: translateX(4px); }
.gl-market__stats {
display: grid;
grid-template-columns: repeat(var(--gl-market-cols, 4), minmax(0, 1fr));
}
.gl-market__stat {
padding: 4px clamp(14px, 1.6vw, 28px);
text-align: left;
}
.gl-market__stat + .gl-market__stat { border-left: 1px solid rgba(255,255,255,0.14); }
.gl-market__stat-icon { display: block; width: clamp(26px, 2.4vw, 32px); height: clamp(26px, 2.4vw, 32px); margin-bottom: clamp(10px, 1.2vw, 16px); }
.gl-market__stat-icon svg { width: 100%; height: 100%; stroke: var(--glh-gold); stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; fill: none; }
.gl-market__stat-value {
display: block;
font-family: var(--glh-font-heading);
font-weight: 700;
font-size: clamp(26px, 2.8vw, 40px);
line-height: 1.04;
color: var(--glh-white);
font-variant-numeric: tabular-nums;
}
.gl-market__stat-label {
display: block;
margin-top: 6px;
font-family: var(--glh-font-body);
font-size: 12px;
font-weight: 600;
letter-spacing: 1.4px;
text-transform: uppercase;
color: var(--glh-gold-text);
}
.gl-market__delta {
display: inline-flex;
align-items: center;
gap: 6px;
margin-top: clamp(14px, 1.6vw, 22px);
padding-top: clamp(12px, 1.4vw, 18px);
border-top: 1px solid rgba(255,255,255,0.14);
width: 100%;
font-family: var(--glh-font-heading);
font-size: clamp(18px, 1.6vw, 24px);
font-weight: 600;
color: var(--glh-white);
}
.gl-market__delta svg { width: clamp(14px, 1.2vw, 18px); height: clamp(14px, 1.2vw, 18px); stroke: var(--glh-gold); stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; fill: none; }
.gl-market__delta-note {
display: block;
margin-top: 6px;
font-family: var(--glh-font-body);
font-size: clamp(12px, 0.8vw, 12.5px);
font-weight: 600;
letter-spacing: 1.2px;
text-transform: uppercase;
color: rgba(255,255,255,0.55);
}
.gl-market__source {
margin: clamp(18px, 2vw, 26px) 0 0;
text-align: center;
font-size: clamp(12px, 0.9vw, 13px);
font-style: italic;
color: var(--glh-charcoal);
opacity: 0.6;
}
@media (max-width: 980px) {
.gl-market__panel { grid-template-columns: 1fr; gap: clamp(28px, 5vw, 44px); }
.gl-market__lead { max-width: none; }
}
@media (max-width: 620px) {
.gl-market__stats { grid-template-columns: repeat(2, minmax(0,1fr)); gap: clamp(20px, 5vw, 30px) 0; }
.gl-market__stat:nth-child(odd) { border-left: none; }
.gl-market__stat:nth-child(n+3) { }
}  .gl-block--bg-cream { background: var(--glh-cream); }
.gl-block--bg-white { background: var(--glh-white); }
.gl-block--bg-navy  { background: var(--glh-navy); } .gl-block--bg-navy .gl-sec-head__title,
.gl-block--bg-navy .gl-pageblock__heading,
.gl-block--bg-navy .gl-tmonials__quote,
.gl-block--bg-navy .gl-process__title { color: var(--glh-white); }
.gl-block--bg-navy .gl-sec-head__intro,
.gl-block--bg-navy .gl-pageblock__intro,
.gl-block--bg-navy .gl-pageblock__extra,
.gl-block--bg-navy .gl-process__desc { color: rgba(255,255,255,0.82); opacity: 1; }
.gl-block--bg-navy .gl-tmonials__card { background: var(--glh-navy-light); border-color: rgba(255,255,255,0.10); } .gl-btn {
display: inline-flex;
align-items: center;
gap: 10px;
padding: 14px 26px;
font-family: var(--glh-font-body);
font-size: clamp(12px, 0.95vw, 14px);
font-weight: 600;
letter-spacing: 1.4px;
text-transform: uppercase;
text-decoration: none;
border-radius: var(--glh-radius);
border: 1.5px solid var(--glh-navy);
transition: background 0.3s var(--glh-ease), color 0.3s var(--glh-ease), border-color 0.3s var(--glh-ease), transform 0.3s var(--glh-ease);
}
.gl-btn__arrow { width: 18px; height: 18px; transition: transform 0.3s var(--glh-ease); }
.gl-btn:hover { transform: translateY(-1px); }
.gl-btn:hover .gl-btn__arrow { transform: translateX(4px); }
.gl-btn--solid   { background: var(--glh-navy); color: var(--glh-white); }
.gl-btn--solid:hover { background: var(--glh-gold); border-color: var(--glh-gold); color: var(--glh-navy); }
.gl-btn--outline { background: transparent; color: var(--glh-navy); }
.gl-btn--outline:hover { background: var(--glh-navy); color: var(--glh-white); }
.gl-block--bg-navy .gl-btn--outline { color: var(--glh-white); border-color: rgba(255,255,255,0.55); }
.gl-block--bg-navy .gl-btn--outline:hover { background: var(--glh-white); color: var(--glh-navy); border-color: var(--glh-white); } .gl-pageblocks .gl-section__inner { max-width: 1040px; }
.gl-pageblock {
max-width: 820px;
margin-inline: auto;
}
.gl-pageblocks--left   .gl-pageblock { text-align: left; }
.gl-pageblocks--center .gl-pageblock { text-align: center; }
.gl-pageblock + .gl-pageblock { margin-top: clamp(40px, 5vw, 72px); padding-top: clamp(40px, 5vw, 72px); }
.gl-pageblocks:not(.gl-pageblocks--no-divider) .gl-pageblock + .gl-pageblock {
border-top: 1px solid rgba(20,30,48,0.12);
}
.gl-block--bg-navy.gl-pageblocks:not(.gl-pageblocks--no-divider) .gl-pageblock + .gl-pageblock {
border-top-color: rgba(255,255,255,0.14);
}
.gl-pageblock__eyebrow {
margin: 0 0 clamp(12px, 1.4vw, 18px);
font-size: clamp(12px, 0.9vw, 13px);
font-weight: 600;
letter-spacing: 2.4px;
text-transform: uppercase;
color: var(--glh-gold-text);
}
.gl-pageblock__heading {
margin: 0 0 clamp(12px, 1.4vw, 18px);
font-family: var(--glh-font-heading);
font-weight: 700;
font-size: clamp(24px, 3vw, 36px);
line-height: 1.14;
color: var(--glh-navy);
}
.gl-pageblock__intro,
.gl-pageblock__extra {
font-size: clamp(14px, 1vw, 16px);
line-height: 1.75;
color: var(--glh-charcoal);
}
.gl-pageblock__intro { margin: 0; opacity: 0.9; }
.gl-pageblock__extra { margin-top: clamp(14px, 1.6vw, 20px); }
.gl-pageblock__extra > :first-child { margin-top: 0; }
.gl-pageblock__extra > :last-child { margin-bottom: 0; }
.gl-pageblock__extra a { color: var(--glh-gold-text); }
.gl-pageblock__ctas {
display: flex;
flex-wrap: wrap;
gap: 14px;
margin-top: clamp(22px, 2.6vw, 32px);
}
.gl-pageblocks--center .gl-pageblock__ctas { justify-content: center; } .gl-tmonials__grid {
column-count: var(--gl-tm-cols, 3);
column-gap: clamp(18px, 2.2vw, 28px);
margin-top: clamp(28px, 3vw, 44px);
}
.gl-tmonials__card {
position: relative;
display: block;
break-inside: avoid;
-webkit-column-break-inside: avoid;
margin-bottom: clamp(18px, 2.2vw, 28px);
padding: clamp(26px, 2.8vw, 36px) clamp(24px, 2.6vw, 34px) clamp(22px, 2.4vw, 30px);
background: var(--glh-white);
border: 1px solid var(--glh-gold);
border-radius: 8px;
box-shadow: none;
}
.gl-tmonials__mark {
font-family: var(--glh-font-heading);
font-size: clamp(48px, 5vw, 68px);
line-height: 0.6;
color: var(--glh-gold);
opacity: 0.55;
margin-bottom: clamp(8px, 1vw, 14px);
}
.gl-tmonials__quote {
margin: 0 0 clamp(18px, 2vw, 24px);
font-family: var(--glh-font-heading);
font-style: italic;
font-size: clamp(16px, 1.15vw, 17px);
line-height: 1.55;
color: var(--glh-navy);
}
.gl-tmonials__by { margin-top: clamp(14px, 1.6vw, 20px); line-height: 1.4; }
.gl-tmonials__author {
display: block;
font-weight: 600;
letter-spacing: 0.4px;
color: var(--glh-gold-text);
}
.gl-tmonials__company {
display: block;
margin-top: 3px;
font-size: 13px;
color: var(--glh-charcoal);
opacity: 0.7;
}
.gl-block--bg-navy .gl-tmonials__company { color: rgba(255,255,255,0.7); opacity: 1; }
@media (max-width: 980px) { .gl-tmonials__grid { column-count: 2; } }
@media (max-width: 620px) { .gl-tmonials__grid { column-count: 1; } }  .gl-process__list { list-style: none; margin: clamp(28px, 3vw, 44px) auto 0; padding: 0; }
.gl-process__title { margin: 0 0 6px; font-family: var(--glh-font-heading); font-weight: 700; font-size: clamp(18px, 1.7vw, 22px); color: var(--glh-navy); }
.gl-process__desc { margin: 0; font-size: clamp(15px, 1vw, 16px); line-height: 1.7; color: var(--glh-charcoal); opacity: 0.86; }
.gl-block--bg-navy .gl-process__title { color: var(--glh-white); }
.gl-block--bg-navy .gl-process__desc { color: rgba(255,255,255,0.82); opacity: 1; } .gl-process .gl-sec-head__title { font-size: clamp(26px, 3.2vw, 36px); } .gl-process--classic .gl-process__list { max-width: 760px; }
.gl-process--classic .gl-process__step {
position: relative;
display: grid;
grid-template-columns: clamp(52px, 6vw, 64px) 1fr;
gap: clamp(16px, 2vw, 26px);
padding-bottom: clamp(26px, 3vw, 40px);
}
.gl-process--classic .gl-process__step::before {
content: ""; position: absolute; left: clamp(25px, 3vw, 31px); top: clamp(52px, 6vw, 64px);
bottom: 0; width: 2px; background: linear-gradient(var(--glh-gold), rgba(196,154,92,0.25));
}
.gl-process--classic .gl-process__step:last-child { padding-bottom: 0; }
.gl-process--classic .gl-process__step:last-child::before { display: none; }
.gl-process--classic .gl-process__marker {
position: relative; width: clamp(52px, 6vw, 64px); height: clamp(52px, 6vw, 64px);
border-radius: 50%; background: var(--glh-navy); border: 1.5px solid var(--glh-gold);
display: flex; align-items: center; justify-content: center;
}
.gl-process--classic .gl-process__num { font-family: var(--glh-font-heading); font-weight: 700; font-size: clamp(20px, 2.2vw, 26px); color: var(--glh-gold-accent); }
.gl-process--classic .gl-process__icon {
position: absolute; right: -6px; bottom: -6px; width: 26px; height: 26px; border-radius: 50%;
background: var(--glh-cream); border: 1px solid var(--glh-gold); display: flex; align-items: center; justify-content: center;
}
.gl-process--classic .gl-process__icon svg { width: 60%; height: 60%; stroke: var(--glh-navy); stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; fill: none; }
.gl-process--classic .gl-process__icon img { width: 60%; height: 60%; object-fit: contain; }
.gl-block--bg-navy .gl-process--classic .gl-process__icon { background: var(--glh-navy-light); }
.gl-block--bg-navy .gl-process--classic .gl-process__icon svg { stroke: var(--glh-gold); }
.gl-process--classic .gl-process__body { padding-top: clamp(6px, 0.8vw, 12px); }
.gl-process--classic .gl-process__photo { margin: clamp(14px, 1.6vw, 20px) 0 0; max-width: 360px; }
.gl-process--classic .gl-process__photo img { width: 100%; height: auto; display: block; border-radius: var(--glh-radius); } .gl-process--editorial .gl-process__list {
position: relative; --gl-rail-x: 38%;
max-width: 1060px; padding-left: 0; margin-top: clamp(18px, 2.2vw, 30px);
}
.gl-process--editorial .gl-process__rail {
position: absolute; left: var(--gl-rail-x); margin-left: -1px;
top: clamp(6px, 1.2vw, 14px); bottom: clamp(6px, 1.2vw, 14px);
width: 2px; background: rgba(196,154,92,0.22); border-radius: 2px; overflow: hidden; z-index: 1;
}
.gl-process--editorial .gl-process__rail-fill {
position: absolute; left: 0; top: 0; width: 100%; height: var(--gl-progress, 0%);
background: var(--glh-gold); transition: height 0.18s linear;
}
.gl-process--editorial .gl-process__step {
position: relative; display: grid; grid-template-columns: var(--gl-rail-x) 1fr;
align-items: start; padding: clamp(12px, 1.5vw, 18px) 0;
}
.gl-process--editorial .gl-process__step + .gl-process__step { border-top: 1px solid rgba(196,154,92,0.28); }
.gl-block--bg-navy .gl-process--editorial .gl-process__step + .gl-process__step { border-top-color: rgba(196,154,92,0.4); }
.gl-process--editorial .gl-process__step:first-child { padding-top: clamp(4px, 0.8vw, 10px); }
.gl-process--editorial .gl-process__step:last-child { padding-bottom: 0; } .gl-process--editorial .gl-process__num {
position: absolute; left: 0; width: var(--gl-rail-x);
top: clamp(4px, 0.8vw, 10px); transform: translateY(-30%);
text-align: right; padding-right: clamp(18px, 2vw, 34px);
font-family: var(--glh-font-heading); font-weight: 700;
font-size: clamp(58px, 7.5vw, 90px); line-height: 1.8;
font-variant-numeric: lining-nums; font-feature-settings: "lnum" 1;
color: var(--glh-navy); opacity: 0.12; z-index: 0; pointer-events: none; user-select: none;
}
.gl-block--bg-navy .gl-process--editorial .gl-process__num { color: var(--glh-white); opacity: 0.14; } .gl-process--editorial .gl-process__node {
position: absolute; left: var(--gl-rail-x); transform: translateX(-50%);
top: clamp(12px, 1.6vw, 20px); width: clamp(30px, 3.4vw, 38px); height: clamp(30px, 3.4vw, 38px);
border-radius: 50%; background: var(--glh-cream); border: 1.5px solid var(--glh-gold);
display: flex; align-items: center; justify-content: center; z-index: 2;
transition: background 0.45s var(--glh-ease), border-color 0.45s var(--glh-ease);
}
.gl-process--editorial .gl-process__step:first-child .gl-process__node { top: clamp(6px, 1vw, 12px); }
.gl-process--editorial .gl-process__node svg { width: 48%; height: 48%; stroke: var(--glh-gold); stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; fill: none; transition: stroke 0.45s var(--glh-ease); }
.gl-process--editorial .gl-process__node img { width: 48%; height: 48%; object-fit: contain; }
.gl-process--editorial .gl-process__node--dot { width: 14px; height: 14px; }
.gl-process--editorial .gl-process__step.is-passed .gl-process__node { background: var(--glh-gold); border-color: var(--glh-gold); }
.gl-process--editorial .gl-process__step.is-passed .gl-process__node svg { stroke: var(--glh-navy); }
.gl-block--bg-navy .gl-process--editorial .gl-process__node { background: var(--glh-navy-light); } .gl-process--editorial .gl-process__body { display: contents; }
.gl-process--editorial .gl-process__title {
grid-column: 1; align-self: center; margin: 0; position: relative; z-index: 1;
text-align: right; padding-right: clamp(18px, 2vw, 34px);
font-size: clamp(18px, 1.8vw, 24px);
}
.gl-process--editorial .gl-process__desc {
grid-column: 2; align-self: start;
padding-left: clamp(22px, 2.4vw, 40px); max-width: 62ch;
font-size: clamp(15px, 1.2vw, 18px);
}
.gl-process--editorial .gl-process__photo { grid-column: 2; margin: clamp(14px, 1.6vw, 20px) 0 0; max-width: 380px; padding-left: clamp(22px, 2.4vw, 40px); }
.gl-process--editorial .gl-process__photo img { width: 100%; height: auto; display: block; border-radius: var(--glh-radius); box-shadow: 0 18px 44px rgba(20,30,48,0.16); }
@media (prefers-reduced-motion: reduce) {
.gl-process--editorial .gl-process__rail-fill { transition: none; }
}
@media (max-width: 760px) { .gl-process--editorial .gl-process__list { --gl-rail-x: clamp(20px, 7vw, 32px); }
.gl-process--editorial .gl-process__step { grid-template-columns: 1fr; padding-left: clamp(42px, 15vw, 60px); }
.gl-process--editorial .gl-process__num {
left: clamp(42px, 15vw, 60px); width: auto; right: auto; text-align: left; padding-right: 0;
font-size: clamp(62px, 19vw, 96px);
}
.gl-process--editorial .gl-process__title { grid-column: 1; text-align: left; padding-right: 0; }
.gl-process--editorial .gl-process__desc { grid-column: 1; padding-left: 0; max-width: none; margin-top: 4px; }
.gl-process--editorial .gl-process__photo { grid-column: 1; padding-left: 0; }
} .gl-finalcta__inner { max-width: 760px; text-align: center; }
.gl-finalcta__heading {
margin: 0;
font-family: var(--glh-font-heading);
font-weight: 700;
font-size: clamp(28px, 3.6vw, 44px);
line-height: 1.12;
color: var(--glh-navy);
}
.gl-finalcta__intro {
margin: clamp(14px, 1.6vw, 20px) auto 0;
max-width: 60ch;
font-size: clamp(16px, 1.15vw, 18.5px);
line-height: 1.7;
color: var(--glh-charcoal);
opacity: 0.88;
}
.gl-finalcta__ctas { margin-top: clamp(24px, 2.8vw, 34px); }
.gl-finalcta .gl-pageblock__ctas { justify-content: center; margin-top: 0; }
.gl-block--bg-navy .gl-finalcta__heading { color: var(--glh-white); }
.gl-block--bg-navy .gl-finalcta__intro { color: rgba(255,255,255,0.82); opacity: 1; } .gl-finalcta__heading .gl-finalcta__line { display: block; }
.gl-finalcta__heading .gl-finalcta__accent { display: block; color: var(--glh-gold-accent); font-style: italic; } .gl-finalcta.gl-block--bg-navy{
background: #0f1420;
} .gl-block--bg-navy .gl-btn--solid { background: var(--glh-gold); color: var(--glh-navy); border-color: var(--glh-gold); }
.gl-block--bg-navy .gl-btn--solid:hover { background: var(--glh-white); color: var(--glh-navy); border-color: var(--glh-white); } .gl-cardgrid__grid {
display: grid;
grid-template-columns: repeat(var(--gl-card-cols, 3), minmax(0, 1fr));
gap: clamp(18px, 2.2vw, 30px);
align-items: stretch;
}
.gl-sec-head + .gl-cardgrid__grid { margin-top: clamp(24px, 3vw, 42px); } .gl-cardgrid .gl-sec-head__title,
.gl-pageblocks .gl-sec-head__title,
.gl-tmonials .gl-sec-head__title,
.gl-tmwall .gl-sec-head__title { font-size: clamp(26px, 3.2vw, 36px); } .gl-cardgrid .gl-sec-head__title{
color:#f1ebdd;
} .gl-card {
position: relative;
display: flex;
flex-direction: column;
padding: clamp(26px, 2.8vw, 38px);
border: 1px solid rgba(20,30,48,0.07);
border-top: 3px solid var(--glh-gold);
border-radius: var(--glh-radius);
background: var(--glh-cream);
box-shadow: 0 0px 5px rgba(20,30,48,0.20);
transition: transform 0.4s var(--glh-ease), box-shadow 0.45s var(--glh-ease), background-color 0.45s var(--glh-ease);
} .gl-section.gl-anim-ready.gl-revealed .gl-card[data-gl-reveal] {
transition: opacity 0.6s var(--glh-ease, cubic-bezier(0.22,1,0.36,1)),
transform 0.45s var(--glh-ease, cubic-bezier(0.22,1,0.36,1)),
background-color 0.45s var(--glh-ease, cubic-bezier(0.22,1,0.36,1)),
box-shadow 0.45s var(--glh-ease, cubic-bezier(0.22,1,0.36,1));
transition-delay: 0s;
} .gl-cardgrid--cards .gl-cardgrid__grid > .gl-card:hover { transform: translateY(-6px) scale(1.035); box-shadow: 0 5px 10px rgba(20,30,48,0.30); z-index: 2; }
.gl-cardgrid--cards .gl-cardgrid__grid > .gl-card:nth-child(3n+1):hover { background: #FBF7EF; }
.gl-cardgrid--cards .gl-cardgrid__grid > .gl-card:nth-child(3n+2):hover { background: #f0f0f1; }
.gl-cardgrid--cards .gl-cardgrid__grid > .gl-card:nth-child(3n+3):hover { background: #F8F3EA; } .gl-cardgrid__grid > .gl-card:nth-child(3n+1) { background: #F6F1E8; border-top-color: var(--glh-gold); }
.gl-cardgrid__grid > .gl-card:nth-child(3n+2) { background: #e9ebed; border-top-color: #95a5c0; }
.gl-cardgrid__grid > .gl-card:nth-child(3n+3) { background: #F1ECE2; border-top-color: #B5894C; } .gl-card__icon {
width: clamp(54px, 5.5vw, 72px); height: clamp(54px, 5.5vw, 72px);
margin: 0 auto clamp(14px, 1.6vw, 20px);
display: flex; align-items: center; justify-content: center;
transition: transform 0.45s var(--glh-ease);
}
.gl-card__icon svg { width: 100%; height: 100%; stroke: var(--glh-gold); fill: none; stroke-width: 1.4; stroke-linecap: round; stroke-linejoin: round; }
.gl-card__icon img { width: 100%; height: 100%; object-fit: contain; } .gl-cardgrid--cards .gl-card:hover .gl-card__icon { transform: translateY(-4px) scale(1.12); }
.gl-card__eyebrow { margin: 0 0 12px; font-size: clamp(12px, 0.85vw, 12.5px); font-weight: 600; letter-spacing: 2.2px; text-transform: uppercase; color: var(--glh-gold-text); }
.gl-card__heading { margin: 0 0 12px; font-family: var(--glh-font-heading); font-weight: 700; font-size: clamp(20px, 1.9vw, 26px); line-height: 1.18; color: var(--glh-navy); }
.gl-card__intro { margin: 0; font-size: clamp(14px, 1vw, 15.5px); line-height: 1.7; color: var(--glh-charcoal); opacity: 0.9; }
.gl-card__extra { margin-top: 14px; font-size: clamp(13.5px, 0.95vw, 15px); line-height: 1.7; color: var(--glh-charcoal); }
.gl-card__extra > :first-child { margin-top: 0; } .gl-card__extra > :last-child { margin-bottom: 0; }
.gl-card__extra a { color: var(--glh-gold-text); } .gl-cardgrid--cards .gl-card .gl-pageblock__ctas { margin-top: auto; padding-top: clamp(20px, 2.2vw, 28px); flex-direction: column; align-items: flex-start; gap: 10px; }
.gl-cardgrid--center .gl-card { text-align: center; }
.gl-cardgrid--center .gl-card .gl-pageblock__ctas { align-items: center; }
.gl-cardgrid--cards .gl-card .gl-btn { width: 100%; justify-content: center; } .gl-cardgrid--cards .gl-card {
--glcard-px: clamp(26px, 2.8vw, 38px);
padding: 0; overflow: hidden; } .gl-cardgrid--cards .gl-card__head {
display: flex;
flex-direction: column;
padding: clamp(24px, 2.6vw, 32px) var(--glcard-px);
min-height: clamp(200px, 16vw, 234px);
background: var(--glcard-band, #8A6733);
} .gl-cardgrid--cards .gl-card__head .gl-card__icon { margin-bottom: clamp(12px, 1.4vw, 18px); }
.gl-cardgrid--cards .gl-card__head .gl-card__icon svg { stroke: #F2EAD8; }
.gl-cardgrid--cards .gl-card__head .gl-card__eyebrow { color: #E8CB93; margin-bottom: 10px; }
.gl-cardgrid--cards .gl-card__head .gl-card__heading { color: #FAF6EE; margin-bottom: 0; } .gl-cardgrid--cards .gl-card__body {
flex: 1 1 auto;
display: flex;
flex-direction: column;
justify-content: center;
padding: clamp(22px, 2.4vw, 30px) var(--glcard-px) clamp(6px, 0.8vw, 10px);
}
.gl-cardgrid--cards .gl-card__body .gl-card__intro { opacity: 0.92; } .gl-cardgrid--cards .gl-card .gl-pageblock__ctas {
margin-top: 0;
padding: clamp(14px, 1.6vw, 20px) var(--glcard-px) clamp(26px, 2.8vw, 36px);
} .gl-cardgrid--cards .gl-cardgrid__grid > .gl-card:nth-child(3n+1) { --glcard-band: #8A6733; } .gl-cardgrid--cards .gl-cardgrid__grid > .gl-card:nth-child(3n+2) { --glcard-band: #2E4061; } .gl-cardgrid--cards .gl-cardgrid__grid > .gl-card:nth-child(3n+3) { --glcard-band: #74552A; }  .gl-cardgrid--cards .gl-cardgrid__grid > .gl-card {
border: 10px solid #0f1420;
} .gl-cardgrid .gl-btn {
font-size: clamp(12px, 1vw, 13.5px);
letter-spacing: 1.2px;
padding: 0.95em 1.4em;
border-width: 1px;
}
.gl-cardgrid .gl-btn__arrow { width: 1.25em; height: 1.25em; }
.gl-cardgrid .gl-btn:hover { transform: none; }
.gl-cardgrid .gl-btn:hover .gl-btn__arrow { transform: none; }
.gl-cardgrid--cards .gl-card .gl-btn--solid,
.gl-cardgrid--cards .gl-card .gl-btn--outline {
background: var(--glh-navy); color: var(--glh-white); border-color: var(--glh-navy);
}
.gl-cardgrid--cards .gl-card .gl-btn--solid:hover,
.gl-cardgrid--cards .gl-card .gl-btn--outline:hover {
background: var(--glh-navy-light); color: var(--glh-gold);
} .gl-cardgrid--flip .gl-card--flip {
position: relative; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none;
perspective: 1400px; min-height: clamp(320px, 30vw, 400px); cursor: pointer; outline: none;
}
.gl-cardgrid--flip .gl-card--flip:hover { transform: none; }
.gl-card__inner { position: relative; width: 100%; height: 100%; min-height: inherit; transition: transform 0.7s var(--glh-ease); transform-style: preserve-3d; }
.gl-card--flip:hover .gl-card__inner,
.gl-card--flip:focus-within .gl-card__inner,
.gl-card--flip.is-flipped .gl-card__inner { transform: rotateY(180deg); }
.gl-card__face {
position: absolute; inset: 0; display: flex; flex-direction: column;
padding: clamp(26px, 2.8vw, 38px); border: 1px solid rgba(20,30,48,0.07); border-radius: var(--glh-radius);
box-shadow: 0 16px 40px rgba(20,30,48,0.07); backface-visibility: hidden; -webkit-backface-visibility: hidden;
}
.gl-card--flip:focus-visible .gl-card__face { box-shadow: 0 0 0 2px var(--glh-gold), 0 16px 40px rgba(20,30,48,0.10); } .gl-cardgrid--flip .gl-card--flip:nth-child(3n+1) .gl-card__front { background: #F6F1E8; border-top: 3px solid var(--glh-gold); }
.gl-cardgrid--flip .gl-card--flip:nth-child(3n+2) .gl-card__front { background: #ECEFF4; border-top: 3px solid var(--glh-navy); }
.gl-cardgrid--flip .gl-card--flip:nth-child(3n+3) .gl-card__front { background: #F1ECE2; border-top: 3px solid #B5894C; }
.gl-card__hint { position: absolute; right: clamp(18px, 2vw, 26px); bottom: clamp(18px, 2vw, 26px); width: 30px; height: 30px; border-radius: 50%; border: 1px solid var(--glh-gold); display: flex; align-items: center; justify-content: center; color: var(--glh-gold); transition: background 0.3s var(--glh-ease), color 0.3s var(--glh-ease); }
.gl-card--flip:hover .gl-card__hint { background: var(--glh-gold); color: var(--glh-navy); }
.gl-card__hint svg { width: 16px; height: 16px; } .gl-card__back { transform: rotateY(180deg); background: var(--glh-navy); color: var(--glh-white); align-items: center; justify-content: center; text-align: center; gap: 18px; }
.gl-card__backheading { margin: 0; font-family: var(--glh-font-heading); font-weight: 700; font-size: clamp(19px, 1.8vw, 24px); line-height: 1.2; color: var(--glh-white); }
.gl-card__back .gl-pageblock__ctas { margin: 0; flex-direction: column; align-items: center; gap: 12px; }
.gl-card__back .gl-btn--solid { background: var(--glh-gold); color: var(--glh-navy); border-color: var(--glh-gold); }
.gl-card__back .gl-btn--solid:hover { background: var(--glh-white); border-color: var(--glh-white); }
.gl-card__back .gl-btn--outline { color: var(--glh-white); border-color: rgba(255,255,255,0.55); }
.gl-card__back .gl-btn--outline:hover { background: var(--glh-white); color: var(--glh-navy); border-color: var(--glh-white); } @media (max-width: 920px) { .gl-cardgrid__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 620px) { .gl-cardgrid__grid { grid-template-columns: 1fr; } .gl-cardgrid--flip .gl-card--flip { min-height: 300px; } } @media (prefers-reduced-motion: reduce) {
.gl-card__inner { transition: none; transform: none !important; transform-style: flat; min-height: 0; }
.gl-cardgrid--flip .gl-card--flip { min-height: 0; cursor: auto; }
.gl-card__face { position: relative; inset: auto; backface-visibility: visible; -webkit-backface-visibility: visible; }
.gl-card__back { transform: none; border-top: 0; margin-top: -1px; }
.gl-card__hint { display: none; }
.gl-card__icon, .gl-card__icon svg { transition: none; }
.gl-cardgrid--cards .gl-card:hover .gl-card__icon,
.gl-cardgrid--cards .gl-card:hover .gl-card__icon svg { transform: none; }
.gl-cardgrid--cards .gl-cardgrid__grid:hover > .gl-card,
.gl-cardgrid--cards .gl-cardgrid__grid > .gl-card:hover { transform: none; }
} .gl-story__inner { max-width: 1200px; }
.gl-story--center .gl-story__inner { margin: 0 auto; text-align: center; }
.gl-story--left   .gl-story__inner { margin: 0; text-align: left; }
.gl-story__heading {
margin: 0 0 clamp(18px, 2vw, 26px);
font-family: var(--glh-font-heading);
font-weight: 700;
font-size: clamp(26px, 3.2vw, 38px);
line-height: 1.18;
color: var(--glh-navy);
}
.gl-story__copy {
font-size: clamp(16px, 1.2vw, 18.5px);
line-height: 1.85;
color: var(--glh-charcoal);
opacity: 0.9;
column-count: 2;
column-gap: clamp(32px, 4vw, 56px);
}
.gl-story__copy > :first-child { margin-top: 0; }
.gl-story__copy > :last-child { margin-bottom: 0; }
.gl-story__copy p + p { margin-top: 1em; }
.gl-story__copy a { color: var(--glh-gold-text); }
.gl-block--bg-navy .gl-story__heading { color: var(--glh-white); }
.gl-block--bg-navy .gl-story__copy { color: rgba(255, 255, 255, 0.82); opacity: 1; }
@media (max-width: 760px) {
.gl-story__copy { column-count: 1; }
} .gl-teamgrid .gl-sec-head__title { font-size: clamp(26px, 3.2vw, 36px); }
.gl-teamgrid .gl-sec-head__intro { font-size: clamp(15px, 1.15vw, 17.5px); }
.gl-teamgrid .gl-section__inner { max-width: 1200px; }
.gl-sec-head + .gl-teamgrid__grid { margin-top: clamp(28px, 3.2vw, 46px); } .gl-credentials .gl-sec-head__title { font-size: clamp(24px, 2.8vw, 32px); color: #c7ab85; }
.gl-credentials .gl-sec-head__intro { color: #ffffff; opacity: 1; }
.gl-credentials__grid {
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: flex-start;
gap: clamp(28px, 4vw, 56px);
margin-top: clamp(24px, 3vw, 42px);
}
.gl-sec-head + .gl-credentials__grid { margin-top: clamp(28px, 3.2vw, 46px); }
.gl-credentials__item {
display: flex;
flex-direction: column;
align-items: center;
gap: 10px;
width: clamp(110px, 14vw, 150px);
margin: 0;
text-align: center;
}
.gl-credentials__logo {
display: flex;
align-items: center;
justify-content: center;
width: 100%;
height: clamp(56px, 6vw, 72px);
}
.gl-credentials__img {
max-width: 100%;
max-height: 100%;
width: auto;
height: auto;
object-fit: contain;
filter: grayscale(1);
opacity: 0.72;
transition: filter 0.3s var(--glh-ease), opacity 0.3s var(--glh-ease);
}
.gl-credentials__item:hover .gl-credentials__img { filter: grayscale(0); opacity: 1; }
.gl-credentials__caption {
font-size: clamp(12.5px, 0.85vw, 13px);
font-weight: 600;
letter-spacing: 0.6px;
color: var(--glh-charcoal);
opacity: 0.7;
}
.gl-block--bg-navy .gl-credentials__caption { color: var(--glh-white); opacity: 0.75; }
@media (prefers-reduced-motion: reduce) {
.gl-credentials__img { transition: none; }
}  .gl-linksq-section .gl-section__inner {
padding-left: clamp(16px, 2.5vw, 32px);
padding-right: clamp(16px, 2.5vw, 32px);
}
.gl-linksq-list {
--linksq-gap: clamp(10px, 3vw, 24px);
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: center;
align-items: flex-start;
gap: var(--linksq-gap);
margin-top: clamp(24px, 3vw, 42px);
}
.gl-linksq {
position: relative;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
text-align: center;
gap: clamp(10px, 1.2vw, 18px);
aspect-ratio: 1 / 1;
flex: 1 1 calc((100% - 2 * var(--linksq-gap)) / 3);
max-width: 480px;
padding: clamp(24px, 2.8vw, 20px);
border-radius: var(--glh-radius);
overflow: hidden;
text-decoration: none;
color: var(--glh-white);
background: var(--glh-navy-light);
border: 1px solid rgba(255, 255, 255, 0.10);
isolation: isolate;
}
.gl-linksq--static { cursor: default; }
.gl-linksq__photo-wrap { position: absolute; inset: 0; z-index: 0; }
.gl-linksq__photo { width: 100%; height: 100%; object-fit: cover; display: block; } .gl-linksq__photo-empty {
position: absolute;
inset: 0;
z-index: 1;
display: flex;
align-items: flex-start;
justify-content: center;
padding-top: 10px;
background:
repeating-linear-gradient(45deg, rgba(255, 255, 255, 0.03) 0 12px, rgba(255, 255, 255, 0.06) 12px 24px),
var(--glh-navy-light);
}
.gl-linksq__photo-empty small { font-size: 10px; letter-spacing: 0.3px; color: rgba(255, 255, 255, 0.55); } .gl-linksq__scrim {
position: absolute;
inset: 0;
z-index: 1;
pointer-events: none;
background: linear-gradient(180deg,
rgba(20, 30, 48, 0.25) 0%,
rgba(20, 30, 48, 0.42) 42%,
rgba(20, 30, 48, 0.85) 100%);
}
.gl-linksq__body {
position: relative;
z-index: 2;
display: flex;
flex-direction: column;
align-items: center;
gap: 10px;
max-width: 34ch;
}
.gl-linksq__title {
font-family: var(--glh-font-heading);
font-weight: 700;
font-size: clamp(25px, 2.7vw, 34px);
line-height: 1.18;
color: var(--glh-white);
}
.gl-linksq__intro {
font-size: clamp(15px, 1.15vw, 17.5px);
line-height: 1.6;
color: rgba(255, 255, 255, 0.85);
}
.gl-linksq__btn { margin-top: 4px; }
.gl-linksq .gl-btn--solid { background: var(--glh-gold); color: var(--glh-navy); border-color: var(--glh-gold); }
.gl-linksq .gl-btn--solid:hover { background: var(--glh-white); border-color: var(--glh-white); }
.gl-linksq:focus-visible { outline: 2px solid var(--glh-gold); outline-offset: 3px; } @media (hover: hover) and (prefers-reduced-motion: no-preference) {
.gl-linksq { transition: transform 0.4s var(--glh-ease), border-color 0.4s var(--glh-ease), box-shadow 0.4s var(--glh-ease); }
.gl-linksq__photo { transition: transform 0.6s var(--glh-ease); }
a.gl-linksq:hover { transform: translateY(-6px); border-color: rgba(196, 154, 92, 0.7); box-shadow: 0 16px 32px rgba(0, 0, 0, 0.34); }
a.gl-linksq:hover .gl-linksq__photo { transform: scale(1.06); }
}
@media (max-width: 900px) {
.gl-linksq { flex-basis: calc((100% - var(--linksq-gap)) / 2); max-width: none; }
}
@media (max-width: 560px) {
.gl-linksq { flex-basis: 100%; max-width: none; }
} .gl-linksq-list--uniform { justify-content: flex-start; }
.gl-linksq-list--uniform .gl-linksq { flex-grow: 0; } .gl-linksq-list--cols { align-items: stretch; }
.gl-linksq-list--cols .gl-linksq {
flex-basis: calc((100% - (var(--linksq-cols) - 1) * var(--linksq-gap)) / var(--linksq-cols));
max-width: none;
aspect-ratio: auto;
min-height: clamp(200px, 20vw, 300px);
}
.gl-linksq-list--cols .gl-linksq__title { font-size: clamp(19px, 1.6vw, 27px); }
.gl-linksq-list--cols .gl-linksq__intro { font-size: clamp(14px, 1vw, 16px); }
@media (max-width: 1200px) {
.gl-linksq-list--cols .gl-linksq { flex-basis: calc((100% - 2 * var(--linksq-gap)) / 3); }
}
@media (max-width: 900px) {
.gl-linksq-list--cols .gl-linksq { flex-basis: calc((100% - var(--linksq-gap)) / 2); }
}
@media (max-width: 560px) {
.gl-linksq-list--cols .gl-linksq { flex-basis: 100%; }
}  .gl-featured-listings .gl-sec-head { max-width: 1200px; margin-bottom: clamp(30px, 3.6vw, 50px); }
.gl-featured-listings .gl-sec-head__intro { font-size: clamp(15.5px, 1.2vw, 18.5px); max-width: 900px; }
.gl-featured-listings__ctas { display: flex; justify-content: center; margin-top: clamp(28px, 3vw, 44px); }
.gl-featured-listings__ctas .gl-pageblock__ctas { justify-content: center; margin-top: 0; } .gl-recently-sold.gl-block--bg-none {
width: 100vw;
margin-left: calc(50% - 50vw);
margin-right: calc(50% - 50vw);
background: #A7A29C;
} .gl-recently-sold .gl-sec-head__eyebrow { color: #4A3210; } .gl-recently-sold .gl-sec-head--center .gl-sec-head__title::after { background: #604114; } .gl-teaser .gl-sec-head { max-width: 1200px; }
.gl-teaser .gl-sec-head__intro { max-width: 900px; font-size: clamp(15.5px, 1.2vw, 18.5px); }
.gl-teaser .gl-sec-head__title .gl-sec-head__accent { font-style: italic; }
.gl-teaser .gl-pageblock__ctas { justify-content: center; } .gl-teamgrid .gl-pageblock__ctas { justify-content: center; } .gl-tmonials__carousel { position: relative; margin-top: clamp(28px, 3vw, 44px); }
.gl-tmonials__stage { position: relative; }
.gl-tmonials__grid--carousel {
position: relative;
max-width: 860px;
margin: 0 auto;
column-count: 1; overflow: hidden; transition: height 0.45s ease;
}
.gl-tmonials__grid--carousel .gl-tmonials__card {
position: absolute; top: 0;
left: 0;
width: 100%;
margin: 0;
padding: 0;
background: none; border: 0; border-radius: 0;
box-shadow: none;
text-align: center;
opacity: 0;
visibility: hidden;
transform: translateY(10px);
transition: opacity 0.6s ease, transform 0.6s ease;
pointer-events: none;
}
.gl-tmonials__grid--carousel .gl-tmonials__card.is-active {
opacity: 1;
visibility: visible;
transform: none;
pointer-events: auto;
} .gl-tmonials__grid--carousel .gl-tmonials__mark { display: none; }
.gl-tmonials__grid--carousel .gl-tmonials__quote {
font-size: clamp(17px, 1.55vw, 22px);
line-height: 1.6;
margin-bottom: clamp(16px, 1.8vw, 22px);
}
.gl-tmonials__grid--carousel .gl-tmonials__by { margin-top: clamp(14px, 1.6vw, 20px); } .gl-tmonials__arrow {
position: absolute;
top: 50%;
transform: translateY(-50%);
width: clamp(44px, 3.4vw, 46px);
height: clamp(44px, 3.4vw, 46px);
display: flex;
align-items: center;
justify-content: center;
padding: 0;
border: 0;
background: none;
color: var(--glh-navy);
cursor: pointer;
opacity: 0.5;
transition: opacity 0.25s ease;
z-index: 2;
}
.gl-tmonials__arrow:hover { opacity: 1; }
.gl-tmonials__arrow:focus-visible { outline: 2px solid var(--glh-gold); outline-offset: 2px; opacity: 1; }
.gl-tmonials__arrow svg { width: 62%; height: 62%; }
.gl-tmonials__arrow--prev { left: clamp(-6px, 1vw, 20px); }
.gl-tmonials__arrow--next { right: clamp(-6px, 1vw, 20px); }
.gl-block--bg-navy .gl-tmonials__arrow { color: var(--glh-white); }
@media (max-width: 760px) {
.gl-tmonials__arrow--prev { left: -4px; }
.gl-tmonials__arrow--next { right: -4px; }
} .gl-tmonials__dots {
display: flex;
justify-content: center;
gap: 0; margin-top: clamp(22px, 2.6vw, 32px);
}
.gl-tmonials__dot { position: relative;
width: 44px;
height: 44px;
padding: 0;
border: 0;
background: transparent;
cursor: pointer;
}
.gl-tmonials__dot::before {
content: "";
position: absolute;
left: 50%; top: 50%;
width: 10px; height: 10px;
margin: -5px 0 0 -5px;
border-radius: 50%;
background: rgba(20, 30, 50, 0.22);
transition: background 0.3s ease, transform 0.3s ease;
}
.gl-tmonials__dot:hover::before { background: rgba(20, 30, 50, 0.42); }
.gl-tmonials__dot.is-active::before { background: var(--glh-gold); transform: scale(1.25); }
.gl-tmonials__dot:focus-visible { outline: 2px solid var(--glh-focus); outline-offset: 2px; } .gl-block--bg-navy .gl-tmonials__dot::before { background: rgba(255, 255, 255, 0.3); }
.gl-block--bg-navy .gl-tmonials__dot:hover::before { background: rgba(255, 255, 255, 0.55); }
.gl-block--bg-navy .gl-tmonials__dot.is-active::before { background: var(--glh-gold); }
@media (prefers-reduced-motion: reduce) {
.gl-tmonials__grid--carousel,
.gl-tmonials__grid--carousel .gl-tmonials__card { transition: none; }
}  .gl-tmwall *,
.gl-tmwall *::before,
.gl-tmwall *::after,
.gl-tmwall-drawer,
.gl-tmwall-drawer *,
.gl-tmwall-drawer *::before,
.gl-tmwall-drawer *::after { box-sizing: border-box; }
.gl-tmwall__grid {
--gl-tmw-gap: clamp(18px, 2.2vw, 28px);
--gl-tmw-pad: clamp(22px, 2.4vw, 30px);
column-count: var(--gl-tmw-cols, 3);
column-gap: var(--gl-tmw-gap);
margin-top: clamp(28px, 3vw, 44px);
}
.gl-tmwall__card {
position: relative;
display: block;
break-inside: avoid;
-webkit-column-break-inside: avoid;
margin: 0 0 var(--gl-tmw-gap);
padding: var(--gl-tmw-pad);
background: var(--glh-white);
border: 1px solid var(--glh-gold);
border-radius: 8px;
overflow: hidden; } .gl-tmwall__photo {
display: block;
margin: calc(var(--gl-tmw-pad) * -1) calc(var(--gl-tmw-pad) * -1) 0;
background: var(--glh-cream);
overflow: hidden;
aspect-ratio: 4 / 5;
} .gl-tmwall__photo:only-child { margin-bottom: calc(var(--gl-tmw-pad) * -1); } .gl-tmwall__photo + * { margin-top: var(--gl-tmw-pad); }
.gl-tmwall__photo--standard { aspect-ratio: 4 / 5; }
.gl-tmwall__photo--tall     { aspect-ratio: 2 / 3; }
.gl-tmwall__photo--wide     { aspect-ratio: 3 / 2; }
.gl-tmwall__photo--square   { aspect-ratio: 1 / 1; }
.gl-tmwall__img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
}
.gl-tmwall__photo--focus-top    .gl-tmwall__img { object-position: center top; }
.gl-tmwall__photo--focus-bottom .gl-tmwall__img { object-position: center bottom; }
.gl-tmwall__photo--focus-left   .gl-tmwall__img { object-position: left center; }
.gl-tmwall__photo--focus-right  .gl-tmwall__img { object-position: right center; } .gl-tmwall__mark {
display: block;
font-family: var(--glh-font-heading);
font-size: clamp(44px, 4.6vw, 62px);
line-height: 0.6;
color: var(--glh-gold);
opacity: 0.55;
margin-bottom: clamp(8px, 1vw, 14px);
}
.gl-tmwall__quote {
margin: 0;
font-family: var(--glh-font-heading);
font-style: italic;
font-size: clamp(16px, 1.15vw, 17px);
line-height: 1.6;
color: var(--glh-navy);
}
.gl-tmwall__by {
margin-top: clamp(16px, 1.8vw, 22px);
line-height: 1.4;
}
.gl-tmwall__name {
display: block;
font-weight: 600;
letter-spacing: 0.4px;
color: var(--glh-gold-text);
}
.gl-tmwall__meta {
display: block;
margin-top: 3px;
font-size: 13px;
color: var(--glh-charcoal);
opacity: 0.7;
} .gl-tmwall__card--letter {
background: linear-gradient(180deg, #FBF8F4 0%, #F2ECE3 100%);
border-color: rgba(196, 154, 92, 0.6);
box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.55);
}
.gl-tmwall__badge {
display: inline-flex;
align-items: center;
gap: 8px;
margin-bottom: clamp(14px, 1.6vw, 20px);
font-size: 12px;
font-weight: 600;
letter-spacing: 1.4px;
text-transform: uppercase;
color: var(--glh-gold-text);
}
.gl-tmwall__badge svg { width: 17px; height: 17px; flex: none; } .gl-tmwall__stars {
display: flex;
gap: 4px;
margin-bottom: clamp(12px, 1.4vw, 16px);
color: var(--glh-gold);
}
.gl-tmwall__stars svg { width: 17px; height: 17px; flex: none; }
.gl-tmwall__photo + .gl-tmwall__stars { margin-top: var(--gl-tmw-pad); }
.gl-tmwall__badge + .gl-tmwall__stars { margin-top: 0; }
.gl-tmwall__card--wide:not(.gl-tmwall__card--split) .gl-tmwall__stars { justify-content: center; }
.gl-tmwall__open {
margin-top: clamp(18px, 2vw, 24px);
} .gl-tmwall__open,
.gl-tmwall__open:hover,
.gl-tmwall__open:focus { text-decoration: none; } .gl-tmwall__card--wide {
column-span: all;
-webkit-column-span: all;
margin-bottom: var(--gl-tmw-gap);
} .gl-tmwall__card--wide:not(.gl-tmwall__card--split) .gl-tmwall__body,
.gl-tmwall__card--wide:not(.gl-tmwall__card--split) .gl-tmwall__by {
max-width: 760px;
margin-left: auto;
margin-right: auto;
text-align: center;
}
.gl-tmwall__card--wide:not(.gl-tmwall__card--split) .gl-tmwall__quote {
font-size: clamp(17px, 1.6vw, 22px);
}
.gl-tmwall__card--wide:not(.gl-tmwall__card--split) .gl-tmwall__open {
display: inline-flex;
margin-left: auto;
margin-right: auto;
}
.gl-tmwall__card--wide:not(.gl-tmwall__card--split) { text-align: center; } @media (min-width: 860px) {
.gl-tmwall__card--split {
position: relative;
display: flex;
flex-direction: column;
justify-content: center; min-height: 360px;
padding: var(--gl-tmw-pad) var(--gl-tmw-pad) var(--gl-tmw-pad) calc(46% + clamp(28px, 3vw, 44px));
}
.gl-tmwall__card--split .gl-tmwall__photo {
position: absolute;
top: 0;
left: 0;
bottom: 0;
width: 46%;
height: auto;
margin: 0;
aspect-ratio: auto; }
.gl-tmwall__card--split .gl-tmwall__photo + * { margin-top: 0; } .gl-tmwall__card--split .gl-tmwall__open { align-self: flex-start; }
.gl-tmwall__card--split .gl-tmwall__stars { justify-content: flex-start; }
} @media (max-width: 1100px) { .gl-tmwall__grid { column-count: min(var(--gl-tmw-cols, 3), 3); } }
@media (max-width: 980px)  { .gl-tmwall__grid { column-count: 2; } }
@media (max-width: 620px)  { .gl-tmwall__grid { column-count: 1; } } .gl-block--bg-navy .gl-tmwall__card {
background: var(--glh-navy-light);
border-color: rgba(196, 154, 92, 0.5);
}
.gl-block--bg-navy .gl-tmwall__card--letter {
background: linear-gradient(180deg, rgba(255,255,255,0.06) 0%, rgba(255,255,255,0.02) 100%);
box-shadow: none;
}
.gl-block--bg-navy .gl-tmwall__quote { color: var(--glh-white); }
.gl-block--bg-navy .gl-tmwall__meta { color: rgba(255, 255, 255, 0.7); opacity: 1; } .gl-tmwall__docs { margin-top: clamp(36px, 4vw, 56px); }
.gl-tmwall__doc + .gl-tmwall__doc { margin-top: clamp(28px, 3vw, 44px); }
.gl-tmwall__doc-title {
margin: 0 0 6px;
font-family: var(--glh-font-heading);
font-size: clamp(20px, 2vw, 26px);
color: var(--glh-navy);
}
.gl-tmwall__doc-meta {
margin: 0 0 clamp(18px, 2vw, 24px);
font-size: 13px;
letter-spacing: 0.4px;
color: var(--glh-gold-text);
}
.gl-tmwall__doc-text {
font-size: clamp(14.5px, 1.05vw, 16px);
line-height: 1.85;
color: var(--glh-charcoal);
}
.gl-tmwall__doc-text p { margin: 0 0 1.1em; }
.gl-tmwall__doc-text > :last-child { margin-bottom: 0; }
.gl-tmwall__doc-scans {
display: grid;
gap: clamp(14px, 1.6vw, 20px);
margin-top: clamp(24px, 2.8vw, 34px);
}
.gl-tmwall__scan {
display: block;
width: 100%;
height: auto;
border: 1px solid rgba(20, 30, 48, 0.14);
border-radius: 4px;
box-shadow: 0 10px 30px rgba(20, 30, 48, 0.12);
} .gl-tmwall-drawer {
position: fixed;
inset: 0;
z-index: 99999;
display: none;
font-family: var(--glh-font-body);
--glh-navy: #141E30;
--glh-gold: #C49A5C;
--glh-cream: #F5F0EB;
--glh-charcoal: #2C2C2C;
--glh-white: #FFFFFF;
--glh-font-heading: 'Playfair Display', Georgia, serif;
--glh-font-body: 'Montserrat', 'Helvetica Neue', Arial, sans-serif;
}
.gl-tmwall-drawer.is-open { display: block; }
.gl-tmwall-drawer__scrim {
position: absolute;
inset: 0;
background: rgba(20, 30, 48, 0.55);
opacity: 0;
transition: opacity 0.35s var(--glh-ease, ease);
}
.gl-tmwall-drawer.is-visible .gl-tmwall-drawer__scrim { opacity: 1; }
.gl-tmwall-drawer__panel {
position: absolute;
top: 0;
right: 0;
height: 100%;
width: min(720px, 100%);
background: #FBF8F4;
box-shadow: -18px 0 50px rgba(20, 30, 48, 0.28);
display: flex;
flex-direction: column;
transform: translateX(100%);
transition: transform 0.42s var(--glh-ease, ease);
}
.gl-tmwall-drawer.is-visible .gl-tmwall-drawer__panel { transform: none; }
.gl-tmwall-drawer__head {
flex: none;
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
padding: clamp(18px, 2vw, 24px) clamp(22px, 2.6vw, 34px);
background: var(--glh-navy);
color: var(--glh-white);
}
.gl-tmwall-drawer__eyebrow {
margin: 0;
font-size: 12px;
font-weight: 600;
letter-spacing: 1.6px;
text-transform: uppercase;
color: var(--glh-gold-text);
}
.gl-tmwall-drawer__close {
flex: none;
width: 44px;
height: 44px;
display: flex;
align-items: center;
justify-content: center;
padding: 0;
border: 1px solid rgba(255, 255, 255, 0.28);
border-radius: 50%;
background: none;
color: var(--glh-white);
cursor: pointer;
transition: background 0.25s ease, border-color 0.25s ease;
}
.gl-tmwall-drawer__close:hover { background: rgba(255, 255, 255, 0.12); border-color: var(--glh-gold); }
.gl-tmwall-drawer__close:focus-visible { outline: 2px solid var(--glh-gold); outline-offset: 2px; }
.gl-tmwall-drawer__close svg { width: 18px; height: 18px; }
.gl-tmwall-drawer__body {
flex: 1 1 auto;
overflow-y: auto;
-webkit-overflow-scrolling: touch;
padding: clamp(26px, 3vw, 40px) clamp(22px, 2.6vw, 40px) clamp(40px, 5vw, 64px);
}
.gl-tmwall-drawer__body .gl-tmwall__doc { margin: 0; } .gl-tmwall-lock,
.gl-tmwall-lock body { overflow: hidden; }
@media (prefers-reduced-motion: reduce) {
.gl-tmwall-drawer__scrim,
.gl-tmwall-drawer__panel { transition: none; }
}