/* ============================================================
   Homepage 2 — the editorial redesign. Loaded only on the front page when
   Theme Settings → Homepage → Layout is "Homepage 2", after home.css, and
   every rule is scoped under body.yachtiva-home-v2 so Homepage 1 and the
   rest of the site are untouched. Section markup lives in
   template-parts/home-v2/ (trust strip reuses template-parts/home/).
   ============================================================ */

.yachtiva-home-v2 {
	--yv2-gold-ink: #8C6A2A;
	--yv2-gold-light: #E4C98C;
	--yv2-gold-hover: #C9A24F;
	--yv2-muted: #56687A;
	--yv2-rule: #D8DFE5;
	--yv2-font-sans: var(--yachtiva-font-sans);
	--yv2-header-h: 96px;
	font-family: var(--yv2-font-sans);
}

/* ---------- Shared type ---------- */

.yachtiva-home-v2 .yachtiva-eyebrow {
	margin: 0 0 12px;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 3px;
	color: var(--yv2-gold-ink);
}

.yachtiva-home-v2 .yachtiva-eyebrow--light {
	color: var(--yv2-gold-light);
}

.yachtiva-home-v2 .yachtiva-section-head {
	margin-bottom: 48px;
}

.yachtiva-home-v2 .yachtiva-section-head__title {
	font-size: clamp(2.125rem, 1.4rem + 1.8vw, 3rem);
	font-weight: 500;
	line-height: 1.1;
	letter-spacing: 0;
}

.yachtiva-home-v2 .yachtiva-link {
	gap: 8px;
	font-size: 15px;
	font-weight: 600;
	color: var(--yv2-gold-ink);
}

.yachtiva-home-v2 .yachtiva-link:hover {
	color: #6E5220;
}

.yachtiva-home-v2 .site-main .yachtiva-btn,
.yachtiva-home-v2 .yachtiva-header__cta {
	color: var(--yachtiva-navy);
}

.yachtiva-home-v2 .site-main .yachtiva-btn:hover,
.yachtiva-home-v2 .yachtiva-header__cta:hover {
	background: var(--yv2-gold-hover);
	color: var(--yachtiva-navy);
	box-shadow: none;
}

/* ---------- Header: transparent over the hero, solid once scrolled ---------- */

.yachtiva-home-v2 .yachtiva-header {
	position: fixed;
	top: var(--wp-admin--admin-bar--height, 0px);
	left: 0;
	right: 0;
	background: transparent;
	backdrop-filter: none;
	border-bottom: 1px solid rgba(255, 255, 255, 0.16);
}

.yachtiva-home-v2 .yachtiva-header.is-scrolled,
.yachtiva-home-v2 .yachtiva-header:has(.yachtiva-mobile-nav.is-open) {
	background: rgba(255, 255, 255, 0.96);
	backdrop-filter: blur(10px);
	border-bottom-color: var(--yachtiva-border);
}

.yachtiva-home-v2 .yachtiva-header__inner {
	height: var(--yv2-header-h);
	gap: 48px;
}

.yachtiva-home-v2 .yachtiva-header__logo-mark {
	display: none;
}

.yachtiva-home-v2 .yachtiva-header__logo {
	font-size: 28px;
	font-weight: 600;
	letter-spacing: 0.5px;
}

.yachtiva-home-v2 .yachtiva-nav {
	flex-grow: 1;
}

.yachtiva-home-v2 .yachtiva-nav > .yachtiva-nav__list {
	gap: 32px;
}

.yachtiva-home-v2 .yachtiva-nav__list a {
	font-size: 15px;
	font-weight: 500;
}

.yachtiva-home-v2 .yachtiva-header__cta {
	height: 44px;
	padding: 0 22px;
	font-size: 15px;
}

.yachtiva-home-v2 .yachtiva-header:not(.is-scrolled) .yachtiva-header__logo,
.yachtiva-home-v2 .yachtiva-header:not(.is-scrolled) .yachtiva-nav > .yachtiva-nav__list > li > a {
	color: #fff;
}

.yachtiva-home-v2 .yachtiva-header:not(.is-scrolled) .yachtiva-nav > .yachtiva-nav__list > li > a:hover {
	color: var(--yv2-gold-light);
}

.yachtiva-home-v2 .yachtiva-header__burger {
	width: 44px;
	height: 44px;
	padding: 0 12px;
	border-radius: 999px;
}

.yachtiva-home-v2 .yachtiva-header:not(.is-scrolled):not(:has(.yachtiva-mobile-nav.is-open)) .yachtiva-header__burger {
	border-color: rgba(255, 255, 255, 0.4);
}

.yachtiva-home-v2 .yachtiva-header:not(.is-scrolled):not(:has(.yachtiva-mobile-nav.is-open)) .yachtiva-header__burger span {
	background: #fff;
}

