:root { --space-3xs:   clamp(0.25rem, 0.1875rem + 0.208vw, 0.375rem); --space-2xs:   clamp(0.5rem, 0.375rem + 0.417vw, 0.75rem); --space-xs:    clamp(0.75rem, 0.5625rem + 0.625vw, 1.125rem); --space-sm:    clamp(1rem, 0.75rem + 0.833vw, 1.5rem); --space-md:    clamp(1.25rem, 0.875rem + 1.250vw, 2rem); --space-lg:    clamp(1.75rem, 1.25rem + 1.667vw, 2.75rem); --space-xl:     clamp(2.25rem, 1.625rem + 2.083vw, 3.5rem); --space-2xl:    clamp(2.75rem, 2.125rem + 2.083vw, 4rem);  --section-pad-y:       clamp(2.5rem, 1.75rem + 2.500vw, 4rem); --section-pad-y-tight: clamp(1.5rem, 1rem + 1.667vw, 2.5rem);  --band-min-h:  clamp(24rem, 19rem + 16.667vw, 34rem);  --container-max:1640px; --content-max: 72ch; --gutter:      clamp(1.25rem, -0.625rem + 6.250vw, 5rem);  --grid-gutter: var(--space-2xs); --color-bg:      #F7F7F5; --color-surface:#FFFFFF;
--color-charcoal:#2C2C2B;
--color-hairline:  rgb(26 26 25 / 0.08);
--color-primary:#900036; --color-accent:#005574; --color-text:    #1A1A19;
--color-text-inv:#FFFFFF;
--color-text-mut:#6B6B6A; --color-border:#D8D8D7;  --color-scrim: linear-gradient(90deg,
rgb(0 0 0 / 0.72) 0%,
rgb(0 0 0 / 0.42) 60%,
rgb(0 0 0 / 0.12) 100%);
--color-scrim-top:linear-gradient(180deg,
rgb(0 0 0 / 0.70) 0%,
rgb(0 0 0 / 0.36) 55%,
transparent 100%); --font-body:   "nimbus-sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
--font-display:"nimbus-sans-extended", "nimbus-sans", "Helvetica Neue", Arial, sans-serif;
--fw-light:    300;
--fw-regular:  400;
--fw-bold:     700; --step-5:       clamp(2rem, 1.375rem + 2.083vw, 3.25rem); --step-4:      clamp(1.625rem, 1.125rem + 1.667vw, 2.625rem); --step-3:      clamp(1.375rem, 1.0312rem + 1.146vw, 2.0625rem); --step-2:      clamp(1.25rem, 0.9375rem + 1.042vw, 1.875rem); --step-1:      clamp(1.0625rem, 0.9062rem + 0.521vw, 1.375rem); --step-0:      clamp(0.9375rem, 0.8438rem + 0.312vw, 1.125rem); --step--1:     clamp(0.8125rem, 0.7188rem + 0.312vw, 1rem);  --step-quote:   clamp(1.125rem, 0.9375rem + 0.625vw, 1.5rem);  --step-sub:    clamp(1.125rem, 0.875rem + 0.833vw, 1.625rem); --leading-tight:1.1;
--leading-snug:1.3;
--leading-body:1.55;
--tracking-tight:-0.01em;
--tracking-wide:0.02em; --dur-fast:    120ms;
--dur-base:    200ms;
--dur-slow:    320ms;
--dur-xslow:       700ms;
--ease-out:      cubic-bezier(0.32, 0.72, 0, 1); --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);   --hero-overlap:  var(--space-xl); --nav-w:         min(88vw, var(--container-max));
--nav-pad-x:     1.5rem;
--logo-size:     clamp(2.625rem, 2.0625rem + 1.875vw, 3.75rem); --header-h:      calc(44px + var(--logo-size) + 1.125rem);
--btn-h:       clamp(2.75rem, 2.5rem + 0.833vw, 3.25rem); --btn-pad-x:   var(--space-sm);
--btn-radius:    var(--radius-pill);
--card-radius:   var(--radius-core);  --shadow-sm:     0 1px 2px rgb(26 26 25 / 0.03),
0 4px 12px rgb(26 26 25 / 0.04);
--shadow-md:     0 2px 4px rgb(26 26 25 / 0.03),
0 12px 28px rgb(26 26 25 / 0.06),
0 32px 64px rgb(26 26 25 / 0.05);
--shadow-inner:  inset 0 1px 0 rgb(255 255 255 / 0.9); --radius-shell:  32px;
--radius-core:   24px;
--radius-pill:   999px;
--tray-pad:      8px;
--enclosure-bg:  rgb(26 26 25 / 0.05);
}*, *::before, *::after { box-sizing: border-box; }
html {
-webkit-text-size-adjust: 100%;
scroll-behavior: smooth;
}
body {
margin: 0;
background: var(--color-bg);
color: var(--color-text);
font-family: var(--font-body);
font-size: var(--step-0);
font-weight: var(--fw-regular);
line-height: var(--leading-body);
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
img, svg, video, picture { display: block; max-width: 100%; }
img { height: auto; }
h1, h2, h3, h4, h5, h6 { margin: 0; font-weight: var(--fw-regular); }
p, ul, ol { margin: 0; }
ul, ol { padding: 0; list-style: none; }
a { color: inherit; text-decoration: none; }
button { font: inherit; color: inherit; background: none; border: 0; cursor: pointer; } .t-page-title { font-family: var(--font-display);
font-weight: var(--fw-bold);
font-size: var(--step-5);
line-height: 0.96;
letter-spacing: -0.035em;
}
.t-display { font-family: var(--font-display);
font-weight: var(--fw-light);
font-size: var(--step-4);
line-height: 1.02;
letter-spacing: -0.03em;
}
.t-section { font-family: var(--font-display);
font-weight: var(--fw-regular);
font-size: var(--step-3);
line-height: 1.06;
letter-spacing: -0.025em;
}
.t-band { font-family: var(--font-body);
font-weight: var(--fw-bold);
font-size: var(--step-2);
line-height: 1.1;
letter-spacing: -0.02em;
}
.t-lead { font-family: var(--font-body);
font-weight: var(--fw-bold);
font-size: var(--step-1);
line-height: var(--leading-snug);
}
.t-sub { font-family: var(--font-display);
font-weight: var(--fw-regular);
font-size: var(--step-sub);
line-height: var(--leading-snug);
}
.t-col-head { font-family: var(--font-display);
font-weight: var(--fw-bold);
font-size: var(--step-sub);
line-height: var(--leading-snug);
}
.t-small { font-size: var(--step--1);
line-height: var(--leading-body);
} .container {
width: 100%;
max-width: calc(var(--container-max) + var(--gutter) * 2);
margin-inline: auto;
padding-inline: var(--gutter);
}
.prose { max-width: var(--content-max); } .section { padding-block: var(--section-pad-y) 0; }
.section--tight { padding-block: var(--section-pad-y-tight) 0; }
.section--flush { padding-block: 0; } .btn {
display: inline-flex;
align-items: center;
justify-content: center;
min-height: var(--btn-h);
padding-inline: var(--space-md);
border: 2px solid transparent;
border-radius: var(--btn-radius);
font-family: var(--font-body);
font-weight: var(--fw-bold); font-size: var(--step--1);
letter-spacing: 0.01em;
line-height: 1;
text-align: center;
transition: background-color var(--dur-base) var(--ease-out),
border-color var(--dur-base) var(--ease-out),
color var(--dur-base) var(--ease-out),
transform var(--dur-fast) var(--ease-out);
} .btn:active { transform: translateY(1px); transition-duration: var(--dur-fast); }
.btn[disabled],
.btn[aria-disabled="true"] {
opacity: 0.45;
pointer-events: none;
}
.btn--primary {
background: var(--color-primary);
border-color: var(--color-primary);
color: var(--color-text-inv);
} .btn--primary:hover { background: transparent; color: var(--color-primary); }
.btn--primary:focus-visible { outline-color: var(--color-primary); } .btn--ghost {
background: transparent;
border-color: var(--color-text-inv);
color: var(--color-text-inv);
}
.btn--ghost:hover { background: var(--color-text-inv); color: var(--color-charcoal); }
.btn--ghost:focus-visible { outline-color: var(--color-text-inv); } .btn--outline {
background: transparent;
border-color: var(--color-accent);
color: var(--color-accent);
}
.btn--outline:hover { background: var(--color-accent); color: var(--color-text-inv); } .social {
display: flex;
align-items: center;
gap: var(--space-3xs);
} .social a {
display: grid;
place-items: center;
width: 44px;
height: 44px;
} .social { margin-inline: -13px; }
.social__icon {
width: 18px;
height: 18px;
flex: none;
transition: opacity var(--dur-fast) var(--ease-out);
}
.social a:hover .social__icon { opacity: 0.7; } .eyebrow {
display: inline-flex;
align-items: center;
gap: 0.5em;
padding: 0.45em 0.9em;
border: 1px solid currentColor;
border-radius: var(--radius-pill);
font-size: 10px;
font-weight: var(--fw-bold);
letter-spacing: 0.2em;
text-transform: uppercase;
opacity: 0.7;
}
.eyebrow::before {
content: "";
width: 4px; height: 4px;
border-radius: 50%;
background: currentColor;
} .btn:has(.btn__arrow) { padding-right: 0.5rem; }
.btn__arrow {
display: grid;
place-items: center;
width: 34px; height: 34px;
margin-left: 0.9rem;
border-radius: 50%;
background: rgb(255 255 255 / 0.16);
transition: transform var(--dur-slow) var(--ease-out),
background-color var(--dur-slow) var(--ease-out);
}
.btn__arrow svg { width: 14px; height: 14px; } .btn:hover .btn__arrow {
transform: translate(3px, -2px) scale(1.06);
background: rgb(255 255 255 / 0.28);
}
.btn--outline .btn__arrow,
.btn--primary:hover .btn__arrow { background: rgb(26 26 25 / 0.08); } .rule-row {
display: flex;
align-items: center;
gap: var(--space-sm);
}
.rule-row__line {
flex: 1;
height: 1px;
background: currentColor;
opacity: 0.35;
} .rule-row:has(.eyebrow) {
flex-direction: column;
align-items: flex-start;
gap: var(--space-2xs);
}
.rule-row:has(.eyebrow) .rule-row__line {
flex: none;
width: 100%;
} :focus-visible {
outline: 3px solid var(--color-primary);
outline-offset: 3px;
box-shadow: 0 0 0 3px rgb(255 255 255 / 0.9);
}
.on-dark :focus-visible,
.hero :focus-visible { outline-color: var(--color-text-inv); }
.skip-link {
position: absolute;
left: -9999px;
z-index: 999;
}
.skip-link:focus {
left: var(--space-sm);
top: var(--space-sm);
padding: var(--space-xs) var(--space-sm);
background: var(--color-text-inv);
color: var(--color-charcoal);
}
.visually-hidden {
position: absolute;
width: 1px; height: 1px;
margin: -1px; padding: 0;
overflow: hidden;
clip-path: inset(50%);
white-space: nowrap;
} .reveal-ready .reveal {
opacity: 0;
transform: translateY(28px);
}
.reveal-ready .reveal.is-in {
opacity: 1;
transform: none; transition: opacity 560ms var(--ease-out),
transform 560ms var(--ease-out);
transition-delay: var(--reveal-delay, 0ms);
} @media (prefers-reduced-motion: reduce) {
.reveal-ready .reveal { opacity: 1; transform: none; }
*, *::before, *::after {
animation-duration: 0.01ms !important;
animation-iteration-count: 1 !important;
transition-duration: 0.01ms !important;
scroll-behavior: auto !important;
}
}.atiles__list {
display: grid;
grid-template-columns: repeat(3, 1fr);
}
.atiles__tile {
position: relative;
isolation: isolate;
display: grid;
place-items: center;
min-height: clamp(12.5rem, 9.375rem + 10.417vw, 18.75rem);
padding: var(--space-md);
color: var(--color-text-inv);
overflow: hidden;
}
.atiles__bg {
position: absolute;
inset: 0;
z-index: -2;
width: 100%; height: 100%;
object-fit: cover;
transition: transform var(--dur-slow) var(--ease-out);
} .atiles__tile::before {
content: "";
position: absolute;
inset: 0;
z-index: -1; background: rgb(0 0 0 / 0.55);
transition: background-color var(--dur-base) var(--ease-out);
}
.atiles__tile:hover .atiles__bg,
.atiles__tile:focus-visible .atiles__bg { transform: scale(1.05); }
.atiles__tile:hover::before,
.atiles__tile:focus-visible::before { background: rgb(0 85 116 / 0.6); } .atiles__tile:active .atiles__bg { transform: scale(1.02); }
.atiles__tile:focus-visible { outline-offset: -6px; }
.atiles__label {
display: flex;
align-items: center;
gap: var(--space-xs);
text-align: left;
}
.atiles__icon { width: 2rem; height: 2rem; flex: none; }
.atiles__text { font-size: var(--step-2);
text-decoration: underline;
text-underline-offset: 0.18em;
text-decoration-thickness: 2px;
}
@media (max-width: 992px) {
.atiles__list { grid-template-columns: 1fr; }
.atiles__tile { min-height: 200px; }
} .atiles__item { display: flex; min-width: 0; }
.atiles__item > .atiles__tile { flex: 1; } .atiles__list {
max-width: var(--container-max);
margin-inline: auto;
padding-inline: var(--gutter);
gap: var(--space-md);
}
.atiles__tile { border-radius: var(--radius-shell); }
.atiles__tile:hover .atiles__bg { transform: scale(1.06); }.cgrid__head { margin-bottom: var(--space-md); } .cgrid__head .rule-row__line { opacity: 0.35; }
.cgrid__all { white-space: nowrap; color: var(--color-accent); }
.cgrid__all:hover { text-decoration: underline; }
.cgrid__list {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: var(--grid-gutter);
}
.cgrid__card {
position: relative;
height: 100%;
display: flex;
flex-direction: column;
border: 1px solid var(--color-border);
background: var(--color-surface);
overflow: hidden;
transition: border-color var(--dur-base) var(--ease-out);
}
.cgrid__card:hover,
.cgrid__card:focus-within { border-color: var(--color-accent); } .cgrid__title a:focus-visible { outline: none; box-shadow: none; }
.cgrid__card:focus-within {
outline: 3px solid var(--color-primary);
outline-offset: 3px;
}
.cgrid__card:active { border-color: var(--color-primary); }
.cgrid__thumb {
width: 100%;
aspect-ratio: 536 / 230;
object-fit: cover;
transition: transform var(--dur-slow) var(--ease-out);
}
.cgrid__card:hover .cgrid__thumb,
.cgrid__card:focus-within .cgrid__thumb { transform: scale(1.04); }
.cgrid__body {
display: flex;
flex-direction: column;
align-items: flex-start; gap: var(--space-2xs);
flex: 1;
padding: var(--space-md) var(--space-sm);
}
.cgrid__title { font-weight: var(--fw-regular); } .cgrid__title a::after {
content: "";
position: absolute;
inset: 0;
}
.cgrid__more { margin-top: auto; pointer-events: none; }
.cgrid__card:hover .cgrid__more,
.cgrid__card:focus-within .cgrid__more {
background: var(--color-accent);
color: var(--color-text-inv);
}
@media (max-width: 992px) {
.cgrid__list { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
.cgrid__list { grid-template-columns: 1fr; }
.cgrid__all { display: none; } } .cgrid__item { display: flex; min-width: 0; }
.cgrid__heading { white-space: nowrap; } .cgrid__card {
padding: var(--tray-pad);
border: 1px solid var(--color-hairline);
border-radius: var(--radius-core);
background: var(--color-surface);
box-shadow: var(--shadow-sm); transition: transform var(--dur-slow) var(--ease-out),
box-shadow var(--dur-slow) var(--ease-out),
border-color var(--dur-base) var(--ease-out);
}
.cgrid__card:hover,
.cgrid__card:focus-within {
transform: translateY(-6px);
box-shadow: var(--shadow-md);
border-color: var(--color-hairline);
}
.cgrid__thumb { border-radius: calc(var(--radius-core) - var(--tray-pad)); }
.cgrid__body { padding: var(--space-md); gap: var(--space-sm); }
.cgrid__list { gap: var(--space-md); }.fsplit {
display: grid;
grid-template-columns: 992fr 928fr;
min-height: var(--band-min-h);
color: var(--color-text-inv);
}
.fsplit__media {
width: 100%;
height: 100%;
object-fit: cover;
grid-row: 1;
}
.fsplit__panel {
display: grid;
align-content: center;
grid-row: 1;
padding-block: var(--space-2xl);
}
.fsplit__content {
width: 100%;
max-width: clamp(20rem, 12.5rem + 25.000vw, 35rem);
} .fsplit--image-left  .fsplit__media { grid-column: 1; }
.fsplit--image-left  .fsplit__panel {
grid-column: 2;
padding-inline: var(--space-2xl) var(--gutter);
justify-items: start;
}
.fsplit--image-right .fsplit__media { grid-column: 2; }
.fsplit--image-right .fsplit__panel {
grid-column: 1;
padding-inline: var(--gutter) var(--space-2xl);
justify-items: start;
} .fsplit--teal     .fsplit__panel { background: var(--color-accent); }
.fsplit--charcoal .fsplit__panel { background: var(--color-charcoal); }
.fsplit--wine     .fsplit__panel { background: var(--color-primary); } .fsplit__heading { text-wrap: balance; }
.fsplit__body { margin-top: var(--space-sm); }
.fsplit__subhead {
margin-top: var(--space-sm);
font-weight: var(--fw-bold);
} .fsplit__cta { margin-top: var(--space-lg); } .fsplit__subbody + .fsplit__cta { margin-top: var(--space-md); }
@media (max-width: 992px) { .fsplit {
grid-template-columns: 1fr;
min-height: 0;
}
.fsplit--image-left  .fsplit__media,
.fsplit--image-right .fsplit__media {
grid-column: 1;
grid-row: 1;
max-height: clamp(12.5rem, 9.375rem + 10.417vw, 18.75rem);
}
.fsplit--image-left  .fsplit__panel,
.fsplit--image-right .fsplit__panel {
grid-column: 1;
grid-row: 2;
padding-inline: var(--gutter);
padding-block: var(--space-xl);
}
.fsplit__content { max-width: none; }
.fsplit__cta { margin-top: var(--space-lg); }
} .fsplit {
max-width: var(--container-max);
margin-inline: auto;
margin-block: var(--space-md);
padding: var(--tray-pad);
min-height: 0;
background: var(--enclosure-bg);
border: 1px solid var(--color-hairline);
border-radius: var(--radius-shell);
box-shadow: var(--shadow-sm);
overflow: hidden;
}
.fsplit__media { border-radius: var(--radius-core); }
.fsplit__panel {
border-radius: var(--radius-core);
padding-block: clamp(2rem, 1.5rem + 1.667vw, 3rem);
box-shadow: var(--shadow-inner);
}
.fsplit--image-left  .fsplit__panel,
.fsplit--image-right .fsplit__panel {
padding-inline: clamp(1.5rem, 1rem + 1.667vw, 2.5rem);
}
@media (max-width: 992px) {
.fsplit { margin-inline: 1rem; border-radius: var(--radius-core); }
}.hero {
position: relative;
isolation: isolate;
display: grid;
align-items: center;
color: var(--color-text-inv);
overflow: hidden;
}
.hero__bg {
position: absolute;
inset: 0;
z-index: -2;
width: 100%;
height: 100%;
object-fit: cover;
object-position: center 30%;
}
.hero::before {
content: "";
position: absolute;
inset: 0;
z-index: -1;
background: var(--color-scrim);
} .hero::after {
content: "";
position: absolute;
inset: 0 0 auto 0;
height: clamp(10rem, 7.8125rem + 7.292vw, 14.375rem);
z-index: -1;
background: var(--color-scrim-top);
pointer-events: none;
}
.hero__inner { padding-top: calc(var(--space-2xl) + var(--space-2xl));
padding-bottom: var(--space-xl);
}  .hero--tall  { min-height: clamp(30rem, 75vh, 82rem); } .hero--short { min-height: clamp(21.5625rem, 17.75rem + 15.885vw, 31.875rem); }
.hero__heading { max-width: 18ch; }
.hero__rule {
display: block;
width: clamp(12.5rem, 6.875rem + 18.750vw, 23.75rem);
max-width: 100%;
height: 3px;
margin-block: var(--space-sm);
background: var(--color-primary);
}
.hero__rule--wide { width: clamp(16.25rem, 6.875rem + 31.250vw, 35rem); } .hero__bullets {
max-width: 46ch;
display: grid;
gap: var(--space-3xs);
font-size: var(--step--1);
font-weight: var(--fw-bold);
}
.hero__bullets li {
position: relative;
padding-left: var(--space-xs);
}
.hero__bullets li::before {
content: "";
position: absolute;
left: 0;
top: 0.6em;
width: 6px; height: 6px;
border-radius: 50%;
background: var(--color-primary);
}
.hero__cta { margin-top: var(--space-md); }
@media (max-width: 1200px) {
.hero--tall { min-height: 0; }
.hero__inner { padding-block: calc(53px + 98px + var(--space-lg)) var(--space-2xl); }
}
@media (max-width: 768px) {
.hero__inner { padding-top: calc(53px + 68px + var(--space-lg)); }
.hero__heading { max-width: none; }
.hero__rule { width: 240px; margin-block: var(--space-xs); }
.hero--short { min-height: 260px; } .hero::before { background: rgb(0 0 0 / 0.5); }
}  .hero::after {
height: clamp(9rem, 7rem + 6.667vw, 13rem);
background: linear-gradient(180deg,
rgb(0 0 0 / 0.55) 0%,
rgb(0 0 0 / 0.22) 55%,
transparent 100%);
}
.hero { border-radius: 0 0 var(--radius-shell) var(--radius-shell); }
.hero__inner { padding-top: calc(var(--header-h) + var(--space-sm));
padding-bottom: calc(var(--hero-overlap) + var(--space-sm));
} .hero__heading {
max-width: min(60vw, 48rem);
margin-bottom: var(--space-sm);
}
.hero__rule { display: none; }
.hero__bullets {
gap: var(--space-xs);
font-size: 15px;
font-weight: var(--fw-regular);
letter-spacing: 0.01em;
}
.hero__bullets li::before {
top: 0.55em;
width: 5px; height: 5px;
background: var(--color-text-inv);
opacity: 0.55;
}.introduo { position: relative; z-index: 2; }
.introduo__panel {
margin-top: -64px; padding: var(--space-md) var(--space-2xl);
background: var(--color-charcoal);
color: var(--color-text-inv);
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: var(--space-2xl);
} .introduo__heading { text-wrap: balance; }
.introduo__body { margin-top: var(--space-sm); font-size: var(--step--1); }
.introduo__actions {
display: flex;
flex-wrap: wrap;
gap: var(--space-xs);
margin-top: var(--space-md);
}
@media (max-width: 992px) {
.introduo__panel {
grid-template-columns: 1fr;
gap: var(--space-xl);
padding: var(--space-lg) var(--space-md);
margin-top: calc(clamp(1.75rem, 0.625rem + 3.750vw, 4rem) * -1);
}
}
@media (max-width: 768px) {
.introduo__panel { margin-top: 0; }
.introduo__actions .btn { width: 100%; }
} .introduo__col { min-width: 0; } .introduo__panel { margin-top: calc(var(--hero-overlap) * -1);
padding: var(--tray-pad);
gap: 0;
background: var(--enclosure-bg);
border: 1px solid var(--color-hairline);
border-radius: var(--radius-shell);
box-shadow: var(--shadow-md);
}
.introduo__col {
padding: clamp(1.5rem, 1rem + 1.667vw, 2.5rem);
background: var(--color-charcoal);
box-shadow: var(--shadow-inner);
}
.introduo__col:first-child { border-radius: var(--radius-core) 0 0 var(--radius-core); }
.introduo__col:last-child  { border-radius: 0 var(--radius-core) var(--radius-core) 0; }
@media (max-width: 992px) {
.introduo__col:first-child,
.introduo__col:last-child { border-radius: var(--radius-core); }
.introduo__panel { gap: var(--tray-pad); }
}.mtext__inner {
display: grid; grid-template-columns: minmax(0, 34fr) minmax(0, 66fr);
gap: var(--space-md);
align-items: start;
}
.mtext__media {
width: 100%;
aspect-ratio: 3 / 2;
object-fit: cover;
}
.mtext__body > * + * { margin-top: var(--space-xs); }
.mtext__body a {
color: var(--color-accent);
text-decoration: underline;
text-underline-offset: 0.15em;
}
.mtext__body a:hover { color: var(--color-primary); }
.mtext__actions { margin-top: var(--space-md); }
@media (max-width: 992px) {
.mtext__inner { grid-template-columns: 1fr; }
.mtext__media { max-width: 32rem; }
}.proll {
background: none;
padding-block: var(--space-md) 0;
}
.proll__inner {
display: grid; grid-template-columns: max-content minmax(0, 1fr);
align-items: center;
gap: var(--space-2xl);
}
.proll__head { color: var(--color-charcoal); }
.proll__heading { white-space: nowrap; }
.proll__viewport {
display: grid;
grid-template-columns: auto 1fr auto;
align-items: center;
gap: var(--space-xs);
}
.proll__track {
display: flex;
gap: var(--space-2xs);
overflow-x: auto;
scroll-snap-type: x mandatory;
scrollbar-width: none;
scroll-behavior: smooth;
}
.proll__track::-webkit-scrollbar { display: none; }
.proll__item {
background: none;
flex: 0 0 clamp(7rem, 5.8125rem + 3.958vw, 9.375rem);
scroll-snap-align: start;
display: grid;
place-items: center;
height: clamp(5rem, 4.1875rem + 2.708vw, 6.625rem);
padding: var(--space-3xs);
background: var(--color-bg);
}
.proll__item img {
width: auto;
max-height: 100%;
}
.proll__nav {
display: grid;
place-items: center;
width: 44px; height: 44px;
color: var(--color-charcoal);
border-radius: 50%;
transition: background-color var(--dur-fast) var(--ease-out);
}
.proll__nav svg { width: 24px; height: 24px; }
.proll__nav:hover { background: rgb(0 0 0 / 0.06); }
.proll__nav:active { background: rgb(0 0 0 / 0.12); } .proll__nav:disabled {
opacity: 0.25;
cursor: default;
background: none;
} .proll__item img {
opacity: 0.72;
transition: opacity var(--dur-base) var(--ease-out);
}
.proll__item:hover img,
.proll__item:focus-within img { opacity: 1; }
@media (max-width: 992px) {
.proll__inner { grid-template-columns: 1fr; gap: var(--space-md); }
.proll__heading { white-space: normal; }
}
@media (max-width: 768px) { .proll__nav { display: none; }
.proll__viewport { grid-template-columns: 1fr; }
}.pblock__heading { margin-bottom: var(--space-sm); }
.pblock__body > * + * { margin-top: var(--space-xs); }
.pblock__body a {
color: var(--color-accent);
text-decoration: underline;
text-underline-offset: 0.15em;
transition: color var(--dur-fast) var(--ease-out);
}
.pblock__body a:hover { color: var(--color-primary); }.secheading { padding-block: var(--section-pad-y) 0; }
.secheading .rule-row__line { opacity: 0.5; }
@media (max-width: 768px) { .secheading .rule-row__line { display: none; }
}.site-footer {
background: var(--color-charcoal);
color: var(--color-text-inv);
} .sfooter__schedule { border-bottom: 1px solid rgb(255 255 255 / 0.15); }
.sfooter__schedule-inner {
display: flex;
align-items: center;
justify-content: space-between;
gap: var(--space-md);
padding-block: var(--space-2xs);
}
.sfooter__schedule-text {
font-size: var(--step--1);
font-weight: var(--fw-bold);
margin: 0;
}
.sfooter__schedule-cta { flex: none; } .sfooter__mid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: var(--space-2xl);
padding-block: var(--space-md);
font-size: var(--step--1);
}
.sfooter__col > * + * { margin-top: var(--space-xs); }
.sfooter__col .t-col-head { margin-bottom: var(--space-xs); } .sfooter__links a {
display: inline-flex;
align-items: center;
min-height: 24px;
}
.sfooter__links a,
.sfooter__col a {
text-decoration: underline;
text-underline-offset: 0.15em;
text-decoration-color: transparent;
transition: text-decoration-color var(--dur-fast) var(--ease-out);
}
.sfooter__links a:hover,
.sfooter__col a:hover { text-decoration-color: currentColor; }
.sfooter__follow { margin-top: var(--space-md); }
.sfooter__mid .social { margin-top: var(--space-xs); } .sfooter__brand { margin-top: var(--space-sm); }
.sfooter__brand img { width: clamp(4rem, 3.375rem + 2.083vw, 5.25rem); height: clamp(4rem, 3.375rem + 2.083vw, 5.25rem); } .sfooter__bottom { border-top: 1px solid rgb(255 255 255 / 0.15); }
.sfooter__bottom-inner {
display: flex;
align-items: center;
justify-content: space-between;
gap: var(--space-sm);
padding-block: var(--space-3xs);
}
.sfooter__bottom-inner p { margin: 0; }
@media (max-width: 992px) {
.sfooter__mid { grid-template-columns: 1fr 1fr; gap: var(--space-lg); }
}
@media (max-width: 992px) { .sfooter__links a {
display: flex;
align-items: center;
min-height: 44px;
}
.sfooter__col a[href^="tel:"] {
display: inline-flex;
align-items: center;
min-height: 44px;
}
}
@media (max-width: 768px) {
.sfooter__schedule-inner,
.sfooter__bottom-inner { flex-direction: column; align-items: flex-start; }
.sfooter__mid { grid-template-columns: 1fr; }
}  .site-footer {
margin-block: var(--section-pad-y) 0;
border-radius: var(--radius-shell) var(--radius-shell) 0 0;
}
.sfooter__mid { padding-block: var(--section-pad-y); }.site-header {
position: absolute;
inset: 0 0 auto 0;
z-index: 10;
color: var(--color-text-inv);
}  .site-header__utility {
background: none;
font-size: 13px;
color: var(--color-text-inv);
}
.site-header__utility-inner {
display: flex;
align-items: center;
justify-content: space-between;
gap: var(--space-sm);
min-height: 0; width: var(--nav-w);
max-width: calc(100% - 2rem);
margin-inline: auto;
padding-block: 0;
padding-inline: var(--nav-pad-x);
}
.site-header__utility-nav {
display: flex;
align-items: center;
gap: var(--space-sm);
}
.site-header__utility-nav ul {
display: flex;
gap: var(--space-sm);
} .site-header__utility-nav ul a {
display: inline-flex;
align-items: center;
min-height: 24px;
}
.site-header__utility-nav a { transition: opacity var(--dur-fast) var(--ease-out); }
.site-header__utility-nav a:hover { opacity: 0.7; }
.site-header__phone {
display: inline-flex;
align-items: center; min-height: 24px;
font-weight: var(--fw-bold);
}
@media (max-width: 992px) { .site-header__phone { min-height: 44px; }
}   .site-header__main {
display: flex;
align-items: center;
justify-content: space-between;
gap: var(--space-lg);
width: var(--nav-w);
max-width: calc(100% - 2rem);
margin-inline: auto;
padding: 0.5rem var(--nav-pad-x);
background: rgb(255 255 255 / 0.72);
backdrop-filter: blur(20px) saturate(180%);
-webkit-backdrop-filter: blur(20px) saturate(180%);
border: 1px solid rgb(255 255 255 / 0.6);
border-radius: var(--radius-pill);
box-shadow: var(--shadow-md);
color: var(--color-text);
}
.site-header__main .site-header__logo img { filter: invert(1); }
.site-header__primary ul { font-size: 14px; gap: var(--space-sm); } .site-header__drawer-utility { display: none; } .site-header__call { display: none; }
.site-header__primary a::after { height: 1px; }
.site-header__logo { display: grid;
place-items: center;
min-width: 44px;
min-height: 44px; margin-inline: min(0px, calc((44px - var(--logo-size)) / -2));
transition: opacity var(--dur-fast) var(--ease-out);
}
.site-header__logo:hover { opacity: 0.85; } .site-header__logo img {
width:  var(--logo-size);
height: var(--logo-size);
}
.site-header__primary ul {
display: flex;
gap: var(--space-sm);
font-family: var(--font-display);
font-size: var(--step--1);
}
.site-header__primary a {
position: relative;
display: inline-flex;
align-items: center;
min-height: 24px;
padding-block: var(--space-3xs);
}  .site-header__drawer-utility { display: none; } .site-header__call { display: none; }
.site-header__primary a::after {
content: "";
position: absolute;
inset: auto 0 0 0;
height: 2px;
background: currentColor;
transform: scaleX(0);
transform-origin: left;
transition: transform var(--dur-base) var(--ease-out);
}
.site-header__primary a:hover::after,
.site-header__primary a:focus-visible::after { transform: scaleX(1); } .site-header__toggle {
display: none;
width: 44px;
height: 44px;
place-items: center;
margin-right: calc(var(--space-3xs) * -1);
}
.site-header__toggle:active { transform: scale(0.92); }
.site-header__bars,
.site-header__bars::before,
.site-header__bars::after {
display: block;
width: 28px; height: 2px;
background: currentColor;
}
.site-header__bars::before,
.site-header__bars::after { content: ""; position: relative; }
.site-header__bars::before { top: -9px; }
.site-header__bars::after  { top: 7px; }
@media (max-width: 1200px) {
.site-header__primary ul { gap: var(--space-xs); }
} .site-header__primary > .site-header__drawer-utility { display: none; }
.site-header__call { display: none; }
@media (max-width: 768px) {
.site-header__utility-nav ul { display: none; } .site-header__phone { display: none; }
.site-header__toggle { display: grid; } .site-header__primary {
position: absolute;
inset: 100% 0 auto 0;
margin-top: var(--space-2xs);
padding: var(--space-2xs) 0;
background: var(--color-charcoal);
color: var(--color-text-inv);
border-radius: var(--radius-core);
box-shadow: var(--shadow-md);
display: none;
} .site-header__primary[data-open="true"] {
display: block;
animation: drawer-in var(--dur-base) var(--ease-out);
}
@keyframes drawer-in {
from { transform: translateY(-8px); }
to   { transform: none; }
}
.site-header__primary ul {
flex-direction: column;
gap: 0;
padding: 0 var(--nav-pad-x);
font-size: var(--step--1);
}
.site-header__primary li + li { border-top: 1px solid rgb(255 255 255 / 0.15); }
.site-header__primary a {
display: flex;
align-items: center;
min-height: 48px;
} .site-header__primary a::after { content: none; }
.site-header__primary a:hover,
.site-header__primary a:focus-visible { color: var(--color-text-inv); opacity: 0.75; } .site-header__primary > .site-header__drawer-utility {
display: block;
margin-top: var(--space-2xs);
padding-top: var(--space-2xs);
border-top: 1px solid rgb(255 255 255 / 0.15);
}
.site-header__drawer-utility a { opacity: 0.75; } .site-header__call {
position: fixed;
z-index: 60;
right: var(--space-sm);
bottom: calc(var(--space-sm) + env(safe-area-inset-bottom, 0px));
display: inline-flex;
align-items: center;
gap: 0.55em;
min-height: 52px;
padding-inline: var(--space-sm);
background: var(--color-primary);
color: var(--color-text-inv);
border-radius: var(--radius-pill);
box-shadow: var(--shadow-md);
font-size: var(--step--1);
font-weight: var(--fw-bold);
letter-spacing: 0.01em;
white-space: nowrap;
transition: transform var(--dur-base) var(--ease-out);
}
.site-header__call:active { transform: scale(0.97); } .site-header__call-icon { width: 20px; height: 20px; flex: none; } .site-footer { padding-bottom: calc(72px + env(safe-area-inset-bottom, 0px)); }
}.tpair {
position: relative;
isolation: isolate; padding-block: var(--space-2xl) 0;
overflow: hidden;
}
.tpair__bg {
position: absolute;
inset: 0;
z-index: -2;
width: 100%; height: 100%;
object-fit: cover;
} .tpair::before {
content: "";
position: absolute;
inset: 0;
z-index: -1;
background: rgb(20 30 40 / 0.35);
}
.tpair__list {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: var(--space-2xs);
}
.tpair__card {
height: 100%;
margin: 0;
padding: var(--space-xl);
background: var(--color-accent);
color: var(--color-text-inv);
display: flex;
flex-direction: column;
justify-content: space-between;
gap: var(--space-xs); }
.tpair__quote {
margin: 0;
font-family: var(--font-display);
font-size: var(--step-quote);
line-height: var(--leading-snug);
}
.tpair__attr { font-size: var(--step-1); font-weight: var(--fw-regular); }
@media (max-width: 992px) {
.tpair__list { grid-template-columns: 1fr; gap: var(--space-md); }
.tpair__card { padding: var(--space-lg); }
} .tpair__card {
border-radius: var(--radius-core);
padding: clamp(1.5rem, 1rem + 1.667vw, 2.5rem);
box-shadow: var(--shadow-md), var(--shadow-inner);
}
.tpair__list { gap: var(--space-md); }:root { --subnav-radius: 14px; }
.site-header__primary .menu-item-has-children { position: relative; } .site-header__primary .menu-item-has-children > a { padding-right: 0.25em; }
.subnav-toggle {
display: inline-flex;
align-items: center;
justify-content: center;
width: 24px;
height: 24px;
padding: 0;
border: 0;
background: none;
color: currentColor;
cursor: pointer;
border-radius: var(--radius-pill);
}
.subnav-toggle__icon {
width: 14px;
height: 14px;
transition: transform var(--dur-base) var(--ease-out);
}
.subnav-toggle:focus-visible {
outline: 2px solid currentColor;
outline-offset: 2px;
} @media (min-width: 769px) {
.site-header__primary .menu-item-has-children { display: flex; align-items: center; gap: 2px; }
.site-header__primary .sub-menu {
position: absolute;
inset: 100% auto auto 0;
z-index: 20;
display: flex;
flex-direction: column;
gap: 0;
min-width: max(100%, 15rem);
margin-top: var(--space-2xs);
padding: var(--space-2xs);
background: var(--color-surface);
border-radius: var(--subnav-radius);
box-shadow: var(--shadow-md); visibility: hidden;
opacity: 0;
transform: translateY(-6px);
transition:
opacity var(--dur-base) var(--ease-out),
transform var(--dur-base) var(--ease-out),
visibility 0s linear var(--dur-base);
} .site-header__primary .menu-item-has-children::after {
content: "";
position: absolute;
inset: 100% 0 auto 0;
height: var(--space-2xs);
}
.site-header__primary .menu-item-has-children:hover > .sub-menu,
.site-header__primary .menu-item-has-children:focus-within > .sub-menu,
.site-header__primary .subnav-toggle[aria-expanded="true"] + .sub-menu {
visibility: visible;
opacity: 1;
transform: none;
transition-delay: 0s;
}
.site-header__primary .menu-item-has-children:hover > .subnav-toggle .subnav-toggle__icon,
.site-header__primary .subnav-toggle[aria-expanded="true"] .subnav-toggle__icon {
transform: rotate(180deg);
} .site-header__primary .sub-menu a {
display: block;
width: 100%;
padding: 0.6em 0.75em;
border-radius: calc(var(--subnav-radius) - 6px);
color: var(--color-text);
line-height: var(--leading-snug);
transition: background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);
} .site-header__primary .sub-menu a::after { content: none; }
.site-header__primary .sub-menu a:hover,
.site-header__primary .sub-menu a:focus-visible {
background: var(--enclosure-bg);
color: var(--color-accent);
}
.site-header__primary .sub-menu li + li { border-top: 0; }
} @media (max-width: 768px) {
.site-header__primary .menu-item-has-children > a { padding-right: 52px;
}
.subnav-toggle {
position: absolute;
top: 0;
right: 0;
width: 52px;
height: 48px;
color: var(--color-text-inv);
}
.subnav-toggle__icon { width: 16px; height: 16px; }
.site-header__primary .sub-menu {
display: none;
flex-direction: column;
gap: 0;
padding: 0 0 var(--space-2xs) var(--space-sm);
}
.site-header__primary .subnav-toggle[aria-expanded="true"] + .sub-menu { display: flex; }
.site-header__primary .subnav-toggle[aria-expanded="true"] .subnav-toggle__icon { transform: rotate(180deg); }
.site-header__primary .sub-menu a {
min-height: 44px;
font-size: var(--step--1);
opacity: 0.8;
}
.site-header__primary .sub-menu li:first-child { border-top: 1px solid rgb(255 255 255 / 0.15); }
}.qband__head { margin-bottom: var(--space-md); }
.qband__list {
display: grid;
gap: var(--space-md);
}
.qband__list--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.qband__list--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.qband__card {
height: 100%;
margin: 0;
display: flex;
flex-direction: column; justify-content: space-between;
gap: var(--space-sm);
padding: clamp(1.5rem, 1rem + 1.667vw, 2.5rem);
background: var(--color-accent);
color: var(--color-text-inv);
border-radius: var(--radius-core);
box-shadow: var(--shadow-md), var(--shadow-inner);
}
.qband__quote {
margin: 0;
font-family: var(--font-display); font-size: var(--step--1);
line-height: var(--leading-snug);
}
.qband__quote > * + * { margin-top: var(--space-2xs); }
.qband__attr {
font-size: var(--step--1);
font-weight: var(--fw-bold); color: rgb(255 255 255 / 0.82);
}
@media (max-width: 992px) {
.qband__list--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 768px) {
.qband__list--2,
.qband__list--3 { grid-template-columns: 1fr; }
} .tpair__quote { font-size: var(--step--1); }
.tpair__attr  { font-size: var(--step--1); }.qfeature {
position: relative;
isolation: isolate;
overflow: hidden;
display: grid;
align-items: center;
min-height: clamp(18rem, 14rem + 13.333vw, 26rem);
padding-block: var(--section-pad-y);
color: var(--color-text-inv);
}
.qfeature__bg {
position: absolute;
inset: 0;
z-index: -2;
width: 100%;
height: 100%;
object-fit: cover;
object-position: center 40%;
} .qfeature::before {
content: "";
position: absolute;
inset: 0;
z-index: -1;
background: linear-gradient(90deg,
rgb(0 0 0 / 0.82) 0%,
rgb(0 0 0 / 0.58) 60%,
rgb(0 0 0 / 0.30) 100%);
} .qfeature--accent::before   { background-image: linear-gradient(90deg, rgb(0 60 82 / 0.88) 0%, rgb(0 60 82 / 0.62) 60%, rgb(0 0 0 / 0.34) 100%); }
.qfeature--primary::before  { background-image: linear-gradient(90deg, rgb(88 0 33 / 0.88) 0%, rgb(88 0 33 / 0.62) 60%, rgb(0 0 0 / 0.34) 100%); }
.qfeature--charcoal::before { background-image: linear-gradient(90deg, rgb(20 20 19 / 0.88) 0%, rgb(20 20 19 / 0.62) 60%, rgb(0 0 0 / 0.34) 100%); } .qfeature--noimage.qfeature--accent   { background: var(--color-accent); }
.qfeature--noimage.qfeature--primary  { background: var(--color-primary); }
.qfeature--noimage.qfeature--charcoal { background: var(--color-charcoal); }
.qfeature--noimage::before { content: none; }
.qfeature__figure {
margin: 0; max-width: 100%;
}
.qfeature__quote {
position: relative;
margin: 0;
font-family: var(--font-display); font-size: var(--step-3);
font-weight: var(--fw-light);
line-height: var(--leading-snug);
}
.qfeature__quote > * + * { margin-top: var(--space-2xs); } .qfeature__quote::before {
content: "\201C";
position: absolute;
top: -0.42em;
left: -0.06em;
font-size: 3.4em;
line-height: 1;
color: currentColor;
opacity: 0.22;
pointer-events: none;
z-index: -1;
}
.qfeature__attr {
margin-top: var(--space-sm);
font-size: var(--step-0);
font-weight: var(--fw-bold);
color: rgb(255 255 255 / 0.85);
}
@media (max-width: 768px) {
.qfeature__figure { max-width: none; }
} .qfeature { container-type: inline-size; }
@container (max-width: 820px) {
.qfeature__figure { max-width: none; }
} .qfeature { min-height: 0; padding-block: clamp(2.5rem, 1.75rem + 2.5vw, 4rem); } @media (min-width: 993px) {
.qfeature { min-height: clamp(11rem, 9rem + 5vw, 15rem); }
} .qfeature { max-width: var(--container-max);
width: calc(100% - var(--gutter) * 2);
margin-inline: auto;
margin-block: var(--space-md);
padding: var(--tray-pad);
background: var(--enclosure-bg);
border: 1px solid var(--color-hairline);
border-radius: var(--radius-shell);
box-shadow: var(--shadow-sm);
overflow: hidden;
} .container .qfeature,
.pblock__body .qfeature,
.mtext__body .qfeature {
width: 100%;
} .qfeature__inner {
padding-block: var(--section-pad-y); padding-inline: clamp(1.5rem, 1rem + 1.667vw, 2.5rem);
max-width: none;
}
.qfeature__bg,
.qfeature::before {
inset: var(--tray-pad);
border-radius: var(--radius-core); width: calc(100% - var(--tray-pad) * 2);
height: calc(100% - var(--tray-pad) * 2);
} .qfeature--noimage {
border-radius: var(--radius-shell);
}
@media (max-width: 992px) {
.qfeature { margin-inline: 1rem; border-radius: var(--radius-core); }
.qfeature__bg,
.qfeature::before {
border-radius: calc(var(--radius-core) - var(--tray-pad));
width: calc(100% - var(--tray-pad) * 2);
height: calc(100% - var(--tray-pad) * 2);
}
}.istack {
display: grid;
gap: var(--space-sm);
align-content: start;
} .istack--dense {
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: var(--space-2xs);
}
.istack__item { margin: 0; }
.istack__item img {
width: 100%;
height: auto;
display: block;
border-radius: var(--card-radius); border: 1px solid var(--color-border);
background: var(--color-surface);
}
.istack--dense .istack__item img { border-radius: calc(var(--card-radius) - 8px); } .istack__item--logo img {
border: 0;
border-radius: 0;
background: none;
}
@media (max-width: 992px) { .istack { grid-template-columns: repeat(auto-fit, minmax(min(100%, 12rem), 1fr)); }
} .icol { display: grid; gap: var(--space-md); align-content: start; } .icol__text { font-size: var(--step--1); }
.icol__text > * + * { margin-top: var(--space-xs); }
.icol__text > :first-child { margin-top: 0; }
.icol__text h2 {
color: var(--color-primary);
font-family: var(--font-display);
font-weight: var(--fw-regular);
font-size: var(--step-1);
line-height: var(--leading-snug);
margin-bottom: var(--space-2xs);
} .icol__text h3,
.icol__text h4 {
color: var(--color-charcoal);
font-weight: var(--fw-bold);
font-size: var(--step-0);
line-height: var(--leading-snug);
margin-bottom: var(--space-2xs);
}
.icol__text p { line-height: var(--leading-body); }
.icol__text strong { font-weight: var(--fw-bold); color: var(--color-text); } .icol__text ul { padding-left: 1.15em; list-style: disc; }
.icol__text ol { padding-left: 1.35em; list-style: decimal; }
.icol__text li + li { margin-top: var(--space-3xs); }
.icol__text li { line-height: var(--leading-snug); }
.icol__text a:not(.btn) {
color: var(--color-accent);
text-decoration: underline;
text-underline-offset: 0.15em;
}
.icol__text a:not(.btn):hover { color: var(--color-primary); } .icol__text .row-cta-buttons {
display: flex;
flex-wrap: wrap;
gap: var(--space-2xs);
margin-top: var(--space-sm);
}
.icol__text a.btn { text-decoration: none; }
.icol__text a.btn--primary { color: var(--color-text-inv); }
.icol__text a.btn--primary:hover { color: var(--color-primary); } .icol__text sub,
.pblock__body sub { vertical-align: baseline; font-size: 0.75em; }.is-zoomable { cursor: zoom-in; }
.is-zoomable:focus-visible {
outline: 2px solid var(--color-accent);
outline-offset: 3px;
} .lbox-open { overflow: hidden; }
.lbox {
position: fixed;
inset: 0;
z-index: 100;
display: grid;
grid-template-columns: auto 1fr auto;
align-items: center;
gap: var(--space-sm);
padding: var(--space-lg);
background: rgb(20 20 19 / 0.92);
animation: lbox-in var(--dur-base) var(--ease-out);
}
.lbox[hidden] { display: none; }
@keyframes lbox-in { from { opacity: 0; } to { opacity: 1; } }
.lbox__figure {
margin: 0;
grid-column: 2;
display: grid;
justify-items: center;
gap: var(--space-sm); width: 100%;
height: 100%;
align-content: center;
}
.lbox__img {
max-width: 100%; max-height: calc(100vh - var(--space-lg) * 2 - 4rem);
width: auto;
height: auto;
border-radius: var(--radius-core);
box-shadow: var(--shadow-md);
background: var(--color-surface);
}
.lbox__cap {
color: rgb(255 255 255 / 0.85);
font-size: var(--step--1);
text-align: center;
max-width: 60ch;
}
.lbox__cap[hidden] { display: none; }
.lbox__close,
.lbox__nav {
display: grid;
place-items: center;
width: 44px;
height: 44px;
padding: 0;
border: 0;
border-radius: var(--radius-pill);
background: rgb(255 255 255 / 0.10);
color: var(--color-text-inv);
cursor: pointer;
transition: background var(--dur-fast) var(--ease-out);
}
.lbox__close:hover,
.lbox__nav:hover { background: rgb(255 255 255 / 0.22); }
.lbox__close:focus-visible,
.lbox__nav:focus-visible {
outline: 2px solid var(--color-text-inv);
outline-offset: 2px;
}
.lbox__close svg,
.lbox__nav svg { width: 20px; height: 20px; }
.lbox__close {
position: absolute;
top: var(--space-sm);
right: var(--space-sm);
}
.lbox__nav--prev { grid-column: 1; }
.lbox__nav--next { grid-column: 3; }
.lbox__nav[hidden] { visibility: hidden; display: grid; }
@media (max-width: 768px) {
.lbox { padding: var(--space-sm); gap: var(--space-2xs); }
.lbox__close,
.lbox__nav { width: 40px; height: 40px; }
}.cpages__list { gap: var(--space-sm);
grid-template-columns: repeat(auto-fit, minmax(min(100%, 13.5rem), 1fr));
} .cpages .cgrid__title { font-size: var(--step-0); font-weight: var(--fw-bold); } .cpages__list:has(> :only-child) {
grid-template-columns: minmax(0, 24rem);
}  .proll--grid .proll__inner {
grid-template-columns: 1fr;
gap: var(--space-md);
}
.proll--grid .proll__head { grid-column: 1 / -1; }
.proll--grid .proll__viewport { display: block; }
.proll--grid .proll__track {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(min(100%, 9.5rem), 1fr));
gap: var(--space-md);
transform: none;
overflow: visible;
}
.proll--grid .proll__item {
flex: none;
width: auto;
display: grid;
place-items: center;
}
.proll--grid .proll__item img {
width: 100%;
height: auto;
max-height: 5rem;
object-fit: contain;
} .cpages .cgrid__body {
padding: var(--space-md) var(--space-xs);
gap: var(--space-sm);
}.hero--noimage {
background: var(--color-charcoal);
} .hero--noimage::before,
.hero--noimage::after {
content: none;
} .hero__heading { max-width: 26ch; } .hero--short {
--color-scrim: linear-gradient(90deg,
rgb(0 0 0 / 0.82) 0%,
rgb(0 0 0 / 0.52) 60%,
rgb(0 0 0 / 0.22) 100%);
} .pblock__body h2,
.mtext__body h2 {
color: var(--color-primary);
font-family: var(--font-display);
font-weight: var(--fw-regular);
font-size: var(--step-3);
line-height: var(--leading-snug);
margin-top: var(--space-md);
margin-bottom: var(--space-2xs);
}
.pblock__body h3,
.mtext__body h3 {
color: var(--color-charcoal);
font-weight: var(--fw-bold);
font-size: var(--step-1);
line-height: var(--leading-snug);
margin-top: var(--space-sm);
margin-bottom: var(--space-3xs);
} .pblock__body h4,
.mtext__body h4 {
color: var(--color-charcoal);
font-weight: var(--fw-bold);
font-size: var(--step-0);
margin-top: var(--space-xs);
margin-bottom: var(--space-3xs);
} .pblock__body h4[style],
.mtext__body h4[style] {
color: var(--color-charcoal) !important;
} .pblock__body > :is(h2, h3, h4):first-child { margin-top: 0; } .row-cta-buttons {
display: flex;
flex-wrap: wrap;
gap: var(--space-2xs);
margin-top: var(--space-md);
} .pblock__body a.btn,
.mtext__body a.btn {
text-decoration: none;
}
.pblock__body a.btn--primary,
.mtext__body a.btn--primary {
color: var(--color-text-inv);
}
.pblock__body a.btn--primary:hover,
.mtext__body a.btn--primary:hover {
color: var(--color-primary);
}
.pblock__body a.btn--outline,
.mtext__body a.btn--outline {
color: var(--color-accent);
}
.pblock__body a.btn--outline:hover,
.mtext__body a.btn--outline:hover {
color: var(--color-text-inv);
}.cform { margin-top: var(--space-md); }
.cform__grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: var(--space-sm);
}
.cform__grid--tail { margin-top: var(--space-sm); grid-template-columns: 1fr; }
.cform__field { margin: 0; }
.cform__field--wide { grid-column: 1 / -1; } .cform .wpcf7-form-control-wrap { display: block; }
.cform input[type="text"],
.cform input[type="email"],
.cform input[type="tel"],
.cform textarea {
width: 100%;
min-height: var(--btn-h);
padding: 0.7em 1em;
font-family: var(--font-body);
font-size: var(--step-0);
color: var(--color-text);
background: var(--color-surface);
border: 1px solid var(--color-border);
border-radius: var(--radius-pill);
transition: border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);
} .cform textarea {
border-radius: var(--radius-core);
min-height: 8rem;
resize: vertical;
}
.cform input::placeholder,
.cform textarea::placeholder { color: var(--color-text-mut); opacity: 1; }
.cform input:focus-visible,
.cform textarea:focus-visible {
outline: none;
border-color: var(--color-accent);
box-shadow: 0 0 0 3px rgb(0 85 116 / 0.15);
} .cform__interests {
margin: var(--space-md) 0 0;
padding: var(--space-sm);
border: 1px solid var(--color-border);
border-radius: var(--radius-core);
background: var(--color-surface);
}
.cform__legend {
padding: 0 var(--space-2xs);
font-family: var(--font-display);
font-size: var(--step-1);
font-weight: var(--fw-bold);
}
.cform__checks { margin-top: var(--space-2xs); } .cform .wpcf7-checkbox {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(min(100%, 20rem), 1fr));
gap: var(--space-3xs) var(--space-sm);
}
.cform .wpcf7-list-item { margin: 0; }
.cform .wpcf7-list-item label {
display: grid;
grid-template-columns: auto 1fr;
gap: 0.6em;
align-items: start;
padding: 0.35em 0;
cursor: pointer;
line-height: var(--leading-snug);
}
.cform input[type="checkbox"] {
width: 1.15em;
height: 1.15em;
margin-top: 0.15em;
accent-color: var(--color-accent);
cursor: pointer;
} .cform__actions { margin: var(--space-md) 0 0; display: flex; align-items: center; gap: var(--space-sm); }
.cform input[type="submit"] { border: 0; cursor: pointer; } .cform .wpcf7-spinner { margin: 0; } .cform .wpcf7-not-valid { border-color: var(--color-primary); }
.cform .wpcf7-not-valid-tip {
display: block;
margin-top: 0.35em;
padding-inline: 1em;
color: var(--color-primary);
font-size: var(--step--1);
}
.wpcf7-response-output {
margin: var(--space-sm) 0 0;
padding: var(--space-xs) var(--space-sm);
border: 1px solid var(--color-border);
border-radius: var(--radius-core);
font-size: var(--step-0);
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output { border-color: var(--color-primary); }
.wpcf7 form.sent .wpcf7-response-output { border-color: var(--color-accent); }
@media (max-width: 768px) {
.cform__grid { grid-template-columns: 1fr; }
}.vc_row.pblock,
.vc_row.mtext {
margin-left: 0;
margin-right: 0;
} .vc_row.pblock > .wpb_column,
.vc_row.mtext > .wpb_column {
width: 100%;
max-width: calc(var(--container-max) + var(--gutter) * 2);
margin-inline: auto; padding-inline: var(--gutter); float: none;
} .vc_row.pblock > .wpb_column > .vc_column-inner,
.vc_row.mtext > .wpb_column > .vc_column-inner {
padding-left: 0;
padding-right: 0;
} .mtext .wpb_single_image,
.mtext .wpb_single_image .vc_figure,
.mtext .wpb_single_image .vc_single_image-wrapper {
display: block;
width: 100%;
} .vc_row.mtext--inner > .wpb_column > .vc_column-inner > .wpb_wrapper {
display: grid;
grid-template-columns: minmax(0, 34fr) minmax(0, 66fr);
gap: var(--space-md);
align-items: start;
} .vc_row.mtext--inner .wpb_content_element,
.vc_row.pblock .wpb_content_element {
margin-bottom: 0;
}
.mtext .wpb_single_image img {
width: 100%;
aspect-ratio: 3 / 2;
object-fit: cover;
display: block;
} .pblock .wpb_text_column > .wpb_wrapper > *:first-child { margin-top: 0; }
.pblock__heading-wrap p { margin-bottom: var(--space-2xs); }
@media (max-width: 992px) {
.vc_row.mtext--inner > .wpb_column > .vc_column-inner > .wpb_wrapper {
grid-template-columns: 1fr;
}
.mtext .wpb_single_image img { max-width: 32rem; }
} .pblock__body > .wpb_wrapper > * + *,
.mtext__body > .wpb_wrapper > * + * {
margin-top: var(--space-xs);
} .pblock__body > .wpb_wrapper > :is(h2, h3, h4) + *,
.mtext__body > .wpb_wrapper > :is(h2, h3, h4) + * {
margin-top: var(--space-2xs);
}
.pblock__body > .wpb_wrapper > :first-child,
.mtext__body > .wpb_wrapper > :first-child {
margin-top: 0;
} .pblock__body > .wpb_wrapper ul,
.mtext__body > .wpb_wrapper ul {
padding-left: 1.25em;
list-style: disc;
}
.pblock__body > .wpb_wrapper ol,
.mtext__body > .wpb_wrapper ol {
padding-left: 1.35em;
list-style: decimal;
}
.pblock__body > .wpb_wrapper li + li {
margin-top: var(--space-3xs);
} .prose { max-width: 100%; } .vc_row.mtext--inner .pblock__body { max-width: none; }:root { --s2-bg:      #232628;
--s2-deep:    #1f2224; --s2-floor:   #1d2022; --s2-panel:   #2b2e31;
--s2-panel2:  #313538;
--s2-line:    #3e4346;
--s2-text:    #f3f4f4;
--s2-body:    #b4babc; --s2-muted:   #8f979a;
--s2-yellow:  #f4b51b;
--s2-yellow2: #ffd05a;
--s2-ink:     #101010; --s2-card-grad: linear-gradient(145deg, #303437, #26292b); --color-bg:       var(--s2-bg);
--color-surface:  var(--s2-panel);
--color-charcoal: var(--s2-deep);
--color-hairline: var(--s2-line);
--color-border:   var(--s2-line);
--color-primary:  var(--s2-yellow); --color-accent:   var(--s2-panel2);
--color-text:     var(--s2-text);
--color-text-mut: var(--s2-muted);
--font-body:    "Inter", Arial, Helvetica, sans-serif;
--font-display: "Inter", Arial, Helvetica, sans-serif; --radius-shell: 0;
--radius-core:  0;
--radius-pill:  3px;
--tray-pad:     0px;
--enclosure-bg: transparent;
--shadow-sm:    none;
--shadow-md:    0 18px 60px rgb(0 0 0 / 0.35);
--shadow-inner: none;
--subnav-radius: 0; --container-max: 1180px;
--gutter:        clamp(18px, 0.75rem + 1.6vw, 34px);
--section-pad-y: clamp(56px, 2.5rem + 3.4vw, 80px);
--hero-overlap:  0px;
} html { background: var(--s2-bg); }
body.style2 {
background:
radial-gradient(circle at 80% 0, #36322a 0, transparent 34rem),
var(--s2-bg);
color: var(--s2-text);
font-size: 15.5px; overflow-x: clip;
}
.style2 p { color: var(--s2-body); } .style2 :is(.t-page-title, .t-display, .t-section, .t-band, .t-sub, .t-col-head, .t-lead) {
font-family: var(--font-display);
font-weight: 900;
text-transform: uppercase;
letter-spacing: -0.03em;
line-height: 1.02;
color: var(--s2-text);
}
.style2 .t-display,
.style2 .t-section { font-size: clamp(30px, 1.25rem + 2.6vw, 52px); letter-spacing: -0.04em; }
.style2 .t-band,
.style2 .t-sub     { font-size: clamp(18px, 0.9rem + 0.6vw, 22px); letter-spacing: -0.01em; line-height: 1.15; }
.style2 .t-lead    { font-size: clamp(16px, 0.9rem + 0.3vw, 19px); letter-spacing: -0.01em; line-height: 1.2; }
.s2-accent { color: var(--s2-yellow); } .style2 .eyebrow,
.s2-eyebrow {
display: block;
padding: 0;
border: 0;
border-radius: 0;
opacity: 1;
color: var(--s2-yellow);
font-size: 10px;
font-weight: 900;
letter-spacing: 0.16em;
text-transform: uppercase;
}
.style2 .eyebrow::before { content: none; } .style2 .rule-row__line { display: none; }
.style2 .rule-row,
.style2 .rule-row:has(.eyebrow) { flex-direction: column; align-items: flex-start; gap: 12px; } .style2 :focus-visible {
outline: 2px solid var(--s2-yellow);
outline-offset: 3px;
box-shadow: none;
} .style2 .btn,
.s2-btn {
min-height: 0;
padding: 12px 18px;
border: 1px solid var(--s2-yellow);
border-radius: 3px;
background: var(--s2-yellow);
color: var(--s2-ink);
font-family: var(--font-body);
font-size: 11px;
font-weight: 800;
letter-spacing: 0.05em;
text-transform: uppercase;
gap: 0.5em;
}
.style2 .btn:hover,
.s2-btn:hover { background: var(--s2-yellow2); border-color: var(--s2-yellow2); color: var(--s2-ink); } .style2 .btn--ghost,
.style2 .btn--outline {
background: transparent;
border-color: #697074;
color: #fff;
}
.style2 .btn--ghost:hover,
.style2 .btn--outline:hover { background: transparent; border-color: var(--s2-yellow); color: var(--s2-yellow); } .style2 .btn:has(.btn__arrow) { padding-right: 18px; }
.style2 .btn__arrow { width: auto; height: auto; margin-left: 0.15rem; background: none; border-radius: 0; }
.style2 .btn__arrow svg { width: 12px; height: 12px; }
.style2 .btn:hover .btn__arrow { background: none; transform: translate(2px, -1px); } .style2 :is(.pblock__body, .mtext__body, .icol__text) a.btn--primary,
.style2 :is(.pblock__body, .mtext__body, .icol__text) a.btn--primary:hover { color: var(--s2-ink); } .style2 .site-header {
position: sticky;
top: 0;
z-index: 100;
inset: auto;
color: #fff;
} .admin-bar.style2 .site-header { top: 32px; }
@media (max-width: 782px) { .admin-bar.style2 .site-header { top: 0; } }
.s2-wrap {
width: 100%;
max-width: calc(var(--container-max) + var(--gutter) * 2);
margin-inline: auto;
padding-inline: var(--gutter);
} .s2-strip {
background: #1b1e20;
border-bottom: 1px solid var(--s2-line);
font-size: 11px;
letter-spacing: 0.06em;
text-transform: uppercase;
color: #9aa1a4;
}
.s2-strip__inner { display: flex; align-items: center; justify-content: space-between; min-height: 34px; }
.s2-strip .social { margin-inline: -13px; }
.s2-strip .social a { width: 34px; height: 34px; }
.s2-strip .social__icon { width: 14px; height: 14px; }
.s2-strip__nav,
.s2-strip__nav ul { display: flex; align-items: center; gap: 22px; }
.s2-strip__nav a { display: inline-flex; align-items: center; min-height: 24px; transition: color var(--dur-fast); }
.s2-strip__nav a:hover { color: var(--s2-yellow); }
.s2-strip__phone { color: #fff; font-weight: 700; }
.s2-bar {
background: rgb(35 38 40 / 0.94);
backdrop-filter: blur(14px);
-webkit-backdrop-filter: blur(14px);
border-bottom: 1px solid var(--s2-line);
}
.s2-bar__inner {
position: relative;
display: flex;
align-items: center;
gap: 28px;
min-height: 82px;
}
.s2-brand { display: flex; align-items: center; gap: 12px; flex: none; margin-right: auto; }
.s2-brand__mark { width: 52px; height: 52px; object-fit: contain; }
.s2-brand__copy {
font-size: 9.5px;
line-height: 1.15;
letter-spacing: 0.1em;
text-transform: uppercase;
color: #d9dcdd;
}
.s2-brand__copy strong { color: #fff; font-size: 12px; font-weight: 900; } .style2 .s2-nav ul {
gap: 26px;
font-family: var(--font-body);
font-size: 11.5px;
font-weight: 700;
letter-spacing: 0.06em;
text-transform: uppercase;
}
.style2 .s2-nav > ul > li > a { color: #c7ccce; min-height: 40px; white-space: nowrap; }
@media (min-width: 1241px) {
.style2 .s2-nav > ul { gap: 22px; }
.style2 .s2-nav .menu-item-has-children > a { padding-right: 0; }
.style2 .s2-nav .subnav-toggle { width: 22px; margin-left: 2px; }
}
.style2 .s2-nav > ul > li > a:hover,
.style2 .s2-nav > ul > .current-menu-item > a,
.style2 .s2-nav > ul > .current-menu-ancestor > a,
.style2 .s2-nav > ul > .current-page-ancestor > a { color: var(--s2-yellow); }
.style2 .s2-nav a::after { background: var(--s2-yellow); height: 2px; }
.s2-bar__cta { flex: none; } @media (min-width: 769px) {
.style2 .s2-nav .sub-menu {
margin-top: 0;
padding: 6px 0;
background: #202325;
border: 1px solid var(--s2-line);
border-top: 2px solid var(--s2-yellow);
text-transform: none;
letter-spacing: 0;
font-size: 13.5px;
font-weight: 500;
}
.style2 .s2-nav .sub-menu a { color: #d5d8d9; padding: 0.65em 1.1em; }
.style2 .s2-nav .sub-menu a:hover,
.style2 .s2-nav .sub-menu a:focus-visible { background: var(--s2-panel2); color: var(--s2-yellow); }
}
.style2 .site-header__toggle { color: #fff; } @media (max-width: 1240px) {
.style2 .site-header__toggle { display: grid; }
.s2-bar__inner { gap: 14px; }
.style2 .s2-nav {
position: absolute;
inset: 100% 0 auto 0;
margin: 0;
padding: 8px 0 14px;
background: #202325;
border-bottom: 1px solid var(--s2-line);
box-shadow: var(--shadow-md);
display: none;
}
.style2 .s2-nav[data-open="true"] { display: block; }
.style2 .s2-nav ul { flex-direction: column; gap: 0; padding: 0 var(--gutter); }
.style2 .s2-nav li + li { border-top: 1px solid var(--s2-line); }
.style2 .s2-nav a { display: flex; min-height: 48px; }
.style2 .s2-nav a::after { content: none; }
.style2 .s2-nav > .site-header__drawer-utility {
display: block;
margin-top: 6px;
padding-top: 6px;
border-top: 1px solid var(--s2-line);
}
.style2 .s2-nav > .site-header__drawer-utility a { color: #9aa1a4; }
.s2-strip__nav ul { display: none; }
} @media (min-width: 769px) and (max-width: 1240px) {
.style2 .s2-nav .menu-item-has-children { display: block; position: relative; }
.style2 .s2-nav .menu-item-has-children > a { padding-right: 52px; }
.style2 .s2-nav .menu-item-has-children::after { content: none; }
.style2 .s2-nav .subnav-toggle { position: absolute; top: 0; right: var(--gutter); width: 52px; height: 48px; color: #fff; }
.style2 .s2-nav .sub-menu {
position: static;
display: none;
visibility: visible;
opacity: 1;
transform: none;
padding: 0 0 8px 16px;
border: 0;
background: none;
}
.style2 .s2-nav .menu-item-has-children:hover > .sub-menu { display: none; }
.style2 .s2-nav .subnav-toggle[aria-expanded="true"] + .sub-menu { display: flex; }
}
@media (max-width: 768px) {
.s2-strip { display: none; }
.s2-bar__inner { min-height: 68px; }
.s2-bar__cta { display: none; }
.s2-brand__mark { width: 44px; height: 44px; }
.style2 .site-header__call {
background: var(--s2-yellow);
color: var(--s2-ink);
border-radius: 3px;
text-transform: uppercase;
letter-spacing: 0.04em;
font-size: 12px;
font-weight: 800;
}
} .s2-hero { padding-block: clamp(28px, 1rem + 3vw, 70px) clamp(28px, 1rem + 2vw, 46px); }
.s2-hero__frame {
display: grid;
grid-template-columns: 1fr 1.08fr;
border: 1px solid var(--s2-line);
background: #26292b;
overflow: hidden;
}
.s2-hero--short .s2-hero__frame { min-height: clamp(280px, 12rem + 12vw, 400px); }
.s2-hero--tall  .s2-hero__frame { min-height: clamp(420px, 18rem + 14vw, 540px); }
.s2-hero--noimage .s2-hero__frame { grid-template-columns: 1fr; }
.s2-hero__copy {
display: flex;
flex-direction: column;
justify-content: center;
padding: clamp(36px, 1.5rem + 3vw, 72px) clamp(26px, 1rem + 3vw, 58px);
background: linear-gradient(130deg, #25282a, #2f3335);
}
.s2-hero__copy .s2-eyebrow { margin-bottom: 15px; }
.s2-hero__heading {
margin: 0;
font-family: var(--font-display);
font-weight: 900;
text-transform: uppercase;
letter-spacing: -0.045em;
line-height: 0.98;
color: #fff;
font-size: clamp(34px, 1.2rem + 3.4vw, 64px);
text-wrap: balance;
}
.s2-hero--short .s2-hero__heading { font-size: clamp(30px, 1.1rem + 2.6vw, 54px); }
.s2-hero__bullets { display: grid; gap: 7px; margin-top: 26px; }
.s2-hero__bullets li { color: #d5d8d9; font-size: 15px; }
.s2-hero__bullets li::before { content: "+"; margin-right: 10px; color: var(--s2-yellow); font-weight: 900; }
.s2-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.s2-hero__media { position: relative; min-height: 320px; overflow: hidden; }
.s2-hero__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.s2-hero__media::after {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(90deg, rgb(9 11 12 / 0.65), rgb(9 11 12 / 0.1) 55%, rgb(9 11 12 / 0.35));
}
.s2-card {
position: absolute;
right: 28px;
bottom: 28px;
z-index: 2;
width: 260px;
padding: 22px;
display: grid;
gap: 6px;
background: rgb(35 38 40 / 0.9);
border: 1px solid #555a5c;
box-shadow: 0 18px 60px rgb(0 0 0 / 0.5);
}
.s2-card b { font-size: 42px; font-weight: 900; line-height: 1; color: var(--s2-yellow); }
.s2-card span { color: #e1e3e3; font-size: 14px; }
.s2-card small { color: #aeb4b6; font-size: 9px; letter-spacing: 0.1em; text-transform: uppercase; }
@media (max-width: 900px) {
.s2-hero__frame { grid-template-columns: 1fr; }
.s2-hero__media { min-height: 300px; }
.s2-hero--short .s2-hero__media { min-height: 220px; }
.s2-card { right: 16px; bottom: 16px; width: 220px; padding: 16px; }
.s2-card b { font-size: 32px; }
}
@media (max-width: 480px) {
.s2-hero--short .s2-card { display: none; }
} .s2-stats { margin-bottom: clamp(16px, 2vw, 32px); }
.s2-stats__list {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
margin: 0;
background: #2a2d30;
border: 1px solid var(--s2-line);
}
.s2-stats__item { padding: 24px 20px; border-right: 1px solid var(--s2-line); }
.s2-stats__item:last-child { border-right: 0; }
.s2-stats dt { font-size: 29px; font-weight: 900; line-height: 1; color: #fff; }
.s2-stats dd { margin: 7px 0 0; font-size: 9.5px; letter-spacing: 0.08em; text-transform: uppercase; color: #92999c; }
@media (max-width: 900px) {
.s2-stats__list { grid-template-columns: repeat(2, 1fr); }
.s2-stats__item { border-right: 0; border-bottom: 1px solid var(--s2-line); }
.s2-stats__item:nth-child(odd) { border-right: 1px solid var(--s2-line); }
.s2-stats__item:last-child { grid-column: 1 / -1; border-right: 0; border-bottom: 0; }
.s2-stats__item:nth-last-child(2):nth-child(odd) { border-bottom: 0; }
}  .style2 .introduo { padding-top: var(--section-pad-y); }
.style2 .introduo__panel {
margin-top: 0;
padding: 0;
gap: 14px;
background: none;
border: 0;
box-shadow: none;
}
.style2 .introduo__col,
.style2 .introduo__col:first-child,
.style2 .introduo__col:last-child {
padding: clamp(24px, 1rem + 1.5vw, 34px);
border: 1px solid var(--s2-line);
border-radius: 0;
background: var(--s2-card-grad);
}
.style2 .introduo__heading { font-size: clamp(17px, 0.9rem + 0.4vw, 20px); line-height: 1.2; }
.style2 .introduo__body { font-size: 14.5px; } .style2 .introduo__actions .btn { min-height: 24px; padding: 0; border: 0; background: none; color: var(--s2-yellow); }
.style2 .introduo__actions .btn:hover { color: var(--s2-yellow2); }
@media (max-width: 992px) { .style2 .introduo__panel { gap: 14px; } } .style2 .secheading { padding-top: var(--section-pad-y); } .style2 .site-main:has(> .fsplit + .fsplit + .fsplit) {
display: grid;
grid-template-columns:
minmax(var(--gutter), 1fr)
repeat(3, minmax(0, calc(var(--container-max) / 3 - 10px)))
minmax(var(--gutter), 1fr);
column-gap: 14px;
align-items: stretch;
}
.style2 .site-main:has(> .fsplit + .fsplit + .fsplit) > * { grid-column: 1 / -1; min-width: 0; } @media (min-width: 901px) {
.style2 .site-main > .fsplit:has(+ .fsplit + .fsplit):not(.fsplit + .fsplit) { grid-column: 2; }
.style2 .site-main > .fsplit:not(.fsplit + .fsplit) + .fsplit:has(+ .fsplit) { grid-column: 3; }
.style2 .site-main > .fsplit + .fsplit + .fsplit { grid-column: 4; }
}
.style2 .fsplit {
margin: var(--space-md) auto 0;
padding: 0;
border: 1px solid var(--s2-line);
background: var(--s2-panel);
color: var(--s2-text);
transition: border-color var(--dur-base), transform var(--dur-base);
}
.style2 .fsplit:hover { border-color: #5d6264; transform: translateY(-2px); }
.style2 .fsplit__media { border-radius: 0; }
.style2 .fsplit__panel,
.style2 .fsplit--teal .fsplit__panel,
.style2 .fsplit--charcoal .fsplit__panel,
.style2 .fsplit--wine .fsplit__panel {
background: none;
border-radius: 0;
box-shadow: none;
}
.style2 .fsplit__body { font-size: 14.5px; }
.style2 .fsplit__cta { margin-top: 18px; } .style2 .site-main:has(> .fsplit + .fsplit + .fsplit) > .fsplit {
display: flex;
flex-direction: column;
width: auto;
max-width: none;
margin-top: 38px;
}
.style2 .site-main:has(> .fsplit + .fsplit + .fsplit) .fsplit__media {
height: 220px;
border-bottom: 3px solid var(--s2-yellow);
}
.style2 .site-main:has(> .fsplit + .fsplit + .fsplit) .fsplit__panel {
flex: 1;
align-content: start;
padding: 24px 26px 28px;
}
.style2 .site-main:has(> .fsplit + .fsplit + .fsplit) .fsplit__content { max-width: none; }
.style2 .site-main:has(> .fsplit + .fsplit + .fsplit) .fsplit__cta {
padding: 0;
border: 0;
background: none;
color: var(--s2-yellow);
} .style2 .site-main > .fsplit { width: calc(100% - var(--gutter) * 2); max-width: var(--container-max); }
@media (max-width: 900px) {
.style2 .site-main:has(> .fsplit + .fsplit + .fsplit) {
grid-template-columns: var(--gutter) minmax(0, 1fr) var(--gutter);
}
.style2 .site-main:has(> .fsplit + .fsplit + .fsplit) > .fsplit { grid-column: 2; margin-top: 14px; }
} .style2 .proll { padding-top: var(--section-pad-y); }
.style2 .proll__inner { grid-template-columns: minmax(0, 1fr); gap: 30px; }
.style2 .proll__head { color: var(--s2-text); }
.style2 .proll__heading { white-space: normal; }
.style2 .proll__item {
height: 110px;
padding: 18px;
background: #eef0f0;
border: 1px solid var(--s2-line);
}
.style2 .proll__item img { max-height: 64px; object-fit: contain; filter: grayscale(1); opacity: 0.85; transition: filter var(--dur-base), opacity var(--dur-base); }
.style2 .proll__item:hover img { filter: none; opacity: 1; }
.style2 .proll__nav { color: #fff; border-radius: 3px; }
.style2 .proll__nav:hover { background: var(--s2-panel2); }
.style2 .proll--grid .proll__track { gap: 12px; grid-template-columns: repeat(auto-fill, minmax(min(100%, 180px), 1fr)); }
.style2 .proll--grid .proll__item img { max-height: 64px; } .style2 .tpair {
margin-top: var(--section-pad-y);
padding-block: var(--section-pad-y);
border-block: 1px solid var(--s2-line);
}
.style2 .tpair::before { background: rgb(29 32 34 / 0.86); }
.style2 .tpair__list { gap: 14px; }
.style2 .tpair__card {
padding: 30px;
border: 1px solid var(--s2-line);
background: rgb(35 38 40 / 0.6);
box-shadow: none;
}
.style2 .tpair__quote { font-family: var(--font-body); font-size: 19px; line-height: 1.35; color: #f0f1f1; }
.style2 .tpair__quote p { color: inherit; }
.style2 .tpair__attr { color: var(--s2-yellow); font-size: 11px; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; } .style2 .cgrid__head { margin-bottom: 30px; }
.style2 .cgrid__heading { white-space: normal; }
.style2 .cgrid__all { color: var(--s2-yellow); font-size: 11px; font-weight: 800; letter-spacing: 0.05em; }
.style2 .cgrid__list { gap: 14px; }
.style2 .cgrid__card {
padding: 0;
border: 1px solid var(--s2-line);
background: var(--s2-panel);
box-shadow: none;
}
.style2 .cgrid__card:hover,
.style2 .cgrid__card:focus-within { transform: translateY(-2px); border-color: #6a7073; box-shadow: none; }
.style2 .cgrid__card:focus-within { outline-color: var(--s2-yellow); }
.style2 .cgrid__thumb { border-radius: 0; }
.style2 .cgrid__body { padding: 18px 20px 22px; gap: 12px; }
.style2 .cgrid__title { font-size: 15.5px; }
.style2 .cgrid__more {
padding: 0;
border: 0;
background: none;
color: var(--s2-yellow);
font-size: 11px;
}
.style2 .cgrid__more::after { content: " \2192"; }
.style2 .cgrid__card:hover .cgrid__more,
.style2 .cgrid__card:focus-within .cgrid__more { background: none; color: var(--s2-yellow2); } .style2 .atiles { padding-top: var(--section-pad-y); }
.style2 .atiles__list { gap: 14px; }
.style2 .atiles__tile { border: 1px solid var(--s2-line); }
.style2 .atiles__tile::before { background: rgb(20 22 24 / 0.62); }
.style2 .atiles__tile:hover::before { background: rgb(20 22 24 / 0.4); }
.style2 .atiles__text { font-size: clamp(18px, 1rem + 0.6vw, 24px); font-weight: 900; text-transform: uppercase; text-decoration-color: var(--s2-yellow); }
.style2 .atiles__icon { color: var(--s2-yellow); } .style2 .qband__card {
border: 1px solid var(--s2-line);
border-left: 4px solid var(--s2-yellow);
background: #2e3134;
box-shadow: none;
}
.style2 .qband__quote { font-family: var(--font-body); color: #e1e3e3; font-size: 15.5px; }
.style2 .qband__quote p { color: inherit; }
.style2 .qband__attr { color: var(--s2-yellow); font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; }
.style2 .qfeature { border: 1px solid var(--s2-line); background: var(--s2-panel); }
.style2 .qfeature::before,
.style2 .qfeature--accent::before,
.style2 .qfeature--primary::before,
.style2 .qfeature--charcoal::before {
background-image: linear-gradient(90deg, rgb(20 22 24 / 0.9) 0%, rgb(20 22 24 / 0.7) 60%, rgb(20 22 24 / 0.45) 100%);
}
.style2 .qfeature--noimage.qfeature--accent,
.style2 .qfeature--noimage.qfeature--primary,
.style2 .qfeature--noimage.qfeature--charcoal { background: linear-gradient(110deg, #34322c, #25282a); }
.style2 .qfeature__quote { font-family: var(--font-body); font-weight: 600; font-size: clamp(20px, 1rem + 1vw, 28px); line-height: 1.3; letter-spacing: -0.01em; }
.style2 .qfeature__quote p { color: #f0f1f1; }
.style2 .qfeature__quote::before { color: var(--s2-yellow); opacity: 0.35; }
.style2 .qfeature__attr { color: var(--s2-yellow); font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; }  .style2 :is(.pblock__body, .mtext__body, .icol__text, .cform__intro) a:not(.btn) {
color: var(--s2-yellow);
text-decoration: none;
border-bottom: 1px solid rgb(244 181 27 / 0.35);
}
.style2 :is(.pblock__body, .mtext__body, .icol__text, .cform__intro) a:not(.btn):hover { color: var(--s2-yellow2); border-bottom-color: var(--s2-yellow2); }
.style2 :is(.pblock__body, .mtext__body, .icol__text) strong { color: #fff; } .style2 :is(.pblock__body, .mtext__body, .icol__text) h2 {
color: #fff;
font-family: var(--font-display);
font-weight: 900;
font-size: clamp(26px, 1rem + 2vw, 40px);
line-height: 1.04;
letter-spacing: -0.035em;
text-transform: uppercase;
}
.style2 :is(.pblock__body, .mtext__body, .icol__text) :is(h3, h4),
.style2 :is(.pblock__body, .mtext__body, .icol__text) h4[style] {
color: #fff !important; font-weight: 900;
font-size: clamp(18px, 0.95rem + 0.6vw, 22px);
line-height: 1.12;
text-transform: uppercase;
letter-spacing: -0.01em;
}
.style2 :is(.pblock__body, .mtext__body, .icol__text) h4 { font-size: 15px; letter-spacing: 0.04em; } .style2 :is(.pblock__body > .wpb_wrapper, .mtext__body > .wpb_wrapper, .icol__text, .s2-lead, .s2-band) ul {
padding-left: 0;
list-style: none;
}
.style2 :is(.pblock__body, .mtext__body, .icol__text) ul > li {
margin: 0;
padding: 11px 0;
border-top: 1px solid var(--s2-line);
color: #d5d8d9;
}
.style2 :is(.pblock__body, .mtext__body, .icol__text) ul > li::before {
content: "+";
margin-right: 10px;
color: var(--s2-yellow);
font-weight: 900;
}
.style2 :is(.pblock__body, .mtext__body, .icol__text) ul > li + li { margin-top: 0; } .s2-lead > * + *,
.s2-band > * + * { margin-top: var(--space-xs); }
.s2-band > :is(h2, h3) + * { margin-top: var(--space-2xs); }
.s2-lead > :first-child,
.s2-band > :first-child { margin-top: 0; } .s2-lead > p:first-child { font-size: 17.5px; color: #c3c7c8; } .style2 .vc_row.pblock .s2-band {
margin-inline: calc(50% - 50vw);
padding: clamp(44px, 2rem + 3vw, 72px) calc(50vw - 50%);
}
.style2 .vc_row.pblock .pblock__body > .wpb_wrapper > .s2-band { margin-top: clamp(44px, 2rem + 3vw, 72px); }
.style2 .vc_row.pblock .s2-band + .s2-band { margin-top: 0; }
.style2 .vc_row.pblock .s2-band:nth-child(odd of .s2-band) {
background: var(--s2-deep);
border-block: 1px solid var(--s2-line);
} .style2 .vc_row.pblock:last-child .s2-band:last-child { margin-bottom: calc(var(--section-pad-y) * -1); } .style2 .vc_row.mtext--inner .s2-band {
margin-top: 22px;
padding: clamp(22px, 1rem + 1vw, 30px);
border: 1px solid var(--s2-line);
border-left: 4px solid var(--s2-yellow);
background: #2a2d30;
}
.style2 .vc_row.mtext--inner .s2-band:nth-child(even of .s2-band) { border-left-color: #697074; } .style2 .vc_row.mtext--inner > .wpb_column > .vc_column-inner > .wpb_wrapper {
grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
gap: clamp(28px, 1rem + 3vw, 60px);
}
.style2 .vc_row.mtext--inner .icol {
order: 2;
position: sticky;
top: 140px;
} .style2 .vc_row.mtext--inner .icol:has(.istack--dense) { position: static; }
.style2 .istack { gap: 14px; }
.style2 .istack--dense { gap: 12px; }
.style2 .istack__item img,
.style2 .istack--dense .istack__item img {
border-radius: 0;
border: 1px solid var(--s2-line);
background: var(--s2-panel);
}
.style2 .istack__item--logo img { border: 0; background: #eef0f0; padding: 16px; }
.style2 .icol__text {
padding: 22px 26px;
border: 1px solid var(--s2-line);
background: var(--s2-panel2);
font-size: 14.5px;
}
.style2 .icol__text h2 { font-size: clamp(20px, 1rem + 0.8vw, 26px); }
.style2 .icol__text ul > li:first-child { border-top: 0; }
@media (max-width: 992px) {
.style2 .vc_row.mtext--inner > .wpb_column > .vc_column-inner > .wpb_wrapper { grid-template-columns: 1fr; }
.style2 .vc_row.mtext--inner .icol { position: static; }
} .style2 .row-cta-buttons { gap: 12px; } .style2 .mtext .wpb_single_image img { border: 1px solid var(--s2-line); } .style2 .cform input[type="text"],
.style2 .cform input[type="email"],
.style2 .cform input[type="tel"],
.style2 .cform textarea {
min-height: 48px;
padding: 14px;
border: 1px solid #474c4f;
border-radius: 2px;
background: #202325;
color: #fff;
}
.style2 .cform textarea { min-height: 150px; }
.style2 .cform input:focus-visible,
.style2 .cform textarea:focus-visible { border-color: var(--s2-yellow); box-shadow: 0 0 0 3px rgb(244 181 27 / 0.18); }
.style2 .cform__interests { border: 1px solid var(--s2-line); background: var(--s2-panel); }
.style2 .cform__legend { color: #fff; font-size: 14px; font-weight: 900; letter-spacing: 0.04em; text-transform: uppercase; }
.style2 .cform .wpcf7-list-item label { color: #c8ced1; font-size: 14px; }
.style2 .cform input[type="checkbox"] { accent-color: var(--s2-yellow); }
.style2 .cform input[type="submit"] { cursor: pointer; }
.style2 .wpcf7-response-output { border-color: var(--s2-line); color: var(--s2-text); } .style2 .site-footer {
margin-top: var(--section-pad-y);
border-top: 1px solid var(--s2-line);
border-radius: 0;
background: var(--s2-floor);
color: #9fa6a8;
} .style2 .sfooter__schedule {
background: linear-gradient(110deg, #34322c, #25282a);
border-bottom: 1px solid var(--s2-line);
}
.style2 .sfooter__schedule-inner { padding-block: clamp(28px, 1rem + 2vw, 44px); }
.style2 .sfooter__schedule-text {
max-width: 44ch;
color: #fff;
font-size: clamp(18px, 0.9rem + 0.8vw, 24px);
font-weight: 900;
line-height: 1.15;
letter-spacing: -0.02em;
text-transform: uppercase;
}
.style2 .sfooter__schedule-cta {
background: var(--s2-yellow);
border-color: var(--s2-yellow);
color: var(--s2-ink);
}
.style2 .sfooter__schedule-cta:hover { background: var(--s2-yellow2); color: var(--s2-ink); }
.style2 .sfooter__mid { font-size: 13px; }
.style2 .sfooter__mid p { color: #9fa6a8; }
.style2 .site-footer .t-col-head {
color: var(--s2-yellow);
font-size: 10px;
font-weight: 900;
letter-spacing: 0.14em;
line-height: 1.4;
}
.style2 .sfooter__links a,
.style2 .sfooter__col a { color: #c3c7c8; }
.style2 .sfooter__links a:hover,
.style2 .sfooter__col a:hover { color: var(--s2-yellow); text-decoration-color: transparent; }
.style2 .sfooter__brand img { width: 58px; height: 58px; }
.style2 .sfooter__bottom { border-top: 1px solid var(--s2-line); }
.style2 .sfooter__bottom-inner {
padding-block: 18px;
color: var(--s2-muted); font-size: 11px;
letter-spacing: 0.08em;
text-transform: uppercase;
}
.style2 .sfooter__bottom-inner p { color: inherit; }