/*
 * WorkingPrint WP 02 — Home page (patterns/w2-home.php).
 * Figma "Home — Desktop" 450:727 (1920 wide) and "Home — Mobile" 454:1184 (440 wide).
 * All sizes are Figma px × var(--u) (see wp2.css). Class prefix: w2h-.
 *
 * Dirtyline metrics used below (font ships with the theme): ascent .75em, cap height .70em.
 * With line-height:1 the top of a box is the top of the swash capitals, which is where
 * Figma's outlined "wp2/type/…" vectors start; text-box-trimmed Figma text starts .05em lower.
 */

/* ======================================================= 01 · Hero (450:745) */
.w2.w2h-hero { overflow: clip; background: var(--c-white); isolation: isolate; }
.w2h-hero__in { position: relative; width: calc(1920 * var(--u)); height: calc(1200 * var(--u)); margin: 0 auto; }
.w2h-hero__in > * { position: absolute !important; margin: 0 !important; }
/* black column (0–680) runs to the left edge, purple block (1640, 380) to the right edge on wide screens */
.w2h-hero__in::before, .w2h-hero__in::after { content: ""; position: absolute; z-index: 0; }
.w2h-hero__in::before { top: 0; bottom: 0; right: calc(100% - 680 * var(--u)); width: 100vw; background: var(--c-black); }
.w2h-hero__in::after { left: calc(1640 * var(--u)); top: calc(380 * var(--u)); bottom: 0; width: 100vw; background: var(--c-purple); }

/* collage frame 450:748 — flat image and the 3D canvas (hero3d.js) share the same box */
.w2h-hero__collage, .w2h-hero__3d {
	left: calc(566.85 * var(--u)); top: calc(31 * var(--u)); width: calc(1330.51 * var(--u)); height: calc(989.77 * var(--u)); z-index: 1;
}
.w2h-hero figure.w2h-hero__collage img { object-fit: contain; }
.w2h-hero__collage { transition: opacity .6s ease; }
.w2h-hero__collage.is-replaced { opacity: 0; }
.w2h-hero__3d { opacity: 0; transition: opacity .6s ease; overflow: hidden; }
.w2h-hero__3d.is-ready { opacity: 1; }
.w2h-hero__3d canvas { display: block; width: 100% !important; height: 100% !important; }

.w2h-hero__intro { left: calc(80 * var(--u)); top: calc(112 * var(--u)); width: calc(470 * var(--u)); z-index: 3; display: flex; flex-direction: column; align-items: flex-start; }
.w2h-hero__intro > * { margin: 0 !important; }
.w2h-hero__name { --fs: 84; line-height: 1.2; letter-spacing: 1px; white-space: nowrap; margin-top: calc(20 * var(--u)) !important; }
.w2h-hero__disc { letter-spacing: .8px; margin-top: calc(-3 * var(--u)) !important; }
.w2h-hero__text { --fs: 21; color: rgba(255, 255, 255, .85); max-width: calc(459 * var(--u)); margin-top: calc(30 * var(--u)) !important; }
.w2h-hero__btns { flex-direction: column; align-items: flex-start; margin-top: calc(68 * var(--u)) !important; }

/* "Art / Director" — live Dirtyline; Director inverts across the black column, white page and collage */
.w2h-hero__art, .w2h-hero__director { --fs: 340; line-height: 1; letter-spacing: .6px; pointer-events: none; }
.w2h-hero__art { left: calc(80 * var(--u)); top: calc(664 * var(--u)); z-index: 4; color: var(--c-white); }
.w2h-hero__director { left: calc(64 * var(--u)); top: calc(902 * var(--u)); z-index: 5; color: var(--c-white); mix-blend-mode: difference; }

.w2h-hero__hint {
	left: calc(738 * var(--u)); top: calc(869 * var(--u)); z-index: 6; display: flex; align-items: center; gap: calc(12 * var(--u));
	--fs: 13; letter-spacing: .5px; line-height: 1.3; white-space: nowrap; background: var(--c-white); color: var(--c-black); pointer-events: none;
}
.w2h-hero__hint::before { content: ""; flex: none; width: max(8px, calc(10 * var(--u))); height: max(8px, calc(10 * var(--u))); border-radius: 50%; background: var(--c-pink); }