/* ---------- Hero ---------- */

.yachtiva-home-v2 .yachtiva-hero--v2 {
	min-height: 760px;
	padding: var(--yv2-header-h) 0 72px;
	background-position: center 60%;
}

.yachtiva-home-v2 .yachtiva-hero--v2.has-search {
	padding-bottom: 132px;
}

.yachtiva-home-v2 .yachtiva-hero--v2 .yachtiva-hero__overlay {
	background: linear-gradient(90deg, rgba(7, 23, 38, 0.88) 0%, rgba(7, 23, 38, 0.62) 45%, rgba(7, 23, 38, 0.12) 100%);
}

.yachtiva-home-v2 .yachtiva-hero--v2 .yachtiva-hero__inner {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 24px;
	width: 100%;
	text-align: left;
}

.yachtiva-home-v2 .yachtiva-hero--v2 .yachtiva-eyebrow {
	margin: 0;
}

.yachtiva-home-v2 .yachtiva-hero--v2 .yachtiva-hero__heading {
	max-width: 720px;
	margin: 0;
	font-size: clamp(3rem, 1.5rem + 4.2vw, 5.25rem);
	font-weight: 500;
	line-height: 1.02;
	letter-spacing: -1.5px;
}

.yachtiva-home-v2 .yachtiva-hero__heading em,
.yachtiva-home-v2 .yachtiva-final-cta__heading em {
	font-style: italic;
	font-weight: 500;
	color: var(--yv2-gold-light);
}

.yachtiva-home-v2 .yachtiva-hero--v2 .yachtiva-hero__sub {
	max-width: 560px;
	margin: 0;
	font-size: 20px;
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.86);
}

.yachtiva-home-v2 .yachtiva-hero--v2 .yachtiva-hero__actions {
	justify-content: flex-start;
}

.yachtiva-home-v2 .yachtiva-hero--v2 .yachtiva-hero__badges {
	justify-content: flex-start;
	flex-wrap: wrap;
	gap: 12px 28px;
	margin: 0;
	font-size: 15px;
	font-weight: 500;
	color: rgba(255, 255, 255, 0.92);
}

.yachtiva-home-v2 .yachtiva-hero--v2 .yachtiva-hero__badges span {
	gap: 8px;
}

.yachtiva-home-v2 .yachtiva-hero--v2 .yachtiva-hero__badges svg {
	color: var(--yv2-gold-light);
}

/* ---------- Floating search panel (booking plugin's [mageyabo_yacht_search]) ---------- */

.yachtiva-home-v2 .yachtiva-hero__search--floating {
	position: relative;
	z-index: 5;
	max-width: var(--yachtiva-container);
	margin: -100px auto 0;
}

.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search {
	display: flex;
	flex-direction: column;
	gap: 16px;
	margin: 0;
	padding: 20px;
	background: #fff;
	border: 0;
	border-radius: 20px;
	box-shadow: 0 24px 60px rgba(11, 34, 57, 0.18);
	backdrop-filter: none;
	font-family: var(--yv2-font-sans);
	color: var(--yachtiva-foreground);
}

.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-toggle {
	justify-content: flex-start;
	margin: 0;
	padding: 4px;
	background: var(--yachtiva-muted);
	border: 0;
	box-shadow: none;
}

.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-toggle__btn {
	height: 44px;
	padding: 0 22px;
	font-size: 15px;
	font-weight: 600;
	color: var(--yachtiva-foreground);
}

.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-toggle__btn.is-active {
	background: var(--yachtiva-navy) !important;
	color: #fff;
	box-shadow: none;
}

.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-bar {
	grid-template-columns: minmax(0, 1.4fr) minmax(0, 1.1fr) minmax(0, 1fr) minmax(0, 1.3fr) auto;
	background: #fff;
	border: 1px solid var(--yachtiva-border);
	border-radius: 14px;
	box-shadow: none;
}

.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-bar__field {
	gap: 6px;
	padding: 16px 22px;
	border-bottom: 0;
	border-right: 1px solid var(--yachtiva-border);
}

.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-bar__field:focus-within {
	background: var(--yachtiva-background);
}

.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-bar__field:first-child {
	border-radius: 14px 0 0 14px;
}

.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-bar__field:nth-last-child(2) {
	border-right: 0;
}

.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-bar__label {
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 1.5px;
	color: var(--yv2-muted);
}

.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-bar__label small {
	font-size: 12px;
	font-weight: 500;
	color: var(--yv2-muted);
}

.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-bar__control,
.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-select__trigger {
	font-size: 17px !important;
	font-weight: 500 !important;
	color: var(--yachtiva-foreground) !important;
}

.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-select__chevron {
	border-color: var(--yv2-muted);
}

