/* Golden Sands (taxi-golden-sands) — layouts from the 10 site mockups. Loaded only on that site. */

.mt-gs {
	--gs-navy: #10304a;
	--gs-navy-2: #0c2539;
	--gs-ink: #13283b;
	--gs-text: #44566a;
	--gs-muted: #6c7c8c;
	--gs-yellow: #f6c431;
	--gs-yellow-2: #e9b416;
	--gs-cream: #fdf4d6;
	--gs-green: #27a35a;
	--gs-teal: #4f8582;
	--gs-viber: #7b5cd6;
	--gs-line: #e2e8ee;
	--gs-soft: #f2f5f8;
	--gs-radius: 12px;
	--gs-shadow: 0 1px 2px rgba(16, 48, 74, .06), 0 6px 22px rgba(16, 48, 74, .07);
	--gs-font: "Avenir Next", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	background: #fff;
	color: var(--gs-text);
	font-family: var(--gs-font);
	font-size: 16px;
	line-height: 1.55;
}

.mt-gs .site.grid-container,
.mt-gs .site-content,
.mt-gs .site-footer,
.mt-gs .inside-site-info {
	max-width: none;
	margin: 0;
	padding: 0;
	display: block;
	background: transparent;
}

.mt-gs h1,
.mt-gs h2,
.mt-gs h3 {
	color: var(--gs-ink);
	font-family: var(--gs-font);
	font-weight: 700;
	letter-spacing: -.01em;
	line-height: 1.2;
	margin: 0 0 .5em;
}

.mt-gs h1 { font-size: clamp(2rem, 1.3rem + 2.4vw, 3.1rem); }
.mt-gs h2 { font-size: clamp(1.4rem, 1.1rem + 1vw, 1.9rem); }
.mt-gs h3 { font-size: 1.12rem; }
.mt-gs p { margin: 0 0 1em; }
.mt-gs a { color: var(--gs-navy); }
.mt-gs img { display: block; max-width: 100%; height: auto; }

.gs-wrap {
	width: 100%;
	max-width: 1220px;
	margin: 0 auto;
	padding: 0 24px;
	box-sizing: border-box;
}

.gs-icon { width: 1.25em; height: 1.25em; flex: none; }

/* Buttons */
.gs-btn,
.mt-gs .wpcf7-submit.gs-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .6em;
	min-height: 48px;
	padding: .7em 1.4em;
	border: 1.5px solid transparent;
	border-radius: 10px;
	font: 700 1rem/1.15 var(--gs-font);
	text-decoration: none;
	cursor: pointer;
	transition: background-color .15s, border-color .15s, color .15s, transform .15s;
	box-sizing: border-box;
}

