/*
 * Nyakaps Elements — widget layout.
 * Component styling (tiles, phones, tablet, cards, slider) comes from the Nyakaps theme;
 * this file only provides the structure the block editor used to supply, using theme tokens.
 */
.nyke-center { text-align: center; }

/* ---------- Curved Hero ---------- */
.nyke-hero.nyk-hero-cover {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: min(var(--nyke-h, 86vh), 860px) !important;
	padding: 8rem var(--wp--preset--spacing--30, 1.5rem) 7rem;
	color: #fff;
	isolation: isolate;
}
/* Selectors outrank Elementor's `.elementor img { height: auto }` so photos always fill their frame. */
.nyke-hero img.nyke-hero__img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; z-index: 0; }
.nyke-hero__overlay { position: absolute; inset: 0; z-index: 1; background: var(--wp--preset--color--contrast, #1d1a18); opacity: var(--nyke-overlay, .4); }
.nyke-hero .wp-block-cover__inner-container { width: 100%; text-align: center; }
.nyke-hero__title { margin: 0; color: #fff; line-height: 1.08; }
.nyke-hero__sub { margin: 1rem auto 0; color: #fff; font-size: var(--wp--preset--font-size--large, 1.375rem); }
.nyke-hero--flat.nyk-hero-cover { border-radius: 0; }

/* ---------- Service Tiles ---------- */
.nyke-services { padding: var(--wp--preset--spacing--40, 2.5rem) var(--wp--preset--spacing--30, 1.5rem) var(--wp--preset--spacing--50, 4rem); }
.nyke-services .nyk-services { display: flex; gap: 1rem; max-width: 1140px; margin: 0 auto; }
.nyke-services .nyk-services__photo { flex: 0 0 30%; }
.nyke-services .nyk-services__photo img { display: block; width: 100%; height: 100%; object-fit: cover; border-radius: 4px; }
.nyke-services .nyk-tiles { flex: 1; }
.nyke-services .nyk-tile { display: flex; flex-wrap: nowrap; }
.nyke-services .nyk-tile p { margin: 0; }

/* ---------- Mobile Banking ---------- */
.nyke-mobile { display: flex; align-items: center; gap: var(--wp--preset--spacing--50, 4rem); max-width: 1140px; margin: 0 auto; padding: var(--wp--preset--spacing--50, 4rem) var(--wp--preset--spacing--30, 1.5rem); }
.nyke-mobile__phones { flex: 0 0 48%; }
.nyke-mobile__text { flex: 1; }
.nyke-mobile__title { margin: 0 0 1rem; }
.nyke-mobile__body { margin: 0 0 1.25rem; color: var(--wp--preset--color--muted, #5f5a55); line-height: 1.9; }
.nyke-mobile .nyk-more { margin: 0; }

/* ---------- Product Mosaic ---------- */
.nyke-mosaic { max-width: 1140px; margin: 0 auto; padding: var(--wp--preset--spacing--40, 2.5rem) var(--wp--preset--spacing--30, 1.5rem) var(--wp--preset--spacing--50, 4rem); }
.nyke-mosaic__title { margin: 0 0 var(--wp--preset--spacing--30, 1.5rem); text-align: center; }
.nyke-card { position: relative; isolation: isolate; display: flex; align-items: flex-end; min-height: 380px; padding: 1.75rem; border-radius: 4px; overflow: hidden; color: #fff; text-decoration: none; background: #2a2320; }
.nyke-card img.nyke-card__img { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; max-width: none; object-fit: cover; transition: transform .6s ease; }
.nyke-card__shade { position: absolute; inset: 0; z-index: -1; background: linear-gradient(to top, rgba(20,10,12,.82) 0%, rgba(20,10,12,.35) 45%, rgba(20,10,12,0) 70%); }
.nyke-card__body { display: flex; flex-direction: column; gap: .35rem; }
.nyke-card__title { font-family: var(--wp--preset--font-family--heading, inherit); font-size: 1.2rem; font-weight: 600; color: #fff; }
.nyke-card__text { font-size: var(--wp--preset--font-size--small, .9375rem); line-height: 1.5; opacity: .88; max-width: 42ch; }
a.nyke-card:hover img.nyke-card__img { transform: scale(1.05); }
a.nyke-card:focus-visible { outline: 3px solid var(--wp--preset--color--accent, #e3a82b); outline-offset: 2px; }
.nyke-mosaic .nyk-span-4 { grid-column: span 4; } .nyke-mosaic .nyk-span-8 { grid-column: span 8; } .nyke-mosaic .nyk-span-12 { grid-column: span 12; }

/* ---------- Newsroom Slider ---------- */
.nyke-slider { padding: var(--wp--preset--spacing--60, 6rem) 0; }
.nyke-slider__inner { max-width: 1140px; margin: 0 auto; padding: 0 var(--wp--preset--spacing--30, 1.5rem); }
.nyke-slider .nyk-mslider__head { display: flex; flex-wrap: wrap; justify-content: space-between; }
.nyke-slider .nyk-mcard__img { margin: 0; }
.nyke-slider__empty { max-width: 1140px; margin: 0 auto; padding: 0 var(--wp--preset--spacing--30, 1.5rem); opacity: .7; }

/* ---------- Online Banking ---------- */
.nyke-online { max-width: 1140px; margin: 0 auto; padding: var(--wp--preset--spacing--50, 4rem) var(--wp--preset--spacing--30, 1.5rem) var(--wp--preset--spacing--40, 2.5rem); }
.nyke-online .nyk-kicker { margin: 0; }
.nyke-online__title { margin: .25rem 0 .6rem; text-align: center; }
.nyke-online .nyk-more { margin: 0; }
.nyke-online__follow { margin: var(--wp--preset--spacing--40, 2.5rem) 0 .75rem; text-align: center; color: var(--wp--preset--color--secondary, #206832); }
.nyke-online__social { display: flex; justify-content: center; gap: 1rem; list-style: none; margin: 0; padding: 0; }
.nyke-online__social a { color: var(--wp--preset--color--primary, #821534); display: inline-flex; }
.nyke-online__social svg { width: 24px; height: 24px; fill: currentColor; }
.nyke-online__social a:hover { color: var(--wp--preset--color--primary-dark, #5c0e24); }

/* ---------- Small screens ---------- */
@media (max-width: 781px) {
	.nyke-mobile { flex-direction: column; gap: 2rem; }
	.nyke-mobile__phones { flex-basis: auto; width: 100%; }
	.nyke-services .nyk-services { display: block; }
}
@media (max-width: 600px) {
	.nyke-card { min-height: 280px; }
	.nyke-mosaic .nyk-span-4, .nyke-mosaic .nyk-span-8 { grid-column: span 12; }
}

/* ---------- Curved Hero: slideshow ---------- */
.nyke-hero .nyke-hero__slides { position: absolute; inset: 0; z-index: 0; overflow: hidden; }
.nyke-hero .nyke-hero__slides img.nyke-hero__slide { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; opacity: 0; transition: opacity 1.4s ease; }
.nyke-hero .nyke-hero__slides img.nyke-hero__slide.is-active { opacity: 1; }
.nyke-hero--zoom .nyke-hero__slides img.nyke-hero__slide.is-active { animation: nyke-kenburns calc(var(--nyke-interval, 6s) + 1.4s) linear forwards; }
.nyke-hero--zoom.is-paused .nyke-hero__slides img.nyke-hero__slide.is-active { animation-play-state: paused; }
@keyframes nyke-kenburns { from { transform: scale(1); } to { transform: scale(1.08); } }

.nyke-hero__controls { position: absolute; z-index: 3; left: max(var(--wp--preset--spacing--30, 1.5rem), calc((100% - 1140px) / 2)); bottom: 2.25rem; display: flex; align-items: center; gap: .15rem; }
.nyke-hero__dot, .nyke-hero__pause { display: grid; place-items: center; width: 30px; height: 30px; padding: 0; border: 0; background: none; cursor: pointer; }
.nyke-hero__dot span { display: block; width: 8px; height: 8px; border-radius: 999px; background: rgba(255,255,255,.55); transition: width .35s ease, background .35s ease; }
.nyke-hero__dot:hover span { background: #fff; }
.nyke-hero__dot.is-active span { width: 26px; background: #fff; }
.nyke-hero__pause { width: 34px; height: 34px; margin-right: .35rem; border: 1px solid rgba(255,255,255,.55); border-radius: 50%; }
.nyke-hero__pause span { width: 9px; height: 11px; border-left: 3px solid #fff; border-right: 3px solid #fff; }
.nyke-hero.is-paused .nyke-hero__pause span { width: 0; height: 0; border-style: solid; border-width: 6px 0 6px 10px; border-color: transparent transparent transparent #fff; margin-left: 3px; }
.nyke-hero__dot:focus-visible, .nyke-hero__pause:focus-visible { outline: 2px solid var(--wp--preset--color--accent, #e3a82b); outline-offset: 2px; border-radius: 999px; }
@media (max-width: 781px) {
	.nyke-hero__controls { bottom: 5.5rem; } /* clear of the centred "Get Started" tab */
}
@media (prefers-reduced-motion: reduce) {
	.nyke-hero .nyke-hero__slides img.nyke-hero__slide { transition: none; }
	.nyke-hero--zoom .nyke-hero__slides img.nyke-hero__slide.is-active { animation: none; }
}

/* Mosaic cards are links: keep text white in every state (the theme's global link hover is dark maroon). */
a.nyke-card, a.nyke-card:hover, a.nyke-card:focus, a.nyke-card:focus-visible, a.nyke-card:active, a.nyke-card:visited { color: #fff; text-decoration: none; }
.nyke-card .nyke-card__title, .nyke-card .nyke-card__text { color: #fff; }

/* ---------- Online Banking: tablet + phone device mockup (real site screenshots) ---------- */
.nyke-devices { position: relative; max-width: 1000px; margin: clamp(2rem, 4vw, 3rem) auto 0; padding: 0 0 clamp(1.5rem, 3vw, 2.5rem); }
/* Ivory panel behind the devices, carrying the signature curve. */
.nyke-devices::before { content: ""; position: absolute; left: -4%; right: -4%; top: 22%; bottom: 0; z-index: 0; background: var(--wp--preset--color--ivory, #faf7f1); border-radius: 0 0 var(--nyk-curve, 280px) 0; }
/* Frames are sized from the stage (.nyke-devices is the container); screen contents from each device. Radii are concentric: outer = inner + bezel. */
.nyke-devices { container-type: inline-size; }
.nyke-devices__tablet, .nyke-devices__phone { position: relative; z-index: 1; container-type: inline-size; }
.nyke-devices__tablet, .nyke-devices__phone {
	/* titanium edge → black bezel */
	background:
		linear-gradient(#0e0e10, #0e0e10) padding-box,
		linear-gradient(145deg, #8d8d93 0%, #3a3a3e 22%, #6c6c72 50%, #2c2c30 78%, #9a9aa0 100%) border-box;
	border: solid transparent;
	box-shadow: 0 50px 90px -40px rgba(29,26,24,.5), 0 20px 40px -26px rgba(29,26,24,.35);
}
.nyke-devices__tablet { width: 84%; border-width: .3cqw; padding: 1.3cqw; border-radius: 3.6cqw; }
.nyke-devices__tablet .nyke-devices__screen { aspect-ratio: 1180 / 820; border-radius: 2.5cqw; }
.nyke-devices__cam { position: absolute; top: .5cqw; left: 50%; width: .55cqw; height: .55cqw; transform: translateX(-50%); border-radius: 50%; background: radial-gradient(circle at 35% 35%, #3b4a66, #0b0b0c 70%); }

.nyke-devices__phone { position: absolute; right: 2%; bottom: 0; width: 25%; z-index: 2; border-width: .28cqw; padding: .78cqw; border-radius: 4.12cqw; }
.nyke-devices__phone .nyke-devices__screen { aspect-ratio: 390 / 844; border-radius: 13.4cqw; }
/* side buttons: action + volume up/down on the left, power on the right */
.nyke-devices__phone::before, .nyke-devices__phone::after { content: ""; position: absolute; width: 1.4cqw; border-radius: 1cqw; background: linear-gradient(90deg, #4a4a4f, #8a8a90 60%, #3a3a3e); }
.nyke-devices__phone::before { left: -2.4cqw; top: 19%; height: 5.5%; box-shadow: 0 10cqw 0 0 #6a6a70, 0 26cqw 0 0 #6a6a70; }
.nyke-devices__phone::after { right: -2.4cqw; top: 28%; height: 12%; }

.nyke-devices__screen { position: relative; overflow: hidden; background: #fff; }
/* faint glass sheen */
.nyke-devices__screen::after { content: ""; position: absolute; inset: 0; z-index: 3; pointer-events: none; background: linear-gradient(115deg, rgba(255,255,255,.14) 0%, rgba(255,255,255,0) 32%); }
.nyke-devices .nyke-devices__screen img.nyke-devices__img { display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: top center; }

.nyke-devices__screen--phone { display: flex; flex-direction: column; }
.nyke-devices__status { position: relative; z-index: 2; flex: none; display: flex; align-items: center; justify-content: space-between; height: 12.5cqw; padding: 1.2cqw 9cqw 0 11cqw; background: #fff; color: #111; }
.nyke-devices__status b { font: 650 4.4cqw/1 var(--wp--preset--font-family--body, system-ui, sans-serif); letter-spacing: -.01em; }
.nyke-devices__icons { display: flex; align-items: center; gap: 1.6cqw; }
.nyke-devices__icons svg { height: 3.4cqw; width: auto; fill: currentColor; }
.nyke-devices__island { position: absolute; top: 3cqw; left: 50%; width: 30cqw; height: 8.6cqw; transform: translateX(-50%); border-radius: 999px; background: #000; }
.nyke-devices .nyke-devices__screen--phone img.nyke-devices__img { flex: 1; min-height: 0; height: auto; }
.nyke-devices__home { position: absolute; left: 50%; bottom: 2.2cqw; z-index: 2; width: 36cqw; height: 1.4cqw; transform: translateX(-50%); border-radius: 999px; background: rgba(17,17,17,.85); }
.nyke-online .nyke-online__follow { margin-top: clamp(2rem, 4vw, 3rem); }
@media (max-width: 600px) {
	.nyke-devices__tablet { width: 92%; }
	.nyke-devices__phone { width: 34%; right: 0; }
}

/* =========================================================
   Contact page widgets
   ========================================================= */
.nyke-pagehero .nyk-sighero__title { max-width: 16ch; }

/* ---------- Contact Cards ---------- */
.nyke-ccards { max-width: 1140px; margin: 0 auto; padding: clamp(2.5rem, 5vw, 4rem) var(--wp--preset--spacing--30, 1.5rem) clamp(1rem, 2vw, 1.5rem); }
.nyke-ccards__grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 1rem; }
.nyke-ccard { display: flex; flex-direction: column; gap: .35rem; margin: 0; padding: 1.5rem; border: 1px solid var(--nyk-rule, #e6dfd4); border-radius: 12px; background: #fff; transition: border-color .2s ease, box-shadow .2s ease; }
.nyke-ccard:hover { border-color: var(--nyk-ink, #1d1a18); box-shadow: 0 18px 40px -28px rgba(29,26,24,.35); }
.nyke-ccard__icon { display: grid; place-items: center; width: 48px; height: 48px; margin-bottom: .6rem; border-radius: 12px; background: var(--wp--preset--color--tint-primary, #f8ecef); color: var(--wp--preset--color--primary, #821534); }
.nyke-ccard__icon svg { width: 24px; height: 24px; }
.nyke-ccard p { margin: 0; }
.nyke-ccard__label { font: 600 .7rem/1.3 var(--wp--preset--font-family--body, sans-serif); letter-spacing: .16em; text-transform: uppercase; color: var(--wp--preset--color--muted, #5f5a55); }
.nyke-ccard__value { color: var(--nyk-ink, #1d1a18); font-size: 1.15rem; font-weight: 600; letter-spacing: -.01em; line-height: 1.3; }
.nyke-ccard__value.is-email { font-size: 1.02rem; }
.nyke-ccard__note { color: var(--wp--preset--color--muted, #5f5a55); font-size: .88rem; }
.nyke-ccard__action { margin-top: auto; padding-top: 1rem; align-self: flex-start; color: var(--wp--preset--color--primary, #821534); font-weight: 600; font-size: .9rem; text-decoration: none; }
.nyke-ccard__action::after { content: " →"; }
.nyke-ccard__action:hover { text-decoration: underline; text-underline-offset: 3px; }

/* ---------- Branch Directory ---------- */
.nyke-branches { max-width: 1140px; margin: 0 auto; padding: clamp(3rem, 6vw, 5rem) var(--wp--preset--spacing--30, 1.5rem); }
.nyke-branches__head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 1.5rem clamp(1.5rem, 5vw, 4rem); align-items: end; margin-bottom: 2.25rem; padding-bottom: 1.5rem; border-bottom: 1px solid var(--nyk-rule, #e6dfd4); }
.nyke-branches__title { margin: 0; color: var(--nyk-ink, #1d1a18); font-size: clamp(2rem, 3.6vw, 3rem); font-weight: 400; letter-spacing: -.03em; line-height: 1.05; }
.nyke-branches__title em, .nyke-contact__title em { font-style: normal; font-weight: 650; color: var(--wp--preset--color--primary, #821534); }
.nyke-branches__intro { margin: 0; max-width: 48ch; color: var(--wp--preset--color--muted, #5f5a55); line-height: 1.7; }
.nyke-branches__grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.nyke-branch { display: flex; flex-direction: column; justify-content: space-between; gap: 1.25rem; margin: 0; padding: 1.5rem; border: 1px solid var(--nyk-rule, #e6dfd4); border-radius: 12px; background: #fff; transition: border-color .2s ease; }
.nyke-branch:hover { border-color: var(--nyk-ink, #1d1a18); }
.nyke-branch p { margin: 0; }
.nyke-branch__area { font: 600 .68rem/1.3 var(--wp--preset--font-family--body, sans-serif); letter-spacing: .16em; text-transform: uppercase; color: var(--wp--preset--color--primary, #821534); }
.nyke-branch__name { margin: .45rem 0 0; color: var(--nyk-ink, #1d1a18); font-size: 1.3rem; font-weight: 600; letter-spacing: -.015em; }
.nyke-branch__addr { margin-top: .5rem !important; color: var(--wp--preset--color--muted, #5f5a55); font-size: .92rem; line-height: 1.55; }
.nyke-branch__mgr { margin-top: .7rem !important; font-size: .88rem; color: var(--nyk-ink, #1d1a18); }
.nyke-branch__mgr span { color: var(--wp--preset--color--muted, #5f5a55); }
.nyke-branch__links { list-style: none; margin: 0; padding: .9rem 0 0; border-top: 1px solid var(--nyk-rule, #e6dfd4); display: grid; gap: .45rem; }
.nyke-branch__links li { margin: 0; }
.nyke-branch__links a { display: flex; align-items: center; gap: .6rem; color: var(--nyk-ink, #1d1a18); text-decoration: none; font-size: .9rem; min-width: 0; }
.nyke-branch__links svg { flex: none; width: 17px; height: 17px; color: var(--wp--preset--color--primary, #821534); }
.nyke-branch__links a:hover span { text-decoration: underline; text-underline-offset: 3px; }
/* Featured head office card */
.nyke-branch.is-lead { grid-column: span 2; flex-direction: row; align-items: flex-end; gap: 2rem; padding: clamp(1.5rem, 3vw, 2.25rem); background: var(--nyk-night, #141110); border-color: var(--nyk-night, #141110); color: #fff; border-radius: 12px 12px clamp(40px, 7vw, 90px) 12px; }
.nyke-branch.is-lead .nyke-branch__top { flex: 1; }
.nyke-branch.is-lead .nyke-branch__area { color: var(--wp--preset--color--accent, #e3a82b); }
.nyke-branch.is-lead .nyke-branch__name { color: #fff; font-size: clamp(1.6rem, 2.6vw, 2.2rem); }
.nyke-branch.is-lead .nyke-branch__addr, .nyke-branch.is-lead .nyke-branch__mgr span { color: rgba(255,255,255,.7); }
.nyke-branch.is-lead .nyke-branch__mgr { color: #fff; }
.nyke-branch.is-lead .nyke-branch__links { flex: 0 0 auto; border-top: 0; padding-top: 0; min-width: 240px; }
.nyke-branch.is-lead .nyke-branch__links a { color: #fff; }
.nyke-branch.is-lead .nyke-branch__links svg { color: var(--wp--preset--color--accent, #e3a82b); }

/* ---------- Contact Form & Map ---------- */
.nyke-contact { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: clamp(1.5rem, 4vw, 3rem); align-items: stretch; max-width: 1140px; margin: 0 auto; padding: clamp(1rem, 3vw, 2rem) var(--wp--preset--spacing--30, 1.5rem) clamp(3.5rem, 7vw, 6rem); }
.nyke-contact--nomap { grid-template-columns: minmax(0, 760px); justify-content: center; }
.nyke-contact__panel { padding: clamp(1.5rem, 4vw, 2.75rem); border-radius: 16px; background: var(--wp--preset--color--ivory, #faf7f1); }
.nyke-contact__title { margin: 0; color: var(--nyk-ink, #1d1a18); font-size: clamp(1.9rem, 3.2vw, 2.6rem); font-weight: 400; letter-spacing: -.03em; line-height: 1.05; }
.nyke-contact__intro { margin: .75rem 0 0; color: var(--wp--preset--color--muted, #5f5a55); line-height: 1.65; max-width: 52ch; }
.nyke-form { margin-top: 1.75rem; display: grid; gap: 1rem; }
.nyke-form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.nyke-field { margin: 0; display: flex; flex-direction: column; gap: .4rem; }
.nyke-field label { font-size: .85rem; font-weight: 600; color: var(--nyk-ink, #1d1a18); }
.nyke-field label em { font-style: normal; font-weight: 400; color: var(--wp--preset--color--muted, #5f5a55); }
.nyke-field label span { color: var(--wp--preset--color--primary, #821534); }
.nyke-field input[type="text"], .nyke-field input[type="email"], .nyke-field input[type="tel"], .nyke-field select, .nyke-field textarea {
	width: 100%; box-sizing: border-box; padding: .8rem .95rem; border: 1px solid var(--nyk-rule, #e6dfd4); border-radius: 10px; background: #fff;
	font: inherit; font-size: 1rem; color: var(--nyk-ink, #1d1a18); transition: border-color .15s ease, box-shadow .15s ease;
}
.nyke-field textarea { resize: vertical; min-height: 130px; }
.nyke-field select { appearance: none; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235f5a55' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right .85rem center / 16px no-repeat; padding-right: 2.5rem; }
.nyke-field input:focus, .nyke-field select:focus, .nyke-field textarea:focus { outline: none; border-color: var(--wp--preset--color--primary, #821534); box-shadow: 0 0 0 3px rgba(130,21,52,.14); }
.nyke-field [aria-invalid="true"] { border-color: #b3261e; }
.nyke-field__err { font-size: .82rem; color: #b3261e; min-height: 0; }
.nyke-field__err:empty { display: none; }
.nyke-field--check label { display: flex; gap: .6rem; align-items: flex-start; font-weight: 400; font-size: .9rem; color: var(--wp--preset--color--muted, #5f5a55); }
.nyke-field--check input { margin-top: .2rem; width: 18px; height: 18px; accent-color: var(--wp--preset--color--primary, #821534); flex: none; }
.nyke-form__hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.nyke-form__foot { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 1.5rem; margin-top: .25rem; }
.nyke-form__submit { padding: .95rem 1.9rem; border: 0; border-radius: 999px; background: var(--wp--preset--color--primary, #821534); color: #fff; font: 600 .95rem/1 var(--wp--preset--font-family--body, sans-serif); cursor: pointer; transition: background .2s ease; }
.nyke-form__submit:hover { background: var(--wp--preset--color--primary-dark, #5c0e24); }
.nyke-form__submit:focus-visible { outline: 2px solid var(--wp--preset--color--accent, #e3a82b); outline-offset: 3px; }
.nyke-form__submit.is-busy { opacity: .7; cursor: progress; }
.nyke-form__safe { margin: 0; display: flex; align-items: center; gap: .45rem; font-size: .82rem; color: var(--wp--preset--color--muted, #5f5a55); }
.nyke-form__safe svg { width: 16px; height: 16px; color: var(--wp--preset--color--secondary, #206832); flex: none; }
.nyke-form__status { margin-top: 1.25rem; padding: .9rem 1.1rem; border-radius: 10px; font-size: .95rem; line-height: 1.5; }
.nyke-form__status.is-ok { background: var(--wp--preset--color--tint-secondary, #eaf4ec); color: #154a23; border-left: 3px solid var(--wp--preset--color--secondary, #206832); }
.nyke-form__status.is-error { background: #fdecea; color: #8a1c14; border-left: 3px solid #b3261e; }
.nyke-contact__map { position: relative; margin: 0; min-height: 420px; overflow: hidden; border-radius: 16px 16px var(--nyk-curve, 280px) 16px; background: #e8e4dc; }
.nyke-contact__map iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.nyke-contact__map figcaption { position: absolute; left: 1rem; top: 1rem; display: inline-flex; align-items: center; gap: .45rem; padding: .55rem .9rem; border-radius: 999px; background: #fff; color: var(--nyk-ink, #1d1a18); font-size: .82rem; font-weight: 600; box-shadow: 0 8px 20px -10px rgba(0,0,0,.35); }
.nyke-contact__map figcaption svg { width: 15px; height: 15px; color: var(--wp--preset--color--primary, #821534); }

@media (max-width: 1024px) {
	.nyke-branches__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 781px) {
	.nyke-branches__head, .nyke-contact { grid-template-columns: 1fr; }
	.nyke-branches__grid { grid-template-columns: 1fr; }
	.nyke-branch.is-lead { grid-column: auto; flex-direction: column; align-items: stretch; }
	.nyke-branch.is-lead .nyke-branch__links { min-width: 0; border-top: 1px solid rgba(255,255,255,.15); padding-top: .9rem; }
	.nyke-form__row { grid-template-columns: 1fr; }
	.nyke-contact__map { min-height: 320px; }
}
/* Outrank Elementor's `.elementor img { height: auto }` so the photo always fills the curved hero. */
.nyke-pagehero img.nyk-sighero__img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; }

/* Team Directory under a photo Page Header: tabs on white, as on the original team page. */
body:has(.nyke-pagehero) .nyk-team__tabs { background: rgba(255,255,255,.94); }
body:has(.nyke-pagehero) .nyk-team__tabs-inner { padding-top: 1.1rem; }

/* ---------- Loan Products & Loan Application widgets ---------- */
.nyke-loans { max-width: 1140px; margin: 0 auto; padding: clamp(3rem, 6vw, 5rem) var(--wp--preset--spacing--30, 1.5rem) clamp(2rem, 4vw, 3rem); }
.nyke-loans__head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 1rem clamp(1.5rem, 5vw, 4rem); align-items: end; margin-bottom: 2.75rem; padding-bottom: 1.5rem; border-bottom: 1px solid var(--nyk-rule, #e6dfd4); }
.nyke-loans__title { margin: 0; color: var(--nyk-ink, #1d1a18); font-size: clamp(2rem, 3.6vw, 3rem); font-weight: 400; letter-spacing: -.03em; line-height: 1.05; }
.nyke-loans__title em { font-style: normal; font-weight: 650; color: var(--wp--preset--color--primary, #821534); }
.nyke-loans__intro { margin: 0; max-width: 48ch; color: var(--wp--preset--color--muted, #5f5a55); line-height: 1.7; }
.nyke-loan-form { max-width: 1140px; margin: 0 auto; padding: clamp(1rem, 3vw, 2rem) var(--wp--preset--spacing--30, 1.5rem) clamp(3.5rem, 7vw, 6rem); }
.nyke-loans .nyk-lcard__media img { height: 100%; max-width: none; } /* outrank Elementor's img height:auto */
@media (max-width: 781px) { .nyke-loans__head { grid-template-columns: 1fr; } }

/* =========================================================
   Mobile banking: USSD Demo, Feature Pillars, Steps & Safety
   ========================================================= */
.nyke-ussd { max-width: 1140px; margin: 0 auto; padding: clamp(3rem, 6vw, 5rem) var(--wp--preset--spacing--30, 1.5rem); display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: clamp(2rem, 5vw, 4rem); align-items: center; }
.nyke-ussd__kicker { margin: 0; font: 600 .74rem/1.3 var(--wp--preset--font-family--body, sans-serif); letter-spacing: .18em; text-transform: uppercase; color: var(--wp--preset--color--secondary, #206832); }
.nyke-ussd__title { margin: .7rem 0 0; color: var(--nyk-ink, #1d1a18); font-size: clamp(2.6rem, 6vw, 4.8rem); font-weight: 400; letter-spacing: -.04em; line-height: 1; }
.nyke-ussd__title span { display: block; font-size: .5em; letter-spacing: -.02em; color: var(--wp--preset--color--muted, #5f5a55); }
a.nyke-ussd__code { color: var(--wp--preset--color--primary, #821534); font-weight: 700; text-decoration: none; white-space: nowrap; }
.nyke-ussd__body { margin: 1.25rem 0 0; max-width: 46ch; color: var(--wp--preset--color--muted, #5f5a55); font-size: 1.08rem; line-height: 1.7; }
.nyke-ussd__points { list-style: none; margin: 1.5rem 0 0; padding: 0; display: grid; gap: .6rem; }
.nyke-ussd__points li { display: flex; gap: .65rem; align-items: center; margin: 0; color: var(--nyk-ink, #1d1a18); font-weight: 500; }
.nyke-ussd__points svg { flex: none; width: 22px; height: 22px; padding: 4px; border-radius: 50%; background: var(--wp--preset--color--tint-secondary, #eaf4ec); color: var(--wp--preset--color--secondary, #206832); box-sizing: border-box; }
a.nyke-ussd__cta { display: inline-flex; align-items: center; gap: .6rem; margin-top: 2rem; padding: 1rem 1.7rem; border-radius: 999px; background: var(--wp--preset--color--primary, #821534); color: #fff; font-weight: 600; text-decoration: none; transition: background .2s ease; }
a.nyke-ussd__cta:hover { background: var(--wp--preset--color--primary-dark, #5c0e24); color: #fff; }
a.nyke-ussd__cta svg { width: 20px; height: 20px; }
.nyke-ussd__cta-note { margin: .7rem 0 0; font-size: .85rem; color: var(--wp--preset--color--muted, #5f5a55); }

.nyke-ussd__stage { position: relative; display: flex; flex-direction: column; align-items: center; padding: 2rem 0; }
.nyke-ussd__stage::before { content: ""; position: absolute; inset: 0 6%; z-index: 0; border-radius: 28px 28px var(--nyk-curve, 280px) 28px; background: radial-gradient(circle at 30% 20%, rgba(227,168,43,.28), transparent 50%), linear-gradient(150deg, #154a23, #206832 55%, #2b7f43); }
.nyke-ussd__msg { margin: 0 0 .6rem; white-space: normal; }
.nyke-ussd__msg--result { font-size: .86rem; }
.nyke-ussd__menu { margin: 0; padding: 0; list-style: none; counter-reset: nyke-u; display: grid; gap: .15rem; }
.nyke-ussd__menu li { counter-increment: nyke-u; margin: 0; }
.nyke-ussd__menu button { display: flex; width: 100%; gap: .45rem; padding: .45rem .5rem; border: 0; border-radius: 6px; background: transparent; color: inherit; font: inherit; text-align: left; cursor: pointer; transition: background .15s ease; }
.nyke-ussd__menu button::before { content: counter(nyke-u) "."; color: var(--wp--preset--color--primary, #821534); font-weight: 700; }
.nyke-ussd__menu button:hover, .nyke-ussd__menu button:focus-visible { background: #f1ece2; outline: none; }
.nyke-ussd__input { display: flex; align-items: center; min-height: 2.2rem; padding: 0 .6rem; border-bottom: 2px solid var(--wp--preset--color--secondary, #206832); font-size: 1.05rem; letter-spacing: .05em; }
.nyke-ussd__input i { width: 2px; height: 1.1em; margin-left: 2px; background: currentColor; animation: nyke-blink 1s steps(2) infinite; }
@keyframes nyke-blink { 50% { opacity: 0; } }
.nyke-ussd__actions { display: flex; justify-content: flex-end; gap: .4rem; margin-top: auto; padding-top: .9rem; }
.nyke-ussd__actions button { padding: .45rem .8rem; border: 0; border-radius: 6px; background: transparent; color: var(--wp--preset--color--secondary, #206832); font: 700 .78rem/1 var(--wp--preset--font-family--body, sans-serif); letter-spacing: .06em; text-transform: uppercase; cursor: pointer; }
.nyke-ussd__actions button[data-act="send"] { background: var(--wp--preset--color--secondary, #206832); color: #fff; }
.nyke-ussd__actions button:disabled { opacity: .45; cursor: default; }
.nyke-ussd__actions button:focus-visible, .nyke-ussd__menu button:focus-visible { outline: 2px solid var(--wp--preset--color--accent, #e3a82b); outline-offset: 1px; }
.nyke-ussd__note { position: relative; z-index: 1; margin: 1.25rem 0 0; padding: .45rem .9rem; border-radius: 999px; background: rgba(255,255,255,.14); color: #fff; font-size: .8rem; }


.nyke-steps { max-width: 1140px; margin: 0 auto; padding: clamp(3.5rem, 7vw, 6rem) var(--wp--preset--spacing--30, 1.5rem); display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, .9fr); gap: clamp(2rem, 5vw, 4rem); align-items: start; }
.nyke-steps__title { margin: 0 0 2rem; color: var(--nyk-ink, #1d1a18); font-size: clamp(2rem, 3.6vw, 2.9rem); font-weight: 400; letter-spacing: -.03em; line-height: 1.05; }
.nyke-steps__title em { font-style: normal; font-weight: 650; color: var(--wp--preset--color--primary, #821534); }
.nyke-steps__list { list-style: none; counter-reset: nyke-s; margin: 0; padding: 0; position: relative; }
.nyke-steps__list::before { content: ""; position: absolute; left: 23px; top: 24px; bottom: 24px; width: 2px; background: var(--nyk-rule, #e6dfd4); }
.nyke-steps__list li { counter-increment: nyke-s; position: relative; display: grid; grid-template-columns: 48px 1fr; gap: 1.25rem; margin: 0; padding: 0 0 1.75rem; }
.nyke-steps__list li::before { content: counter(nyke-s); position: relative; z-index: 1; display: grid; place-items: center; width: 48px; height: 48px; border-radius: 50%; background: #fff; border: 2px solid var(--wp--preset--color--primary, #821534); color: var(--wp--preset--color--primary, #821534); font-weight: 700; font-size: 1.05rem; }
.nyke-steps__list li:first-child::before { background: var(--wp--preset--color--primary, #821534); color: #fff; }
.nyke-steps__list h3 { margin: .55rem 0 .3rem; color: var(--nyk-ink, #1d1a18); font-size: 1.2rem; font-weight: 600; }
.nyke-steps__list p { margin: 0; color: var(--wp--preset--color--muted, #5f5a55); line-height: 1.6; }
.nyke-steps__safety { position: sticky; top: 100px; padding: clamp(1.5rem, 3vw, 2rem); border-radius: 16px; background: var(--wp--preset--color--ivory, #faf7f1); border: 1px solid var(--nyk-rule, #e6dfd4); }
.nyke-steps__shield { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 14px; background: var(--wp--preset--color--tint-secondary, #eaf4ec); color: var(--wp--preset--color--secondary, #206832); }
.nyke-steps__shield svg { width: 26px; height: 26px; }
.nyke-steps__safety h3 { margin: 1rem 0 .9rem; color: var(--nyk-ink, #1d1a18); font-size: 1.35rem; font-weight: 600; }
.nyke-steps__safety ul { margin: 0; padding: 0; list-style: none; display: grid; gap: .75rem; }
.nyke-steps__safety li { position: relative; margin: 0; padding-left: 1.4rem; color: var(--nyk-ink, #1d1a18); line-height: 1.5; font-size: .95rem; }
.nyke-steps__safety li::before { content: ""; position: absolute; left: 0; top: .55em; width: 8px; height: 8px; border-radius: 50%; background: var(--wp--preset--color--primary, #821534); }
.nyke-steps__cta { grid-column: 1 / -1; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 1rem 2rem; padding: clamp(1.5rem, 3vw, 2rem) clamp(1.5rem, 3vw, 2.25rem); border-radius: 16px; border: 1px solid var(--nyk-rule, #e6dfd4); }
.nyke-steps__cta h3 { margin: 0; color: var(--nyk-ink, #1d1a18); font-size: 1.4rem; font-weight: 600; }
.nyke-steps__cta p { margin: .3rem 0 0; color: var(--wp--preset--color--muted, #5f5a55); }
a.nyke-steps__btn { padding: .95rem 1.7rem; border-radius: 999px; background: var(--wp--preset--color--primary, #821534); color: #fff; font-weight: 600; text-decoration: none; }
a.nyke-steps__btn:hover { background: var(--wp--preset--color--primary-dark, #5c0e24); color: #fff; }

@media (max-width: 900px) {
	.nyke-ussd, .nyke-steps { grid-template-columns: 1fr; }
	.nyke-pillars__grid { grid-template-columns: 1fr; }
	.nyke-steps__safety { position: static; }
}
@media (prefers-reduced-motion: reduce) { .nyke-ussd__dialog { animation: none; } .nyke-ussd__input i, .nyke-ussd__loading { animation: none; } }
.nyke-ussd__stage { padding-bottom: 2.5rem; }
.nyke-ussd__stage::before { border-radius: 28px 28px clamp(90px, 12vw, 160px) 28px; }

/* ---------- USSD Demo: realistic smartphone with native USSD dialog ---------- */
.nyke-ussd__device { position: relative; z-index: 1; width: min(300px, 78%); container-type: inline-size; }
/* Frame sized from the device width (the container), so the bezel stays slim and corners concentric. */
.nyke-ussd__frame {
	position: relative; border: 1.1cqw solid transparent; padding: 2.9cqw; border-radius: 15cqw;
	background: linear-gradient(#0e0e10, #0e0e10) padding-box, linear-gradient(145deg, #8d8d93 0%, #3a3a3e 22%, #6c6c72 50%, #2c2c30 78%, #9a9aa0 100%) border-box;
	box-shadow: 0 50px 90px -40px rgba(0,0,0,.65), 0 20px 40px -26px rgba(0,0,0,.4);
}
.nyke-ussd__frame::before, .nyke-ussd__frame::after { content: ""; position: absolute; width: 1.4cqw; border-radius: 1cqw; background: linear-gradient(90deg, #4a4a4f, #8a8a90 60%, #3a3a3e); }
.nyke-ussd__frame::before { left: -2.5cqw; top: 19%; height: 5.5%; box-shadow: 0 10cqw 0 0 #6a6a70, 0 26cqw 0 0 #6a6a70; }
.nyke-ussd__frame::after { right: -2.5cqw; top: 28%; height: 12%; }
.nyke-ussd__screen { position: relative; aspect-ratio: 9 / 19.5; overflow: hidden; border-radius: 11cqw; background: #fbfbfd; color: #1b1b1f; font-family: Roboto, "Google Sans Flex", system-ui, -apple-system, sans-serif; }
.nyke-ussd__screen::after { content: ""; position: absolute; inset: 0; z-index: 5; pointer-events: none; background: linear-gradient(115deg, rgba(255,255,255,.16) 0%, rgba(255,255,255,0) 30%); }
.nyke-ussd__status { position: relative; z-index: 3; display: flex; align-items: center; justify-content: space-between; height: 12.5cqw; padding: 1.4cqw 9cqw 0 11cqw; color: #111; }
.nyke-ussd__status b { font-size: 4.4cqw; font-weight: 650; }
.nyke-ussd__icons { display: flex; align-items: center; gap: 1.6cqw; }
.nyke-ussd__icons svg { height: 3.4cqw; width: auto; fill: currentColor; }
.nyke-ussd__island { position: absolute; top: 3cqw; left: 50%; width: 30cqw; height: 8.6cqw; transform: translateX(-50%); border-radius: 999px; background: #000; }
/* dialer behind the dialog */
.nyke-ussd__dialer { position: absolute; inset: 12.5cqw 0 0; display: flex; flex-direction: column; align-items: center; padding: 0 9cqw; }
.nyke-ussd__dialed { margin: 16cqw 0 0; font-size: 9cqw; font-weight: 400; letter-spacing: .04em; color: #1b1b1f; }
.nyke-ussd__pad { display: grid; grid-template-columns: repeat(3, 1fr); gap: 3cqw 6cqw; margin-top: auto; width: 100%; }
.nyke-ussd__pad span { display: flex; flex-direction: column; align-items: center; justify-content: center; aspect-ratio: 1.25; border-radius: 999px; background: #eef0f4; }
.nyke-ussd__pad b { font-size: 7cqw; font-weight: 400; line-height: 1; }
.nyke-ussd__pad small { min-height: 2.6cqw; font-size: 2.4cqw; letter-spacing: .12em; color: #6b6f78; }
.nyke-ussd__call { display: grid; place-items: center; width: 17cqw; height: 17cqw; margin: 5cqw 0 9cqw; border-radius: 999px; background: #1f8f4e; color: #fff; }
.nyke-ussd__call svg { width: 7cqw; height: 7cqw; }
.nyke-ussd__scrim { position: absolute; inset: 0; z-index: 2; background: rgba(15,15,20,.42); }
/* native-style USSD dialog */
.nyke-ussd__dialog {
	position: absolute; z-index: 4; left: 7cqw; right: 7cqw; top: 50%; transform: translateY(-50%);
	display: flex; flex-direction: column; min-height: 46cqw; max-height: 78%; overflow: auto;
	padding: 7cqw 7cqw 3.5cqw; border-radius: 7cqw; background: #f3f1f6; color: #1b1b1f;
	box-shadow: 0 20px 40px -18px rgba(0,0,0,.5); font-size: 4.6cqw; line-height: 1.45;
	animation: nyke-ussd-pop .22s cubic-bezier(.2,.7,.2,1);
}
@keyframes nyke-ussd-pop { from { opacity: 0; transform: translateY(-46%) scale(.96); } to { opacity: 1; transform: translateY(-50%) scale(1); } }
.nyke-ussd__dialog .nyke-ussd__msg { margin: 0 0 3cqw; }
.nyke-ussd__dialog .nyke-ussd__msg strong { font-weight: 600; }
.nyke-ussd__dialog .nyke-ussd__msg--result { font-size: 4.3cqw; white-space: normal; }
.nyke-ussd__dialog .nyke-ussd__menu { gap: 0; }
.nyke-ussd__dialog .nyke-ussd__menu button { padding: 2.3cqw 2cqw; border-radius: 3cqw; font-size: 4.6cqw; }
.nyke-ussd__dialog .nyke-ussd__menu button::before { color: #1b1b1f; font-weight: 500; }
.nyke-ussd__dialog .nyke-ussd__menu button:hover, .nyke-ussd__dialog .nyke-ussd__menu button:focus-visible { background: #e4e0ea; }
.nyke-ussd__dialog .nyke-ussd__input { min-height: 10cqw; margin-top: 1cqw; padding: 0 1cqw; border-bottom: .6cqw solid #1f8f4e; font-size: 5cqw; }
.nyke-ussd__dialog .nyke-ussd__actions { gap: 2cqw; padding-top: 5cqw; }
.nyke-ussd__dialog .nyke-ussd__actions button { padding: 2.4cqw 3.4cqw; border-radius: 999px; background: transparent; color: #1f8f4e; font: 600 4cqw/1 Roboto, system-ui, sans-serif; letter-spacing: .02em; text-transform: none; }
.nyke-ussd__dialog .nyke-ussd__actions button[data-act="send"] { background: transparent; color: #1f8f4e; }
.nyke-ussd__dialog .nyke-ussd__actions button:hover:not(:disabled) { background: rgba(31,143,78,.1); }
.nyke-ussd__running { display: flex; align-items: center; gap: 4cqw; margin: auto 0; }
.nyke-ussd__running .nyke-ussd__msg { margin: 0; }
.nyke-ussd__spinner { flex: none; width: 8cqw; height: 8cqw; border-radius: 50%; border: 1cqw solid rgba(31,143,78,.25); border-top-color: #1f8f4e; animation: nyke-spin .8s linear infinite; }
@keyframes nyke-spin { to { transform: rotate(360deg); } }
.nyke-ussd__home { position: absolute; z-index: 4; left: 50%; bottom: 2.2cqw; width: 36cqw; height: 1.4cqw; transform: translateX(-50%); border-radius: 999px; background: rgba(17,17,17,.85); }
@media (prefers-reduced-motion: reduce) { .nyke-ussd__dialog { animation: none; } .nyke-ussd__spinner { animation-duration: 3s; } }

/* ---------- Feature Pillars: calm, classic (light, hairline rules, no decoration) ---------- */
.nyke-pillars { background: var(--wp--preset--color--ivory, #faf7f1); border-top: 1px solid var(--nyk-rule, #e6dfd4); border-bottom: 1px solid var(--nyk-rule, #e6dfd4); padding: clamp(3.5rem, 7vw, 6rem) var(--wp--preset--spacing--30, 1.5rem); }
.nyke-pillars__inner { max-width: 1140px; margin: 0 auto; display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(2rem, 6vw, 5rem); align-items: start; }
.nyke-pillars__title { margin: 0; color: var(--nyk-ink, #1d1a18); font-size: clamp(2.1rem, 4vw, 3.2rem); font-weight: 400; letter-spacing: -.035em; line-height: 1.05; }
.nyke-pillars__title em { font-style: normal; font-weight: 650; color: var(--wp--preset--color--primary, #821534); }
.nyke-pillars__lede { margin-top: 1.75rem; }
.nyke-pillars__lede p { margin: 0; max-width: 42ch; color: var(--wp--preset--color--muted, #5f5a55); line-height: 1.7; }
p.nyke-pillars__lede-title { margin-bottom: .4rem; color: var(--nyk-ink, #1d1a18); font-weight: 600; }
.nyke-pillars__list { list-style: none; counter-reset: nyke-p; margin: 0; padding: 0; border-top: 1px solid var(--nyk-ink, #1d1a18); }
.nyke-pillar { counter-increment: nyke-p; display: grid; grid-template-columns: 3.25rem 1fr; column-gap: 1rem; margin: 0; padding: 1.6rem 0; border-bottom: 1px solid var(--nyk-rule, #e6dfd4); }
.nyke-pillar::before { content: counter(nyke-p, decimal-leading-zero); grid-row: span 2; padding-top: .3rem; font-size: .85rem; font-weight: 600; letter-spacing: .08em; color: var(--wp--preset--color--primary, #821534); }
.nyke-pillar__title { margin: 0; color: var(--nyk-ink, #1d1a18); font-size: 1.35rem; font-weight: 600; letter-spacing: -.015em; }
.nyke-pillar__text { margin: .35rem 0 0; color: var(--wp--preset--color--muted, #5f5a55); line-height: 1.65; }
@media (max-width: 900px) { .nyke-pillars__inner { grid-template-columns: 1fr; } }

/* =========================================================
   About: Key Figures, Story & Timeline, Vision & Mission, Values (classic)
   ========================================================= */
.nyke-figures { max-width: 1140px; margin: 0 auto; padding: clamp(3rem, 6vw, 4.5rem) var(--wp--preset--spacing--30, 1.5rem) 0; }
.nyke-figures__lead { margin: 0 0 2.5rem; max-width: 40ch; color: var(--nyk-ink, #1d1a18); font-size: clamp(1.35rem, 2.4vw, 1.85rem); font-weight: 400; letter-spacing: -.02em; line-height: 1.35; }
.nyke-figures__grid { display: grid; grid-template-columns: repeat(4, 1fr); margin: 0; border-top: 1px solid var(--nyk-ink, #1d1a18); }
.nyke-figure { display: flex; flex-direction: column-reverse; justify-content: flex-end; gap: .5rem; padding: 1.5rem 1.5rem 0 0; }
.nyke-figure + .nyke-figure { padding-left: 1.5rem; border-left: 1px solid var(--nyk-rule, #e6dfd4); }
.nyke-figure dd { margin: 0; color: var(--wp--preset--color--primary, #821534); font-size: clamp(2.2rem, 4.5vw, 3.4rem); font-weight: 500; letter-spacing: -.04em; line-height: 1; }
.nyke-figure dt { color: var(--wp--preset--color--muted, #5f5a55); font-size: .92rem; line-height: 1.4; }

.nyke-timeline { max-width: 1140px; margin: 0 auto; padding: clamp(3.5rem, 7vw, 6rem) var(--wp--preset--spacing--30, 1.5rem); display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); gap: clamp(2rem, 6vw, 5rem); align-items: start; }
.nyke-timeline__title { margin: .7rem 0 1.5rem; color: var(--nyk-ink, #1d1a18); font-size: clamp(2rem, 3.6vw, 2.9rem); font-weight: 400; letter-spacing: -.03em; line-height: 1.08; }
.nyke-timeline__title em { font-style: normal; font-weight: 650; color: var(--wp--preset--color--primary, #821534); }
.nyke-timeline__story p { margin: 0 0 1.1em; color: #3a342f; font-size: 1.05rem; line-height: 1.8; }
.nyke-timeline__list { list-style: none; margin: 0; padding: 0; border-left: 1px solid var(--nyk-rule, #e6dfd4); }
.nyke-timeline__list li { position: relative; margin: 0; padding: 0 0 2rem 1.75rem; }
.nyke-timeline__list li::before { content: ""; position: absolute; left: -6px; top: .35rem; width: 11px; height: 11px; border-radius: 50%; background: #fff; border: 2px solid var(--wp--preset--color--primary, #821534); }
.nyke-timeline__list li:last-child { padding-bottom: 0; }
.nyke-timeline__list li:last-child::before { background: var(--wp--preset--color--primary, #821534); }
.nyke-timeline__when { display: block; font: 600 .74rem/1.3 var(--wp--preset--font-family--body, sans-serif); letter-spacing: .14em; text-transform: uppercase; color: var(--wp--preset--color--primary, #821534); }
.nyke-timeline__list h3 { margin: .3rem 0 .25rem; color: var(--nyk-ink, #1d1a18); font-size: 1.15rem; font-weight: 600; }
.nyke-timeline__list p { margin: 0; color: var(--wp--preset--color--muted, #5f5a55); font-size: .94rem; line-height: 1.6; }

.nyke-statements { background: var(--wp--preset--color--ivory, #faf7f1); border-top: 1px solid var(--nyk-rule, #e6dfd4); border-bottom: 1px solid var(--nyk-rule, #e6dfd4); padding: clamp(3.5rem, 7vw, 5.5rem) var(--wp--preset--spacing--30, 1.5rem); }
.nyke-statements__inner { max-width: calc(1140px - 2 * var(--wp--preset--spacing--30, 1.5rem)); margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: clamp(2rem, 6vw, 5rem); }
.nyke-statement { margin: 0; padding-top: 1.25rem; border-top: 1px solid var(--nyk-ink, #1d1a18); }
.nyke-statement figcaption { font: 600 .74rem/1.3 var(--wp--preset--font-family--body, sans-serif); letter-spacing: .16em; text-transform: uppercase; color: var(--wp--preset--color--secondary, #206832); }
.nyke-statement blockquote { margin: 1rem 0 0; padding: 0; border: 0; color: var(--nyk-ink, #1d1a18); font-size: clamp(1.5rem, 2.6vw, 2.1rem); font-weight: 400; font-style: normal; letter-spacing: -.025em; line-height: 1.3; }

.nyke-values { max-width: 1140px; margin: 0 auto; padding: clamp(3.5rem, 7vw, 6rem) var(--wp--preset--spacing--30, 1.5rem); }
.nyke-values__title { margin: 0 0 2.25rem; color: var(--nyk-ink, #1d1a18); font-size: clamp(2rem, 3.6vw, 2.9rem); font-weight: 400; letter-spacing: -.03em; }
.nyke-values__title em { font-style: normal; font-weight: 650; color: var(--wp--preset--color--primary, #821534); }
.nyke-values__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(1.5rem, 4vw, 3rem); }
.nyke-values__group { padding-top: 1.25rem; border-top: 1px solid var(--nyk-ink, #1d1a18); }
.nyke-values__group h3 { margin: 0; color: var(--nyk-ink, #1d1a18); font-size: 1.2rem; font-weight: 600; }
.nyke-values__group > p { margin: .4rem 0 0; color: var(--wp--preset--color--muted, #5f5a55); font-size: .92rem; }
.nyke-values__group ul { list-style: none; margin: 1rem 0 0; padding: 0; }
.nyke-values__group li { margin: 0; padding: .6rem 0; border-bottom: 1px solid var(--nyk-rule, #e6dfd4); color: var(--nyk-ink, #1d1a18); }
.nyke-values__cta { margin-top: clamp(2.5rem, 5vw, 4rem); }
.nyke-values__btns { display: flex; flex-wrap: wrap; gap: .75rem; }
a.nyke-values__btn2 { padding: .95rem 1.7rem; border-radius: 999px; border: 1px solid var(--nyk-ink, #1d1a18); color: var(--nyk-ink, #1d1a18); font-weight: 600; text-decoration: none; }
a.nyke-values__btn2:hover { background: var(--nyk-ink, #1d1a18); color: #fff; }

@media (max-width: 900px) {
	.nyke-figures__grid { grid-template-columns: 1fr 1fr; }
	.nyke-figure:nth-child(3) { border-left: 0; padding-left: 0; }
	.nyke-figure:nth-child(n+3) { border-top: 1px solid var(--nyk-rule, #e6dfd4); margin-top: 1.5rem; }
	.nyke-timeline, .nyke-statements__inner, .nyke-values__grid { grid-template-columns: 1fr; }
}