.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-select__option.is-active {
	background: var(--yachtiva-navy);
}

.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-bar__stepper {
	gap: 14px;
}

.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-bar__step {
	width: 32px;
	height: 32px;
	border-color: #C9D3DC !important;
	color: var(--yachtiva-navy);
	font-size: 18px;
}

.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-guests {
	min-width: 22px;
	font-size: 18px;
	font-weight: 600;
	color: var(--yachtiva-foreground);
}

.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-bar__submit {
	padding: 10px;
}

.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-btn {
	align-self: stretch;
	min-height: 60px;
	padding: 0 32px;
	gap: 10px;
	border-radius: 10px;
	background: var(--yachtiva-navy);
	font-size: 16px;
	font-weight: 600;
}

.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-btn:hover {
	background: #14365A;
}

.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-results:empty {
	display: none;
}

.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search .ybs-search-results {
	margin-top: 8px;
}

/* ---------- Trust strip ---------- */

.yachtiva-home-v2 .yachtiva-trust-strip {
	background: transparent;
	border-bottom: 0;
}

.yachtiva-home-v2 .yachtiva-trust-strip__row {
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0;
	padding-top: 64px;
	padding-bottom: 72px;
}

.yachtiva-home-v2 .yachtiva-trust-strip__item {
	gap: 6px;
	padding: 0 32px;
	text-align: left;
	border-left: 1px solid var(--yv2-rule);
}

.yachtiva-home-v2 .yachtiva-trust-strip__item:last-child {
	border-right: 1px solid var(--yv2-rule);
}

.yachtiva-home-v2 .yachtiva-trust-strip__item strong {
	font-size: 48px;
	font-weight: 500;
	line-height: 1;
}

.yachtiva-home-v2 .yachtiva-trust-strip__item span {
	font-size: 15px;
	color: var(--yv2-muted);
}

/* ---------- Charter classes ---------- */

.yachtiva-home-v2 .yachtiva-classes {
	padding: 40px 0 120px;
}

.yachtiva-home-v2 .yachtiva-classes .yachtiva-section-head {
	margin-bottom: 40px;
}

.yachtiva-home-v2 .yachtiva-classes__grid {
	grid-template-columns: repeat(var(--yachtiva-class-cols, 5), minmax(0, 1fr));
	gap: 20px;
}

.yachtiva-home-v2 .yachtiva-class-tile {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 16px;
	min-height: 200px;
	padding: 24px;
	border-radius: 16px;
	color: var(--yachtiva-foreground);
}

.yachtiva-home-v2 .yachtiva-class-tile:hover {
	transform: translateY(-2px);
	box-shadow: none;
	color: var(--yachtiva-foreground);
}

.yachtiva-home-v2 .yachtiva-class-tile__top {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}

.yachtiva-home-v2 .yachtiva-class-tile__num {
	font-family: var(--yachtiva-font-display);
	font-size: 15px;
	font-style: italic;
	color: var(--yv2-gold-ink);
}

.yachtiva-home-v2 .yachtiva-class-tile__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 999px;
	background: var(--yachtiva-muted);
	color: var(--yachtiva-navy);
}