.w2h-hero__stat { left: calc(1693 * var(--u)); top: calc(653 * var(--u)); z-index: 3; display: flex; flex-direction: column; }
.w2h-hero__stat > * { margin: 0 !important; }
.w2h-hero__num { --fs: 150; line-height: .85; }
.w2h-hero__statlabel { --fs: 13; width: calc(200 * var(--u)); margin: calc(12.5 * var(--u)) 0 0 calc(4 * var(--u)) !important; }
.w2h-hero__scroll { left: calc(1676 * var(--u)); top: calc(1140 * var(--u)); z-index: 3; --fs: 13; letter-spacing: 1px; }
.w2h-hero__scroll a:hover { color: var(--c-yellow); }

/* tooltip copy lives in the page (editable) but is only shown through the pop-up built by hero3d.js */
.w2h-hero__tips { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.w2h-tip-pop {
	position: absolute; left: 0; top: 0; z-index: 30; box-sizing: border-box;
	width: max(280px, calc(486 * var(--u))); padding: max(22px, calc(50 * var(--u)));
	display: flex; flex-direction: column; gap: max(12px, calc(25 * var(--u)));
	background: var(--c-black); color: var(--c-white);
	border: max(8px, calc(15 * var(--u))) solid var(--c-yellow);
	box-shadow: max(10px, calc(20 * var(--u))) max(10px, calc(20 * var(--u))) 0 rgba(98, 55, 255, .75);
	pointer-events: none; opacity: 0; visibility: hidden;
	transition: opacity .18s ease, visibility 0s linear .18s;
}
.w2h-tip-pop.is-on { opacity: 1; visibility: visible; transition: opacity .18s ease; }
.w2h-tip-pop > * { margin: 0 !important; }
.w2h-tip-pop h3 { font-family: var(--f-dirty); font-weight: 400; font-size: max(22px, calc(30 * var(--u))); line-height: 1; }
.w2h-tip-pop p { font-family: var(--f-body); font-size: max(14px, calc(16 * var(--u))); line-height: 1.75; white-space: normal; }
.w2h-tip-pop a { color: inherit; }

@media (max-width: 899px) {
	.w2h-hero__in { width: calc(440 * var(--u)); height: calc(1160 * var(--u)); }
	.w2h-hero__in::before { right: auto; left: calc(50% - 50vw); bottom: auto; width: 100vw; height: calc(560 * var(--u)); }
	.w2h-hero__in::after { left: calc(336 * var(--u)); top: calc(740 * var(--u)); }
	.w2h-hero__collage, .w2h-hero__3d { left: calc(-30.23 * var(--u)); top: calc(652 * var(--u)); width: calc(517.26 * var(--u)); height: calc(384.79 * var(--u)); }
	.w2h-hero__intro { left: calc(24 * var(--u)); top: calc(32 * var(--u)); width: calc(392 * var(--u)); }
	.w2h-hero__name { --fs: 56; margin-top: calc(10 * var(--u)) !important; }
	.w2h-hero__disc { margin-top: calc(3 * var(--u)) !important; }
	.w2h-hero__text { --fs: 17; max-width: none; margin-top: calc(16 * var(--u)) !important; }
	.w2h-hero__btns { align-self: stretch; gap: calc(12 * var(--u)); margin-top: calc(62 * var(--u)) !important; }
	.w2h-hero__art { --fs: 122; --fmin: 0px; left: calc(24 * var(--u)); top: calc(470 * var(--u)); }
	.w2h-hero__director { --fs: 89.2; --fmin: 0px; left: calc(24 * var(--u)); top: calc(580 * var(--u)); }
	.w2h-hero__stat { left: calc(24 * var(--u)); top: calc(1040 * var(--u)); color: var(--c-black); flex-direction: row; align-items: flex-start; gap: calc(14 * var(--u)); }
	.w2h-hero__num { --fs: 72; }
	.w2h-hero__statlabel { --fs: 12; width: calc(180 * var(--u)); margin: calc(3.5 * var(--u)) 0 0 !important; }
}

/* full-width buttons on phones (Figma mobile buttons are 392 wide, label left, arrow right) */
@media (max-width: 899px) {
	.w2h-hero__btns .w2-btn, .w2h-case1__btn .w2-btn, .w2h-card .w2-btn, .w2h-work__all-m .w2-btn { width: 100%; }
	.w2h-hero__btns .w2-btn .wp-block-button__link, .w2h-case1__btn .w2-btn .wp-block-button__link,
	.w2h-card .w2-btn .wp-block-button__link, .w2h-work__all-m .w2-btn .wp-block-button__link { width: 100%; justify-content: space-between; font-size: max(14px, calc(18 * var(--u))); }
	.w2h-hero__btns .w2-btn .wp-block-button__link:hover, .w2h-case1__btn .w2-btn .wp-block-button__link:hover,
	.w2h-card .w2-btn .wp-block-button__link:hover, .w2h-work__all-m .w2-btn .wp-block-button__link:hover { transform: none; }
}

/* ======================================================= 02 · Client logos (450:789) */
.w2h-clients { border-top: 1px solid var(--c-black); border-bottom: 1px solid var(--c-black); overflow: clip; }
.w2h-clients__in { display: flex; align-items: center; gap: calc(183 * var(--u)); box-sizing: border-box; max-width: calc(1920 * var(--u)); height: calc(198 * var(--u)); margin: 0 auto; padding-left: calc(100 * var(--u)); }
.w2h-clients__in > * { margin: 0 !important; flex: none; }
.w2h-clients__label { white-space: nowrap; }
.w2h-logos { display: flex; align-items: center; gap: calc(62 * var(--u)); }
.w2h-logos > * { margin: 0 !important; }
.w2h-logo { --k: 1; flex: none; width: calc(var(--w) * var(--k) * var(--u)); height: calc(var(--h) * var(--k) * var(--u)); opacity: .9; transition: opacity .2s ease, filter .2s ease; }
.w2h-logo.is-vertiv { --w: 116; --h: 28; opacity: 1; }
.w2h-logo.is-dkny { --w: 140; --h: 37.84; }
.w2h-logo.is-pfizer { --w: 100.53; --h: 48; }
.w2h-logo.is-xerox { --w: 96; --h: 21; }
.w2h-logo.is-pepperidge { --w: 120.62; --h: 48; }
.w2h-logo.is-kettle { --w: 88.8; --h: 48; }
.w2h-logo.is-goldfish { --w: 118.4; --h: 48; }
.w2h-logo.is-audible { --w: 133.2; --h: 48; }
.w2h-clients figure.w2h-logo img { object-fit: contain; }
@media (hover: hover) {
	.w2h-logos:hover .w2h-logo { opacity: .45; }
	.w2h-logos .w2h-logo:hover { opacity: 1; }
}
@media (max-width: 899px) {
	.w2h-clients__in { display: block; height: auto; padding: calc(28 * var(--u)) var(--gx) calc(34 * var(--u)); }
	.w2h-logos { display: grid; grid-template-columns: repeat(3, 1fr); grid-auto-rows: calc(34 * var(--u)); row-gap: calc(26 * var(--u)); margin-top: calc(27 * var(--u)) !important; }
	.w2h-logo { --k: .72; justify-self: center; align-self: center; }
	.w2h-logo.is-dkny, .w2h-logo.is-xerox { --k: .743; }
}

/* ======================================================= 03 · Selected work (450:802) */
.w2h-work__in { padding-top: calc(120 * var(--u)); padding-bottom: calc(140 * var(--u)); }
.w2h-work__in > * { margin: 0 !important; }
.w2h-work__head { display: grid; grid-template-columns: calc(1100 * var(--u)) 1fr; }
.w2h-work__head > *, .w2h-work__title > *, .w2h-work__aside > * { margin: 0 !important; }
.w2h-work__word { --fs: 274; line-height: 1; height: calc(220 * var(--u)); margin-top: calc(30 * var(--u)) !important; }
.w2h-work__aside { padding-top: calc(70 * var(--u)); }
.w2h-work__intro { --fs: 22; line-height: 1.55; max-width: calc(560 * var(--u)); }
.w2h-work__count { color: var(--c-black); margin-top: calc(62 * var(--u)) !important; }
.w2h-work__all { margin-top: calc(32 * var(--u)) !important; }

/* case 01 — featured */
.w2h-case1 { display: grid; grid-template-columns: calc(1100 * var(--u)) 1fr; align-items: start; margin-top: calc(86 * var(--u)) !important; }
.w2h-case1 > * { margin: 0 !important; }
.w2h-case1__media { position: relative; width: calc(1100 * var(--u)); height: calc(880 * var(--u)); margin-left: calc(-72 * var(--u)) !important; }
.w2h-case1__media > * { margin: 0 !important; }
.w2h-case1__img { position: absolute !important; inset: 0; }
.w2h-case1__phone { position: absolute !important; left: calc(390 * var(--u)); top: calc(-68 * var(--u)); width: calc(180 * var(--u)); height: calc(960 * var(--u)); transition: transform .35s ease; }
.w2h-case1:hover .w2h-case1__phone { transform: translateY(calc(-12 * var(--u))); }
.w2h-case1__text { display: flex; flex-direction: column; align-items: flex-start; gap: calc(24 * var(--u)); width: calc(660 * var(--u)); }
.w2h-case1__text > * { margin: 0 !important; }
.w2h-case1__index { display: grid; grid-template-columns: auto 1fr; align-items: end; column-gap: calc(20 * var(--u)); row-gap: calc(24 * var(--u)); }
.w2h-case1__index > * { margin: 0 !important; }
.w2h-case1__num { --fs: 140; line-height: .8; color: var(--c-pink); }
.w2h-case1__kicker { --fs: 13; color: var(--c-black); }
.w2h-case1__name { grid-column: 1 / -1; --fs: 80; line-height: .9; white-space: nowrap; }
.w2h-case1__text .w2-rule { max-width: calc(600 * var(--u)); }
.w2h-meta { display: flex; gap: calc(40 * var(--u)); }
.w2h-meta > *, .w2h-meta__item > *, .w2h-block > * { margin: 0 !important; }
.w2h-meta__item { display: flex; flex-direction: column; gap: calc(6 * var(--u)); }
.w2h-k { --fs: 12; font-weight: 400; color: rgba(0, 0, 0, .55); }
.w2h-v { font-family: var(--f-body); font-weight: 500; font-size: max(15px, calc(18 * var(--u))); line-height: 1.2; white-space: nowrap; }
.w2h-block { display: flex; flex-direction: column; gap: calc(8 * var(--u)); max-width: calc(600 * var(--u)); }
.w2h-block .w2h-k { --fs: 13; font-weight: 500; }
.w2h-block__text { --fs: 19; line-height: 1.55; }
.w2h-result, .w2h-result .w2h-k { color: var(--c-pink); }
.w2h-result__text { --fs: 16; line-height: 1.55; text-transform: none; letter-spacing: 0; }
.w2h-case1__name a, .w2h-card__name a { transition: color .2s ease; }
.w2h-case1__name a:hover, .w2h-card__name a:hover { color: var(--c-purple); }

/* accent bars (separator blocks) */
hr.w2h-accent { border: 0 !important; width: 100%; height: calc(10 * var(--u)) !important; margin: 0 !important; opacity: 1; background: var(--c-purple); }
hr.w2h-accent.is-yellow { background: var(--c-yellow); }

/* cases 02 + 03 (wp2/project-card) */
.w2h-cards { display: grid; grid-template-columns: repeat(2, 1fr); column-gap: calc(40 * var(--u)); margin-top: calc(100 * var(--u)) !important; }
.w2h-card { display: flex; flex-direction: column; align-items: flex-start; gap: calc(22 * var(--u)); }
.w2h-card > *, .w2h-card__title > *, .w2h-card__meta > * { margin: 0 !important; }
.w2h-card__img { width: 100%; height: calc(560 * var(--u)); overflow: hidden; }
.w2 .w2h-card__img img { transition: transform .6s cubic-bezier(.2, .7, .2, 1); }
.w2h-card:hover .w2h-card__img img { transform: scale(1.035); }
.w2h-card__title { display: flex; align-items: flex-end; gap: calc(20 * var(--u)); }
.w2h-card__num { --fs: 72; line-height: .85; color: var(--c-pink); }
.w2h-card__name { --fs: 64; line-height: .9; white-space: nowrap; }
.w2h-desc { --fs: 20; line-height: 1.55; max-width: calc(760 * var(--u)); }
.w2h-card__meta { display: flex; gap: calc(48 * var(--u)); }
.w2h-card__meta .w2h-meta__item { gap: calc(8 * var(--u)); width: calc(340 * var(--u)); }
.w2h-card__meta .w2h-result { width: calc(300 * var(--u)); }
.w2h-card__meta .w2h-k { --fs: 13; font-weight: 500; }
.w2h-card__meta .w2h-v { font-weight: 400; font-size: max(15px, calc(17 * var(--u))); line-height: 1.55; white-space: normal; }
.w2h-card__meta .w2h-result__text { --fs: 15; }

@media (max-width: 899px) {
	.w2h-work__in { padding-top: calc(56 * var(--u)); padding-bottom: calc(72 * var(--u)); }
	.w2h-work__head { display: block; }
	.w2h-work__word { --fs: 124.6; height: calc(100 * var(--u)); margin-top: calc(28 * var(--u)) !important; }
	.w2h-work__aside { }
	.w2h-work__intro { --fs: 17; max-width: none; }

	.w2h-case1 { display: flex; flex-direction: column; align-items: stretch; gap: calc(16 * var(--u)); margin-top: calc(28 * var(--u)) !important; }
	.w2h-case1__media { width: 100%; height: calc(300 * var(--u)); margin-left: 0 !important; }
	.w2h-case1__img-m { height: 100%; }
	hr.w2h-accent { height: calc(8 * var(--u)) !important; }
	.w2h-case1__text { width: auto; gap: calc(16 * var(--u)); }
	.w2h-case1__index { display: flex; align-items: flex-end; gap: calc(14 * var(--u)); }
	.w2h-case1__num { --fs: 56; line-height: .85; }
	.w2h-case1__name { --fs: 44; }
	.w2h-desc { --fs: 17; max-width: none; }
	.w2h-meta { flex-direction: column; gap: calc(6 * var(--u)); }
	.w2h-meta__item, .w2h-card__meta .w2h-meta__item { gap: calc(6 * var(--u)); width: auto; }
	.w2h-k, .w2h-block .w2h-k, .w2h-card__meta .w2h-k { --fs: 11; font-weight: 400; }
	.w2h-v, .w2h-card__meta .w2h-v { font-weight: 500; font-size: max(14px, calc(16 * var(--u))); line-height: 1.2; }
	.w2h-result__text, .w2h-card__meta .w2h-result__text { --fs: 14; }
	.w2h-case1__btn { align-self: stretch; }
	.w2h-case1__btn .w2-btn.is-purple .wp-block-button__link { background: transparent; border-color: var(--c-black); color: var(--c-black); }

	.w2h-cards { grid-template-columns: 1fr; row-gap: calc(28 * var(--u)); margin-top: calc(28 * var(--u)) !important; }
	.w2h-card { gap: calc(16 * var(--u)); align-items: stretch; }
	.w2h-card > .w2-tags, .w2h-card__title { align-self: flex-start; }
	.w2h-card__img { height: calc(300 * var(--u)); }
	.w2h-card__title { gap: calc(14 * var(--u)); }
	.w2h-card__num { --fs: 56; }
	.w2h-card__name { --fs: 44; }
	.w2h-card__meta { flex-direction: column; gap: calc(6 * var(--u)); }
	.w2h-work__all-m { margin-top: calc(28 * var(--u)) !important; }
}

/* ======================================================= 04 · AI workflow (451:796) */
.w2.w2h-ai { background: var(--c-yellow); color: var(--c-black); overflow-x: clip; scroll-margin-top: 24px; }
.w2h-ai__in { display: grid; grid-template-columns: calc(540 * var(--u)) 1fr; padding-top: calc(120 * var(--u)); padding-bottom: calc(60 * var(--u)); }
.w2h-ai__in > * { margin: 0 !important; position: relative; z-index: 1; }
.w2h-ai__in > .w2h-ai__phones { position: absolute !important; z-index: 0; left: calc(1328.5 * var(--u)); top: calc(-60 * var(--u)); width: calc(675.66 * var(--u)); height: calc(689.4 * var(--u)); }
.w2h-ai figure.w2h-ai__phones img { object-fit: contain; }
.w2h-ai__label { grid-column: 1 / -1; }
.w2h-ai__word { --fs: 520; line-height: 1; height: calc(420 * var(--u)); margin-top: calc(32 * var(--u)) !important; }
.w2h-ai__copy { margin-top: calc(42 * var(--u)) !important; }
.w2h-ai__copy > * { margin: 0 !important; }
.w2h-ai__head { --fs: 150; line-height: .88; white-space: nowrap; }
.w2h-ai__intro { --fs: 24; line-height: 1.55; max-width: calc(780 * var(--u)); margin-top: calc(26 * var(--u)) !important; }

/* wp2/step-card 451:795 */
.w2h-steps { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(4, 1fr); gap: calc(24 * var(--u)); margin-top: calc(110 * var(--u)) !important; }
.w2h-step { box-sizing: border-box; display: flex; flex-direction: column; gap: calc(16 * var(--u)); min-height: calc(400 * var(--u)); padding: calc(36 * var(--u)); background: var(--c-black); color: var(--c-white); transition: transform .25s ease, box-shadow .25s ease; }
.w2h-step > * { margin: 0 !important; }
.w2h-step:hover { transform: translate(calc(-6 * var(--u)), calc(-6 * var(--u))); box-shadow: calc(12 * var(--u)) calc(12 * var(--u)) 0 var(--c-purple); }
.w2h-step__num { --fs: 96; line-height: .85; color: var(--c-yellow); }
.w2h-step__title { --fs: 44; line-height: 1.2; letter-spacing: 1px; }
.w2h-step__text { --fs: 18; line-height: 1.55; color: rgba(255, 255, 255, .82); max-width: calc(350 * var(--u)); }

.w2h-ai__foot { grid-column: 1 / -1; display: grid; grid-template-columns: calc(1100 * var(--u)) 1fr; column-gap: calc(100 * var(--u)); align-items: start; margin-top: calc(70 * var(--u)) !important; }
.w2h-ai__foot > * { margin: 0 !important; }
.w2h-proof { box-sizing: border-box; display: grid; grid-template-columns: calc(520 * var(--u)) auto; column-gap: calc(92 * var(--u)); min-height: calc(330 * var(--u)); padding: calc(41 * var(--u)) calc(45 * var(--u)); background: var(--c-white); border: 3px solid var(--c-black); box-shadow: calc(20 * var(--u)) calc(20 * var(--u)) 0 rgba(98, 55, 255, .85); }
.w2h-proof > *, .w2h-proof__main > * { margin: 0 !important; }
.w2h-proof__label { --fs: 13; }
.w2h-proof__title { --fs: 80; line-height: .9; margin-top: calc(15 * var(--u)) !important; }
.w2h-proof__text { --fs: 20; line-height: 1.55; margin-top: calc(28 * var(--u)) !important; }
.w2h-pipe { display: flex; flex-direction: column; gap: calc(12 * var(--u)); padding-top: calc(26 * var(--u)); }
.w2h-pipe > * { margin: 0 !important; }
.w2h-pipe__row { display: flex; align-items: center; gap: calc(12 * var(--u)); }
.w2h-pipe__row > * { margin: 0 !important; }
.w2h-pipe__num { --fs: 32; line-height: 1.2; color: var(--c-purple); }
.w2h-pipe__txt { --fs: 14; letter-spacing: .6px; line-height: 1.2; white-space: nowrap; }
.w2h-toolkit { display: flex; flex-direction: column; gap: calc(16 * var(--u)); margin-top: calc(10 * var(--u)) !important; }
.w2h-toolkit > * { margin: 0 !important; }
.w2h-toolkit__label { --fs: 13; }
.w2h-toolkit .w2-tags { max-width: calc(560 * var(--u)); }
.w2h-toolkit__note { --fs: 13; line-height: 1.6; }

@media (max-width: 899px) {
	.w2h-ai__in { display: flex; flex-direction: column; gap: calc(24 * var(--u)); padding-top: calc(56 * var(--u)); padding-bottom: calc(72 * var(--u)); }
	.w2h-ai__in > .w2h-ai__phones { left: calc(200.82 * var(--u)); top: calc(70 * var(--u)); width: calc(273.48 * var(--u)); height: calc(279.04 * var(--u)); }
	.w2h-ai__word { --fs: 210; height: calc(170 * var(--u)); margin-top: 0 !important; }
	.w2h-ai__copy { margin-top: 0 !important; }
	.w2h-ai__head { --fs: 68; line-height: .9; }
	.w2h-ai__intro { --fs: 17; margin-top: calc(24 * var(--u)) !important; }
	.w2h-steps { display: flex; flex-direction: column; margin-top: 0 !important; }
	.w2h-step { min-height: 0; gap: calc(10 * var(--u)); padding: calc(24 * var(--u)); }
	.w2h-step__num { --fs: 56; }
	.w2h-step__title { --fs: 34; }
	.w2h-step__text { --fs: 16; max-width: none; }
	.w2h-ai__foot { display: flex; flex-direction: column; gap: calc(24 * var(--u)); margin-top: 0 !important; }
	.w2h-proof { display: flex; flex-direction: column; gap: calc(14 * var(--u)); width: calc(380 * var(--u)); min-height: 0; padding: calc(28 * var(--u)) calc(24 * var(--u)); box-shadow: calc(12 * var(--u)) calc(12 * var(--u)) 0 rgba(98, 55, 255, .85); }
	.w2h-proof__label { --fs: 12; }
	.w2h-proof__title { --fs: 56; margin-top: 0 !important; }
	.w2h-proof__text { --fs: 16; margin-top: 0 !important; }
	.w2h-proof__line { --fs: 12; letter-spacing: .4px; }
	.w2h-toolkit { gap: calc(24 * var(--u)); margin-top: 0 !important; }
	.w2h-toolkit__label { --fs: 12; }
}

/* ======================================================= 05 · Capabilities (451:860) */
.w2h-caps__in { padding-top: calc(120 * var(--u)); padding-bottom: calc(160 * var(--u)); }
.w2h-caps__in > * { margin: 0 !important; }
.w2h-caps__head { display: grid; grid-template-columns: calc(920 * var(--u)) 1fr; }
.w2h-caps__head > * { margin: 0 !important; }
.w2h-caps__label { grid-column: 1 / -1; }
.w2h-caps__word { --fs: 320; line-height: 1; height: calc(240 * var(--u)); margin-top: calc(32 * var(--u)) !important; }
.w2h-stats { display: flex; gap: calc(40 * var(--u)); margin-top: calc(62 * var(--u)) !important; }
.w2h-stats > *, .w2h-stat > * { margin: 0 !important; }
.w2h-stat { display: flex; flex-direction: column; gap: calc(6 * var(--u)); width: calc(170 * var(--u)); }
.w2h-stat__num { --fs: 104; line-height: .85; white-space: nowrap; }
.w2h-stat__label { --fs: 13; line-height: 1.3; }
.w2h-caplist { display: grid; grid-template-columns: repeat(3, 1fr); column-gap: calc(40 * var(--u)); row-gap: calc(100 * var(--u)); margin-top: calc(110 * var(--u)) !important; }
.w2h-cap { display: flex; flex-direction: column; }
.w2h-cap > * { margin: 0 !important; }
.w2h-cap__num { --fs: 13; margin-top: calc(23 * var(--u)) !important; }
.w2h-cap__title { --fs: 52; line-height: .95; margin-top: calc(11 * var(--u)) !important; white-space: nowrap; }
.w2h-cap__text { --fs: 19; line-height: 1.55; max-width: calc(500 * var(--u)); margin-top: calc(21 * var(--u)) !important; }
.w2h-cap .w2-rule { transform-origin: left; transition: transform .4s ease; }
.w2h-cap:hover .w2-rule { background: var(--c-pink); }

@media (max-width: 899px) {
	.w2h-caps__in { padding-top: calc(56 * var(--u)); padding-bottom: calc(72 * var(--u)); }
	.w2h-caps__head { display: block; }
	.w2h-caps__word { --fs: 138.5; height: calc(104 * var(--u)); margin-top: calc(28 * var(--u)) !important; }
	.w2h-stats { display: grid; grid-template-columns: repeat(2, 1fr); gap: calc(20 * var(--u)) calc(24 * var(--u)); margin-top: calc(28 * var(--u)) !important; }
	.w2h-stat { width: auto; gap: calc(4 * var(--u)); }
	.w2h-stat__num { --fs: 72; }
	.w2h-stat__label { --fs: 11; --fmin: 10px; }
	.w2h-caplist { display: flex; flex-direction: column; gap: calc(28 * var(--u)); margin-top: calc(28 * var(--u)) !important; }
	.w2h-cap { gap: calc(8 * var(--u)); }
	.w2h-cap > * { margin-top: 0 !important; }
	.w2h-cap__num { --fs: 12; }
	.w2h-cap__title { --fs: 40; white-space: normal; }
	.w2h-cap__text { --fs: 16; max-width: none; }
}

/* ======================================================= 06 · Testimonial (485:11722) */
.w2.w2h-quote { background: var(--c-purple); color: var(--c-white); z-index: 1; }
.w2h-quote__in { display: grid; grid-template-columns: calc(180 * var(--u)) 1fr; padding-top: calc(40 * var(--u)); padding-bottom: calc(110 * var(--u)); }
.w2h-quote__in > * { margin: 0 !important; position: relative; z-index: 1; }
.w2h-quote__in > .w2h-quote__img { position: absolute !important; z-index: 0; left: calc(1440 * var(--u)); top: calc(-90 * var(--u)); width: calc(480.12 * var(--u)); height: calc(546.77 * var(--u)); }
.w2h-quote__mark { --fs: 360; line-height: .8; color: rgba(255, 255, 255, .35); }
.w2h-quote__body { margin-top: calc(70 * var(--u)) !important; }
.w2h-quote__body > * { margin: 0 !important; }
.w2h-quote__text { --fs: 84; line-height: .95; max-width: calc(988 * var(--u)); }
.w2h-quote__by { --fs: 15; color: var(--c-white); margin-top: calc(120 * var(--u)) !important; }
@media (max-width: 899px) {
	.w2h-quote__in { display: flex; flex-direction: column; gap: calc(20 * var(--u)); padding-top: calc(48 * var(--u)); padding-bottom: calc(64 * var(--u)); }
	.w2h-quote__mark { --fs: 160; line-height: .6; }
	.w2h-quote__body { display: flex; flex-direction: column; gap: calc(20 * var(--u)); margin-top: 0 !important; }
	.w2h-quote__text { --fs: 44; max-width: none; }
	.w2h-quote__by { --fs: 12; margin-top: 0 !important; }
}

@media (prefers-reduced-motion: reduce) {
	.w2h-hero__collage, .w2h-hero__3d, .w2h-card__img img, .w2h-case1__phone, .w2h-step { transition: none !important; }
	.w2h-card:hover .w2h-card__img img, .w2h-case1:hover .w2h-case1__phone, .w2h-step:hover { transform: none; }
}
