/* GetnDrive Visual Rebrand — public shell refinement. v0.2.10.19 (ADR-211)

   Loaded on every public request right after the brand lockup. The main stylesheet and the lockup
   stylesheet are SHA-frozen by the rendered-evidence checkers, so neither is edited. Presentation only:
   no field, name, value, validation, JS state, submit URL, route, menu record or runtime identifier is
   touched. Three scopes:

   1. Shared public Header (desktop, >= 1025px): the real logo layout slot is capped and the right-hand
      controls use one moderate weight, so the navigation gets real flex space back. No transform,
      absolute positioning, clipping, negative offset or spacer is added here.
   2. Homepage first fold: typography weights and the measured mobile excess above the H1; the
      destination rail reads as an intentional scroller on phones.
   3. Shared public Footer: layout of the fifth group, Geography (its own full-width row).
   4. Desktop partner ribbon (v0.2.10.21, ADR-215): the compact B2B band the server renders directly after
      `#masthead`. Desktop only; it scrolls away with the page.

   Weights are whole hundreds on purpose. The live Kadence font files are not in the repository, so an
   in-between weight (650, 750) could only be synthesised or snapped by the browser. */

/* --- 1. Shared public Header --------------------------------------------------------------------- */

/* Logo layout slot: the lockup asset is 1200x208, so each height keeps the approved aspect ratio. */
@media (min-width: 1200px) {
	body.getndrive-visual-rebrand {
		--gnd-hdr-logo-w: 272px;
		--gnd-hdr-logo-h: 47px;
	}
}

@media (min-width: 1025px) and (max-width: 1199px) {
	body.getndrive-visual-rebrand {
		--gnd-hdr-logo-w: 208px;
		--gnd-hdr-logo-h: 36px;
	}
}

@media (min-width: 1025px) {
	body.getndrive-visual-rebrand #main-header .main-navigation .primary-menu-container > ul > li > a,
	body.getndrive-visual-rebrand #main-header .main-navigation .menu > ul > li > a,
	body.getndrive-visual-rebrand #main-header .main-navigation .primary-menu-container > ul > li > a[data-gnd-nav-label="bookings"],
	body.getndrive-visual-rebrand #main-header .main-navigation .primary-menu-container > ul > li.gnd-nav-partner-cta > a.gnd-nav-partner-cta__link,
	body.getndrive-visual-rebrand #main-header .gnd-nav-sea-soon__trigger,
	body.getndrive-visual-rebrand #main-header .gnd-market__toggle,
	body.getndrive-visual-rebrand #main-header .gnd-nav-currency .gnd-currency,
	body.getndrive-visual-rebrand #main-header .main-navigation .gnd-lang__toggle,
	body.getndrive-visual-rebrand #main-header .main-navigation .gnd-hdr-disclosure__toggle {
		font-weight: 600 !important;
	}
}

/* Constrained desktop (1025-1199px): trim the inner padding of each control so the Russian row fits
   beside the logo slot. Every control keeps its 40px height, its frame and its focus ring; the explicit
   market gap (the "real layout space" between page links and controls) is unchanged. */
@media (min-width: 1025px) and (max-width: 1199px) {
	body.getndrive-visual-rebrand #main-header .main-navigation .primary-menu-container > ul > li > a,
	body.getndrive-visual-rebrand #main-header .main-navigation .menu > ul > li > a {
		padding-inline: 4px;
	}

	body.getndrive-visual-rebrand #main-header .gnd-nav-sea-soon__trigger {
		padding-inline: 5px;
	}

	body.getndrive-visual-rebrand #main-header .main-navigation .gnd-nav-market::before {
		margin-right: 6px;
	}

	body.getndrive-visual-rebrand #main-header .gnd-market__toggle {
		gap: 6px;
		padding-inline: 6px;
	}

	body.getndrive-visual-rebrand #main-header .gnd-currency {
		padding-inline: 4px;
	}

	body.getndrive-visual-rebrand #main-header .main-navigation .primary-menu-container > ul > li > a[data-gnd-nav-label="bookings"],
	body.getndrive-visual-rebrand #main-header .main-navigation .menu > ul > li > a[data-gnd-nav-label="bookings"] {
		padding-inline: 11px;
	}

	body.getndrive-visual-rebrand #main-header .main-navigation .primary-menu-container > ul > li.gnd-nav-partner-cta > a.gnd-nav-partner-cta__link,
	body.getndrive-visual-rebrand #main-header .main-navigation .menu > ul > li.gnd-nav-partner-cta > a.gnd-nav-partner-cta__link {
		padding-inline: 8px;
	}

	body.getndrive-visual-rebrand #main-header .main-navigation .gnd-lang__toggle {
		padding-inline: 8px;
	}
}