.yachtiva-home-v2 .yachtiva-class-tile__text {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.yachtiva-home-v2 .yachtiva-class-tile__name {
	font-size: 26px;
	font-weight: 500;
	line-height: 1.15;
}

.yachtiva-home-v2 .yachtiva-class-tile__count {
	font-size: 14px;
	color: var(--yv2-muted);
}

/* ---------- Featured yachts + the shared card ---------- */

.yachtiva-home-v2 .yachtiva-featured {
	padding: 120px 0;
}

.yachtiva-home-v2 .yachtiva-featured .yachtiva-yacht-grid {
	gap: 32px;
}

.yachtiva-home-v2 .yachtiva-featured__more {
	display: none;
}

.yachtiva-home-v2 .yachtiva-yacht-card {
	border-radius: 18px;
	box-shadow: none;
}

.yachtiva-home-v2 .yachtiva-yacht-card:hover {
	transform: none;
	box-shadow: none;
}

.yachtiva-home-v2 .yachtiva-yacht-card__media {
	aspect-ratio: 386 / 256;
}

.yachtiva-home-v2 .yachtiva-yacht-card .yachtiva-badge {
	top: 16px;
	left: 16px;
	padding: 6px 12px;
	background: rgba(255, 255, 255, 0.94);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.5px;
	text-transform: none;
}

.yachtiva-home-v2 .yachtiva-yacht-card__body {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 24px;
}

.yachtiva-home-v2 .yachtiva-yacht-card__title {
	margin: 0;
	font-size: 26px;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: 0;
}

.yachtiva-home-v2 .yachtiva-yacht-card__location {
	gap: 6px;
	margin: 0;
	font-size: 15px;
	color: var(--yv2-muted);
}

.yachtiva-home-v2 .yachtiva-yacht-card__location svg,
.yachtiva-home-v2 .yachtiva-yacht-card__meta svg {
	width: 16px;
	height: 16px;
}

.yachtiva-home-v2 .yachtiva-yacht-card__meta {
	gap: 20px;
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 14px;
	font-weight: 500;
	color: var(--yachtiva-foreground);
}

.yachtiva-home-v2 .yachtiva-yacht-card__meta > span {
	gap: 6px;
}

.yachtiva-home-v2 .yachtiva-yacht-card__meta svg {
	color: var(--yv2-muted);
}

.yachtiva-home-v2 .yachtiva-yacht-card__meta .yachtiva-yacht-card__unit {
	display: inline;
}

.yachtiva-home-v2 .yachtiva-yacht-card__foot {
	margin-top: 4px;
	padding-top: 16px;
	border-top: 1px solid var(--yachtiva-border);
}

.yachtiva-home-v2 .yachtiva-yacht-card__price {
	display: flex;
	align-items: baseline;
	gap: 6px;
	font-size: 14px;
	color: var(--yv2-muted);
}

.yachtiva-home-v2 .yachtiva-yacht-card__price small {
	display: inline;
	font-size: 14px;
	font-weight: 400;
	letter-spacing: 0;
	text-transform: none;
	color: var(--yv2-muted);
}

.yachtiva-home-v2 .yachtiva-yacht-card__price strong {
	font-family: var(--yachtiva-font-display);
	font-size: 28px;
	font-weight: 600;
	color: var(--yachtiva-navy);
}

.yachtiva-home-v2 .yachtiva-yacht-card__price span {
	font-size: 14px;
	color: var(--yv2-muted);
}

.yachtiva-home-v2 .site-main .yachtiva-yacht-card .yachtiva-btn {
	height: 44px;
	padding: 0 20px;
	background: transparent;
	border: 1px solid var(--yachtiva-navy);
	color: var(--yachtiva-navy);
	font-size: 15px;
}

.yachtiva-home-v2 .site-main .yachtiva-yacht-card .yachtiva-btn:hover {
	background: var(--yachtiva-navy);
	color: #fff;
	transform: none;
}

/* ---------- How it works ---------- */

.yachtiva-home-v2 .yachtiva-how {
	padding: 120px 0;
	background: var(--yachtiva-navy);
	color: #fff;
}

.yachtiva-home-v2 .yachtiva-how .yachtiva-section-head {
	margin-bottom: 64px;
}

.yachtiva-home-v2 .yachtiva-how .yachtiva-section-head__title {
	color: #fff;
}

.yachtiva-home-v2 .yachtiva-how__grid {
	gap: 40px;
}

.yachtiva-home-v2 .yachtiva-how__step {
	display: flex;
	flex-direction: column;
	gap: 14px;
	padding: 24px 0 0;
	background: none;
	border: 0;
	border-top: 1px solid rgba(228, 201, 140, 0.4);
	border-radius: 0;
}

.yachtiva-home-v2 .yachtiva-how__num {
	display: block;
	width: auto;
	height: auto;
	margin: 0;
	border-radius: 0;
	background: none;
	font-family: var(--yachtiva-font-display);
	font-size: 44px;
	font-style: italic;
	font-weight: 500;
	line-height: 1;
	color: var(--yv2-gold-light);
}

.yachtiva-home-v2 .yachtiva-how__title {
	margin: 0;
	font-family: var(--yv2-font-sans);
	font-size: 21px;
	font-weight: 600;
	letter-spacing: 0;
	color: #fff;
}

.yachtiva-home-v2 .yachtiva-how__text {
	margin: 0;
	font-size: 16px;
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.78);
}

/* ---------- Testimonial ---------- */

.yachtiva-home-v2 .yachtiva-testimonial {
	padding: 120px 0;
	background: transparent;
}

.yachtiva-home-v2 .yachtiva-testimonial__carousel {
	display: grid;
	grid-template-columns: 380px minmax(0, 1fr);
	grid-template-areas:
		'head card'
		'controls card';
	align-content: center;
	column-gap: 80px;
	max-width: none;
	margin: 0;
}

.yachtiva-home-v2 .yachtiva-testimonial__header {
	grid-area: head;
	align-self: end;
	max-width: none;
	margin: 0;
	text-align: left;
}

.yachtiva-home-v2 .yachtiva-testimonial__header h2 {
	margin: 0;
	font-size: clamp(2.125rem, 1.4rem + 1.8vw, 3rem);
	font-weight: 500;
	line-height: 1.1;
	letter-spacing: 0;
}

.yachtiva-home-v2 .yachtiva-testimonial__viewport {
	grid-area: card;
	align-self: center;
}

