/*
 * OG Trotter design system — the only front-end stylesheet.
 *
 * Built on the look agreed with the client for the homepage: clean white
 * space, OG green (#1A8975), deep navy text, Plus Jakarta Sans headlines and
 * Inter body copy. Everything is prefixed `ogt-` so plugin CSS can't collide.
 *
 *  1. Tokens          8. Cards
 *  2. Reset           9. Destination pages
 *  3. Type           10. Trips and the package builder
 *  4. Layout         11. Journal and prose
 *  5. Buttons        12. Page sections
 *  6. Header/footer  13. Account and membership
 *  7. Heroes         14. Forms, plugins, utilities
 */

/* 1. Tokens ------------------------------------------------------------ */

:root {
	/* Brand: the live site's OG green and navy, warmed up with sand and sun. */
	--ogt-brand: #167563;
	--ogt-brand-600: #167563;
	--ogt-brand-700: #0F5A4C;
	--ogt-brand-900: #07362D;
	--ogt-brand-50: #E9F6F2;
	--ogt-brand-100: #CFECE4;
	--ogt-ink: #0F172A;
	--ogt-navy: #050B19;
	--ogt-night: #0A1A24;
	--ogt-body: #3A4656;
	--ogt-muted: #687586;
	--ogt-line: #E6E2DA;
	--ogt-soft: #F7F4EE;
	--ogt-cream: #FBF8F2;
	--ogt-white: #FFFFFF;
	--ogt-accent: #FF6B1A;
	--ogt-sun: #FFC24B;
	--ogt-sky: #DCEFF5;

	--ogt-display: "Bricolage Grotesque", "Inter", system-ui, sans-serif;
	--ogt-text: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
	--ogt-hand: "Caveat", cursive;

	--ogt-wrap: 1240px;
	--ogt-narrow: 760px;
	--ogt-gutter: clamp(20px, 4vw, 40px);
	--ogt-space: clamp(80px, 10vw, 140px);

	--ogt-r-sm: 12px;
	--ogt-r: 18px;
	--ogt-r-lg: 28px;
	--ogt-shadow-sm: 0 1px 2px rgba(10, 26, 36, .06), 0 2px 8px -2px rgba(10, 26, 36, .06);
	--ogt-shadow: 0 2px 4px rgba(10, 26, 36, .04), 0 12px 32px -8px rgba(10, 26, 36, .14);
	--ogt-shadow-lg: 0 4px 10px rgba(10, 26, 36, .05), 0 30px 70px -20px rgba(10, 26, 36, .28);
	--ogt-shadow-brand: 0 18px 40px -14px rgba(26, 137, 117, .55);
	--ogt-ease: cubic-bezier(.2, .7, .2, 1);
	--ogt-spring: cubic-bezier(.34, 1.56, .64, 1);
	--ogt-header: 76px;

	/* Decorative contour lines used on dark and sand sections. */
	--ogt-topo: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='600' height='600' viewBox='0 0 600 600' fill='none' stroke='%23ffffff' stroke-opacity='.06' stroke-width='1.2'%3E%3Cpath d='M-20 120c80-40 160 40 240 0s160-80 240-20 160 60 160 60'/%3E%3Cpath d='M-20 170c90-50 170 30 250-10s150-70 230-10 160 50 160 50'/%3E%3Cpath d='M-20 220c100-60 180 20 260-20s140-60 220 0 160 40 160 40'/%3E%3Cpath d='M-20 330c70 30 150-30 230 10s170 70 250 20 160-40 160-40'/%3E%3Cpath d='M-20 380c80 30 160-20 240 20s160 60 240 10 160-30 160-30'/%3E%3Cpath d='M-20 430c90 30 170-10 250 30s150 50 230 0 160-20 160-20'/%3E%3Ccircle cx='450' cy='520' r='40'/%3E%3Ccircle cx='450' cy='520' r='70'/%3E%3Ccircle cx='450' cy='520' r='100'/%3E%3C/svg%3E");
}

/* 2. Reset ------------------------------------------------------------- */

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	-webkit-text-size-adjust: 100%;
	scroll-behavior: smooth;
	scroll-padding-top: calc(var(--ogt-header) + 16px);
}

body {
	background: var(--ogt-cream);
	color: var(--ogt-body);
	font-family: var(--ogt-text);
	font-size: 17px;
	line-height: 1.65;
	margin: 0;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	overflow-x: clip;
	text-rendering: optimizeLegibility;
}

img,
svg,
video,
iframe {
	display: block;
	height: auto;
	max-width: 100%;
}

a {
	color: var(--ogt-brand);
	text-decoration: none;
}

a:hover {
	color: var(--ogt-brand-700);
}

h1, h2, h3, h4, h5, h6 {
	color: var(--ogt-ink);
	font-family: var(--ogt-display);
	font-optical-sizing: auto;
	font-weight: 700;
	letter-spacing: -.025em;
	line-height: 1.1;
	margin: 0;
}

p,
ul,
ol,
figure,
blockquote,
dl,
dd {
	margin: 0;
}

button,
input,
select,
textarea {
	color: inherit;
	font: inherit;
}

button {
	cursor: pointer;
}

:focus-visible {
	outline: 3px solid var(--ogt-brand-100);
	outline-offset: 2px;
}

.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.skip-link:focus {
	background: var(--ogt-white);
	border-radius: var(--ogt-r-sm);
	box-shadow: var(--ogt-shadow);
	clip: auto;
	clip-path: none;
	color: var(--ogt-ink);
	height: auto;
	left: 12px;
	padding: 12px 20px;
	top: 12px;
	width: auto;
	z-index: 100000;
}

/* 3. Type -------------------------------------------------------------- */

.ogt-display {
	font-size: clamp(46px, 7vw, 96px);
	font-weight: 800;
	letter-spacing: -.045em;
	line-height: .98;
}

.ogt-h1 {
	font-size: clamp(36px, 4.8vw, 60px);
	letter-spacing: -.03em;
	line-height: 1.06;
}

.ogt-h2 {
	font-size: clamp(32px, 4vw, 54px);
	font-weight: 800;
	letter-spacing: -.035em;
	line-height: 1.02;
}

.ogt-h3 {
	font-size: clamp(22px, 2vw, 26px);
	line-height: 1.25;
}

.ogt-h4 {
	font-size: 19px;
	font-weight: 700;
	letter-spacing: -.01em;
	line-height: 1.3;
}

.ogt-lead {
	color: var(--ogt-body);
	font-size: clamp(18px, 1.5vw, 20px);
	line-height: 1.6;
}

.ogt-muted {
	color: var(--ogt-muted);
}

.ogt-eyebrow {
	align-items: center;
	background: var(--ogt-white);
	border: 1px solid var(--ogt-brand-100);
	border-radius: 999px;
	box-shadow: var(--ogt-shadow-sm);
	color: var(--ogt-brand-700);
	display: inline-flex;
	font-family: var(--ogt-text);
	font-size: 12.5px;
	font-weight: 700;
	gap: 8px;
	letter-spacing: .08em;
	line-height: 1;
	margin-bottom: 20px;
	padding: 8px 14px 8px 12px;
	text-transform: uppercase;
}

.ogt-eyebrow::before {
	background: var(--ogt-brand);
	border-radius: 50%;
	box-shadow: 0 0 0 4px var(--ogt-brand-50);
	content: "";
	height: 7px;
	width: 7px;
}

.ogt-eyebrow--plain {
	background: none;
	padding: 0;
}

.ogt-eyebrow--light {
	background: rgba(255, 255, 255, .08);
	border-color: rgba(255, 255, 255, .16);
	box-shadow: none;
	color: #BFEAE0;
}

.ogt-eyebrow--light::before {
	background: var(--ogt-sun);
	box-shadow: 0 0 0 4px rgba(255, 194, 75, .2);
}

.ogt-accent {
	color: var(--ogt-brand);
}

.ogt-icon {
	flex: none;
	vertical-align: middle;
}

/* 4. Layout ------------------------------------------------------------ */

.ogt-wrap {
	margin-inline: auto;
	max-width: calc(var(--ogt-wrap) + 2 * var(--ogt-gutter));
	padding-inline: var(--ogt-gutter);
	width: 100%;
}

.ogt-wrap--narrow {
	max-width: calc(var(--ogt-narrow) + 2 * var(--ogt-gutter));
}

.ogt-section {
	padding-block: var(--ogt-space);
}

.ogt-section--tight {
	padding-block: clamp(48px, 6vw, 80px);
}

.ogt-section--soft {
	background: var(--ogt-soft);
}

.ogt-section--white {
	background: var(--ogt-white);
}

.ogt-section--forest {
	background: var(--ogt-brand-900) var(--ogt-topo) right -120px top -80px / 720px no-repeat;
	color: rgba(255, 255, 255, .78);
	position: relative;
}

.ogt-section--forest h2,
.ogt-section--forest h3 {
	color: var(--ogt-white);
}

.ogt-section--tint {
	background: var(--ogt-brand-50);
}

.ogt-section--dark {
	background: var(--ogt-navy) var(--ogt-topo) left -160px bottom -200px / 760px no-repeat;
	color: rgba(255, 255, 255, .78);
}

.ogt-section--dark h1,
.ogt-section--dark h2,
.ogt-section--dark h3,
.ogt-section--dark h4 {
	color: var(--ogt-white);
}

.ogt-section--brand {
	background: var(--ogt-brand-700);
	color: rgba(255, 255, 255, .85);
}

.ogt-section--brand h2,
.ogt-section--brand h3 {
	color: var(--ogt-white);
}

.ogt-head {
	align-items: flex-end;
	display: flex;
	flex-wrap: wrap;
	gap: 20px 40px;
	justify-content: space-between;
	margin-bottom: clamp(32px, 4vw, 52px);
}

.ogt-head__text {
	max-width: 720px;
}

.ogt-head__text .ogt-lead {
	margin-top: 16px;
}

.ogt-head--center {
	justify-content: center;
	text-align: center;
}

.ogt-head--center .ogt-head__text {
	margin-inline: auto;
}

.ogt-grid {
	display: grid;
	gap: clamp(20px, 2.4vw, 32px);
	grid-template-columns: 1fr;
}