/* --- 2. Homepage first fold ---------------------------------------------------------------------- */

body.getndrive-visual-rebrand .sch-platform-home--redesign .sch-platform-hero--redesign .sch-platform-hero__copy h1,
body.getndrive-visual-rebrand .sch-platform-home--redesign .sch-platform-hero--redesign .sch-platform-hero__copy h1 .sch-platform-hero__title-line {
	font-weight: 700 !important;
}

body.getndrive-visual-rebrand .sch-platform-home--redesign .sch-platform-hero--redesign .gnd-hero-chips > .gnd-hero-chip,
body.getndrive-visual-rebrand .sch-platform-home--redesign .sch-platform-hero--redesign .gnd-hero-chips > button,
body.getndrive-visual-rebrand .sch-platform-home--redesign .sch-platform-hero--redesign .gnd-hero-chips > a {
	font-weight: 600 !important;
}

/* Search: labels and the Cars / Moto control 600, field values 600, the Search action 700. The selectors
   restate the owner chains (the sheet body included) because those rules are `!important`. */
body.getndrive-visual-rebrand :is(.sch-platform-home--redesign, .gnd-home-sheet__body) [data-sch-home-search] label > span,
body.getndrive-visual-rebrand :is(.sch-platform-home--redesign, .gnd-home-sheet__body) [data-sch-home-search] select,
body.getndrive-visual-rebrand :is(.sch-platform-home--redesign, .gnd-home-sheet__body) [data-sch-home-search] input:not([type="hidden"]) {
	font-weight: 600 !important;
}

body.getndrive-visual-rebrand :is(.sch-platform-home--redesign, .gnd-home-sheet__body) .sch-home-search.sch-home-search .sch-home-search__kind.sch-home-search__kind[data-sch-kind] {
	font-weight: 600 !important;
}

body.getndrive-visual-rebrand :is(.sch-platform-home--redesign, .gnd-home-sheet__body) .sch-home-search.sch-home-search .sch-home-search__submit.sch-home-search__submit[data-sch-home-search-submit] {
	font-weight: 700 !important;
}

@media (max-width: 767px) {
	/* Measured at 375x812 and 390x844: the retired pre-Dynamic-Hero reserve
	   `calc(clamp(200px, 44vw, 280px) + 20px)` left 220px of photograph between the header and the H1.
	   The scene still shows above the copy; the H1, proof row, destination rail and Search move up. */
	body.getndrive-visual-rebrand .sch-platform-home--redesign .sch-platform-hero--redesign.gnd-dynamic-hero-active > .wp-block-group__inner-container {
		padding-top: calc(clamp(92px, 26vw, 132px) + 20px);
	}

	/* The destination rail is a real horizontal scroller (Dynamic Hero owns it). A trailing fade says
	   "more to the right" instead of a chip that looks cut; the end padding lets the last chip scroll fully
	   clear of the fade, and scroll padding keeps a focused chip out of it. */
	body.getndrive-visual-rebrand .sch-platform-home--redesign .sch-platform-hero--redesign.gnd-dynamic-hero-active .gnd-hero-chips {
		padding-inline-end: 32px;
		scroll-padding-inline: 0 32px;
		-webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 32px), transparent);
		mask-image: linear-gradient(90deg, #000 calc(100% - 32px), transparent);
	}
}

/* --- 3. Shared public Footer: Geography ---------------------------------------------------------- */

/* Geography is the fifth group in DOM order (Brand, Rental, Support, Partners, Geography). It wraps
   deliberately onto its own full-width row below the four existing groups at every width instead of
   squeezing a fifth column: two labelled sublists side by side on desktop (two link columns each) and on
   tablet (one link column each), stacked on phones. Measured in the fixture, a fifth column at 1440px
   wrapped every Russian motorbike label onto two lines. */

body.getndrive-visual-rebrand .sch-footer.gnd-footer--editorial .gnd-footer-col--geography {
	grid-column: 1 / -1 !important;
	grid-row: auto !important;
	min-width: 0;
	padding-top: clamp(18px, 2vw, 24px);
	border-top: 1px solid rgba(255, 255, 255, 0.1);
}