.yachtiva-home-v2 .yachtiva-testimonial__card {
	align-items: flex-start;
	justify-content: flex-start;
	gap: 28px;
	min-height: 0;
	padding: 56px 64px;
	border: 1px solid var(--yachtiva-border);
	border-radius: 24px;
	box-shadow: none;
	text-align: left;
}

.yachtiva-home-v2 .yachtiva-testimonial .yachtiva-stars svg {
	width: 18px;
	height: 18px;
}

.yachtiva-home-v2 .yachtiva-testimonial__quote {
	min-height: 176px;
	margin: 0;
	font-size: clamp(1.375rem, 1rem + 1vw, 1.875rem);
	line-height: 1.45;
}

.yachtiva-home-v2 .yachtiva-testimonial__meta {
	gap: 16px;
}

.yachtiva-home-v2 .yachtiva-testimonial__initial {
	background: var(--yachtiva-navy);
	color: var(--yv2-gold-light);
	font-size: 22px;
	font-weight: 400;
}

.yachtiva-home-v2 .yachtiva-testimonial__meta strong {
	font-size: 17px;
	font-weight: 600;
	color: var(--yachtiva-foreground);
}

.yachtiva-home-v2 .yachtiva-testimonial__meta em {
	font-size: 15px;
	color: var(--yv2-muted);
}

.yachtiva-home-v2 .yachtiva-testimonial__controls {
	grid-area: controls;
	align-self: start;
	justify-content: flex-start;
	gap: 12px;
	margin-top: 28px;
}

.yachtiva-home-v2 .yachtiva-testimonial__arrow {
	width: 48px;
	height: 48px;
	border: 1px solid var(--yachtiva-navy);
	background: transparent;
	color: var(--yachtiva-navy);
	font-size: 13px;
}

.yachtiva-home-v2 .yachtiva-testimonial__arrow--next {
	background: var(--yachtiva-navy);
	color: #fff;
}

.yachtiva-home-v2 .yachtiva-testimonial__arrow:hover,
.yachtiva-home-v2 .yachtiva-testimonial__arrow:focus-visible {
	border-color: var(--yachtiva-navy);
	background: var(--yachtiva-navy);
	color: #fff;
}

.yachtiva-home-v2 .yachtiva-testimonial__arrow--next:hover,
.yachtiva-home-v2 .yachtiva-testimonial__arrow--next:focus-visible {
	background: #14365A;
}

.yachtiva-home-v2 .yachtiva-testimonial__autoplay {
	margin-left: 0;
}

.yachtiva-home-v2 .yachtiva-testimonial__dots {
	gap: 2px;
	margin-left: 12px;
}

.yachtiva-home-v2 .yachtiva-testimonial__dots button {
	position: relative;
	width: 28px;
	height: 44px;
	border-radius: 0;
	background: transparent;
}

.yachtiva-home-v2 .yachtiva-testimonial__dots button::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 8px;
	height: 8px;
	border-radius: 999px;
	background: #B7C3CE;
	transform: translate(-50%, -50%);
	transition: width 0.2s ease, background 0.2s ease;
}

.yachtiva-home-v2 .yachtiva-testimonial__dots button[aria-current='true'] {
	width: 28px;
	background: transparent;
}

.yachtiva-home-v2 .yachtiva-testimonial__dots button[aria-current='true']::before {
	width: 24px;
	background: var(--yachtiva-navy);
}

/* ---------- Final CTA ---------- */

.yachtiva-home-v2 .yachtiva-final-cta {
	padding: 0 0 120px;
	background: transparent;
	text-align: left;
}

.yachtiva-home-v2 .yachtiva-final-cta__panel {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 64px;
	padding: 88px 96px;
	border-radius: 28px;
	background: var(--yachtiva-navy-deep);
	color: #fff;
}

.yachtiva-home-v2 .yachtiva-final-cta__heading {
	max-width: 760px;
	margin: 0;
	font-size: clamp(2rem, 1.2rem + 2.2vw, 3.25rem);
	font-weight: 500;
	line-height: 1.12;
	letter-spacing: 0;
}

.yachtiva-home-v2 .yachtiva-final-cta__text {
	margin: 16px 0 0;
}

.yachtiva-home-v2 .yachtiva-final-cta__actions {
	flex-shrink: 0;
	justify-content: flex-end;
	gap: 12px;
}

.yachtiva-home-v2 .yachtiva-final-cta .yachtiva-btn {
	height: 60px;
	padding: 0 34px;
	gap: 10px;
	font-size: 17px;
}

.yachtiva-home-v2 .site-main .yachtiva-final-cta .yachtiva-btn--ghost {
	color: #fff;
}

/* ---------- FAQ ---------- */

.yachtiva-home-v2 .yachtiva-faq {
	padding: 0 0 120px;
}