.gs-btn:hover { transform: translateY(-1px); }
.gs-btn:focus-visible { outline: 3px solid #1a73e8; outline-offset: 2px; }
.gs-btn small { display: block; font-size: .82em; font-weight: 600; }
.gs-btn--stack { justify-content: flex-start; text-align: left; }
.gs-btn--stack .gs-icon { width: 1.6em; height: 1.6em; }
.gs-btn--stack strong { display: block; font-size: 1.05em; }
.gs-btn--block { display: flex; width: 100%; }

.mt-gs .gs-btn--yellow { background: var(--gs-yellow); color: var(--gs-ink); }
.mt-gs .gs-btn--yellow:hover { background: var(--gs-yellow-2); color: var(--gs-ink); }
.mt-gs .gs-btn--navy { background: var(--gs-navy); color: #fff; }
.mt-gs .gs-btn--navy:hover { background: var(--gs-navy-2); color: #fff; }
.mt-gs .gs-btn--green { background: var(--gs-green); color: #fff; }
.mt-gs .gs-btn--green:hover { background: #1f8a4b; color: #fff; }
.mt-gs .gs-btn--teal { background: var(--gs-teal); color: #fff; }
.mt-gs .gs-btn--teal:hover { background: #3f6f6c; color: #fff; }
.mt-gs .gs-btn--outline { background: #fff; border-color: var(--gs-navy); color: var(--gs-navy); }
.mt-gs .gs-btn--outline:hover { background: var(--gs-soft); color: var(--gs-navy); }
.mt-gs .gs-btn--outline-light { background: transparent; border-color: rgba(255, 255, 255, .7); color: #fff; }
.mt-gs .gs-btn--outline-light:hover { background: rgba(255, 255, 255, .1); color: #fff; }

.gs-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.gs-actions--stack { flex-direction: column; min-width: 260px; }

.gs-pill {
	display: inline-flex;
	align-items: center;
	gap: .45em;
	padding: .45em .9em;
	border-radius: 7px;
	background: var(--gs-yellow);
	color: var(--gs-ink) !important;
	font-size: .85rem;
	font-weight: 700;
	text-decoration: none;
}

.gs-pill .gs-icon { width: 1em; height: 1em; }

.gs-tag {
	display: inline-block;
	margin: 0 0 14px;
	padding: .3em .75em;
	border-radius: 6px;
	background: var(--gs-cream);
	color: #7a5a00;
	font-size: .8rem;
	font-weight: 700;
}

.gs-more {
	display: inline-flex;
	align-items: center;
	gap: .4em;
	color: var(--gs-ink) !important;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
}

.gs-more .gs-icon { width: 1.05em; height: 1.05em; color: var(--gs-yellow-2); }
.gs-more:hover { text-decoration: underline; }

.gs-kicker {
	margin: 0 0 .5em;
	color: #2b7a73;
	font-size: .78rem;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.gs-small { color: var(--gs-muted); font-size: .88rem; }

/* Header */
.gs-header {
	position: sticky;
	top: 0;
	z-index: 50;
	background: #fff;
	border-bottom: 1px solid var(--gs-line);
}

.admin-bar .gs-header { top: 32px; }

.gs-header__bar {
	display: flex;
	align-items: center;
	gap: 28px;
	min-height: 76px;
}

.gs-brand {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	margin-right: auto;
	text-decoration: none;
}

.gs-brand img { width: 150px; height: auto; }

.gs-brand span {
	padding-left: 12px;
	border-left: 1px solid var(--gs-line);
	color: var(--gs-ink);
	font-size: .72rem;
	font-weight: 700;
	letter-spacing: .14em;
	line-height: 1.1;
	text-transform: uppercase;
}

.gs-nav { display: flex; align-items: center; gap: 30px; }

.gs-nav a {
	position: relative;
	padding: 26px 0;
	color: var(--gs-ink) !important;
	font-size: .95rem;
	font-weight: 600;
	text-decoration: none;
}

.gs-nav a::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 18px;
	height: 3px;
	border-radius: 2px;
	background: var(--gs-yellow);
	transform: scaleX(0);
	transition: transform .15s;
}

.gs-nav a:hover::after,
.gs-nav a.is-current::after { transform: scaleX(1); }

.gs-header__cta { min-height: 44px; padding: .6em 1.3em; }

.gs-nav-toggle {
	display: none;
	padding: 8px;
	border: 0;
	background: none;
	color: var(--gs-ink);
	cursor: pointer;
}

.gs-nav-toggle .gs-icon { width: 28px; height: 28px; }

/* Heroes */
.gs-hero {
	position: relative;
	display: flex;
	overflow: hidden;
	background: var(--gs-navy);
	isolation: isolate;
}

.gs-hero__media { position: absolute; inset: 0; z-index: -1; }
.gs-hero__media img { width: 100%; height: 100%; object-fit: cover; object-position: var(--gs-focus, 50% 50%); }
.gs-hero__media::after { content: ""; position: absolute; inset: 0; }
.gs-hero__inner { display: flex; align-items: flex-end; }
.gs-hero__copy { max-width: 620px; }
.gs-hero h1 { margin-bottom: .35em; }
.gs-hero__lede { max-width: 560px; font-size: 1.08rem; }

.gs-hero--overlay { min-height: 440px; }
.gs-hero--overlay .gs-hero__inner { padding-top: 120px; padding-bottom: 48px; }
.gs-hero--overlay .gs-hero__media::after {
	background:
		linear-gradient(0deg, rgba(8, 24, 38, .78) 0%, rgba(8, 24, 38, .2) 55%, rgba(8, 24, 38, 0) 75%),
		linear-gradient(90deg, rgba(8, 24, 38, .55) 0%, rgba(8, 24, 38, 0) 60%);
}
.gs-hero--overlay h1,
.gs-hero--overlay .gs-hero__lede { color: #fff; text-shadow: 0 1px 12px rgba(0, 0, 0, .25); }

.gs-hero--home { min-height: 540px; background: #eaf3fa; }
.gs-hero--home .gs-hero__media { right: auto; width: 57%; }
.gs-hero--home .gs-hero__media img { object-position: var(--gs-focus, 50% 72%); }
.gs-hero--home .gs-hero__media::after { background: linear-gradient(90deg, rgba(234, 243, 250, 0) 70%, #eaf3fa 100%); }
.gs-hero--home .gs-hero__inner { align-items: center; justify-content: flex-end; padding-top: 48px; padding-bottom: 48px; }
.gs-hero--home .gs-hero__copy { max-width: 480px; }
.gs-hero--home .gs-actions { margin: 22px 0 18px; }
.gs-hero--home .gs-hero__lede { color: var(--gs-ink); }

.gs-hero--fade { min-height: 420px; background: #fff; }
.gs-hero--fade .gs-hero__media { left: 28%; }
.gs-hero--fade .gs-hero__media::after { background: linear-gradient(90deg, #fff 0%, rgba(255, 255, 255, .85) 18%, rgba(255, 255, 255, 0) 48%); }
.gs-hero--fade .gs-hero__inner { align-items: center; padding-top: 32px; padding-bottom: 40px; }
.gs-hero--fade .gs-hero__copy { max-width: 540px; }
.gs-hero--fade .gs-hero__lede { color: var(--gs-ink); }

.gs-hero__facts {
	display: flex;
	flex-wrap: wrap;
	gap: 18px 26px;
	margin: 22px 0 0;
	padding: 0;
	list-style: none;
}

.gs-hero__facts li { display: flex; align-items: center; gap: 10px; font-size: .85rem; }
.gs-hero__facts .gs-icon { width: 34px; height: 34px; padding: 7px; border-radius: 50%; background: var(--gs-yellow); color: var(--gs-ink); box-sizing: border-box; }
.gs-hero__facts strong { display: block; color: var(--gs-ink); }

.gs-badge {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: 16px;
	padding: 7px 14px 7px 9px;
	border-radius: 999px;
	background: #fff;
	box-shadow: 0 2px 10px rgba(0, 0, 0, .12);
	color: var(--gs-ink) !important;
	font-size: .85rem;
	text-decoration: none;
}

.gs-badge .gs-icon { width: 20px; height: 20px; }
.gs-badge strong { font-size: .95rem; }
.gs-stars { color: #f5b301; letter-spacing: .05em; }

.gs-crumbs {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 18px;
	color: var(--gs-muted);
	font-size: .85rem;
}

.gs-crumbs a { color: #2b7a73 !important; text-decoration: none; }
.gs-crumbs a:hover { text-decoration: underline; }

/* Panels and sections */
.gs-panel {
	background: #fff;
	border: 1px solid var(--gs-line);
	border-radius: var(--gs-radius);
	box-shadow: var(--gs-shadow);
}

.gs-section { padding: 56px 0 0; }
.gs-section--tight { padding-top: 36px; }
.gs-section--last { padding-bottom: 8px; }
.gs-main > .gs-wrap:last-child,
.gs-main > .gs-wrap:last-of-type { padding-bottom: 72px; }
.gs-center { text-align: center; }
.gs-center .gs-intro { max-width: 760px; margin: 0 auto 30px; }
.gs-intro p { margin: 0 0 .8em; }
.gs-intro p:last-child { margin-bottom: 0; }
.gs-discover { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr); gap: 32px; align-items: start; }
.gs-discover h2 { margin: 0; }
.gs-discover .gs-prose p:first-child { margin-top: 0; }
.gs-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 22px; }
.gs-head h2 { margin: 0; }
.gs-head p { margin: 6px 0 0; }
.gs-icon-heading { display: flex; align-items: center; gap: 12px; }
.gs-icon-heading .gs-icon { width: 30px; height: 30px; color: var(--gs-ink); }

/* Map + reviews (home) */
.gs-find {
	display: grid;
	grid-template-columns: minmax(0, 1.75fr) minmax(300px, 1fr);
	gap: 20px;
	margin-top: -36px;
	position: relative;
	z-index: 2;
}

.gs-find__map { display: flex; flex-direction: column; padding: 26px; }
.gs-find__map .gs-map { flex: 1; min-height: 380px; aspect-ratio: auto; }
.gs-find__map h2 { margin-bottom: .2em; }
.gs-find__map p { color: var(--gs-muted); }

.gs-map {
	position: relative;
	overflow: hidden;
	border-radius: 10px;
	background: #dfe9ef;
	aspect-ratio: 16 / 10;
}

.gs-map iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }

.gs-map__shield {
	position: absolute;
	inset: 0;
	border: 0;
	background: transparent;
	color: transparent;
	cursor: pointer;
}

.gs-map__label {
	position: absolute;
	left: 10px;
	bottom: 10px;
	padding: 4px 10px;
	border-radius: 6px;
	background: rgba(255, 255, 255, .94);
	color: var(--gs-ink);
	font-size: .76rem;
	font-weight: 600;
	pointer-events: none;
}

.gs-map--route { aspect-ratio: 21 / 8; margin: 0; }
.gs-map--sketch svg { position: absolute; inset: 0; width: 100%; height: 100%; }
.gs-map--sketch .gs-map__label { left: auto; right: 10px; }

.mt-gs .gs-map__open {
	position: absolute;
	left: 10px;
	bottom: 10px;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 5px 10px;
	border-radius: 6px;
	background: #fff;
	color: var(--gs-ink);
	font-size: .78rem;
	font-weight: 700;
	text-decoration: none;
}

.gs-map__open .gs-icon { width: 14px; height: 14px; }

.gs-reviews { display: flex; flex-direction: column; padding: 24px; }
.gs-reviews__head { padding-bottom: 14px; border-bottom: 1px solid var(--gs-line); }
.gs-google { display: inline-flex; font: 600 1.9rem/1 "Product Sans", var(--gs-font); letter-spacing: -.02em; }
.gs-google span:nth-child(1), .gs-google span:nth-child(4) { color: #4285f4; }
.gs-google span:nth-child(2), .gs-google span:nth-child(6) { color: #ea4335; }
.gs-google span:nth-child(3) { color: #fbbc05; }
.gs-google span:nth-child(5) { color: #34a853; }
.gs-reviews__score { display: flex; align-items: center; gap: 10px; margin: 10px 0 2px; }
.gs-reviews__score strong { color: var(--gs-ink); font-size: 1.6rem; }
.gs-reviews__score .gs-stars { font-size: 1.2rem; }
.gs-reviews__meta { margin: 0; color: var(--gs-ink); font-weight: 600; }
.gs-reviews__list { flex: 1; margin: 0 0 16px; padding: 0; list-style: none; }

.gs-review {
	display: flex;
	gap: 12px;
	padding: 14px 0;
	border-bottom: 1px solid var(--gs-line);
}

.gs-review__avatar {
	display: grid;
	place-items: center;
	width: 40px;
	height: 40px;
	flex: none;
	border-radius: 50%;
	background: #e3ebf2;
	color: var(--gs-navy);
	font-weight: 700;
}

.gs-review__name { margin: 0 0 3px; color: var(--gs-ink); font-size: .92rem; font-weight: 700; }
.gs-review__name .gs-stars { margin-left: 4px; font-size: .8rem; }

.gs-review__text {
	display: -webkit-box;
	margin: 0;
	overflow: hidden;
	font-size: .88rem;
	line-height: 1.45;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
}

.gs-reviews__note { margin: 10px 0 0; color: var(--gs-muted); font-size: .76rem; text-align: center; }

.gs-reviews--wide .gs-reviews__list { display: grid; grid-template-columns: 1fr 1fr; gap: 0 28px; }
.gs-reviews--wide { flex-direction: column; }
.gs-reviews--wide .gs-btn--block { width: auto; align-self: flex-start; }

/* Cards */
.gs-cards { display: grid; gap: 20px; text-align: left; }
.gs-cards--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.gs-cards--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.gs-cards--6 { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }

.gs-card {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	background: #fff;
	border: 1px solid var(--gs-line);
	border-radius: var(--gs-radius);
	box-shadow: var(--gs-shadow);
}

.gs-card__media img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; }
.gs-cards--3.gs-cards--pill .gs-card__media img { aspect-ratio: 16 / 10; }
.gs-card__body { display: flex; flex: 1; flex-direction: column; align-items: flex-start; padding: 16px 18px 20px; }
.gs-card__body h3 { margin-bottom: .3em; }
.gs-card__body h3 a { color: var(--gs-ink) !important; text-decoration: none; }
.gs-card__body p { flex: 1; margin-bottom: 14px; font-size: .92rem; }
.gs-cards--full .gs-card__body p:not(.gs-tag) { flex: 1; }
.gs-cards--full .gs-tag { flex: 0; }

/* Steps */
.gs-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin: 26px 0 0; padding: 0; list-style: none; text-align: left; }
.gs-steps li { position: relative; display: flex; align-items: flex-start; gap: 14px; }
.gs-steps h3 { margin: 4px 0 4px; font-size: 1.02rem; }
.gs-steps p { margin: 0; font-size: .9rem; }

.gs-steps__num {
	display: grid;
	place-items: center;
	width: 46px;
	height: 46px;
	flex: none;
	border-radius: 50%;
	color: #fff;
	font-weight: 700;
	font-size: 1.1rem;
}

.gs-steps--arrows li:nth-child(1) .gs-steps__num { background: #135f86; }
.gs-steps--arrows li:nth-child(2) .gs-steps__num { background: #4f9a7a; }
.gs-steps--arrows li:nth-child(3) .gs-steps__num { background: #5b8b8d; }
.gs-steps--arrows li:not(:last-child)::after {
	content: "→";
	position: absolute;
	right: -16px;
	top: 26px;
	color: var(--gs-muted);
}

.gs-steps--icons li { padding-right: 18px; border-right: 1px solid var(--gs-line); }
.gs-steps--icons li:last-child { border-right: 0; }
.gs-steps--icons .gs-steps__num { width: 30px; height: 30px; border: 1.5px solid var(--gs-line); background: #fff; color: var(--gs-ink); font-size: .95rem; }
.gs-steps--icons .gs-icon { width: 30px; height: 30px; color: var(--gs-navy); }
.gs-steps--icons li:last-child .gs-icon { color: var(--gs-green); }

/* Photos */
.gs-photo-row { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 48px; }
.gs-photo-row figure, .gs-mosaic figure { margin: 0; overflow: hidden; border-radius: 10px; }
.gs-photo-row img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; }

/* FAQ */
.gs-faq__list { display: grid; gap: 10px; }

.gs-faq details {
	margin: 0;
	background: #fff;
	border: 1px solid var(--gs-line);
	border-radius: 10px;
}

.gs-faq summary {
	position: relative;
	padding: 15px 52px 15px 18px;
	color: var(--gs-ink);
	font-weight: 600;
	list-style: none;
	cursor: pointer;
}

.gs-faq summary::-webkit-details-marker { display: none; }

.gs-faq summary::after {
	content: "";
	position: absolute;
	right: 20px;
	top: 50%;
	width: 9px;
	height: 9px;
	border-right: 2px solid var(--gs-ink);
	border-bottom: 2px solid var(--gs-ink);
	transform: translateY(-70%) rotate(45deg);
	transition: transform .15s;
}

.gs-faq details[open] summary::after { transform: translateY(-30%) rotate(-135deg); }
.gs-faq details > :not(summary) { margin: 0; padding: 0 18px 16px; }
.gs-faq h2 .gs-icon { width: 30px; height: 30px; margin-right: 10px; color: var(--gs-ink); vertical-align: -6px; }

/* Order */
.gs-channels { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 24px; }

.gs-channel {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 18px 20px;
	border-radius: var(--gs-radius);
	text-decoration: none;
	box-shadow: var(--gs-shadow);
}

.gs-channel__icon .gs-icon { width: 40px; height: 40px; }
.gs-channel__text { display: flex; flex-direction: column; line-height: 1.3; }
.gs-channel__text strong { font-size: 1rem; }
.gs-channel__text b { font-size: 1.15rem; }
.gs-channel__text small { font-size: .82rem; opacity: .85; }
.mt-gs .gs-channel--yellow { background: var(--gs-yellow); color: var(--gs-ink); }
.mt-gs .gs-channel--navy { background: var(--gs-navy); color: #fff; }
.mt-gs .gs-channel--teal { background: var(--gs-teal); color: #fff; }

.gs-channels--cards .gs-channel { flex-direction: column; align-items: flex-start; position: relative; padding: 22px; background: #fff !important; border: 1px solid var(--gs-line); color: var(--gs-ink) !important; }
.gs-channels--cards .gs-channel__icon { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 50%; color: #fff; }
.gs-channels--cards .gs-channel__icon .gs-icon { width: 26px; height: 26px; }
.gs-channels--cards .gs-channel--yellow .gs-channel__icon { background: var(--gs-green); }
.gs-channels--cards .gs-channel--navy .gs-channel__icon { background: var(--gs-teal); }
.gs-channels--cards .gs-channel--teal .gs-channel__icon { background: var(--gs-viber); }
.gs-channels--cards .gs-channel__text b { font-size: 1.3rem; }
.gs-channels--cards .gs-channel > .gs-icon { position: absolute; right: 18px; bottom: 26px; transform: rotate(-90deg); }

.gs-order { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(300px, 1fr); gap: 20px; margin-top: 20px; align-items: start; }
.gs-order__form { padding: 28px; }
.gs-order__form > p { color: var(--gs-muted); }
.gs-order__side { display: grid; gap: 16px; }
.gs-now, .gs-locate, .gs-area { padding: 22px; }
.gs-now { display: grid; gap: 10px; background: #edf3f2; }
.gs-now p { margin: 0 0 4px; font-size: .9rem; }
.gs-now h2, .gs-locate h2, .gs-area h2 { font-size: 1.25rem; margin-bottom: .3em; }
.gs-locate p { font-size: .9rem; }
.gs-locate .gs-btn { margin-bottom: 12px; }
.gs-locate .gs-btn small { display: inline; font-weight: 500; }
.gs-area__head { display: flex; align-items: baseline; justify-content: space-between; }
.gs-area__head span { color: var(--gs-muted); font-size: .85rem; }
.gs-area .gs-map { aspect-ratio: 1 / 1; }

/* Contact Form 7, Golden Sands variant */
.gs-order .wpcf7 form { margin: 0; }
.gs-field { margin: 0 0 16px; }
.gs-field label { display: block; }

.gs-label {
	display: block;
	margin-bottom: 6px;
	color: var(--gs-ink);
	font-size: .9rem;
	font-weight: 700;
}

.gs-label b { color: #d33; }
.gs-label i { color: var(--gs-muted); font-style: normal; font-weight: 500; }
.gs-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.gs-row--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }

.mt-gs .gs-order input[type="text"],
.mt-gs .gs-order input[type="tel"],
.mt-gs .gs-order input[type="email"],
.mt-gs .gs-order input[type="date"],
.mt-gs .gs-order select,
.mt-gs .gs-order textarea {
	width: 100%;
	min-height: 46px;
	padding: 10px 14px;
	border: 1px solid #cfd8e1;
	border-radius: 8px;
	background: #fff;
	color: var(--gs-ink);
	font: 400 .95rem/1.4 var(--gs-font);
	box-sizing: border-box;
}

.mt-gs .gs-order textarea { min-height: 96px; resize: vertical; }
.mt-gs .gs-order input:focus, .mt-gs .gs-order select:focus, .mt-gs .gs-order textarea:focus { border-color: var(--gs-navy); outline: 2px solid rgba(16, 48, 74, .15); }
.gs-phone { display: flex; align-items: stretch; }
.gs-phone .wpcf7-form-control-wrap { flex: 1; }
.gs-flag {
	width: 44px;
	flex: none;
	border: 1px solid #cfd8e1;
	border-right: 0;
	border-radius: 8px 0 0 8px;
	background: linear-gradient(#fff 0 33%, #00966e 33% 66%, #d62612 66%) center / 22px 15px no-repeat, #fff;
}
.mt-gs .gs-phone input[type="tel"] { border-radius: 0 8px 8px 0; }
.gs-accept { font-size: .88rem; }
.gs-accept label { display: inline; }
.gs-accept .wpcf7-list-item { margin: 0 8px 0 0; }
.gs-accept .mt-privacy-link { color: var(--gs-navy); font-weight: 600; }
.mt-gs .wpcf7-submit.gs-btn { width: 100%; min-height: 54px; font-size: 1.05rem; }

.gs-form-note {
	margin: 0;
	padding: 14px 16px 14px 44px;
	border-radius: 8px;
	background: #e9f6ee url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='10' fill='%2327a35a'/%3E%3Cpath d='m7.5 12.3 3 3 6-6.3' fill='none' stroke='%23fff' stroke-width='2'/%3E%3C/svg%3E") 14px 15px / 20px no-repeat;
	color: #24563a;
	font-size: .88rem;
}

.mt-gs .wpcf7 .wpcf7-response-output { margin: 14px 0 0; border-radius: 8px; }

/* Destinations */
.gs-note { display: grid; grid-template-columns: minmax(220px, .7fr) 2fr auto; gap: 24px; align-items: start; margin-top: 32px; padding: 26px; }
.gs-note h2 { font-size: 1.35rem; }
.gs-note .gs-prose p { font-size: .95rem; }

.gs-split {
	display: grid;
	grid-template-columns: 1.15fr 1fr;
	gap: 40px;
	align-items: center;
	margin-top: 48px;
}

.gs-split__media { margin: 0; overflow: hidden; border-radius: var(--gs-radius); }
.gs-split__media img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.gs-split__copy h2 { font-size: clamp(1.6rem, 1.2rem + 1.2vw, 2.2rem); }
.gs-split .gs-actions--stack { max-width: 340px; margin-top: 20px; }

.gs-arrival {
	display: flex;
	align-items: center;
	gap: 22px;
	margin-top: 40px;
	padding: 22px 26px;
	border-radius: var(--gs-radius);
	background: var(--gs-soft);
}

.gs-arrival > .gs-icon { width: 44px; height: 44px; color: var(--gs-navy); }
.gs-arrival div { flex: 1; }
.gs-arrival h2 { margin: 0 0 4px; font-size: 1.12rem; }
.gs-arrival p { margin: 0; font-size: .9rem; }
.gs-arrival p a { font-weight: 600; }

.gs-band { padding: 40px 0; }
.gs-band__inner { display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.gs-band h2 { margin-bottom: .25em; }
.gs-band p { margin: 0; }
.gs-band .gs-kicker { color: var(--gs-ink); }
.gs-band--yellow { background: var(--gs-yellow); }
.gs-band--yellow .gs-btn--outline { background: transparent; }
.gs-band--navy { background: var(--gs-navy); }
.gs-band--navy h2, .gs-band--navy p { color: #fff; }
.gs-band--grey { background: #eef3f6; }
.gs-band--grey .gs-actions--stack { align-items: center; }

/* About */
.gs-story-intro { display: grid; grid-template-columns: 1fr 1.25fr; gap: 36px; align-items: center; margin-top: 40px; }
.gs-story-intro figure { margin: 0; overflow: hidden; border-radius: var(--gs-radius); }
.gs-story-intro img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.gs-features { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 22px 0 0; padding: 0; list-style: none; }
.gs-features li { padding: 0 18px; border-left: 1px solid var(--gs-line); font-size: .88rem; }
.gs-features li:first-child { padding-left: 0; border-left: 0; }
.gs-features .gs-icon { width: 26px; height: 26px; margin-bottom: 8px; color: var(--gs-navy); }
.gs-features strong { display: block; color: var(--gs-ink); font-size: 1rem; }

.gs-mosaic { display: grid; grid-template-columns: 1.6fr 1fr; grid-auto-rows: clamp(160px, 20vw, 260px); gap: 14px; margin-top: 36px; }
.gs-mosaic img { width: 100%; height: 100%; object-fit: cover; }
.gs-mosaic figure:nth-child(4n+2),
.gs-mosaic figure:nth-child(4n+3) { grid-column: auto; }

/* Destination pages */
.gs-facts {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin: -34px 0 0;
	padding: 18px 8px;
	list-style: none;
	position: relative;
	z-index: 2;
	background: #fff;
	border: 1px solid var(--gs-line);
	border-radius: var(--gs-radius);
	box-shadow: var(--gs-shadow);
}

.gs-facts li { display: flex; align-items: flex-start; gap: 12px; padding: 0 20px; border-left: 1px solid var(--gs-line); font-size: .86rem; }
.gs-facts li:first-child { border-left: 0; }
.gs-facts .gs-icon { width: 28px; height: 28px; color: var(--gs-navy); }
.gs-facts strong { display: block; color: var(--gs-ink); font-size: .98rem; }

.gs-ride { display: grid; grid-template-columns: 1.15fr 1fr .95fr; gap: 24px; align-items: stretch; margin-top: 44px; }
.gs-ride__copy h2 { font-size: 1.6rem; }
.gs-ride__photo { margin: 0; overflow: hidden; border-radius: var(--gs-radius); }
.gs-ride__photo img { width: 100%; height: 100%; object-fit: cover; }
.gs-prose { font-size: .96rem; }
.gs-prose h3 { margin: 1em 0 .35em; font-size: 1.02rem; }
.gs-prose h3:first-child { margin-top: 0; }

.gs-quote {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 22px;
	border-radius: var(--gs-radius);
	background: var(--gs-navy);
	color: #fff;
}

.gs-quote__title { margin: 0 0 4px; font-weight: 700; color: #fff; }
.gs-quote__row { display: flex; align-items: center; gap: 10px; margin: 0; font-weight: 700; }
.gs-quote__row small { display: block; font-weight: 500; opacity: .75; font-size: .78rem; }
.gs-quote__row .gs-icon { color: #fff; }
.gs-quote .gs-btn { margin-top: 6px; }
.mt-gs .gs-quote__link, .mt-gs .gs-quote__form { display: flex; align-items: center; gap: 10px; color: #fff; font-weight: 600; text-decoration: none; }
.mt-gs .gs-quote__form { margin-top: auto; padding-top: 10px; border-top: 1px solid rgba(255, 255, 255, .15); font-size: .88rem; opacity: .9; }
.gs-quote__link:hover, .gs-quote__form:hover { text-decoration: underline; }

.gs-tiles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin: 0; padding: 0; list-style: none; }
.gs-tiles li { display: flex; gap: 14px; padding: 22px; border-radius: var(--gs-radius); background: var(--gs-soft); }
.gs-tiles .gs-icon { width: 30px; height: 30px; color: var(--gs-navy); }
.gs-tiles h3 { margin-bottom: .3em; font-size: 1rem; }
.gs-tiles p { margin: 0; font-size: .9rem; }

.gs-story { display: flex; flex-direction: column; overflow: hidden; background: #fff; border: 1px solid var(--gs-line); border-radius: var(--gs-radius); }
.gs-story__media img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; }
.gs-story__body { display: flex; flex: 1; flex-direction: column; align-items: flex-start; padding: 18px 20px 22px; }
.gs-story__body h3 { margin-bottom: .35em; font-size: 1.15rem; }
.gs-story__body h3 a { color: var(--gs-ink) !important; text-decoration: none; }
.gs-story__body > p:not(.gs-kicker) { flex: 1; font-size: .92rem; }
.gs-story--wide { flex-direction: row; align-items: center; }
.gs-story--wide .gs-story__media { width: 240px; flex: none; }
.gs-story--wide .gs-story__body { flex-direction: row; flex-wrap: wrap; align-items: center; gap: 4px 24px; }
.gs-story--wide .gs-story__body > div, .gs-story--wide .gs-kicker { width: 100%; }
.gs-story--wide .gs-story__body h3 { width: 100%; margin: 0; }
.gs-story--wide .gs-story__body > p:not(.gs-kicker) { margin: 0; }
.gs-story--feature { display: grid; grid-template-columns: 1fr; border: 0; }
.gs-story--feature .gs-story__media img { aspect-ratio: 21 / 9; border-radius: var(--gs-radius); }
.gs-story--feature .gs-story__body { padding: 22px 0 0; }
.gs-story--feature h3 { font-size: clamp(1.5rem, 1.1rem + 1.2vw, 2.1rem); }
.gs-section .gs-story--feature { grid-template-columns: 1.1fr 1fr; border: 1px solid var(--gs-line); }
.gs-section .gs-story--feature .gs-story__media img { height: 100%; aspect-ratio: 16 / 10; border-radius: 0; }
.gs-section .gs-story--feature .gs-story__body { padding: 26px; justify-content: center; }
.gs-section--tight .gs-story--feature { grid-template-columns: 1fr; border: 0; }
.gs-section--tight .gs-story--feature .gs-story__media img { aspect-ratio: 21 / 9; border-radius: var(--gs-radius); }
.gs-section--tight .gs-story--feature .gs-story__body { padding: 22px 0 0; }
.gs-stories { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; margin-top: 36px; }
.gs-stories--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 0; }

/* Balchik */
.gs-visit { display: grid; grid-template-columns: 1.9fr 1fr; gap: 28px; margin-top: 44px; align-items: start; }
.gs-visit__photos { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 18px; }
.gs-visit__photos figure { margin: 0; }
.gs-visit__photos img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 10px; }
.gs-visit__photos figcaption { margin-top: 8px; color: var(--gs-muted); font-size: .82rem; }

.gs-dest-card { padding: 26px; border-radius: var(--gs-radius); background: var(--gs-navy); color: #fff; }
.gs-dest-card h2 { color: #fff; font-size: 2rem; margin: 0 0 .4em; padding-bottom: .4em; background: linear-gradient(var(--gs-yellow), var(--gs-yellow)) left bottom / 44px 3px no-repeat; }
.gs-dest-card__label { margin: 0 0 4px; color: rgba(255, 255, 255, .75); font-size: .85rem; }
.gs-dest-card p { color: rgba(255, 255, 255, .9); }
.mt-gs .gs-dest-card__row { display: flex; align-items: center; gap: 12px; padding: 14px 0; border-top: 1px solid rgba(255, 255, 255, .15); color: #fff; font-weight: 700; text-decoration: none; }
.gs-dest-card__row > span:nth-child(2) { flex: 1; }
.gs-dest-card__row small { display: block; font-weight: 500; opacity: .8; font-size: .8rem; }
.gs-dest-card__row > .gs-icon { transform: rotate(-90deg); }
.gs-round { display: grid; place-items: center; width: 40px; height: 40px; flex: none; border-radius: 50%; color: #fff; }
.gs-round--green { background: var(--gs-green); }
.gs-round--teal { background: var(--gs-teal); }

.gs-pickup-box { display: grid; grid-template-columns: auto 1fr 300px; gap: 20px; align-items: center; margin-top: 32px; padding: 22px; background: var(--gs-soft); box-shadow: none; }
.gs-pickup-box > .gs-icon { width: 34px; height: 34px; color: var(--gs-ink); align-self: start; }
.gs-pickup-box h2 { font-size: 1.25rem; }
.gs-pickup-box p { margin: 0; font-size: .92rem; }
.gs-pickup-box figure { margin: 0; overflow: hidden; border-radius: 10px; }
.gs-pickup-box img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }

.gs-return { display: flex; gap: 20px; margin-top: 20px; padding: 24px; border: 1px solid #f3dc8a; border-radius: var(--gs-radius); background: var(--gs-cream); }
.gs-return > .gs-icon { width: 34px; height: 34px; color: var(--gs-ink); }
.gs-return h2 { font-size: 1.25rem; }
.gs-return p { margin: 0; font-size: .92rem; }

/* Contact */
.gs-always { display: flex; align-items: center; gap: 16px; margin: 18px 0 0; padding: 18px 22px; background: var(--gs-soft); box-shadow: none; }
.gs-always .gs-icon { width: 32px; height: 32px; color: var(--gs-ink); }
.gs-always strong { display: block; color: var(--gs-ink); }

.gs-contact-map { display: grid; grid-template-columns: 1.7fr 1fr; overflow: hidden; }
.gs-contact-map .gs-map { aspect-ratio: auto; min-height: 380px; border-radius: 0; }
.gs-contact-map__info { display: flex; flex-direction: column; gap: 10px; padding: 24px; }
.gs-contact-map__info h3 { font-size: 1.2rem; margin: 0; }
.gs-contact-map__info p { margin: 0; font-size: .9rem; }
.gs-contact-map__list { margin: 4px 0; }
.gs-contact-map__list a { color: var(--gs-ink) !important; }
.gs-contact-map__area { display: flex; gap: 10px; padding-top: 12px; border-top: 1px solid var(--gs-line); }
.gs-contact-map__area strong { display: block; color: var(--gs-ink); }
.gs-contact-map__info .gs-btn { margin-top: auto; }

.gs-ready { display: flex; align-items: center; gap: 22px; margin-top: 32px; padding: 26px 30px; border-radius: var(--gs-radius); background: var(--gs-cream); }
.gs-ready > .gs-icon { width: 46px; height: 46px; color: var(--gs-ink); }
.gs-ready div { flex: 1; }
.gs-ready h2 { font-size: 1.35rem; margin-bottom: .2em; }
.gs-ready p { margin: 0; font-size: .92rem; }
.gs-ready p + p { margin-top: .4em; }

/* Article */
.gs-article__head { max-width: 860px; padding-top: 32px; }
.gs-article__lede { color: var(--gs-muted); font-size: 1.2rem; }
.gs-article__photo { margin: 22px 0 0; overflow: hidden; border-radius: var(--gs-radius); }
.gs-article__photo img { width: 100%; aspect-ratio: 21 / 9; object-fit: cover; }
.gs-article { display: grid; grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr); gap: 40px; margin-top: 36px; }
.gs-article__body h2 { margin-top: 1.2em; font-size: 1.4rem; }
.gs-article__body h2:first-child { margin-top: 0; }
.gs-article__date { color: var(--gs-muted); font-size: .85rem; }
.gs-article__side { display: grid; gap: 16px; align-content: start; }
.gs-side-card { display: grid; gap: 12px; padding: 22px; background: var(--gs-soft); box-shadow: none; }
.gs-side-card h2 { font-size: 1.2rem; margin: 0; }
.gs-side-card p { margin: 0; font-size: .9rem; }
.gs-side-card__price { padding-top: 12px; border-top: 1px solid var(--gs-line); }
.gs-side-card__price strong { display: block; color: var(--gs-ink); }
.gs-side-map { padding: 8px; }
.gs-side-map .gs-map { aspect-ratio: 4 / 3; }

.mt-gs .gs-phone-link { display: inline-flex; align-items: center; gap: 10px; color: var(--gs-ink); font-size: 1.1rem; font-weight: 700; text-decoration: none; }

/* Footer */
.gs-footer { padding: 40px 0 26px; background: var(--gs-navy-2); color: rgba(255, 255, 255, .82); font-size: .9rem; }
.gs-footer a { color: #fff !important; text-decoration: none; }
.gs-footer a:hover { text-decoration: underline; }
.gs-footer h2 { margin: 0 0 14px; color: #fff; font-size: 1rem; }
.gs-footer .gs-brand span { border-color: rgba(255, 255, 255, .25); color: #fff; }
.gs-footer .gs-brand img { width: 160px; }

.gs-footer__top { display: flex; align-items: center; gap: 40px; padding-bottom: 22px; border-bottom: 1px solid rgba(255, 255, 255, .14); }
.gs-footer__top .gs-brand { margin-right: auto; }
.gs-footer__contact { display: flex; align-items: center; gap: 12px; }
.gs-footer__contact span { display: flex; flex-direction: column; line-height: 1.35; color: rgba(255, 255, 255, .8); }
.gs-footer__contact strong { color: #fff; }
.gs-footer__contact .gs-icon { width: 30px; height: 30px; }
.gs-footer__contact--whatsapp .gs-icon { color: #3fd07a; }
.gs-footer__contact--viber .gs-icon { color: #a58cf0; }
.gs-footer__bottom { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-top: 18px; }
.gs-footer__bottom p { margin: 0; }
.gs-footer__nav { display: flex; flex-wrap: wrap; gap: 8px 26px; }

.gs-footer__cols { display: grid; grid-template-columns: 1.6fr 1fr 1fr; gap: 40px; padding-bottom: 24px; border-bottom: 1px solid rgba(255, 255, 255, .14); }
.gs-footer__about p { max-width: 320px; margin: 14px 0 0; }
.gs-footer__list { margin: 0; padding: 0; list-style: none; }
.gs-footer__list li { margin: 0 0 9px; }
.gs-footer__list a { display: inline-flex; align-items: center; gap: 10px; }
.gs-footer__list .gs-icon { width: 20px; height: 20px; }
.gs-contact-map__list .gs-footer__contact--whatsapp .gs-icon { color: var(--gs-green); }
.gs-contact-map__list .gs-footer__contact--viber .gs-icon { color: var(--gs-viber); }

.gs-footer__legal { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px 20px; padding-top: 18px; font-size: .82rem; }
.gs-footer__legal p { display: flex; flex-wrap: wrap; gap: 18px; margin: 0; }
.gs-footer--compact .gs-footer__legal { margin-top: 18px; border-top: 1px solid rgba(255, 255, 255, .14); }
.gs-footer__credits { margin: 14px 0 0; color: rgba(255, 255, 255, .6); font-size: .74rem; }
.gs-footer__credits a { color: rgba(255, 255, 255, .78) !important; }

/* Form plumbing shared with front.js */
.mt-gs [hidden] { display: none !important; }
.mt-gs .mt-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.mt-gs .mt-child-age[hidden] { display: none; }
.mt-gs .mt-field-error,
.mt-gs .wpcf7-not-valid-tip { display: block; margin-top: 4px; color: #b42318; font-size: .82rem; font-weight: 600; }
.mt-gs .mt-invalid { border-color: #b42318 !important; }
.mt-gs .wpcf7-spinner { margin: 10px auto 0; display: block; }
.gs-locate__status { margin: 0 0 12px; color: var(--gs-muted); font-size: .88rem; }

/* Mobile bar */
.gs-mobile-bar { display: none; }

@media (max-width: 760px) {
	.gs-mobile-bar {
		position: fixed;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 40;
		display: flex;
		gap: 8px;
		padding: 10px 12px calc(10px + env(safe-area-inset-bottom));
		background: rgba(255, 255, 255, .97);
		border-top: 1px solid var(--gs-line);
		box-shadow: 0 -6px 18px rgba(16, 48, 74, .08);
	}
	.gs-mobile-bar .gs-btn { flex: 1; min-height: 46px; padding: .5em .6em; font-size: .92rem; }
	.mt-gs { padding-bottom: 70px; }
	.mytaxi-input-focus .gs-mobile-bar { display: none; }
}

@media (max-width: 1080px) {
	.gs-nav { gap: 20px; }
	.gs-ride { grid-template-columns: 1fr 1fr; }
	.gs-ride__copy { grid-column: 1 / -1; }
	.gs-cards--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gs-note { grid-template-columns: 1fr; }
}

@media (max-width: 920px) {
	.gs-header__bar { min-height: 64px; gap: 12px; }
	.gs-brand img { width: 124px; }
	.gs-nav-toggle { display: inline-flex; order: 3; }
	.gs-header__cta { order: 2; min-height: 40px; padding: .5em .9em; font-size: .9rem; }
	.gs-nav {
		display: none;
		position: absolute;
		left: 0;
		right: 0;
		top: 100%;
		flex-direction: column;
		align-items: stretch;
		gap: 0;
		padding: 6px 24px 16px;
		background: #fff;
		border-bottom: 1px solid var(--gs-line);
		box-shadow: 0 12px 24px rgba(16, 48, 74, .1);
	}
	.gs-nav.is-open { display: flex; }
	.gs-nav a { padding: 14px 0; border-bottom: 1px solid var(--gs-line); }
	.gs-nav a::after { display: none; }
	.gs-nav a.is-current { color: var(--gs-navy) !important; box-shadow: inset 4px 0 0 var(--gs-yellow); padding-left: 12px; }

	.gs-find, .gs-order, .gs-split, .gs-story-intro, .gs-article, .gs-visit, .gs-contact-map, .gs-discover { grid-template-columns: 1fr; }
	.gs-discover { gap: 12px; }
	.gs-find { margin-top: 20px; }
	.gs-cards--3, .gs-cards--6 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gs-steps, .gs-tiles, .gs-stories { grid-template-columns: 1fr; }
	.gs-steps--arrows li::after { display: none; }
	.gs-steps--icons li { border-right: 0; }
	.gs-channels { grid-template-columns: 1fr; }
	.gs-band__inner { flex-direction: column; align-items: flex-start; }
	.gs-pickup-box { grid-template-columns: auto 1fr; }
	.gs-pickup-box figure { grid-column: 1 / -1; }
	.gs-footer__top { flex-wrap: wrap; gap: 18px 28px; }
	.gs-footer__top .gs-brand { width: 100%; }
	.gs-footer__bottom { flex-direction: column; align-items: flex-start; }
	.gs-footer__cols { grid-template-columns: 1fr 1fr; }
	.gs-footer__about { grid-column: 1 / -1; }

	.gs-hero--home { flex-direction: column; min-height: 0; }
	.gs-hero--home .gs-hero__media { position: relative; right: 0; width: 100%; height: 300px; }
	.gs-hero--home .gs-hero__media::after { background: linear-gradient(0deg, #eaf3fa 0%, rgba(234, 243, 250, 0) 30%); }
	.gs-hero--home .gs-hero__inner { padding-top: 8px; }
	.gs-hero--fade { flex-direction: column; min-height: 0; }
	.gs-hero--fade .gs-hero__media { position: relative; left: 0; height: 260px; order: 2; }
	.gs-hero--fade .gs-hero__media::after { background: linear-gradient(180deg, #fff 0%, rgba(255, 255, 255, 0) 30%); }
	.gs-facts { margin-top: 20px; }
}

@media (max-width: 640px) {
	.gs-wrap { padding: 0 16px; }
	.gs-brand span { display: none; }
	.gs-hero--overlay { min-height: 380px; }
	.gs-hero--overlay .gs-hero__inner { padding-bottom: 28px; }
	.gs-hero__lede { font-size: 1rem; }
	.gs-actions .gs-btn { flex: 1 1 100%; }
	.gs-section { padding-top: 44px; }
	.gs-cards--3, .gs-cards--4, .gs-cards--6, .gs-photo-row, .gs-stories--2, .gs-reviews--wide .gs-reviews__list { grid-template-columns: 1fr; }
	.gs-photo-row figure:nth-child(n+2) { display: none; }
	.gs-row, .gs-row--3 { grid-template-columns: 1fr; }
	.gs-order__form { padding: 20px; }
	.gs-facts { grid-template-columns: 1fr; gap: 14px; }
	.gs-facts li { border-left: 0; padding: 0 12px; }
	.gs-features { grid-template-columns: 1fr; gap: 14px; }
	.gs-features li { padding: 0; border: 0; }
	.gs-mosaic { grid-template-columns: 1fr 1fr; }
	.gs-head { flex-direction: column; align-items: flex-start; }
	.gs-arrival, .gs-ready { flex-direction: column; align-items: flex-start; }
	.gs-story--wide { flex-direction: column; align-items: stretch; }
	.gs-story--wide .gs-story__media { width: 100%; }
	.gs-section .gs-story--feature { grid-template-columns: 1fr; }
	.gs-map--route { aspect-ratio: 4 / 3; }
	.gs-ride { grid-template-columns: 1fr; }
	.gs-ride__photo { aspect-ratio: 4 / 3; }
	.gs-footer__cols { grid-template-columns: 1fr; }
	.gs-contact-map .gs-map { min-height: 280px; }
	.gs-visit__photos { grid-template-columns: 1fr; }
}

:is(.mt-albena, .mt-kranevo) :is(#taxi, #find, #service, #book, #faq) { scroll-margin-top: 88px; }
.admin-bar :is(.mt-albena, .mt-kranevo) :is(#taxi, #find, #service, #book, #faq) { scroll-margin-top: 120px; }
:is(.mt-albena, .mt-kranevo) .gs-prose ul, :is(.mt-albena, .mt-kranevo) .gs-locate ol { margin: .4em 0 0; padding-left: 1.2em; }
:is(.mt-albena, .mt-kranevo) .gs-prose li, :is(.mt-albena, .mt-kranevo) .gs-locate li { margin: .55em 0; }
:is(.mt-albena, .mt-kranevo) #service .gs-story-intro { margin-top: 0; }
.mt-kranevo .gs-story-intro { align-items: start; }
.mt-kranevo .gs-places { margin-top: 28px; }
.mt-albena #service .gs-cards { margin-top: 36px; }
.mt-albena .gs-places { margin-top: 28px; }
:is(.mt-albena, .mt-kranevo) .gs-find .gs-now { align-content: start; }

/* Varna Airport: the Golden Sands homepage, with the transfer search kept in the hero. */
.mt-varna .gs-hero--home .gs-hero__copy { max-width: 540px; }
.mt-varna .gs-hero--home { min-height: 640px; }
.mt-varna .gs-hero--home .gs-hero__inner { flex-wrap: wrap; align-content: flex-end; align-items: flex-end; gap: 8px 0; padding-bottom: 36px; }
.mt-varna .gs-hero--home .gs-small { flex: 1 0 100%; margin: 8px 6px 0; text-align: right; }
.mt-varna .gs-find { margin-top: 28px; }
.mt-varna .gs-order .mt-search {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
	margin: 18px 0 0;
	padding: 14px;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 12px 30px rgba(16, 48, 74, .12);
	text-align: left;
}
.mt-varna .gs-hero--home .mt-search {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, 1.15fr) minmax(0, 1.45fr) minmax(0, .8fr) auto;
	gap: 4px;
	flex: 1 0 100%;
	width: 100%;
	margin: 18px 0 0;
	padding: 4px;
	border-radius: 10px;
	background: var(--gs-yellow);
	box-shadow: 0 18px 44px rgba(8, 22, 34, .28);
	text-align: left;
}
.mt-varna .gs-hero--home .mt-search__field {
	min-height: 60px;
	padding: 8px 14px;
	border-radius: 6px;
	background: #fff;
	justify-content: center;
}
.mt-varna .gs-hero--home .mt-search input,
.mt-varna .gs-hero--home .mt-search select {
	min-height: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
}
.mt-varna .gs-hero--home .mt-search__field--when,
.mt-varna .gs-hero--home .mt-search__field--small,
.mt-varna .gs-hero--home .mt-search__go { grid-column: auto; }
.mt-varna .gs-hero--home .mt-search .mt-btn {
	width: 100%;
	min-width: 124px;
	min-height: 60px;
	border-radius: 6px;
	background: var(--gs-navy);
	color: #fff;
}
.mt-varna .gs-order .mt-search { margin: 0 0 12px; padding: 0; background: transparent; box-shadow: none; }
.mt-varna .mt-search__field { display: flex; flex-direction: column; gap: 4px; min-width: 0; margin: 0; }
.mt-varna .mt-search__field > label,
.mt-varna .mt-search__label { color: var(--gs-navy); font-size: .75rem; font-weight: 700; line-height: 1.2; }
.mt-varna .gs-order .mt-search input:not([type="checkbox"]),
.mt-varna .gs-order .mt-search select {
	width: 100%;
	min-height: 42px;
	margin: 0;
	padding: 6px 10px;
	border: 1px solid #cfd8e1;
	border-radius: 8px;
	background: #fff;
	color: var(--gs-ink);
	font: 400 .95rem/1.3 var(--gs-font);
	box-sizing: border-box;
}
.mt-varna .mt-search__pair { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.mt-varna .gs-order .mt-search__field--when,
.mt-varna .gs-order .mt-search__field--return,
.mt-varna .gs-order .mt-search__field--small,
.mt-varna .gs-order .mt-search__action { grid-column: 1 / -1; }
.mt-varna .mt-search__action { margin: 0; }
.mt-varna .mt-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: .7em 1.2em;
	border: 1.5px solid transparent;
	border-radius: 10px;
	background: var(--gs-navy);
	color: #fff;
	font: 700 1rem/1.15 var(--gs-font);
	text-decoration: none;
	cursor: pointer;
	box-sizing: border-box;
}
.mt-varna .mt-btn--yellow { background: var(--gs-yellow); color: var(--gs-ink); }
.mt-varna .mt-btn--ghost { background: #fff; border-color: var(--gs-navy); color: var(--gs-navy); }
.mt-varna .gs-order .mt-btn { width: 100%; }
.mt-varna .mt-direct { display: grid; gap: 10px; margin-top: 12px; padding: 12px; border-radius: 12px; background: #fff; color: var(--gs-ink); }
.mt-varna .mt-direct p { margin: 0; font-weight: 600; }
.mt-varna .mt-channels { display: flex; flex-wrap: wrap; gap: 8px; }
.mt-varna .mt-channels .mt-btn { width: auto; flex: 1; }
.mt-varna .gs-hero .gs-small { margin: 10px 0 0; }
.mt-varna .gs-fare { margin: 0 0 8px; color: var(--gs-navy); font-size: 1.15rem; font-weight: 800; }
.mt-varna .gs-fare span { color: var(--gs-muted); font-size: .85rem; font-weight: 600; }
.mt-varna .gs-dest-note { margin: 0 0 12px; color: var(--gs-muted); font-size: .82rem; }
.mt-varna .gs-varna-second { margin: 16px 0; }
.mt-varna .gs-varna-second img { width: 100%; border-radius: 12px; aspect-ratio: 3 / 2; object-fit: cover; }
.mt-varna .gs-split,
.mt-varna #top,
.mt-varna #cars,
.mt-varna #how,
.mt-varna #book { scroll-margin-top: 88px; }
.admin-bar .mt-varna .gs-split,
.admin-bar .mt-varna #top,
.admin-bar .mt-varna #cars,
.admin-bar .mt-varna #how,
.admin-bar .mt-varna #book { scroll-margin-top: 120px; }
.mt-varna .gs-hero--overlay .gs-hero__facts,
.mt-varna .gs-hero--overlay .gs-hero__facts li,
.mt-varna .gs-hero--overlay .gs-hero__facts strong { color: #fff; }
.mt-varna .gs-hero--overlay .gs-crumbs,
.mt-varna .gs-hero--overlay .gs-crumbs a { color: rgba(255, 255, 255, .9) !important; }
.mt-varna .gs-order--dest { grid-template-columns: minmax(0, 1fr) minmax(340px, 440px); align-items: start; }
.mt-varna .gs-route-copy { padding: 28px; }
.mt-varna .gs-route-copy .gs-prose p { margin: 0 0 .8em; }
.mt-varna .gs-route-points,
.mt-varna .gs-route-lists ul { margin: 0; padding: 0; list-style: none; }
.mt-varna .gs-route-points { display: grid; gap: 8px; margin: 16px 0; }
.mt-varna .gs-route-points li { padding-left: 14px; border-left: 3px solid var(--gs-yellow); font-size: .92rem; }
.mt-varna .gs-route-lists { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 20px; }
.mt-varna .gs-route-lists h2 { margin: 0 0 8px; font-size: 1.05rem; }
.mt-varna .gs-route-lists li { position: relative; margin: 0 0 6px; padding-left: 14px; font-size: .9rem; }
.mt-varna .gs-route-lists li::before { content: ""; position: absolute; left: 0; top: .55em; width: 6px; height: 6px; border-radius: 50%; background: var(--gs-yellow); }
.mt-varna .gs-route-local { margin: 16px 0 0; font-size: .92rem; }
.mt-varna .gs-order__form .mt-search {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
	margin: 0;
	padding: 0;
	background: transparent;
	box-shadow: none;
}
.mt-varna .gs-order__form .mt-search__field,
.mt-varna .gs-order__form .mt-search__action { min-width: 0; }
.mt-varna .gs-order__form .mt-search__field > label,
.mt-varna .gs-order__form .mt-field > label {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 6px;
	width: 100%;
	margin: 0;
	color: var(--gs-navy);
	font-size: .78rem;
	font-weight: 700;
}
.mt-varna .gs-order__form .wpcf7-form-control-wrap { display: block; width: 100%; }
.mt-varna .gs-order__form input[type="text"],
.mt-varna .gs-order__form input[type="tel"],
.mt-varna .gs-order__form input[type="email"],
.mt-varna .gs-order__form input[type="date"],
.mt-varna .gs-order__form select,
.mt-varna .gs-order__form textarea {
	width: 100%;
	max-width: none;
	min-height: 46px;
	margin: 0;
	padding: 8px 12px;
	border: 1px solid #cfd8e1;
	border-radius: 8px;
	background: #fff;
	color: var(--gs-ink);
	font: 400 .95rem/1.3 var(--gs-font);
	box-sizing: border-box;
}
.mt-varna .gs-order__form textarea { min-height: 96px; }
.mt-varna .gs-order__form .mt-search__field--when,
.mt-varna .gs-order__form .mt-search__field--small,
.mt-varna .gs-order__form .mt-search__action { grid-column: 1 / -1; }
.mt-varna .gs-order__form .mt-search__field--return {
	grid-column: 1 / -1;
	flex-direction: row;
	align-items: center;
	gap: 12px;
}
.mt-varna .gs-order__form .mt-search__field--return .wpcf7-form-control-wrap,
.mt-varna .gs-order__form .mt-search__field--return .wpcf7-list-item { display: flex; align-items: center; gap: 8px; width: auto; }
.mt-varna .gs-order__form .mt-search__field--return input[type="checkbox"] { width: auto; min-height: 0; }
.mt-varna .gs-order__form .mt-search__pair { width: 100%; }
.mt-varna .gs-order__form .mt-btn { width: 100%; }
.mt-varna .gs-order__form .mt-accept label { flex-direction: row; align-items: flex-start; font-weight: 500; }
.mt-varna .gs-order--dest .gs-order__form .mt-search,
.mt-varna .gs-order--dest .mt-pair { grid-template-columns: 1fr; }
.mt-varna .gs-order--dest .mt-search__pair { grid-template-columns: 1fr 1fr; }
.mt-varna .gs-order__form .mt-step-1 {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
}
.mt-varna .gs-order--dest .gs-order__form .mt-step-1 { grid-template-columns: 1fr; }
.mt-varna .gs-order__form .mt-step-1 > .mt-search { display: contents; }
.mt-varna .gs-order__form .mt-return-when,
.mt-varna .gs-order__form .mt-search__field--vehicle,
.mt-varna .gs-order__form .mt-search__field--small,
.mt-varna .gs-order__form .mt-search__action { grid-column: 1 / -1; }
.mt-varna .gs-order__form .mt-return-when { order: 2; margin: 0; }
.mt-varna .gs-order__form .mt-search__field--vehicle { order: 3; }
.mt-varna .gs-order__form .mt-search__field--small { order: 4; }
.mt-varna .gs-order__form .mt-search__action { order: 5; }
.mt-varna .mt-stepper { display: flex; flex-wrap: nowrap; gap: 6px; margin: 0 0 16px; padding: 0; list-style: none; }
.mt-varna .mt-stepper li { display: inline-flex; flex: 1 1 0; align-items: center; justify-content: center; gap: 6px; min-width: 0; padding: 6px 8px; border-radius: 999px; background: var(--gs-soft); color: var(--gs-navy); font-size: .78rem; font-weight: 700; white-space: nowrap; }
.mt-varna .mt-stepper li p { display: inline-flex; align-items: center; gap: 6px; margin: 0; white-space: nowrap; }
.mt-varna .mt-stepper li span { display: grid; place-items: center; width: 22px; height: 22px; border-radius: 50%; background: #fff; }
.mt-varna .mt-stepper li.is-current { background: #fff; box-shadow: 0 0 0 2px var(--gs-yellow); }
.mt-varna .mt-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.mt-varna .mt-field { margin: 0 0 14px; }
.mt-varna .mt-label { display: block; margin-bottom: 6px; color: var(--gs-ink); font-size: .9rem; font-weight: 700; }
.mt-varna .mt-field__hint, .mt-varna .mt-form__note { display: block; margin-top: 6px; color: var(--gs-muted); font-size: .85rem; }
.mt-varna .mt-return-when:not([hidden]) { display: grid; gap: 6px; margin: 0 0 12px; padding: 12px; border-radius: 12px; background: var(--gs-soft); }
.mt-varna .mt-review { display: grid; gap: 10px; margin: 0 0 16px; }
.mt-varna .mt-review div { display: grid; grid-template-columns: minmax(8rem, 34%) 1fr; gap: 8px; margin: 0; }
.mt-varna .mt-review dt { margin: 0; color: var(--gs-muted); font-weight: 700; }
.mt-varna .mt-review dd { margin: 0; }
.mt-varna .mt-review-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.mt-varna .mt-review-actions .mt-btn { width: auto; }
html.mt-js .mt-varna form.mt-form[data-step="1"] .mt-step-2,
html.mt-js .mt-varna form.mt-form[data-step="1"] .mt-step-3,
html.mt-js .mt-varna form.mt-form[data-step="2"] .mt-step-1,
html.mt-js .mt-varna form.mt-form[data-step="2"] .mt-step-3,
html.mt-js .mt-varna form.mt-form[data-step="3"] .mt-step-1,
html.mt-js .mt-varna form.mt-form[data-step="3"] .mt-step-2 { display: none; }
.mt-varna .gs-book__steps,
.mt-varna .gs-book__needs { display: grid; grid-template-columns: minmax(280px, .85fr) minmax(0, 1.15fr); gap: 36px 48px; align-items: center; }
.mt-varna .gs-book__needs { grid-template-columns: minmax(220px, 280px) repeat(3, minmax(0, 1fr)); margin-top: 56px; align-items: stretch; gap: 16px; }
.mt-varna .gs-book__steps figure { margin: 0; overflow: hidden; border-radius: 16px; }
.mt-varna .gs-book__steps img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.mt-varna .gs-book__steps ol { display: grid; gap: 16px; margin: 0; padding: 0; list-style: none; }
.mt-varna .gs-book__needs ul { display: contents; margin: 0; padding: 0; list-style: none; }
.mt-varna .gs-book__steps li { display: flex; align-items: flex-start; gap: 12px; }
.mt-varna .gs-book__steps li > span { display: grid; place-items: center; flex: none; width: 32px; height: 32px; border-radius: 50%; background: var(--gs-soft); color: var(--gs-navy); font-size: .9rem; font-weight: 700; }
.mt-varna .gs-book__steps h3 { margin: 2px 0 2px; font-size: 1.02rem; }
.mt-varna .gs-book__steps li p,
.mt-varna .gs-book__needs li span { margin: 0; color: var(--gs-muted); font-size: .9rem; }
.mt-varna .gs-book__needs li { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; min-height: 100%; margin: 0; padding: 18px; border-radius: 16px; background: var(--gs-soft); }
.mt-varna .gs-book__needs .gs-icon { width: 28px; height: 28px; color: var(--gs-navy); }
.mt-varna .gs-book__needs strong { color: var(--gs-ink); font-size: .98rem; }
.mt-varna .gs-book__needs .gs-btn { margin-top: 4px; }
.mt-varna .gs-cars--inline { margin: 4px 0 8px; }
.mt-varna .gs-cars--book { margin: 8px 0 4px; }
.mt-varna .gs-cars--inline h2,
.mt-varna .gs-cars--book h2 { margin: 0 0 12px; font-size: 1.2rem; }
.mt-varna .gs-cars__lead { max-width: 640px; margin: -6px 0 18px; color: var(--gs-muted); }
.mt-varna .gs-cars__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.mt-varna .gs-cars__card { display: flex; flex-direction: column; align-items: stretch; width: 100%; margin: 0; padding: 0; border: 0; border-radius: 16px; overflow: hidden; background: #fff; box-shadow: 0 0 0 1px var(--gs-line); color: inherit; font: inherit; text-align: left; cursor: pointer; }
.mt-varna .gs-cars__card img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; object-position: center; }
.mt-varna .gs-cars__card span { display: flex; flex-direction: column; gap: 4px; padding: 14px 16px 16px; }
.mt-varna .gs-cars__card small { color: var(--gs-muted); font-size: .9rem; }
.mt-varna .gs-cars__card.is-selected { box-shadow: 0 0 0 3px var(--gs-yellow); }
.mt-varna .gs-cars__card:focus-visible { outline: 3px solid var(--gs-navy); outline-offset: 3px; }
.mt-varna .gs-photo-row { grid-template-columns: 1fr 1fr; }
@media (max-width: 640px) {
	.mt-varna .gs-photo-row { grid-template-columns: 1fr; }
}
@media (max-width: 980px) {
	.mt-varna .gs-order--dest,
	.mt-varna .gs-route-lists,
	.mt-varna .gs-book__steps,
	.mt-varna .gs-book__needs { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
	.mt-varna .gs-cars__grid { grid-template-columns: 1fr; }
	.mt-varna .gs-hero--home .mt-search,
	.mt-varna .gs-order .mt-search,
	.mt-varna .gs-order__form .mt-step-1,
	.mt-varna .gs-order__form .mt-search,
	.mt-varna .mt-pair,
	.mt-varna .mt-search__pair,
	.mt-varna .gs-order--dest .mt-search__pair { grid-template-columns: 1fr; }
	.mt-varna .gs-route-copy { padding: 18px; }
}