body.getndrive-visual-rebrand .sch-footer.gnd-footer--editorial .gnd-footer-geo {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px clamp(24px, 3.2vw, 48px);
	align-items: start;
}

body.getndrive-visual-rebrand .sch-footer.gnd-footer--editorial .gnd-footer-geo__group {
	min-width: 0;
}

body.getndrive-visual-rebrand .sch-footer.gnd-footer--editorial h4.gnd-footer-geo__label {
	margin: 0 0 10px !important;
	padding: 0 !important;
	color: rgba(239, 247, 246, 0.72) !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	line-height: 1.3 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
}

body.getndrive-visual-rebrand .sch-footer.gnd-footer--editorial .sch-footer__column ul.gnd-footer-geo__list {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px clamp(16px, 2vw, 24px) !important;
}

body.getndrive-visual-rebrand .sch-footer.gnd-footer--editorial .sch-footer__column ul.gnd-footer-geo__list a {
	font-size: 14px !important;
	overflow-wrap: break-word;
}

/* Tablet: the group wraps to its own row, the two sublists side by side, one link per line. */
@media (max-width: 1024px) {
	body.getndrive-visual-rebrand .sch-footer.gnd-footer--editorial .sch-footer__column ul.gnd-footer-geo__list {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* Phone: after the existing groups, the two sublists stack. */
@media (max-width: 767px) {
	body.getndrive-visual-rebrand .sch-footer.gnd-footer--editorial .gnd-footer-geo {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* --- 4. Desktop partner ribbon (v0.2.10.21, ADR-215) --------------------------------------------- */

/* The band is a normal-flow sibling after `#masthead`: no sticky or fixed position, no z-index tier, no
   shadow, animation or transition, so it scrolls away under the unchanged sticky Header. It costs nothing
   below 1025px, where it is not rendered at all (the drawer carries the partner CTA there).

   Contrast on #eaf7f5: ink #102033 is 15.0:1 for all text. The deep teal token #0d7f77 would be only
   4.43:1 at this size, so it is used for the underline and the focus ring (non-text, >= 3:1), never for
   text. One anchor fills the band; the CTA phrase is weight 700 with an underline. */
body.getndrive-visual-rebrand .gnd-partner-ribbon {
	display: none;
}

@media (min-width: 1025px) {
	body.getndrive-visual-rebrand .gnd-partner-ribbon {
		display: block;
		box-sizing: border-box;
		margin: 0;
		padding: 0;
		border-bottom: 1px solid rgba(13, 127, 119, 0.16);
		background: #eaf7f5;
	}

	body.getndrive-visual-rebrand .gnd-partner-ribbon a.gnd-partner-ribbon__link {
		display: block;
		box-sizing: border-box;
		min-height: 44px;
		margin: 0;
		padding: 12px 24px;
		color: #102033;
		font-size: 14px;
		line-height: 20px;
		text-align: center;
		text-decoration: none;
		white-space: nowrap;
	}

	body.getndrive-visual-rebrand .gnd-partner-ribbon a.gnd-partner-ribbon__link:hover,
	body.getndrive-visual-rebrand .gnd-partner-ribbon a.gnd-partner-ribbon__link:focus-visible {
		color: #102033;
		text-decoration: none;
	}

	/* An inset ring stays inside the band, between the sticky Header above and the page below; the
	   transparent outline keeps a visible ring in forced-colors mode. */
	body.getndrive-visual-rebrand .gnd-partner-ribbon a.gnd-partner-ribbon__link:focus-visible {
		outline: 2px solid transparent;
		box-shadow: inset 0 0 0 2px #0d7f77;
	}

	body.getndrive-visual-rebrand .gnd-partner-ribbon .gnd-partner-ribbon__sep {
		margin: 0 4px;
	}

	body.getndrive-visual-rebrand .gnd-partner-ribbon .gnd-partner-ribbon__cta {
		font-weight: 700;
		text-decoration: underline;
		text-decoration-color: rgba(13, 127, 119, 0.6);
		text-decoration-thickness: 1px;
		text-underline-offset: 3px;
	}

	body.getndrive-visual-rebrand .gnd-partner-ribbon a.gnd-partner-ribbon__link:hover .gnd-partner-ribbon__cta {
		text-decoration-color: #102033;
		text-decoration-thickness: 2px;
	}

	/* inline-block: an underline does not propagate into it, so the arrow is never underlined. */
	body.getndrive-visual-rebrand .gnd-partner-ribbon .gnd-partner-ribbon__arrow {
		display: inline-block;
	}
}