.yachtiva-home-v2 .yachtiva-faq__inner {
	display: grid;
	grid-template-columns: 380px minmax(0, 1fr);
	gap: 80px;
	align-items: start;
}

.yachtiva-home-v2 .yachtiva-faq__head {
	position: sticky;
	top: calc(var(--wp-admin--admin-bar--height, 0px) + var(--yv2-header-h) + 32px);
	max-width: none;
	margin: 0;
	text-align: left;
}

.yachtiva-home-v2 .yachtiva-faq__head .yachtiva-section-head__title {
	margin: 0;
}

.yachtiva-home-v2 .yachtiva-faq__sub {
	margin-top: 16px;
	font-size: 16px;
	line-height: 1.6;
	color: var(--yv2-muted);
}

.yachtiva-home-v2 .yachtiva-faq__contact {
	margin-top: 20px;
}

.yachtiva-home-v2 .yachtiva-faq__list {
	gap: 0;
	max-width: none;
	margin: 0;
	border-bottom: 1px solid var(--yv2-rule);
}

.yachtiva-home-v2 .yachtiva-faq__item,
.yachtiva-home-v2 .yachtiva-faq__item[open] {
	background: transparent;
	border: 0;
	border-top: 1px solid var(--yv2-rule);
	border-radius: 0;
	box-shadow: none;
}

.yachtiva-home-v2 .yachtiva-faq__question {
	padding: 26px 0;
	font-size: 19px;
	font-weight: 600;
	color: var(--yachtiva-navy);
}

.yachtiva-home-v2 .yachtiva-faq__question:hover {
	color: var(--yv2-gold-ink);
}

.yachtiva-home-v2 .yachtiva-faq__icon {
	flex-basis: 40px;
	width: 40px;
	height: 40px;
	background: transparent;
	border: 1px solid var(--yachtiva-navy);
	transition: background 0.2s ease;
}

.yachtiva-home-v2 .yachtiva-faq__icon::before,
.yachtiva-home-v2 .yachtiva-faq__icon::after {
	background: var(--yachtiva-navy);
}

.yachtiva-home-v2 .yachtiva-faq__item[open] .yachtiva-faq__icon {
	background: var(--yachtiva-navy);
}

.yachtiva-home-v2 .yachtiva-faq__item[open] .yachtiva-faq__icon::before,
.yachtiva-home-v2 .yachtiva-faq__item[open] .yachtiva-faq__icon::after {
	background: #fff;
}

.yachtiva-home-v2 .yachtiva-faq__answer {
	max-width: 680px;
	padding: 0 56px 28px 0;
	font-size: 16px;
	color: var(--yv2-muted);
}

/* ---------- Tablet ---------- */

@media (max-width: 1024px) {
	.yachtiva-home-v2 .yachtiva-classes__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.yachtiva-home-v2 .yachtiva-testimonial__carousel {
		grid-template-columns: minmax(0, 1fr);
		grid-template-areas:
			'head'
			'card'
			'controls';
		row-gap: 24px;
	}

	.yachtiva-home-v2 .yachtiva-testimonial__controls {
		margin-top: 0;
	}

	.yachtiva-home-v2 .yachtiva-testimonial__quote {
		min-height: 0;
	}

	.yachtiva-home-v2 .yachtiva-faq__inner {
		grid-template-columns: minmax(0, 1fr);
		gap: 32px;
	}

	.yachtiva-home-v2 .yachtiva-faq__head {
		position: static;
	}

	.yachtiva-home-v2 .yachtiva-final-cta__panel {
		flex-direction: column;
		align-items: flex-start;
		gap: 32px;
		padding: 64px 48px;
	}

}

@media (max-width: 900px) {
	/* Search: Where / Date + Guests / Price / full-width button. */
	.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-bar {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		border: 0;
		border-radius: 0;
	}

	.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-bar__field {
		padding: 12px 16px;
		border: 1px solid var(--yachtiva-border);
		border-top-width: 0;
	}

	.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-bar__field:nth-child(1) {
		grid-column: span 2;
		border-top-width: 1px;
		border-radius: 14px 14px 0 0;
	}

	.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-bar__field:nth-child(3) {
		border-left-width: 0;
	}

	.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-bar__field:nth-child(4) {
		grid-column: span 2;
		border-right-width: 1px;
		border-radius: 0 0 14px 14px;
	}

	.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-bar__submit {
		grid-column: 1 / -1;
		padding: 12px 0 0;
	}

	.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-btn {
		width: 100%;
		min-height: 54px;
		border-radius: 12px;
	}
}

@media (max-width: 782px) {
	.yachtiva-home-v2 {
		--yv2-header-h: 72px;
	}

	.yachtiva-home-v2 .yachtiva-header__logo {
		font-size: 24px;
	}

}

