/* Redesign 3.1 — מהכביש ועד היעד. */
:root {
	--v3-ink: #07182c;
	--v3-navy: #041326;
	--v3-blue: #0968ef;
	--v3-ice: #e9f3ff;
	--v3-paper: #f7f9fc;
	--v3-orange: #ff9d20;
	--v3-line: rgba(7, 24, 44, .14);
	--v3-shadow: 0 30px 80px rgba(3, 18, 38, .18);
}

.gerer-v3 { background: var(--v3-paper); overflow-x: clip; }
.gerer-v3 h1 { font-size: clamp(2.75rem, 4vw, 3rem); }
.gerer-v3 h2 { font-size: clamp(2rem, 3vw, 2rem); }
.gerer-v3 h3 { font-size: clamp(1.28rem, 2vw, 1.44rem); }
.gerer-v3 p { font-size: clamp(1rem, 1.35vw, 1.1rem); }

.gerer-v3 .site-header {
	position: fixed;
	inset: 0 0 auto;
	z-index: 300;
	background: linear-gradient(180deg, rgba(2, 13, 27, .9), rgba(2, 13, 27, .5));
	border-bottom-color: rgba(255, 255, 255, .13);
	transition: background-color .25s ease, box-shadow .25s ease;
}
.gerer-v3 .site-header .header-inner { min-height: 5rem; }
.gerer-v3 .site-header .brand-logo img { filter: drop-shadow(0 0 3px rgba(255,255,255,.95)) drop-shadow(0 0 10px rgba(255,255,255,.42)); }
.gerer-v3 .site-header .primary-navigation a { color: #fff; }
.gerer-v3 .site-header .header-call { background: var(--v3-blue); box-shadow: 0 10px 30px rgba(9,104,239,.3); }
.gerer-v3 .site-header .header-call span { color: #fff; }
.gerer-v3 .site-header.is-scrolled { background: rgba(255,255,255,.97); border-bottom-color: var(--v3-line); box-shadow: 0 12px 35px rgba(7,24,44,.1); }
.gerer-v3 .site-header.is-scrolled .primary-navigation a { color: var(--v3-ink); }
.gerer-v3 .site-header.is-scrolled .brand-logo img { filter: none; }
.gerer-v3 .footer-brand .brand-logo { padding: .35rem 0; background: transparent; }
.gerer-v3 .footer-brand .brand-logo img { filter: drop-shadow(0 0 3px rgba(255,255,255,.95)) drop-shadow(0 0 9px rgba(255,255,255,.45)); }

.v3-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .65rem;
	min-height: 3.5rem;
	padding: .82rem 1.18rem;
	border: 1px solid transparent;
	border-radius: .3rem;
	font-weight: 800;
	line-height: 1.15;
	text-decoration: none;
	transition: transform .2s ease, background-color .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.v3-button:hover { transform: translateY(-2px); }
.v3-button .icon { width: 1.3rem; height: 1.3rem; }
.v3-button-primary { background: var(--v3-blue); color: #fff; box-shadow: 0 15px 38px rgba(9,104,239,.34); }
.v3-button-primary:hover { background: #0757cb; color: #fff; }
.v3-button-whatsapp { background: rgba(7,24,44,.58); border-color: rgba(255,255,255,.5); color: #fff; backdrop-filter: blur(12px); }
.v3-button-whatsapp:hover { background: #157d49; border-color: #157d49; color: #fff; }
.v3-button-dark { background: var(--v3-ink); color: #fff; }
.v3-button-dark:hover { background: var(--v3-blue); color: #fff; }

/* Cinematic hero. */
.v3-hero { position: relative; min-height: max(760px, 100svh); display: grid; align-items: center; overflow: hidden; background: var(--v3-navy); color: #fff; }
.v3-hero-media { position: absolute; inset: 0; width: 100%; height: 100%; background: radial-gradient(circle at 20% 42%, #234d75 0%, #0b2d50 34%, var(--v3-navy) 68%); }
.v3-hero-media img, .v3-hero-media video { position: absolute; inset: 0 auto 0 4vw; width: min(42vw, 506px); height: 100%; object-fit: cover; object-position: 50% 50%; -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 8%, #000 88%, transparent 100%); mask-image: linear-gradient(90deg, transparent 0, #000 8%, #000 88%, transparent 100%); }
.v3-hero-media video { z-index: 1; }
.v3-hero-media img { z-index: 0; }
.v3-hero-shade { position: absolute; inset: 0; z-index: 2; background: linear-gradient(90deg, rgba(3,16,31,.04) 0%, rgba(3,16,31,.18) 35%, rgba(3,16,31,.74) 61%, rgba(3,16,31,.98) 100%), linear-gradient(0deg, rgba(3,16,31,.72), transparent 55%); }
.v3-hero-shade::after { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 17% 32%, rgba(255,157,32,.19), transparent 25%), linear-gradient(110deg, transparent 45%, rgba(9,104,239,.15)); }
.v3-hero-depth { position: absolute; z-index: 2; border: 1px solid rgba(255,255,255,.18); transform: skewX(-18deg); pointer-events: none; }
.v3-hero-depth-back { width: 32vw; height: 62vh; inset: 14% auto auto -14%; }
.v3-hero-depth-front { width: 46vw; height: 34vh; inset: auto -25% -12% auto; border-color: rgba(9,104,239,.46); }
.v3-hero-content { position: relative; z-index: 3; width: min(1240px, calc(100% - 4rem)); padding-top: 6rem; }
.v3-hero-copy { width: min(560px, 48%); margin-inline-start: 0; margin-inline-end: auto; }
.v3-hero-brand { margin: 0 0 1rem; color: #bcd9ff; font-size: 1rem; font-weight: 800; }
.v3-hero h1 { max-width: 11.5em; margin: 0 0 1.2rem; color: #fff; text-wrap: balance; }
.v3-hero-lead { max-width: 35rem; margin-bottom: 1.65rem; color: #e7f0fb; line-height: 1.75; }
.v3-hero-actions { display: flex; flex-wrap: wrap; gap: .8rem; }
.v3-hero-hours { display: flex; align-items: center; gap: .55rem; margin: 1.15rem 0 0; color: #d4e2f0; font-size: .94rem; }
.v3-hero-hours .icon { color: var(--v3-orange); }
.v3-scroll-cue { position: absolute; z-index: 4; inset: auto 50% 1.5rem auto; transform: translateX(50%); display: grid; justify-items: center; gap: .45rem; color: #fff; font-size: .8rem; text-decoration: none; }
.v3-scroll-cue i { width: 1px; height: 42px; background: linear-gradient(#fff, transparent); }
.v3-video-toggle { position: absolute; z-index: 5; inset: auto auto 1.6rem 1.6rem; min-height: 2.75rem; padding: .55rem .85rem; border: 1px solid rgba(255,255,255,.5); border-radius: .25rem; background: rgba(3,16,31,.62); color: #fff; font-weight: 750; cursor: pointer; backdrop-filter: blur(10px); }
.v3-video-toggle:hover { background: rgba(3,16,31,.88); }

/* Scroll story. */
.v3-road-story { position: relative; background: var(--v3-navy); color: #fff; }
.v3-road-scene { position: relative; min-height: 100svh; overflow: hidden; display: grid; align-items: center; background: linear-gradient(180deg, #031426 0%, #0a3057 52%, var(--v3-ice) 52.2%, var(--v3-ice) 100%); }
.v3-road-horizon { position: absolute; inset: 48% 0 auto; height: 22%; background: linear-gradient(172deg, transparent 0 38%, #14283d 38.3% 54%, #20384f 54.2% 100%); }
.v3-road-line { position: absolute; inset: 55% -8% auto; height: 16%; transform: rotate(-4deg); background: #17212b; box-shadow: 0 -5px 0 rgba(255,255,255,.3), 0 35px 65px rgba(2,13,27,.35); }
.v3-road-line span { position: absolute; inset: 48% 0 auto; border-top: 4px dashed rgba(255,255,255,.85); }
.v3-road-truck { position: absolute; z-index: 2; inset: 46% auto auto 8%; width: 8rem; height: 8rem; padding: 1.5rem; border-radius: 50%; background: var(--v3-orange); color: var(--v3-navy); box-shadow: 0 20px 45px rgba(3,16,31,.38); }
.v3-road-truck .icon { width: 100%; height: 100%; stroke-width: 1.5; }
.v3-road-content { position: relative; z-index: 3; min-height: 100svh; display: grid; grid-template-rows: 1fr 1fr; padding-block: 8rem 6rem; }
.v3-road-heading { align-self: start; max-width: 620px; margin-inline-start: auto; }
.v3-road-heading h2 { color: #fff; }
.v3-road-heading p { color: #c9ddf0; }
.v3-capability-list { align-self: end; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: rgba(7,24,44,.15); border: 1px solid rgba(7,24,44,.16); box-shadow: var(--v3-shadow); }
.v3-capability-list article { min-height: 190px; padding: 2rem; background: rgba(255,255,255,.96); }
.v3-capability-list strong { display: block; color: var(--v3-ink); font-size: clamp(1.5rem, 2.7vw, 2.15rem); line-height: 1.15; }
.v3-capability-list p { margin: .7rem 0 0; font-size: .98rem; }

/* Interactive services. */
.v3-services { padding: clamp(6rem, 10vw, 9rem) 0; background: #fff; }
.v3-section-intro { max-width: 720px; margin-inline-start: auto; margin-bottom: 3rem; }
.v3-section-intro h2 { margin-bottom: 1rem; }
.v3-section-intro p { max-width: 610px; margin-bottom: 0; }
.v3-service-desktop { display: grid; grid-template-columns: minmax(270px, .72fr) minmax(0, 1.75fr); min-height: 650px; background: var(--v3-navy); box-shadow: var(--v3-shadow); }
.v3-service-tabs { display: flex; flex-direction: column; padding: 1.1rem; background: #06182b; }
.v3-service-tab { flex: 1; display: grid; grid-template-columns: 2.8rem minmax(0,1fr) auto; align-items: center; gap: .8rem; min-height: 80px; padding: 1rem; border: 0; border-bottom: 1px solid rgba(255,255,255,.1); background: transparent; color: #cedcec; text-align: start; cursor: pointer; transition: background-color .2s ease, color .2s ease, padding-inline-start .2s ease; }
.v3-service-tab > span { display: grid; place-items: center; width: 2.7rem; height: 2.7rem; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; }
.v3-service-tab > .icon { width: 1.1rem; }
.v3-service-tab.is-active { padding-inline-start: 1.3rem; background: #fff; color: var(--v3-ink); }
.v3-service-tab.is-active > span { border-color: var(--v3-blue); color: var(--v3-blue); }
.v3-service-panel { position: relative; min-width: 0; display: grid; grid-template-rows: minmax(0,1fr) auto; margin: 0; overflow: hidden; background: #fff; }
.v3-service-picture { position: relative; min-height: 440px; overflow: hidden; background: #d9e3ec; }
.v3-service-picture img { width: 100%; height: 100%; object-fit: cover; transition: opacity .26s ease, transform .55s ease; }
.v3-service-picture span { position: absolute; inset: 1rem auto auto 1rem; padding: .28rem .55rem; background: rgba(3,16,31,.72); color: #fff; font-size: .72rem; }
.v3-service-panel.is-changing img { opacity: .08; transform: scale(1.025); }
.v3-service-copy { display: grid; grid-template-columns: 1fr minmax(220px, 1.35fr) auto; align-items: center; gap: 1.2rem; padding: 1.6rem 1.8rem; }
.v3-service-copy h3 { margin: 0; }
.v3-service-copy p { margin: 0; font-size: .96rem; line-height: 1.55; }
.v3-service-copy a, .v3-services-all a, .v3-editorial-copy > a, .v3-heavy-content a, .v3-safety-copy > a { display: inline-flex; align-items: center; gap: .45rem; color: #0758cf; font-weight: 800; text-decoration: none; }
.v3-service-copy a .icon, .v3-services-all a .icon, .v3-editorial-copy > a .icon, .v3-heavy-content a .icon, .v3-safety-copy > a .icon { width: 1rem; transition: transform .2s ease; }
.v3-service-copy a:hover .icon, .v3-services-all a:hover .icon, .v3-editorial-copy > a:hover .icon, .v3-heavy-content a:hover .icon, .v3-safety-copy > a:hover .icon { transform: translateX(-.3rem); }
.v3-service-mobile { display: none; }
.v3-services-all { margin: 2rem 0 0; text-align: left; }

/* Full-bleed heavy towing. */
.v3-heavy { position: relative; min-height: 72svh; display: grid; align-items: end; overflow: hidden; background: var(--v3-navy); }
.v3-heavy > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 52%; }
.v3-heavy-shade { position: absolute; inset: 0; background: linear-gradient(0deg, rgba(3,16,31,.96), rgba(3,16,31,.15) 76%); }
.v3-heavy-content { position: relative; z-index: 2; padding-block: 6rem 4.5rem; }
.v3-heavy-content h2 { max-width: 560px; color: #fff; }
.v3-heavy-content p { max-width: 620px; color: #d8e6f4; }
.v3-heavy-content a { color: #fff; }

/* Route and direct brand section. */
.v3-route { padding: clamp(6rem, 10vw, 9rem) 0; background: var(--v3-ice); }
.v3-route-grid { display: grid; grid-template-columns: .78fr 1.22fr; align-items: center; gap: clamp(3rem, 7vw, 7rem); }
.v3-route-copy p { max-width: 520px; }
.v3-route-map { position: relative; min-height: 440px; }
.v3-route-map svg { width: 100%; height: auto; }
.v3-route-base, .v3-route-progress { fill: none; stroke-linecap: round; stroke-width: 8; }
.v3-route-base { stroke: rgba(7,24,44,.15); }
.v3-route-progress { stroke: var(--v3-blue); stroke-dasharray: 1; stroke-dashoffset: 1; }
.v3-route-point { position: absolute; display: grid; grid-template-columns: auto auto; align-items: center; gap: .45rem; color: var(--v3-ink); }
.v3-route-point .icon { width: 2rem; height: 2rem; padding: .4rem; border-radius: 50%; background: #fff; color: var(--v3-blue); box-shadow: 0 10px 28px rgba(7,24,44,.16); }
.v3-route-origin { inset: auto auto 2rem 1rem; }
.v3-route-destination { inset: 2.2rem 2.5rem auto auto; }
.v3-route-marker { position: absolute; inset: auto auto 4.4rem 2.2rem; width: 3.8rem; height: 3.8rem; padding: .8rem; border-radius: 50%; background: var(--v3-orange); color: var(--v3-ink); box-shadow: 0 12px 30px rgba(7,24,44,.2); }
.v3-route-marker .icon { width: 100%; height: 100%; }
.v3-brand-direct { padding: clamp(5rem, 8vw, 7.5rem) 0; background: var(--v3-blue); color: #fff; }
.v3-brand-direct-grid { display: grid; grid-template-columns: 1.15fr .85fr; align-items: center; gap: 3rem; }
.v3-brand-direct h2 { color: #fff; }
.v3-brand-direct p { max-width: 650px; margin: 0; color: #fff; }
.v3-direct-number { display: grid; justify-items: start; padding-inline-start: clamp(1.5rem,4vw,4rem); border-inline-start: 1px solid rgba(255,255,255,.35); }
.v3-direct-number > span { color: #fff; font-weight: 700; }
.v3-direct-number > a { color: #fff; font-size: clamp(2rem, 4vw, 3.3rem); font-weight: 900; line-height: 1.1; text-decoration: none; }
.v3-direct-number small { margin-top: .7rem; color: #fff; }

/* Process, safety, conversion. */
.v3-process { padding: clamp(6rem, 9vw, 8rem) 0; background: #fff; }
.v3-process-line { position: relative; display: grid; grid-template-columns: repeat(3,1fr); gap: 3rem; margin: 0; padding: 0; list-style: none; counter-reset: none; }
.v3-process-line::before { content: ""; position: absolute; inset: 2.1rem 9% auto; border-top: 2px solid #c9d9e8; }
.v3-process-line li { position: relative; display: grid; justify-items: start; }
.v3-process-line li > span { position: relative; z-index: 1; display: grid; place-items: center; width: 4.25rem; height: 4.25rem; margin-bottom: 1.2rem; border-radius: 50%; background: var(--v3-navy); color: #fff; box-shadow: 0 0 0 9px #fff; }
.v3-process-line li:nth-child(2) > span { background: var(--v3-blue); }
.v3-process-line li:nth-child(3) > span { background: var(--v3-orange); color: var(--v3-ink); }
.v3-process-line h3 { margin-bottom: .45rem; }
.v3-safety { padding: clamp(6rem, 9vw, 8rem) 0; background: #eef2f6; }
.v3-safety-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(3rem,6vw,6rem); }
.v3-safety-copy { padding: clamp(2rem,4vw,4rem); background: var(--v3-navy); color: #fff; }
.v3-safety-copy h2 { color: #fff; }
.v3-safety-copy p { color: #d0deec; }
.v3-safety-copy > a { color: #fff; }
.v3-safety-icon { display: grid; place-items: center; width: 4rem; height: 4rem; margin-bottom: 2rem; border-radius: 50%; background: var(--v3-orange); color: var(--v3-ink); }
.v3-safety-icon .icon { width: 2rem; height: 2rem; }
.v3-faq h2 { margin-bottom: 1.5rem; }
.v3-faq details { border-top: 1px solid #bdc9d5; }
.v3-faq details:last-child { border-bottom: 1px solid #bdc9d5; }
.v3-faq summary { min-height: 4.4rem; display: flex; align-items: center; justify-content: space-between; font-size: 1.08rem; font-weight: 800; cursor: pointer; }
.v3-faq summary::after { content: "+"; font-size: 1.6rem; color: var(--v3-blue); }
.v3-faq details[open] summary::after { content: "−"; }
.v3-faq details p { padding-bottom: 1rem; }
.v3-contact { padding: clamp(6rem, 9vw, 8rem) 0; background: var(--v3-navy); color: #fff; }
.v3-contact-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(3rem, 7vw, 7rem); align-items: start; }
.v3-contact-copy { position: sticky; top: 8rem; }
.v3-contact-copy h2 { color: #fff; }
.v3-contact-copy p { color: #cfdeed; }
.v3-contact-phone { display: grid; grid-template-columns: auto 1fr; gap: .1rem .75rem; align-items: center; margin-top: 2rem; color: #fff; text-decoration: none; }
.v3-contact-phone .icon { grid-row: 1 / 3; width: 3rem; height: 3rem; padding: .75rem; border-radius: 50%; background: var(--v3-orange); color: var(--v3-ink); }
.v3-contact-phone span { color: #cfdeed; }
.v3-contact-phone strong { font-size: clamp(1.9rem,3.6vw,2.8rem); }
.v3-form { padding: clamp(1.5rem, 3vw, 2.5rem); background: #fff; color: var(--v3-ink); box-shadow: var(--v3-shadow); }
.v3-form h2, .v3-form h3 { color: var(--v3-ink); }

/* Editorial archive. */
.post-type-archive-service .site-header { background: linear-gradient(180deg, rgba(2,13,27,.94), rgba(2,13,27,.62)); }
.v3-archive-hero { position: relative; min-height: 78svh; display: grid; align-items: end; overflow: hidden; background: var(--v3-navy); color: #fff; }
.v3-archive-hero-media, .v3-archive-hero-media img, .v3-archive-hero-shade { position: absolute; inset: 0; width: 100%; height: 100%; }
.v3-archive-hero-media img { object-fit: cover; object-position: center; }
.v3-archive-hero-shade { background: linear-gradient(90deg, rgba(3,16,31,.3), rgba(3,16,31,.7) 48%, rgba(3,16,31,.97) 100%), linear-gradient(0deg, rgba(3,16,31,.92), transparent 65%); }
.v3-archive-hero-copy { position: relative; z-index: 2; padding-block: 10rem 5rem; }
.v3-archive-hero-copy > p { margin-bottom: .75rem; color: #bcd9ff; font-weight: 800; }
.v3-archive-hero-copy h1 { max-width: 760px; color: #fff; }
.v3-archive-hero-copy > div { display: flex; flex-wrap: wrap; gap: .65rem; margin-bottom: 1.5rem; }
.v3-archive-hero-copy > div span { padding: .35rem .65rem; border: 1px solid rgba(255,255,255,.35); color: #fff; font-weight: 700; }
.v3-breadcrumbs { padding-block: 1.1rem; }
.v3-archive-intro { padding: 5rem 0 4rem; background: #fff; }
.v3-archive-intro .shell { max-width: 950px; margin-inline-start: max(1rem, calc((100% - 1180px)/2)); }
.v3-archive-intro p { max-width: 760px; }
.v3-editorial-service { padding: clamp(5rem,9vw,8rem) 0; overflow: hidden; }
.v3-editorial-grid { display: grid; grid-template-columns: 1.2fr .8fr; align-items: center; gap: clamp(3rem,7vw,7rem); }
.v3-editorial-media { position: relative; min-width: 0; }
.v3-editorial-media img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; box-shadow: var(--v3-shadow); }
.v3-editorial-media > span { position: absolute; inset: 1rem auto auto 1rem; padding: .28rem .55rem; background: rgba(3,16,31,.72); color: #fff; font-size: .72rem; }
.v3-editorial-icon { display: grid; place-items: center; width: 4rem; height: 4rem; margin-bottom: 1.4rem; border-radius: 50%; background: var(--v3-blue); color: #fff; }
.v3-editorial-icon .icon { width: 2rem; height: 2rem; }
.v3-editorial-copy ul { display: grid; gap: .55rem; margin: 1.3rem 0 1.7rem; padding: 0; list-style: none; }
.v3-editorial-copy li { display: flex; align-items: center; gap: .5rem; color: #33465b; }
.v3-editorial-copy li .icon { width: 1rem; color: var(--v3-blue); }
.v3-editorial-service.is-featured { background: var(--v3-ice); }
.v3-editorial-service.is-featured .v3-editorial-grid { grid-template-columns: 1.45fr .55fr; }
.v3-editorial-service.is-featured .v3-editorial-media img { aspect-ratio: 16 / 9; }
.v3-editorial-service.is-split { background: #fff; }
.v3-editorial-service.is-split .v3-editorial-media { order: 2; }
.v3-editorial-service.is-immersive { position: relative; min-height: 78svh; display: grid; align-items: end; background: var(--v3-navy); }
.v3-editorial-service.is-immersive .v3-editorial-grid { display: block; }
.v3-editorial-service.is-immersive .v3-editorial-media { position: absolute; inset: 0; }
.v3-editorial-service.is-immersive .v3-editorial-media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(3,16,31,.98), rgba(3,16,31,.18)); }
.v3-editorial-service.is-immersive .v3-editorial-media img { width: 100%; height: 100%; aspect-ratio: auto; object-fit: cover; box-shadow: none; }
.v3-editorial-service.is-immersive .v3-editorial-copy { position: relative; z-index: 2; max-width: 680px; padding-top: 20rem; color: #fff; }
.v3-editorial-service.is-immersive h2, .v3-editorial-service.is-immersive a { color: #fff; }
.v3-editorial-service.is-immersive p, .v3-editorial-service.is-immersive li { color: #d7e5f2; }
.v3-editorial-service.is-immersive .v3-editorial-icon { background: var(--v3-orange); color: var(--v3-ink); }
.v3-editorial-service.is-editorial { background: #fff; }
.v3-editorial-service.is-editorial .v3-editorial-grid { grid-template-columns: .8fr 1.2fr; }
.v3-editorial-service.is-editorial .v3-editorial-media img { aspect-ratio: 4 / 5; }
.v3-editorial-service.is-safety { background: var(--v3-navy); color: #fff; }
.v3-editorial-service.is-safety h2, .v3-editorial-service.is-safety a { color: #fff; }
.v3-editorial-service.is-safety p, .v3-editorial-service.is-safety li { color: #d1deeb; }
.v3-editorial-service.is-safety .v3-editorial-icon { background: var(--v3-orange); color: var(--v3-ink); }
.v3-archive-cta { padding: 5rem 0; background: var(--v3-blue); color: #fff; }
.v3-archive-cta-grid { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 3rem; }
.v3-archive-cta h2 { color: #fff; }
.v3-archive-cta p { color: #fff; }
.v3-archive-cta-grid > div:last-child { display: flex; flex-wrap: wrap; gap: .7rem; }
.v3-archive-cta .v3-button-primary { background: #fff; color: var(--v3-ink); }

/* Initial states only when motion is available. */
.motion-ready [data-v3-reveal] { opacity: 1; transform: translateY(28px); }
.motion-ready [data-v3-image-reveal] { clip-path: inset(0 0 100% 0); }

@media (max-width: 960px) {
	.gerer-v3 .site-header .header-inner { grid-template-columns: 1fr auto auto; }
	.gerer-v3 .site-header .menu-toggle { border-color: rgba(255,255,255,.35); background: rgba(3,16,31,.72); color: #fff; }
	.gerer-v3 .site-header.is-scrolled .menu-toggle { border-color: var(--v3-line); background: #fff; color: var(--v3-ink); }
	.gerer-v3 .site-header .primary-navigation { background: rgba(3,16,31,.98); }
	.gerer-v3 .site-header .primary-navigation a,
	.gerer-v3 .site-header.is-scrolled .primary-navigation a { color: #fff; }
	.v3-hero-content { width: min(100% - 2rem, 1180px); }
	.v3-hero-copy { width: min(620px, 58%); }
	.v3-hero-shade { background: linear-gradient(90deg, rgba(3,16,31,.38), rgba(3,16,31,.78) 58%, rgba(3,16,31,.97)); }
	.v3-service-desktop { grid-template-columns: minmax(230px,.7fr) minmax(0,1.3fr); }
	.v3-service-copy { grid-template-columns: 1fr; }
	.v3-route-grid { gap: 2.5rem; }
	.v3-editorial-grid, .v3-editorial-service.is-featured .v3-editorial-grid { gap: 3rem; }
}

@media (max-width: 720px) {
	.gerer-v3 { padding-bottom: 4rem; }
	.gerer-v3 h1 { font-size: clamp(1.95rem, 9vw, 2.125rem); }
	.gerer-v3 h2 { font-size: clamp(1.55rem, 7vw, 1.7rem); }
	.gerer-v3 h3 { font-size: 1.25rem; }
	.gerer-v3 p { font-size: 1rem; }
	.gerer-v3 .site-header .header-inner { grid-template-columns: 1fr auto; min-height: 4.4rem; }
	.gerer-v3 .site-header .brand-logo img { width: 188px; max-height: 3.5rem; }
	.gerer-v3 .site-header .header-call { display: none; }
	.gerer-v3 .site-header .menu-toggle { min-width: 3rem; justify-content: center; }
	.gerer-v3 .site-header .menu-toggle > span:last-child { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
	.v3-hero { min-height: 100svh; align-items: end; }
	.v3-hero-media img, .v3-hero-media video { inset: 0; width: 100%; object-position: 50% 50%; -webkit-mask-image: none; mask-image: none; }
	.v3-hero-shade { background: linear-gradient(0deg, rgba(3,16,31,.99) 0%, rgba(3,16,31,.84) 43%, rgba(3,16,31,.16) 80%); }
	.v3-hero-content { padding: 9rem 0 5rem; }
	.v3-hero-copy { width: 100%; margin: 0; }
	.v3-hero-brand { margin-bottom: .6rem; }
	.v3-hero-lead { line-height: 1.55; }
	.v3-hero-actions { display: grid; grid-template-columns: 1fr; }
	.v3-button { width: 100%; }
	.v3-scroll-cue, .v3-video-toggle { display: none; }
	.v3-road-scene { min-height: auto; background: linear-gradient(180deg, #031426 0%, #0a3057 45%, var(--v3-ice) 45.2%); }
	.v3-road-horizon { inset-block-start: 42%; }
	.v3-road-line { inset-block-start: 48%; height: 9%; }
	.v3-road-truck { inset: 43% auto auto 6%; width: 5.5rem; height: 5.5rem; padding: 1rem; }
	.v3-road-content { min-height: auto; display: block; padding: 6rem 0 4rem; }
	.v3-road-heading { min-height: 44vh; }
	.v3-road-heading p { max-width: 18rem; }
	.v3-capability-list { grid-template-columns: 1fr; gap: 0; }
	.v3-capability-list article { min-height: 0; padding: 1.35rem 1.2rem; border-bottom: 1px solid var(--v3-line); }
	.v3-service-desktop { display: none; }
	.v3-service-mobile { display: block; border-top: 1px solid var(--v3-line); }
	.v3-service-mobile details { border-bottom: 1px solid var(--v3-line); }
	.v3-service-mobile summary { display: grid; grid-template-columns: 2.8rem 1fr auto; align-items: center; gap: .75rem; min-height: 4.7rem; list-style: none; cursor: pointer; }
	.v3-service-mobile summary::-webkit-details-marker { display: none; }
	.v3-service-mobile summary > span { display: grid; place-items: center; width: 2.6rem; height: 2.6rem; border-radius: 50%; background: var(--v3-ice); color: var(--v3-blue); }
	.v3-service-mobile summary > .icon { width: 1rem; transition: transform .2s ease; }
	.v3-service-mobile details[open] summary > .icon { transform: rotate(-90deg); }
	.v3-service-mobile-body { padding-bottom: 1.5rem; }
	.v3-service-mobile-body img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; margin-bottom: 1rem; }
	.v3-service-mobile-body a { display: inline-flex; align-items: center; gap: .4rem; font-weight: 800; text-decoration: none; }
	.v3-heavy { min-height: 76svh; }
	.v3-heavy-content { padding-block: 5rem 2.5rem; }
	.v3-route-grid, .v3-brand-direct-grid, .v3-safety-grid, .v3-contact-grid { grid-template-columns: 1fr; }
	.v3-route-map { min-height: 300px; }
	.v3-route-origin { inset-block-end: .5rem; }
	.v3-route-destination { inset: 1rem .5rem auto auto; }
	.v3-route-marker { inset: auto auto 2rem 1.5rem; width: 3.1rem; height: 3.1rem; }
	.v3-direct-number { padding: 1.5rem 0 0; border-inline-start: 0; border-top: 1px solid rgba(255,255,255,.35); }
	.v3-process-line { grid-template-columns: 1fr; gap: 1.8rem; }
	.v3-process-line::before { inset: 2rem 2rem 2rem auto; border-top: 0; border-inline-start: 2px solid #c9d9e8; }
	.v3-process-line li { grid-template-columns: 4.25rem 1fr; align-items: start; gap: 1rem; }
	.v3-process-line li > span { margin: 0; }
	.v3-safety-copy { padding: 2rem 1.35rem; }
	.v3-contact-copy { position: static; }
	.v3-contact-phone strong { font-size: 1.9rem; }
	.v3-archive-hero { min-height: 72svh; }
	.v3-archive-hero-media img { object-position: 46% center; }
	.v3-archive-hero-shade { background: linear-gradient(0deg, rgba(3,16,31,.99), rgba(3,16,31,.25)); }
	.v3-archive-hero-copy { padding-block: 9rem 3.5rem; }
	.v3-archive-intro { padding: 3.5rem 0 2.5rem; }
	.v3-editorial-grid, .v3-editorial-service.is-featured .v3-editorial-grid, .v3-editorial-service.is-editorial .v3-editorial-grid { grid-template-columns: 1fr; gap: 2rem; }
	.v3-editorial-service.is-split .v3-editorial-media { order: 0; }
	.v3-editorial-service.is-editorial .v3-editorial-media img { aspect-ratio: 4 / 3; }
	.v3-editorial-service.is-immersive { min-height: 80svh; }
	.v3-editorial-service.is-immersive .v3-editorial-copy { padding-top: 16rem; }
	.v3-archive-cta-grid { grid-template-columns: 1fr; gap: 1.5rem; }
	.v3-archive-cta-grid > div:last-child { display: grid; }
}

@media (prefers-reduced-motion: reduce) {
	.v3-hero-media video { display: none; }
	.v3-video-toggle { display: none; }
	.v3-service-picture img, .v3-service-tab, .v3-button, .v3-service-mobile summary > .icon { transition: none !important; }
	.motion-ready [data-v3-reveal] { opacity: 1; transform: none; }
	.motion-ready [data-v3-image-reveal] { clip-path: none; }
}

@media (forced-colors: active) {
	.v3-button, .v3-service-tab, .v3-video-toggle { border: 2px solid currentColor; }
	.v3-route-progress, .v3-route-base { stroke: CanvasText; }
}

/* Production interior pages. */
.v3-interior { background: var(--v3-paper); color: var(--v3-ink); }
.v3-interior h1 { font-size: clamp(2.35rem, 4vw, 2.625rem); }
.v3-interior h2 { font-size: clamp(1.75rem, 3vw, 2rem); }
.v3-breadcrumbs { padding-block: 1rem; }
.v3-interior-hero { position: relative; min-height: 660px; display: grid; align-items: end; overflow: hidden; background: var(--v3-navy); color: #fff; }
.v3-interior-hero > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 46% 50%; }
.v3-interior-hero-shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(4,19,38,.16) 0%, rgba(4,19,38,.66) 52%, rgba(4,19,38,.98) 100%); }
.v3-interior-hero-copy { position: relative; z-index: 1; width: min(1240px, calc(100% - 4rem)); padding-block: 10rem 5rem; }
.v3-interior-hero-copy > * { max-width: 610px; }
.v3-interior-hero-copy > p:first-child { color: #bcd9ff; font-weight: 800; }
.v3-interior-hero-copy h1 { color: #fff; margin: 0 0 1rem; }
.v3-interior-hero-copy > p:not(:first-child) { color: #e2edf8; font-size: 1.12rem; }

.v3-about-story { padding: 6rem 0; }
.v3-about-story-grid { display: grid; grid-template-columns: minmax(280px,.72fr) minmax(0,1.28fr); gap: clamp(3rem,8vw,8rem); align-items: start; }
.v3-about-statement { position: sticky; top: 7rem; padding-inline-start: 1.5rem; border-inline-start: 4px solid var(--v3-blue); }
.v3-about-statement > span { display: grid; place-items: center; width: 3.8rem; height: 3.8rem; margin-bottom: 2rem; background: var(--v3-blue); color: #fff; }
.v3-about-statement .icon { width: 1.8rem; }
.v3-about-principles { padding: 6rem 0; background: #eaf3fd; }
.v3-principles-grid { display: grid; grid-template-columns: repeat(3,1fr); margin-top: 2rem; border-block: 1px solid var(--v3-line); }
.v3-principles-grid article { padding: 2rem; border-inline-end: 1px solid var(--v3-line); }
.v3-principles-grid article:last-child { border-inline-end: 0; }
.v3-principles-grid .icon { width: 2rem; height: 2rem; margin-bottom: 2.8rem; color: var(--v3-blue); }
.v3-about-services { padding: 6rem 0; background: #fff; }
.v3-about-service-list { display: grid; grid-template-columns: 1fr 1fr; margin-top: 2rem; border-top: 1px solid var(--v3-line); }
.v3-about-service-list a { display: grid; grid-template-columns: 3.1rem 1fr auto; align-items: center; gap: 1rem; min-height: 6rem; padding: 1rem; color: var(--v3-ink); text-decoration: none; border-bottom: 1px solid var(--v3-line); }
.v3-about-service-list a:nth-child(odd) { border-inline-end: 1px solid var(--v3-line); }
.v3-about-service-list a > span { display: grid; place-items: center; width: 3rem; height: 3rem; color: var(--v3-blue); background: var(--v3-ice); border-radius: 50%; }
.v3-about-service-list a:hover { background: var(--v3-ice); }

.v3-service-hero { position: relative; min-height: 680px; overflow: hidden; background: var(--v3-navy); color: #fff; }
.v3-service-hero-media, .v3-service-hero-shade { position: absolute; inset: 0; }
.v3-service-hero-media img { width: 100%; height: 100%; object-fit: cover; }
.v3-service-hero-shade { background: linear-gradient(90deg, rgba(4,19,38,.16), rgba(4,19,38,.72) 55%, rgba(4,19,38,.99)); }
.v3-service-hero-grid { position: relative; z-index: 1; display: grid; align-items: end; min-height: 680px; padding-block: 10rem 5rem; }
.v3-service-hero-copy { max-width: 650px; }
.v3-service-hero-copy h1 { margin: 0 0 1rem; color: #fff; }
.v3-service-hero-copy > p { color: #e7f0fa; font-size: 1.12rem; }
.v3-service-hero-icon { display: grid; place-items: center; width: 4rem; height: 4rem; margin-bottom: 1.5rem; color: #fff; background: var(--v3-blue); }
.v3-service-hero-icon .icon { width: 2rem; height: 2rem; }
.v3-service-hero.is-split .v3-service-hero-media { inset-inline: 0 auto; width: 52%; }
.v3-service-hero.is-split .v3-service-hero-shade { background: linear-gradient(90deg, transparent 0 35%, rgba(4,19,38,.86) 60%, var(--v3-navy) 100%); }
.v3-service-hero.is-immersive { min-height: 82svh; }
.v3-service-hero.is-immersive .v3-service-hero-grid { min-height: 82svh; align-items: end; }
.v3-service-hero.is-immersive .v3-service-hero-shade { background: linear-gradient(0deg, rgba(4,19,38,.98), rgba(4,19,38,.12) 72%); }
.v3-service-hero.is-editorial { min-height: 620px; background: #fff; color: var(--v3-ink); }
.v3-service-hero.is-editorial .v3-service-hero-media { inset-inline: 0 auto; width: 48%; }
.v3-service-hero.is-editorial .v3-service-hero-shade { background: linear-gradient(90deg, transparent 0 42%, rgba(255,255,255,.84) 58%, #fff 78%); }
.v3-service-hero.is-editorial .v3-service-hero-grid { min-height: 620px; }
.v3-service-hero.is-editorial .v3-service-hero-copy h1 { color: var(--v3-ink); }
.v3-service-hero.is-editorial .v3-service-hero-copy > p { color: #40546b; }
.v3-service-hero.is-safety .v3-service-hero-icon { background: var(--v3-orange); color: var(--v3-navy); }
.v3-service-hero.is-safety .v3-service-hero-shade { background: linear-gradient(90deg, rgba(4,19,38,.24), rgba(4,19,38,.84) 58%, #041326 100%); border-bottom: 7px solid var(--v3-orange); }

.v3-service-answer { padding: 5rem 0; background: #fff; }
.v3-service-answer-grid { display: grid; grid-template-columns: minmax(0,1fr) 360px; gap: clamp(3rem,7vw,7rem); align-items: start; }
.v3-service-answer-lead p { font-size: 1.1rem; line-height: 1.8; }
.v3-service-facts { display: grid; border-top: 4px solid var(--v3-blue); background: var(--v3-paper); box-shadow: var(--v3-shadow); }
.v3-service-facts > div { display: grid; grid-template-columns: auto 1fr; gap: .2rem .85rem; padding: 1.25rem; border-bottom: 1px solid var(--v3-line); }
.v3-service-facts > div:last-child { border-bottom: 0; }
.v3-service-facts .icon { grid-row: 1 / 3; width: 1.45rem; color: var(--v3-blue); }
.v3-service-facts span { color: #5b6f84; font-size: .86rem; }
.v3-service-body { padding: 6rem 0; background: var(--v3-paper); }
.v3-service-body-grid { display: grid; grid-template-columns: minmax(340px,.85fr) minmax(0,1.15fr); gap: clamp(3rem,8vw,8rem); align-items: start; }
.v3-service-secondary { position: sticky; top: 7rem; margin: 0; overflow: hidden; }
.v3-service-secondary img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; }
.v3-service-secondary figcaption { position: absolute; inset: auto 1rem 1rem auto; padding: .35rem .55rem; color: #fff; background: rgba(4,19,38,.82); font-size: .78rem; }
.v3-service-body.is-split .v3-service-body-grid, .v3-service-body.is-safety .v3-service-body-grid { grid-template-columns: minmax(0,1.15fr) minmax(340px,.85fr); }
.v3-service-body.is-split .v3-service-secondary, .v3-service-body.is-safety .v3-service-secondary { order: 2; }
.v3-service-body.is-editorial .entry-content { column-count: 2; column-gap: 3rem; }
.v3-service-body.is-editorial .entry-content > * { break-inside: avoid; }
.v3-service-body.is-immersive .v3-service-secondary img { aspect-ratio: 16 / 10; }
.v3-service-body.is-immersive .v3-service-body-grid { grid-template-columns: 1fr; }
.v3-service-body.is-immersive .v3-service-secondary { position: relative; top: auto; }
.v3-service-prepare { padding: 6rem 0; background: #fff; }
.v3-prepare-grid { display: grid; grid-template-columns: repeat(3,1fr); margin-top: 2rem; border-block: 1px solid var(--v3-line); }
.v3-prepare-grid article { padding: 2rem; border-inline-end: 1px solid var(--v3-line); }
.v3-prepare-grid article:last-child { border-inline-end: 0; }
.v3-prepare-grid .icon { width: 2rem; height: 2rem; margin-bottom: 2.5rem; color: var(--v3-blue); }
.v3-service-faq { padding: 6rem 0; background: var(--v3-ice); }
.v3-service-faq-grid { display: grid; grid-template-columns: minmax(260px,.6fr) minmax(0,1.4fr); gap: 4rem; }
.v3-faq-list details { border-bottom: 1px solid rgba(7,24,44,.2); }
.v3-faq-list summary { padding: 1.25rem 0; font-weight: 800; cursor: pointer; }
.v3-faq-list p { margin: 0 0 1.25rem; }
.v3-related-services { padding: 6rem 0; background: #fff; }
.v3-related-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1.4rem; }
.v3-related-grid > a { overflow: hidden; color: var(--v3-ink); text-decoration: none; border: 1px solid var(--v3-line); }
.v3-related-grid img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; transition: transform .35s ease; }
.v3-related-grid > a:hover img { transform: scale(1.035); }
.v3-related-grid > a > span { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: .7rem; padding: 1rem; }
.v3-related-grid i { display: grid; place-items: center; width: 2.7rem; height: 2.7rem; color: var(--v3-blue); background: var(--v3-ice); border-radius: 50%; }
.v3-related-grid i .icon { width: 1.3rem; }

.v3-contact-hero { padding: 10rem 0 5rem; color: #fff; background: linear-gradient(120deg, var(--v3-navy), #0b437d); }
.v3-contact-hero-grid { display: grid; grid-template-columns: 1fr auto; gap: 3rem; align-items: end; }
.v3-contact-hero h1 { margin: 0 0 .8rem; color: #fff; }
.v3-contact-hero p { max-width: 680px; color: #dce9f7; }
.v3-contact-hero-phone { display: grid; grid-template-columns: auto 1fr; gap: .2rem .8rem; min-width: 285px; padding: 1.25rem; color: #fff; text-decoration: none; border: 1px solid rgba(255,255,255,.32); background: rgba(255,255,255,.08); }
.v3-contact-hero-phone .icon { grid-row: 1 / 3; width: 1.7rem; }
.v3-contact-main { padding: 5rem 0 7rem; }
.v3-contact-page-grid { display: grid; grid-template-columns: minmax(300px,.8fr) minmax(0,1.2fr); gap: clamp(3rem,8vw,8rem); align-items: start; }
.v3-contact-list { display: grid; margin-top: 2rem; border-top: 1px solid var(--v3-line); }
.v3-contact-list > * { display: grid; grid-template-columns: 2.8rem 1fr; gap: .1rem .8rem; min-width: 0; padding: 1.15rem 0; color: var(--v3-ink); text-decoration: none; border-bottom: 1px solid var(--v3-line); }
.v3-contact-list .icon { grid-row: 1 / 3; width: 1.45rem; color: var(--v3-blue); }
.v3-contact-list strong { overflow-wrap: anywhere; }
.v3-contact-boundary { padding: 1rem; background: var(--v3-ice); }
.v3-contact-form { padding: clamp(1.5rem,4vw,2.5rem); background: #fff; box-shadow: var(--v3-shadow); }

.v3-safety-hero { padding: 10rem 0 5rem; color: #fff; background: var(--v3-navy); border-bottom: 7px solid var(--v3-orange); }
.v3-safety-hero-grid { display: grid; grid-template-columns: 6rem 1fr; gap: 2rem; align-items: center; }
.v3-safety-hero-grid > span { display: grid; place-items: center; width: 6rem; height: 6rem; color: var(--v3-navy); background: var(--v3-orange); border-radius: 50%; }
.v3-safety-hero-grid > span .icon { width: 3rem; height: 3rem; }
.v3-safety-hero h1 { margin: 0 0 1rem; color: #fff; }
.v3-safety-hero p { max-width: 720px; color: #dce9f7; }
.v3-safety-content { padding: 5rem 0 7rem; background: #fff; }
.v3-safety-content-grid { display: grid; grid-template-columns: minmax(0,1fr) 330px; gap: clamp(3rem,7vw,7rem); align-items: start; }
.v3-safety-callout { position: sticky; top: 7rem; padding: 1.7rem; border-top: 5px solid var(--v3-orange); background: var(--v3-paper); box-shadow: var(--v3-shadow); }
.v3-safety-callout > span { color: var(--v3-blue); }
.v3-safety-callout > span .icon { width: 2rem; }
.v3-safety-callout small { display: block; margin-top: .8rem; }
.v3-safety-next { padding: 5rem 0; color: #fff; background: #0a315a; }
.v3-safety-next h2 { color: #fff; }
.v3-safety-next p { color: #dce9f7; }
.v3-safety-next > .shell > div { display: flex; gap: .8rem; flex-wrap: wrap; }

@media (max-width: 900px) {
	.v3-about-story-grid, .v3-service-answer-grid, .v3-contact-page-grid, .v3-safety-content-grid { grid-template-columns: 1fr; }
	.v3-about-statement, .v3-service-secondary, .v3-safety-callout { position: static; }
	.v3-principles-grid, .v3-prepare-grid { grid-template-columns: 1fr 1fr; }
	.v3-service-facts { grid-template-columns: repeat(3,1fr); }
	.v3-service-body-grid, .v3-service-body.is-split .v3-service-body-grid, .v3-service-body.is-safety .v3-service-body-grid { grid-template-columns: 1fr; }
	.v3-service-body.is-split .v3-service-secondary, .v3-service-body.is-safety .v3-service-secondary { order: 0; }
	.v3-service-secondary img { aspect-ratio: 16 / 10; }
	.v3-service-body.is-editorial .entry-content { column-count: 1; }
}

@media (max-width: 720px) {
	.v3-interior-hero, .v3-service-hero { min-height: 78svh; }
	.v3-interior-hero-shade, .v3-service-hero-shade, .v3-service-hero.is-split .v3-service-hero-shade, .v3-service-hero.is-editorial .v3-service-hero-shade { background: linear-gradient(0deg, rgba(4,19,38,.99), rgba(4,19,38,.12) 78%); }
	.v3-service-hero.is-editorial { color: #fff; background: var(--v3-navy); }
	.v3-service-hero.is-editorial .v3-service-hero-media, .v3-service-hero.is-split .v3-service-hero-media { inset: 0; width: 100%; }
	.v3-service-hero.is-editorial .v3-service-hero-copy h1 { color: #fff; }
	.v3-service-hero.is-editorial .v3-service-hero-copy > p { color: #e7f0fa; }
	.v3-interior-hero-copy, .v3-service-hero-grid { width: min(100% - 2rem, 1240px); min-height: 78svh; padding-block: 9rem 3rem; }
	.v3-about-story, .v3-about-principles, .v3-about-services, .v3-service-answer, .v3-service-body, .v3-service-prepare, .v3-service-faq, .v3-related-services { padding-block: 4rem; }
	.v3-principles-grid, .v3-prepare-grid, .v3-about-service-list, .v3-related-grid, .v3-service-facts, .v3-service-faq-grid { grid-template-columns: 1fr; }
	.v3-principles-grid article, .v3-prepare-grid article { border-inline-end: 0; border-bottom: 1px solid var(--v3-line); }
	.v3-about-service-list a:nth-child(odd) { border-inline-end: 0; }
	.v3-service-faq-grid { display: grid; gap: 2rem; }
	.v3-contact-hero-grid { grid-template-columns: 1fr; align-items: start; }
	.v3-contact-hero-phone { min-width: 0; }
	.v3-safety-hero-grid { grid-template-columns: 1fr; }
	.v3-safety-hero-grid > span { width: 4.5rem; height: 4.5rem; }
}

@media (prefers-reduced-motion: reduce) {
	.v3-related-grid img { transition: none; }
}

/* 3.1 premium icon, spacing and editorial refinements. */
.gerer-v3 a,
.gerer-v3 button,
.gerer-v3 summary { transition-duration: 200ms; }
.gerer-v3 :focus-visible { outline: 3px solid #ffb54f; outline-offset: 4px; }
.gerer-v3 .icon { flex: 0 0 auto; stroke-width: 2; }

.v3-capability-list article { position: relative; display: grid; grid-template-columns: auto 1fr; grid-template-rows: auto 1fr; gap: .35rem 1rem; align-content: center; }
.v3-capability-icon { grid-row: 1 / 3; display: grid; place-items: center; width: 3.15rem; height: 3.15rem; color: var(--v3-blue); background: var(--v3-ice); border-radius: .55rem; }
.v3-capability-icon .icon { width: 1.65rem; height: 1.65rem; }
.v3-capability-list strong,
.v3-capability-list p { grid-column: 2; }

.v3-service-tab > span { border: 0; border-radius: .45rem; background: rgba(255,255,255,.075); color: #bcd9ff; transition: color 200ms ease, background-color 200ms ease, transform 200ms ease; }
.v3-service-tab > span .icon { width: 1.45rem; height: 1.45rem; }
.v3-service-tab:is(:hover,.is-active) > span { color: #fff; background: var(--v3-blue); transform: translateX(-2px); }
.v3-service-tab.is-active > span { box-shadow: 0 8px 24px rgba(9,104,239,.26); }
.v3-service-picture img { transition: opacity 200ms ease, transform 560ms cubic-bezier(.2,.8,.2,1); }
.v3-image-disclosure { margin: 1.2rem 0 0; color: #52687e; font-size: .85rem !important; }

.v3-process-line li > span { width: 3.8rem; height: 3.8rem; border-radius: .65rem; background: var(--v3-ice); color: var(--v3-blue); box-shadow: 0 0 0 8px #fff; }
.v3-process-line li:nth-child(2) > span { background: #dcecff; color: #0758cf; }
.v3-process-line li:nth-child(3) > span { background: #fff1dc; color: #b66000; }
.v3-process-line li > span .icon { width: 1.7rem; height: 1.7rem; }
.v3-process-line::before { inset-block-start: 1.9rem; border-color: #c9d9e8; }

.v3-editorial-icon { width: 3.2rem; height: 3.2rem; border-radius: .45rem; background: var(--v3-ice); color: var(--v3-blue); }
.v3-editorial-icon .icon { width: 1.65rem; height: 1.65rem; }
.v3-editorial-service.is-immersive .v3-editorial-icon,
.v3-editorial-service.is-safety .v3-editorial-icon { background: rgba(255,157,32,.16); color: #ffbd67; }
.v3-editorial-service.is-featured .v3-editorial-copy { padding-inline-start: clamp(0rem,2vw,2rem); }
.v3-editorial-service.is-split .v3-editorial-copy { padding-inline-end: clamp(0rem,3vw,3rem); }
.v3-editorial-service.is-editorial .v3-editorial-copy { max-width: 560px; }
.v3-editorial-media img { transition: transform 600ms cubic-bezier(.2,.8,.2,1); }
.v3-editorial-service:hover .v3-editorial-media img { transform: scale(1.018); }

.v3-service-answer-grid.is-facts-only { grid-template-columns: 1fr; }
.v3-service-answer-grid.is-facts-only .v3-service-facts { grid-template-columns: repeat(5,minmax(0,1fr)); }
.v3-service-facts { border-top-width: 3px; box-shadow: 0 18px 55px rgba(3,18,38,.12); }
.v3-service-facts > div { min-width: 0; padding: 1rem 1.05rem; }
.v3-service-facts strong { overflow-wrap: anywhere; line-height: 1.35; }
.v3-service-facts .icon { width: 1.35rem; height: 1.35rem; }

.v3-contact-list > * { transition: color 200ms ease, background-color 200ms ease, padding-inline 200ms ease; }
.v3-contact-list > a:hover { padding-inline: .75rem; color: #0758cf; background: var(--v3-ice); }
.v3-contact-list .icon { width: 1.55rem; height: 1.55rem; }

.v3-safety-content .entry-content ol { display: grid; gap: 0; margin: 2rem 0; padding: 0; list-style: none; counter-reset: safety-step; }
.v3-safety-content .entry-content ol > li { position: relative; display: grid; grid-template-columns: 3.2rem minmax(0,1fr); gap: .85rem 1.1rem; min-height: 4.4rem; padding: 1.15rem 0; border-bottom: 1px solid var(--v3-line); counter-increment: safety-step; }
.v3-safety-content .entry-content ol > li::before { content: counter(safety-step, decimal-leading-zero); position: absolute; inset-inline-end: 0; inset-block-start: 1.35rem; color: #7d91a5; font-size: .78rem; font-weight: 850; }
.v3-safety-step-icon { grid-row: 1 / 3; display: grid; place-items: center; width: 3rem; height: 3rem; color: var(--v3-blue); background: var(--v3-ice); border-radius: .45rem; }
.v3-safety-step-icon .icon { width: 1.55rem; height: 1.55rem; }

.v3-button:hover .icon,
.v3-contact-phone:hover .icon,
.v3-contact-hero-phone:hover .icon { transform: translateX(-2px); }
.v3-button .icon,
.v3-contact-phone .icon,
.v3-contact-hero-phone .icon { transition: transform 200ms ease; }

@media (max-width: 900px) {
	.v3-service-answer-grid.is-facts-only .v3-service-facts { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 720px) {
	.gerer-v3 h1 { font-size: 2.125rem; }
	.gerer-v3 .v3-interior h1 { font-size: 2rem; }
	.gerer-v3 h2,
	.gerer-v3 .v3-interior h2 { font-size: 1.75rem; }
	.gerer-v3 h3 { font-size: 1.3125rem; }
	.v3-capability-list article { grid-template-columns: 2.8rem 1fr; }
	.v3-capability-icon { width: 2.7rem; height: 2.7rem; }
	.v3-process-line::before { inset-inline-start: auto; inset-inline-end: 1.9rem; }
	.v3-process-line li { grid-template-columns: 3.8rem 1fr; }
	.v3-service-answer-grid.is-facts-only .v3-service-facts { grid-template-columns: 1fr; }
	.v3-editorial-service:hover .v3-editorial-media img { transform: none; }
}

@media (prefers-reduced-motion: reduce) {
	.gerer-v3 *, .gerer-v3 *::before, .gerer-v3 *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
	.v3-service-tab > span,
	.v3-editorial-media img,
	.v3-button .icon { transform: none !important; }
}

/* 3.2 local sticker hooks and measured premium polish. */
.brand-sticker,
.v32-sticker { display: block; width: 100%; height: auto; object-fit: contain; }

.v3-capability-icon.has-sticker { width: 4.4rem; height: 4.4rem; padding: .18rem; background: transparent; border-radius: 0; }
.v3-capability-icon.has-sticker .v32-sticker { max-height: 4.4rem; filter: drop-shadow(0 12px 20px rgba(3,18,38,.16)); }

.v3-service-copy.has-sticker { grid-template-columns: 5rem minmax(170px,.72fr) minmax(250px,1.25fr) auto; }
.v3-service-copy.has-sticker .v32-service-sticker { grid-column: 1; }
.v3-service-copy.has-sticker h3 { grid-column: 2; }
.v3-service-copy.has-sticker p { grid-column: 3; }
.v3-service-copy.has-sticker a { grid-column: 4; }
.v32-service-sticker { width: 4.75rem; height: 4.75rem; object-fit: contain; filter: drop-shadow(0 13px 24px rgba(2,18,38,.2)); transition: opacity 200ms ease, transform 200ms ease; }
.v3-service-panel.is-changing .v32-service-sticker { opacity: 0; transform: translateY(7px) scale(.96); }
.v32-mobile-media { position: relative; }
.v3-service-mobile-body .v32-mobile-media > .v32-service-sticker { position: absolute; inset: auto auto .75rem .75rem; width: 5.5rem; height: 5.5rem; margin: 0; padding: 0; object-fit: contain; border-radius: 1rem; background: transparent; box-shadow: none; }

.v3-process-line li > span.has-sticker { width: 5.1rem; height: 5.1rem; margin-block-start: -.65rem; padding: .18rem; border-radius: 0; background: transparent; box-shadow: 0 0 0 8px #fff; }
.v3-process-line li:nth-child(2) > span.has-sticker,
.v3-process-line li:nth-child(3) > span.has-sticker { background: transparent; }
.v3-process-line li > span.has-sticker .v32-sticker { max-height: 5rem; filter: drop-shadow(0 14px 22px rgba(3,18,38,.16)); }

.v32-editorial-sticker { position: absolute; z-index: 2; inset: auto auto 1.1rem 1.1rem; display: block; width: clamp(5.5rem,8vw,8rem); height: clamp(5.5rem,8vw,8rem); padding: 0; background: transparent; border: 0; border-radius: 1rem; box-shadow: none; }
.v3-editorial-media > .v32-editorial-sticker { inset: auto auto 1.1rem 1.1rem; padding: 0; color: inherit; font-size: inherit; }
.v32-editorial-sticker .v32-sticker { width: 100%; height: 100%; aspect-ratio: 1; object-fit: contain; box-shadow: none; transition: none; }
.v3-editorial-service:hover .v32-editorial-sticker .v32-sticker { transform: none; }
.v3-editorial-service:hover .v32-editorial-sticker { transform: translateY(-3px) rotate(-1deg); }
.v3-editorial-service.is-split .v3-editorial-grid { grid-template-columns: minmax(0,.92fr) minmax(0,1.08fr); }
.v3-editorial-service.is-featured .v3-editorial-grid { gap: clamp(2rem,5vw,6rem); }
.v3-editorial-service.is-editorial .v3-editorial-grid { grid-template-columns: minmax(0,.84fr) minmax(0,1.16fr); }

.v3-service-hero-sticker { display: grid; place-items: center; width: 6.8rem; height: 6.8rem; margin-bottom: 1.45rem; padding: 0; border: 0; border-radius: 1.15rem; background: transparent; box-shadow: none; }
.v3-service-hero-sticker .v32-sticker { max-height: 6.8rem; }
.v3-service-hero.is-editorial .v3-service-hero-sticker { border-color: transparent; box-shadow: none; }

.v3-safety-icon.has-sticker { width: 5.4rem; height: 5.4rem; padding: 0; background: transparent; border: 0; box-shadow: none; }
.v3-safety-icon.has-sticker .v32-sticker { width: 100%; height: 100%; }
.v3-safety-hero-grid > span.has-sticker { display: block; width: clamp(6rem,9vw,8.5rem); height: clamp(6rem,9vw,8.5rem); padding: 0; background: transparent; border: 0; box-shadow: none; }
.v3-safety-hero-grid > span.has-sticker .v32-sticker { width: 100%; height: 100%; }

[data-v3-parallax-media] { transform: scale(1.045); will-change: transform; }
.v32-editorial-sticker,
.v3-service-hero-sticker,
.v3-process-line li > span.has-sticker { transition: transform 200ms ease, box-shadow 200ms ease; }

@media (max-width: 1000px) {
	.v3-service-copy.has-sticker { grid-template-columns: 4.5rem 1fr auto; }
	.v3-service-copy.has-sticker .v32-service-sticker { grid-row: 1 / 3; }
	.v3-service-copy.has-sticker h3 { grid-column: 2; }
	.v3-service-copy.has-sticker p { grid-column: 2 / 4; }
	.v3-service-copy.has-sticker a { grid-column: 3; grid-row: 1; }
}

@media (max-width: 720px) {
	.v3-capability-icon.has-sticker { width: 3.5rem; height: 3.5rem; margin-inline-start: -.35rem; }
	.v3-capability-icon.has-sticker .v32-sticker { max-height: 3.5rem; }
	.v3-process-line li > span.has-sticker { width: 4.5rem; height: 4.5rem; margin-block-start: -.35rem; margin-inline-start: -.35rem; }
	.v32-editorial-sticker { width: 5.4rem; height: 5.4rem; }
	.v3-service-hero-sticker { width: 5.5rem; height: 5.5rem; }
	.v3-editorial-service.is-split .v3-editorial-grid,
	.v3-editorial-service.is-editorial .v3-editorial-grid { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
	[data-v3-parallax-media],
	.v32-editorial-sticker,
	.v3-service-hero-sticker,
	.v3-process-line li > span.has-sticker { transform: none !important; will-change: auto; }
}

/* 3.4 — contact is a decision point, not a lead form. */
.v34-contact-actions {
	min-width: 0;
	padding: clamp(1.5rem, 4vw, 3.25rem);
	background: #fff;
	color: var(--v3-ink);
	box-shadow: 0 24px 70px rgba(3, 18, 38, .14);
}
.v34-contact-heading {
	display: grid;
	grid-template-columns: minmax(0, .9fr) minmax(320px, 1.1fr);
	align-items: end;
	gap: 1.5rem 3rem;
	margin-bottom: clamp(1.5rem, 3vw, 2.5rem);
}
.v34-contact-heading h2 { margin: 0; color: var(--v3-ink); }
.v34-contact-heading p { max-width: 690px; margin: 0; color: #53677b; }
.v34-contact-choice-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.v34-contact-choice {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: 1rem;
	min-width: 0;
	min-height: 9.25rem;
	padding: clamp(1.25rem, 2.6vw, 2rem);
	color: #fff;
	text-decoration: none;
	border: 1px solid transparent;
	transition: transform 200ms ease, box-shadow 200ms ease, background-color 200ms ease;
}
.v34-contact-choice.is-phone { background: #0758cf; box-shadow: 0 18px 38px rgba(7, 88, 207, .24); }
.v34-contact-choice.is-whatsapp { background: #0d7048; box-shadow: 0 18px 38px rgba(13, 112, 72, .22); }
.v34-contact-choice:hover { color: #fff; transform: translateY(-3px); }
.v34-contact-choice.is-phone:hover { background: #064db5; box-shadow: 0 24px 48px rgba(7, 88, 207, .32); }
.v34-contact-choice.is-whatsapp:hover { background: #0a603d; box-shadow: 0 24px 48px rgba(13, 112, 72, .3); }
.v34-contact-choice-icon { display: grid; place-items: center; width: 3.5rem; height: 3.5rem; color: currentColor; border: 1px solid rgba(255,255,255,.38); }
.v34-contact-choice-icon .icon { width: 1.8rem; height: 1.8rem; }
.v34-contact-choice-copy { display: grid; min-width: 0; gap: .18rem; }
.v34-contact-choice-copy small { color: #fff; font-size: .88rem; }
.v34-contact-choice-copy strong { color: #fff; font-size: clamp(1.2rem, 2vw, 1.55rem); line-height: 1.2; }
.v34-contact-choice-copy bdi,
.v34-contact-choice-copy > span { color: #fff; font-size: 1.05rem; font-weight: 750; overflow-wrap: anywhere; }
.v34-contact-choice-copy bdi { direction: ltr; text-align: right; white-space: nowrap; }
.v34-contact-choice-arrow { display: grid; place-items: center; }
.v34-contact-choice-arrow .icon { width: 1.4rem; height: 1.4rem; transition: transform 200ms ease; }
.v34-contact-choice:hover .v34-contact-choice-arrow .icon { transform: translateX(-4px); }
.v34-contact-meta { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 1.25rem; border-block: 1px solid var(--v3-line); }
.v34-contact-meta > div { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: .12rem .8rem; min-width: 0; padding: 1.1rem 0; }
.v34-contact-meta > div + div { padding-inline-start: 1.25rem; border-inline-start: 1px solid var(--v3-line); }
.v34-contact-meta .icon { grid-row: 1 / 3; width: 1.45rem; height: 1.45rem; color: var(--v3-blue); }
.v34-contact-meta span { color: #536579; font-size: .86rem; }
.v34-contact-meta strong { overflow-wrap: anywhere; color: var(--v3-ink); }
.v34-contact-note { margin: .9rem 0 0; color: #536579; font-size: .9rem !important; }

.v3-contact .v34-contact-actions { padding: 0; background: transparent; box-shadow: none; }
.v3-contact .v34-contact-heading h2 { color: #fff; }
.v3-contact .v34-contact-heading p { color: #cfdeed; }
.v3-contact .v34-contact-meta { border-color: rgba(255,255,255,.18); }
.v3-contact .v34-contact-meta > div + div { border-color: rgba(255,255,255,.18); }
.v3-contact .v34-contact-meta .icon { color: var(--v3-orange); }
.v3-contact .v34-contact-meta span,
.v3-contact .v34-contact-note { color: #b9cce0; }
.v3-contact .v34-contact-meta strong { color: #fff; }

.v34-contact-hero-actions { display: grid; grid-template-columns: repeat(2, minmax(220px, 1fr)); gap: .75rem; }
.v34-contact-hero-actions > a { min-width: 0; min-height: 5.6rem; }
.v34-contact-hero-whatsapp {
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
	gap: .15rem .8rem;
	padding: 1.25rem;
	color: #fff;
	text-decoration: none;
	background: #0d7048;
	border: 1px solid rgba(255,255,255,.24);
	transition: background-color 200ms ease, transform 200ms ease;
}
.v34-contact-hero-whatsapp:hover { color: #fff; background: #0a603d; transform: translateY(-2px); }
.v34-contact-hero-whatsapp .icon { grid-row: 1 / 3; width: 1.7rem; height: 1.7rem; }
.v34-contact-hero-whatsapp span { color: #fff; }

.v34-contact-prep { margin-top: clamp(3rem, 6vw, 5rem); }
.v34-contact-prep h2 { margin-bottom: 1.5rem; }
.v34-contact-prep-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-block: 1px solid var(--v3-line); }
.v34-contact-prep-grid > div { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: .12rem .85rem; min-width: 0; padding: 1.4rem clamp(1rem, 2.5vw, 2rem); }
.v34-contact-prep-grid > div + div { border-inline-start: 1px solid var(--v3-line); }
.v34-contact-prep-grid .icon { grid-row: 1 / 3; width: 1.6rem; height: 1.6rem; color: var(--v3-blue); }
.v34-contact-prep-grid span { color: #536579; font-size: .88rem; }
.v34-contact-prep-grid strong { overflow-wrap: anywhere; }

@media (max-width: 900px) {
	.v34-contact-heading { grid-template-columns: 1fr; align-items: start; gap: .65rem; }
	.v34-contact-hero-actions { grid-template-columns: 1fr; width: min(100%, 420px); }
}

@media (max-width: 680px) {
	.v34-contact-actions { padding: 1.25rem; }
	.v3-contact .v34-contact-actions { padding: 0; }
	.v34-contact-choice-grid,
	.v34-contact-meta,
	.v34-contact-prep-grid { grid-template-columns: 1fr; }
	.v34-contact-choice { min-height: 7.8rem; padding: 1.15rem; }
	.v34-contact-choice-icon { width: 3rem; height: 3rem; }
	.v34-contact-meta > div + div,
	.v34-contact-prep-grid > div + div { padding-inline-start: 0; border-inline-start: 0; border-top: 1px solid var(--v3-line); }
	.v3-contact .v34-contact-meta > div + div { border-color: rgba(255,255,255,.18); }
}

@media (max-width: 390px) {
	.v34-contact-choice { grid-template-columns: 2.75rem minmax(0, 1fr); gap: .75rem; }
	.v34-contact-choice-arrow { display: none; }
	.v34-contact-choice-copy bdi { font-size: 1rem; }
}

@media (prefers-reduced-motion: reduce) {
	.v34-contact-choice,
	.v34-contact-choice-arrow .icon,
	.v34-contact-hero-whatsapp { transition: none !important; transform: none !important; }
}
