/* Shared Walk&know editorial system: Polarsteps-inspired pacing, original W&K identity. */
:root {
	--wkn-sand: #f1f2f5;
	--wkn-cream: #fafafb;
	--wkn-slate: #303242;
	--wkn-night: #1b1d2c;
	--wkn-accent: #c4090b;
	--wkn-coral: #ef7478;
	--wkn-paper: #fff;
}

body { background: #fff; color: #1b1d2c; }
.wk-wrap { width: min(1200px,calc(100% - 56px)); }
html { scroll-padding-top: 104px; }

/* Each interior page opens with a distinct, image-led chapter. */
.wkn-page .wkn-inner-hero {
	min-height: clamp(660px,88svh,820px);
	display: block;
	padding: 112px 0 72px;
	background: var(--wkn-sand);
	color: #1b1d2c;
}
.wkn-page .wkn-inner-hero::before {
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at 80% 16%,rgba(196,9,11,.075) 0 1px,transparent 1.7px) 0 0 / 22px 22px,
		radial-gradient(ellipse at 89% 15%,rgba(196,9,11,.08),transparent 33%);
	content: "";
	opacity: .7;
}
.wkn-page .wkn-inner-hero-grid {
	position: relative;
	display: grid;
	width: min(1200px,calc(100% - 56px));
	min-height: 0;
	grid-template-columns: minmax(0,1.04fr) minmax(330px,.96fr);
	align-items: center;
	gap: clamp(42px,7vw,96px);
	padding: 46px 0 38px;
	text-align: left;
}
.wkn-page .wkn-inner-hero-grid > div:first-child {
	position: relative;
	z-index: 2;
	max-width: 660px;
	margin: 0;
}
.wkn-page .wkn-inner-hero h1 {
	max-width: 730px;
	margin: 0;
	color: #1b1d2c;
	font-size: clamp(54px,6.5vw,88px);
	font-weight: 850;
	letter-spacing: -.078em;
	line-height: .94;
}
.wkn-page .wkn-inner-hero h1 em { color: var(--wkn-accent) !important; font-style: normal; }
.wkn-page .wkn-inner-hero .wkn-kicker {
	justify-content: flex-start;
	margin-bottom: 20px;
	color: #a0080a;
}
.wkn-page .wkn-inner-hero .wkn-kicker > span { background: var(--wkn-accent); box-shadow: 0 0 0 4px rgba(196,9,11,.12); }
.wkn-page .wkn-inner-hero .wkn-lead {
	max-width: 590px;
	margin: 22px 0 0;
	color: #454551;
	font-size: clamp(16px,1.35vw,18px);
	line-height: 1.65;
}
.wkn-page .wkn-inner-hero .wkn-actions { justify-content: flex-start; margin-top: 26px; }
.wkn-page .wkn-inner-hero .wkn-fact-pills { justify-content: flex-start; margin-top: 27px; }
.wkn-page .wkn-inner-hero .wkn-fact-pills span {
	border-color: rgba(27,29,44,.16);
	background: rgba(255,255,255,.52);
	color: #343440;
	font-size: 10px;
}
.wkn-page .wkn-inner-hero .wkn-button {
	min-height: 52px;
	border-color: var(--wkn-accent);
	background: var(--wkn-accent);
	box-shadow: 0 8px 22px rgba(196,9,11,.16);
	color: #fff !important;
}
.wkn-page .wkn-inner-hero .wkn-button:hover { border-color: #1b1d2c; background: #1b1d2c; }
.wkn-page .wkn-inner-hero .wkn-link { color: #1b1d2c; }
.wkn-page .wkn-inner-hero .wkn-link:hover { color: #a0080a; }

/* Photo, app screen, and route graphic each keep their own recognizable shape. */
.wkn-page .wkn-inner-hero .wkn-hero-photo {
	position: relative;
	z-index: 1;
	inset: auto;
	grid-column: 2;
	grid-row: 1;
	width: 100%;
	height: clamp(390px,47vw,540px);
	min-height: 0;
	margin: 0;
	border: 8px solid rgba(255,255,255,.8);
	border-radius: 30px;
	background: #e0e1e8;
	box-shadow: 0 26px 58px rgba(27,29,44,.15);
	transform: rotate(1.1deg);
}
.wkn-page .wkn-inner-hero .wkn-hero-photo img {
	display: block;
	width: 100%;
	height: 100%;
	max-height: none;
	border-radius: 22px;
	object-fit: cover;
	opacity: 1;
	transition: transform .7s cubic-bezier(.2,.8,.2,1);
}
.wkn-page .wkn-inner-hero .wkn-hero-photo:hover img { transform: scale(1.035); }
.wkn-page .wkn-inner-hero .wkn-hero-photo figcaption {
	right: 16px;
	bottom: 16px;
	border-color: rgba(255,255,255,.32);
	background: rgba(20,35,42,.83);
	color: #fff;
	font-size: 10px;
}
.wkn-page .wkn-inner-hero .wkn-solutions-graphic {
	position: relative;
	z-index: 1;
	inset: auto;
	grid-column: 2;
	grid-row: 1;
	width: 100%;
	min-height: 450px;
	border: 1px solid rgba(27,29,44,.08);
	border-radius: 30px;
	background-color: #f5f5f8;
	background-image: radial-gradient(rgba(27,29,44,.16) .75px,transparent .85px);
	background-size: 19px 19px;
	box-shadow: 0 24px 56px rgba(27,29,44,.11);
	opacity: 1;
}
.wkn-page .wkn-inner-hero .wkn-solutions-graphic .wkn-map-label,
.wkn-page .wkn-inner-hero .wkn-solutions-graphic .wkn-map-caption { display: flex; }
.wkn-page .wkn-inner-hero .wkn-solutions-graphic .wkn-map-caption { color: #484753; }
.wkn-page .wkn-inner-hero .wkn-map-label { box-shadow: 0 8px 22px rgba(27,29,44,.12); }
.wkn-page .wkn-inner-hero .wkn-map-label--1 { top: 10%; left: 7%; }
.wkn-page .wkn-inner-hero .wkn-map-label--2 { top: 33%; right: 7%; }
.wkn-page .wkn-inner-hero .wkn-map-label--3 { bottom: 25%; left: 6%; }
.wkn-page .wkn-inner-hero .wkn-map-label--4 { right: 11%; bottom: 9%; }
.wkn-page .wkn-inner-hero .wkn-map-path { animation: wkn-route-drift 10s ease-in-out infinite alternate; }
.wkn-themes-page .wkn-inner-hero .wkn-hero-photo {
	display: flex;
	align-items: center;
	justify-content: center;
	background: radial-gradient(circle at 50% 48%,rgba(196,9,11,.12),transparent 36%),#e9eaf0;
}
.wkn-themes-page .wkn-inner-hero .wkn-hero-photo img {
	position: relative;
	top: auto;
	bottom: auto;
	left: auto;
	width: clamp(205px,23vw,260px);
	height: auto;
	max-height: none;
	border: 0;
	border-radius: 24px;
	object-fit: contain;
	object-position: top center;
	transform: none;
	filter: drop-shadow(0 22px 26px rgba(20,35,42,.22));
}
.wkn-themes-page .wkn-inner-hero .wkn-hero-photo figcaption { display: none; }

/* The app page puts the real interface in the visual lead. */
.wkn-app-page .wkn-inner-hero { background: #eef0f6; }
.wkn-app-page .wkn-inner-hero::before {
	background:
		radial-gradient(ellipse at 78% 56%,rgba(196,9,11,.13),transparent 34%),
		radial-gradient(circle at 84% 20%,rgba(196,9,11,.08) 0 1px,transparent 1.7px) 0 0 / 22px 22px;
}
.wkn-app-page .wkn-inner-hero-grid { grid-template-columns: minmax(0,1.1fr) minmax(300px,.9fr); }
.wkn-app-page .wkn-inner-hero-grid > div:first-child { grid-column: 1; grid-row: 1; }
.wkn-app-page .wkn-inner-hero-device {
	position: relative;
	z-index: 2;
	grid-column: 2;
	grid-row: 1;
	justify-self: center;
	align-self: center;
	bottom: auto;
	left: auto;
	width: clamp(210px,23vw,285px);
	margin: 0;
	transform: rotate(2deg);
	filter: drop-shadow(0 30px 34px rgba(20,35,42,.25));
	animation: wkn-phone-float 7s ease-in-out infinite;
}
.wkn-app-page .wkn-inner-hero-device img { display: block; width: 100%; height: auto; border-radius: 24px; }
.wkn-app-page .wkn-hero-side-note {
	position: absolute;
	z-index: 3;
	right: 0;
	bottom: 15px;
	width: 210px;
	min-height: 112px;
	border: 1px solid rgba(27,29,44,.09);
	border-radius: 18px;
	padding: 15px 18px;
	background: #fff;
	color: #1b1d2c;
	box-shadow: 0 15px 36px rgba(27,29,44,.13);
	text-align: left;
}

/* Shared chapter rhythm and readable content panels. */
.wkn-page .wkn-section { padding-block: clamp(82px,9vw,124px); }
.wkn-page > section:nth-of-type(odd):not(.wkn-inner-hero):not(.wkn-bottom-cta):not(.wkn-theme-end):not(.wkn-content-service):not(.wkn-trust-section) { background: #f7f7f9; }
.wkn-page .wkn-section-head { align-items: end; gap: clamp(28px,6vw,84px); margin-bottom: clamp(34px,5vw,54px); }
.wkn-page .wkn-section-head h2,
.wkn-page .wkn-solutions-contact h2,
.wkn-page .wkn-route-note h2,
.wkn-page .wkn-rollout-grid h2,
.wkn-page .wkn-content-service h2,
.wkn-page .wkn-theme-end h2,
.wkn-page .wkn-bottom-cta h2,
.wkn-page .wkn-trust-section h2 {
	font-size: clamp(43px,5.8vw,74px);
	font-weight: 840;
	letter-spacing: -.077em;
	line-height: .97;
}
.wkn-page .wkn-section-head h2 em,
.wkn-page .wkn-solutions-contact h2 em,
.wkn-page .wkn-route-note h2 em,
.wkn-page .wkn-rollout-grid h2 em { color: var(--wkn-accent); font-family: inherit; font-weight: 840; }
.wkn-page .wkn-section-head > p,
.wkn-page .wkn-section-head--compact > p { max-width: 450px; color: #4e4d57; font-size: 15px; line-height: 1.7; }
.wkn-page .wkn-kicker { color: #a0080a; }
.wkn-page .wkn-audience-grid article,
.wkn-page .wkn-plan-card,
.wkn-page .wkn-story-card,
.wkn-page .wkn-route-steps article,
.wkn-page .wkn-mini-flow article,
.wkn-page .wkn-journey-steps li {
	border-radius: 22px;
	box-shadow: 0 12px 34px rgba(27,29,44,.055);
}
.wkn-page .wkn-audience-grid article,
.wkn-page .wkn-route-steps article { border-top-width: 3px; }
.wkn-page .wkn-audience-grid article { padding: clamp(23px,3vw,34px); background: #fff; }
.wkn-page .wkn-audience-grid h3,
.wkn-page .wkn-story-card h3,
.wkn-page .wkn-route-steps h3 { color: #1b1d2c; }
.wkn-page .wkn-audience-grid p,
.wkn-page .wkn-story-card p,
.wkn-page .wkn-route-steps p,
.wkn-page .wkn-mini-flow p { color: #4f4e58; font-size: 13px; line-height: 1.65; }
.wkn-page .wkn-plan-grid { gap: 18px; align-items: stretch; }
.wkn-page .wkn-plan-card {
	position: relative;
	min-height: 100%;
	border: 1px solid rgba(27,29,44,.1);
	border-radius: 24px;
	padding: clamp(24px,3vw,34px);
	background: #fff;
	box-shadow: 0 14px 36px rgba(27,29,44,.07);
	transition: transform .28s ease, box-shadow .28s ease;
}
.wkn-page .wkn-plan-card:hover { transform: translateY(-6px); box-shadow: 0 23px 48px rgba(27,29,44,.12); }
.wkn-page .wkn-plan-card--pro { background: #fcf0f0; }
.wkn-page .wkn-plan-card--white { border-color: #1b1d2c; background: #1b1d2c; color: #fff; }
.wkn-page .wkn-plan-card h3 { font-size: 34px; }
.wkn-page .wkn-plan-card--white h3 { color: #fff; }
.wkn-page .wkn-plan-card--white .wkn-plan-index { color: #ffb3b5; }
.wkn-page .wkn-plan-intro,
.wkn-page .wkn-plan-note { color: #50505b; font-size: 12px; line-height: 1.6; }
.wkn-page .wkn-plan-card--white .wkn-plan-intro,
.wkn-page .wkn-plan-card--white .wkn-plan-note { color: rgba(255,255,255,.78); }
.wkn-page .wkn-plan-card li { font-size: 12px; line-height: 1.55; }
.wkn-page .wkn-plan-card--white > .wkn-button { color: #1b1d2c !important; }
.wkn-page .wkn-pricing-note { color: #4f4e58; font-size: 11px; }
.wkn-page .wkn-content-service,
.wkn-page .wkn-trust-section,
.wkn-page .wkn-bottom-cta,
.wkn-page .wkn-theme-end {
	background-color: #1b1d2c;
	color: #fff;
}
.wkn-page .wkn-content-service h2,
.wkn-page .wkn-trust-section h2,
.wkn-page .wkn-bottom-cta h2,
.wkn-page .wkn-theme-end h2 { color: #fff; }
.wkn-page .wkn-content-service h2 em,
.wkn-page .wkn-trust-section h2 em,
.wkn-page .wkn-bottom-cta h2 em,
.wkn-page .wkn-theme-end h2 em { color: #ffafb1; }
.wkn-page .wkn-solutions-contact { background: #f9eded; }
.wkn-page .wkn-solutions-contact p:not(.wkn-kicker) { color: #44434e; font-size: 14px; line-height: 1.7; }
.wkn-page .wkn-story-card { overflow: hidden; border: 1px solid rgba(27,29,44,.1); background: #fff; }
.wkn-page .wkn-story-card > img { height: 240px; transition: transform .6s cubic-bezier(.2,.8,.2,1); }
.wkn-page .wkn-story-card:hover > img { transform: scale(1.045); }
.wkn-page .wkn-story-card > div { padding: 22px; }
.wkn-page .wkn-story-card span,
.wkn-page .wkn-plan-index { color: #a0080a; }
.wkn-page .wkn-route-steps { gap: 20px; }
.wkn-page .wkn-route-steps article { min-height: 390px; padding: 24px; background: #f1f2f5; }
.wkn-page .wkn-mini-flow { gap: 14px; border: 0; }
.wkn-page .wkn-mini-flow article,
.wkn-page .wkn-mini-flow article:first-child { min-height: 210px; border: 1px solid rgba(27,29,44,.1); padding: 25px; background: #fff; }
.wkn-page .wkn-mini-flow h3 { margin-top: 24px; font-size: 20px; }
.wkn-page .wkn-journey-steps li { border: 1px solid rgba(27,29,44,.1); background: #fff; }
.wkn-page .wkn-editorial-principle { background: #f8eced; }
.wkn-page .wkn-editorial-principle blockquote p { color: #1b1d2c; }
.wkn-page .wkn-theme-explorer { background: #fff; }
.wkn-page .wkn-theme-note { border-color: rgba(27,29,44,.15); }
.wkn-page .wkn-demo-area { background: #f7f7f9; }
.wkn-page .wkn-demo-area .wk-demo-console { border-color: rgba(27,29,44,.12); border-radius: 22px; box-shadow: 0 14px 38px rgba(27,29,44,.07); }
.wkn-page .wkn-demo-disclaimer { color: #484752; }
.wkn-page .wkn-screen-gallery-section { padding-block: 28px 64px; background: #f7f7f9; }
.wkn-page .wkn-bottom-cta,
.wkn-page .wkn-theme-end { position: relative; overflow: hidden; }
.wkn-page .wkn-bottom-cta::before,
.wkn-page .wkn-theme-end::before { position: absolute; top: -180px; right: -90px; width: 450px; aspect-ratio: 1; border: 1px solid rgba(255,255,255,.18); border-radius: 50%; content: ""; }
.wkn-page .wkn-bottom-cta-inner,
.wkn-page .wkn-theme-end-inner,
.wkn-page .wkn-solutions-contact-inner { position: relative; }
.wkn-page .wkn-bottom-cta .wkn-button--light,
.wkn-page .wkn-theme-end .wkn-button--light { background: #fff; color: #1b1d2c !important; }
.wkn-page .wkn-footer { background: #151724; }

@keyframes wkn-phone-float { 0%,100% { translate: 0 0; } 50% { translate: 0 -10px; } }
@keyframes wkn-route-drift { from { transform: rotate(34deg) translateY(-4px); } to { transform: rotate(34deg) translateY(5px); } }

@media (max-width: 900px) {
	.wkn-page .wkn-inner-hero { min-height: 0; padding: 110px 0 72px; }
	.wkn-page .wkn-inner-hero-grid { grid-template-columns: minmax(0,1fr) minmax(270px,.9fr); gap: 34px; padding: 36px 0 24px; }
	.wkn-page .wkn-inner-hero h1 { font-size: clamp(48px,7vw,70px); }
	.wkn-page .wkn-inner-hero .wkn-hero-photo { height: 420px; }
	.wkn-page .wkn-inner-hero .wkn-solutions-graphic { min-height: 380px; }
	.wkn-page .wkn-section-head { gap: 32px; }
}
@media (max-width: 700px) {
	.wkn-header-inner { gap: 7px; padding: 0 9px 0 12px; }
	.wkn-header .wkn-brand,
	.wkn-header .wk-logo-window { width: 126px; min-width: 126px; height: 33px; flex-shrink: 0; }
	.wkn-header .wk-logo-window img { top: -15px; left: -12px; width: 153px; height: 76.5px; }
	.wkn-header-actions { gap: 4px; }
	.wkn-nav-cta { min-height: 37px; padding-inline: 10px; font-size: 10px; }
	.wkn-menu-toggle { width: 34px; height: 34px; }
	.wk-wrap { width: min(620px,calc(100% - 36px)); }
	.wkn-page .wkn-inner-hero { padding: 96px 0 58px; }
	.wkn-page .wkn-inner-hero-grid,
	.wkn-app-page .wkn-inner-hero-grid { width: min(620px,calc(100% - 36px)); grid-template-columns: 1fr; gap: 32px; padding: 30px 0 16px; }
	.wkn-page .wkn-inner-hero-grid > div:first-child { grid-column: 1; grid-row: 1; }
	.wkn-page .wkn-inner-hero h1 { font-size: clamp(46px,11vw,67px); }
	.wkn-page .wkn-inner-hero .wkn-lead { margin-top: 17px; font-size: 15px; }
	.wkn-page .wkn-inner-hero .wkn-actions { gap: 14px 19px; margin-top: 21px; }
	.wkn-page .wkn-inner-hero .wkn-fact-pills { gap: 7px; margin-top: 20px; }
	.wkn-page .wkn-inner-hero .wkn-fact-pills span { padding: 7px 9px; font-size: 9px; }
	.wkn-page .wkn-inner-hero .wkn-hero-photo { grid-column: 1; grid-row: 2; height: min(108vw,390px); min-height: 260px; border-width: 5px; border-radius: 24px; transform: rotate(.5deg); }
	.wkn-page .wkn-inner-hero .wkn-hero-photo img { border-radius: 18px; }
	.wkn-themes-page .wkn-inner-hero .wkn-hero-photo img { left: auto; bottom: auto; width: 185px; height: auto; max-height: none; transform: none; }
	.wkn-page .wkn-inner-hero .wkn-solutions-graphic { grid-column: 1; grid-row: 2; min-height: 300px; border-radius: 24px; }
	.wkn-app-page .wkn-inner-hero-device { grid-column: 1; grid-row: 2; width: 185px; }
	.wkn-app-page .wkn-hero-side-note { right: 0; bottom: 0; width: 172px; min-height: 92px; padding: 11px 13px; }
	.wkn-app-page .wkn-hero-side-note p { margin: 6px 0 0; font-size: 14px; }
	.wkn-page .wkn-section { padding-block: 72px; }
	.wkn-page .wkn-section-head { display: block; margin-bottom: 30px; }
	.wkn-page .wkn-section-head > p { margin: 16px 0 0; font-size: 14px; }
	.wkn-page .wkn-section-head h2,
	.wkn-page .wkn-solutions-contact h2,
	.wkn-page .wkn-route-note h2,
	.wkn-page .wkn-rollout-grid h2,
	.wkn-page .wkn-content-service h2,
	.wkn-page .wkn-theme-end h2,
	.wkn-page .wkn-bottom-cta h2,
	.wkn-page .wkn-trust-section h2 { font-size: clamp(40px,10vw,58px); }
	.wkn-page .wkn-audience-grid,
	.wkn-page .wkn-mini-flow,
	.wkn-page .wkn-plan-grid { grid-template-columns: 1fr; }
	.wkn-page .wkn-mini-flow article,
	.wkn-page .wkn-mini-flow article:first-child { min-height: 0; }
	.wkn-page .wkn-plan-card--white { display: flex; grid-column: auto; }
	.wkn-page .wkn-plan-card--white .wkn-plan-index,
	.wkn-page .wkn-plan-card--white h3,
	.wkn-page .wkn-plan-card--white .wkn-plan-intro,
	.wkn-page .wkn-plan-card--white .wkn-price,
	.wkn-page .wkn-plan-card--white .wkn-plan-note,
	.wkn-page .wkn-plan-card--white ul,
	.wkn-page .wkn-plan-card--white > .wkn-button { grid-column: auto; }
	.wkn-page .wkn-route-steps { grid-template-columns: 1fr; }
	.wkn-page .wkn-route-steps article { min-height: 340px; }
	.wkn-page .wkn-story-grid { grid-template-columns: 1fr; }
	.wkn-page .wkn-story-card > img { height: 250px; }
	.wkn-page .wkn-editorial-principle-grid { grid-template-columns: 38px 1fr; gap: 14px; }
	.wkn-page .wkn-editorial-stat { grid-column: 2; border-top: 1px solid rgba(27,29,44,.16); border-left: 0; padding: 16px 0 0; }
	.wkn-page .wkn-solutions-contact-inner,
	.wkn-page .wkn-bottom-cta-inner,
	.wkn-page .wkn-theme-end-inner { align-items: flex-start; flex-direction: column; gap: 24px; }
	.wkn-page .wkn-content-service-grid,
	.wkn-page .wkn-rollout-grid { grid-template-columns: 1fr; gap: 30px; }
	.wkn-page .wkn-content-packages { grid-template-columns: 1fr; }
	.wkn-page .wkn-plan-card { padding: 24px; }
}
@media (prefers-reduced-motion: reduce) {
	.wkn-page .wkn-inner-hero .wkn-hero-photo img,
	.wkn-page .wkn-plan-card,
	.wkn-page .wkn-inner-hero .wkn-map-path { transition: none !important; animation: none !important; }
	.wkn-app-page .wkn-inner-hero-device { animation: none !important; }
}