@media (max-width: 900px) {
	/* Four stats across leave "Yachts in the fleet" wrapping; go 2 × 2. */
	.yachtiva-home-v2 .yachtiva-trust-strip__row {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		row-gap: 32px;
	}

	.yachtiva-home-v2 .yachtiva-trust-strip__item:last-child {
		border-right: 0;
	}
}

/* ---------- Phone ---------- */

@media (max-width: 600px) {
	.yachtiva-home-v2 .yachtiva-eyebrow {
		font-size: 12px;
		letter-spacing: 2.5px;
	}

	.yachtiva-home-v2 .yachtiva-section-head {
		margin-bottom: 28px;
		gap: 0;
	}

	.yachtiva-home-v2 .yachtiva-section-head .yachtiva-link {
		display: none;
	}

	/* Hero */
	.yachtiva-home-v2 .yachtiva-hero--v2 {
		align-items: flex-end;
		min-height: 620px;
		padding-bottom: 48px;
		background-position: 62% center;
	}

	.yachtiva-home-v2 .yachtiva-hero--v2.has-search {
		padding-bottom: 120px;
	}

	.yachtiva-home-v2 .yachtiva-hero--v2 .yachtiva-hero__overlay {
		background: linear-gradient(180deg, rgba(7, 23, 38, 0.55) 0%, rgba(7, 23, 38, 0.35) 40%, rgba(7, 23, 38, 0.9) 100%);
	}

	.yachtiva-home-v2 .yachtiva-hero--v2 .yachtiva-hero__inner {
		gap: 16px;
	}

	.yachtiva-home-v2 .yachtiva-hero--v2 .yachtiva-hero__heading {
		letter-spacing: -0.5px;
		line-height: 1.05;
	}

	.yachtiva-home-v2 .yachtiva-hero--v2 .yachtiva-hero__sub {
		font-size: 17px;
		line-height: 1.55;
	}

	.yachtiva-home-v2 .yachtiva-hero--v2 .yachtiva-hero__badges {
		display: none;
	}

	/* Search */
	.yachtiva-home-v2 .yachtiva-hero__search--floating {
		margin-top: -96px;
		padding: 0 16px;
	}

	.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-bar__field {
		padding: 12px 16px;
	}

	.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search {
		gap: 12px;
		padding: 16px;
		box-shadow: 0 20px 48px rgba(11, 34, 57, 0.2);
	}

	.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-toggle {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		width: 100%;
	}

	.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-toggle__btn {
		padding: 0 8px;
	}

	.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-bar__label small {
		display: none;
	}

	.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-bar__control,
	.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-select__trigger {
		font-size: 16px !important;
	}

	.yachtiva-home-v2 .yachtiva-hero__search--floating .ybs-search-bar__stepper {
		justify-content: space-between;
	}

	/* Trust strip */
	.yachtiva-home-v2 .yachtiva-trust-strip__row {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		row-gap: 28px;
		padding-top: 40px;
		padding-bottom: 48px;
	}

	.yachtiva-home-v2 .yachtiva-trust-strip__item {
		gap: 4px;
		padding: 0 0 0 16px;
	}

	.yachtiva-home-v2 .yachtiva-trust-strip__item:last-child {
		border-right: 0;
	}

	.yachtiva-home-v2 .yachtiva-trust-strip__item strong {
		font-size: 36px;
	}

	.yachtiva-home-v2 .yachtiva-trust-strip__item span {
		font-size: 14px;
	}

	/* Charter classes: one swipeable row */
	.yachtiva-home-v2 .yachtiva-classes {
		padding: 24px 0 64px;
	}

	.yachtiva-home-v2 .yachtiva-classes .yachtiva-section-head {
		margin-bottom: 24px;
	}

	.yachtiva-home-v2 .yachtiva-classes__grid {
		display: flex;
		gap: 12px;
		margin: 0 -1.25rem;
		padding: 0 1.25rem 4px;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		scroll-padding: 0 1.25rem;
		scrollbar-width: none;
	}

	.yachtiva-home-v2 .yachtiva-classes__grid::-webkit-scrollbar {
		display: none;
	}

	.yachtiva-home-v2 .yachtiva-class-tile {
		flex: 0 0 150px;
		min-height: 150px;
		padding: 18px;
		scroll-snap-align: start;
	}

	.yachtiva-home-v2 .yachtiva-class-tile__num {
		font-size: 14px;
	}

	.yachtiva-home-v2 .yachtiva-class-tile__icon {
		display: none;
	}

	.yachtiva-home-v2 .yachtiva-class-tile__text {
		gap: 2px;
	}

	.yachtiva-home-v2 .yachtiva-class-tile__name {
		font-size: 22px;
	}

	.yachtiva-home-v2 .yachtiva-class-tile__count {
		font-size: 13px;
	}

	/* Featured yachts: three cards, then "See all" */
	.yachtiva-home-v2 .yachtiva-featured {
		padding: 64px 0;
	}

	.yachtiva-home-v2 .yachtiva-featured .yachtiva-yacht-grid {
		gap: 28px;
	}

	.yachtiva-home-v2 .yachtiva-featured .yachtiva-yacht-grid__cell:nth-child(n + 4) {
		display: none;
	}

	.yachtiva-home-v2 .yachtiva-featured__more {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 8px;
		height: 52px;
		margin-top: 28px;
		border-radius: 999px;
		background: var(--yachtiva-navy);
		color: #fff;
		font-size: 16px;
		font-weight: 600;
	}

	.yachtiva-home-v2 .yachtiva-featured__more:hover {
		background: #14365A;
		color: #fff;
	}

	.yachtiva-home-v2 .yachtiva-yacht-card__media {
		aspect-ratio: 350 / 216;
	}

	.yachtiva-home-v2 .yachtiva-yacht-card__body {
		gap: 10px;
		padding: 20px;
	}

	.yachtiva-home-v2 .yachtiva-yacht-card__title {
		font-size: 24px;
	}

	.yachtiva-home-v2 .yachtiva-yacht-card__price strong {
		font-size: 26px;
	}

	/* How it works */
	.yachtiva-home-v2 .yachtiva-how {
		padding: 64px 0;
	}

	.yachtiva-home-v2 .yachtiva-how .yachtiva-section-head {
		align-items: flex-start;
		margin-bottom: 32px;
		text-align: left;
	}

	.yachtiva-home-v2 .yachtiva-how__grid {
		gap: 24px;
	}

	.yachtiva-home-v2 .yachtiva-how__step {
		display: grid;
		grid-template-columns: 52px minmax(0, 1fr);
		gap: 4px 12px;
		padding-top: 20px;
	}

	.yachtiva-home-v2 .yachtiva-how__num {
		grid-row: span 2;
		font-size: 32px;
	}

	.yachtiva-home-v2 .yachtiva-how__title {
		font-size: 18px;
	}

	.yachtiva-home-v2 .yachtiva-how__text {
		font-size: 15px;
		line-height: 1.55;
	}

	/* Testimonial */
	.yachtiva-home-v2 .yachtiva-testimonial {
		padding: 64px 0;
	}

	.yachtiva-home-v2 .yachtiva-testimonial__card {
		gap: 20px;
		padding: 28px 24px;
		border-radius: 20px;
	}

	.yachtiva-home-v2 .yachtiva-testimonial .yachtiva-stars svg {
		width: 16px;
		height: 16px;
	}

	.yachtiva-home-v2 .yachtiva-testimonial__quote {
		min-height: 0;
		font-size: 22px;
		line-height: 1.5;
	}

	.yachtiva-home-v2 .yachtiva-testimonial__initial {
		width: 44px;
		height: 44px;
		flex-basis: 44px;
		font-size: 19px;
	}

	.yachtiva-home-v2 .yachtiva-testimonial__controls {
		gap: 10px;
	}

	.yachtiva-home-v2 .yachtiva-testimonial__dots {
		order: -1;
		margin: 0 auto 0 0;
	}

	.yachtiva-home-v2 .yachtiva-testimonial__arrow {
		width: 44px;
		height: 44px;
	}

	/* Final CTA */
	.yachtiva-home-v2 .yachtiva-final-cta {
		padding-bottom: 64px;
	}

	.yachtiva-home-v2 .yachtiva-final-cta .yachtiva-container {
		padding: 0 16px;
	}

	.yachtiva-home-v2 .yachtiva-final-cta__panel {
		align-items: stretch;
		gap: 28px;
		padding: 44px 28px;
		border-radius: 24px;
	}

	.yachtiva-home-v2 .yachtiva-final-cta__heading {
		font-size: 32px;
		line-height: 1.18;
	}

	.yachtiva-home-v2 .yachtiva-final-cta__actions {
		flex-direction: column;
		align-items: stretch;
	}

	.yachtiva-home-v2 .yachtiva-final-cta .yachtiva-btn {
		height: 54px;
		font-size: 16px;
	}

	/* FAQ */
	.yachtiva-home-v2 .yachtiva-faq {
		padding-bottom: 64px;
	}

	.yachtiva-home-v2 .yachtiva-faq__question {
		padding: 20px 0;
		font-size: 17px;
	}

	.yachtiva-home-v2 .yachtiva-faq__icon {
		flex-basis: 36px;
		width: 36px;
		height: 36px;
	}

	.yachtiva-home-v2 .yachtiva-faq__answer {
		padding: 0 0 22px;
		font-size: 15px;
	}
}