@media (min-width: 640px) {
	.ogt-grid--2,
	.ogt-grid--3,
	.ogt-grid--4 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 1024px) {
	.ogt-grid--3 {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.ogt-grid--4 {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.ogt-split {
	align-items: center;
	display: grid;
	gap: clamp(32px, 5vw, 80px);
}

@media (min-width: 960px) {
	.ogt-split {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	}

	.ogt-split--media-left .ogt-split__media {
		order: -1;
	}
}

.ogt-split__media img {
	aspect-ratio: 5 / 4;
	border-radius: var(--ogt-r-lg);
	object-fit: cover;
	width: 100%;
}

.ogt-split__body > * + * {
	margin-top: 20px;
}

.ogt-split__body .ogt-eyebrow {
	margin-bottom: 0;
}

.ogt-empty {
	color: var(--ogt-muted);
}

.ogt-empty-box {
	background: var(--ogt-soft);
	border: 1px dashed var(--ogt-line);
	border-radius: var(--ogt-r);
	color: var(--ogt-muted);
	padding: 40px 24px;
	text-align: center;
}

/* 5. Buttons ----------------------------------------------------------- */

.ogt-btn {
	align-items: center;
	background: var(--ogt-brand);
	border: 1.5px solid var(--ogt-brand);
	border-radius: 999px;
	box-shadow: var(--ogt-shadow-brand);
	color: var(--ogt-white) !important;
	cursor: pointer;
	display: inline-flex;
	font-family: var(--ogt-text);
	font-size: 16px;
	font-weight: 600;
	gap: 10px;
	justify-content: center;
	line-height: 1;
	min-height: 56px;
	padding: 0 30px;
	text-decoration: none !important;
	transition: background .2s, border-color .2s, transform .2s var(--ogt-ease), box-shadow .2s;
	white-space: nowrap;
}

.ogt-btn:hover {
	background: var(--ogt-brand-600);
	border-color: var(--ogt-brand-600);
	box-shadow: 0 22px 44px -14px rgba(26, 137, 117, .7);
	transform: translateY(-2px);
}

.ogt-btn .ogt-icon {
	transition: transform .25s var(--ogt-ease);
}

.ogt-btn:hover .ogt-icon {
	transform: translateX(3px);
}

.ogt-btn--lg {
	font-size: 17px;
	min-height: 62px;
	padding: 0 36px;
}

.ogt-btn--sun {
	background: var(--ogt-sun);
	border-color: var(--ogt-sun);
	box-shadow: 0 18px 40px -16px rgba(255, 194, 75, .8);
	color: var(--ogt-ink) !important;
}

.ogt-btn--sun:hover {
	background: #FFB627;
	border-color: #FFB627;
}

.ogt-btn--secondary {
	background: var(--ogt-white);
	border-color: var(--ogt-line);
	box-shadow: var(--ogt-shadow-sm);
	color: var(--ogt-ink) !important;
}

.ogt-btn--secondary:hover {
	background: var(--ogt-white);
	border-color: var(--ogt-ink);
	box-shadow: var(--ogt-shadow-sm);
}

.ogt-btn--light {
	background: var(--ogt-white);
	border-color: var(--ogt-white);
	color: var(--ogt-brand-700) !important;
}

.ogt-btn--light:hover {
	background: var(--ogt-brand-50);
	border-color: var(--ogt-brand-50);
}

.ogt-btn--outline-light {
	background: transparent;
	border-color: rgba(255, 255, 255, .4);
	box-shadow: none;
}

.ogt-btn--outline-light:hover {
	background: rgba(255, 255, 255, .1);
	border-color: var(--ogt-white);
}

.ogt-btn--sm {
	font-size: 14.5px;
	min-height: 44px;
	padding: 0 20px;
}

.ogt-btn--block {
	width: 100%;
}

.ogt-btn[disabled],
.ogt-btn.is-disabled {
	cursor: default;
	opacity: .55;
	transform: none;
}

.ogt-actions {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
}

.ogt-link {
	align-items: center;
	background: none;
	border: 0;
	color: var(--ogt-brand) !important;
	cursor: pointer;
	display: inline-flex;
	font-family: var(--ogt-text);
	font-size: 15.5px;
	font-weight: 600;
	gap: 6px;
	padding: 0;
	text-decoration: none !important;
}

.ogt-link .ogt-icon {
	transition: transform .2s var(--ogt-ease);
}

.ogt-link:hover .ogt-icon {
	transform: translateX(3px);
}

.ogt-link--danger {
	color: #B42318 !important;
}

/* 6. Header and footer ------------------------------------------------- */

.ogt-header {
	background: rgba(255, 255, 255, .9);
	backdrop-filter: saturate(1.6) blur(14px);
	border-bottom: 1px solid transparent;
	position: sticky;
	top: 0;
	transition: border-color .2s, box-shadow .2s;
	z-index: 100;
}

.ogt-header.is-scrolled,
.ogt-header:not(.ogt-header--overlay) {
	border-bottom-color: var(--ogt-line);
}

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

@media (max-width: 782px) {
	.admin-bar .ogt-header {
		top: 46px;
	}
}

@media (max-width: 600px) {
	.admin-bar .ogt-header {
		top: 0;
	}
}

.ogt-header__inner {
	align-items: center;
	display: flex;
	gap: 28px;
	height: var(--ogt-header);
}

.ogt-brand {
	align-items: center;
	color: var(--ogt-ink);
	display: flex;
	flex: none;
	gap: 10px;
}

.ogt-brand img {
	height: 52px;
	object-fit: contain;
	width: auto;
}

.ogt-brand__name {
	font-family: var(--ogt-display);
	font-size: 20px;
	font-weight: 800;
	letter-spacing: -.02em;
}

.ogt-nav {
	align-items: center;
	display: flex;
	flex: 1;
	min-width: 0;
}

.ogt-nav__list {
	display: flex;
	flex: 1;
	gap: 2px;
	justify-content: center;
	list-style: none;
	margin: 0;
	min-width: 0;
	padding: 0;
}

.ogt-nav__list a {
	border-radius: 10px;
	color: var(--ogt-ink);
	display: block;
	font-size: 15.5px;
	font-weight: 500;
	padding: 9px 14px;
	transition: background .2s, color .2s;
	white-space: nowrap;
}

.ogt-nav__list a:hover,
.ogt-nav__list .current-menu-item > a,
.ogt-nav__list .current-menu-parent > a,
.ogt-nav__list .current_page_item > a {
	background: var(--ogt-brand-50);
	color: var(--ogt-brand-700);
}

.ogt-header__actions {
	align-items: center;
	display: flex;
	flex: none;
	gap: 10px;
}

.ogt-header__account {
	align-items: center;
	border-radius: 10px;
	flex: none;
	color: var(--ogt-ink);
	display: inline-flex;
	font-size: 15px;
	font-weight: 500;
	gap: 8px;
	padding: 9px 12px;
	white-space: nowrap;
}

.ogt-header__account:hover {
	background: var(--ogt-soft);
	color: var(--ogt-ink);
}

.ogt-burger {
	display: none;
	margin-left: auto;
	position: static;
}

.ogt-burger summary {
	align-items: center;
	border: 1px solid var(--ogt-line);
	border-radius: 12px;
	cursor: pointer;
	display: flex;
	height: 46px;
	justify-content: center;
	list-style: none;
	width: 46px;
}

.ogt-burger summary::-webkit-details-marker {
	display: none;
}

.ogt-burger__icon,
.ogt-burger__icon::before,
.ogt-burger__icon::after {
	background: var(--ogt-ink);
	border-radius: 2px;
	content: "";
	display: block;
	height: 2px;
	position: relative;
	transition: transform .2s, background .2s;
	width: 20px;
}

.ogt-burger__icon::before {
	position: absolute;
	top: -6px;
}

.ogt-burger__icon::after {
	position: absolute;
	top: 6px;
}

.ogt-burger[open] .ogt-burger__icon {
	background: transparent;
}

.ogt-burger[open] .ogt-burger__icon::before {
	transform: translateY(6px) rotate(45deg);
}

.ogt-burger[open] .ogt-burger__icon::after {
	transform: translateY(-6px) rotate(-45deg);
}

.ogt-burger__panel {
	background: var(--ogt-white);
	border-bottom: 1px solid var(--ogt-line);
	box-shadow: 0 30px 40px -20px rgba(15, 23, 42, .2);
	display: grid;
	gap: 18px;
	left: 0;
	max-height: calc(100vh - var(--ogt-header));
	overflow-y: auto;
	padding: 12px var(--ogt-gutter) 28px;
	position: absolute;
	right: 0;
	top: 100%;
}

.ogt-burger__list {
	list-style: none;
	padding: 0;
}

.ogt-burger__list a {
	border-bottom: 1px solid var(--ogt-line);
	color: var(--ogt-ink);
	display: block;
	font-family: var(--ogt-display);
	font-size: 20px;
	font-weight: 700;
	padding: 15px 0;
}

@media (min-width: 1201px) and (max-width: 1600px) {
	.ogt-header__inner {
		gap: 14px;
	}

	.ogt-nav__list a {
		font-size: 14px;
		padding-inline: 8px;
	}

	.ogt-header__actions {
		gap: 6px;
	}

	.ogt-header__account {
		font-size: 14px;
		padding-inline: 8px;
	}
}

@media (max-width: 1200px) {
	.ogt-nav,
	.ogt-header__actions,
	.ogt-header__account {
		display: none;
	}

	.ogt-burger {
		display: block;
	}
}

@media (max-width: 600px) {
	:root {
		--ogt-header: 66px;
	}

	.ogt-brand img {
		height: 44px;
	}
}

.ogt-footer {
	background: var(--ogt-navy);
	color: rgba(255, 255, 255, .65);
	font-size: 15px;
	padding-block: clamp(64px, 8vw, 96px) 32px;
}

.ogt-footer a {
	color: rgba(255, 255, 255, .85);
}

.ogt-footer a:hover {
	color: var(--ogt-white);
}

.ogt-footer__top {
	display: grid;
	gap: 48px;
	padding-bottom: 56px;
}

@media (min-width: 960px) {
	.ogt-footer__top {
		grid-template-columns: minmax(0, 4fr) minmax(0, 8fr);
	}
}

.ogt-footer__brand {
	align-items: center;
	display: flex;
	gap: 12px;
	margin-bottom: 18px;
}

.ogt-footer__brand img {
	background: var(--ogt-white);
	border-radius: 14px;
	height: 56px;
	padding: 4px;
	width: auto;
}

.ogt-footer__name {
	color: var(--ogt-white);
	font-family: var(--ogt-display);
	font-size: 22px;
	font-weight: 800;
}

.ogt-footer__about {
	max-width: 38ch;
}

.ogt-footer__social {
	display: flex;
	gap: 10px;
	margin-top: 24px;
}

.ogt-footer__social a {
	align-items: center;
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 12px;
	display: flex;
	height: 42px;
	justify-content: center;
	transition: background .2s, border-color .2s;
	width: 42px;
}

.ogt-footer__social a:hover {
	background: var(--ogt-brand);
	border-color: var(--ogt-brand);
}

.ogt-footer__cols {
	display: grid;
	gap: 32px;
	grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

.ogt-footer__heading {
	color: var(--ogt-white);
	font-family: var(--ogt-text);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .1em;
	margin-bottom: 18px;
	text-transform: uppercase;
}

.ogt-footer__list {
	display: grid;
	gap: 11px;
	list-style: none;
	padding: 0;
}

.ogt-footer__bottom {
	border-top: 1px solid rgba(255, 255, 255, .1);
	display: flex;
	flex-wrap: wrap;
	font-size: 13.5px;
	gap: 8px 32px;
	justify-content: space-between;
	padding-top: 28px;
}

/* 7. Heroes ------------------------------------------------------------ */

.ogt-crumbs ol {
	display: flex;
	flex-wrap: wrap;
	font-size: 14px;
	gap: 6px;
	list-style: none;
	margin-bottom: 24px;
	padding: 0;
}

.ogt-crumbs li {
	align-items: center;
	color: var(--ogt-muted);
	display: flex;
	gap: 6px;
}

.ogt-crumbs li + li::before {
	content: "/";
	opacity: .5;
}

.ogt-crumbs a {
	color: var(--ogt-muted);
}

.ogt-crumbs a:hover {
	color: var(--ogt-brand);
}

.ogt-crumbs [aria-current] {
	color: var(--ogt-ink);
	font-weight: 500;
}

/* Home: full-bleed photo washed with white on the text side. */
.ogt-hero-home {
	align-items: center;
	display: flex;
	isolation: isolate;
	min-height: clamp(520px, 72vh, 700px);
	overflow: hidden;
	padding-block: 72px;
	position: relative;
}

.ogt-hero-home__media {
	inset: 0;
	position: absolute;
	z-index: -1;
}

.ogt-hero-home__media img {
	height: 100%;
	object-fit: cover;
	object-position: 70% center;
	width: 100%;
}

.ogt-hero-home__media::after {
	background: linear-gradient(90deg, rgba(255, 255, 255, .97) 0%, rgba(255, 255, 255, .9) 30%, rgba(255, 255, 255, .55) 52%, rgba(255, 255, 255, 0) 72%);
	content: "";
	inset: 0;
	position: absolute;
}

.ogt-hero-home__body {
	max-width: 640px;
}

.ogt-hero-home__title span {
	display: block;
}

.ogt-hero-home__title .ogt-accent {
	color: var(--ogt-brand);
}

.ogt-hero-home .ogt-lead {
	margin-top: 24px;
	max-width: 520px;
}

.ogt-hero-home .ogt-actions {
	margin-top: 36px;
}

.ogt-hero-home__proof {
	align-items: center;
	color: var(--ogt-body);
	display: flex;
	flex-wrap: wrap;
	font-size: 14.5px;
	gap: 10px 28px;
	margin-top: 44px;
}

.ogt-hero-home__proof span {
	align-items: center;
	display: inline-flex;
	gap: 8px;
}

.ogt-hero-home__proof .ogt-icon {
	color: var(--ogt-brand);
}

@media (max-width: 860px) {
	.ogt-hero-home {
		align-items: flex-end;
		min-height: 640px;
	}

	.ogt-hero-home__media::after {
		background: linear-gradient(180deg, rgba(255, 255, 255, 0) 15%, rgba(255, 255, 255, .85) 50%, rgba(255, 255, 255, .98) 70%);
	}
}

/* Split hero: text with a large rounded photo. Used for cities, trips, pages. */
.ogt-hero {
	padding-block: clamp(36px, 5vw, 64px) clamp(48px, 6vw, 88px);
}

.ogt-hero--soft {
	background: linear-gradient(180deg, var(--ogt-soft) 0%, var(--ogt-white) 100%);
}

.ogt-hero__grid {
	align-items: center;
	display: grid;
	gap: clamp(32px, 5vw, 72px);
}

@media (min-width: 960px) {
	.ogt-hero--has-media .ogt-hero__grid {
		grid-template-columns: minmax(0, 11fr) minmax(0, 12fr);
	}
}

.ogt-hero__body .ogt-lead {
	margin-top: 22px;
	max-width: 560px;
}

.ogt-hero__body .ogt-actions {
	margin-top: 32px;
}

.ogt-hero__media {
	position: relative;
}

.ogt-hero__media img {
	aspect-ratio: 6 / 5;
	border-radius: var(--ogt-r-lg);
	box-shadow: var(--ogt-shadow-lg);
	object-fit: cover;
	width: 100%;
}

.ogt-hero__badge {
	align-items: center;
	background: var(--ogt-white);
	border-radius: var(--ogt-r);
	bottom: 20px;
	box-shadow: var(--ogt-shadow-lg);
	display: flex;
	gap: 12px;
	left: -20px;
	padding: 14px 18px;
	position: absolute;
}

.ogt-hero__badge strong {
	color: var(--ogt-ink);
	display: block;
	font-family: var(--ogt-display);
	font-size: 18px;
}

.ogt-hero__badge small {
	color: var(--ogt-muted);
	display: block;
	font-size: 13px;
}

.ogt-hero__badge .ogt-icon-tile {
	margin: 0;
}

@media (max-width: 959px) {
	.ogt-hero__badge {
		left: 16px;
	}
}

.ogt-hero--center {
	text-align: center;
}

.ogt-hero--center .ogt-hero__body {
	margin-inline: auto;
	max-width: 820px;
}

.ogt-hero--center .ogt-lead {
	margin-inline: auto;
}

.ogt-hero--center .ogt-actions {
	justify-content: center;
}

/* 8. Cards ------------------------------------------------------------- */

.ogt-icon-tile {
	align-items: center;
	background: var(--ogt-brand-50);
	border-radius: 14px;
	color: var(--ogt-brand);
	display: inline-flex;
	flex: none;
	height: 52px;
	justify-content: center;
	margin-bottom: 22px;
	width: 52px;
}

.ogt-icon-tile .ogt-icon {
	height: 26px;
	width: 26px;
}

.ogt-feature {
	background: var(--ogt-white);
	border: 1px solid var(--ogt-line);
	border-radius: var(--ogt-r-lg);
	color: var(--ogt-body);
	display: flex;
	flex-direction: column;
	padding: clamp(24px, 2.4vw, 32px);
	transition: border-color .25s, box-shadow .25s var(--ogt-ease), transform .25s var(--ogt-ease);
}

a.ogt-feature:hover {
	border-color: var(--ogt-brand-100);
	box-shadow: var(--ogt-shadow);
	color: var(--ogt-body);
	transform: translateY(-4px);
}

.ogt-feature h3 {
	font-size: 21px;
	letter-spacing: -.015em;
	margin-bottom: 10px;
}

.ogt-feature p {
	flex: 1;
	font-size: 16px;
}

.ogt-feature .ogt-link {
	margin-top: 20px;
}

.ogt-section--soft .ogt-feature,
.ogt-section--tint .ogt-feature {
	border-color: transparent;
	box-shadow: var(--ogt-shadow-sm);
}

.ogt-step {
	counter-increment: ogt-step;
	position: relative;
}

.ogt-steps {
	counter-reset: ogt-step;
}

.ogt-step::before {
	align-items: center;
	background: var(--ogt-brand);
	border-radius: 50%;
	color: var(--ogt-white);
	content: counter(ogt-step);
	display: flex;
	font-family: var(--ogt-display);
	font-size: 18px;
	font-weight: 800;
	height: 44px;
	justify-content: center;
	margin-bottom: 22px;
	width: 44px;
}

.ogt-step h3 {
	font-size: 20px;
	margin-bottom: 10px;
}

/* Media cards: destinations, trips, stories */
.ogt-card {
	color: var(--ogt-body);
	display: flex;
	flex-direction: column;
	position: relative;
}

.ogt-card__link {
	color: inherit;
	display: flex;
	flex-direction: column;
	height: 100%;
}

.ogt-card__link:hover {
	color: inherit;
}

.ogt-card__media {
	aspect-ratio: 4 / 3;
	background: var(--ogt-soft);
	border-radius: var(--ogt-r-lg);
	display: block;
	overflow: hidden;
	position: relative;
}

.ogt-card__media img {
	height: 100%;
	object-fit: cover;
	transition: transform .7s var(--ogt-ease);
	width: 100%;
}

.ogt-card:hover .ogt-card__media img {
	transform: scale(1.045);
}

.ogt-card__placeholder {
	align-items: center;
	background: linear-gradient(135deg, var(--ogt-brand-100), var(--ogt-brand-50));
	color: var(--ogt-brand-700);
	display: flex;
	font-family: var(--ogt-display);
	font-size: 72px;
	font-weight: 800;
	height: 100%;
	justify-content: center;
	opacity: .9;
}

.ogt-card__chip {
	backdrop-filter: blur(10px);
	background: rgba(255, 255, 255, .9);
	border-radius: 999px;
	color: var(--ogt-ink);
	font-size: 12.5px;
	font-weight: 600;
	left: 14px;
	padding: 6px 12px;
	position: absolute;
	top: 14px;
}

.ogt-card__chip--warm {
	background: var(--ogt-sun);
}

.ogt-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 6px;
	padding: 18px 2px 0;
}

.ogt-card__kicker {
	color: var(--ogt-brand);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.ogt-card__title {
	color: var(--ogt-ink);
	font-family: var(--ogt-display);
	font-size: 22px;
	font-weight: 800;
	letter-spacing: -.02em;
	line-height: 1.2;
	transition: color .2s;
}

.ogt-card:hover .ogt-card__title {
	color: var(--ogt-brand-700);
}

.ogt-card__text {
	color: var(--ogt-muted);
	font-size: 15.5px;
	line-height: 1.55;
}

.ogt-card__meta {
	align-items: center;
	color: var(--ogt-muted);
	display: flex;
	flex-wrap: wrap;
	font-size: 14.5px;
	gap: 6px 18px;
	margin-top: 4px;
}

.ogt-card__meta span {
	align-items: center;
	display: inline-flex;
	gap: 6px;
}

.ogt-card__meta strong {
	color: var(--ogt-ink);
}

.ogt-card > .ogt-save {
	position: absolute;
	right: 14px;
	top: 14px;
	z-index: 2;
}

/* Save (wishlist) button */
.ogt-save {
	align-items: center;
	background: var(--ogt-white);
	border: 0;
	border-radius: 999px;
	box-shadow: 0 2px 10px rgba(15, 23, 42, .16);
	color: var(--ogt-ink);
	display: inline-flex;
	gap: 8px;
	justify-content: center;
	padding: 0;
	transition: transform .2s var(--ogt-ease), color .2s;
}

.ogt-save:hover {
	color: #E11D48;
	transform: scale(1.06);
}

.ogt-save--icon {
	height: 40px;
	width: 40px;
}

.ogt-save--pill {
	border: 1.5px solid var(--ogt-line);
	border-radius: 12px;
	box-shadow: none;
	font-size: 16px;
	font-weight: 600;
	min-height: 54px;
	padding: 0 22px;
}

.ogt-save--pill:hover {
	border-color: var(--ogt-ink);
	transform: none;
}

.ogt-save.is-saved {
	color: #E11D48;
}

.ogt-save.is-saved .ogt-icon {
	fill: currentColor;
}

.ogt-save:disabled {
	opacity: .6;
}

/* Place cards (address book) */
.ogt-place {
	background: var(--ogt-white);
	border: 1px solid transparent;
	box-shadow: var(--ogt-shadow-sm);
	border-radius: var(--ogt-r-lg);
	display: flex;
	flex-direction: column;
	overflow: hidden;
	transition: box-shadow .25s var(--ogt-ease), transform .25s var(--ogt-ease);
}

.ogt-place:hover {
	box-shadow: var(--ogt-shadow-lg);
	transform: translateY(-6px);
}

.ogt-place__media img {
	transition: transform .8s var(--ogt-ease);
}

.ogt-place:hover .ogt-place__media img {
	transform: scale(1.06);
}

.ogt-place[hidden] {
	display: none;
}

.ogt-place__media {
	aspect-ratio: 16 / 11;
	background: var(--ogt-soft);
	position: relative;
}

.ogt-place__media img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.ogt-place__media .ogt-card__chip {
	left: 12px;
	top: 12px;
}

.ogt-place__media .ogt-save {
	position: absolute;
	right: 12px;
	top: 12px;
}

.ogt-place__placeholder {
	align-items: center;
	background: linear-gradient(135deg, var(--ogt-brand-50), var(--ogt-soft));
	color: var(--ogt-brand);
	display: flex;
	height: 100%;
	justify-content: center;
}

.ogt-place__placeholder .ogt-icon {
	height: 40px;
	opacity: .6;
	width: 40px;
}

.ogt-place__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 10px;
	padding: 18px 20px 20px;
}

.ogt-place__top {
	align-items: flex-start;
	display: flex;
	gap: 10px;
	justify-content: space-between;
}

.ogt-place__name {
	font-size: 19px;
	font-weight: 800;
	letter-spacing: -.015em;
	line-height: 1.25;
}

.ogt-badge {
	align-items: center;
	background: #FEF3C7;
	border-radius: 999px;
	color: #92400E;
	display: inline-flex;
	flex: none;
	font-size: 12px;
	font-weight: 700;
	gap: 4px;
	padding: 4px 10px 4px 8px;
	white-space: nowrap;
}

.ogt-badge .ogt-icon {
	fill: currentColor;
	height: 13px;
	width: 13px;
}

.ogt-place__address {
	align-items: flex-start;
	color: var(--ogt-muted);
	display: flex;
	font-size: 14px;
	gap: 6px;
	line-height: 1.45;
}

.ogt-place__address .ogt-icon {
	color: var(--ogt-brand);
	height: 17px;
	margin-top: 1px;
	width: 17px;
}

.ogt-place__address:hover {
	color: var(--ogt-brand-700);
}

.ogt-place__note {
	color: var(--ogt-body);
	font-size: 15px;
	line-height: 1.55;
}

.ogt-place__foot {
	align-items: center;
	border-top: 1px solid var(--ogt-line);
	display: flex;
	font-size: 14px;
	gap: 12px;
	margin-top: auto;
	padding-top: 14px;
}

.ogt-place__price {
	color: var(--ogt-ink);
	font-weight: 700;
	letter-spacing: .04em;
}

.ogt-place__hood {
	color: var(--ogt-muted);
}

.ogt-place__links {
	display: flex;
	gap: 16px;
	margin-left: auto;
}

.ogt-place__links a {
	font-weight: 600;
}

.ogt-place.is-locked .ogt-place__media img {
	filter: blur(12px) saturate(.6);
	transform: scale(1.1);
}

.ogt-place__locked {
	align-items: center;
	color: var(--ogt-muted);
	display: flex;
	font-size: 15px;
	gap: 6px;
}

.ogt-place__locked a {
	font-weight: 600;
}

/* Tabs and pills */
.ogt-tabs {
	display: flex;
	gap: 8px;
	margin-bottom: 32px;
	overflow-x: auto;
	padding-bottom: 4px;
	scrollbar-width: none;
}

.ogt-tabs::-webkit-scrollbar {
	display: none;
}

.ogt-tab {
	background: var(--ogt-white);
	border: 1px solid var(--ogt-line);
	border-radius: 999px;
	color: var(--ogt-ink);
	flex: none;
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	padding: 12px 18px;
	transition: background .2s, color .2s, border-color .2s;
}

.ogt-tab span {
	color: var(--ogt-muted);
	font-weight: 500;
	margin-left: 4px;
}

.ogt-tab:hover {
	border-color: var(--ogt-ink);
}

.ogt-tab[aria-selected="true"] {
	background: var(--ogt-ink);
	border-color: var(--ogt-ink);
	color: var(--ogt-white);
}

.ogt-tab[aria-selected="true"] span {
	color: rgba(255, 255, 255, .65);
}

.ogt-pill {
	align-items: center;
	background: var(--ogt-white);
	border: 1px solid var(--ogt-line);
	border-radius: 999px;
	color: var(--ogt-ink);
	display: inline-flex;
	font-size: 15px;
	font-weight: 600;
	gap: 8px;
	padding: 9px 16px;
	transition: border-color .2s, background .2s, color .2s;
}

.ogt-pill:hover {
	border-color: var(--ogt-brand);
	color: var(--ogt-brand-700);
}

.ogt-pill.is-current {
	background: var(--ogt-brand);
	border-color: var(--ogt-brand);
	color: var(--ogt-white);
}

.ogt-pills {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	list-style: none;
	padding: 0;
}

/* Video (YouTube facade: loads the player only on click) */
.ogt-video {
	aspect-ratio: 16 / 9;
	background: var(--ogt-navy);
	border: 0;
	border-radius: var(--ogt-r-lg);
	box-shadow: var(--ogt-shadow-lg);
	cursor: pointer;
	display: block;
	overflow: hidden;
	padding: 0;
	position: relative;
	width: 100%;
}

.ogt-video img {
	height: 100%;
	object-fit: cover;
	transition: transform .6s var(--ogt-ease), opacity .3s;
	width: 100%;
}

.ogt-video picture {
	display: block;
	height: 100%;
}

.ogt-video:hover img {
	opacity: .9;
	transform: scale(1.02);
}

.ogt-video__play {
	align-items: center;
	background: var(--ogt-white);
	border-radius: 50%;
	box-shadow: 0 12px 40px rgba(0, 0, 0, .35);
	color: var(--ogt-brand);
	display: flex;
	height: 88px;
	justify-content: center;
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	transition: transform .25s var(--ogt-ease);
	width: 88px;
}

.ogt-video:hover .ogt-video__play {
	transform: translate(-50%, -50%) scale(1.08);
}

.ogt-video__play svg {
	height: 30px;
	margin-left: 5px;
	width: 30px;
}

.ogt-video__label {
	background: rgba(5, 11, 25, .7);
	backdrop-filter: blur(8px);
	border-radius: 999px;
	bottom: 18px;
	color: var(--ogt-white);
	font-size: 14px;
	font-weight: 600;
	left: 18px;
	padding: 8px 14px;
	position: absolute;
}

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

.ogt-video--short {
	aspect-ratio: 9 / 16;
	max-width: 360px;
}

/* Quote / founders */
.ogt-quote {
	color: var(--ogt-ink);
	font-family: var(--ogt-display);
	font-size: clamp(26px, 3vw, 38px);
	font-weight: 700;
	letter-spacing: -.02em;
	line-height: 1.25;
}

.ogt-section--dark .ogt-quote,
.ogt-section--brand .ogt-quote {
	color: var(--ogt-white);
}

.ogt-quote-by {
	align-items: center;
	display: flex;
	gap: 14px;
	margin-top: 28px;
}

.ogt-quote-by img {
	border-radius: 50%;
	height: 56px;
	object-fit: cover;
	width: 56px;
}

.ogt-quote-by strong {
	color: inherit;
	display: block;
}

/* Checklists */
.ogt-checks {
	display: grid;
	gap: 14px;
	list-style: none;
	padding: 0;
}

.ogt-checks li {
	display: flex;
	gap: 12px;
	line-height: 1.5;
}

.ogt-checks li::before {
	background: var(--ogt-brand-50) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231A8975' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / 13px no-repeat;
	border-radius: 50%;
	content: "";
	flex: none;
	height: 24px;
	margin-top: 1px;
	width: 24px;
}

.ogt-checks--cross li::before {
	background: #FEF2F2 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23B42318' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M7 7l10 10M17 7L7 17'/%3E%3C/svg%3E") center / 11px no-repeat;
}

.ogt-section--dark .ogt-checks li::before,
.ogt-section--brand .ogt-checks li::before {
	background-color: rgba(255, 255, 255, .14);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E");
}

/* FAQ */
.ogt-faq {
	border-top: 1px solid var(--ogt-line);
}

.ogt-faq details {
	border-bottom: 1px solid var(--ogt-line);
}

.ogt-faq summary {
	align-items: center;
	color: var(--ogt-ink);
	cursor: pointer;
	display: flex;
	font-family: var(--ogt-display);
	font-size: 18px;
	font-weight: 700;
	gap: 20px;
	justify-content: space-between;
	list-style: none;
	padding: 24px 0;
}

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

.ogt-faq summary::after {
	background: var(--ogt-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230F172A' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") center / 14px no-repeat;
	border-radius: 50%;
	content: "";
	flex: none;
	height: 34px;
	transition: transform .25s var(--ogt-ease), background-color .2s;
	width: 34px;
}

.ogt-faq details[open] summary::after {
	background-color: var(--ogt-brand-50);
	transform: rotate(45deg);
}

.ogt-faq__answer {
	padding: 0 56px 26px 0;
}

.ogt-faq__answer p + p {
	margin-top: 12px;
}

/* CTA band */
.ogt-cta {
	align-items: center;
	background: var(--ogt-brand-700);
	background-image: radial-gradient(120% 140% at 100% 0%, rgba(26, 137, 117, .9) 0%, rgba(16, 90, 76, 0) 60%);
	border-radius: var(--ogt-r-lg);
	color: rgba(255, 255, 255, .85);
	display: grid;
	gap: 28px;
	overflow: hidden;
	padding: clamp(36px, 5vw, 64px);
}

@media (min-width: 900px) {
	.ogt-cta {
		grid-template-columns: minmax(0, 1fr) auto;
	}
}

.ogt-cta h2 {
	color: var(--ogt-white);
}

.ogt-cta p {
	font-size: 18px;
	margin-top: 12px;
	max-width: 56ch;
}

/* Facts panel (answer-first summary) */
.ogt-facts {
	background: var(--ogt-white);
	border: 1px solid var(--ogt-line);
	border-radius: var(--ogt-r-lg);
	box-shadow: var(--ogt-shadow);
	display: grid;
	gap: 28px 48px;
	padding: clamp(24px, 3vw, 40px);
}

@media (min-width: 960px) {
	.ogt-facts--has-summary {
		grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
	}
}

.ogt-facts__label {
	color: var(--ogt-brand);
	font-size: 12.5px;
	font-weight: 700;
	letter-spacing: .1em;
	margin-bottom: 10px;
	text-transform: uppercase;
}

.ogt-facts__summary p:last-child {
	color: var(--ogt-ink);
	font-size: 18px;
	font-weight: 500;
	line-height: 1.6;
}

.ogt-facts__list {
	display: grid;
	gap: 22px 28px;
	grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
}

.ogt-fact {
	align-items: flex-start;
	display: flex;
	gap: 14px;
}

.ogt-fact .ogt-icon-tile {
	border-radius: 12px;
	height: 42px;
	margin: 0;
	width: 42px;
}

.ogt-fact .ogt-icon-tile .ogt-icon {
	height: 21px;
	width: 21px;
}

.ogt-fact dt {
	color: var(--ogt-muted);
	font-size: 13.5px;
}

.ogt-fact dd {
	color: var(--ogt-ink);
	font-size: 16px;
	font-weight: 600;
	line-height: 1.4;
}

/* 9. Destination pages ------------------------------------------------- */

.ogt-switcher {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 12px 16px;
	margin-top: 28px;
}

.ogt-switcher__label {
	color: var(--ogt-muted);
	font-size: 14px;
	font-weight: 600;
}

.ogt-guide {
	display: grid;
	gap: 48px;
}

@media (min-width: 1024px) {
	.ogt-guide--with-aside {
		grid-template-columns: minmax(0, 8fr) minmax(300px, 4fr);
	}
}

.ogt-aside {
	align-self: start;
	background: var(--ogt-soft);
	border-radius: var(--ogt-r-lg);
	padding: 28px;
	position: sticky;
	top: calc(var(--ogt-header) + 24px);
}

.ogt-aside h2,
.ogt-aside h3 {
	font-size: 20px;
	margin-bottom: 18px;
}

.ogt-tile {
	background: var(--ogt-white);
	border: 1px solid var(--ogt-line);
	border-radius: var(--ogt-r);
	padding: 24px;
}

.ogt-tile h3 {
	font-size: 19px;
}

.ogt-tile p {
	margin-top: 8px;
}

.ogt-tile__tag {
	color: var(--ogt-brand);
	font-size: 14px;
	font-weight: 600;
}

.ogt-tile__price {
	color: var(--ogt-ink);
	font-weight: 700;
}

/* 10. Trips and the package builder ------------------------------------ */

.ogt-trip-layout {
	display: grid;
	gap: 56px;
}

@media (min-width: 1100px) {
	.ogt-trip-layout {
		grid-template-columns: minmax(0, 1fr) 400px;
	}
}

.ogt-trip-layout__main > * + * {
	margin-top: clamp(56px, 6vw, 88px);
}

.ogt-trip-layout__side {
	align-self: start;
	position: sticky;
	top: calc(var(--ogt-header) + 24px);
}

.ogt-glance {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
}

.ogt-glance > div {
	background: var(--ogt-white);
	border: 1px solid var(--ogt-line);
	border-radius: var(--ogt-r);
	padding: 16px 18px;
}

.ogt-glance dt {
	align-items: center;
	color: var(--ogt-muted);
	display: flex;
	font-size: 13.5px;
	gap: 8px;
}

.ogt-glance dt .ogt-icon {
	color: var(--ogt-brand);
	height: 18px;
	width: 18px;
}

.ogt-glance dd {
	color: var(--ogt-ink);
	font-size: 16px;
	font-weight: 600;
	margin-top: 4px;
}

.ogt-block-title {
	font-size: clamp(24px, 2.4vw, 30px);
	letter-spacing: -.02em;
	margin-bottom: 24px;
}

.ogt-timeline {
	list-style: none;
	padding: 0;
}

.ogt-timeline li {
	display: grid;
	gap: 4px 20px;
	grid-template-columns: 44px 1fr;
	padding-bottom: 32px;
	position: relative;
}

.ogt-timeline li:not(:last-child)::after {
	background: var(--ogt-line);
	bottom: 0;
	content: "";
	left: 21px;
	position: absolute;
	top: 48px;
	width: 2px;
}

.ogt-timeline__num {
	align-items: center;
	background: var(--ogt-brand-50);
	border-radius: 50%;
	color: var(--ogt-brand-700);
	display: flex;
	font-family: var(--ogt-display);
	font-weight: 800;
	height: 44px;
	justify-content: center;
	width: 44px;
}

.ogt-timeline li:first-child .ogt-timeline__num {
	background: var(--ogt-brand);
	color: var(--ogt-white);
}

.ogt-timeline h3 {
	font-size: 19px;
	padding-top: 10px;
}

.ogt-timeline__tag {
	background: var(--ogt-soft);
	border-radius: 999px;
	color: var(--ogt-muted);
	font-family: var(--ogt-text);
	font-size: 12.5px;
	font-weight: 600;
	margin-left: 8px;
	padding: 3px 10px;
	vertical-align: middle;
}

.ogt-timeline p {
	grid-column: 2;
}

.ogt-stays {
	display: grid;
	gap: 20px;
}

@media (min-width: 700px) {
	.ogt-stays {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.ogt-stay {
	border: 1px solid var(--ogt-line);
	border-radius: var(--ogt-r-lg);
	overflow: hidden;
}

.ogt-stay img {
	aspect-ratio: 16 / 10;
	object-fit: cover;
	width: 100%;
}

.ogt-stay__body {
	padding: 22px;
}

.ogt-stay__body h3 {
	font-size: 20px;
}

.ogt-stay__body p {
	margin-top: 8px;
}

.ogt-stay__price {
	color: var(--ogt-ink);
	font-weight: 700;
}

.ogt-included {
	display: grid;
	gap: 20px;
}

@media (min-width: 700px) {
	.ogt-included {
		grid-template-columns: 1fr 1fr;
	}
}

.ogt-included > div {
	border: 1px solid var(--ogt-line);
	border-radius: var(--ogt-r-lg);
	padding: 26px;
}

.ogt-included > div:first-child {
	background: var(--ogt-brand-50);
	border-color: transparent;
}

.ogt-included h3 {
	font-size: 18px;
	margin-bottom: 18px;
}

.ogt-dates {
	display: grid;
	gap: 10px;
	list-style: none;
	padding: 0;
}

.ogt-date {
	align-items: center;
	border: 1px solid var(--ogt-line);
	border-radius: var(--ogt-r);
	display: grid;
	gap: 8px 20px;
	grid-template-columns: 1fr auto;
	padding: 18px 22px;
}

.ogt-date__label {
	color: var(--ogt-ink);
	font-weight: 700;
}

.ogt-date__range,
.ogt-date__spots {
	color: var(--ogt-muted);
	font-size: 14px;
}

.ogt-date__price {
	color: var(--ogt-ink);
	font-weight: 700;
	text-align: right;
}

/* Booking card + builder */
.ogt-book {
	background: var(--ogt-white);
	border: 1px solid var(--ogt-line);
	border-radius: var(--ogt-r-lg);
	box-shadow: var(--ogt-shadow-lg);
	padding: 26px;
}

.ogt-book__price {
	color: var(--ogt-muted);
	font-size: 15px;
}

.ogt-book__price strong {
	color: var(--ogt-ink);
	font-family: var(--ogt-display);
	font-size: 30px;
	font-weight: 800;
	letter-spacing: -.02em;
	margin-right: 4px;
}

.ogt-book__status {
	align-items: center;
	color: var(--ogt-brand-700);
	display: flex;
	font-size: 14px;
	font-weight: 600;
	gap: 8px;
	margin-top: 6px;
}

.ogt-book__status::before {
	background: var(--ogt-brand);
	border-radius: 50%;
	box-shadow: 0 0 0 4px var(--ogt-brand-50);
	content: "";
	height: 8px;
	width: 8px;
}

.ogt-book__list {
	border-top: 1px solid var(--ogt-line);
	display: grid;
	font-size: 15px;
	gap: 10px;
	list-style: none;
	margin: 20px 0;
	padding: 20px 0 0;
}

.ogt-book__list li {
	display: flex;
	gap: 12px;
	justify-content: space-between;
}

.ogt-book__list span:first-child {
	color: var(--ogt-muted);
}

.ogt-book__list span:last-child {
	color: var(--ogt-ink);
	font-weight: 600;
	text-align: right;
}

.ogt-book .ogt-btn + .ogt-btn {
	margin-top: 10px;
}

.ogt-book__note {
	color: var(--ogt-muted);
	font-size: 13.5px;
	margin-top: 14px;
	text-align: center;
}

.ogt-builder {
	display: grid;
	gap: 40px;
}

@media (min-width: 1024px) {
	.ogt-builder {
		align-items: start;
		grid-template-columns: minmax(0, 1fr) 380px;
	}
}

.ogt-builder__step {
	border: 1px solid var(--ogt-line);
	border-radius: var(--ogt-r-lg);
	padding: clamp(20px, 2.6vw, 30px);
}

.ogt-builder__step + .ogt-builder__step {
	margin-top: 20px;
}

.ogt-builder__step legend,
.ogt-builder__step h3 {
	align-items: center;
	color: var(--ogt-ink);
	display: flex;
	font-family: var(--ogt-display);
	font-size: 19px;
	font-weight: 800;
	gap: 12px;
	letter-spacing: -.01em;
	margin-bottom: 18px;
	padding: 0;
}

.ogt-builder__step legend span,
.ogt-builder__step h3 span {
	align-items: center;
	background: var(--ogt-brand);
	border-radius: 50%;
	color: var(--ogt-white);
	display: inline-flex;
	font-size: 14px;
	height: 28px;
	justify-content: center;
	width: 28px;
}

fieldset.ogt-builder__step {
	margin: 0;
	min-width: 0;
}

fieldset.ogt-builder__step + fieldset.ogt-builder__step {
	margin-top: 20px;
}

.ogt-options {
	display: grid;
	gap: 12px;
}

@media (min-width: 640px) {
	.ogt-options--2 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.ogt-option {
	cursor: pointer;
	display: block;
	position: relative;
}

.ogt-option input {
	opacity: 0;
	pointer-events: none;
	position: absolute;
}

.ogt-option__box {
	align-items: flex-start;
	border: 1.5px solid var(--ogt-line);
	border-radius: var(--ogt-r);
	display: flex;
	gap: 14px;
	height: 100%;
	padding: 14px;
	transition: border-color .2s, background .2s, box-shadow .2s;
}

.ogt-option:hover .ogt-option__box {
	border-color: #CBD5E1;
}

.ogt-option input:checked + .ogt-option__box {
	background: var(--ogt-brand-50);
	border-color: var(--ogt-brand);
	box-shadow: 0 0 0 3px rgba(26, 137, 117, .12);
}

.ogt-option input:focus-visible + .ogt-option__box {
	outline: 3px solid var(--ogt-brand-100);
}

.ogt-option__img {
	aspect-ratio: 1;
	border-radius: 10px;
	flex: none;
	object-fit: cover;
	width: 76px;
}

.ogt-option__text {
	flex: 1;
	min-width: 0;
}

.ogt-option__title {
	color: var(--ogt-ink);
	display: block;
	font-weight: 700;
	line-height: 1.35;
}

.ogt-option__desc {
	color: var(--ogt-muted);
	display: block;
	font-size: 14px;
	line-height: 1.5;
	margin-top: 4px;
}

.ogt-option__price {
	color: var(--ogt-brand-700);
	display: block;
	font-size: 14px;
	font-weight: 700;
	margin-top: 6px;
}

.ogt-option__tick {
	border: 1.5px solid #CBD5E1;
	border-radius: 50%;
	flex: none;
	height: 22px;
	transition: background .2s, border-color .2s;
	width: 22px;
}

.ogt-option input[type="checkbox"] + .ogt-option__box .ogt-option__tick {
	border-radius: 6px;
}

.ogt-option input:checked + .ogt-option__box .ogt-option__tick {
	background: var(--ogt-brand) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / 13px no-repeat;
	border-color: var(--ogt-brand);
}

.ogt-fields {
	display: grid;
	gap: 16px;
}

@media (min-width: 640px) {
	.ogt-fields--2 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ogt-fields--3 {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.ogt-field {
	display: grid;
	gap: 7px;
}

.ogt-field label,
.ogt-field__label {
	color: var(--ogt-ink);
	font-size: 14.5px;
	font-weight: 600;
}

.ogt-field--full {
	grid-column: 1 / -1;
}

.ogt-input,
.ogt-main input[type="text"],
.ogt-main input[type="email"],
.ogt-main input[type="tel"],
.ogt-main input[type="number"],
.ogt-main input[type="date"],
.ogt-main input[type="password"],
.ogt-main input[type="url"],
.ogt-main input[type="search"],
.ogt-main select,
.ogt-main textarea {
	background: var(--ogt-white);
	border: 1px solid #CBD5E1;
	border-radius: 12px;
	color: var(--ogt-ink);
	font-size: 16px;
	min-height: 50px;
	padding: 12px 14px;
	transition: border-color .2s, box-shadow .2s;
	width: 100%;
}

.ogt-main textarea {
	min-height: 110px;
	resize: vertical;
}

.ogt-main input:focus,
.ogt-main select:focus,
.ogt-main textarea:focus {
	border-color: var(--ogt-brand);
	box-shadow: 0 0 0 4px rgba(26, 137, 117, .14);
	outline: none;
}

.ogt-stepper {
	align-items: center;
	border: 1px solid #CBD5E1;
	border-radius: 12px;
	display: flex;
	height: 50px;
	overflow: hidden;
}

.ogt-stepper button {
	background: var(--ogt-soft);
	border: 0;
	color: var(--ogt-ink);
	font-size: 20px;
	height: 100%;
	width: 48px;
}

.ogt-stepper button:hover {
	background: var(--ogt-brand-50);
}

.ogt-main .ogt-stepper input {
	border: 0;
	border-radius: 0;
	box-shadow: none;
	min-height: 0;
	height: 100%;
	text-align: center;
	-moz-appearance: textfield;
}

.ogt-stepper input::-webkit-inner-spin-button {
	-webkit-appearance: none;
}

.ogt-summary {
	position: sticky;
	top: calc(var(--ogt-header) + 24px);
}

.ogt-summary__lines {
	border-top: 1px solid var(--ogt-line);
	display: grid;
	font-size: 15px;
	gap: 10px;
	list-style: none;
	margin: 18px 0;
	padding: 18px 0 0;
}

.ogt-summary__lines li {
	display: flex;
	gap: 12px;
	justify-content: space-between;
}

.ogt-summary__lines li span:first-child {
	color: var(--ogt-body);
}

.ogt-summary__lines li span:last-child {
	color: var(--ogt-ink);
	font-weight: 600;
	text-align: right;
	white-space: nowrap;
}

.ogt-summary__total {
	align-items: baseline;
	border-top: 1px solid var(--ogt-line);
	display: flex;
	justify-content: space-between;
	padding-top: 16px;
}

.ogt-summary__total span {
	color: var(--ogt-muted);
	font-size: 14px;
}

.ogt-summary__total strong {
	color: var(--ogt-ink);
	font-family: var(--ogt-display);
	font-size: 30px;
	font-weight: 800;
	letter-spacing: -.02em;
}

.ogt-notice-ok {
	background: var(--ogt-brand-50);
	border-radius: var(--ogt-r);
	color: var(--ogt-brand-700);
	font-weight: 600;
	padding: 18px 20px;
}

.ogt-notice-error {
	background: #FEF2F2;
	border-radius: var(--ogt-r);
	color: #B42318;
	padding: 14px 18px;
}

.ogt-sticky {
	align-items: center;
	background: var(--ogt-white);
	border-top: 1px solid var(--ogt-line);
	bottom: 0;
	box-shadow: 0 -10px 30px rgba(15, 23, 42, .08);
	display: flex;
	gap: 16px;
	justify-content: space-between;
	left: 0;
	padding: 12px var(--ogt-gutter) calc(12px + env(safe-area-inset-bottom));
	position: fixed;
	right: 0;
	z-index: 90;
}

.ogt-sticky__price {
	color: var(--ogt-muted);
	font-size: 14px;
}

.ogt-sticky__price strong {
	color: var(--ogt-ink);
	display: block;
	font-family: var(--ogt-display);
	font-size: 20px;
}

@media (min-width: 1100px) {
	.ogt-sticky {
		display: none;
	}
}

@media (max-width: 1099px) {
	body:has(.ogt-sticky) .ogt-footer {
		padding-bottom: 110px;
	}
}

/* 11. Journal and prose ------------------------------------------------ */

.ogt-article-head {
	padding-block: clamp(40px, 6vw, 80px) clamp(28px, 3vw, 40px);
}

.ogt-article-head__cats {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 20px;
}

.ogt-article-head__cats a {
	background: var(--ogt-brand-50);
	border-radius: 999px;
	color: var(--ogt-brand-700);
	font-size: 13px;
	font-weight: 700;
	padding: 6px 12px;
}

.ogt-article-head__meta {
	align-items: center;
	color: var(--ogt-muted);
	display: flex;
	flex-wrap: wrap;
	font-size: 15px;
	gap: 8px 22px;
	margin-top: 24px;
}

.ogt-article-head__meta img {
	border-radius: 50%;
	height: 40px;
	object-fit: cover;
	width: 40px;
}

.ogt-article-head__by {
	align-items: center;
	color: var(--ogt-ink);
	display: flex;
	font-weight: 600;
	gap: 10px;
}

.ogt-article-image {
	margin-bottom: clamp(40px, 5vw, 64px);
}

.ogt-article-image img {
	aspect-ratio: 16 / 8;
	border-radius: var(--ogt-r-lg);
	object-fit: cover;
	width: 100%;
}

.ogt-prose {
	color: var(--ogt-body);
	font-size: 18px;
	line-height: 1.8;
}

.ogt-prose > * + * {
	margin-top: 1.25em;
}

.ogt-prose h2 {
	font-size: clamp(26px, 2.6vw, 32px);
	margin-top: 2em;
}

.ogt-prose h3 {
	font-size: 23px;
	margin-top: 1.8em;
}

.ogt-prose h4 {
	font-size: 19px;
	margin-top: 1.6em;
}

.ogt-prose h2 + *,
.ogt-prose h3 + *,
.ogt-prose h4 + * {
	margin-top: .7em;
}

.ogt-prose a {
	color: var(--ogt-brand);
	text-decoration: underline;
	text-decoration-color: var(--ogt-brand-100);
	text-decoration-thickness: 2px;
	text-underline-offset: 3px;
}

.ogt-prose a:hover {
	text-decoration-color: var(--ogt-brand);
}

.ogt-prose strong {
	color: var(--ogt-ink);
}

.ogt-prose ul,
.ogt-prose ol {
	padding-left: 1.3em;
}

.ogt-prose li + li {
	margin-top: .45em;
}

.ogt-prose li::marker {
	color: var(--ogt-brand);
}

.ogt-prose img,
.ogt-prose .wp-block-image img {
	border-radius: var(--ogt-r);
}

.ogt-prose figure {
	margin-inline: 0;
}

.ogt-prose figcaption {
	color: var(--ogt-muted);
	font-size: 14px;
	margin-top: 10px;
	text-align: center;
}

.ogt-prose blockquote {
	border-left: 3px solid var(--ogt-brand);
	color: var(--ogt-ink);
	font-size: 21px;
	font-weight: 500;
	padding-left: 24px;
}

.ogt-prose table {
	border-collapse: collapse;
	display: block;
	font-size: 15.5px;
	overflow-x: auto;
	width: 100%;
}

.ogt-prose th,
.ogt-prose td {
	border-bottom: 1px solid var(--ogt-line);
	padding: 12px 14px;
	text-align: left;
	vertical-align: top;
}

.ogt-prose th {
	color: var(--ogt-ink);
	font-weight: 700;
}

.ogt-prose thead th {
	background: var(--ogt-soft);
}

.ogt-prose .wp-block-embed iframe,
.ogt-prose iframe {
	aspect-ratio: 16 / 9;
	border-radius: var(--ogt-r);
	height: auto;
	width: 100%;
}

.ogt-prose .wp-block-button__link,
.ogt-prose .elementor-button {
	background: var(--ogt-brand);
	border-radius: 12px;
	color: var(--ogt-white);
	display: inline-block;
	font-weight: 600;
	padding: 14px 24px;
	text-decoration: none;
}

.ogt-tags {
	border-top: 1px solid var(--ogt-line);
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 56px;
	padding-top: 28px;
}

.ogt-tags a {
	background: var(--ogt-soft);
	border-radius: 999px;
	color: var(--ogt-body);
	font-size: 14px;
	padding: 7px 14px;
}

.ogt-tags a:hover {
	background: var(--ogt-brand-50);
	color: var(--ogt-brand-700);
}

.ogt-author {
	align-items: center;
	background: var(--ogt-soft);
	border-radius: var(--ogt-r-lg);
	display: flex;
	gap: 20px;
	margin-top: 40px;
	padding: 28px;
}

.ogt-author img {
	border-radius: 50%;
	flex: none;
	height: 76px;
	object-fit: cover;
	width: 76px;
}

.ogt-author strong {
	color: var(--ogt-ink);
	display: block;
	font-family: var(--ogt-display);
	font-size: 19px;
	margin-bottom: 4px;
}

.ogt-featured {
	display: grid;
	gap: 32px;
	margin-bottom: clamp(56px, 6vw, 88px);
}

@media (min-width: 960px) {
	.ogt-featured {
		align-items: center;
		grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
	}
}

.ogt-featured__media img {
	aspect-ratio: 16 / 10;
	border-radius: var(--ogt-r-lg);
	object-fit: cover;
	width: 100%;
}

.ogt-featured h2 {
	font-size: clamp(28px, 3vw, 38px);
	letter-spacing: -.025em;
	margin: 12px 0 16px;
}

.ogt-featured h2 a {
	color: var(--ogt-ink);
}

.ogt-featured h2 a:hover {
	color: var(--ogt-brand-700);
}

.ogt-featured p {
	margin-bottom: 28px;
}

.ogt-pagination {
	margin-top: 56px;
}

.ogt-pagination .nav-links {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	justify-content: center;
}

.ogt-pagination .page-numbers {
	align-items: center;
	border: 1px solid var(--ogt-line);
	border-radius: 12px;
	color: var(--ogt-ink);
	display: inline-flex;
	font-weight: 600;
	height: 46px;
	justify-content: center;
	min-width: 46px;
	padding: 0 14px;
}

.ogt-pagination .page-numbers.current {
	background: var(--ogt-ink);
	border-color: var(--ogt-ink);
	color: var(--ogt-white);
}

.comments-area {
	border-top: 1px solid var(--ogt-line);
	margin-top: 56px;
	padding-top: 40px;
}

.comments-area .comment-list {
	list-style: none;
	padding: 0;
}

.comment-respond .submit {
	background: var(--ogt-brand);
	border: 0;
	border-radius: 12px;
	color: var(--ogt-white);
	font-weight: 600;
	padding: 14px 24px;
}

/* 12. Page sections ---------------------------------------------------- */

.ogt-sec-text__body {
	max-width: 760px;
}

.ogt-sec-text--center .ogt-sec-text__body {
	margin-inline: auto;
	text-align: center;
}

.ogt-stats {
	display: grid;
	gap: 24px;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.ogt-stat strong {
	color: var(--ogt-ink);
	display: block;
	font-family: var(--ogt-display);
	font-size: clamp(36px, 4vw, 52px);
	font-weight: 800;
	letter-spacing: -.03em;
	line-height: 1;
}

.ogt-section--dark .ogt-stat strong,
.ogt-section--brand .ogt-stat strong {
	color: var(--ogt-white);
}

.ogt-stat span {
	display: block;
	margin-top: 10px;
}

.ogt-form-card {
	background: var(--ogt-white);
	border: 1px solid var(--ogt-line);
	border-radius: var(--ogt-r-lg);
	box-shadow: var(--ogt-shadow);
	color: var(--ogt-body);
	padding: clamp(24px, 3vw, 40px);
}

/* 13. Account and membership ------------------------------------------- */

.ogt-plans {
	align-items: stretch;
	display: grid;
	gap: 20px;
}

@media (min-width: 960px) {
	.ogt-plans {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.ogt-plan {
	background: var(--ogt-white);
	border: 1px solid var(--ogt-line);
	border-radius: var(--ogt-r-lg);
	display: flex;
	flex-direction: column;
	padding: 32px 28px;
	position: relative;
}

.ogt-plan.is-featured {
	border: 2px solid var(--ogt-brand);
	box-shadow: var(--ogt-shadow-lg);
}

.ogt-plan__flag {
	background: var(--ogt-brand);
	border-radius: 999px;
	color: var(--ogt-white);
	font-size: 12px;
	font-weight: 700;
	left: 28px;
	letter-spacing: .06em;
	padding: 6px 12px;
	position: absolute;
	text-transform: uppercase;
	top: -14px;
}

.ogt-plan__name {
	font-size: 20px;
}

.ogt-plan__price {
	align-items: baseline;
	display: flex;
	gap: 6px;
	margin-top: 14px;
}

.ogt-plan__price strong {
	color: var(--ogt-ink);
	font-family: var(--ogt-display);
	font-size: 46px;
	font-weight: 800;
	letter-spacing: -.035em;
	line-height: 1;
}

.ogt-plan__price span {
	color: var(--ogt-muted);
}

.ogt-plan__blurb {
	color: var(--ogt-muted);
	margin-top: 12px;
}

.ogt-plan .ogt-checks {
	border-top: 1px solid var(--ogt-line);
	flex: 1;
	font-size: 15.5px;
	gap: 12px;
	margin: 24px 0 28px;
	padding-top: 24px;
}

.ogt-usage {
	background: var(--ogt-soft);
	border-radius: var(--ogt-r);
	margin-bottom: 32px;
	padding: 22px 24px;
}

.ogt-usage__tier {
	color: var(--ogt-ink);
	font-weight: 700;
	margin-bottom: 16px;
}

.ogt-usage__meters {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
	margin-bottom: 16px;
}

.ogt-meter {
	display: grid;
	font-size: 14px;
	gap: 6px;
}

.ogt-meter__label {
	color: var(--ogt-muted);
}

.ogt-meter__value {
	color: var(--ogt-ink);
	font-weight: 600;
}

.ogt-meter__bar {
	background: var(--ogt-line);
	border-radius: 99px;
	height: 6px;
	overflow: hidden;
}

.ogt-meter__bar span {
	background: var(--ogt-brand);
	display: block;
	height: 100%;
}

.ogt-saved {
	display: grid;
	gap: 36px;
}

.ogt-saved__title {
	font-size: 20px;
	margin-bottom: 14px;
}

.ogt-saved__title a {
	color: var(--ogt-ink);
}

.ogt-saved__list {
	display: grid;
	gap: 10px;
	list-style: none;
	padding: 0;
}

.ogt-saved-item {
	align-items: center;
	border: 1px solid var(--ogt-line);
	border-radius: var(--ogt-r);
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	padding: 12px 14px;
}

.ogt-saved-item__media img {
	border-radius: 10px;
	height: 60px;
	object-fit: cover;
	width: 60px;
}

.ogt-saved-item__body {
	display: grid;
	flex: 1;
	font-size: 14px;
	min-width: 160px;
}

.ogt-saved-item__body strong {
	color: var(--ogt-ink);
	font-size: 16px;
}

.ogt-saved-item__body a {
	color: var(--ogt-muted);
}

.ogt-saved-item__plan select {
	min-height: 42px !important;
	min-width: 170px;
	padding-block: 8px !important;
}

.ogt-saved-item .ogt-save {
	border: 1px solid var(--ogt-line);
	box-shadow: none;
}

.ogt-empty-state {
	border: 1px dashed var(--ogt-line);
	border-radius: var(--ogt-r-lg);
	padding: 56px 24px;
	text-align: center;
}

.ogt-empty-state .ogt-icon-tile {
	margin-inline: auto;
}

.ogt-empty-state h3 {
	font-size: 22px;
	margin-bottom: 8px;
}

.ogt-empty-state .ogt-btn {
	margin-top: 24px;
}

.ogt-planner {
	display: grid;
	gap: 24px;
}

.ogt-panel {
	border: 1px solid var(--ogt-line);
	border-radius: var(--ogt-r-lg);
	padding: 24px;
}

.ogt-panel h3 {
	font-size: 20px;
	margin-bottom: 16px;
}

.ogt-panel__head {
	align-items: flex-start;
	display: flex;
	gap: 16px;
	justify-content: space-between;
}

.ogt-panel__head p {
	color: var(--ogt-muted);
}

.ogt-panel ul {
	display: grid;
	gap: 8px;
	list-style: none;
	margin: 16px 0;
	padding: 0;
}

.ogt-panel li {
	display: flex;
	gap: 12px;
	justify-content: space-between;
}

.ogt-panel li span {
	color: var(--ogt-muted);
	font-size: 14px;
}

.ogt-notice {
	align-items: center;
	background: var(--ogt-brand-50);
	border-radius: var(--ogt-r);
	color: var(--ogt-brand-700);
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	justify-content: space-between;
	margin-bottom: 28px;
	padding: 18px 22px;
}

/* 14. Forms, plugins, utilities --------------------------------------- */

.ogt-main .ff-btn-submit {
	background: var(--ogt-brand) !important;
	border: 0 !important;
	border-radius: 12px !important;
	color: var(--ogt-white) !important;
	font-weight: 600 !important;
	min-height: 52px;
	padding: 0 28px !important;
}

.ogt-main .ff-el-group label {
	color: var(--ogt-ink);
	font-weight: 600;
}

/* Insurance quote wizard (og-insurance-quote plugin) */
.ogt-insurance {
	background: var(--ogt-white);
	border: 1px solid var(--ogt-line);
	border-radius: var(--ogt-r-lg);
	box-shadow: var(--ogt-shadow-lg);
	overflow: hidden;
	padding: clamp(8px, 2vw, 24px);
}

.ogt-insurance > * {
	max-width: none !important;
}

.ogt-insurance h1,
.ogt-insurance h2,
.ogt-insurance h3 {
	font-family: var(--ogt-display);
}

.ogt-insurance button,
.ogt-insurance .btn,
.ogt-insurance [class*="btn-primary"] {
	border-radius: 12px !important;
}

/* Toast */
.ogt-toast {
	align-items: center;
	background: var(--ogt-ink);
	border-radius: 14px;
	bottom: 24px;
	box-shadow: var(--ogt-shadow-lg);
	color: var(--ogt-white);
	display: flex;
	font-size: 15px;
	font-weight: 500;
	gap: 16px;
	left: 50%;
	max-width: calc(100vw - 32px);
	opacity: 0;
	padding: 14px 18px;
	pointer-events: none;
	position: fixed;
	transform: translate(-50%, 12px);
	transition: opacity .25s, transform .25s var(--ogt-ease);
	width: max-content;
	z-index: 9999;
}

.ogt-toast.is-open {
	opacity: 1;
	pointer-events: auto;
	transform: translate(-50%, 0);
}

.ogt-toast a {
	color: #7FE0CB;
	font-weight: 700;
	white-space: nowrap;
}

@media (max-width: 1099px) {
	body:has(.ogt-sticky) .ogt-toast {
		bottom: 92px;
	}
}

/* Reveal on scroll (progressive: content is visible without JS) */
.js .ogt-reveal {
	opacity: 0;
	transform: translateY(18px);
	transition: opacity .7s var(--ogt-ease), transform .7s var(--ogt-ease);
}

.js .ogt-reveal.is-in {
	opacity: 1;
	transform: none;
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	*,
	*::before,
	*::after {
		transition: none !important;
	}

	.js .ogt-reveal {
		opacity: 1;
		transform: none;
	}
}

/* Destination explorer ------------------------------------------------- */

.ogt-hero__chips {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 22px;
	list-style: none;
	margin-top: 32px;
	padding: 0;
}

.ogt-hero__chips li {
	align-items: center;
	color: var(--ogt-body);
	display: inline-flex;
	font-size: 15px;
	font-weight: 500;
	gap: 8px;
}

.ogt-hero__chips .ogt-icon {
	color: var(--ogt-brand);
	height: 19px;
	width: 19px;
}

.ogt-cities {
	border-bottom: 1px solid var(--ogt-line);
	border-top: 1px solid var(--ogt-line);
	padding-block: 22px;
}

.ogt-cities__label {
	color: var(--ogt-muted);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .08em;
	margin-bottom: 14px;
	text-transform: uppercase;
}

.ogt-cities__list {
	display: flex;
	gap: 12px;
	overflow-x: auto;
	padding: 2px 2px 6px;
	scrollbar-width: thin;
}

.ogt-city-tab {
	align-items: center;
	background: var(--ogt-white);
	border: 1.5px solid var(--ogt-line);
	border-radius: var(--ogt-r);
	color: var(--ogt-ink);
	display: flex;
	flex: none;
	gap: 12px;
	min-width: 220px;
	padding: 10px 18px 10px 10px;
	transition: border-color .2s, box-shadow .2s, background .2s;
}

.ogt-city-tab:hover {
	border-color: #CBD5E1;
	color: var(--ogt-ink);
}

.ogt-city-tab.is-current {
	background: var(--ogt-brand-50);
	border-color: var(--ogt-brand);
	box-shadow: 0 0 0 3px rgba(26, 137, 117, .1);
}

.ogt-city-tab__img {
	border-radius: 10px;
	flex: none;
	height: 52px;
	overflow: hidden;
	width: 52px;
}

.ogt-city-tab__img img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.ogt-city-tab__img span {
	align-items: center;
	background: var(--ogt-brand-100);
	color: var(--ogt-brand-700);
	display: flex;
	font-family: var(--ogt-display);
	font-size: 22px;
	font-weight: 800;
	height: 100%;
	justify-content: center;
}

.ogt-city-tab__text strong {
	display: block;
	font-family: var(--ogt-display);
	font-size: 17px;
	font-weight: 800;
	letter-spacing: -.01em;
}

.ogt-city-tab__text small {
	color: var(--ogt-muted);
	display: block;
	font-size: 13.5px;
}

.ogt-city-tab.is-current small {
	color: var(--ogt-brand-700);
}

.ogt-explore__layout {
	display: grid;
	gap: 40px;
}

@media (min-width: 1100px) {
	.ogt-explore__layout {
		grid-template-columns: minmax(0, 1fr) 320px;
	}
}

.ogt-explore__head {
	align-items: flex-end;
	display: flex;
	flex-wrap: wrap;
	gap: 12px 32px;
	justify-content: space-between;
	margin-bottom: 28px;
}

.ogt-explore__head .ogt-muted {
	margin-top: 10px;
}

.ogt-explore__facts {
	margin-bottom: 32px;
}

.ogt-cats {
	background: rgba(255, 255, 255, .94);
	backdrop-filter: blur(10px);
	display: flex;
	gap: 8px;
	margin: 0 calc(-1 * var(--ogt-gutter)) 8px;
	overflow-x: auto;
	padding: 12px var(--ogt-gutter);
	position: sticky;
	scrollbar-width: none;
	top: var(--ogt-header);
	z-index: 5;
}

.admin-bar .ogt-cats {
	top: calc(var(--ogt-header) + 32px);
}

.ogt-cats::-webkit-scrollbar {
	display: none;
}

.ogt-cat {
	align-items: center;
	border: 1px solid var(--ogt-line);
	border-radius: 999px;
	color: var(--ogt-ink);
	display: inline-flex;
	flex: none;
	font-size: 14.5px;
	font-weight: 600;
	gap: 8px;
	padding: 9px 15px 9px 12px;
	transition: border-color .2s, background .2s;
}

.ogt-cat .ogt-icon {
	color: var(--ogt-brand);
	height: 18px;
	width: 18px;
}

.ogt-cat span {
	background: var(--ogt-soft);
	border-radius: 999px;
	color: var(--ogt-muted);
	font-size: 12.5px;
	padding: 1px 8px;
}

.ogt-cat:hover {
	background: var(--ogt-brand-50);
	border-color: var(--ogt-brand-100);
	color: var(--ogt-brand-700);
}

.ogt-cat-group {
	padding-top: 36px;
	scroll-margin-top: calc(var(--ogt-header) + 72px);
}

.ogt-cat-group__head {
	align-items: center;
	display: flex;
	gap: 16px;
	margin-bottom: 20px;
}

.ogt-cat-group__head .ogt-icon-tile {
	margin: 0;
}

.ogt-cat-group__head .ogt-muted {
	font-size: 15px;
	margin-top: 2px;
}

.ogt-place-grid {
	display: grid;
	gap: 20px;
	grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
}

.ogt-place-grid--wide {
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
}

.ogt-explore__side {
	align-self: start;
	position: sticky;
	top: calc(var(--ogt-header) + 24px);
}

.ogt-plan-panel {
	background: var(--ogt-white);
	border: 1px solid var(--ogt-line);
	border-radius: var(--ogt-r-lg);
	box-shadow: var(--ogt-shadow);
	padding: 26px;
}

.ogt-plan-panel .ogt-icon-tile {
	margin-bottom: 16px;
}

.ogt-plan-panel h3 {
	margin-bottom: 8px;
}

.ogt-plan-panel > .ogt-muted {
	font-size: 15px;
	margin-bottom: 18px;
}

.ogt-plan-panel .ogt-checks {
	font-size: 15px;
	gap: 10px;
	margin-bottom: 22px;
}

.ogt-plan-panel__list {
	display: grid;
	gap: 8px;
	list-style: none;
	margin-bottom: 14px;
	padding: 0;
}

.ogt-plan-panel__list:empty {
	display: none;
}

.ogt-plan-panel__list li {
	align-items: center;
	background: var(--ogt-soft);
	border-radius: 10px;
	color: var(--ogt-ink);
	display: flex;
	font-size: 14.5px;
	font-weight: 500;
	gap: 10px;
	padding: 9px 12px;
}

.ogt-plan-panel__list .ogt-icon {
	color: #E11D48;
	fill: currentColor;
	height: 16px;
	width: 16px;
}

.ogt-plan-panel__count {
	color: var(--ogt-muted);
	font-size: 14.5px;
	margin-bottom: 18px;
}

.ogt-plan-panel__count strong {
	color: var(--ogt-ink);
}

@media (max-width: 1099px) {
	.ogt-explore__side {
		position: static;
	}
}

.ogt-guide__sub {
	margin: 48px 0 20px;
}

.ogt-guide__prose {
	margin-top: 24px;
}

.ogt-guide__aside {
	align-self: start;
	display: grid;
	gap: 24px;
	position: sticky;
	top: calc(var(--ogt-header) + 24px);
}

.ogt-guide__aside .ogt-video--short {
	margin-inline: auto;
	max-width: 300px;
}

.ogt-guide__aside .ogt-aside {
	background: var(--ogt-white);
	position: static;
}

@media (max-width: 1023px) {
	.ogt-guide__aside {
		position: static;
	}
}

.ogt-steps--dark .ogt-step {
	background: rgba(255, 255, 255, .04);
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: var(--ogt-r-lg);
	padding: 32px 28px;
}

.ogt-steps--dark .ogt-step p {
	color: rgba(255, 255, 255, .68);
}

.ogt-quote-by span {
	display: block;
	font-size: 14.5px;
}

.ogt-split__body .ogt-actions {
	margin-top: 32px;
}

/* Package page --------------------------------------------------------- */

.ogt-trip-hero__grid {
	align-items: center;
	display: grid;
	gap: clamp(32px, 5vw, 64px);
}

@media (min-width: 1024px) {
	.ogt-trip-hero__grid {
		grid-template-columns: minmax(0, 10fr) minmax(0, 13fr);
	}
}

.ogt-collage {
	display: grid;
	gap: 12px;
	grid-template-columns: 2fr 1fr;
	grid-template-rows: 1fr 1fr;
	height: clamp(320px, 38vw, 520px);
}

.ogt-collage img {
	border-radius: var(--ogt-r);
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.ogt-collage img:first-child {
	border-radius: var(--ogt-r-lg);
	grid-row: span 2;
}

.ogt-collage--1 {
	grid-template-columns: 1fr;
}

.ogt-collage--2 img:nth-child(2) {
	grid-row: span 2;
}

.ogt-builder__steps {
	min-width: 0;
}

.ogt-builder .ogt-form-card {
	box-shadow: none;
}

.ogt-builder__done {
	grid-column: 1 / -1;
	margin-inline: auto;
	max-width: 640px;
	text-align: center;
}

.ogt-builder__done .ogt-icon-tile {
	font-size: 24px;
	font-weight: 800;
	margin-inline: auto;
}

.ogt-builder__done p {
	margin-top: 12px;
}

.ogt-builder [data-ogt-builder-msg] p {
	margin-top: 14px;
}


/* Homepage --------------------------------------------------------------- */

.ogt-home-story {
	padding-top: clamp(32px, 4vw, 56px);
}

.ogt-story-video {
	border-radius: 28px;
	overflow: hidden;
	position: relative;
}

.ogt-story-video .ogt-video {
	aspect-ratio: auto;
	border-radius: 0;
	box-shadow: none;
	height: clamp(460px, 44vw, 600px);
}

.ogt-story-video .ogt-video img {
	filter: saturate(1.05);
}

.ogt-story-video .ogt-video::after {
	background: linear-gradient(90deg, rgba(5, 11, 25, .88) 0%, rgba(5, 11, 25, .6) 40%, rgba(5, 11, 25, .1) 75%), linear-gradient(0deg, rgba(5, 11, 25, .85) 0%, rgba(5, 11, 25, 0) 40%);
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
}

.ogt-story-video.is-sound .ogt-video::after,
.ogt-story-video.is-sound .ogt-story-video__overlay,
.ogt-story-video.is-sound .ogt-story-video__sound {
	display: none;
}

.ogt-video.is-muted iframe {
	pointer-events: none;
	transform: scale(1.35);
}

.ogt-video.is-muted .ogt-video__play {
	opacity: 0;
}

.ogt-story-video__sound {
	align-items: center;
	background: var(--ogt-white);
	border: 0;
	border-radius: 999px;
	bottom: clamp(24px, 3vw, 40px);
	box-shadow: 0 10px 30px rgba(0, 0, 0, .3);
	color: var(--ogt-ink);
	display: none;
	font-size: 15px;
	font-weight: 600;
	gap: 8px;
	padding: 12px 18px;
	position: absolute;
	right: clamp(24px, 3vw, 40px);
	z-index: 3;
}

.ogt-story-video:has(.is-muted) .ogt-story-video__sound {
	display: inline-flex;
}

.ogt-story-video:has(.is-muted) .ogt-video {
	cursor: default;
}

.ogt-story-video .ogt-video__label {
	display: none;
}

.ogt-story-video .ogt-video__play {
	left: 62%;
	z-index: 2;
}

.ogt-story-video__overlay {
	color: rgba(255, 255, 255, .8);
	display: flex;
	flex-direction: column;
	inset: 0;
	justify-content: space-between;
	padding: clamp(28px, 4vw, 56px);
	pointer-events: none;
	position: absolute;
	z-index: 1;
}

.ogt-story-video__text {
	max-width: 440px;
}

.ogt-story-video__text h2 {
	color: var(--ogt-white);
}

.ogt-story-video__text p {
	margin-top: 16px;
}

.ogt-story-video__values {
	display: grid;
	gap: 20px 36px;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	list-style: none;
	max-width: 900px;
	padding: 0;
}

.ogt-story-video__values li {
	display: flex;
	font-size: 14.5px;
	gap: 14px;
	line-height: 1.5;
}

.ogt-story-video__values strong {
	color: var(--ogt-white);
	display: block;
	font-size: 16px;
	margin-bottom: 2px;
}

.ogt-story-video__icon {
	align-items: center;
	border: 1px solid rgba(255, 255, 255, .25);
	border-radius: 12px;
	color: #7FE0CB;
	display: flex;
	flex: none;
	height: 44px;
	justify-content: center;
	width: 44px;
}

@media (max-width: 760px) {
	.ogt-story-video .ogt-video {
		height: 640px;
	}

	.ogt-story-video .ogt-video__play {
		left: 50%;
		top: 46%;
	}

	.ogt-story-video__values {
		gap: 14px;
	}

	.ogt-story-video__values li span:last-child {
		font-size: 13.5px;
	}
}

.ogt-offers {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
}

.ogt-offer {
	background: var(--ogt-white);
	border: 1px solid var(--ogt-line);
	border-radius: var(--ogt-r);
	color: var(--ogt-muted);
	display: flex;
	flex-direction: column;
	font-size: 14.5px;
	gap: 8px;
	line-height: 1.55;
	padding: 24px 22px;
	transition: border-color .2s, box-shadow .25s var(--ogt-ease), transform .25s var(--ogt-ease);
}

.ogt-offer:hover {
	border-color: var(--ogt-brand-100);
	box-shadow: var(--ogt-shadow);
	color: var(--ogt-muted);
	transform: translateY(-3px);
}

.ogt-offer__icon {
	align-items: center;
	border: 1.5px solid var(--ogt-brand-100);
	border-radius: 12px;
	color: var(--ogt-brand);
	display: flex;
	height: 46px;
	justify-content: center;
	margin-bottom: 8px;
	width: 46px;
}

.ogt-offer strong {
	color: var(--ogt-ink);
	font-family: var(--ogt-display);
	font-size: 17px;
	font-weight: 800;
}

.ogt-offer span:not(.ogt-offer__icon) {
	flex: 1;
}

.ogt-offer em {
	align-items: center;
	color: var(--ogt-brand);
	display: inline-flex;
	font-size: 14px;
	font-style: normal;
	font-weight: 600;
	gap: 6px;
	margin-top: 6px;
}

.ogt-offer em .ogt-icon {
	height: 16px;
	width: 16px;
}

.ogt-carousel-nav {
	align-items: center;
	display: flex;
	gap: 10px;
}

.ogt-carousel-nav .ogt-link {
	margin-right: 10px;
}

.ogt-round {
	align-items: center;
	background: var(--ogt-white);
	border: 1px solid var(--ogt-line);
	border-radius: 50%;
	color: var(--ogt-ink);
	display: inline-flex;
	font-size: 22px;
	height: 44px;
	justify-content: center;
	line-height: 1;
	width: 44px;
}

.ogt-round:hover {
	border-color: var(--ogt-ink);
}

.ogt-carousel {
	display: grid;
	gap: 24px;
	grid-auto-columns: minmax(280px, calc((100% - 48px) / 3));
	grid-auto-flow: column;
	overflow-x: auto;
	padding-bottom: 8px;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
}

.ogt-carousel::-webkit-scrollbar {
	display: none;
}

.ogt-carousel > * {
	scroll-snap-align: start;
}

.ogt-photo-card {
	aspect-ratio: 4 / 4.4;
	background: var(--ogt-navy);
	border-radius: var(--ogt-r-lg);
	color: var(--ogt-white);
	display: block;
	isolation: isolate;
	overflow: hidden;
	position: relative;
}

.ogt-photo-card img {
	height: 100%;
	inset: 0;
	object-fit: cover;
	position: absolute;
	transition: transform .8s var(--ogt-ease);
	width: 100%;
	z-index: -1;
}

.ogt-photo-card::after {
	background: linear-gradient(180deg, rgba(5, 11, 25, 0) 35%, rgba(5, 11, 25, .85) 100%);
	content: "";
	inset: 0;
	position: absolute;
	z-index: -1;
}

.ogt-photo-card:hover {
	color: var(--ogt-white);
}

.ogt-photo-card:hover img {
	transform: scale(1.05);
}

.ogt-photo-card__body {
	bottom: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
	left: 0;
	padding: 26px;
	position: absolute;
	right: 0;
}

.ogt-photo-card__tag {
	align-self: flex-start;
	background: rgba(255, 255, 255, .18);
	backdrop-filter: blur(8px);
	border-radius: 999px;
	font-size: 12.5px;
	font-weight: 700;
	letter-spacing: .04em;
	padding: 5px 11px;
}

.ogt-photo-card__title {
	font-family: var(--ogt-display);
	font-size: 30px;
	font-weight: 800;
	letter-spacing: -.02em;
	line-height: 1.1;
}

.ogt-photo-card__text {
	color: rgba(255, 255, 255, .82);
	font-size: 15px;
}

.ogt-photo-card__cta {
	align-items: center;
	align-self: flex-start;
	background: var(--ogt-white);
	border-radius: 10px;
	color: var(--ogt-ink);
	display: inline-flex;
	font-size: 14px;
	font-weight: 600;
	gap: 6px;
	margin-top: 8px;
	padding: 9px 14px;
}

.ogt-photo-card__cta .ogt-icon {
	height: 16px;
	width: 16px;
}

.ogt-byline {
	align-items: center;
	color: var(--ogt-body);
	display: flex;
	font-size: 13.5px;
	font-weight: 600;
	gap: 8px;
	margin-top: 10px;
}

.ogt-byline img {
	border-radius: 50%;
	height: 26px;
	object-fit: cover;
	width: 26px;
}

.ogt-gear {
	align-items: center;
	background: var(--ogt-brand-50);
	border-radius: var(--ogt-r-lg);
	display: grid;
	gap: 32px;
	padding: clamp(28px, 4vw, 48px);
}

@media (min-width: 1024px) {
	.ogt-gear {
		grid-template-columns: 300px minmax(0, 1fr);
	}
}

.ogt-gear__intro .ogt-h2 {
	font-size: clamp(26px, 2.6vw, 34px);
}

.ogt-gear__intro p {
	margin: 14px 0 18px;
}

.ogt-gear__items {
	display: grid;
	gap: 14px;
	grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
}

.ogt-product {
	background: var(--ogt-white);
	border-radius: var(--ogt-r);
	color: var(--ogt-ink);
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 14px;
	transition: box-shadow .2s, transform .2s var(--ogt-ease);
}

.ogt-product:hover {
	box-shadow: var(--ogt-shadow);
	color: var(--ogt-ink);
	transform: translateY(-3px);
}

.ogt-product__media img {
	aspect-ratio: 1;
	border-radius: 10px;
	margin-bottom: 8px;
	object-fit: contain;
	width: 100%;
}

.ogt-product__name {
	font-size: 14.5px;
	font-weight: 600;
	line-height: 1.35;
}

.ogt-product__price {
	color: var(--ogt-brand-700);
	font-size: 14px;
	font-weight: 700;
}

.ogt-promo {
	align-items: center;
	background: var(--ogt-soft);
	border-radius: 28px;
	display: grid;
	overflow: hidden;
}

@media (min-width: 960px) {
	.ogt-promo {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	}
}

.ogt-promo__media img {
	aspect-ratio: 4 / 3;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.ogt-promo__body {
	padding: clamp(28px, 4vw, 56px);
}

.ogt-promo__body .ogt-lead {
	margin: 18px 0 28px;
}

.ogt-review {
	background: var(--ogt-white);
	border-radius: var(--ogt-r-lg);
	box-shadow: var(--ogt-shadow-sm);
	display: flex;
	flex-direction: column;
	gap: 20px;
	justify-content: space-between;
	padding: 28px;
}

.ogt-review blockquote {
	color: var(--ogt-ink);
	font-size: 16.5px;
	line-height: 1.6;
}

.ogt-review figcaption {
	align-items: center;
	display: flex;
	font-size: 14px;
	gap: 12px;
}

.ogt-review figcaption img {
	border-radius: 50%;
	height: 44px;
	object-fit: cover;
	width: 44px;
}

.ogt-review figcaption strong {
	color: var(--ogt-ink);
	display: block;
}

.ogt-gallery-strip {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(2, 1fr);
}

@media (min-width: 700px) {
	.ogt-gallery-strip {
		grid-template-columns: repeat(4, 1fr);
	}
}

@media (min-width: 1100px) {
	.ogt-gallery-strip {
		grid-template-columns: repeat(6, 1fr);
	}

	.ogt-gallery-strip figure:nth-child(n+7) {
		display: none;
	}
}

.ogt-gallery-strip img {
	aspect-ratio: 1;
	border-radius: var(--ogt-r);
	object-fit: cover;
	width: 100%;
}

.ogt-newsletter {
	align-items: center;
	background: var(--ogt-brand-700);
	background-image: radial-gradient(90% 140% at 100% 0%, rgba(26, 137, 117, .95) 0%, rgba(16, 90, 76, 0) 70%);
	border-radius: var(--ogt-r-lg);
	color: rgba(255, 255, 255, .82);
	display: grid;
	gap: 24px 32px;
	padding: clamp(28px, 4vw, 44px);
}

@media (min-width: 960px) {
	.ogt-newsletter {
		grid-template-columns: auto minmax(0, 1fr) minmax(0, 1fr);
	}
}

.ogt-newsletter__icon {
	align-items: center;
	background: rgba(255, 255, 255, .12);
	border-radius: 50%;
	color: var(--ogt-white);
	display: flex;
	height: 64px;
	justify-content: center;
	width: 64px;
}

.ogt-newsletter h2 {
	color: var(--ogt-white);
}

.ogt-newsletter__text p {
	margin-top: 6px;
}

.ogt-subscribe {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.ogt-main .ogt-subscribe input[type="email"] {
	border-color: transparent;
	flex: 1;
	min-width: 200px;
}

.ogt-subscribe .ogt-btn {
	background: var(--ogt-navy);
	border-color: var(--ogt-navy);
}

.ogt-subscribe__msg {
	color: #FFE4D6;
	flex-basis: 100%;
	font-size: 14px;
}

.ogt-subscribe__msg:empty {
	display: none;
}

.ogt-subscribe__done {
	color: var(--ogt-white);
	font-weight: 600;
}


/* City / destination page ------------------------------------------------ */

.ogt-city-hero {
	color: rgba(255, 255, 255, .88);
	isolation: isolate;
	min-height: clamp(560px, 74vh, 760px);
	overflow: hidden;
	padding-block: 32px clamp(48px, 6vw, 80px);
	position: relative;
}

.ogt-city-hero__media {
	inset: 0;
	position: absolute;
	z-index: -1;
}

.ogt-city-hero__media img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.ogt-city-hero__media::after {
	background: linear-gradient(90deg, rgba(5, 11, 25, .82) 0%, rgba(5, 11, 25, .55) 38%, rgba(5, 11, 25, .08) 70%), linear-gradient(0deg, rgba(5, 11, 25, .55) 0%, rgba(5, 11, 25, 0) 35%);
	content: "";
	inset: 0;
	position: absolute;
}

.ogt-city-hero .ogt-crumbs a,
.ogt-city-hero .ogt-crumbs li,
.ogt-city-hero .ogt-crumbs [aria-current] {
	color: rgba(255, 255, 255, .8);
}

.ogt-city-hero__inner {
	display: flex;
	flex-direction: column;
	min-height: inherit;
}

.ogt-city-hero__inner > .ogt-crumbs {
	margin-bottom: clamp(32px, 6vw, 72px);
}

.ogt-city-hero__badge {
	align-self: flex-start;
	background: rgba(255, 255, 255, .95);
	border-radius: 999px;
	color: #B91C1C;
	font-size: 12.5px;
	font-weight: 800;
	letter-spacing: .08em;
	padding: 6px 12px;
	text-transform: uppercase;
}

.ogt-city-hero__title {
	color: var(--ogt-white);
	font-size: clamp(56px, 8vw, 104px);
	letter-spacing: -.04em;
	line-height: 1;
	margin-top: 14px;
}

.ogt-city-hero__sub {
	color: var(--ogt-white);
	font-family: var(--ogt-display);
	font-size: clamp(22px, 2.4vw, 30px);
	font-weight: 700;
	letter-spacing: -.015em;
	margin-top: 10px;
}

.ogt-city-hero__lead {
	font-size: 17px;
	margin-top: 16px;
	max-width: 520px;
}

.ogt-city-hero__visit {
	align-items: center;
	display: flex;
	font-size: 14px;
	gap: 12px;
	margin-top: 24px;
}

.ogt-city-hero__visit img {
	border: 2px solid rgba(255, 255, 255, .8);
	border-radius: 50%;
	height: 48px;
	object-fit: cover;
	width: 48px;
}

.ogt-city-hero__visit strong {
	color: var(--ogt-white);
	display: block;
}

.ogt-city-hero .ogt-actions {
	margin-top: 32px;
}

.ogt-city-hero__cities {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	font-size: 14px;
	gap: 8px;
	margin-top: 28px;
}

.ogt-city-hero__cities a {
	border: 1px solid rgba(255, 255, 255, .35);
	border-radius: 999px;
	color: var(--ogt-white);
	font-weight: 600;
	padding: 6px 14px;
}

.ogt-city-hero__cities a:hover,
.ogt-city-hero__cities a.is-current {
	background: var(--ogt-white);
	border-color: var(--ogt-white);
	color: var(--ogt-ink);
}

.ogt-city-hero__note {
	bottom: clamp(48px, 7vw, 96px);
	color: var(--ogt-white);
	font-family: "Caveat", cursive;
	font-size: clamp(28px, 2.8vw, 40px);
	line-height: 1.15;
	max-width: 300px;
	position: absolute;
	right: max(var(--ogt-gutter), calc((100vw - var(--ogt-wrap)) / 2));
	text-align: right;
	text-shadow: 0 2px 20px rgba(0, 0, 0, .45);
	transform: rotate(-4deg);
}

@media (max-width: 900px) {
	.ogt-city-hero__note {
		display: none;
	}

	.ogt-city-hero__media::after {
		background: linear-gradient(0deg, rgba(5, 11, 25, .9) 0%, rgba(5, 11, 25, .55) 60%, rgba(5, 11, 25, .3) 100%);
	}
}

.ogt-areas {
	background: rgba(255, 255, 255, .96);
	backdrop-filter: blur(12px);
	border-bottom: 1px solid var(--ogt-line);
	position: sticky;
	top: var(--ogt-header);
	z-index: 20;
}

.admin-bar .ogt-areas {
	top: calc(var(--ogt-header) + 32px);
}

.ogt-areas__inner {
	display: flex;
	gap: 6px;
	overflow-x: auto;
	scrollbar-width: none;
}

.ogt-areas__inner::-webkit-scrollbar {
	display: none;
}

.ogt-areas a,
.ogt-areas button {
	align-items: center;
	background: none;
	border: 0;
	border-bottom: 2px solid transparent;
	color: var(--ogt-body);
	display: inline-flex;
	flex: none;
	font-size: 15px;
	font-weight: 600;
	gap: 8px;
	padding: 18px 16px;
	white-space: nowrap;
}

.ogt-areas .ogt-icon {
	height: 18px;
	width: 18px;
}

.ogt-areas a:hover,
.ogt-areas button:hover,
.ogt-areas .is-active {
	border-bottom-color: var(--ogt-brand);
	color: var(--ogt-brand-700);
}

.ogt-glance-row {
	align-items: center;
	display: grid;
	gap: 28px;
}

@media (min-width: 1024px) {
	.ogt-glance-row {
		grid-template-columns: 280px minmax(0, 1fr);
	}
}

.ogt-glance-row__intro p {
	font-size: 15px;
	margin-top: 10px;
}

.ogt-glance-cards {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
}

.ogt-glance-cards > div {
	background: var(--ogt-white);
	border: 1px solid var(--ogt-line);
	border-radius: var(--ogt-r);
	padding: 16px;
}

.ogt-glance-cards__icon {
	color: var(--ogt-brand);
	display: block;
	margin-bottom: 10px;
}

.ogt-glance-cards dt {
	color: var(--ogt-ink);
	font-size: 13.5px;
	font-weight: 700;
}

.ogt-glance-cards dd {
	color: var(--ogt-muted);
	font-size: 13.5px;
	line-height: 1.45;
	margin-top: 4px;
}

.ogt-area-card {
	aspect-ratio: 4 / 3.3;
	background: var(--ogt-navy);
	border-radius: var(--ogt-r-lg);
	color: rgba(255, 255, 255, .86);
	isolation: isolate;
	overflow: hidden;
	position: relative;
}

.ogt-area-card > img {
	height: 100%;
	inset: 0;
	object-fit: cover;
	position: absolute;
	transition: transform .8s var(--ogt-ease);
	width: 100%;
	z-index: -1;
}

.ogt-area-card:hover > img {
	transform: scale(1.05);
}

.ogt-area-card::after {
	background: linear-gradient(180deg, rgba(5, 11, 25, 0) 30%, rgba(5, 11, 25, .88) 100%);
	content: "";
	inset: 0;
	position: absolute;
	z-index: -1;
}

.ogt-area-card__body {
	bottom: 0;
	left: 0;
	padding: 24px;
	position: absolute;
	right: 0;
}

.ogt-area-card h3 {
	align-items: center;
	color: var(--ogt-white);
	display: flex;
	flex-wrap: wrap;
	font-size: 28px;
	gap: 10px;
}

.ogt-area-card__tag {
	background: var(--ogt-brand);
	border-radius: 999px;
	font-family: var(--ogt-text);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0;
	padding: 4px 10px;
}

.ogt-area-card p {
	font-size: 15px;
	margin-top: 8px;
}

.ogt-area-card__stay {
	color: rgba(255, 255, 255, .7);
	font-size: 13.5px !important;
}

.ogt-area-card__btn {
	align-items: center;
	background: var(--ogt-white);
	border: 0;
	border-radius: 10px;
	color: var(--ogt-ink);
	display: inline-flex;
	font-size: 14px;
	font-weight: 600;
	gap: 6px;
	margin-top: 16px;
	padding: 10px 14px;
}

.ogt-area-card__btn .ogt-icon {
	height: 16px;
	width: 16px;
}

.ogt-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 28px;
}

.ogt-chip {
	align-items: center;
	background: var(--ogt-white);
	border: 1px solid var(--ogt-line);
	border-radius: 999px;
	color: var(--ogt-ink);
	display: inline-flex;
	font-size: 14.5px;
	font-weight: 600;
	gap: 7px;
	padding: 9px 15px;
	transition: background .2s, border-color .2s, color .2s;
}

.ogt-chip .ogt-icon {
	color: var(--ogt-brand);
	height: 17px;
	width: 17px;
}

.ogt-chip span {
	color: var(--ogt-muted);
	font-size: 12.5px;
	font-weight: 500;
}

.ogt-chip:hover {
	border-color: var(--ogt-brand);
}

.ogt-chip.is-active {
	background: var(--ogt-brand);
	border-color: var(--ogt-brand);
	color: var(--ogt-white);
}

.ogt-chip.is-active .ogt-icon,
.ogt-chip.is-active span {
	color: rgba(255, 255, 255, .85);
}

.ogt-chip--ghost {
	border-style: dashed;
	margin-left: auto;
}

.ogt-place-grid--4 {
	grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
}

@media (min-width: 1200px) {
	.ogt-place-grid--4 {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.ogt-place__visited {
	color: var(--ogt-muted);
	font-size: 13px;
}

.ogt-place__story {
	align-items: center;
	color: var(--ogt-brand) !important;
	display: inline-flex;
	font-size: 14px;
	font-weight: 600;
	gap: 4px;
}

.ogt-place__story .ogt-icon {
	height: 15px;
	width: 15px;
}

.ogt-place__map {
	align-items: center;
	color: var(--ogt-ink) !important;
	display: inline-flex;
	font-size: 14px;
	font-weight: 600;
	gap: 6px;
	margin-left: auto;
}

.ogt-place__map .ogt-icon {
	color: var(--ogt-brand);
	height: 16px;
	width: 16px;
}

.ogt-map-row {
	display: grid;
	gap: 24px;
}

@media (min-width: 1024px) {
	.ogt-map-row {
		grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
	}
}

.ogt-map {
	border-radius: var(--ogt-r-lg);
	height: 440px;
	overflow: hidden;
	z-index: 0;
}

.ogt-map-row__side {
	display: grid;
	gap: 24px;
}

.ogt-map-row__side .ogt-video--short {
	margin-inline: auto;
	max-width: 280px;
}

.ogt-tips {
	background: var(--ogt-soft);
	border-radius: var(--ogt-r-lg);
	padding: 28px;
}

.ogt-tips h3 {
	margin-bottom: 18px;
}

.ogt-tips .ogt-checks {
	font-size: 15.5px;
}

.ogt-take {
	display: grid;
	gap: 24px;
}

@media (min-width: 1024px) {
	.ogt-take {
		grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
	}

	.ogt-take--solo {
		grid-template-columns: 1fr;
	}
}

.ogt-take .ogt-gear {
	grid-template-columns: 1fr;
}

.ogt-cover-card {
	background: var(--ogt-brand-700);
	background-image: radial-gradient(100% 120% at 100% 0%, rgba(26, 137, 117, .95) 0%, rgba(16, 90, 76, 0) 65%);
	border-radius: var(--ogt-r-lg);
	color: rgba(255, 255, 255, .85);
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: clamp(28px, 4vw, 44px);
}

.ogt-cover-card h2 {
	color: var(--ogt-white);
}

.ogt-cover-card p {
	margin: 10px 0 24px;
	max-width: 52ch;
}

.ogt-cover-card .ogt-btn {
	align-self: flex-start;
}

.ogt-collect {
	align-items: center;
	background: var(--ogt-brand-50);
	border-radius: var(--ogt-r-lg);
	display: grid;
	gap: 24px 40px;
	padding: clamp(24px, 3vw, 36px) clamp(24px, 4vw, 44px);
}

@media (min-width: 1100px) {
	.ogt-collect {
		grid-template-columns: minmax(0, 4fr) minmax(0, 5fr) auto;
	}
}

.ogt-collect p {
	font-size: 15px;
	margin-top: 6px;
}

.ogt-collect__features {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	list-style: none;
	padding: 0;
}

.ogt-collect__features li {
	align-items: center;
	color: var(--ogt-ink);
	display: flex;
	flex-direction: column;
	font-size: 13.5px;
	font-weight: 600;
	gap: 8px;
	text-align: center;
}

.ogt-collect__features .ogt-icon {
	color: var(--ogt-brand);
	height: 28px;
	width: 28px;
}

.ogt-dest-tile {
	aspect-ratio: 16 / 9;
	border-radius: var(--ogt-r-lg);
	display: block;
	isolation: isolate;
	overflow: hidden;
	position: relative;
}

.ogt-dest-tile img {
	height: 100%;
	inset: 0;
	object-fit: cover;
	position: absolute;
	transition: transform .8s var(--ogt-ease);
	width: 100%;
	z-index: -1;
}

.ogt-dest-tile::after {
	background: linear-gradient(0deg, rgba(5, 11, 25, .75) 0%, rgba(5, 11, 25, 0) 55%);
	content: "";
	inset: 0;
	position: absolute;
	z-index: -1;
}

.ogt-dest-tile:hover img {
	transform: scale(1.05);
}

.ogt-dest-tile span {
	align-items: center;
	bottom: 0;
	color: var(--ogt-white);
	display: flex;
	font-family: var(--ogt-display);
	font-size: 26px;
	font-weight: 800;
	justify-content: space-between;
	left: 0;
	padding: 22px 24px;
	position: absolute;
	right: 0;
}

.ogt-dest-tile__arrow {
	align-items: center;
	background: var(--ogt-white);
	border-radius: 50%;
	color: var(--ogt-ink);
	display: flex;
	height: 40px;
	justify-content: center;
	width: 40px;
}

@media (min-width: 1024px) {
	.ogt-map-row--solo {
		grid-template-columns: 1fr;
	}
}

.ogt-map-row--solo .ogt-tips .ogt-checks {
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}

/* Member area ---------------------------------------------------------- */

.ogt-auth {
	align-items: start;
	display: grid;
	gap: clamp(32px, 5vw, 72px);
}

@media (min-width: 1024px) {
	.ogt-auth {
		grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
	}
}

.ogt-auth__intro .ogt-lead {
	margin: 18px 0 28px;
}

.ogt-auth__forms .u-columns {
	display: grid;
	gap: 32px;
}

@media (min-width: 760px) {
	.ogt-auth__forms .u-columns {
		grid-template-columns: 1fr 1fr;
	}
}

.ogt-auth__forms .u-column1,
.ogt-auth__forms .u-column2 {
	float: none !important;
	width: auto !important;
}

.ogt-auth__forms h2 {
	font-size: 22px;
	margin-bottom: 16px;
}

.ogt-auth__forms form {
	border: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}

.ogt-auth__forms .form-row {
	display: grid;
	gap: 6px;
	margin: 0 0 14px;
}

.ogt-auth__forms label {
	color: var(--ogt-ink);
	font-size: 14.5px;
	font-weight: 600;
}

.ogt-auth__forms .woocommerce-button,
.ogt-auth__forms button[type="submit"] {
	background: var(--ogt-brand) !important;
	border: 0 !important;
	border-radius: 12px !important;
	color: var(--ogt-white) !important;
	font-weight: 600 !important;
	min-height: 50px;
	padding: 0 24px !important;
	width: 100%;
}

.ogt-auth__forms .woocommerce-form-login__rememberme {
	align-items: center;
	display: flex !important;
	gap: 8px;
	margin-bottom: 14px;
}

.ogt-auth__forms .lost_password a {
	font-size: 14px;
}

.ogt-account__layout {
	align-items: start;
	display: grid;
	gap: 28px;
}

@media (min-width: 1024px) {
	.ogt-account__layout {
		grid-template-columns: 260px minmax(0, 1fr);
	}
}

.ogt-account__side {
	background: var(--ogt-white);
	border: 1px solid var(--ogt-line);
	border-radius: var(--ogt-r-lg);
	padding: 18px;
	position: sticky;
	top: calc(var(--ogt-header) + 20px);
}

.ogt-account__me {
	align-items: center;
	border-bottom: 1px solid var(--ogt-line);
	display: flex;
	gap: 12px;
	margin-bottom: 12px;
	padding: 4px 4px 16px;
}

.ogt-account__me img {
	border-radius: 50%;
	flex: none;
}

.ogt-account__me > div {
	flex: 1;
	min-width: 0;
}

.ogt-account__me strong {
	color: var(--ogt-ink);
	display: block;
	font-family: var(--ogt-display);
	font-size: 17px;
	overflow-wrap: anywhere;
}

.ogt-account__tier {
	background: var(--ogt-brand-50);
	border-radius: 999px;
	color: var(--ogt-brand-700);
	display: inline-block;
	font-size: 12px;
	font-weight: 700;
	margin-top: 4px;
	padding: 2px 10px;
}

.ogt-account__nav {
	display: grid;
	gap: 2px;
}

.ogt-account__nav a {
	align-items: center;
	border-radius: 10px;
	color: var(--ogt-body);
	display: flex;
	font-size: 15px;
	font-weight: 500;
	gap: 12px;
	padding: 11px 12px;
}

.ogt-account__nav .ogt-icon {
	color: var(--ogt-muted);
	height: 19px;
	width: 19px;
}

.ogt-account__nav a:hover {
	background: var(--ogt-soft);
	color: var(--ogt-ink);
}

.ogt-account__nav a.is-active {
	background: var(--ogt-brand-50);
	color: var(--ogt-brand-700);
	font-weight: 600;
}

.ogt-account__nav a.is-active .ogt-icon {
	color: var(--ogt-brand);
}

.ogt-account__nav .woocommerce-MyAccount-navigation-link--customer-logout {
	border-top: 1px solid var(--ogt-line);
	border-radius: 0 0 10px 10px;
	margin-top: 8px;
	padding-top: 14px;
}

@media (max-width: 1023px) {
	.ogt-account__side {
		position: static;
	}

	.ogt-account__nav {
		display: flex;
		overflow-x: auto;
	}

	.ogt-account__nav a {
		flex: none;
	}
}

.ogt-account__main {
	min-width: 0;
}

.ogt-account__main .woocommerce-EditAccountForm,
.ogt-account__main .woocommerce-orders-table {
	background: var(--ogt-white);
	border: 1px solid var(--ogt-line);
	border-radius: var(--ogt-r-lg);
	padding: 24px;
}

.ogt-dash {
	display: grid;
	gap: 22px;
}

.ogt-dash__hello {
	align-items: center;
	background: var(--ogt-white);
	border: 1px solid var(--ogt-line);
	border-radius: var(--ogt-r-lg);
	display: flex;
	flex-wrap: wrap;
	gap: 16px 24px;
	justify-content: space-between;
	padding: 26px 28px;
}

.ogt-dash__hello .ogt-h2 {
	font-size: clamp(26px, 2.6vw, 34px);
}

.ogt-dash__hello p {
	margin-top: 6px;
}

.ogt-dash__stats {
	display: grid;
	gap: 14px;
	grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
}

.ogt-dash-stat {
	background: var(--ogt-white);
	border: 1px solid var(--ogt-line);
	border-radius: var(--ogt-r);
	color: var(--ogt-muted);
	display: grid;
	font-size: 14px;
	gap: 2px;
	padding: 20px;
	transition: border-color .2s, box-shadow .2s;
}

.ogt-dash-stat:hover {
	border-color: var(--ogt-brand-100);
	box-shadow: var(--ogt-shadow);
	color: var(--ogt-muted);
}

.ogt-dash-stat .ogt-icon-tile {
	height: 42px;
	margin-bottom: 12px;
	width: 42px;
}

.ogt-dash-stat strong {
	color: var(--ogt-ink);
	font-family: var(--ogt-display);
	font-size: 30px;
	font-weight: 800;
	line-height: 1.1;
}

.ogt-dash-stat small {
	color: var(--ogt-muted);
	font-size: 16px;
	font-weight: 600;
	margin-left: 2px;
}

.ogt-dash__grid {
	display: grid;
	gap: 18px;
}

@media (min-width: 860px) {
	.ogt-dash__grid {
		grid-template-columns: 1fr 1fr;
	}
}

.ogt-panel {
	background: var(--ogt-white);
}

.ogt-panel__head h3 {
	font-size: 18px;
	margin: 0;
}

.ogt-panel__head .ogt-link {
	font-size: 14px;
}

.ogt-panel--brand {
	background: var(--ogt-brand-700);
	background-image: radial-gradient(100% 120% at 100% 0%, rgba(26, 137, 117, .95) 0%, rgba(16, 90, 76, 0) 65%);
	border: 0;
	color: rgba(255, 255, 255, .82);
}

.ogt-panel--brand h3 {
	color: var(--ogt-white);
	font-size: 20px;
	margin-bottom: 8px;
}

.ogt-panel--brand p {
	font-size: 15px;
	margin-bottom: 18px;
}

.ogt-panel--brand .ogt-eyebrow {
	margin-bottom: 12px;
}

.ogt-dash-list {
	display: grid;
	gap: 10px !important;
	list-style: none;
	margin: 16px 0 0 !important;
	padding: 0;
}

.ogt-dash-list li {
	align-items: center;
	display: flex !important;
	gap: 12px;
	justify-content: flex-start !important;
}

.ogt-dash-list img,
.ogt-dash-list__ph {
	align-items: center;
	background: var(--ogt-brand-50);
	border-radius: 10px;
	color: var(--ogt-brand);
	display: flex;
	flex: none;
	height: 44px;
	justify-content: center;
	object-fit: cover;
	width: 44px;
}

.ogt-dash-list li > span:not(.ogt-dash-list__ph):not(.ogt-status) {
	display: grid;
	flex: 1;
	min-width: 0;
}

.ogt-dash-list strong {
	color: var(--ogt-ink);
	font-size: 15px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.ogt-dash-list small {
	color: var(--ogt-muted) !important;
	font-size: 13px !important;
}

.ogt-status {
	border-radius: 999px;
	flex: none;
	font-size: 12px;
	font-weight: 700;
	padding: 4px 10px;
}

.ogt-status--new {
	background: var(--ogt-brand-50);
	color: var(--ogt-brand-700);
}

.ogt-status--quoted {
	background: #FEF3C7;
	color: #92400E;
}

.ogt-status--confirmed {
	background: #DBEAFE;
	color: #1E40AF;
}

.ogt-status--cancelled {
	background: var(--ogt-soft);
	color: var(--ogt-muted);
}

.ogt-dash__insure {
	align-items: center;
	background: var(--ogt-white);
	border: 1px dashed var(--ogt-brand-100);
	border-radius: var(--ogt-r-lg);
	color: var(--ogt-muted);
	display: flex;
	font-size: 14.5px;
	gap: 16px;
	padding: 18px 22px;
}

.ogt-dash__insure .ogt-icon-tile {
	margin: 0;
}

.ogt-dash__insure strong {
	color: var(--ogt-ink);
	display: block;
	font-size: 16px;
}

.ogt-dash__insure > .ogt-icon {
	color: var(--ogt-brand);
	margin-left: auto;
}

.ogt-dash__title {
	margin-bottom: 20px;
}

.ogt-dash__title p {
	margin-top: 6px;
}

.ogt-requests,
.ogt-plans-list {
	display: grid;
	gap: 16px;
	margin-top: 20px;
}

.ogt-request__facts {
	display: grid;
	gap: 14px 24px;
	grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
	margin-top: 18px;
}

.ogt-request__facts dt {
	color: var(--ogt-muted);
	font-size: 13px;
}

.ogt-request__facts dd {
	color: var(--ogt-ink);
	font-size: 15px;
	font-weight: 600;
}

.ogt-plan-notes {
	border-top: 1px solid var(--ogt-line);
	display: grid;
	gap: 8px;
	justify-items: start;
	margin-top: 18px;
	padding-top: 16px;
}

.ogt-plan-notes textarea {
	min-height: 80px !important;
}

/* Creators --------------------------------------------------------------- */

.ogt-creator-card {
	background: var(--ogt-white);
	border: 1px solid var(--ogt-line);
	border-radius: var(--ogt-r-lg);
	color: var(--ogt-body);
	display: flex;
	flex-direction: column;
	overflow: hidden;
	transition: box-shadow .25s var(--ogt-ease), transform .25s var(--ogt-ease);
}

.ogt-creator-card:hover {
	box-shadow: var(--ogt-shadow);
	color: var(--ogt-body);
	transform: translateY(-3px);
}

.ogt-creator-card__cover {
	aspect-ratio: 16 / 7;
	background: linear-gradient(135deg, var(--ogt-brand-700), var(--ogt-brand));
	display: block;
}

.ogt-creator-card__cover img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.ogt-creator-card__avatar,
.ogt-creator-hero__avatar {
	align-items: center;
	background: var(--ogt-brand-100);
	border: 4px solid var(--ogt-white);
	border-radius: 50%;
	color: var(--ogt-brand-700);
	display: flex;
	font-family: var(--ogt-display);
	font-size: 30px;
	font-weight: 800;
	height: 84px;
	justify-content: center;
	margin: -42px 0 0 22px;
	overflow: hidden;
	position: relative;
	width: 84px;
}

.ogt-creator-card__avatar img,
.ogt-creator-hero__avatar img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.ogt-creator-card__body {
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: 14px 22px 24px;
}

.ogt-creator-hero__cover {
	background: linear-gradient(135deg, var(--ogt-brand-700), var(--ogt-brand));
	height: clamp(200px, 26vw, 340px);
}

.ogt-creator-hero__cover img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.ogt-creator-hero__inner {
	align-items: flex-end;
	display: flex;
	flex-wrap: wrap;
	gap: 24px 32px;
}

.ogt-creator-hero__avatar {
	font-size: 54px;
	height: 160px;
	margin: -80px 0 0;
	width: 160px;
}

.ogt-creator-hero__text {
	flex: 1;
	min-width: 280px;
	padding-top: 24px;
}

.ogt-creator-hero__text .ogt-crumbs ol {
	margin-bottom: 10px;
}

.ogt-creator-hero__text .ogt-lead {
	margin-top: 10px;
}

.ogt-subtabs {
	border-bottom: 1px solid var(--ogt-line);
	display: flex;
	gap: 4px;
	margin: 22px 0;
	overflow-x: auto;
}

.ogt-subtabs a {
	border-bottom: 2px solid transparent;
	color: var(--ogt-body);
	flex: none;
	font-size: 15px;
	font-weight: 600;
	padding: 12px 14px;
}

.ogt-subtabs a.is-active,
.ogt-subtabs a:hover {
	border-bottom-color: var(--ogt-brand);
	color: var(--ogt-brand-700);
}

.ogt-main input[type="file"] {
	background: var(--ogt-soft);
	border: 1px dashed #CBD5E1;
	border-radius: 12px;
	padding: 12px;
	width: 100%;
}

.ogt-hero__points {
	margin-top: 22px;
}

.ogt-hero__text p + p {
	margin-top: 12px;
}

/* =====================================================================
   v3 — homepage
   ===================================================================== */

@keyframes ogt-rise {
	from { opacity: 0; transform: translateY(26px); }
	to { opacity: 1; transform: none; }
}

@keyframes ogt-float {
	0%, 100% { transform: translateY(0); }
	50% { transform: translateY(-10px); }
}

@keyframes ogt-marquee {
	from { transform: translateX(0); }
	to { transform: translateX(-50%); }
}

.ogt-rise {
	animation: ogt-rise .9s var(--ogt-ease) both;
	animation-delay: var(--d, 0ms);
}

.js .ogt-reveal {
	transition-delay: var(--d, 0ms);
}

.ogt-hero-home {
	background: var(--ogt-cream);
	min-height: clamp(600px, calc(100vh - var(--ogt-header)), 860px);
	padding-block: 64px 96px;
}

.ogt-hero-home__media {
	transform: scale(1.06);
	will-change: transform;
}

.ogt-hero-home__media::after {
	background:
		linear-gradient(90deg, rgba(251, 248, 242, .98) 0%, rgba(251, 248, 242, .92) 32%, rgba(251, 248, 242, .55) 52%, rgba(251, 248, 242, 0) 70%),
		linear-gradient(0deg, rgba(251, 248, 242, 1) 0%, rgba(251, 248, 242, 0) 22%);
}

.ogt-hero-home__grid {
	align-items: center;
	display: grid;
	gap: 40px;
	position: relative;
}

@media (min-width: 1100px) {
	.ogt-hero-home__grid {
		grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
	}
}

.ogt-hero-home__body {
	max-width: 660px;
}

.ogt-hero-home__title .ogt-accent {
	background: linear-gradient(100deg, var(--ogt-brand) 10%, #22B095 50%, var(--ogt-brand-700) 90%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.ogt-where {
	align-items: center;
	background: var(--ogt-white);
	border-radius: 999px;
	box-shadow: var(--ogt-shadow-lg);
	display: flex;
	gap: 6px;
	margin-top: 36px;
	max-width: 560px;
	padding: 8px 8px 8px 22px;
}

.ogt-where label {
	align-items: center;
	color: var(--ogt-brand);
	display: flex;
	flex: none;
	gap: 8px;
}

.ogt-where label span {
	color: var(--ogt-muted);
	font-size: 13px;
	font-weight: 600;
	white-space: nowrap;
}

.ogt-main .ogt-where select {
	background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230F172A' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 8px center / 16px no-repeat;
	-webkit-appearance: none;
	appearance: none;
	border: 0;
	box-shadow: none;
	color: var(--ogt-ink);
	flex: 1;
	font-size: 16px;
	font-weight: 600;
	min-height: 48px;
	min-width: 0;
	padding: 0 30px 0 6px;
}

.ogt-where .ogt-btn {
	flex: none;
	min-height: 50px;
}

@media (max-width: 560px) {
	.ogt-where {
		border-radius: var(--ogt-r);
		flex-wrap: wrap;
		padding: 12px;
	}

	.ogt-where label {
		width: 100%;
	}

	.ogt-where .ogt-btn {
		width: 100%;
	}
}

.ogt-hero-home__float {
	display: none;
	height: 440px;
	position: relative;
}

@media (min-width: 1100px) {
	.ogt-hero-home__float {
		display: block;
	}
}

.ogt-float-card {
	align-items: center;
	animation: ogt-float 6s ease-in-out infinite, ogt-rise 1s var(--ogt-ease) both;
	background: rgba(255, 255, 255, .82);
	backdrop-filter: blur(14px) saturate(1.4);
	border: 1px solid rgba(255, 255, 255, .7);
	border-radius: 20px;
	box-shadow: var(--ogt-shadow-lg);
	color: var(--ogt-muted);
	display: flex;
	font-size: 13.5px;
	gap: 14px;
	padding: 14px 20px 14px 14px;
	position: absolute;
}

.ogt-float-card strong {
	color: var(--ogt-ink);
	display: block;
	font-family: var(--ogt-display);
	font-size: 22px;
	font-weight: 800;
	letter-spacing: -.02em;
	line-height: 1.1;
}

.ogt-float-card--a {
	left: -10%;
	top: 10%;
}

.ogt-float-card--b {
	animation-delay: -2s, .3s;
	right: -4%;
	top: 64%;
}

.ogt-float-card--c {
	animation-delay: -4s, .5s;
	bottom: -8%;
	left: -2%;
}

.ogt-float-card__icon {
	align-items: center;
	background: var(--ogt-brand);
	border-radius: 14px;
	color: var(--ogt-white);
	display: flex;
	height: 46px;
	justify-content: center;
	width: 46px;
}

.ogt-float-card__icon--sun {
	background: var(--ogt-sun);
	color: var(--ogt-ink);
}

.ogt-float-card__icon--coral {
	background: var(--ogt-accent);
}

/* Video */
.ogt-home-video {
	padding-top: clamp(40px, 6vw, 80px);
}

.ogt-cinema {
	border-radius: 32px;
	box-shadow: 0 50px 100px -40px rgba(10, 26, 36, .55);
	margin-inline: auto;
	max-width: 1100px;
	position: relative;
}

.ogt-cinema .ogt-video {
	border-radius: 32px;
	box-shadow: none;
}

.ogt-cinema .ogt-video__label {
	display: none;
}

.ogt-cinema__sound {
	align-items: center;
	background: var(--ogt-white);
	border: 0;
	border-radius: 999px;
	bottom: 24px;
	box-shadow: 0 10px 30px rgba(0, 0, 0, .3);
	color: var(--ogt-ink);
	display: none;
	font-size: 15px;
	font-weight: 600;
	gap: 8px;
	left: 50%;
	padding: 13px 20px;
	position: absolute;
	transform: translateX(-50%);
	transition: transform .25s var(--ogt-spring);
	z-index: 3;
}

.ogt-cinema__sound:hover {
	transform: translateX(-50%) scale(1.05);
}

.ogt-cinema:has(.is-muted) .ogt-cinema__sound {
	display: inline-flex;
}

.ogt-cinema.is-sound .ogt-cinema__sound {
	display: none;
}

/* About */
.ogt-about__grid {
	align-items: center;
	display: grid;
	gap: clamp(48px, 6vw, 96px);
}

@media (min-width: 1000px) {
	.ogt-about__grid {
		grid-template-columns: minmax(0, 5fr) minmax(0, 6fr);
	}
}

.ogt-about__photos {
	min-height: 520px;
	position: relative;
}

.ogt-about__photo {
	border-radius: var(--ogt-r-lg);
	box-shadow: 0 40px 80px -30px rgba(0, 0, 0, .6);
	overflow: hidden;
	position: absolute;
}

.ogt-about__photo img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.ogt-about__photo--main {
	height: 82%;
	left: 0;
	top: 0;
	transform: rotate(-2deg);
	width: 80%;
}

.ogt-about__photo--main img {
	object-position: center 82%;
}

.ogt-about__photo--small {
	border: 6px solid var(--ogt-brand-900);
	bottom: 0;
	height: 46%;
	right: 0;
	transform: rotate(3deg);
	width: 50%;
}

.ogt-about__note {
	bottom: 6%;
	color: var(--ogt-sun);
	font-family: var(--ogt-hand);
	font-size: 34px;
	left: 4%;
	position: absolute;
	transform: rotate(-6deg);
}

.ogt-about .ogt-lead {
	color: rgba(255, 255, 255, .78);
	margin-top: 20px;
}

.ogt-about__values {
	display: grid;
	gap: 18px;
	list-style: none;
	margin: 32px 0 36px;
	padding: 0;
}

.ogt-about__values li {
	align-items: flex-start;
	background: rgba(255, 255, 255, .05);
	border: 1px solid rgba(255, 255, 255, .1);
	border-radius: var(--ogt-r);
	display: flex;
	gap: 16px;
	padding: 18px;
	transition: background .25s, transform .25s var(--ogt-ease);
}

.ogt-about__values li:hover {
	background: rgba(255, 255, 255, .09);
	transform: translateX(6px);
}

.ogt-about__values strong {
	color: var(--ogt-white);
	display: block;
	font-size: 17px;
	margin-bottom: 2px;
}

.ogt-about__icon {
	align-items: center;
	background: rgba(255, 194, 75, .14);
	border-radius: 12px;
	color: var(--ogt-sun);
	display: flex;
	flex: none;
	height: 44px;
	justify-content: center;
	width: 44px;
}

@media (max-width: 999px) {
	.ogt-about__photos {
		min-height: 380px;
	}
}

/* Bento */
.ogt-bento {
	display: grid;
	gap: 18px;
	grid-template-columns: 1fr;
}

@media (min-width: 760px) {
	.ogt-bento {
		grid-auto-rows: 230px;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ogt-bento__tile--dest {
		grid-row: span 2;
	}
}

@media (min-width: 1100px) {
	.ogt-bento {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.ogt-bento__tile--dest {
		grid-column: span 2;
	}
}

.ogt-bento__tile {
	border-radius: var(--ogt-r-lg);
	color: var(--ogt-white);
	display: flex;
	flex-direction: column;
	isolation: isolate;
	justify-content: flex-end;
	min-height: 230px;
	overflow: hidden;
	padding: 26px;
	position: relative;
	transition: transform .35s var(--ogt-ease), box-shadow .35s var(--ogt-ease);
}

.ogt-bento__tile:hover {
	box-shadow: var(--ogt-shadow-lg);
	color: var(--ogt-white);
	transform: translateY(-6px);
}

.ogt-bento__tile > img {
	height: 100%;
	inset: 0;
	object-fit: cover;
	position: absolute;
	transition: transform 1s var(--ogt-ease);
	width: 100%;
	z-index: -2;
}

.ogt-bento__tile:hover > img {
	transform: scale(1.06);
}

.ogt-bento__tile:has(> img)::after {
	background: linear-gradient(180deg, rgba(5, 11, 25, 0) 30%, rgba(5, 11, 25, .82) 100%);
	content: "";
	inset: 0;
	position: absolute;
	z-index: -1;
}

.ogt-bento__tile--insure {
	background: radial-gradient(120% 90% at 100% 0%, #26B497 0%, var(--ogt-brand) 40%, var(--ogt-brand-900) 100%);
}

.ogt-bento__tile--media {
	background: var(--ogt-sun);
	color: var(--ogt-ink);
}

.ogt-bento__tile--media:hover {
	color: var(--ogt-ink);
}

.ogt-bento__tile--plan {
	background: var(--ogt-navy) var(--ogt-topo) center / 520px;
}

.ogt-bento__body {
	display: flex;
	flex-direction: column;
	gap: 8px;
	max-width: 440px;
}

.ogt-bento__body strong {
	font-family: var(--ogt-display);
	font-size: clamp(22px, 2.2vw, 30px);
	font-weight: 800;
	letter-spacing: -.03em;
	line-height: 1.05;
}

.ogt-bento__body > span:last-child {
	font-size: 15px;
	opacity: .85;
}

.ogt-bento__tag {
	align-items: center;
	align-self: flex-start;
	background: rgba(255, 255, 255, .16);
	backdrop-filter: blur(8px);
	border-radius: 999px;
	display: inline-flex;
	font-size: 12.5px;
	font-weight: 700;
	gap: 6px;
	letter-spacing: .04em;
	padding: 6px 12px;
	text-transform: uppercase;
}

.ogt-bento__tile--media .ogt-bento__tag {
	background: rgba(15, 23, 42, .08);
}

.ogt-bento__tag .ogt-icon {
	height: 15px;
	width: 15px;
}

.ogt-bento__go {
	align-items: center;
	background: var(--ogt-white);
	border-radius: 50%;
	color: var(--ogt-ink);
	display: flex;
	height: 46px;
	justify-content: center;
	position: absolute;
	right: 22px;
	top: 22px;
	transition: transform .35s var(--ogt-spring);
	width: 46px;
}

.ogt-bento__tile:hover .ogt-bento__go {
	transform: rotate(-45deg) scale(1.1);
}

.ogt-bento__big-icon {
	color: rgba(255, 255, 255, .18);
	left: 26px;
	position: absolute;
	top: 22px;
}

.ogt-bento__big-icon .ogt-icon {
	height: 120px;
	width: 120px;
}

/* Destinations carousel tweaks */
.ogt-carousel {
	grid-auto-columns: minmax(280px, calc((100% - 72px) / 3.4));
	margin-right: calc(-1 * var(--ogt-gutter));
	padding-right: var(--ogt-gutter);
}

.ogt-photo-card {
	aspect-ratio: 4 / 5;
	box-shadow: var(--ogt-shadow);
	transition: transform .4s var(--ogt-ease), box-shadow .4s var(--ogt-ease);
}

.ogt-photo-card:hover {
	box-shadow: var(--ogt-shadow-lg);
	transform: translateY(-8px);
}

.ogt-photo-card--more {
	background: var(--ogt-brand) var(--ogt-topo) center / 520px;
}

.ogt-photo-card--more::after {
	display: none;
}

/* Address book teaser */
.ogt-book-teaser__grid {
	align-items: center;
	display: grid;
	gap: 56px;
}

@media (min-width: 1000px) {
	.ogt-book-teaser__grid {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	}
}

.ogt-book-teaser .ogt-lead {
	margin-top: 18px;
}

.ogt-mini-steps {
	counter-reset: s;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	list-style: none;
	margin: 28px 0 32px;
	padding: 0;
}

.ogt-mini-steps li {
	align-items: center;
	background: rgba(255, 255, 255, .06);
	border: 1px solid rgba(255, 255, 255, .12);
	border-radius: 999px;
	color: var(--ogt-white);
	counter-increment: s;
	display: inline-flex;
	font-size: 14.5px;
	font-weight: 600;
	gap: 10px;
	padding: 8px 16px 8px 8px;
}

.ogt-mini-steps li::before {
	align-items: center;
	background: var(--ogt-brand);
	border-radius: 50%;
	content: counter(s);
	display: flex;
	font-size: 13px;
	height: 26px;
	justify-content: center;
	width: 26px;
}

.ogt-stack {
	display: grid;
	gap: 14px;
	margin-inline: auto;
	max-width: 460px;
	width: 100%;
}

.ogt-stack__card {
	align-items: center;
	background: var(--ogt-white);
	border-radius: 20px;
	box-shadow: 0 30px 60px -24px rgba(0, 0, 0, .6);
	display: flex;
	gap: 14px;
	padding: 12px 14px 12px 12px;
	transform: translateX(calc(var(--i) * 28px)) rotate(calc((var(--i) - 1) * 1.5deg));
	transition: transform .4s var(--ogt-spring);
}

.ogt-stack__card:hover {
	transform: translateX(calc(var(--i) * 28px)) scale(1.03);
}

.ogt-stack__card img,
.ogt-stack__ph {
	border-radius: 14px;
	flex: none;
	height: 64px;
	object-fit: cover;
	width: 64px;
}

.ogt-stack__ph {
	align-items: center;
	background: var(--ogt-brand-50);
	color: var(--ogt-brand);
	display: flex;
	justify-content: center;
}

.ogt-stack__card > span {
	display: grid;
	flex: 1;
	min-width: 0;
}

.ogt-stack__card small {
	color: var(--ogt-brand);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.ogt-stack__card strong {
	color: var(--ogt-ink);
	font-family: var(--ogt-display);
	font-size: 19px;
}

.ogt-stack__card .ogt-save {
	border: 1px solid var(--ogt-line);
	box-shadow: none;
}

/* Package promo */
.ogt-promo {
	background: var(--ogt-white);
	border-radius: 36px;
	box-shadow: var(--ogt-shadow-lg);
}

.ogt-promo__media {
	position: relative;
}

.ogt-promo__badge {
	background: var(--ogt-sun);
	border-radius: 999px;
	color: var(--ogt-ink);
	font-size: 13px;
	font-weight: 700;
	left: 22px;
	padding: 7px 14px;
	position: absolute;
	top: 22px;
}

.ogt-promo__body .ogt-checks {
	margin-bottom: 30px;
}

/* Magazine journal */
.ogt-mag {
	display: grid;
	gap: 28px;
}

@media (min-width: 1000px) {
	.ogt-mag {
		grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
	}
}

.ogt-story-feature {
	border-radius: var(--ogt-r-lg);
	color: var(--ogt-white);
	display: block;
	isolation: isolate;
	min-height: 520px;
	overflow: hidden;
	position: relative;
}

.ogt-story-feature:hover {
	color: var(--ogt-white);
}

.ogt-story-feature img {
	height: 100%;
	inset: 0;
	object-fit: cover;
	position: absolute;
	transition: transform 1s var(--ogt-ease);
	width: 100%;
	z-index: -2;
}

.ogt-story-feature:hover img {
	transform: scale(1.05);
}

.ogt-story-feature::after {
	background: linear-gradient(180deg, rgba(5, 11, 25, .05) 30%, rgba(5, 11, 25, .9) 100%);
	content: "";
	inset: 0;
	position: absolute;
	z-index: -1;
}

.ogt-story-feature__body {
	bottom: 0;
	display: flex;
	flex-direction: column;
	gap: 12px;
	left: 0;
	padding: clamp(24px, 3vw, 40px);
	position: absolute;
	right: 0;
}

.ogt-story-feature__meta {
	align-items: center;
	display: flex;
	font-size: 14px;
	gap: 12px;
	opacity: .9;
}

.ogt-story-feature__cat {
	background: var(--ogt-sun);
	border-radius: 999px;
	color: var(--ogt-ink);
	font-size: 12.5px;
	font-weight: 700;
	padding: 4px 11px;
}

.ogt-story-feature__title {
	font-family: var(--ogt-display);
	font-size: clamp(28px, 3vw, 42px);
	font-weight: 800;
	letter-spacing: -.03em;
	line-height: 1.05;
	max-width: 22ch;
}

.ogt-story-feature__text {
	font-size: 16px;
	max-width: 56ch;
	opacity: .85;
}

.ogt-story-feature__cta {
	align-items: center;
	color: var(--ogt-sun);
	display: inline-flex;
	font-weight: 600;
	gap: 8px;
}

.ogt-mag__list {
	display: grid;
	gap: 14px;
	grid-auto-rows: 1fr;
}

.ogt-story-row {
	align-items: center;
	background: var(--ogt-cream);
	border-radius: var(--ogt-r);
	color: var(--ogt-body);
	display: flex;
	gap: 18px;
	padding: 12px;
	transition: background .25s, transform .3s var(--ogt-ease), box-shadow .3s;
}

.ogt-story-row:hover {
	background: var(--ogt-white);
	box-shadow: var(--ogt-shadow);
	color: var(--ogt-body);
	transform: translateX(6px);
}

.ogt-story-row__media {
	border-radius: 14px;
	flex: none;
	height: 120px;
	overflow: hidden;
	width: 140px;
}

.ogt-story-row__media img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.ogt-story-row__body {
	display: grid;
	gap: 6px;
}

.ogt-story-row__cat {
	color: var(--ogt-brand);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.ogt-story-row__title {
	color: var(--ogt-ink);
	font-family: var(--ogt-display);
	font-size: 19px;
	font-weight: 700;
	letter-spacing: -.02em;
	line-height: 1.2;
}

.ogt-story-row__meta {
	color: var(--ogt-muted);
	font-size: 13.5px;
}

@media (max-width: 560px) {
	.ogt-story-row__media {
		height: 92px;
		width: 92px;
	}

	.ogt-story-feature {
		min-height: 420px;
	}
}

/* Marquee gallery */
.ogt-marquee-wrap {
	overflow: hidden;
}

.ogt-marquee {
	margin-top: 16px;
	mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
	overflow: hidden;
}

.ogt-marquee__track {
	animation: ogt-marquee 60s linear infinite;
	display: flex;
	gap: 16px;
	width: max-content;
}

.ogt-marquee--reverse .ogt-marquee__track {
	animation-direction: reverse;
	animation-duration: 75s;
}

.ogt-marquee:hover .ogt-marquee__track {
	animation-play-state: paused;
}

.ogt-marquee__item {
	border-radius: var(--ogt-r);
	flex: none;
	height: clamp(180px, 22vw, 280px);
	overflow: hidden;
	width: clamp(240px, 28vw, 380px);
}

.ogt-marquee__item:nth-child(3n) {
	width: clamp(180px, 20vw, 280px);
}

.ogt-marquee__item img {
	height: 100%;
	object-fit: cover;
	transition: transform .8s var(--ogt-ease);
	width: 100%;
}

.ogt-marquee__item:hover img {
	transform: scale(1.06);
}

@media (prefers-reduced-motion: reduce) {
	.ogt-marquee__track,
	.ogt-float-card,
	.ogt-rise {
		animation: none !important;
	}
}

/* Newsletter, livelier */
.ogt-newsletter {
	background: var(--ogt-brand-900) var(--ogt-topo) right -100px center / 600px no-repeat;
	box-shadow: var(--ogt-shadow-lg);
	padding: clamp(32px, 5vw, 56px);
}

.ogt-newsletter__icon {
	background: var(--ogt-sun);
	color: var(--ogt-ink);
}

.ogt-subscribe .ogt-btn {
	background: var(--ogt-sun);
	border-color: var(--ogt-sun);
	box-shadow: none;
	color: var(--ogt-ink) !important;
}

/* Footer warmth */
.ogt-footer {
	background: var(--ogt-navy) var(--ogt-topo) right -200px top -150px / 900px no-repeat;
}

/* =====================================================================
   v3 — article
   ===================================================================== */

.ogt-progress {
	height: 3px;
	left: 0;
	position: fixed;
	right: 0;
	top: 0;
	z-index: 200;
}

.admin-bar .ogt-progress {
	top: 32px;
}

.ogt-progress span {
	background: linear-gradient(90deg, var(--ogt-brand), var(--ogt-sun));
	display: block;
	height: 100%;
	transform: scaleX(0);
	transform-origin: left;
}

.ogt-article-hero {
	padding-top: clamp(32px, 5vw, 64px);
}

.ogt-article-hero__text {
	text-align: center;
}

.ogt-article-hero__text .ogt-crumbs ol {
	justify-content: center;
}

.ogt-article-hero__title {
	font-size: clamp(36px, 5.4vw, 68px);
	font-weight: 800;
	letter-spacing: -.04em;
	line-height: 1.02;
}

.ogt-article-hero__text .ogt-lead {
	margin: 20px auto 0;
	max-width: 640px;
}

.ogt-article-hero__meta {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 16px 24px;
	justify-content: center;
	margin-top: 28px;
}

.ogt-article-hero__by {
	align-items: center;
	display: flex;
	gap: 12px;
	text-align: left;
}

.ogt-article-hero__by img {
	border: 2px solid var(--ogt-white);
	border-radius: 50%;
	box-shadow: var(--ogt-shadow-sm);
	height: 48px;
	object-fit: cover;
	width: 48px;
}

.ogt-article-hero__by strong {
	color: var(--ogt-ink);
	display: block;
}

.ogt-article-hero__by small {
	color: var(--ogt-muted);
	font-size: 14px;
}

.ogt-article-hero__image {
	margin-top: clamp(32px, 4vw, 56px);
}

.ogt-article-hero__image img {
	aspect-ratio: 21 / 9;
	border-radius: 32px;
	box-shadow: var(--ogt-shadow-lg);
	object-fit: cover;
	width: 100%;
}

.ogt-article-layout {
	display: grid;
	gap: 48px;
	padding-block: clamp(48px, 6vw, 88px);
}

@media (min-width: 1100px) {
	.ogt-article-layout {
		grid-template-columns: 240px minmax(0, 740px);
		justify-content: center;
	}
}

.ogt-article-side {
	align-self: start;
	display: grid;
	gap: 28px;
	position: sticky;
	top: calc(var(--ogt-header) + 32px);
}

@media (max-width: 1099px) {
	.ogt-article-side {
		position: static;
	}

	.ogt-toc {
		display: none;
	}
}

.ogt-toc__label {
	color: var(--ogt-muted);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .1em;
	margin-bottom: 12px;
	text-transform: uppercase;
}

.ogt-toc ol {
	border-left: 2px solid var(--ogt-line);
	display: grid;
	gap: 2px;
	list-style: none;
	padding: 0;
}

.ogt-toc a {
	border-left: 2px solid transparent;
	color: var(--ogt-muted);
	display: block;
	font-size: 14px;
	line-height: 1.4;
	margin-left: -2px;
	padding: 7px 0 7px 14px;
	transition: color .2s, border-color .2s;
}

.ogt-toc a:hover {
	color: var(--ogt-ink);
}

.ogt-toc a.is-active {
	border-left-color: var(--ogt-brand);
	color: var(--ogt-brand-700);
	font-weight: 600;
}

.ogt-share__row {
	display: flex;
	gap: 8px;
}

.ogt-share__row a,
.ogt-share__row button {
	align-items: center;
	background: var(--ogt-white);
	border: 1px solid var(--ogt-line);
	border-radius: 50%;
	color: var(--ogt-ink);
	display: flex;
	font-size: 15px;
	font-weight: 700;
	height: 40px;
	justify-content: center;
	transition: background .2s, color .2s, transform .25s var(--ogt-spring);
	width: 40px;
}

.ogt-share__row a:hover,
.ogt-share__row button:hover {
	background: var(--ogt-brand);
	border-color: var(--ogt-brand);
	color: var(--ogt-white);
	transform: translateY(-2px);
}

.ogt-share__row .ogt-icon {
	height: 17px;
	width: 17px;
}

.ogt-prose--article {
	font-size: 19px;
}

.ogt-prose--article > p:first-of-type::first-letter {
	color: var(--ogt-brand);
	float: left;
	font-family: var(--ogt-display);
	font-size: 74px;
	font-weight: 800;
	line-height: .85;
	margin: 8px 12px 0 0;
}

.ogt-prose--article h2 {
	font-size: clamp(28px, 3vw, 36px);
	scroll-margin-top: calc(var(--ogt-header) + 24px);
}

.ogt-prose--article blockquote {
	background: var(--ogt-white);
	border: 0;
	border-radius: var(--ogt-r);
	box-shadow: var(--ogt-shadow-sm);
	font-family: var(--ogt-display);
	font-size: 23px;
	font-weight: 600;
	line-height: 1.4;
	padding: 28px 32px;
	position: relative;
}

.ogt-prose--article blockquote::before {
	color: var(--ogt-brand-100);
	content: "“";
	font-size: 90px;
	left: 18px;
	line-height: 1;
	position: absolute;
	top: -8px;
}

.ogt-prose--article figure img,
.ogt-prose--article > p img {
	border-radius: var(--ogt-r);
	box-shadow: var(--ogt-shadow);
}

.ogt-prose--article table {
	background: var(--ogt-white);
	border-radius: var(--ogt-r);
	box-shadow: var(--ogt-shadow-sm);
}

.ogt-author-card {
	align-items: center;
	background: var(--ogt-white);
	border-radius: var(--ogt-r-lg);
	box-shadow: var(--ogt-shadow);
	display: grid;
	gap: 24px;
	margin-top: 48px;
	padding: 28px;
}

@media (min-width: 640px) {
	.ogt-author-card {
		grid-template-columns: 140px 1fr;
	}
}

.ogt-author-card img {
	aspect-ratio: 1;
	border-radius: 20px;
	object-fit: cover;
	width: 140px;
}

.ogt-author-card .ogt-eyebrow {
	margin-bottom: 10px;
}

.ogt-author-card p {
	margin: 8px 0 18px;
}

.ogt-article-places {
	margin-top: 40px;
}

.ogt-article-places h2 {
	margin-bottom: 14px;
}

.ogt-article-places__list {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.ogt-article-places__list a {
	align-items: center;
	background: var(--ogt-white);
	border-radius: var(--ogt-r);
	box-shadow: var(--ogt-shadow-sm);
	color: var(--ogt-ink);
	display: flex;
	gap: 12px;
	padding: 10px 14px 10px 10px;
	transition: transform .25s var(--ogt-ease), box-shadow .25s;
}

.ogt-article-places__list a:hover {
	box-shadow: var(--ogt-shadow);
	color: var(--ogt-ink);
	transform: translateY(-3px);
}

.ogt-article-places__list img {
	border-radius: 12px;
	height: 52px;
	object-fit: cover;
	width: 52px;
}

.ogt-article-places__list span {
	display: grid;
	flex: 1;
}

.ogt-article-places__list small {
	color: var(--ogt-brand);
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
}

.ogt-article-nav {
	display: grid;
	gap: 14px;
	margin-top: 40px;
}

@media (min-width: 640px) {
	.ogt-article-nav {
		grid-template-columns: 1fr 1fr;
	}
}

.ogt-article-nav a {
	border: 1px solid var(--ogt-line);
	border-radius: var(--ogt-r);
	color: var(--ogt-ink);
	display: grid;
	gap: 6px;
	padding: 18px 20px;
	transition: border-color .2s, background .2s;
}

.ogt-article-nav a:hover {
	background: var(--ogt-white);
	border-color: var(--ogt-brand);
	color: var(--ogt-ink);
}

.ogt-article-nav small {
	color: var(--ogt-brand);
	font-weight: 600;
}

.ogt-article-nav strong {
	font-family: var(--ogt-display);
	font-size: 18px;
	line-height: 1.25;
}

.ogt-article-nav__next {
	text-align: right;
}

.ogt-article-nav__next:only-child {
	grid-column: 2;
}

/* =====================================================================
   v3 — destination page
   ===================================================================== */

.ogt-subnav {
	background: rgba(255, 255, 255, .92);
	backdrop-filter: blur(16px) saturate(1.5);
	border-bottom: 1px solid var(--ogt-line);
	box-shadow: 0 10px 30px -20px rgba(10, 26, 36, .25);
	position: sticky;
	top: var(--ogt-header);
	z-index: 30;
}

.admin-bar .ogt-subnav {
	top: calc(var(--ogt-header) + 32px);
}

.ogt-subnav__inner {
	align-items: center;
	display: flex;
	gap: 20px;
	min-height: 68px;
}

.ogt-subnav__links {
	display: flex;
	flex: 1;
	gap: 4px;
	overflow-x: auto;
	scrollbar-width: none;
}

.ogt-subnav__links::-webkit-scrollbar {
	display: none;
}

.ogt-subnav__links a {
	border-radius: 999px;
	color: var(--ogt-body);
	flex: none;
	font-size: 15px;
	font-weight: 600;
	padding: 9px 14px;
	transition: background .2s, color .2s;
}

.ogt-subnav__links a:hover {
	background: var(--ogt-brand-50);
	color: var(--ogt-brand-700);
}

@media (max-width: 760px) {
	.ogt-subnav__cta {
		display: none;
	}
}

.ogt-citypick {
	flex: none;
	position: relative;
}

.ogt-citypick summary,
.ogt-citypick--static {
	align-items: center;
	background: var(--ogt-ink);
	border-radius: 14px;
	color: var(--ogt-white);
	cursor: pointer;
	display: flex;
	gap: 10px;
	list-style: none;
	padding: 8px 14px 8px 12px;
}

.ogt-citypick summary::-webkit-details-marker {
	display: none;
}

.ogt-citypick summary span,
.ogt-citypick--static span {
	display: grid;
	line-height: 1.15;
}

.ogt-citypick small {
	color: rgba(255, 255, 255, .6);
	font-size: 11.5px;
	font-weight: 600;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.ogt-citypick strong {
	font-family: var(--ogt-display);
	font-size: 17px;
}

.ogt-citypick .ogt-icon {
	color: var(--ogt-sun);
}

.ogt-citypick__caret {
	font-size: 12px;
	transition: transform .2s;
}

.ogt-citypick[open] .ogt-citypick__caret {
	transform: rotate(180deg);
}

.ogt-citypick__menu {
	animation: ogt-rise .25s var(--ogt-ease) both;
	background: var(--ogt-white);
	border-radius: var(--ogt-r);
	box-shadow: var(--ogt-shadow-lg);
	display: grid;
	gap: 4px;
	left: 0;
	min-width: 280px;
	padding: 8px;
	position: absolute;
	top: calc(100% + 10px);
	z-index: 40;
}

.ogt-citypick__menu a {
	align-items: center;
	border-radius: 12px;
	color: var(--ogt-ink);
	display: flex;
	gap: 12px;
	padding: 8px;
}

.ogt-citypick__menu a:hover,
.ogt-citypick__menu a.is-current {
	background: var(--ogt-brand-50);
	color: var(--ogt-ink);
}

.ogt-citypick__menu img,
.ogt-citypick__ph {
	align-items: center;
	background: var(--ogt-brand-100);
	border-radius: 10px;
	color: var(--ogt-brand-700);
	display: flex;
	font-weight: 800;
	height: 44px;
	justify-content: center;
	object-fit: cover;
	width: 44px;
}

.ogt-citypick__menu span {
	display: grid;
	flex: 1;
}

.ogt-citypick__menu small {
	color: var(--ogt-muted);
	letter-spacing: 0;
	text-transform: none;
}

.ogt-citypick__menu .ogt-icon {
	color: var(--ogt-brand);
}

/* Glance cards */
.ogt-glance-cards {
	display: grid;
	gap: 14px;
	grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
}

.ogt-glance-card {
	background: var(--ogt-white);
	border: 1px solid transparent;
	border-radius: var(--ogt-r);
	box-shadow: var(--ogt-shadow-sm);
	color: var(--ogt-body);
	display: grid;
	gap: 4px;
	padding: 18px 18px 16px;
	position: relative;
	transition: transform .3s var(--ogt-ease), box-shadow .3s, border-color .3s;
}

a.ogt-glance-card:hover {
	border-color: var(--ogt-brand-100);
	box-shadow: var(--ogt-shadow);
	color: var(--ogt-body);
	transform: translateY(-4px);
}

.ogt-glance-card__icon {
	align-items: center;
	background: var(--ogt-brand-50);
	border-radius: 12px;
	color: var(--ogt-brand);
	display: flex;
	height: 40px;
	justify-content: center;
	margin-bottom: 8px;
	width: 40px;
}

.ogt-glance-card__label {
	color: var(--ogt-muted);
	font-size: 12.5px;
	font-weight: 700;
	letter-spacing: .05em;
	text-transform: uppercase;
}

.ogt-glance-card__value {
	color: var(--ogt-ink);
	font-family: var(--ogt-display);
	font-size: 17px;
	font-weight: 700;
	line-height: 1.3;
}

.ogt-glance-card__go {
	color: var(--ogt-brand);
	opacity: 0;
	position: absolute;
	right: 14px;
	top: 18px;
	transform: translateX(-6px);
	transition: opacity .25s, transform .25s var(--ogt-ease);
}

a.ogt-glance-card:hover .ogt-glance-card__go {
	opacity: 1;
	transform: none;
}

.ogt-glance-row {
	align-items: start;
}

/* Area slider */
.ogt-area-slider {
	display: grid;
	gap: 22px;
	grid-auto-columns: minmax(300px, 1fr);
	grid-auto-flow: column;
	overflow-x: auto;
	padding-bottom: 8px;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
}

.ogt-area-slider::-webkit-scrollbar {
	display: none;
}

.ogt-area-slider > * {
	scroll-snap-align: start;
}

@media (min-width: 900px) {
	.ogt-area-slider {
		grid-auto-columns: calc((100% - 44px) / 2.3);
	}
}

.ogt-area-card {
	aspect-ratio: 4 / 3.6;
	box-shadow: var(--ogt-shadow);
}

/* Address book chips */
.ogt-chips__areas {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-left: auto;
}

.ogt-chip--ghost {
	background: transparent;
	border-style: dashed;
	margin-left: 0;
}

.ogt-chip--ghost.is-active {
	background: var(--ogt-ink);
	border-color: var(--ogt-ink);
	border-style: solid;
	color: var(--ogt-white);
}

.ogt-tips {
	background: var(--ogt-white);
	box-shadow: var(--ogt-shadow-sm);
}

.ogt-tips h3 {
	align-items: center;
	display: flex;
	gap: 10px;
}

.ogt-tips h3 .ogt-icon {
	color: var(--ogt-sun);
	fill: var(--ogt-sun);
}

.ogt-take .ogt-cover-card {
	min-height: 280px;
}

.ogt-map-row__side {
	align-content: start;
}

.ogt-cover-card .ogt-eyebrow {
	align-self: flex-start;
}

@media (min-width: 1200px) {
	.ogt-glance-cards {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

/* =====================================================================
   v3 — insurance quote calculator
   ===================================================================== */

.ogt-iq {
	align-items: start;
	display: grid;
	gap: 28px;
	margin-inline: auto;
	max-width: 1180px;
	text-align: left;
}

@media (min-width: 1024px) {
	.ogt-iq {
		grid-template-columns: minmax(0, 1fr) 360px;
	}
}

.ogt-iq__main {
	display: grid;
	gap: 20px;
	min-width: 0;
}

.ogt-iq__step {
	background: var(--ogt-white);
	border-radius: var(--ogt-r-lg);
	box-shadow: var(--ogt-shadow);
	padding: clamp(22px, 3vw, 34px);
}

.ogt-iq__step[hidden] {
	display: none;
}

.ogt-iq__step:first-child .ogt-fields--2 {
	align-items: start;
}

.ogt-iq__step > h3 {
	align-items: center;
	display: flex;
	font-size: 21px;
	gap: 12px;
	margin-bottom: 22px;
}

.ogt-iq__step > h3 span {
	align-items: center;
	background: var(--ogt-brand);
	border-radius: 50%;
	color: var(--ogt-white);
	display: inline-flex;
	flex: none;
	font-size: 15px;
	height: 32px;
	justify-content: center;
	width: 32px;
}

.ogt-iq .ogt-field small {
	font-size: 13px;
}

.ogt-iq__people {
	display: grid;
	gap: 10px;
}

.ogt-iq__person {
	align-items: center;
	background: var(--ogt-soft);
	border-radius: 14px;
	display: flex;
	gap: 12px;
	padding: 6px 6px 6px 16px;
}

.ogt-iq__person span {
	color: var(--ogt-ink);
	flex: 1;
	font-size: 15px;
	font-weight: 600;
}

.ogt-main .ogt-iq__person input {
	background: var(--ogt-white);
	flex: none;
	min-height: 44px;
	text-align: center;
	width: 84px;
}

.ogt-iq__person button {
	background: var(--ogt-white);
	border: 1px solid var(--ogt-line);
	border-radius: 50%;
	color: var(--ogt-muted);
	font-size: 18px;
	height: 36px;
	line-height: 1;
	width: 36px;
}

.ogt-iq [data-iq-add] {
	margin-top: 10px;
}

.ogt-iq__plans {
	display: grid;
	gap: 14px;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}

.ogt-iq-plan {
	cursor: pointer;
	display: block;
	position: relative;
}

.ogt-iq-plan input {
	opacity: 0;
	pointer-events: none;
	position: absolute;
}

.ogt-iq-plan__box {
	border: 1.5px solid var(--ogt-line);
	border-radius: var(--ogt-r);
	display: flex;
	flex-direction: column;
	gap: 6px;
	height: 100%;
	padding: 22px 18px 18px;
	position: relative;
	transition: border-color .2s, box-shadow .25s, transform .25s var(--ogt-ease);
}

.ogt-iq-plan:hover .ogt-iq-plan__box {
	border-color: var(--ogt-brand-100);
	transform: translateY(-2px);
}

.ogt-iq-plan input:checked + .ogt-iq-plan__box {
	background: var(--ogt-brand-50);
	border-color: var(--ogt-brand);
	box-shadow: 0 0 0 4px rgba(26, 137, 117, .12);
}

.ogt-iq-plan input:focus-visible + .ogt-iq-plan__box {
	outline: 3px solid var(--ogt-brand-100);
}

.ogt-iq-plan__flag {
	background: var(--ogt-sun);
	border-radius: 999px;
	color: var(--ogt-ink);
	font-size: 11.5px;
	font-weight: 700;
	left: 16px;
	letter-spacing: .04em;
	padding: 4px 10px;
	position: absolute;
	text-transform: uppercase;
	top: -11px;
}

.ogt-iq-plan__name {
	color: var(--ogt-ink);
	font-family: var(--ogt-display);
	font-size: 19px;
	font-weight: 800;
}

.ogt-iq-plan__price {
	color: var(--ogt-muted);
	font-size: 14px;
}

.ogt-iq-plan__price strong {
	color: var(--ogt-brand-700);
	font-family: var(--ogt-display);
	font-size: 24px;
	font-weight: 800;
}

.ogt-iq-plan .ogt-checks {
	border-top: 1px solid var(--ogt-line);
	font-size: 13.5px;
	gap: 8px;
	margin-top: 10px;
	padding-top: 12px;
}

.ogt-iq-plan .ogt-checks li::before {
	height: 18px;
	width: 18px;
	background-size: 10px;
}

.ogt-iq__toggles {
	display: grid;
	gap: 12px;
	margin-bottom: 20px;
}

@media (min-width: 700px) {
	.ogt-iq__toggles {
		grid-template-columns: 1fr 1fr;
	}
}

.ogt-toggle {
	align-items: flex-start;
	background: var(--ogt-soft);
	border-radius: var(--ogt-r);
	cursor: pointer;
	display: flex;
	gap: 14px;
	padding: 16px;
}

.ogt-toggle input {
	opacity: 0;
	position: absolute;
}

.ogt-toggle__ui {
	background: #CBD5E1;
	border-radius: 999px;
	flex: none;
	height: 26px;
	margin-top: 2px;
	position: relative;
	transition: background .2s;
	width: 46px;
}

.ogt-toggle__ui::after {
	background: var(--ogt-white);
	border-radius: 50%;
	box-shadow: 0 1px 3px rgba(0, 0, 0, .25);
	content: "";
	height: 20px;
	left: 3px;
	position: absolute;
	top: 3px;
	transition: transform .25s var(--ogt-spring);
	width: 20px;
}

.ogt-toggle input:checked + .ogt-toggle__ui {
	background: var(--ogt-brand);
}

.ogt-toggle input:checked + .ogt-toggle__ui::after {
	transform: translateX(20px);
}

.ogt-toggle input:focus-visible + .ogt-toggle__ui {
	outline: 3px solid var(--ogt-brand-100);
}

.ogt-toggle strong {
	color: var(--ogt-ink);
	display: block;
}

.ogt-toggle small {
	color: var(--ogt-muted);
	display: block;
	font-size: 13.5px;
	line-height: 1.45;
	margin-top: 2px;
}

.ogt-seg {
	background: var(--ogt-soft);
	border-radius: 999px;
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
	padding: 5px;
}

.ogt-seg label {
	cursor: pointer;
	flex: 1;
}

.ogt-seg input {
	opacity: 0;
	position: absolute;
}

.ogt-seg span {
	align-items: center;
	border-radius: 999px;
	color: var(--ogt-body);
	display: flex;
	flex-direction: column;
	font-size: 14.5px;
	font-weight: 600;
	justify-content: center;
	min-height: 52px;
	padding: 6px 14px;
	transition: background .2s, color .2s, box-shadow .2s;
}

.ogt-seg small {
	color: var(--ogt-muted);
	font-size: 11.5px;
	font-weight: 500;
}

.ogt-seg input:checked + span {
	background: var(--ogt-white);
	box-shadow: var(--ogt-shadow-sm);
	color: var(--ogt-brand-700);
}

.ogt-iq__summary {
	position: sticky;
	top: calc(var(--ogt-header) + 20px);
}

.ogt-iq-card {
	background: var(--ogt-brand-900) var(--ogt-topo) right -160px top -120px / 520px no-repeat;
	border-radius: var(--ogt-r-lg);
	box-shadow: var(--ogt-shadow-lg);
	color: rgba(255, 255, 255, .78);
	display: grid;
	gap: 10px;
	padding: 28px;
}

.ogt-iq-card__label {
	color: var(--ogt-sun);
	font-size: 12.5px;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.ogt-iq-card__price strong {
	color: var(--ogt-white);
	font-family: var(--ogt-display);
	font-size: 44px;
	font-weight: 800;
	letter-spacing: -.03em;
	line-height: 1;
}

.ogt-iq-card__price span {
	font-size: 15px;
}

.ogt-iq-card__year {
	font-size: 14px;
}

.ogt-iq-card__lines {
	border-top: 1px solid rgba(255, 255, 255, .14);
	display: grid;
	font-size: 14px;
	gap: 8px;
	list-style: none;
	margin: 6px 0;
	padding: 14px 0 0;
}

.ogt-iq-card__lines li {
	display: flex;
	justify-content: space-between;
	gap: 12px;
}

.ogt-iq-card__lines li span:last-child {
	color: var(--ogt-white);
	font-weight: 600;
}

.ogt-iq-card__note {
	background: rgba(255, 194, 75, .12);
	border-radius: 12px;
	color: #FFE3A6;
	font-size: 13.5px;
	padding: 10px 12px;
}

.ogt-iq-card .ogt-btn {
	margin-top: 6px;
}

.ogt-iq-card .ogt-btn--secondary {
	background: transparent;
	border-color: rgba(255, 255, 255, .3);
	box-shadow: none;
	color: var(--ogt-white) !important;
}

.ogt-iq-card__trust {
	display: grid;
	font-size: 13.5px;
	gap: 8px;
	list-style: none;
	margin-top: 8px;
	padding: 0;
}

.ogt-iq-card__trust li {
	align-items: center;
	display: flex;
	gap: 8px;
}

.ogt-iq-card__trust .ogt-icon {
	color: #7FE0CB;
	height: 18px;
	width: 18px;
}

.ogt-check {
	align-items: flex-start;
	color: var(--ogt-body);
	display: flex;
	font-size: 14.5px;
	gap: 10px;
	margin-top: 14px;
}

.ogt-check input {
	accent-color: var(--ogt-brand);
	flex: none;
	height: 18px;
	margin-top: 2px;
	width: 18px;
}

.ogt-iq__apply .ogt-btn {
	margin-top: 20px;
}

.ogt-iq__small {
	font-size: 13.5px;
	margin-top: 10px;
}

.ogt-iq-done {
	background: var(--ogt-white);
	border-radius: var(--ogt-r-lg);
	box-shadow: var(--ogt-shadow);
	grid-column: 1 / -1;
	padding: 48px 28px;
	text-align: center;
}

.ogt-iq-done .ogt-icon-tile {
	font-size: 24px;
	font-weight: 800;
	margin-inline: auto;
}

.ogt-iq-done p {
	margin-top: 10px;
}

.ogt-sec-insurance .ogt-head {
	margin-bottom: 36px;
}

/* =====================================================================
   v3 — package landing ("Vietnam, Unpacked" editorial format)
   ===================================================================== */

.ogt-pk {
	--pk-cream: var(--ogt-cream);
	--pk-paper: #FFFFFF;
	--pk-forest: var(--ogt-brand-900);
	--pk-forest-2: var(--ogt-brand-700);
	--pk-terra: var(--ogt-brand);
	--pk-sage: var(--ogt-brand-50);
	--pk-line: var(--ogt-line);
	--pk-ink: var(--ogt-ink);
	--pk-muted: var(--ogt-muted);
	--pk-serif: var(--ogt-display);
	background: var(--pk-cream);
	color: var(--ogt-body);
}

.ogt-pk-kicker {
	align-items: center;
	color: var(--pk-ink);
	display: flex;
	font-size: 12px;
	font-weight: 600;
	gap: 10px;
	letter-spacing: .14em;
	text-transform: uppercase;
}

.ogt-pk-strip {
	border-block: 1px solid var(--pk-line);
	padding-block: 28px;
}

.ogt-pk-strip__inner {
	align-items: center;
	display: grid;
	gap: 22px 40px;
}

@media (min-width: 980px) {
	.ogt-pk-strip__inner {
		grid-template-columns: 260px minmax(0, 1fr);
	}
}

.ogt-pk-muted {
	color: var(--pk-muted);
	font-size: 14.5px;
	margin-top: 8px;
}

.ogt-pk-strip__items {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

.ogt-pk-stat {
	border-left: 1px solid var(--pk-line);
	padding-left: 18px;
}

.ogt-pk-stat strong {
	color: var(--pk-forest);
	display: inline-block;
	font-family: var(--pk-serif);
	font-size: 44px;
	font-weight: 650;
	line-height: 1;
	margin-right: 6px;
}

.ogt-pk-stat span {
	color: var(--pk-ink);
	font-weight: 600;
}

.ogt-pk-stat small {
	color: var(--pk-muted);
	display: block;
	font-size: 13px;
	margin-top: 6px;
}

.ogt-pk-sec {
	padding-block: clamp(72px, 9vw, 128px);
}

.ogt-pk-sec--tint {
	background: var(--pk-sage);
}

.ogt-pk-sec--dark {
	background: var(--pk-forest);
	color: rgba(255, 255, 255, .78);
}

.ogt-pk-sec--dark .ogt-pk-h2,
.ogt-pk-sec--dark .ogt-pk-num,
.ogt-pk-sec--dark .ogt-pk-kicker {
	color: #FFFFFF;
}

.ogt-pk-sec--dark .ogt-pk-muted {
	color: rgba(255, 255, 255, .65);
}

.ogt-pk-head {
	margin-bottom: clamp(36px, 4vw, 56px);
	max-width: 760px;
}

.ogt-pk-num {
	color: var(--pk-terra);
	font-size: 12.5px;
	font-weight: 600;
	letter-spacing: .14em;
	margin-bottom: 18px;
	text-transform: uppercase;
}

.ogt-pk-h2 {
	color: var(--pk-forest);
	font-family: var(--pk-serif);
	font-size: clamp(36px, 4.6vw, 62px);
	font-weight: 700;
	letter-spacing: -.035em;
	line-height: 1.05;
}

.ogt-pk-stays {
	display: grid;
	gap: 24px;
}

@media (min-width: 800px) {
	.ogt-pk-stays {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.ogt-pk-stay {
	background: var(--pk-paper);
	border: 1px solid var(--pk-line);
	border-radius: var(--ogt-r);
	overflow: hidden;
	transition: transform .35s var(--ogt-ease), box-shadow .35s;
}

.ogt-pk-stay:hover {
	box-shadow: 0 30px 60px -30px rgba(35, 63, 49, .4);
	transform: translateY(-4px);
}

.ogt-pk-stay__img img {
	aspect-ratio: 16 / 10;
	object-fit: cover;
	width: 100%;
}

.ogt-pk-stay__body {
	padding: 26px 28px 28px;
}

.ogt-pk-stay h3,
.ogt-pk-details h3 {
	color: var(--pk-forest);
	font-family: var(--pk-serif);
	font-size: 30px;
	font-weight: 650;
	margin: 10px 0 12px;
}

.ogt-pk-stay__meta {
	border-top: 1px solid var(--pk-line);
	color: var(--pk-ink);
	font-size: 14px;
	margin-top: 20px;
	padding-top: 16px;
}

.ogt-pk-note {
	color: var(--pk-muted);
	font-size: 14px;
	margin-top: 24px;
	max-width: 760px;
}

.ogt-pk-note span {
	color: var(--pk-terra);
}

.ogt-pk-rhythm,
.ogt-pk-steps {
	display: grid;
	gap: 22px;
	list-style: none;
	padding: 0;
}

@media (min-width: 800px) {
	.ogt-pk-rhythm {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.ogt-pk-steps {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.ogt-pk-rhythm li,
.ogt-pk-steps li {
	background: var(--pk-paper);
	border-radius: var(--ogt-r);
	padding: 28px;
}

.ogt-pk-rhythm span,
.ogt-pk-steps span {
	color: var(--pk-terra);
	font-family: var(--pk-serif);
	font-size: 34px;
}

.ogt-pk-rhythm h3,
.ogt-pk-steps h3 {
	color: var(--pk-forest);
	font-family: var(--pk-serif);
	font-size: 24px;
	font-weight: 650;
	margin: 14px 0 10px;
}

.ogt-pk-stamp {
	border: 1px solid currentColor;
	border-radius: 999px;
	color: var(--pk-forest);
	display: inline-block;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .14em;
	margin-top: 32px;
	padding: 8px 16px;
	text-transform: uppercase;
}

.ogt-pk-hosts {
	align-items: center;
	display: grid;
	gap: clamp(36px, 6vw, 80px);
}

@media (min-width: 900px) {
	.ogt-pk-hosts {
		grid-template-columns: minmax(0, 5fr) minmax(0, 6fr);
	}
}

.ogt-pk-hosts__photo {
	border-radius: var(--ogt-r);
	overflow: hidden;
	position: relative;
}

.ogt-pk-hosts__photo img {
	aspect-ratio: 4 / 4.4;
	object-fit: cover;
	width: 100%;
}

.ogt-pk-hosts__photo figcaption {
	bottom: 18px;
	color: #FFFFFF;
	font-family: var(--ogt-hand);
	font-size: 34px;
	left: 22px;
	position: absolute;
	text-shadow: 0 2px 14px rgba(0, 0, 0, .5);
}

.ogt-pk-pills {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	list-style: none;
	margin: 26px 0 14px;
	padding: 0;
}

.ogt-pk-pills li {
	background: var(--pk-sage);
	border-radius: 999px;
	color: var(--pk-forest);
	font-size: 14px;
	font-weight: 600;
	padding: 8px 14px;
}

.ogt-pk-wa {
	align-items: center;
	background: var(--pk-forest);
	border-radius: var(--ogt-r);
	color: rgba(255, 255, 255, .78) !important;
	display: flex;
	font-size: 14px;
	gap: 16px;
	margin-top: 26px;
	padding: 18px 20px;
	transition: transform .25s var(--ogt-ease);
}

.ogt-pk-wa:hover {
	transform: translateY(-3px);
}

.ogt-pk-wa strong {
	color: #FFFFFF;
	display: block;
	font-size: 16px;
}

.ogt-pk-wa__icon {
	align-items: center;
	background: #25D366;
	border-radius: 50%;
	color: #FFFFFF;
	display: flex;
	flex: none;
	height: 44px;
	justify-content: center;
	width: 44px;
}

.ogt-pk-wa > span:last-child {
	color: #FFFFFF;
	font-size: 20px;
	margin-left: auto;
}

.ogt-pk-exp {
	display: grid;
	gap: 20px;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.ogt-pk-exp__card {
	background: rgba(255, 255, 255, .06);
	border: 1px solid rgba(255, 255, 255, .14);
	border-radius: var(--ogt-r);
	color: rgba(255, 255, 255, .75);
	padding: 26px;
	transition: background .25s, transform .3s var(--ogt-ease);
}

.ogt-pk-exp__card:hover {
	background: rgba(255, 255, 255, .1);
	transform: translateY(-4px);
}

.ogt-pk-exp__card img {
	border-radius: 999px;
	margin-bottom: 16px;
}

.ogt-pk-exp__card h3 {
	color: #FFFFFF;
	font-family: var(--pk-serif);
	font-size: 26px;
	font-weight: 650;
	margin: 12px 0 10px;
}

.ogt-pk-exp__card--chapters ul {
	display: grid;
	gap: 14px;
	list-style: none;
	margin-top: 16px;
	padding: 0;
}

.ogt-pk-exp__card--chapters strong {
	color: #FFFFFF;
	display: block;
	font-family: var(--pk-serif);
	font-size: 22px;
	font-weight: 650;
}

.ogt-pk-exp__card--chapters span {
	font-size: 14px;
}

.ogt-pk-exp__price {
	color: #F2C9A8;
	display: inline-block;
	font-size: 13px;
	font-weight: 600;
	margin-top: 12px;
}

.ogt-pk-details {
	display: grid;
	gap: 22px;
}

@media (min-width: 800px) {
	.ogt-pk-details {
		grid-template-columns: 1fr 1fr;
	}
}

.ogt-pk-details > div {
	background: var(--pk-paper);
	border: 1px solid var(--pk-line);
	border-radius: var(--ogt-r);
	padding: 30px;
}

.ogt-pk-details > div:first-child {
	background: var(--pk-sage);
	border-color: transparent;
}

.ogt-pk-list {
	display: grid;
	gap: 12px;
	list-style: none;
	padding: 0;
}

.ogt-pk-list li {
	display: flex;
	gap: 12px;
}

.ogt-pk-list li::before {
	color: var(--pk-forest);
	content: "✓";
	font-weight: 700;
}

.ogt-pk-list--out li::before {
	color: var(--pk-muted);
	content: "—";
}

.ogt-pk-faq {
	display: grid;
	gap: 40px;
}

@media (min-width: 980px) {
	.ogt-pk-faq {
		grid-template-columns: minmax(0, 4fr) minmax(0, 7fr);
	}
}

.ogt-pk .ogt-faq summary {
	font-family: var(--pk-serif);
	font-size: 22px;
	font-weight: 650;
}

.ogt-pk-build .ogt-section--soft {
	background: var(--pk-forest);
}

.ogt-pk-build .ogt-pk-h2,
.ogt-pk-build .ogt-pk-num {
	color: #FFFFFF;
}

.ogt-pk-build .ogt-pk-muted {
	color: rgba(255, 255, 255, .7);
}

.ogt-pk-build .ogt-form-card,
.ogt-pk-build .ogt-book {
	border-color: transparent;
	border-radius: var(--ogt-r);
}

.ogt-pk-build .ogt-builder__step legend span {
	background: var(--pk-forest);
}

.ogt-pk-build .ogt-option input:checked + .ogt-option__box {
	background: var(--pk-sage);
	border-color: var(--pk-forest);
	box-shadow: none;
}

.ogt-pk-build .ogt-option input:checked + .ogt-option__box .ogt-option__tick {
	background-color: var(--pk-forest);
	border-color: var(--pk-forest);
}

.ogt-pk-build .ogt-btn {
	background: var(--pk-terra);
	border-color: var(--pk-terra);
	border-radius: 999px;
	box-shadow: none;
}

.ogt-pk-build .ogt-btn:hover {
	background: #9C4625;
	border-color: #9C4625;
}

.ogt-pk .ogt-sticky .ogt-btn {
	background: var(--pk-forest);
	border-color: var(--pk-forest);
	border-radius: 999px;
	box-shadow: none;
}


.ogt-pk-strip {
	background: var(--ogt-white);
	border: 0;
	box-shadow: var(--ogt-shadow-sm);
}

.ogt-pk-stat strong {
	color: var(--ogt-brand);
}

.ogt-pk-num {
	align-items: center;
	display: inline-flex;
	gap: 10px;
}

.ogt-pk-num::before {
	background: var(--ogt-brand);
	content: "";
	height: 2px;
	width: 28px;
}

.ogt-pk-sec--dark .ogt-pk-num::before {
	background: var(--ogt-sun);
}

.ogt-pk-sec--dark .ogt-pk-num {
	color: var(--ogt-sun);
}

.ogt-pk-sec--tint {
	background: var(--ogt-soft);
}

.ogt-pk-sec--dark {
	background: var(--ogt-topo), var(--ogt-brand-900);
}

.ogt-pk-stay {
	border: 0;
	box-shadow: var(--ogt-shadow);
}

.ogt-pk-stay__img {
	overflow: hidden;
}

.ogt-pk-stay__img img {
	transition: transform .9s var(--ogt-ease);
}

.ogt-pk-stay:hover .ogt-pk-stay__img img {
	transform: scale(1.06);
}

.ogt-pk-rhythm li,
.ogt-pk-steps li {
	box-shadow: var(--ogt-shadow-sm);
	transition: transform .35s var(--ogt-ease), box-shadow .35s;
}

.ogt-pk-rhythm li:hover,
.ogt-pk-steps li:hover {
	box-shadow: var(--ogt-shadow);
	transform: translateY(-4px);
}

.ogt-pk-rhythm span,
.ogt-pk-steps span {
	align-items: center;
	background: var(--ogt-brand-50);
	border-radius: 50%;
	color: var(--ogt-brand);
	display: inline-flex;
	font-size: 20px;
	font-weight: 700;
	height: 48px;
	justify-content: center;
	width: 48px;
}

.ogt-pk-wa {
	background: var(--ogt-navy);
}

.ogt-pk-exp__price {
	color: var(--ogt-sun);
}

.ogt-pk-build .ogt-section--soft {
	background: var(--ogt-topo), var(--ogt-navy);
}

.ogt-pk-build .ogt-btn {
	background: var(--ogt-brand);
	border-color: var(--ogt-brand);
	border-radius: 999px;
	box-shadow: var(--ogt-shadow-brand);
}

.ogt-pk-build .ogt-btn:hover {
	background: var(--ogt-brand-600);
	border-color: var(--ogt-brand-600);
}

.ogt-pk .ogt-sticky .ogt-btn {
	background: var(--ogt-brand);
	border-color: var(--ogt-brand);
	border-radius: 999px;
}

/* Keep fieldset legends inside the card instead of on its border. */
fieldset.ogt-builder__step > legend {
	float: left;
	width: 100%;
}

fieldset.ogt-builder__step > legend + * {
	clear: both;
}

/* =====================================================================
   v3 — interaction layer (hero spotlight, flight path, tilt, magnetic,
   cursor). Pointer-only, transform/opacity only, off for reduced motion.
   ===================================================================== */

.ogt-hero-home__glow {
	background: radial-gradient(420px circle at var(--mx, 30%) var(--my, 40%), rgba(26, 137, 117, .16), transparent 70%);
	inset: 0;
	opacity: 0;
	pointer-events: none;
	position: absolute;
	transition: opacity .5s;
	z-index: 0;
}

.ogt-hero-home.is-live .ogt-hero-home__glow {
	opacity: 1;
}

.ogt-hero-home__grid {
	position: relative;
	z-index: 1;
}

.ogt-rotator {
	color: var(--ogt-brand);
	display: inline-block;
	font-weight: 700;
	transition: transform .3s var(--ogt-ease);
}

.ogt-rotator.is-out {
	transform: translateY(8px);
}

.ogt-hot {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 16px;
}

.ogt-hot span {
	color: var(--ogt-muted);
	font-size: 13px;
	font-weight: 600;
	margin-right: 4px;
}

.ogt-hot a {
	background: rgba(255, 255, 255, .75);
	backdrop-filter: blur(8px);
	border: 1px solid var(--ogt-line);
	border-radius: 999px;
	color: var(--ogt-ink);
	font-size: 13.5px;
	font-weight: 600;
	padding: 6px 14px;
	transition: background .25s, color .25s, transform .25s var(--ogt-spring), border-color .25s;
}

.ogt-hot a:hover {
	background: var(--ogt-brand);
	border-color: var(--ogt-brand);
	color: #FFFFFF;
	transform: translateY(-2px);
}

.ogt-flight {
	filter: drop-shadow(0 2px 6px rgba(5, 11, 25, .35));
	height: 100%;
	inset: 0;
	position: absolute;
	width: 100%;
}

.ogt-flight__path {
	animation: ogt-dash 30s linear infinite;
	stroke: #FFFFFF;
	stroke-dasharray: 2 11;
	stroke-linecap: round;
	stroke-width: 3;
}

.ogt-flight circle {
	fill: #FFFFFF;
	stroke: var(--ogt-brand);
	stroke-width: 3;
}

.ogt-flight__plane {
	animation: ogt-fly 9s var(--ogt-ease) infinite;
	color: #FFFFFF;
	filter: drop-shadow(0 4px 10px rgba(5, 11, 25, .45));
	left: 0;
	offset-path: path("M40 560 C -20 420, -10 200, 120 110 S 390 -20, 492 96");
	offset-rotate: auto;
	position: absolute;
	top: 0;
}

.ogt-flight__plane .ogt-icon {
	fill: currentColor;
	height: 26px;
	stroke: none;
	width: 26px;
}

@keyframes ogt-dash {
	to { stroke-dashoffset: -600; }
}

@keyframes ogt-fly {
	0% { offset-distance: 0%; opacity: 0; }
	8% { opacity: 1; }
	85% { opacity: 1; }
	100% { offset-distance: 100%; opacity: 0; }
}

.ogt-float-card {
	transition: translate .5s var(--ogt-ease);
	translate: var(--px, 0) var(--py, 0);
}

/* Card tilt + glare (JS adds .ogt-tilt and the glare span). */
.ogt-tilt {
	transform-style: preserve-3d;
	will-change: transform;
}

.ogt-glare {
	background: radial-gradient(360px circle at var(--gx, 50%) var(--gy, 50%), rgba(255, 255, 255, .28), transparent 60%);
	border-radius: inherit;
	inset: 0;
	opacity: 0;
	pointer-events: none;
	position: absolute;
	transition: opacity .3s;
	z-index: 3;
}

.ogt-tilt:hover > .ogt-glare {
	opacity: 1;
}

/* Magnetic buttons use the translate property so hover transforms still compose. */
.ogt-btn {
	transition: translate .35s var(--ogt-spring), background .25s, box-shadow .25s, transform .25s var(--ogt-ease), color .25s, border-color .25s;
	translate: var(--bx, 0) var(--by, 0);
}

.ogt-btn .ogt-icon {
	transition: transform .3s var(--ogt-spring);
}

.ogt-btn:hover .ogt-icon,
.ogt-link:hover .ogt-icon {
	transform: translateX(4px);
}

/* Prose links fill from below. */
.ogt-prose a:not(.ogt-btn) {
	background: linear-gradient(var(--ogt-brand-100), var(--ogt-brand-100)) no-repeat 0 100% / 100% 2px;
	text-decoration: none;
	transition: background-size .3s var(--ogt-ease);
}

.ogt-prose a:not(.ogt-btn):hover {
	background-size: 100% 100%;
}

/* Soft cursor ring (fine pointers only, created by JS). */
.ogt-cursor {
	border: 1.5px solid var(--ogt-brand);
	border-radius: 50%;
	height: 34px;
	left: 0;
	margin: -17px 0 0 -17px;
	opacity: 0;
	pointer-events: none;
	position: fixed;
	top: 0;
	transition: width .25s var(--ogt-ease), height .25s var(--ogt-ease), margin .25s var(--ogt-ease), background .25s, opacity .3s, border-color .25s;
	width: 34px;
	z-index: 9999;
}

.ogt-cursor.is-on {
	opacity: .8;
}

.ogt-cursor.is-link {
	background: rgba(26, 137, 117, .12);
	border-color: transparent;
	height: 56px;
	margin: -28px 0 0 -28px;
	width: 56px;
}

.ogt-cursor.is-dark {
	border-color: var(--ogt-sun);
}

@media (prefers-reduced-motion: reduce) {
	.ogt-flight__path,
	.ogt-flight__plane {
		animation: none;
	}

	.ogt-flight__plane {
		display: none;
	}
}


/* Package hero: immersive photo, one header, booking card on the right. */
.ogt-pk-hero {
	align-items: flex-end;
	color: #FFFFFF;
	display: flex;
	isolation: isolate;
	min-height: clamp(600px, 88vh, 860px);
	overflow: hidden;
	padding-block: clamp(48px, 6vw, 80px) clamp(96px, 10vw, 140px);
	position: relative;
}

.ogt-pk-hero__bg {
	inset: 0;
	position: absolute;
	z-index: -1;
}

.ogt-pk-hero__bg img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.ogt-pk-hero__bg::after {
	background: linear-gradient(90deg, rgba(5, 11, 25, .82) 0%, rgba(5, 11, 25, .55) 45%, rgba(5, 11, 25, .15) 75%), linear-gradient(0deg, rgba(5, 11, 25, .55), transparent 45%);
	content: "";
	inset: 0;
	position: absolute;
}

.ogt-pk-hero__grid {
	align-items: end;
	display: grid;
	gap: 40px;
	width: 100%;
}

@media (min-width: 1000px) {
	.ogt-pk-hero__grid {
		grid-template-columns: minmax(0, 1fr) 380px;
	}
}

.ogt-pk-hero .ogt-crumbs,
.ogt-pk-hero .ogt-crumbs a,
.ogt-pk-hero .ogt-crumbs [aria-current] {
	color: rgba(255, 255, 255, .75);
}

.ogt-pk-hero .ogt-pk-kicker {
	color: var(--ogt-sun);
	margin-top: 22px;
}

.ogt-pk-hero .ogt-pk-kicker::before {
	background: var(--ogt-sun);
	border-radius: 50%;
	content: "";
	height: 7px;
	width: 7px;
}

.ogt-pk-title {
	color: #FFFFFF;
	font-family: var(--ogt-display);
	font-size: clamp(44px, 6.4vw, 96px);
	font-weight: 800;
	letter-spacing: -.04em;
	line-height: .98;
	margin: 18px 0 0;
	max-width: 760px;
}

.ogt-pk-title em {
	color: var(--ogt-sun);
	display: block;
	font-family: var(--ogt-hand);
	font-size: 1.05em;
	font-style: normal;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1;
	margin-top: 6px;
}

.ogt-pk-lead {
	color: rgba(255, 255, 255, .86);
	font-size: clamp(17px, 1.5vw, 20px);
	line-height: 1.6;
	margin-top: 22px;
	max-width: 560px;
}

.ogt-pk-jump {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 30px;
}

.ogt-pk-jump a {
	backdrop-filter: blur(10px);
	background: rgba(255, 255, 255, .12);
	border: 1px solid rgba(255, 255, 255, .25);
	border-radius: 999px;
	color: #FFFFFF;
	font-size: 14.5px;
	font-weight: 600;
	padding: 9px 18px;
	transition: background .25s, color .25s, transform .25s var(--ogt-spring);
}

.ogt-pk-jump a:hover {
	background: #FFFFFF;
	color: var(--ogt-ink);
	transform: translateY(-2px);
}

.ogt-pk-card {
	backdrop-filter: blur(18px) saturate(1.4);
	background: rgba(255, 255, 255, .94);
	border-radius: var(--ogt-r-lg);
	box-shadow: var(--ogt-shadow-lg);
	color: var(--ogt-body);
	padding: 28px;
}

.ogt-pk-card__label {
	color: var(--ogt-brand);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .14em;
	text-transform: uppercase;
}

.ogt-pk-card__title {
	color: var(--ogt-ink);
	font-family: var(--ogt-display);
	font-size: 26px;
	font-weight: 800;
	letter-spacing: -.02em;
	margin: 6px 0 16px;
}

.ogt-pk-card__facts {
	border-block: 1px solid var(--ogt-line);
	display: grid;
	gap: 10px;
	list-style: none;
	margin: 0 0 20px;
	padding: 16px 0;
}

.ogt-pk-card__facts li {
	align-items: baseline;
	display: flex;
	gap: 10px;
}

.ogt-pk-card__facts strong {
	color: var(--ogt-brand);
	font-family: var(--ogt-display);
	font-size: 24px;
	font-weight: 800;
	min-width: 36px;
}

.ogt-pk-card__wa {
	align-items: center;
	color: var(--ogt-ink);
	display: flex;
	font-size: 14.5px;
	font-weight: 600;
	gap: 8px;
	justify-content: center;
	margin-top: 14px;
}

.ogt-pk-card__wa .ogt-icon {
	color: #25D366;
}

.ogt-pk-card__note {
	color: var(--ogt-muted);
	font-size: 13px;
	margin-top: 12px;
	text-align: center;
}

/* Highlights float over the hero's lower edge. */
.ogt-pk-strip {
	border-radius: var(--ogt-r-lg);
	box-shadow: var(--ogt-shadow-lg);
	margin: -64px auto 0;
	max-width: calc(var(--ogt-wrap) - 2 * var(--ogt-gutter));
	padding: 28px 32px;
	position: relative;
	width: calc(100% - 2 * var(--ogt-gutter));
	z-index: 2;
}

.ogt-pk-strip .ogt-wrap {
	padding: 0;
}

@media (max-width: 999px) {
	.ogt-pk-hero {
		min-height: 0;
		padding-top: 40px;
	}
}

/* Desktop: the booking bar floats as a compact pill once past the hero. */
@media (min-width: 1100px) {
	.ogt-pk .ogt-sticky {
		border: 0;
		border-radius: 999px;
		bottom: 24px;
		box-shadow: var(--ogt-shadow-lg);
		display: flex;
		left: auto;
		opacity: 0;
		padding: 10px 10px 10px 26px;
		pointer-events: none;
		right: 24px;
		transform: translateY(20px);
		transition: opacity .35s, transform .35s var(--ogt-ease);
	}

	.ogt-pk .ogt-sticky.is-shown {
		opacity: 1;
		pointer-events: auto;
		transform: none;
	}
}

/* Home hero v4: clean light canvas, the founders in an arched frame,
   stat cards and the flight path orbit the frame instead of covering faces. */
.ogt-hero-home {
	background:
		radial-gradient(520px 420px at 82% 40%, rgba(26, 137, 117, .16), transparent 70%),
		radial-gradient(380px 300px at 96% 92%, rgba(255, 194, 75, .2), transparent 70%),
		var(--ogt-cream);
	min-height: 0;
	padding-block: clamp(48px, 7vw, 96px);
}

.ogt-hero-home::before {
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='600' height='600' viewBox='0 0 600 600' fill='none' stroke='%230F5A4C' stroke-opacity='.07' stroke-width='1.2'%3E%3Cpath d='M-20 120c80-40 160 40 240 0s160-80 240-20 160 60 160 60'/%3E%3Cpath d='M-20 170c90-50 170 30 250-10s150-70 230-10 160 50 160 50'/%3E%3Cpath d='M-20 220c100-60 180 20 260-20s140-60 220 0 160 40 160 40'/%3E%3Cpath d='M-20 330c70 30 150-30 230 10s170 70 250 20 160-40 160-40'/%3E%3Cpath d='M-20 380c80 30 160-20 240 20s160 60 240 10 160-30 160-30'/%3E%3Cpath d='M-20 430c90 30 170-10 250 30s150 50 230 0 160-20 160-20'/%3E%3Ccircle cx='450' cy='520' r='40'/%3E%3Ccircle cx='450' cy='520' r='70'/%3E%3Ccircle cx='450' cy='520' r='100'/%3E%3C/svg%3E");
	content: "";
	inset: 0;
	-webkit-mask-image: linear-gradient(90deg, transparent, #000 60%);
	mask-image: linear-gradient(90deg, transparent, #000 60%);
	pointer-events: none;
	position: absolute;
	z-index: 0;
}

.ogt-hero-home__glow {
	background: radial-gradient(380px circle at var(--mx, 30%) var(--my, 40%), rgba(26, 137, 117, .12), transparent 70%);
}

@media (min-width: 1000px) {
	.ogt-hero-home__grid {
		grid-template-columns: minmax(0, 1fr) 520px;
	}
}

.ogt-hero-home__float {
	display: block;
	height: auto;
	margin-inline: auto;
	max-width: 520px;
	position: relative;
	width: 100%;
}

@media (min-width: 1000px) {
	.ogt-hero-home__float {
		height: 600px;
		width: 520px;
	}
}

.ogt-hero-home__frame {
	aspect-ratio: 400 / 540;
	border: 8px solid #FFFFFF;
	border-radius: 240px 240px 36px 36px;
	box-shadow: var(--ogt-shadow-lg);
	margin: 0 auto;
	overflow: hidden;
	width: min(400px, 82%);
}

@media (min-width: 1000px) {
	.ogt-hero-home__frame {
		left: 64px;
		position: absolute;
		top: 30px;
		width: 400px;
	}
}

.ogt-hero-home__frame img {
	height: 100%;
	object-fit: cover;
	object-position: 62% 30%;
	transition: transform 1.2s var(--ogt-ease);
	width: 100%;
}

.ogt-hero-home__frame:hover img {
	transform: scale(1.05);
}

.ogt-flight,
.ogt-flight__plane {
	display: none;
}

@media (min-width: 1000px) {
	.ogt-flight,
	.ogt-flight__plane {
		display: block;
	}

	.ogt-flight {
		height: 600px;
		width: 520px;
	}
}

.ogt-flight__path {
	stroke: var(--ogt-brand);
	stroke-opacity: .7;
}

.ogt-flight {
	filter: none;
}

.ogt-flight__plane {
	color: var(--ogt-brand);
	filter: drop-shadow(0 4px 8px rgba(26, 137, 117, .35));
}

.ogt-float-card {
	background: rgba(255, 255, 255, .96);
	display: none;
}

@media (min-width: 1000px) {
	.ogt-float-card {
		display: flex;
	}

	.ogt-float-card--a {
		left: -56px;
		right: auto;
		top: 150px;
	}

	.ogt-float-card--b {
		right: -36px;
		top: 330px;
	}

	.ogt-float-card--c {
		bottom: 30px;
		left: 6px;
	}
}

@media (max-width: 999px) {
	.ogt-hero-home::before {
		display: none;
	}
}

/* One field style everywhere: forms, insurance, builder, WooCommerce. */
body .ogt-main :is(input:not([type]), input[type="text"], input[type="email"], input[type="tel"], input[type="number"], input[type="date"], input[type="password"], input[type="url"], input[type="search"], select, textarea):not(.ogt-plain):not(:is(.ogt-where, .ogt-stepper, .ogt-subscribe, .ogt-iq__person, .wc-block-components-form, .wc-block-cart, .wc-block-checkout, .wc-block-components-totals-coupon, .wc-block-components-quantity-selector) *) {
	-webkit-appearance: none;
	appearance: none;
	background-color: var(--ogt-white);
	border: 1.5px solid #D9DEE5;
	border-radius: 14px;
	box-shadow: none;
	color: var(--ogt-ink);
	font: 500 16px/1.4 var(--ogt-text);
	height: auto;
	min-height: 54px;
	padding: 14px 16px;
	transition: border-color .2s, box-shadow .2s, background-color .2s;
	width: 100%;
}

body .ogt-main select:not(.ogt-plain):not(:is(.ogt-where, .ogt-stepper, .ogt-subscribe, .ogt-iq__person, .wc-block-components-form, .wc-block-cart, .wc-block-checkout, .wc-block-components-totals-coupon, .wc-block-components-quantity-selector) *) {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none' stroke='%23687586' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E");
	background-position: right 16px center;
	background-repeat: no-repeat;
	padding-right: 44px;
}

body .ogt-main textarea:not(.ogt-plain):not(:is(.ogt-where, .ogt-stepper, .ogt-subscribe, .ogt-iq__person, .wc-block-components-form, .wc-block-cart, .wc-block-checkout, .wc-block-components-totals-coupon, .wc-block-components-quantity-selector) *) {
	min-height: 120px;
}

body .ogt-main :is(input, select, textarea):not(.ogt-plain):not(:is(.ogt-where, .ogt-stepper, .ogt-subscribe, .ogt-iq__person, .wc-block-components-form, .wc-block-cart, .wc-block-checkout, .wc-block-components-totals-coupon, .wc-block-components-quantity-selector) *):hover {
	border-color: #BFC7D2;
}

body .ogt-main :is(input, select, textarea):not(.ogt-plain):not(:is(.ogt-where, .ogt-stepper, .ogt-subscribe, .ogt-iq__person, .wc-block-components-form, .wc-block-cart, .wc-block-checkout, .wc-block-components-totals-coupon, .wc-block-components-quantity-selector) *):focus {
	background-color: var(--ogt-white);
	border-color: var(--ogt-brand);
	box-shadow: 0 0 0 4px rgba(26, 137, 117, .14);
	outline: none;
}

body .ogt-main input::placeholder,
body .ogt-main textarea::placeholder {
	color: #9AA4B2;
}

body .ogt-main input[type="checkbox"]:not(.ogt-plain):not(:is(.ogt-where, .ogt-stepper, .ogt-subscribe, .ogt-iq__person, .wc-block-components-form, .wc-block-cart, .wc-block-checkout, .wc-block-components-totals-coupon, .wc-block-components-quantity-selector) *),
body .ogt-main input[type="radio"]:not(.ogt-plain):not(:is(.ogt-where, .ogt-stepper, .ogt-subscribe, .ogt-iq__person, .wc-block-components-form, .wc-block-cart, .wc-block-checkout, .wc-block-components-totals-coupon, .wc-block-components-quantity-selector) *) {
	accent-color: var(--ogt-brand);
	height: 20px;
	min-height: 0;
	width: 20px;
}

/* Account: sign in / create account */
.ogt-auth2 {
	background: var(--ogt-cream);
	display: grid;
	min-height: calc(100vh - var(--ogt-header));
}

@media (min-width: 960px) {
	.ogt-auth2 {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	}
}

.ogt-auth2__panel {
	align-items: flex-end;
	background: var(--ogt-topo), var(--ogt-brand-900);
	color: rgba(255, 255, 255, .82);
	display: flex;
	isolation: isolate;
	min-height: 340px;
	overflow: hidden;
	padding: clamp(32px, 5vw, 64px);
	position: relative;
}

.ogt-auth2__photo {
	height: 100%;
	inset: 0;
	object-fit: cover;
	position: absolute;
	width: 100%;
	z-index: -2;
}

.ogt-auth2__panel::after {
	background: linear-gradient(0deg, rgba(7, 54, 45, .95) 0%, rgba(7, 54, 45, .7) 45%, rgba(7, 54, 45, .15) 100%);
	content: "";
	inset: 0;
	position: absolute;
	z-index: -1;
}

.ogt-auth2__copy {
	max-width: 520px;
}

.ogt-auth2__title {
	color: #FFFFFF;
	font-family: var(--ogt-display);
	font-size: clamp(34px, 4vw, 54px);
	font-weight: 800;
	letter-spacing: -.035em;
	line-height: 1.02;
	margin: 18px 0 26px;
}

.ogt-auth2__title em {
	color: var(--ogt-sun);
	display: block;
	font-family: var(--ogt-hand);
	font-size: 1.1em;
	font-style: normal;
	font-weight: 600;
	letter-spacing: 0;
}

.ogt-auth2__list {
	display: grid;
	gap: 14px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.ogt-auth2__list li {
	align-items: center;
	display: flex;
	font-size: 16px;
	gap: 14px;
}

.ogt-auth2__list .ogt-icon {
	background: rgba(255, 255, 255, .12);
	border-radius: 12px;
	box-sizing: content-box;
	color: var(--ogt-sun);
	flex: none;
	padding: 9px;
}

.ogt-auth2__sign {
	color: rgba(255, 255, 255, .7);
	font-family: var(--ogt-hand);
	font-size: 24px;
	margin-top: 28px;
}

@media (max-width: 959px) {
	.ogt-auth2__list,
	.ogt-auth2__sign {
		display: none;
	}
}

.ogt-auth2__form {
	align-items: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: clamp(32px, 5vw, 72px) var(--ogt-gutter);
}

.ogt-auth2__form > * {
	max-width: 440px;
	width: 100%;
}

.ogt-auth2__form .woocommerce-notices-wrapper:empty {
	display: none;
}

.ogt-authbox__tabs {
	background: #EFEBE3;
	border-radius: 999px;
	display: grid;
	gap: 4px;
	grid-template-columns: 1fr 1fr;
	margin-bottom: 32px;
	padding: 5px;
}

.ogt-authbox__tabs button {
	background: transparent;
	border: 0;
	border-radius: 999px;
	color: var(--ogt-muted);
	cursor: pointer;
	font: 600 15px var(--ogt-text);
	padding: 12px;
	transition: background .25s, color .25s, box-shadow .25s;
}

.ogt-authbox__tabs button[aria-selected="true"] {
	background: #FFFFFF;
	box-shadow: var(--ogt-shadow-sm);
	color: var(--ogt-ink);
}

.js .ogt-authbox__pane:not(.is-active) {
	display: none;
}

.ogt-authbox__pane.is-active {
	animation: ogt-rise .45s var(--ogt-ease) both;
}

.ogt-authbox__title {
	color: var(--ogt-ink);
	font-family: var(--ogt-display);
	font-size: 32px;
	font-weight: 800;
	letter-spacing: -.03em;
}

.ogt-authbox__sub {
	color: var(--ogt-muted);
	margin: 6px 0 26px;
}

.ogt-authbox form {
	display: grid;
	gap: 18px;
}

.ogt-authbox .ogt-field label {
	align-items: center;
	display: flex;
	justify-content: space-between;
}

.ogt-authbox__forgot {
	color: var(--ogt-brand);
	font-size: 14px;
	font-weight: 600;
}

.ogt-authbox__remember {
	align-items: center;
	color: var(--ogt-body);
	cursor: pointer;
	display: flex;
	font-size: 15px;
	gap: 10px;
}

.ogt-authbox__hint {
	align-items: center;
	background: var(--ogt-brand-50);
	border-radius: 12px;
	color: var(--ogt-brand-700);
	display: flex;
	font-size: 14.5px;
	gap: 10px;
	padding: 12px 14px;
}

.ogt-authbox .ogt-btn {
	justify-content: center;
	min-height: 54px;
}

.ogt-authbox__switch {
	color: var(--ogt-muted);
	font-size: 15px;
	margin-top: 22px;
	text-align: center;
}

.ogt-authbox__switch button {
	background: none;
	border: 0;
	color: var(--ogt-brand);
	cursor: pointer;
	font: inherit;
	font-weight: 600;
	padding: 0;
}

.ogt-authbox .woocommerce-privacy-policy-text {
	color: var(--ogt-muted);
	font-size: 13px;
}

.ogt-pk-card__stays {
	border-block: 1px solid var(--ogt-line);
	display: grid;
	gap: 10px;
	list-style: none;
	margin: 0 0 20px;
	padding: 16px 0;
}

.ogt-pk-card__stays li {
	align-items: center;
	color: var(--ogt-ink);
	display: flex;
	font-weight: 600;
	gap: 10px;
}

.ogt-pk-card__stays .ogt-icon {
	color: var(--ogt-brand);
}

.ogt-pk-title em {
	font-size: .92em;
}

.ogt-hero-home__frame img {
	object-position: 84% 35%;
}

.ogt-auth2 .ogt-auth2__photo {
	height: 100%;
	max-width: none;
	width: 100%;
}

.ogt-authbox form.login,
.ogt-authbox form.register {
	border: 0;
	border-radius: 0;
	margin: 0;
	padding: 0;
}

@media (min-width: 1000px) {
	.ogt-float-card--b {
		right: -70px;
		top: 440px;
	}
}

/* Highlights strip v2: intro + icon tiles. */
.ogt-pk-strip {
	padding: 22px;
}

@media (min-width: 980px) {
	.ogt-pk-strip__inner {
		grid-template-columns: 240px minmax(0, 1fr);
	}
}

.ogt-pk-strip__head {
	padding: 10px 6px;
}

.ogt-pk-strip__head .ogt-pk-kicker {
	color: var(--ogt-brand);
	line-height: 1.5;
}

.ogt-pk-strip__items {
	gap: 12px;
	grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
}

.ogt-pk-stat {
	background: var(--ogt-cream);
	border: 0;
	border-radius: 18px;
	display: grid;
	gap: 2px;
	grid-template-columns: auto 1fr;
	align-items: baseline;
	padding: 18px 20px;
	transition: background .3s, transform .3s var(--ogt-ease);
}

.ogt-pk-stat:hover {
	background: var(--ogt-brand-50);
	transform: translateY(-3px);
}

.ogt-pk-stat__icon {
	align-items: center;
	background: #FFFFFF;
	border-radius: 12px;
	box-shadow: var(--ogt-shadow-sm);
	color: var(--ogt-brand);
	display: flex;
	grid-column: 1 / -1;
	height: 40px;
	justify-content: center;
	margin-bottom: 12px;
	width: 40px;
}

.ogt-pk-stat strong {
	color: var(--ogt-ink);
	font-size: 40px;
	font-weight: 800;
	letter-spacing: -.03em;
	margin-right: 8px;
}

.ogt-pk-stat > span:not(.ogt-pk-stat__icon) {
	color: var(--ogt-ink);
	font-size: 16px;
	font-weight: 700;
}

.ogt-pk-stat .ogt-pk-stat__word {
	font-size: 22px;
	grid-column: 1 / -1;
	line-height: 1.15;
	margin: 0;
	padding-top: 6px;
}

.ogt-pk-stat small {
	grid-column: 1 / -1;
	margin-top: 4px;
}

.ogt-pk-stat {
	align-content: start;
}

/* Member billing + payment rows */
.ogt-billing {
	align-items: center;
	display: grid;
	gap: 18px;
	grid-template-columns: auto minmax(0, 1fr);
	margin: 22px 0 28px;
}

@media (min-width: 720px) {
	.ogt-billing {
		grid-template-columns: auto minmax(0, 1fr) auto;
	}
}

.ogt-billing__icon {
	align-items: center;
	background: var(--ogt-brand-50);
	border-radius: 16px;
	color: var(--ogt-brand);
	display: flex;
	height: 52px;
	justify-content: center;
	width: 52px;
}

.ogt-billing h3 {
	font-family: var(--ogt-display);
	font-size: 20px;
	font-weight: 800;
}

.ogt-billing p {
	color: var(--ogt-muted);
	margin-top: 4px;
}

.ogt-billing__actions {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	grid-column: 1 / -1;
}

@media (min-width: 720px) {
	.ogt-billing__actions {
		grid-column: auto;
	}
}

.ogt-billing__actions form {
	margin: 0;
}

.ogt-billing__actions button.ogt-link {
	background: none;
	border: 0;
	cursor: pointer;
	font: inherit;
	padding: 0;
}

.ogt-link--danger {
	color: #B42318 !important;
}

.ogt-request__pay {
	align-items: center;
	background: var(--ogt-soft);
	border-radius: 14px;
	display: flex;
	gap: 16px;
	justify-content: space-between;
	margin-top: 14px;
	padding: 14px 16px;
}

.ogt-request__pay.is-due {
	background: #FFF6E5;
	box-shadow: inset 0 0 0 1px rgba(255, 194, 75, .6);
}

.ogt-request__pay strong {
	color: var(--ogt-ink);
	display: block;
}

.ogt-request__pay small {
	color: var(--ogt-muted);
}

/* =====================================================================
   Home hero v5: postcard photo, boarding pass, "your journey" card.
   ===================================================================== */
.ogt-postcard {
	background: #FFFFFF;
	border-radius: 22px;
	box-shadow: var(--ogt-shadow-lg);
	margin: 0 auto;
	padding: 12px 12px 54px;
	position: relative;
	transform: rotate(-2.5deg);
	transition: transform .6s var(--ogt-ease), translate .5s var(--ogt-ease);
	translate: var(--px, 0) var(--py, 0);
	width: min(420px, 88%);
}

.ogt-postcard:hover {
	transform: rotate(0) scale(1.01);
}

.ogt-postcard img {
	aspect-ratio: 4 / 4.6;
	border-radius: 14px;
	height: auto;
	object-fit: cover;
	object-position: 84% 30%;
	width: 100%;
}

.ogt-postcard figcaption {
	bottom: 10px;
	color: var(--ogt-brand-700);
	font-family: var(--ogt-hand);
	font-size: 26px;
	left: 22px;
	position: absolute;
}

.ogt-postcard::after {
	/* postage stamp */
	background: repeating-linear-gradient(45deg, var(--ogt-brand) 0 6px, var(--ogt-brand-600) 6px 12px);
	border: 3px dotted #FFFFFF;
	border-radius: 6px;
	bottom: 12px;
	content: "";
	height: 34px;
	opacity: .9;
	position: absolute;
	right: 18px;
	width: 28px;
}

@media (min-width: 1000px) {
	.ogt-postcard {
		left: 60px;
		margin: 0;
		position: absolute;
		top: 10px;
		width: 420px;
	}
}

/* Boarding pass */
.ogt-pass {
	background: #FFFFFF;
	border-radius: 16px;
	box-shadow: var(--ogt-shadow);
	display: none;
	padding: 14px 64px 14px 18px;
	position: absolute;
	right: -24px;
	top: 46px;
	transform: rotate(5deg);
	transition: translate .5s var(--ogt-ease);
	translate: var(--px, 0) var(--py, 0);
	-webkit-mask: radial-gradient(circle 9px at calc(100% - 50px) 0, transparent 98%, #000) top / 100% 51% no-repeat, radial-gradient(circle 9px at calc(100% - 50px) 100%, transparent 98%, #000) bottom / 100% 51% no-repeat;
	mask: radial-gradient(circle 9px at calc(100% - 50px) 0, transparent 98%, #000) top / 100% 51% no-repeat, radial-gradient(circle 9px at calc(100% - 50px) 100%, transparent 98%, #000) bottom / 100% 51% no-repeat;
	z-index: 2;
}

@media (min-width: 1000px) {
	.ogt-pass {
		display: block;
	}
}

.ogt-pass__label {
	color: var(--ogt-muted);
	display: block;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .14em;
	text-transform: uppercase;
}

.ogt-pass strong {
	color: var(--ogt-ink);
	display: block;
	font-family: var(--ogt-display);
	font-size: 24px;
	font-weight: 800;
	letter-spacing: -.02em;
	line-height: 1.15;
}

.ogt-pass__meta {
	color: var(--ogt-brand-700);
	font-size: 13px;
	font-weight: 600;
}

.ogt-pass__stub {
	align-items: center;
	border-left: 2px dashed var(--ogt-line);
	bottom: 0;
	color: var(--ogt-brand);
	display: flex;
	justify-content: center;
	position: absolute;
	right: 0;
	top: 0;
	width: 50px;
}

/* Journey card */
.ogt-journey {
	background: rgba(255, 255, 255, .96);
	backdrop-filter: blur(14px);
	border-radius: 22px;
	box-shadow: var(--ogt-shadow-lg);
	margin: -40px auto 0;
	max-width: 330px;
	padding: 18px 18px 14px;
	position: relative;
	transition: translate .5s var(--ogt-ease);
	translate: var(--px, 0) var(--py, 0);
	z-index: 3;
}

@media (min-width: 1000px) {
	.ogt-journey {
		bottom: 0;
		left: -70px;
		margin: 0;
		position: absolute;
		width: 310px;
	}
}

.ogt-journey__head {
	align-items: center;
	display: flex;
	font-size: 12px;
	font-weight: 700;
	justify-content: space-between;
	letter-spacing: .12em;
	margin-bottom: 10px;
	text-transform: uppercase;
}

.ogt-journey__head span:first-child {
	color: var(--ogt-ink);
}

.ogt-journey__live {
	color: var(--ogt-brand);
	font-size: 11px;
}

.ogt-journey__steps {
	display: grid;
	gap: 4px;
	list-style: none;
	margin: 0;
	padding: 0;
	position: relative;
	z-index: 1;
}

.ogt-journey__step a {
	align-items: center;
	border-radius: 14px;
	color: inherit;
	display: flex;
	gap: 12px;
	padding: 8px;
	transition: background .35s;
}

.ogt-journey__step a:hover {
	background: var(--ogt-soft);
}

.ogt-journey__icon {
	align-items: center;
	background: var(--ogt-soft);
	border-radius: 12px;
	color: var(--ogt-muted);
	display: flex;
	flex: none;
	height: 40px;
	justify-content: center;
	transition: background .4s, color .4s, transform .4s var(--ogt-spring), box-shadow .4s;
	width: 40px;
}

.ogt-journey__text {
	display: grid;
	flex: 1;
	min-width: 0;
}

.ogt-journey__text strong {
	color: var(--ogt-muted);
	font-size: 15px;
	transition: color .4s;
}

.ogt-journey__text small {
	color: var(--ogt-muted);
	font-size: 12.5px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.ogt-journey__tick {
	align-items: center;
	background: var(--ogt-brand);
	border-radius: 50%;
	color: #FFFFFF;
	display: flex;
	flex: none;
	height: 22px;
	justify-content: center;
	opacity: 0;
	transform: scale(.4);
	transition: opacity .3s, transform .4s var(--ogt-spring);
	width: 22px;
}

.ogt-journey__tick .ogt-icon {
	height: 13px;
	width: 13px;
}

.ogt-journey__step.is-active .ogt-journey__icon {
	background: var(--ogt-brand);
	box-shadow: 0 8px 20px -6px rgba(26, 137, 117, .6);
	color: #FFFFFF;
	transform: scale(1.08);
}

.ogt-journey__step.is-active strong,
.ogt-journey__step.is-done strong {
	color: var(--ogt-ink);
}

.ogt-journey__step.is-done .ogt-journey__icon {
	background: var(--ogt-brand-50);
	color: var(--ogt-brand);
}

.ogt-journey__step.is-done .ogt-journey__tick {
	opacity: 1;
	transform: none;
}

/* Rail between the icons, with a plane riding the progress. */
.ogt-journey__rail {
	background: var(--ogt-line);
	border-radius: 2px;
	bottom: 40px;
	left: 45px;
	position: absolute;
	top: 66px;
	width: 2px;
	z-index: 0;
}

.ogt-journey__rail span {
	background: var(--ogt-brand);
	border-radius: 2px;
	display: block;
	height: var(--p, 0%);
	transition: height .9s var(--ogt-ease);
	width: 100%;
}

.ogt-journey__rail i {
	color: var(--ogt-brand);
	left: 50%;
	position: absolute;
	top: var(--p, 0%);
	transform: translate(-50%, -50%) rotate(90deg);
	transition: top .9s var(--ogt-ease);
}

.ogt-journey__rail i .ogt-icon {
	background: #FFFFFF;
	border-radius: 50%;
	fill: currentColor;
	height: 18px;
	padding: 1px;
	stroke: none;
	width: 18px;
}

.ogt-journey.is-finished .ogt-journey__head span:first-child::after {
	color: var(--ogt-brand);
	content: " ✓";
}

@media (prefers-reduced-motion: reduce) {
	.ogt-journey__rail i {
		display: none;
	}
}

/* Tilts use the rotate property so the entrance animation (transform) can't cancel them. */
.ogt-postcard {
	rotate: -2.5deg;
	transform: none;
	transition: rotate .6s var(--ogt-ease), translate .5s var(--ogt-ease), scale .6s var(--ogt-ease);
}

.ogt-postcard:hover {
	rotate: 0deg;
	scale: 1.01;
	transform: none;
}

.ogt-pass {
	rotate: 5deg;
	transform: none;
}

.ogt-postcard figcaption {
	z-index: 1;
}

/* =====================================================================
   Header icons + cart drawer
   ===================================================================== */
.ogt-header__icons {
	align-items: center;
	display: flex;
	gap: 4px;
	margin-left: 8px;
}

@media (max-width: 1200px) {
	.ogt-header__icons {
		margin-left: auto;
	}

	.ogt-burger {
		margin-left: 4px;
	}
}

.ogt-icon-btn {
	align-items: center;
	border-radius: 12px;
	color: var(--ogt-ink);
	display: inline-flex;
	height: 42px;
	justify-content: center;
	position: relative;
	transition: background .2s, color .2s;
	width: 42px;
}

.ogt-icon-btn:hover {
	background: var(--ogt-brand-50);
	color: var(--ogt-brand-700);
}

.ogt-icon-btn .ogt-icon {
	height: 22px;
	width: 22px;
}

.ogt-icon-btn__count {
	align-items: center;
	background: var(--ogt-accent);
	border: 2px solid #FFFFFF;
	border-radius: 999px;
	color: #FFFFFF;
	display: flex;
	font-size: 11px;
	font-weight: 700;
	height: 20px;
	justify-content: center;
	min-width: 20px;
	padding: 0 5px;
	position: absolute;
	right: 1px;
	top: 1px;
}

.ogt-icon-btn__count[hidden] {
	display: none;
}

.ogt-icon-btn__count.is-bump {
	animation: ogt-bump .45s var(--ogt-spring);
}

@keyframes ogt-bump {
	40% { transform: scale(1.35); }
}

.ogt-lock,
.ogt-lock body {
	overflow: hidden;
}

.ogt-drawer {
	inset: 0;
	position: fixed;
	z-index: 1000;
}

.ogt-drawer[hidden] {
	display: none;
}

.ogt-drawer__scrim {
	background: rgba(5, 11, 25, .45);
	backdrop-filter: blur(3px);
	inset: 0;
	opacity: 0;
	position: absolute;
	transition: opacity .3s;
}

.ogt-drawer__panel {
	background: var(--ogt-cream);
	box-shadow: -30px 0 80px -20px rgba(5, 11, 25, .35);
	display: flex;
	flex-direction: column;
	height: 100%;
	max-width: 100%;
	position: absolute;
	right: 0;
	top: 0;
	transform: translateX(100%);
	transition: transform .4s var(--ogt-ease);
	width: 420px;
}

.ogt-drawer.is-open .ogt-drawer__scrim {
	opacity: 1;
}

.ogt-drawer.is-open .ogt-drawer__panel {
	transform: none;
}

.ogt-drawer__head {
	align-items: center;
	border-bottom: 1px solid var(--ogt-line);
	display: flex;
	justify-content: space-between;
	padding: 20px 24px;
}

.ogt-drawer__head h2 {
	font-family: var(--ogt-display);
	font-size: 22px;
	font-weight: 800;
	letter-spacing: -.02em;
}

.ogt-drawer__head h2 span {
	color: var(--ogt-muted);
	font-size: 16px;
	font-weight: 600;
}

.ogt-drawer__close {
	align-items: center;
	background: #FFFFFF;
	border: 1px solid var(--ogt-line);
	border-radius: 12px;
	cursor: pointer;
	display: flex;
	height: 40px;
	justify-content: center;
	width: 40px;
}

.ogt-drawer__body {
	flex: 1;
	overflow-y: auto;
	padding: 16px 24px;
}

.ogt-drawer__loading {
	color: var(--ogt-muted);
	padding: 40px 0;
	text-align: center;
}

.ogt-drawer__items {
	display: grid;
	gap: 12px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.ogt-drawer__item {
	align-items: flex-start;
	background: #FFFFFF;
	border-radius: 16px;
	box-shadow: var(--ogt-shadow-sm);
	display: grid;
	gap: 14px;
	grid-template-columns: 72px minmax(0, 1fr) auto;
	padding: 12px;
	transition: opacity .2s;
}

.ogt-drawer__item.is-busy {
	opacity: .5;
	pointer-events: none;
}

.ogt-drawer__item img,
.ogt-drawer__ph {
	aspect-ratio: 1;
	background: var(--ogt-soft);
	border-radius: 12px;
	display: block;
	object-fit: cover;
	width: 72px;
}

.ogt-drawer__info {
	display: grid;
	gap: 4px;
}

.ogt-drawer__info a {
	color: var(--ogt-ink);
	font-weight: 600;
	line-height: 1.3;
}

.ogt-drawer__price {
	color: var(--ogt-brand-700);
	font-weight: 700;
}

.ogt-drawer__remove {
	background: none;
	border: 0;
	border-radius: 8px;
	color: var(--ogt-muted);
	cursor: pointer;
	height: 30px;
	width: 30px;
}

.ogt-drawer__remove:hover {
	background: #FDECEC;
	color: #B42318;
}

.ogt-qty {
	align-items: center;
	border: 1.5px solid var(--ogt-line);
	border-radius: 999px;
	display: inline-flex;
	justify-self: start;
	margin-top: 4px;
}

.ogt-qty button {
	background: none;
	border: 0;
	cursor: pointer;
	font-size: 16px;
	height: 30px;
	width: 32px;
}

.ogt-qty span {
	font-weight: 600;
	min-width: 22px;
	text-align: center;
}

.ogt-drawer__foot {
	background: #FFFFFF;
	border-top: 1px solid var(--ogt-line);
	display: grid;
	gap: 10px;
	padding: 20px 24px calc(20px + env(safe-area-inset-bottom));
}

.ogt-drawer__foot[hidden] {
	display: none;
}

.ogt-drawer__total {
	align-items: baseline;
	display: flex;
	font-size: 16px;
	justify-content: space-between;
}

.ogt-drawer__total strong {
	font-family: var(--ogt-display);
	font-size: 24px;
	font-weight: 800;
}

.ogt-drawer__note {
	color: var(--ogt-muted);
	font-size: 13px;
	margin-bottom: 4px;
}

.ogt-drawer__empty {
	display: grid;
	gap: 10px;
	justify-items: center;
	padding: 60px 10px;
	text-align: center;
}

.ogt-drawer__empty h3 {
	font-family: var(--ogt-display);
	font-size: 22px;
	font-weight: 800;
}

.ogt-drawer__empty p {
	color: var(--ogt-muted);
	max-width: 280px;
}

[data-ogt-add-to-cart].is-busy,
.ajax_add_to_cart.is-busy {
	opacity: .6;
	pointer-events: none;
}

/* =====================================================================
   Store: shop grid, product cards, single product, cart & checkout
   ===================================================================== */
.ogt-store__bar {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: space-between;
	margin-bottom: 24px;
}

.ogt-store__bar .woocommerce-result-count {
	color: var(--ogt-muted);
	margin: 0;
}

.ogt-store__bar select {
	max-width: 260px;
}

.ogt-store__grid,
.ogt-gear__items {
	display: grid;
	gap: 22px;
	grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
}

.ogt-product {
	background: #FFFFFF;
	border-radius: var(--ogt-r);
	box-shadow: var(--ogt-shadow-sm);
	display: grid;
	gap: 6px;
	padding: 12px 12px 16px;
	position: relative;
	transition: box-shadow .3s, transform .3s var(--ogt-ease);
}

.ogt-product:hover {
	box-shadow: var(--ogt-shadow);
	transform: translateY(-4px);
}

.ogt-product__media {
	aspect-ratio: 1;
	background: var(--ogt-soft);
	border-radius: 14px;
	display: block;
	margin-bottom: 8px;
	overflow: hidden;
	position: relative;
}

.ogt-product__media img {
	height: 100%;
	object-fit: cover;
	transition: transform .8s var(--ogt-ease);
	width: 100%;
}

.ogt-product:hover .ogt-product__media img {
	transform: scale(1.06);
}

.ogt-product > .ogt-save {
	position: absolute;
	right: 22px;
	top: 22px;
}

.ogt-product__name {
	color: var(--ogt-ink);
	font-weight: 700;
	line-height: 1.3;
	padding: 0 4px;
}

.ogt-product__price {
	color: var(--ogt-brand-700);
	font-weight: 700;
	padding: 0 4px;
}

.ogt-product__price del {
	color: var(--ogt-muted);
	font-weight: 500;
	margin-right: 6px;
}

.ogt-product__actions {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 8px;
	padding: 0 4px;
}

/* Single product (classic WooCommerce template) */
.ogt-store .product {
	display: grid;
	gap: clamp(28px, 5vw, 64px);
	margin-top: 20px;
}

@media (min-width: 900px) {
	.ogt-store .product {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	}

	.ogt-store .product .woocommerce-tabs,
	.ogt-store .product .related,
	.ogt-store .product .upsells {
		grid-column: 1 / -1;
	}
}

.ogt-store .woocommerce-product-gallery {
	border-radius: var(--ogt-r-lg);
	overflow: hidden;
}

.ogt-store .product_title {
	font-family: var(--ogt-display);
	font-size: clamp(32px, 4vw, 48px);
	font-weight: 800;
	letter-spacing: -.03em;
	line-height: 1.05;
}

.ogt-store .summary .price {
	color: var(--ogt-brand-700);
	font-size: 26px;
	font-weight: 800;
	margin: 14px 0;
}

.ogt-store form.cart {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin: 24px 0;
}

.ogt-store form.cart .quantity input {
	text-align: center;
	width: 90px;
}

.ogt-store form.cart .single_add_to_cart_button,
.ogt-store .button {
	background: var(--ogt-brand);
	border: 0;
	border-radius: 999px;
	box-shadow: var(--ogt-shadow-brand);
	color: #FFFFFF;
	cursor: pointer;
	font: 600 15.5px var(--ogt-text);
	min-height: 52px;
	padding: 0 28px;
}

.ogt-store .woocommerce-tabs ul.tabs {
	border-bottom: 1px solid var(--ogt-line);
	display: flex;
	gap: 6px;
	list-style: none;
	padding: 0;
}

.ogt-store .woocommerce-tabs ul.tabs a {
	border-radius: 12px 12px 0 0;
	color: var(--ogt-muted);
	display: block;
	font-weight: 600;
	padding: 12px 18px;
}

.ogt-store .woocommerce-tabs ul.tabs .active a {
	background: #FFFFFF;
	color: var(--ogt-ink);
}

/* Cart / checkout header with steps */
.ogt-shop-head {
	background: var(--ogt-topo), var(--ogt-brand-900);
	color: #FFFFFF;
	padding-block: clamp(36px, 5vw, 56px);
}

.ogt-shop-head__inner {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 20px 40px;
	justify-content: space-between;
}

.ogt-shop-head__title {
	font-family: var(--ogt-display);
	font-size: clamp(32px, 4vw, 48px);
	font-weight: 800;
	letter-spacing: -.03em;
}

.ogt-steps-bar {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.ogt-steps-bar li {
	align-items: center;
	background: rgba(255, 255, 255, .08);
	border-radius: 999px;
	color: rgba(255, 255, 255, .7);
	display: flex;
	font-size: 14px;
	font-weight: 600;
	gap: 8px;
	padding: 6px 14px 6px 6px;
}

.ogt-steps-bar li span {
	align-items: center;
	background: rgba(255, 255, 255, .14);
	border-radius: 50%;
	display: flex;
	font-size: 13px;
	height: 26px;
	justify-content: center;
	width: 26px;
}

.ogt-steps-bar li span .ogt-icon {
	height: 14px;
	width: 14px;
}

.ogt-steps-bar li.is-current {
	background: #FFFFFF;
	color: var(--ogt-ink);
}

.ogt-steps-bar li.is-current span {
	background: var(--ogt-brand);
	color: #FFFFFF;
}

.ogt-steps-bar li.is-done span {
	background: var(--ogt-sun);
	color: var(--ogt-ink);
}

.ogt-trust {
	border-top: 1px solid var(--ogt-line);
	color: var(--ogt-muted);
	display: flex;
	flex-wrap: wrap;
	font-size: 14px;
	gap: 14px 32px;
	justify-content: center;
	margin-bottom: 48px;
	padding-top: 24px;
}

.ogt-trust span {
	align-items: center;
	display: inline-flex;
	gap: 8px;
}

.ogt-trust .ogt-icon {
	color: var(--ogt-brand);
}

/* WooCommerce cart & checkout blocks in the site style */
.ogt-shop-body .wp-block-woocommerce-cart,
.ogt-shop-body .wp-block-woocommerce-checkout {
	margin: 0;
	max-width: none;
}

.ogt-shop-body .wc-block-components-sidebar-layout {
	gap: 28px;
}

.ogt-shop-body .wc-block-components-main,
.ogt-shop-body .wc-block-components-sidebar {
	background: #FFFFFF;
	border-radius: var(--ogt-r-lg);
	box-shadow: var(--ogt-shadow-sm);
	padding: clamp(18px, 3vw, 32px) !important;
}

@media (min-width: 700px) {
	.ogt-shop-body .wc-block-components-sidebar {
		position: sticky;
		top: calc(var(--ogt-header) + 20px);
	}
}

.ogt-shop-body .wc-block-components-title,
.ogt-shop-body .wc-block-components-checkout-step__title {
	font-family: var(--ogt-display) !important;
	font-weight: 800 !important;
	letter-spacing: -.02em;
}

.ogt-shop-body .wc-block-components-button:not(.is-link),
.ogt-shop-body .wc-block-cart__submit-button,
.ogt-shop-body .wc-block-components-checkout-place-order-button {
	background: var(--ogt-brand) !important;
	border: 0 !important;
	border-radius: 999px !important;
	box-shadow: var(--ogt-shadow-brand);
	color: #FFFFFF !important;
	font-weight: 600 !important;
	min-height: 54px;
}

.ogt-shop-body .wc-block-components-button:not(.is-link):hover {
	background: var(--ogt-brand-600) !important;
}

.ogt-shop-body .wc-block-components-text-input input,
.ogt-shop-body .wc-block-components-combobox .wc-block-components-combobox-control input,
.ogt-shop-body .wc-blocks-components-select__select,
.ogt-shop-body .wc-block-components-textarea {
	border: 1.5px solid #D9DEE5 !important;
	border-radius: 14px !important;
}

.ogt-shop-body .wc-block-components-text-input.is-active input,
.ogt-shop-body .wc-block-components-text-input input:focus,
.ogt-shop-body .wc-blocks-components-select__select:focus {
	border-color: var(--ogt-brand) !important;
	box-shadow: 0 0 0 4px rgba(26, 137, 117, .14) !important;
	outline: none !important;
}

.ogt-shop-body .wc-block-components-radio-control__option,
.ogt-shop-body .wc-block-components-radio-control-accordion-option {
	border-radius: 14px;
}

.ogt-shop-body .wc-block-components-radio-control__input:checked {
	border-color: var(--ogt-brand) !important;
}

.ogt-shop-body .wc-block-components-radio-control__input:checked::before {
	background: var(--ogt-brand) !important;
}

.ogt-shop-body .wc-block-cart-item__image img,
.ogt-shop-body .wc-block-components-order-summary-item__image img {
	border-radius: 12px;
}

.ogt-shop-body .wc-block-components-product-name {
	color: var(--ogt-ink);
	font-weight: 700;
}

.ogt-shop-body .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	font-family: var(--ogt-display);
	font-size: 24px;
	font-weight: 800;
}

.ogt-shop-body .wc-block-components-quantity-selector {
	border-radius: 999px !important;
}

/* Classic pay-for-order and thank-you pages */
.ogt-shop-body .woocommerce-order,
.ogt-shop-body #order_review,
.ogt-shop-body .woocommerce-order-pay > form {
	background: #FFFFFF;
	border-radius: var(--ogt-r-lg);
	box-shadow: var(--ogt-shadow-sm);
	padding: clamp(18px, 3vw, 32px);
}

.ogt-shop-body table.shop_table {
	border-collapse: collapse;
	width: 100%;
}

.ogt-shop-body table.shop_table th,
.ogt-shop-body table.shop_table td {
	border-bottom: 1px solid var(--ogt-line);
	padding: 12px 8px;
	text-align: left;
}

.ogt-shop-body .woocommerce-thankyou-order-received {
	background: var(--ogt-brand-50);
	border-radius: 14px;
	color: var(--ogt-brand-700);
	font-weight: 600;
	padding: 16px 20px;
}

.ogt-shop-body #place_order,
.ogt-shop-body .woocommerce-order-pay .button {
	background: var(--ogt-brand);
	border: 0;
	border-radius: 999px;
	color: #FFFFFF;
	cursor: pointer;
	font: 600 16px var(--ogt-text);
	min-height: 54px;
	padding: 0 32px;
}

/* Hero v6: faces stay clear; the plane flies the route around the photo. */
.ogt-route,
.ogt-route__plane {
	display: none;
}

@media (min-width: 1000px) {
	.ogt-route {
		display: block;
		height: 600px;
		left: 0;
		pointer-events: none;
		position: absolute;
		top: 0;
		width: 560px;
		z-index: 1;
	}

	.ogt-route__plane {
		animation: ogt-route-fly 7s var(--ogt-ease) infinite;
		color: var(--ogt-brand);
		display: block;
		filter: drop-shadow(0 4px 8px rgba(26, 137, 117, .35));
		left: 0;
		offset-path: path("M70 520 C 10 430, 0 250, 40 150 S 230 -10, 470 30");
		offset-rotate: auto;
		position: absolute;
		top: 0;
		z-index: 2;
	}
}

.ogt-route__path {
	animation: ogt-dash 30s linear infinite;
	stroke: var(--ogt-brand);
	stroke-dasharray: 2 10;
	stroke-linecap: round;
	stroke-opacity: .65;
	stroke-width: 2.5;
}

.ogt-route circle {
	fill: #FFFFFF;
	stroke: var(--ogt-brand);
	stroke-width: 3;
}

.ogt-route__plane .ogt-icon {
	fill: currentColor;
	height: 26px;
	stroke: none;
	width: 26px;
}

@keyframes ogt-route-fly {
	0% { offset-distance: 0%; opacity: 0; }
	10% { opacity: 1; }
	80% { offset-distance: 100%; opacity: 1; }
	92%, 100% { offset-distance: 100%; opacity: 0; }
}

/* Smaller boarding pass on the photo's top corner, over the sky. */
.ogt-pass {
	-webkit-mask: none;
	mask: none;
	padding: 10px 14px;
	right: -34px;
	rotate: 4deg;
	top: -6px;
}

.ogt-pass strong {
	font-size: 18px;
}

.ogt-pass__label {
	font-size: 10px;
}

.ogt-pass__meta {
	font-size: 12px;
}

/* Journey card sits below the photo's lower edge, away from faces. */
@media (min-width: 1000px) {
	.ogt-journey {
		bottom: -56px;
		left: -64px;
		width: 300px;
	}

	.ogt-hero-home {
		padding-bottom: clamp(96px, 9vw, 130px);
	}
}

.ogt-journey__head {
	align-items: center;
	display: flex;
	justify-content: space-between;
}

.ogt-journey__help {
	align-items: center;
	background: var(--ogt-brand-50);
	border: 0;
	border-radius: 50%;
	color: var(--ogt-brand-700);
	cursor: pointer;
	display: flex;
	font: 800 14px var(--ogt-text);
	height: 28px;
	justify-content: center;
	transition: background .2s, color .2s, transform .3s var(--ogt-spring);
	width: 28px;
}

.ogt-journey__help:hover {
	background: var(--ogt-brand);
	color: #FFFFFF;
	transform: scale(1.1);
}

.ogt-journey__row {
	align-items: center;
	border-radius: 14px;
	color: inherit;
	display: flex;
	gap: 12px;
	padding: 8px;
	transition: background .35s;
}

a.ogt-journey__row:hover {
	background: var(--ogt-soft);
}

/* Popup */
.ogt-dialog {
	border: 0;
	border-radius: var(--ogt-r-lg);
	box-shadow: var(--ogt-shadow-lg);
	max-width: min(480px, calc(100vw - 32px));
	padding: 32px 28px 28px;
	width: 100%;
}

.ogt-dialog::backdrop {
	background: rgba(5, 11, 25, .5);
	backdrop-filter: blur(3px);
}

.ogt-dialog[open] {
	animation: ogt-rise .4s var(--ogt-ease) both;
}

.ogt-dialog__close {
	align-items: center;
	background: var(--ogt-soft);
	border: 0;
	border-radius: 12px;
	cursor: pointer;
	display: flex;
	height: 38px;
	justify-content: center;
	position: absolute;
	right: 16px;
	top: 16px;
	width: 38px;
}

.ogt-dialog .ogt-h3 {
	margin: 14px 0 16px;
}

.ogt-dialog__steps {
	display: grid;
	gap: 10px;
	list-style: none;
	margin: 0 0 16px;
	padding: 0;
}

.ogt-dialog__steps li {
	align-items: center;
	background: var(--ogt-cream);
	border-radius: 14px;
	display: flex;
	gap: 12px;
	padding: 10px 12px;
}

.ogt-dialog__steps li > span:first-child {
	align-items: center;
	background: var(--ogt-brand);
	border-radius: 10px;
	color: #FFFFFF;
	display: flex;
	flex: none;
	height: 36px;
	justify-content: center;
	width: 36px;
}

.ogt-dialog__steps strong {
	color: var(--ogt-ink);
	display: block;
}

.ogt-dialog__steps small {
	color: var(--ogt-muted);
}

.ogt-dialog__text {
	color: var(--ogt-body);
	margin-bottom: 18px;
}

.ogt-btn--wa {
	background: #25D366;
	box-shadow: 0 14px 30px -12px rgba(37, 211, 102, .6);
}

.ogt-btn--wa:hover {
	background: #1EBE5A;
}

.ogt-shop-head .ogt-shop-head__title {
	color: #FFFFFF;
}

.ogt-shop-head .ogt-shop-head__title::after {
	background: var(--ogt-sun);
	border-radius: 2px;
	content: "";
	display: block;
	height: 4px;
	margin-top: 10px;
	width: 56px;
}

.ogt-saved-filter {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 20px;
}

.ogt-saved-filter button {
	align-items: center;
	background: #FFFFFF;
	border: 1.5px solid var(--ogt-line);
	border-radius: 999px;
	color: var(--ogt-ink);
	cursor: pointer;
	display: inline-flex;
	font: 600 14px var(--ogt-text);
	gap: 8px;
	padding: 8px 16px;
	transition: background .2s, color .2s, border-color .2s;
}

.ogt-saved-filter button span {
	background: var(--ogt-soft);
	border-radius: 999px;
	font-size: 12px;
	padding: 1px 8px;
}

.ogt-saved-filter button.is-active {
	background: var(--ogt-ink);
	border-color: var(--ogt-ink);
	color: #FFFFFF;
}

.ogt-saved-filter button.is-active span {
	background: rgba(255, 255, 255, .18);
}

.ogt-saved__group[hidden] {
	display: none;
}

/* Photo lightbox */
.ogt-marquee__item,
.ogt-gallery-strip a {
	cursor: zoom-in;
	display: block;
}

.ogt-marquee__item img,
.ogt-gallery-strip a img {
	transition: transform .5s var(--ogt-ease), filter .3s;
}

.ogt-marquee__item:hover img,
.ogt-gallery-strip a:hover img {
	filter: brightness(1.05);
	transform: scale(1.04);
}

.ogt-lb {
	align-items: center;
	background: rgba(5, 11, 25, .92);
	backdrop-filter: blur(6px);
	display: flex;
	inset: 0;
	justify-content: center;
	opacity: 0;
	padding: 60px 72px;
	pointer-events: none;
	position: fixed;
	transition: opacity .3s;
	z-index: 1100;
}

.ogt-lb.is-open {
	opacity: 1;
	pointer-events: auto;
}

.ogt-lb__stage {
	display: grid;
	gap: 12px;
	justify-items: center;
	margin: 0;
	max-height: 100%;
	max-width: 100%;
}

.ogt-lb__stage img {
	border-radius: 14px;
	box-shadow: 0 30px 80px -20px rgba(0, 0, 0, .6);
	max-height: calc(100vh - 160px);
	max-width: 100%;
	object-fit: contain;
	transition: opacity .25s;
}

.ogt-lb.is-loading img {
	opacity: .35;
}

.ogt-lb__stage figcaption {
	color: rgba(255, 255, 255, .85);
	font-size: 15px;
	text-align: center;
}

.ogt-lb__close,
.ogt-lb__nav {
	align-items: center;
	background: rgba(255, 255, 255, .12);
	border: 0;
	border-radius: 50%;
	color: #FFFFFF;
	cursor: pointer;
	display: flex;
	font-size: 26px;
	height: 48px;
	justify-content: center;
	position: absolute;
	transition: background .2s, transform .2s;
	width: 48px;
}

.ogt-lb__close:hover,
.ogt-lb__nav:hover {
	background: rgba(255, 255, 255, .24);
	transform: scale(1.06);
}

.ogt-lb__close {
	font-size: 18px;
	right: 20px;
	top: 20px;
}

.ogt-lb__nav--prev {
	left: 16px;
}

.ogt-lb__nav--next {
	right: 16px;
}

.ogt-lb__count {
	bottom: 20px;
	color: rgba(255, 255, 255, .7);
	font-size: 13px;
	font-weight: 600;
	left: 50%;
	position: absolute;
	transform: translateX(-50%);
}

.ogt-lb.is-single .ogt-lb__nav,
.ogt-lb.is-single .ogt-lb__count {
	display: none;
}

@media (max-width: 600px) {
	.ogt-lb {
		padding: 64px 12px;
	}

	.ogt-lb__nav {
		bottom: 14px;
		height: 44px;
		top: auto;
		width: 44px;
	}
}

/* =====================================================================
   Thank-you pages
   ===================================================================== */
.ogt-thanks {
	background:
		radial-gradient(600px 360px at 50% 0%, rgba(26, 137, 117, .14), transparent 70%),
		var(--ogt-cream);
	padding-block: clamp(48px, 7vw, 96px);
}

.ogt-thanks__wrap {
	display: grid;
	gap: 28px;
	justify-items: center;
}

.ogt-thanks__card {
	background: #FFFFFF;
	border-radius: var(--ogt-r-lg);
	box-shadow: var(--ogt-shadow-lg);
	max-width: 680px;
	padding: clamp(28px, 5vw, 52px);
	text-align: center;
	width: 100%;
}

.ogt-thanks__badge {
	margin: 0 auto 18px;
	width: 84px;
}

.ogt-thanks__badge svg {
	display: block;
	fill: none;
	stroke-linecap: round;
	stroke-linejoin: round;
	width: 100%;
}

.ogt-thanks__badge circle {
	animation: ogt-draw .7s var(--ogt-ease) .1s both;
	fill: var(--ogt-brand-50);
	stroke: var(--ogt-brand);
	stroke-dasharray: 152;
	stroke-width: 2.5;
}

.ogt-thanks__badge path {
	animation: ogt-draw .45s var(--ogt-ease) .65s both;
	stroke: var(--ogt-brand);
	stroke-dasharray: 40;
	stroke-width: 4;
}

@keyframes ogt-draw {
	from { stroke-dashoffset: 152; }
	to { stroke-dashoffset: 0; }
}

.ogt-thanks__title {
	color: var(--ogt-ink);
	font-family: var(--ogt-display);
	font-size: clamp(30px, 4.4vw, 46px);
	font-weight: 800;
	letter-spacing: -.03em;
	line-height: 1.08;
	margin: 10px 0 12px;
}

.ogt-thanks__lead {
	color: var(--ogt-body);
	font-size: 17px;
	line-height: 1.6;
	margin: 0 auto;
	max-width: 520px;
}

.ogt-thanks__facts {
	background: var(--ogt-cream);
	border-radius: 18px;
	display: grid;
	gap: 14px;
	grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
	margin: 26px 0 0;
	padding: 18px;
	text-align: left;
}

.ogt-thanks__facts dt {
	color: var(--ogt-muted);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.ogt-thanks__facts dd {
	color: var(--ogt-ink);
	font-weight: 700;
	margin: 4px 0 0;
	overflow-wrap: anywhere;
}

.ogt-thanks__next {
	color: var(--ogt-ink);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .12em;
	margin: 30px 0 12px;
	text-transform: uppercase;
}

.ogt-thanks__steps {
	display: grid;
	gap: 10px;
	list-style: none;
	margin: 0;
	padding: 0;
	text-align: left;
}

.ogt-thanks__steps li {
	align-items: center;
	border: 1.5px solid var(--ogt-line);
	border-radius: 16px;
	display: flex;
	gap: 14px;
	padding: 12px 14px;
}

.ogt-thanks__steps li > span:first-child {
	align-items: center;
	background: var(--ogt-brand-50);
	border-radius: 12px;
	color: var(--ogt-brand);
	display: flex;
	flex: none;
	height: 42px;
	justify-content: center;
	width: 42px;
}

.ogt-thanks__steps strong {
	color: var(--ogt-ink);
	display: block;
}

.ogt-thanks__steps small {
	color: var(--ogt-muted);
	font-size: 14px;
}

.ogt-thanks__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: center;
	margin-top: 28px;
}

.ogt-thanks__details {
	max-width: 680px;
	width: 100%;
}

.ogt-thanks__details:empty {
	display: none;
}

.ogt-thanks__details .woocommerce-order-details,
.ogt-thanks__details .woocommerce-customer-details {
	background: #FFFFFF;
	border-radius: var(--ogt-r-lg);
	box-shadow: var(--ogt-shadow-sm);
	margin-bottom: 20px;
	padding: clamp(18px, 3vw, 28px);
}

.ogt-thanks__details h2 {
	font-family: var(--ogt-display);
	font-size: 20px;
	font-weight: 800;
	margin-bottom: 12px;
}

.ogt-thanks__details table {
	border-collapse: collapse;
	width: 100%;
}

.ogt-thanks__details th,
.ogt-thanks__details td {
	border-bottom: 1px solid var(--ogt-line);
	padding: 10px 6px;
	text-align: left;
}

.ogt-thanks__details address {
	font-style: normal;
	line-height: 1.6;
}

/* Shop filters */
.ogt-store__layout {
	align-items: start;
	display: grid;
	gap: 28px;
}

@media (min-width: 960px) {
	.ogt-store__layout {
		grid-template-columns: 270px minmax(0, 1fr);
	}

	.ogt-filters {
		position: sticky;
		top: calc(var(--ogt-header) + 20px);
	}
}

.ogt-filters {
	background: #FFFFFF;
	border-radius: var(--ogt-r-lg);
	box-shadow: var(--ogt-shadow-sm);
	padding: 6px 18px;
}

.ogt-filters summary {
	align-items: center;
	color: var(--ogt-ink);
	cursor: pointer;
	display: flex;
	font-family: var(--ogt-display);
	font-size: 18px;
	font-weight: 800;
	gap: 10px;
	list-style: none;
	padding: 12px 0;
}

.ogt-filters summary::-webkit-details-marker {
	display: none;
}

.ogt-filters summary::after {
	color: var(--ogt-muted);
	content: "+";
	font-size: 22px;
	margin-left: auto;
}

.ogt-filters[open] summary::after {
	content: "–";
}

.ogt-filters__count {
	background: var(--ogt-brand);
	border-radius: 999px;
	color: #FFFFFF;
	font: 700 12px var(--ogt-text);
	padding: 2px 8px;
}

.ogt-filters__form {
	display: grid;
	gap: 18px;
	padding: 6px 0 18px;
}

.ogt-filters__group {
	border: 0;
	display: grid;
	gap: 8px;
	margin: 0;
	padding: 0;
}

.ogt-filters__group > span,
.ogt-filters__group legend {
	color: var(--ogt-ink);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .06em;
	margin-bottom: 8px;
	padding: 0;
	text-transform: uppercase;
}

.ogt-filters__chips {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.ogt-filters__chips input {
	opacity: 0;
	position: absolute;
}

.ogt-filters__chips span {
	align-items: center;
	border: 1.5px solid var(--ogt-line);
	border-radius: 999px;
	cursor: pointer;
	display: inline-flex;
	font-size: 14px;
	font-weight: 600;
	gap: 6px;
	padding: 6px 12px;
	transition: background .2s, color .2s, border-color .2s;
}

.ogt-filters__chips small {
	color: var(--ogt-muted);
}

.ogt-filters__chips input:checked + span {
	background: var(--ogt-ink);
	border-color: var(--ogt-ink);
	color: #FFFFFF;
}

.ogt-filters__chips input:checked + span small {
	color: rgba(255, 255, 255, .7);
}

.ogt-filters__chips input:focus-visible + span {
	box-shadow: 0 0 0 3px rgba(26, 137, 117, .25);
}

.ogt-filters__price {
	align-items: center;
	display: grid;
	gap: 8px;
	grid-template-columns: 1fr auto 1fr;
}

.ogt-filters__check {
	align-items: center;
	cursor: pointer;
	display: flex;
	font-weight: 500;
	gap: 10px;
}

.ogt-filters__clear {
	color: var(--ogt-muted);
	font-size: 14px;
	text-align: center;
	text-decoration: underline;
}

/* =====================================================================
   Journal card v2
   ===================================================================== */
.ogt-post-card {
	background: #FFFFFF;
	border-radius: 22px;
	box-shadow: var(--ogt-shadow-sm);
	display: flex;
	height: 100%;
	position: relative;
	transition: box-shadow .35s var(--ogt-ease), transform .35s var(--ogt-ease);
}

.ogt-post-card:hover {
	box-shadow: var(--ogt-shadow-lg);
	transform: translateY(-6px);
}

.ogt-post-card__link {
	color: inherit;
	display: flex;
	flex-direction: column;
	padding: 10px;
	width: 100%;
}

.ogt-post-card__media {
	aspect-ratio: 16 / 11;
	border-radius: 16px;
	display: block;
	overflow: hidden;
	position: relative;
}

.ogt-post-card__media img {
	height: 100%;
	object-fit: cover;
	transition: transform .9s var(--ogt-ease);
	width: 100%;
}

.ogt-post-card:hover .ogt-post-card__media img {
	transform: scale(1.06);
}

.ogt-post-card__media::after {
	background: linear-gradient(180deg, transparent 55%, rgba(5, 11, 25, .45));
	content: "";
	inset: 0;
	position: absolute;
}

.ogt-post-card__cat {
	background: rgba(255, 255, 255, .94);
	border-radius: 999px;
	color: var(--ogt-brand-700);
	font-size: 12px;
	font-weight: 700;
	left: 12px;
	letter-spacing: .02em;
	padding: 5px 11px;
	position: absolute;
	top: 12px;
	z-index: 1;
}

.ogt-post-card__time {
	align-items: center;
	bottom: 12px;
	color: #FFFFFF;
	display: inline-flex;
	font-size: 12.5px;
	font-weight: 600;
	gap: 5px;
	left: 14px;
	position: absolute;
	z-index: 1;
}

.ogt-post-card__time .ogt-icon {
	height: 15px;
	width: 15px;
}

.ogt-post-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 10px;
	padding: 16px 10px 8px;
}

.ogt-post-card__title {
	-webkit-box-orient: vertical;
	color: var(--ogt-ink);
	display: -webkit-box;
	font-family: var(--ogt-display);
	font-size: clamp(18px, 1.35vw, 20.5px);
	font-weight: 750;
	letter-spacing: -.015em;
	-webkit-line-clamp: 3;
	line-height: 1.25;
	overflow: hidden;
	transition: color .25s;
}

.ogt-post-card:hover .ogt-post-card__title {
	color: var(--ogt-brand-700);
}

.ogt-post-card__text {
	-webkit-box-orient: vertical;
	color: var(--ogt-muted);
	display: -webkit-box;
	font-size: 14.5px;
	-webkit-line-clamp: 2;
	line-height: 1.55;
	overflow: hidden;
}

.ogt-post-card__foot {
	align-items: center;
	border-top: 1px solid var(--ogt-line);
	display: flex;
	gap: 10px;
	margin-top: auto;
	padding-top: 14px;
}

.ogt-post-card__foot img {
	border-radius: 50%;
	height: 34px;
	object-fit: cover;
	width: 34px;
}

.ogt-post-card__foot strong {
	color: var(--ogt-ink);
	display: block;
	font-size: 13.5px;
	line-height: 1.2;
}

.ogt-post-card__foot small {
	color: var(--ogt-muted);
	font-size: 12.5px;
}

.ogt-post-card__go {
	align-items: center;
	background: var(--ogt-soft);
	border-radius: 50%;
	color: var(--ogt-ink);
	display: flex;
	height: 34px;
	justify-content: center;
	margin-left: auto;
	transition: background .25s, color .25s, transform .3s var(--ogt-spring);
	width: 34px;
}

.ogt-post-card__go .ogt-icon {
	height: 16px;
	width: 16px;
}

.ogt-post-card:hover .ogt-post-card__go {
	background: var(--ogt-brand);
	color: #FFFFFF;
	transform: translateX(3px);
}

.ogt-post-card > .ogt-save {
	position: absolute;
	right: 22px;
	top: 22px;
	z-index: 2;
}

/* Grids of journal cards: comfortable columns, equal heights. */
.ogt-grid:has(> .ogt-post-card) {
	align-items: stretch;
	gap: clamp(18px, 2vw, 28px);
}

/* Insurance plans v2: one selectable row per plan; the chosen one opens. */
.ogt-iq__plans {
	display: grid;
	gap: 10px;
	grid-template-columns: 1fr;
}

.ogt-iq-plan__box {
	background: #FFFFFF;
	border: 1.5px solid var(--ogt-line);
	border-radius: 18px;
	box-shadow: none;
	display: block;
	padding: 16px 18px;
	position: relative;
	transition: border-color .25s, box-shadow .25s, background .25s;
}

.ogt-iq-plan:hover .ogt-iq-plan__box {
	border-color: #C9D3DA;
	transform: none;
}

.ogt-iq-plan input:checked + .ogt-iq-plan__box {
	background: linear-gradient(180deg, var(--ogt-brand-50), #FFFFFF 70%);
	border-color: var(--ogt-brand);
	box-shadow: 0 14px 30px -18px rgba(26, 137, 117, .55);
}

.ogt-iq-plan__row {
	align-items: center;
	display: grid;
	gap: 14px;
	grid-template-columns: auto minmax(0, 1fr) auto;
}

.ogt-iq-plan__radio {
	border: 2px solid #C9D3DA;
	border-radius: 50%;
	height: 22px;
	position: relative;
	transition: border-color .2s;
	width: 22px;
}

.ogt-iq-plan input:checked + .ogt-iq-plan__box .ogt-iq-plan__radio {
	border-color: var(--ogt-brand);
}

.ogt-iq-plan input:checked + .ogt-iq-plan__box .ogt-iq-plan__radio::after {
	background: var(--ogt-brand);
	border-radius: 50%;
	content: "";
	inset: 3px;
	position: absolute;
}

.ogt-iq-plan__id {
	display: grid;
	gap: 3px;
	min-width: 0;
}

.ogt-iq-plan .ogt-iq-plan__name {
	align-items: center;
	color: var(--ogt-ink);
	display: flex;
	flex-wrap: wrap;
	font-family: var(--ogt-display);
	font-size: 18px;
	font-weight: 800;
	gap: 8px;
	margin: 0;
}

.ogt-iq-plan .ogt-iq-plan__flag {
	background: var(--ogt-sun);
	border-radius: 999px;
	color: var(--ogt-ink);
	font: 700 11px var(--ogt-text);
	letter-spacing: .06em;
	padding: 3px 9px;
	position: static;
	text-transform: uppercase;
}

.ogt-iq-plan__sum {
	color: var(--ogt-muted);
	font-size: 14px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.ogt-iq-plan .ogt-iq-plan__price {
	color: var(--ogt-muted);
	font-size: 13px;
	margin: 0;
	text-align: right;
	white-space: nowrap;
}

.ogt-iq-plan .ogt-iq-plan__price strong {
	color: var(--ogt-ink);
	display: block;
	font-family: var(--ogt-display);
	font-size: 20px;
	font-weight: 800;
}

.ogt-iq-plan input:checked + .ogt-iq-plan__box .ogt-iq-plan__price strong {
	color: var(--ogt-brand-700);
}

.ogt-iq-plan__more {
	display: none;
	margin: 14px 0 0 36px;
}

.ogt-iq-plan input:checked + .ogt-iq-plan__box .ogt-iq-plan__more {
	animation: ogt-rise .35s var(--ogt-ease) both;
	display: block;
}

.ogt-iq-plan input:checked + .ogt-iq-plan__box .ogt-iq-plan__sum {
	display: none;
}

.ogt-iq-plan__label {
	color: var(--ogt-brand-700);
	display: block;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .1em;
	margin-bottom: 8px;
	text-transform: uppercase;
}

.ogt-iq-plan .ogt-checks {
	border: 0;
	display: grid;
	gap: 6px 20px;
	margin: 0;
	padding: 0;
}

@media (min-width: 640px) {
	.ogt-iq-plan .ogt-checks {
		grid-template-columns: 1fr 1fr;
	}
}

.ogt-iq-plan .ogt-checks li {
	font-size: 14.5px;
}

@media (max-width: 560px) {
	.ogt-iq-plan__row {
		grid-template-columns: auto minmax(0, 1fr);
	}

	.ogt-iq-plan .ogt-iq-plan__price {
		grid-column: 2;
		text-align: left;
	}

	.ogt-iq-plan .ogt-iq-plan__price strong {
		display: inline;
		font-size: 18px;
	}

	.ogt-iq-plan__more {
		margin-left: 0;
	}
}

/* =====================================================================
   Destination pages: tighter rhythm, calmer sizes
   ===================================================================== */
.ogt-dest .ogt-section--tight {
	padding-block: clamp(36px, 4.5vw, 60px);
}

.ogt-dest .ogt-h2 {
	font-size: clamp(26px, 2.8vw, 36px);
}

.ogt-dest .ogt-head {
	margin-bottom: clamp(18px, 2.4vw, 28px);
}

.ogt-dest .ogt-city-hero {
	min-height: clamp(440px, 62vh, 620px);
}

.ogt-dest .ogt-city-hero__title {
	font-size: clamp(46px, 6.4vw, 84px);
}

.ogt-dest .ogt-city-hero__sub {
	font-size: clamp(17px, 1.7vw, 22px);
	font-weight: 600;
	max-width: 620px;
}

.ogt-dest .ogt-city-hero__inner > .ogt-crumbs {
	margin-bottom: clamp(24px, 4vw, 48px);
}

/* Empty address book: one compact line, not a big box. */
.ogt-book-empty {
	align-items: center;
	background: #FFFFFF;
	border: 1.5px dashed var(--ogt-line);
	border-radius: 20px;
	display: grid;
	gap: 16px;
	grid-template-columns: auto minmax(0, 1fr) auto;
	padding: 18px 20px;
}

.ogt-book-empty__icon {
	align-items: center;
	background: var(--ogt-brand-50);
	border-radius: 14px;
	color: var(--ogt-brand);
	display: flex;
	height: 48px;
	justify-content: center;
	width: 48px;
}

.ogt-book-empty strong {
	color: var(--ogt-ink);
	display: block;
	font-size: 16px;
}

.ogt-book-empty p {
	color: var(--ogt-muted);
	font-size: 14.5px;
	margin: 2px 0 0;
}

@media (max-width: 640px) {
	.ogt-book-empty {
		grid-template-columns: auto minmax(0, 1fr);
	}

	.ogt-book-empty .ogt-btn {
		grid-column: 1 / -1;
	}
}

/* Gear + cover: products on the left, a compact cover card that doesn't stretch. */
@media (min-width: 1024px) {
	.ogt-take {
		align-items: start;
		grid-template-columns: minmax(0, 2.4fr) minmax(0, 1fr);
	}
}

.ogt-take .ogt-cover-card {
	min-height: 0;
}

@media (min-width: 1024px) {
	.ogt-take:not(.ogt-take--solo) .ogt-cover-card {
		position: sticky;
		top: calc(var(--ogt-header) + 80px);
	}
}

.ogt-take .ogt-gear {
	background: var(--ogt-soft);
	border-radius: var(--ogt-r-lg);
	gap: 18px;
	padding: clamp(18px, 2.4vw, 28px);
}

.ogt-take .ogt-gear__items {
	grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
}

.ogt-take .ogt-gear .ogt-h2 {
	font-size: clamp(22px, 2.2vw, 28px);
}

/* No products yet: insurance becomes a slim horizontal band. */
.ogt-take--solo .ogt-cover-card {
	align-items: center;
	display: grid;
	gap: 6px 28px;
	grid-template-columns: minmax(0, 1fr) auto;
	padding: clamp(22px, 3vw, 32px) clamp(22px, 3.4vw, 40px);
}

.ogt-take--solo .ogt-cover-card > * {
	grid-column: 1;
	margin: 0;
}

.ogt-take--solo .ogt-cover-card .ogt-btn {
	grid-column: 2;
	grid-row: 1 / span 3;
}

.ogt-take--solo .ogt-cover-card .ogt-h3 {
	color: #FFFFFF;
	font-size: clamp(20px, 2vw, 26px);
}

@media (max-width: 700px) {
	.ogt-take--solo .ogt-cover-card {
		grid-template-columns: 1fr;
	}

	.ogt-take--solo .ogt-cover-card .ogt-btn {
		grid-column: 1;
		grid-row: auto;
		justify-self: start;
		margin-top: 10px;
	}
}

/* Stories on destination pages use the journal cards. */
.ogt-dest .ogt-grid--3:has(> .ogt-post-card:only-child) {
	grid-template-columns: minmax(0, 420px);
}

@media (min-width: 1024px) {
	.ogt-take.ogt-take--solo {
		grid-template-columns: 1fr;
	}
}

.ogt-take--solo .ogt-cover-card .ogt-eyebrow {
	justify-self: start;
}

.ogt-dest .ogt-section:not(.ogt-section--tight) {
	padding-block: clamp(44px, 5.5vw, 76px);
}

/* Gear "coming soon" tiles (until real products are in the shop). */
.ogt-gear__soon {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
}

.ogt-gear__tile {
	background: #FFFFFF;
	border-radius: 18px;
	box-shadow: var(--ogt-shadow-sm);
	color: var(--ogt-muted);
	display: grid;
	font-size: 13.5px;
	gap: 4px;
	padding: 18px;
	transition: box-shadow .3s, transform .3s var(--ogt-ease);
}

.ogt-gear__tile:hover {
	box-shadow: var(--ogt-shadow);
	transform: translateY(-3px);
}

.ogt-gear__tile strong {
	color: var(--ogt-ink);
	font-size: 15.5px;
}

.ogt-gear__icon {
	align-items: center;
	background: var(--ogt-brand-50);
	border-radius: 12px;
	color: var(--ogt-brand);
	display: flex;
	height: 42px;
	justify-content: center;
	margin-bottom: 8px;
	width: 42px;
}

.ogt-gear__note {
	color: var(--ogt-muted);
	font-size: 13.5px;
	grid-column: 1 / -1;
	margin: 4px 0 0;
}

.ogt-take .ogt-cover-card .ogt-h3 {
	color: #FFFFFF;
}

/* Featured story on destination pages: same layout, less height. */
.ogt-dest .ogt-story-feature {
	min-height: clamp(320px, 34vw, 420px);
}

.ogt-dest .ogt-story-feature__title {
	font-size: clamp(22px, 2.4vw, 30px);
}

/* Profile photo on My account → Profile */
.ogt-avatar-field {
	align-items: center;
	background: var(--ogt-cream);
	border-radius: 18px;
	display: flex;
	gap: 18px;
	margin-bottom: 22px;
	padding: 16px;
}

.ogt-avatar-field__img img {
	border: 3px solid #FFFFFF;
	border-radius: 50%;
	box-shadow: var(--ogt-shadow-sm);
	display: block;
	height: 84px;
	object-fit: cover;
	width: 84px;
}

.ogt-avatar-field__body {
	display: grid;
	gap: 4px;
}

.ogt-avatar-field__body strong {
	color: var(--ogt-ink);
}

.ogt-avatar-field__body > span {
	color: var(--ogt-muted);
	font-size: 14px;
}

.ogt-avatar-field__actions {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 6px;
}

.ogt-avatar-field__pick {
	cursor: pointer;
	position: relative;
}

.ogt-avatar-field__pick input {
	inset: 0;
	opacity: 0;
	position: absolute;
	width: 100%;
	cursor: pointer;
}

.ogt-avatar-field__remove {
	align-items: center;
	color: var(--ogt-muted);
	cursor: pointer;
	display: inline-flex;
	font-size: 14px;
	gap: 6px;
}

.ogt-avatar-field__note {
	color: var(--ogt-brand-700);
	font-size: 13.5px;
	font-weight: 600;
}

@media (max-width: 480px) {
	.ogt-avatar-field {
		align-items: flex-start;
		flex-direction: column;
	}
}

/* Elementor editor preview: sections are inserted after load, so show
   everything immediately instead of waiting for the scroll-in animation. */
.elementor-editor-active .ogt-reveal,
.elementor-editor-active .ogt-rise,
.elementor-editor-preview .ogt-reveal,
.elementor-editor-preview .ogt-rise {
	animation: none !important;
	opacity: 1 !important;
	transform: none !important;
}

/* =====================================================================
   My account: WooCommerce forms (Profile, addresses, orders) in site style
   ===================================================================== */
.ogt-account__main .woocommerce-EditAccountForm,
.ogt-account__main .woocommerce-address-fields,
.ogt-account__main form.edit-account {
	display: grid;
	gap: 18px;
}

.ogt-account__main .woocommerce-form-row,
.ogt-account__main .form-row {
	display: grid;
	gap: 7px;
	margin: 0;
	padding: 0;
}

@media (min-width: 720px) {
	.ogt-account__main .woocommerce-EditAccountForm {
		grid-template-columns: 1fr 1fr;
	}

	.ogt-account__main .woocommerce-EditAccountForm > *:not(.form-row-first):not(.form-row-last) {
		grid-column: 1 / -1;
	}

	.ogt-account__main .form-row-first,
	.ogt-account__main .form-row-last {
		float: none;
		width: auto;
	}
}

.ogt-account__main .woocommerce-EditAccountForm .clear {
	display: none;
}

.ogt-account__main .woocommerce-form-row label,
.ogt-account__main .form-row label {
	color: var(--ogt-ink);
	font-size: 14.5px;
	font-weight: 600;
}

.ogt-account__main .required {
	color: var(--ogt-accent);
	text-decoration: none;
}

.ogt-account__main #account_display_name_description,
.ogt-account__main .woocommerce-form-row em {
	color: var(--ogt-muted);
	font-size: 13.5px;
	font-style: normal;
}

.ogt-account__main fieldset {
	background: var(--ogt-cream);
	border: 0;
	border-radius: 18px;
	display: grid;
	gap: 16px;
	margin: 6px 0 0;
	padding: 20px;
}

.ogt-account__main fieldset legend {
	color: var(--ogt-ink);
	float: left;
	font-family: var(--ogt-display);
	font-size: 18px;
	font-weight: 800;
	margin-bottom: 4px;
	padding: 0;
	width: 100%;
}

.ogt-account__main fieldset legend + * {
	clear: both;
}

.ogt-account__main .password-input {
	display: block;
	position: relative;
}

.ogt-account__main .show-password-input {
	background: none;
	border: 0;
	color: var(--ogt-muted);
	cursor: pointer;
	position: absolute;
	right: 14px;
	top: 50%;
	transform: translateY(-50%);
}

/* Buttons: the same pill buttons as the rest of the site. */
.ogt-account__main .woocommerce-Button,
.ogt-account__main button.button,
.ogt-account__main a.button,
.ogt-account__main input.button {
	align-items: center;
	background: var(--ogt-brand);
	border: 0;
	border-radius: 999px;
	box-shadow: var(--ogt-shadow-brand);
	color: #FFFFFF;
	cursor: pointer;
	display: inline-flex;
	font: 600 15.5px/1 var(--ogt-text);
	gap: 8px;
	justify-content: center;
	min-height: 50px;
	padding: 0 28px;
	text-decoration: none;
	transition: background .25s, transform .25s var(--ogt-ease), box-shadow .25s;
}

.ogt-account__main .woocommerce-Button:hover,
.ogt-account__main button.button:hover,
.ogt-account__main a.button:hover {
	background: var(--ogt-brand-600);
	color: #FFFFFF;
	transform: translateY(-2px);
}

.ogt-account__main .woocommerce-EditAccountForm > p:last-of-type {
	align-items: center;
	border-top: 1px solid var(--ogt-line);
	display: flex;
	justify-content: flex-end;
	margin-top: 6px;
	padding-top: 20px;
}

.ogt-account__main .woocommerce-EditAccountForm .woocommerce-Button {
	min-width: 190px;
}

/* Orders table */
.ogt-account__main .woocommerce-orders-table th,
.ogt-account__main .woocommerce-orders-table td {
	border-bottom: 1px solid var(--ogt-line);
	padding: 12px 10px;
	text-align: left;
}

.ogt-account__main .woocommerce-orders-table .button {
	font-size: 14px;
	min-height: 38px;
	padding: 0 16px;
}

/* Beat WooCommerce's 47% floated name fields on the Profile form. */
.ogt-account__main .woocommerce-EditAccountForm .form-row,
.ogt-account__main .woocommerce-address-fields .form-row {
	float: none;
	margin: 0;
	padding: 0;
	width: auto;
}

.ogt-account__main .woocommerce-EditAccountForm .form-row-first,
.ogt-account__main .woocommerce-EditAccountForm .form-row-last {
	align-self: start;
	float: none;
	margin: 0;
	width: auto;
}

.ogt-account__main .woocommerce-EditAccountForm .form-row .input-text,
.ogt-account__main .woocommerce-address-fields .form-row .input-text {
	width: 100%;
}

/* Package builder: "When and who" — one even row of controls. */
.ogt-when {
	align-items: start;
	display: grid;
	gap: 16px 18px;
}

@media (min-width: 760px) {
	.ogt-when {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.ogt-when .ogt-field {
	align-content: start;
	display: grid;
	gap: 8px;
}

.ogt-when .ogt-field label small,
.ogt-when__fixed small {
	color: var(--ogt-muted);
	font-size: 12.5px;
	font-weight: 500;
}

.ogt-when input[type="date"],
.ogt-when select,
.ogt-when .ogt-stepper,
.ogt-when__fixed {
	box-sizing: border-box;
	height: 54px;
	min-height: 54px;
}

.ogt-when .ogt-stepper {
	border: 1.5px solid #D9DEE5;
	border-radius: 14px;
	display: grid;
	grid-template-columns: 52px 1fr 52px;
	overflow: hidden;
}

.ogt-when .ogt-stepper button {
	background: var(--ogt-soft);
	border: 0;
	color: var(--ogt-ink);
	cursor: pointer;
	font-size: 20px;
	transition: background .2s, color .2s;
}

.ogt-when .ogt-stepper button:hover {
	background: var(--ogt-brand-50);
	color: var(--ogt-brand-700);
}

.ogt-when .ogt-stepper input {
	font-size: 17px;
	font-weight: 700;
	text-align: center;
}

.ogt-when__fixed {
	align-items: center;
	background: var(--ogt-soft);
	border: 1.5px solid #D9DEE5;
	border-radius: 14px;
	color: var(--ogt-ink);
	display: flex;
	gap: 10px;
	padding: 0 16px;
}

.ogt-when__fixed .ogt-icon {
	color: var(--ogt-brand);
}

.ogt-when__fixed small {
	background: #FFFFFF;
	border-radius: 999px;
	margin-left: auto;
	padding: 3px 10px;
	text-transform: uppercase;
	letter-spacing: .06em;
	font-size: 11px;
	font-weight: 700;
}

.ogt-when__flex {
	align-items: center;
	background: var(--ogt-cream);
	border: 1.5px dashed var(--ogt-line);
	border-radius: 14px;
	color: var(--ogt-muted);
	cursor: pointer;
	display: flex;
	font-size: 14.5px;
	gap: 12px;
	grid-column: 1 / -1;
	padding: 12px 16px;
	transition: border-color .2s, background .2s;
}

.ogt-when__flex strong {
	color: var(--ogt-ink);
}

.ogt-when__flex input {
	height: 1px;
	opacity: 0;
	position: absolute;
	width: 1px;
}

.ogt-when__flex-ui {
	background: #D6DBE1;
	border-radius: 999px;
	flex: none;
	height: 22px;
	position: relative;
	transition: background .2s;
	width: 38px;
}

.ogt-when__flex-ui::after {
	background: #FFFFFF;
	border-radius: 50%;
	box-shadow: 0 1px 3px rgba(0, 0, 0, .2);
	content: "";
	height: 16px;
	left: 3px;
	position: absolute;
	top: 3px;
	transition: transform .2s;
	width: 16px;
}

.ogt-when__flex input:checked + .ogt-when__flex-ui {
	background: var(--ogt-brand);
}

.ogt-when__flex input:checked + .ogt-when__flex-ui::after {
	transform: translateX(16px);
}

.ogt-when__flex:has(input:checked) {
	background: var(--ogt-brand-50);
	border-color: var(--ogt-brand);
	border-style: solid;
}

.ogt-when__flex input:focus-visible + .ogt-when__flex-ui {
	box-shadow: 0 0 0 3px rgba(26, 137, 117, .25);
}

.ogt-when input[type="date"]:disabled {
	background: var(--ogt-soft);
	color: var(--ogt-muted);
}


/* Improve bento card contrast across photos and saturated backgrounds. */
.ogt-bento__tile:not(.ogt-bento__tile--media) .ogt-bento__body,
.ogt-bento__tile:not(.ogt-bento__tile--media) .ogt-bento__body strong,
.ogt-bento__tile:not(.ogt-bento__tile--media) .ogt-bento__body > span:last-child {
	color: #FFFFFF;
}

.ogt-bento__tile:not(.ogt-bento__tile--media) .ogt-bento__body > span:last-child {
	opacity: 1;
}

.ogt-bento__tile:has(> img)::after {
	background: linear-gradient(180deg, rgba(5, 11, 25, .14) 0%, rgba(5, 11, 25, .52) 48%, rgba(5, 11, 25, .88) 100%);
}

.ogt-bento__tile--media .ogt-bento__body,
.ogt-bento__tile--media .ogt-bento__body strong,
.ogt-bento__tile--media .ogt-bento__body > span:last-child,
.ogt-bento__tile--media .ogt-bento__tag {
	color: #111827;
}

.ogt-bento__tile--media .ogt-bento__body > span:last-child {
	opacity: 1;
}

/* Improve destination and journal card readability. */
.ogt-photo-card:not(.ogt-photo-card--more)::after {
	background: linear-gradient(180deg, rgba(5, 11, 25, .12) 0%, rgba(5, 11, 25, .38) 42%, rgba(5, 11, 25, .88) 100%);
}

.ogt-photo-card__tag,
.ogt-photo-card__title {
	color: #FFFFFF;
}

.ogt-photo-card__text {
	color: rgba(255, 255, 255, .96);
}

.ogt-photo-card--more .ogt-photo-card__title {
	color: #FFFFFF;
}

.ogt-story-feature::after {
	background: linear-gradient(180deg, rgba(5, 11, 25, .2) 12%, rgba(5, 11, 25, .52) 52%, rgba(5, 11, 25, .94) 100%);
}

.ogt-story-feature__meta,
.ogt-story-feature__title,
.ogt-story-feature__text {
	color: #FFFFFF;
	opacity: 1;
}

.ogt-story-row__cat {
	color: var(--ogt-brand-900);
}

.ogt-story-row__meta {
	color: #52606D;
}


/* GTranslate language selector in the site header. */
.ogt-header__language {
	align-items: center;
	display: flex;
	flex: none;
	max-width: 132px;
	min-width: 0;
}

.ogt-header__language .gtranslate_wrapper {
	align-items: center;
	display: flex;
	max-width: 100%;
}

.ogt-header__language select,
.ogt-header__language .gt_selector {
	background-color: rgba(255, 255, 255, .82);
	border: 1px solid var(--ogt-line);
	border-radius: 999px;
	color: var(--ogt-ink);
	cursor: pointer;
	font: inherit;
	font-size: 13px;
	line-height: 1.2;
	max-width: 132px;
	min-height: 38px;
	padding: 7px 26px 7px 12px;
}

.ogt-header__language select:focus-visible,
.ogt-header__language .gt_selector:focus-visible {
	border-color: var(--ogt-brand-700);
	box-shadow: 0 0 0 3px rgba(31, 123, 103, .16);
	outline: none;
}

@media (min-width: 1201px) and (max-width: 1600px) {
	.ogt-header__language,
	.ogt-header__language select,
	.ogt-header__language .gt_selector {
		max-width: 104px;
	}
	.ogt-header__language select,
	.ogt-header__language .gt_selector {
		font-size: 12px;
		padding-inline: 9px 22px;
	}
}

@media (max-width: 1200px) {
	.ogt-header__language {
		margin-left: 0;
		max-width: 116px;
	}
	.ogt-header__language select,
	.ogt-header__language .gt_selector {
		font-size: 12px;
		max-width: 116px;
		min-height: 36px;
		padding: 6px 22px 6px 9px;
	}
}

/* The header blur creates a containing block for fixed descendants. Remove it
   only while GTranslate is open so its fixed panel is centered in the viewport. */
@supports selector(.ogt-header:has(.gt_white_content)) {
	.ogt-header:has(.ogt-header__language .gt_white_content[style*="display: block"]) {
		backdrop-filter: none !important;
		-webkit-backdrop-filter: none !important;
	}
}

/* Keep the GTranslate language panel inside and centered in the visible window. */
.ogt-header__language .gt_white_content {
	background: #fff !important;
	border: 1px solid rgba(19, 39, 48, .08) !important;
	border-radius: 24px !important;
	box-shadow: 0 28px 80px rgba(10, 35, 32, .24) !important;
	box-sizing: border-box !important;
	height: auto !important;
	left: 50% !important;
	margin: 0 !important;
	max-height: calc(100vh - 48px) !important;
	max-height: calc(100dvh - 48px) !important;
	max-width: calc(100vw - 32px) !important;
	overflow: hidden !important;
	padding: 22px !important;
	top: 50% !important;
	transform: translate(-50%, -50%) !important;
	width: min(820px, calc(100vw - 32px)) !important;
	z-index: 19881205 !important;
}

.ogt-header__language .gt_black_overlay {
	background: rgba(11, 27, 34, .66) !important;
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
}

.ogt-header__language .gt_white_content .gt_languages {
	align-content: start;
	display: grid !important;
	gap: 8px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	max-height: calc(100vh - 150px) !important;
	max-height: calc(100dvh - 150px) !important;
	overflow-x: hidden !important;
	overflow-y: auto !important;
}

.ogt-header__language .gt_white_content .gt_languages a {
	align-items: center;
	background: #fff;
	border: 1px solid #e8eeeb !important;
	border-radius: 14px;
	box-sizing: border-box;
	color: var(--ogt-brand-900) !important;
	display: flex !important;
	flex-basis: auto !important;
	gap: 10px;
	line-height: 1.35 !important;
	min-height: 48px;
	padding: 10px 12px !important;
	text-decoration: none;
	transition: background-color .16s ease, border-color .16s ease, transform .16s ease;
	white-space: normal !important;
}

.ogt-header__language .gt_white_content .gt_languages a:hover {
	background: #edf7f3;
	border-color: #b9ddd1 !important;
	transform: translateY(-1px);
}

.ogt-header__language .gt_white_content .gt_languages a:focus-visible {
	background: #edf7f3;
	border-color: var(--ogt-brand-700) !important;
	box-shadow: 0 0 0 3px rgba(31, 123, 103, .16);
	outline: none;
}

.ogt-header__language .gt_white_content .gt_languages a img {
	border-radius: 3px;
	flex: none;
	height: 18px;
	object-fit: cover;
	width: 24px;
}

@media (max-width: 760px) {
	.ogt-header__language .gt_white_content {
		border-radius: 20px !important;
		padding: 16px !important;
		width: min(560px, calc(100vw - 24px)) !important;
	}

	.ogt-header__language .gt_white_content .gt_languages {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		max-height: calc(100vh - 110px) !important;
		max-height: calc(100dvh - 110px) !important;
	}
}

@media (max-width: 380px) {
	.ogt-header__language .gt_white_content .gt_languages a {
		gap: 7px;
		padding: 9px 8px !important;
	}
}
