/* AI Trip Planner — front-end styles */
.attp-wrap {
	--attp-primary: #0f766e;
	--attp-primary-dark: #0b5a54;
	--attp-accent: #f59e0b;
	--attp-bg: #f8faf9;
	--attp-card: #ffffff;
	--attp-border: #e2e8e6;
	--attp-text: #1f2937;
	--attp-muted: #6b7280;
	--attp-radius: 14px;
	max-width: 1100px;
	margin: 0 auto;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	color: var(--attp-text);
	box-sizing: border-box;
}
.attp-wrap *, .attp-wrap *::before, .attp-wrap *::after { box-sizing: inherit; }

/* Elements with the "hidden" attribute must always stay hidden, even if a
   class elsewhere on them (e.g. display:flex for modals/spinners) would
   otherwise win the cascade over the browser's default [hidden] rule. */
.attp-wrap [hidden] { display: none !important; }

.attp-ad-slot {
	text-align: center;
	overflow: hidden;
	margin-bottom: 18px;
}
.attp-ad-slot-footer {
	margin-top: 18px;
	margin-bottom: 0;
}
.attp-ad-slot:empty { display: none; }

.attp-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 18px;
	flex-wrap: wrap;
}
.attp-title { font-size: 1.6em; margin: 0; }

.attp-my-trips-btn {
	background: var(--attp-card);
	border: 1px solid var(--attp-border);
	border-radius: 999px;
	padding: 8px 16px;
	font-weight: 600;
	cursor: pointer;
	color: var(--attp-text);
}
.attp-my-trips-btn:hover { border-color: #0055FF; color: #0055FF; }

.attp-layout { position: relative; }

/* Sidebar */
.attp-sidebar {
	position: fixed;
	top: 0; right: 0;
	width: 320px;
	max-width: 90vw;
	height: 100vh;
	background: var(--attp-card);
	box-shadow: -8px 0 24px rgba(0,0,0,0.12);
	z-index: 10000;
	padding: 20px;
	overflow-y: auto;
}
.attp-sidebar-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px; }
.attp-sidebar-head h3 { margin: 0; }
.attp-sidebar-backdrop {
	position: fixed; inset: 0; background: rgba(15,23,22,0.4); z-index: 9999;
}
.attp-icon-btn {
	background: none; border: none; font-size: 1.4em; cursor: pointer; line-height: 1; color: var(--attp-muted);
}
.attp-trips-list { display: flex; flex-direction: column; gap: 10px; }
.attp-trip-item {
	border: 1px solid var(--attp-border);
	border-radius: 10px;
	padding: 10px 12px;
	cursor: pointer;
	transition: border-color .15s ease, background .15s ease;
}
.attp-trip-item:hover { border-color: var(--attp-primary); background: #f0fbf9; }
.attp-trip-item strong { display: block; font-size: 0.95em; }
.attp-trip-item span { font-size: 0.8em; color: var(--attp-muted); }

/* Steps */
.attp-steps {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
	border: 1px solid #cc00cc;
	border-radius: 16px;
	padding: 6px 8px;
}
.attp-step {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 0.85em;
	font-weight: 600;
	font-family: inherit;
	color: var(--attp-muted);
	padding: 8px 14px;
	border-radius: 999px;
	background: #eef2f1;
	border: none;
	cursor: pointer;
	transition: background .12s ease, color .12s ease;
}
.attp-step i {
	font-style: normal;
	width: 22px; height: 22px;
	border-radius: 50%;
	background: #d7dedc;
	color: #fff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 0.85em;
}
.attp-step.is-active { background: #e6f6f4; color: var(--attp-primary-dark); }
.attp-step.is-active i { background: var(--attp-primary); }
.attp-step.is-done i { background: var(--attp-accent); }
.attp-step:not(:disabled):not(.is-active):hover { background: #e2eceb; color: var(--attp-primary-dark); }
.attp-step:disabled { cursor: not-allowed; opacity: 0.6; }

/* Panels */
.attp-panel {
	background: var(--attp-card);
	border: 1px solid var(--attp-border);
	border-radius: var(--attp-radius);
	padding: 28px;
	margin-bottom: 20px;
}
.attp-panel h3 { margin-top: 0; }
#attpStep1 > h3, #attpStep2 > h3, #attpStep3 > h3, #attpStep4 > h3 { color: #20605E; }

/* Dream Trip (Step 1) and Travel Style (Step 2) each get their own distinct background */
#attpStep1 {
	background: #f8f4ff;
	border: 1px solid #cc00cc;
	box-shadow: 0 6px 22px rgba(204,0,204,0.25);
}
#attpStep2 {
	background: #fffff0;
	border: 1px solid #cc00cc;
	box-shadow: 0 6px 22px rgba(204,0,204,0.25);
}

.attp-ai-disclaimer {
	margin: 10px 0 0;
	font-size: 0.78em;
	color: #9aa3a1;
	text-align: center;
}

.attp-field { display: flex; flex-direction: column; gap: 6px; margin-bottom: 16px; }
.attp-label { font-weight: 600; font-size: 0.92em; }
.attp-label em { font-weight: 400; color: var(--attp-muted); font-style: normal; font-size: 0.9em; }

.attp-field-block { margin-bottom: 18px; }

/* Colorful borders across the Dream Trip and Travel Style page fields, in page order */
#attpArrivalDate { border: 2px solid #cc00cc !important; }
#attpArrivalTime { border: 2px solid #8C3FDE !important; }
#attpDepartureDate { border: 2px solid #cc00cc !important; }
#attpDepartureTime { border: 2px solid #20605E !important; }
#attpBudget { border: 2px solid #F54927 !important; }
#attpCompanions { border: 2px solid #4927F5 !important; }
#attpAccommodation { border: 2px solid #F5276C !important; }
#attpInterestsField { margin-top: 18px; }
#attpPurposeField { margin-top: 4px; }
.attp-purpose-box {
	border: 2px solid #8C3FDE;
	border-radius: var(--attp-radius);
	padding: 14px 16px;
	margin-top: 6px;
}
.attp-purpose-hint { margin: 0 0 4px; font-size: 1.02em; font-weight: 600; color: var(--attp-muted); }

.attp-wrap input[type="text"],
.attp-wrap input[type="date"],
.attp-wrap textarea,
.attp-wrap select {
	width: 100%;
	padding: 10px 12px;
	border: 1px solid var(--attp-border);
	border-radius: 10px;
	font-size: 0.95em;
	font-family: inherit;
	background: #fff;
	color: var(--attp-text);
}
/* Date of Arrival / Date of Departure: a custom calendar-style badge (showing TODAY's
   actual month/day, like a desktop calendar app icon) sits visually where the icon is,
   while the browser's own date-picker indicator stays underneath — enlarged and made
   invisible — so clicking anywhere in that spot still opens the native date picker. */
.attp-date-field-wrap { position: relative; display: block; }
.attp-date-field-wrap input[type="date"] { padding-right: 52px; }
.attp-date-field-wrap input[type="date"]::-webkit-calendar-picker-indicator {
	position: absolute;
	right: 6px;
	top: 50%;
	transform: translateY(-50%);
	width: 38px;
	height: 38px;
	opacity: 0;
	cursor: pointer;
}
.attp-date-badge {
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	width: 34px;
	height: 34px;
	border-radius: 50%;
	overflow: hidden;
	pointer-events: none;
	display: flex;
	flex-direction: column;
	box-shadow: 0 1px 4px rgba(0,0,0,0.28);
}
.attp-date-badge em {
	background: #E20E47;
	color: #fff;
	font-style: normal;
	font-size: 7px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-align: center;
	line-height: 11px;
	padding-top: 1px;
}
.attp-date-badge strong {
	flex: 1;
	background: #fff;
	color: #1a1a1a;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 19px;
	font-weight: 800;
	line-height: 1;
}
.attp-wrap input:focus, .attp-wrap textarea:focus, .attp-wrap select:focus {
	outline: none;
	border-color: var(--attp-primary);
	box-shadow: 0 0 0 3px rgba(15,118,110,0.15);
}
.attp-wrap textarea { resize: vertical; min-height: 90px; }

/* Voice input (speak your dream trip) */
.attp-textarea-wrap { position: relative; }
.attp-textarea-wrap textarea { resize: none; padding-bottom: 38px; }
.attp-mic-btn {
	position: absolute;
	bottom: 20px;
	right: 8px;
	width: 24px;
	height: 24px;
	border: none;
	border-radius: 999px;
	background: #0055FF;
	color: #fff;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: 0;
	box-shadow: 0 2px 6px rgba(0,85,255,0.4);
	transition: background .15s ease, width .2s ease, padding .2s ease, opacity .15s ease;
}
.attp-mic-btn:hover { background: #0044cc; }
.attp-mic-btn.is-hidden-by-text { opacity: 0; pointer-events: none; }
.attp-mic-icon { flex-shrink: 0; width: 13px; height: 13px; }
.attp-mic-timer {
	display: none;
	font-size: 0.78em;
	font-weight: 700;
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}
.attp-mic-btn.is-listening {
	width: auto;
	min-width: 62px;
	padding: 0 14px;
	background: #e11d48;
	box-shadow: 0 2px 6px rgba(225,29,72,0.4);
	animation: attp-mic-pulse 1.4s ease-in-out infinite;
}
.attp-mic-btn.is-listening .attp-mic-timer { display: inline-block; }
@keyframes attp-mic-pulse {
	0% { box-shadow: 0 0 0 0 rgba(225,29,72,0.45); }
	70% { box-shadow: 0 0 0 10px rgba(225,29,72,0); }
	100% { box-shadow: 0 0 0 0 rgba(225,29,72,0); }
}
.attp-mic-status {
	margin: 6px 0 0;
	font-size: 0.82em;
	color: var(--attp-muted);
}

/* Faint, lighter placeholder text across all fields */
.attp-wrap input::placeholder,
.attp-wrap textarea::placeholder {
	color: #9aa3a1;
	font-weight: 400;
	opacity: 1; /* Firefox lowers opacity by default; force full so our lighter color is the only fade */
}
.attp-wrap input::-webkit-input-placeholder,
.attp-wrap textarea::-webkit-input-placeholder {
	color: #9aa3a1;
	font-weight: 400;
}
.attp-wrap input::-moz-placeholder,
.attp-wrap textarea::-moz-placeholder {
	color: #9aa3a1;
	font-weight: 400;
	opacity: 1;
}
.attp-wrap input:-ms-input-placeholder,
.attp-wrap textarea:-ms-input-placeholder {
	color: #9aa3a1;
	font-weight: 400;
}

.attp-grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.attp-grid-3 { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 16px; }
@media (max-width: 720px) {
	.attp-grid-2, .attp-grid-3 { grid-template-columns: 1fr; }
}

/* Pills (purpose / interests) */
.attp-pill-group { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
.attp-pill { position: relative; }
.attp-pill input { position: absolute; opacity: 0; width: 0; height: 0; }
.attp-pill span {
	display: inline-block;
	padding: 8px 14px;
	border: 1px solid var(--attp-border);
	border-radius: 999px;
	font-size: 0.88em;
	cursor: pointer;
	user-select: none;
	background: #fff;
	transition: all .15s ease;
}
.attp-pill input:checked + span {
	background: var(--attp-primary);
	border-color: var(--attp-primary);
	color: #fff;
}
.attp-pill:hover span { border-color: var(--attp-primary); }

/* Plain checkbox list (Specific Interests) */
.attp-checkbox-group {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 14px;
	margin-top: 8px;
}
.attp-checkbox { display: inline-flex; align-items: center; gap: 5px; cursor: pointer; font-size: 0.85em; line-height: 1.2; }
.attp-checkbox input { width: 15px; height: 15px; margin: 0; accent-color: var(--attp-primary); cursor: pointer; flex: none; }

/* Collapsible accordions (Purpose of Trip / Itinerary Ideas) */
.attp-accordion {
	border: 1px solid var(--attp-border);
	border-radius: 12px;
	margin: 18px 0;
	overflow: hidden;
	background: #fafcfb;
}
.attp-accordion + .attp-accordion { margin-top: 12px; }
.attp-accordion-summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 6px 10px;
	padding: 14px 16px;
	cursor: pointer;
	font-weight: 700;
	font-size: 0.98em;
	color: var(--attp-text);
	list-style: none;
	user-select: none;
}
.attp-accordion-summary::-webkit-details-marker { display: none; }
.attp-accordion-summary::after {
	content: "▾";
	margin-left: auto;
	color: var(--attp-muted);
	transition: transform .15s ease;
	font-size: 0.9em;
}
.attp-accordion[open] .attp-accordion-summary::after { transform: rotate(180deg); }
.attp-accordion-hint { font-weight: 400; font-style: normal; color: var(--attp-muted); font-size: 0.8em; }
.attp-accordion-body { padding: 4px 16px 18px; border-top: 1px solid var(--attp-border); padding-top: 14px; }

.attp-examples-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.attp-examples-grid ul { margin: 8px 0 0; padding-left: 18px; font-size: 0.88em; color: var(--attp-text); }
.attp-examples-grid li { margin-bottom: 6px; cursor: pointer; }
.attp-examples-grid li:hover { color: var(--attp-primary-dark); text-decoration: underline; }
@media (max-width: 720px) { .attp-examples-grid { grid-template-columns: 1fr; } }

/* Buttons */
.attp-actions { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 18px; }
.attp-btn-primary, .attp-btn-secondary {
	border: none;
	border-radius: 999px;
	padding: 12px 24px;
	font-size: 0.95em;
	font-weight: 700;
	cursor: pointer;
	transition: transform .1s ease, box-shadow .15s ease, opacity .15s ease;
}
.attp-btn-primary {
	background: #0055FF;
	color: #fff !important;
	box-shadow: 0 6px 16px rgba(0,85,255,0.3);
}
.attp-btn-primary:hover { transform: translateY(-1px); }
.attp-btn-primary:disabled { opacity: 0.5; cursor: not-allowed; transform: none; box-shadow: none; }
.attp-btn-secondary {
	background: #fff;
	border: 1px solid var(--attp-border);
	color: var(--attp-text);
}
.attp-btn-secondary:hover { border-color: #0055FF; color: #0055FF; }

.attp-btn-share {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	border: none;
	border-radius: 999px;
	padding: 12px 22px;
	font-size: 0.95em;
	font-weight: 700;
	cursor: pointer;
	background: #0055FF;
	color: #fff;
	box-shadow: 0 6px 16px rgba(0,85,255,0.3);
	transition: transform .1s ease, box-shadow .15s ease;
}
.attp-btn-share:hover { transform: translateY(-1px); }
.attp-share-icon { flex-shrink: 0; }

.attp-error { color: #b91c1c; font-size: 0.9em; margin: 10px 0 0; min-height: 1em; }

/* Loading */
.attp-loading { display: flex; flex-direction: column; align-items: center; gap: 14px; padding: 40px 0; }
.attp-spinner {
	width: 40px; height: 40px;
	border: 4px solid #e2e8e6;
	border-top-color: var(--attp-primary);
	border-radius: 50%;
	animation: attp-spin 0.9s linear infinite;
}
@keyframes attp-spin { to { transform: rotate(360deg); } }

/* Flight-path loader: plane on a dotted route + slow progress bar + rotating messages */
.attp-flight { width: min(340px, 82%); display: flex; flex-direction: column; gap: 10px; }
.attp-flight-track {
	position: relative;
	height: 34px;
	border-bottom: 3px dotted var(--attp-primary);
	margin-bottom: 2px;
}
.attp-flight-plane {
	position: absolute;
	left: 0;
	bottom: -10px;
	color: var(--attp-primary);
	animation: attp-fly 3.2s ease-in-out infinite;
}
@keyframes attp-fly {
	0%   { left: 0; opacity: 0; transform: translateY(0); }
	10%  { opacity: 1; }
	50%  { transform: translateY(-8px); }
	90%  { opacity: 1; }
	100% { left: calc(100% - 28px); opacity: 0; transform: translateY(0); }
}
.attp-flight-bar { height: 8px; background: #e2e8e6; border-radius: 999px; overflow: hidden; }
.attp-flight-bar span {
	display: block;
	height: 100%;
	width: 4%;
	background: var(--attp-primary);
	border-radius: 999px;
}
.attp-loading.is-running .attp-flight-bar span { animation: attp-fill 70s cubic-bezier(.1,.6,.3,1) forwards; }
@keyframes attp-fill { from { width: 4%; } to { width: 94%; } }
.attp-loading-msg { margin: 0; text-align: center; transition: opacity .25s ease; }
.attp-loading-msg.is-fading { opacity: 0; }
@media (prefers-reduced-motion: reduce) {
	.attp-flight-plane { animation: none; left: 50%; opacity: 1; }
	.attp-loading.is-running .attp-flight-bar span { animation-duration: 140s; }
}

/* Destination cards */
.attp-destinations-grid { margin-top: 16px; }
.attp-dest-hint {
	background: #f8f4ff;
	border: 1px solid #bf00ff;
	border-radius: 10px;
	padding: 10px 14px;
	font-size: 0.88em;
	color: #002e63;
	margin-bottom: 14px;
}
.attp-destinations-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 16px; }
@media (max-width: 900px) { .attp-destinations-cards { grid-template-columns: 1fr; } }

.attp-dest-card {
	border: 2px solid var(--attp-border);
	border-radius: var(--attp-radius);
	padding: 18px;
	cursor: pointer;
	position: relative;
	background: #fff;
	transition: border-color .15s ease, box-shadow .15s ease;
}

/* Rotating border colors, one per suggested destination card (cycles past 6 cards) */
.attp-dest-color-0 { border-color: #20605E; }
.attp-dest-color-1 { border-color: #F54927; }
.attp-dest-color-2 { border-color: #ccff00; }
.attp-dest-color-3 { border-color: #4927F5; }
.attp-dest-color-4 { border-color: #F5276C; }
.attp-dest-color-5 { border-color: #8C3FDE; }

.attp-dest-card:hover { border-color: var(--attp-primary); box-shadow: 0 6px 18px rgba(15,118,110,0.12); }
.attp-dest-card.is-selected { border-color: var(--attp-primary); background: #f0fbf9; box-shadow: 0 6px 18px rgba(15,118,110,0.18); }

/* Selection checkbox row: right-aligned, sits just above the "Combine with" addons */
.attp-dest-select-row {
	display: flex;
	align-items: center;
	gap: 8px;
	justify-content: flex-start;
	margin-top: 14px;
}
.attp-dest-select-label {
	font-size: 0.82em;
	font-weight: 600;
	color: var(--attp-text);
}
.attp-dest-marker {
	position: relative;
	width: 22px;
	height: 22px;
	border: 2px solid var(--attp-border);
	background: #fff;
}
.attp-dest-card:not(.is-multi) .attp-dest-marker { border-radius: 50%; }
.attp-dest-card.is-multi .attp-dest-marker { border-radius: 5px; }
.attp-dest-card.is-selected .attp-dest-marker {
	border-color: var(--attp-primary);
	background: var(--attp-primary);
}
.attp-dest-card.is-selected .attp-dest-marker::after {
	content: "✓";
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 13px;
	font-weight: 700;
}

/* Colorful checkbox border matching each card's rotating accent color */
.attp-dest-color-0 .attp-dest-marker { border-color: #20605E; }
.attp-dest-color-1 .attp-dest-marker { border-color: #F54927; }
.attp-dest-color-2 .attp-dest-marker { border-color: #ccff00; }
.attp-dest-color-3 .attp-dest-marker { border-color: #4927F5; }
.attp-dest-color-4 .attp-dest-marker { border-color: #F5276C; }
.attp-dest-color-5 .attp-dest-marker { border-color: #8C3FDE; }
.attp-dest-color-0.is-selected .attp-dest-marker { background: #20605E; }
.attp-dest-color-1.is-selected .attp-dest-marker { background: #F54927; }
.attp-dest-color-2.is-selected .attp-dest-marker { background: #ccff00; }
.attp-dest-color-3.is-selected .attp-dest-marker { background: #4927F5; }
.attp-dest-color-4.is-selected .attp-dest-marker { background: #F5276C; }
.attp-dest-color-5.is-selected .attp-dest-marker { background: #8C3FDE; }

.attp-dest-badge {
	display: inline-block;
	color: #fff;
	font-size: 0.72em;
	font-weight: 700;
	padding: 3px 10px;
	border-radius: 999px;
	margin-bottom: 8px;
}
.attp-badge-popular { background: #8a2be2; }
.attp-badge-trending { background: #000080; }
.attp-badge-trending-now { background: #d9004c; color: #fff; }
.attp-dest-card h4 { margin: 0 0 4px; font-size: 1.1em; }
.attp-dest-tagline { font-style: italic; color: var(--attp-muted); font-size: 0.88em; margin: 0 0 10px; }
.attp-dest-why { font-size: 0.9em; margin: 0 0 8px; }
.attp-dest-time { font-size: 0.82em; color: var(--attp-primary-dark); font-weight: 600; margin: 0 0 10px; }

.attp-dest-addons { margin-top: 10px; padding-top: 10px; border-top: 1px dashed var(--attp-border); }
.attp-addons-label { display: block; font-size: 0.78em; font-weight: 700; color: var(--attp-muted); margin-bottom: 6px; }
.attp-addon-checks { display: flex; flex-direction: column; gap: 7px; }
.attp-addon-check {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 0.82em;
	color: var(--attp-text);
	cursor: pointer;
	user-select: none;
}
.attp-addon-check input[type="checkbox"] {
	width: 17px;
	height: 17px;
	flex-shrink: 0;
	cursor: pointer;
}
.attp-addon-check.is-disabled { opacity: 0.5; cursor: not-allowed; }
.attp-addon-check.is-disabled input[type="checkbox"] { cursor: not-allowed; }

.attp-itin-things { margin-top: 20px; }
.attp-itin-things .attp-dest-things { margin-top: 0; padding-top: 0; border-top: none; margin-bottom: 14px; }
.attp-dest-things { margin-top: 10px; padding-top: 10px; border-top: 1px dashed var(--attp-border); }
.attp-things-label { display: block; font-weight: 600; font-size: 0.88em; margin-bottom: 8px; }
.attp-things-pills { display: flex; flex-wrap: wrap; gap: 8px; }
.attp-things-pill {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 12px;
	border: 1px solid #cc00cc;
	border-radius: 999px;
	background: #fff;
	color: var(--attp-text) !important;
	font-size: 0.82em;
	font-weight: 600;
	text-decoration: none;
	box-shadow: 0 3px 8px rgba(204,0,204,0.22);
}
.attp-things-pill span { color: var(--attp-text) !important; }
.attp-things-pill:hover { box-shadow: 0 6px 14px rgba(204,0,204,0.35); }
.attp-dest-attractions { margin-top: 10px; padding-top: 10px; border-top: 1px dashed var(--attp-border); }
.attp-attractions-label { display: block; font-size: 0.78em; font-weight: 700; color: var(--attp-muted); margin-bottom: 7px; }
.attp-attraction-checks { display: flex; flex-wrap: wrap; gap: 6px; }
.attp-attraction-check {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-size: 0.78em;
	color: var(--attp-text);
	cursor: pointer;
	user-select: none;
	padding: 5px 10px;
	border: 1px solid var(--attp-border);
	border-radius: 999px;
	background: #fff;
	transition: border-color .12s ease, background .12s ease;
}
.attp-attraction-check:has(input:checked) { border-color: var(--attp-primary); background: #f0fbf9; font-weight: 600; }
.attp-attraction-check input[type="checkbox"] {
	width: 14px;
	height: 14px;
	flex-shrink: 0;
	cursor: pointer;
	accent-color: var(--attp-primary);
}

.attp-dest-selection-summary {
	font-size: 0.9em;
	font-weight: 600;
	color: var(--attp-primary-dark);
	margin: 14px 0 0;
	min-height: 1.2em;
}
.attp-dest-selection-summary.has-warning { color: #b45309; }

/* Itinerary output */
.attp-itin-header { margin-bottom: 18px; }
.attp-itin-header h3 { margin: 0 0 4px; font-size: 1.4em; }
.attp-itin-sub { color: var(--attp-muted); margin: 0 0 10px; }
.attp-itin-overview { background: #f4faf9; border-radius: 12px; padding: 14px 18px; font-size: 0.95em; margin-bottom: 20px; }

.attp-day-card {
	border: 1px solid var(--attp-border);
	border-radius: var(--attp-radius);
	padding: 18px 20px;
	margin-bottom: 14px;
}
.attp-day-card h4 { margin: 0 0 10px; color: var(--attp-primary-dark); font-size: 1.5em; font-weight: 800; }
.attp-day-location {
	display: inline-block;
	font-size: 0.78em;
	font-weight: 700;
	color: var(--attp-primary-dark);
	background: #e6f6f4;
	padding: 3px 10px;
	border-radius: 999px;
	margin-bottom: 10px;
}
.attp-day-block { margin-bottom: 8px; font-size: 0.94em; }
.attp-day-block b { display: inline-block; min-width: 82px; color: var(--attp-text); }
.attp-day-tip { margin-top: 10px; font-size: 0.88em; background: #f0f8ff; border-left: 3px solid var(--attp-accent); padding: 12px 16px; border-radius: 0 8px 8px 0; }
.attp-day-tip strong { font-weight: 700; }

.attp-day-affiliate-row { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.attp-day-affiliate-link {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-size: 0.78em;
	font-weight: 600;
	padding: 6px 12px;
	border-radius: 999px;
	border: 1px solid var(--attp-border);
	background: #fafcfb;
	color: var(--attp-primary-dark);
	text-decoration: none;
}
.attp-day-affiliate-link:hover { border-color: #0055FF; background: #eaf1ff; }

/* Keyword-level affiliate links woven into the day's AI-generated text */
.attp-kw-link {
	font-weight: 600;
	text-decoration: underline;
	text-decoration-style: dotted;
	text-decoration-thickness: 1.5px;
	text-underline-offset: 2px;
	border-radius: 3px;
	padding: 0 1px;
}
.attp-kw-link.attp-kw-tours { color: #0055FF; }
.attp-kw-link.attp-kw-tours:hover { background: #eaf1ff; text-decoration-style: solid; }
.attp-kw-link.attp-kw-hotels { color: #b45309; }
.attp-kw-link.attp-kw-hotels:hover { background: #fff3e0; text-decoration-style: solid; }

/* Local fact callout — rectangular, button-like, rotating background colors */
.attp-fact-box {
	margin-top: 14px;
	border-radius: 10px;
	padding: 16px 18px;
	box-shadow: 0 4px 0 rgba(0,0,0,0.08), 0 6px 14px rgba(0,0,0,0.18);
	-webkit-print-color-adjust: exact;
	print-color-adjust: exact;
}
/* 7-color rotation, applied to each day's fact box in sequence and repeating past day 7 */
.attp-fact-color-0 { background: #800080; box-shadow: 0 4px 0 rgba(0,0,0,0.08), 0 6px 14px rgba(128,0,128,0.28); }
.attp-fact-color-1 { background: #0E47E2; box-shadow: 0 4px 0 rgba(0,0,0,0.08), 0 6px 14px rgba(14,71,226,0.28); }
.attp-fact-color-2 { background: #20605E; box-shadow: 0 4px 0 rgba(0,0,0,0.08), 0 6px 14px rgba(32,96,94,0.28); }
.attp-fact-color-3 { background: #F54927; box-shadow: 0 4px 0 rgba(0,0,0,0.08), 0 6px 14px rgba(245,73,39,0.28); }
.attp-fact-color-4 { background: #4927F5; box-shadow: 0 4px 0 rgba(0,0,0,0.08), 0 6px 14px rgba(73,39,245,0.28); }
.attp-fact-color-5 { background: #F5276C; box-shadow: 0 4px 0 rgba(0,0,0,0.08), 0 6px 14px rgba(245,39,108,0.28); }
.attp-fact-color-6 { background: #8C3FDE; box-shadow: 0 4px 0 rgba(0,0,0,0.08), 0 6px 14px rgba(140,63,222,0.28); }

.attp-fact-heading {
	font-family: 'Roboto', -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-weight: 700;
	font-style: italic;
	font-size: 1em;
	color: #ffffff;
	letter-spacing: 0.2px;
	margin-bottom: 6px;
}
.attp-fact-text {
	font-family: 'Poppins', -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 0.92em;
	line-height: 1.55;
	color: #ffffff;
}

.attp-info-row {
	display: flex;
	flex-direction: row;
	align-items: stretch;
	gap: 16px;
	margin-top: 20px;
}
.attp-info-row > .attp-packing,
.attp-info-row > .attp-visa-note { flex: 1 1 0; min-width: 0; margin-top: 0 !important; }
@media (max-width: 768px) {
	.attp-info-row { flex-direction: column; }
}
.attp-packing {
	margin-top: 16px;
	background: #f0f8ff;
	border: 1px solid #f3d98b;
	border-left: 4px solid #cc00cc;
	border-radius: 10px;
	padding: 16px 18px;
	color: #000000;
	-webkit-print-color-adjust: exact;
	print-color-adjust: exact;
}
.attp-wrap .attp-packing ul { margin: 8px 0 0; padding-left: 22px; list-style: disc outside !important; }
.attp-wrap .attp-packing ul li { display: list-item !important; list-style: disc outside !important; margin: 2px 0; }
.attp-wrap .attp-packing ul li::marker { color: #000; }
.attp-wrap .attp-packing, .attp-wrap .attp-packing li, .attp-wrap .attp-packing strong { color: #000000; }
.attp-budget-note { margin-top: 12px; font-weight: 600; color: var(--attp-primary-dark); }

/* Visa & entry requirements advisory */
.attp-wrap .attp-visa-note {
	margin-top: 20px;
	background: #f0f8ff !important;
	border: 1px solid #f3d98b;
	border-left: 4px solid #cc00cc;
	border-radius: 10px;
	padding: 16px 18px;
	-webkit-print-color-adjust: exact;
	print-color-adjust: exact;
}
.attp-visa-heading {
	font-family: 'Poppins', -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-weight: 700;
	font-size: 1em;
	color: #000000;
	margin-bottom: 6px;
}
.attp-visa-text {
	font-family: 'Merriweather', Georgia, "Times New Roman", serif;
	font-size: 0.9em;
	line-height: 1.55;
	color: #000000;
}

/* Book This Trip affiliate box */
.attp-affiliate-box {
	margin-top: 20px;
	background: #f4faf9;
	border: 1px solid #cdeae5;
	border-radius: var(--attp-radius);
	padding: 18px 20px;
}
.attp-affiliate-heading {
	font-family: 'Poppins', -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-weight: 700;
	font-size: 1.05em;
	color: var(--attp-primary-dark);
	margin-bottom: 12px;
}
.attp-affiliate-grid { display: flex; flex-wrap: wrap; gap: 10px; }
.attp-affiliate-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	padding: 8px 16px;
	border: 1px solid #cc00cc;
	border-radius: 999px;
	background: #fff;
	color: var(--attp-text) !important;
	font-weight: 600;
	font-size: 0.88em;
	text-decoration: none;
	text-align: center;
	box-shadow: 0 3px 8px rgba(204,0,204,0.25);
	transition: transform .1s ease, box-shadow .15s ease;
}
.attp-affiliate-btn span { color: var(--attp-text) !important; }
.attp-affiliate-btn:hover { transform: translateY(-1px); box-shadow: 0 6px 14px rgba(204,0,204,0.35); color: var(--attp-text) !important; }
.attp-affiliate-disclosure {
	margin: 14px 0 0;
	font-size: 0.76em;
	color: var(--attp-muted);
	line-height: 1.5;
}

/* Share modal */
.attp-modal {
	position: fixed; inset: 0; background: rgba(15,23,22,0.5);
	display: flex; align-items: center; justify-content: center; z-index: 10001; padding: 16px;
}
.attp-modal-box {
	background: #fff; border-radius: var(--attp-radius); padding: 26px; max-width: 440px; width: 100%; position: relative;
}
.attp-modal-close { position: absolute; top: 10px; right: 14px; background: none; border: none; font-size: 1.4em; cursor: pointer; color: var(--attp-muted); }
.attp-modal-title { font-size: 1.15em; font-weight: 700; margin: 0 0 2px; padding-right: 24px; }
.attp-modal-sub { color: var(--attp-muted); font-size: 0.88em; margin: 0; }
.attp-share-row { display: flex; gap: 8px; margin: 14px 0; }
.attp-share-row input { flex: 1; }
.attp-modal-continue { width: 100%; margin-top: 18px; }

.attp-share-platforms {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10px;
	margin: 6px 0 4px;
}
.attp-share-platform {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
	padding: 12px 8px;
	border-radius: 12px;
	border: 1px solid var(--attp-border);
	background: #fff;
	color: var(--attp-text);
	font-size: 0.8em;
	font-weight: 600;
	text-decoration: none;
	cursor: pointer;
	transition: transform .1s ease, box-shadow .15s ease;
}
.attp-share-platform:hover { transform: translateY(-2px); box-shadow: 0 6px 14px rgba(0,0,0,0.1); }
.attp-share-platform-icon {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
}
.attp-share-whatsapp .attp-share-platform-icon { background: #25d366; }
.attp-share-facebook .attp-share-platform-icon { background: #1877f2; }
.attp-share-x .attp-share-platform-icon { background: #000000; }
.attp-share-email .attp-share-platform-icon { background: #6b7280; }
.attp-share-native .attp-share-platform-icon { background: #0055FF; color: #fff !important; }
.attp-share-native { font-family: inherit; }

.attp-pdf-actions { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 16px; }
.attp-pdf-btn { flex: 1; min-width: 140px; }
.attp-pdf-status { font-size: 0.82em; color: var(--attp-muted); margin: 8px 0 0; min-height: 1.1em; }
.attp-pdf-status.has-error { color: #b91c1c; }

.attp-muted { color: var(--attp-muted); font-size: 0.9em; }

/* Print */
@media print {
	body * { visibility: hidden; }
	#attpItineraryOutput, #attpItineraryOutput * { visibility: visible; }
	#attpItineraryOutput { position: absolute; left: 0; top: 0; width: 100%; }
	.attp-header, .attp-steps, .attp-actions, #attpStep1, #attpStep2, #attpStep3, .attp-sidebar { display: none !important; }
}

/* v1.39.0 — firm purple border on all deal / things-to-do pills (beats theme overrides) */
.attp-wrap .attp-affiliate-btn,
.attp-wrap .attp-things-pill { border: 1.5px solid #cc00cc !important; background: #fff !important; }

/* v1.39.1 — compact pills on phones */
@media (max-width: 600px) {
	.attp-affiliate-grid { gap: 6px; }
	.attp-things-pills { gap: 6px; }
	.attp-wrap .attp-affiliate-btn,
	.attp-wrap .attp-things-pill {
		padding: 5px 10px !important;
		font-size: 0.78em !important;
		gap: 4px !important;
		line-height: 1.25;
		box-shadow: 0 2px 5px rgba(204,0,204,0.22);
	}
	.attp-affiliate-box { padding: 12px; }
}

/* v1.39.2 — inline (per-day) pills: same purple style + city label */
.attp-wrap .attp-day-affiliate-link {
	border: 1.5px solid #cc00cc !important;
	background: #fff !important;
	color: var(--attp-text) !important;
	box-shadow: 0 3px 8px rgba(204,0,204,0.22);
}
.attp-wrap .attp-day-affiliate-link span { color: var(--attp-text) !important; }
.attp-wrap .attp-day-affiliate-link:hover { box-shadow: 0 6px 14px rgba(204,0,204,0.35); background: #fff !important; }
@media (max-width: 600px) {
	.attp-day-affiliate-row { gap: 6px; }
	.attp-wrap .attp-day-affiliate-link { padding: 5px 10px; font-size: 0.74em; box-shadow: 0 2px 5px rgba(204,0,204,0.22); }
}

/* v1.40.0 — Hot Deals box: per-city group headings */
.attp-affiliate-city { font-weight: 700; font-size: 0.9em; color: #20605E; margin: 14px 0 8px; }
.attp-affiliate-heading + .attp-affiliate-city { margin-top: 0; }

/* v1.41.0 — "Which city will you land in?" picker */
.attp-arrival-field { margin: 14px 0; padding: 14px 16px; border: 1.5px solid #cc00cc; border-radius: 14px; background: #fff; }
.attp-arrival-field[hidden] { display: none; }
.attp-arrival-field label { display: block; font-weight: 700; color: #20605E; margin-bottom: 8px; }
.attp-arrival-field select { width: 100%; max-width: 100%; padding: 9px 12px; border: 1px solid #cc00cc; border-radius: 10px; font-size: 1em; background: #fff; }
.attp-arrival-hint { margin: 8px 0 0; font-size: 0.85em; color: var(--attp-muted); }

/* v1.42.0 — "More places in <Country>" chips */
.attp-more-places { margin-top: 22px; padding: 16px; border: 1.5px solid #cc00cc; border-radius: 16px; background: #fff; }
.attp-more-heading { font-weight: 700; font-size: 1.05em; color: #20605E; margin-bottom: 4px; }
.attp-more-sub, .attp-more-loading { margin: 0 0 12px; font-size: 0.88em; color: var(--attp-muted); }
.attp-place-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.attp-wrap .attp-place-chip {
	display: inline-flex; flex-direction: column; align-items: flex-start; gap: 1px;
	padding: 7px 14px; border: 1px solid #d9d9e3; border-radius: 14px; background: #fafcfb;
	color: var(--attp-text); cursor: pointer; text-align: left; font: inherit; line-height: 1.25;
}
.attp-place-chip strong { font-size: 0.92em; color: var(--attp-text); }
.attp-place-chip span { font-size: 0.76em; color: var(--attp-muted); }
.attp-wrap .attp-place-chip:hover { border-color: #cc00cc; }
.attp-wrap .attp-place-chip.is-selected { border: 1.5px solid #cc00cc; background: #fdf0fd; box-shadow: 0 3px 8px rgba(204,0,204,0.22); }
.attp-place-chip.is-selected strong::before { content: '✓ '; color: #cc00cc; }
@media (max-width: 600px) {
	.attp-more-places { padding: 12px; }
	.attp-wrap .attp-place-chip { padding: 6px 11px; }
}

/* v1.43.0 — stops-fit check */
.attp-stops-check { margin: 8px 0 0; padding: 10px 14px; border-radius: 12px; font-size: 0.92em; line-height: 1.4; border: 1px solid #d9d9e3; background: #f0f8ff; color: var(--attp-text); }
.attp-stops-check[hidden] { display: none; }
.attp-stops-check.is-ok { background: #f0fbf4; border-color: #b9e4c9; }
.attp-stops-check.is-tight, .attp-stops-check.is-too_many { background: #fffaf0; border-color: #f3d98b; border-left: 4px solid #cc00cc; }
.attp-stops-check.is-checking { color: var(--attp-muted); }

/* v1.45.0 — pace / start-of-day radios use the pill style; keyboard focus ring */
.attp-pill input[type="radio"]:focus-visible + span { outline: 2px solid #cc00cc; outline-offset: 2px; }

/* v1.45.1 — one-line explanation under the pace / start-of-day pills */
.attp-choice-desc { margin: 10px 0 0; font-size: 0.9em; line-height: 1.4; color: var(--attp-muted); min-height: 1.4em; }
.attp-choice-desc:empty { display: none; }

/* v1.45.2 — stops-fit warning: red border + big red/white icon */
.attp-stops-check { display: flex; align-items: center; gap: 12px; }
.attp-stops-check[hidden] { display: none; }
.attp-stops-icon { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; font-size: 1.6em; line-height: 1; }
.attp-stops-icon svg { display: block; }
.attp-stops-text { flex: 1 1 auto; min-width: 0; }
.attp-stops-check.is-tight, .attp-stops-check.is-too_many { border: 2px solid #D90429; border-left: 2px solid #D90429; background: #fffafa; }

/* v1.46.0 — suggested time windows */
.attp-slot-time {
	display: inline-block; margin: 0 6px 0 2px; padding: 1px 9px;
	border: 1px solid #cc00cc; border-radius: 999px; background: #fff;
	font-size: 0.86em; font-weight: 600; color: var(--attp-text); white-space: nowrap;
}
.attp-times-note { margin: 0 0 12px; font-size: 0.85em; color: var(--attp-muted); }
@media (max-width: 600px) {
	.attp-slot-time { font-size: 0.8em; padding: 0 7px; }
	.attp-day-block b { min-width: 0; }
}

/* v1.47.0 — itinerary top bar (My Trips + Plan Another Trip) and coloured city names */
.attp-step4-topbar { display: flex; justify-content: flex-end; align-items: center; gap: 10px; flex-wrap: wrap; margin: 0 0 12px; }
.attp-step4-topbar .attp-my-trips-btn { padding: 8px 16px; }
.attp-step4-topbar .attp-restart-top { padding: 8px 16px; font-size: 0.95em; }
.attp-wrap.is-on-itinerary .attp-header .attp-my-trips-btn { display: none; }
.attp-city-name { font-weight: 800; }
@media (max-width: 600px) {
	.attp-step4-topbar { justify-content: stretch; }
	.attp-step4-topbar > button { flex: 1 1 auto; }
}
@media print { .attp-step4-topbar { display: none !important; } }

/* v1.48.0 — black time tags, padded-shadow Itinerary page, duplicate-place locks */
.attp-wrap .attp-slot-time { border: 1px solid #000 !important; }
#attpStep4 {
	background: #f8f4ff;
	border: 1px solid #cc00cc;
	box-shadow: 0 6px 22px rgba(204,0,204,0.25);
}
.attp-dest-card.is-duplicate-locked { opacity: 0.55; cursor: not-allowed; filter: grayscale(0.4); }
.attp-dest-card.is-duplicate-locked .attp-dest-select-label::after { content: ' \2014  already in your trip'; font-weight: 600; color: var(--attp-muted); }
.attp-addon-check.is-duplicate-locked { opacity: 0.5; cursor: not-allowed; }
.attp-addon-check.is-duplicate-locked span::after { content: ' (already added)'; font-size: 0.85em; color: var(--attp-muted); }
.attp-wrap .attp-place-chip.is-duplicate-locked { opacity: 0.5; cursor: not-allowed; }
.attp-place-chip.is-duplicate-locked span::after { content: ' \2014  already added'; }

/* v1.51.0 — quiet coloured text links under the first day in each city; smaller footer pills */
.attp-wrap .attp-city-text-links { margin: 2px 0 10px; font-size: 0.8em; line-height: 1.7; }
.attp-wrap .attp-city-text-link { font-weight: 600; text-decoration: none; white-space: nowrap; border-bottom: 1px dotted currentColor; }
.attp-wrap .attp-city-text-link:hover { opacity: .75; }
.attp-wrap .attp-city-text-sep { color: #999; margin: 0 4px; }
.attp-wrap .attp-affiliate-grid { gap: 6px; }
.attp-wrap .attp-affiliate-btn { padding: 4px 11px !important; font-size: 0.76em !important; gap: 5px !important; line-height: 1.25; box-shadow: 0 2px 5px rgba(204,0,204,0.18); }
@media print { .attp-city-text-links { display: none; } }

/* v1.52.0 — Trending Deals: one city's pills at a time, chosen with coloured city tabs */
.attp-wrap .attp-deal-tabs { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 10px; }
.attp-wrap .attp-deal-tab {
	appearance: none; cursor: pointer; padding: 4px 12px; border-radius: 999px;
	border: 1.5px solid var(--tab-color, #cc00cc); background: #fff; color: var(--tab-color, #cc00cc);
	font-weight: 700; font-size: 0.8em; line-height: 1.3;
}
.attp-wrap .attp-deal-tab.is-active { background: var(--tab-color, #cc00cc); color: #fff; }
.attp-wrap .attp-deal-panel { display: none; }
.attp-wrap .attp-deal-panel.is-active { display: block; }
@media print { .attp-wrap .attp-deal-tabs { display: none; } .attp-wrap .attp-deal-panel { display: block; } }

/* v1.53.0 — per-day editing */
.attp-wrap .attp-day-edit { margin-top: 12px; }
.attp-wrap .attp-day-edit-toggle {
	appearance: none; cursor: pointer; background: transparent; border: 1px dashed #cc00cc; color: #cc00cc;
	border-radius: 999px; padding: 4px 12px; font-size: 0.8em; font-weight: 700;
}
.attp-wrap .attp-day-edit-toggle:hover { background: #fbf0fb; }
.attp-wrap .attp-day-edit-panel { margin-top: 10px; padding: 12px; border: 1px solid #e6d3e6; border-radius: 12px; background: #fff; }
.attp-wrap .attp-day-edit-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 10px; }
.attp-wrap .attp-day-edit-chip {
	appearance: none; cursor: pointer; background: #fff; border: 1px solid #cc00cc; color: var(--attp-text);
	border-radius: 999px; padding: 4px 10px; font-size: 0.78em; font-weight: 600;
}
.attp-wrap .attp-day-edit-chip:hover { background: #fbf0fb; }
.attp-wrap .attp-day-edit-custom { display: flex; gap: 6px; flex-wrap: wrap; }
.attp-wrap .attp-day-edit-input { flex: 1 1 220px; min-width: 0; padding: 7px 10px; border: 1px solid #ccc; border-radius: 8px; font-size: 0.85em; }
.attp-wrap .attp-day-edit-go { appearance: none; cursor: pointer; background: #cc00cc; color: #fff; border: 0; border-radius: 8px; padding: 7px 14px; font-weight: 700; font-size: 0.85em; }
.attp-wrap .attp-day-edit-status { margin-top: 8px; font-size: 0.82em; color: #666; min-height: 1.2em; }
.attp-wrap .attp-day-edit.is-busy .attp-day-edit-chip,
.attp-wrap .attp-day-edit.is-busy .attp-day-edit-go { opacity: .5; pointer-events: none; }
.attp-wrap .attp-day-card.is-updated { animation: attpDayFlash 2.5s ease; }
@keyframes attpDayFlash { 0% { box-shadow: 0 0 0 3px rgba(204,0,204,.55); } 100% { box-shadow: 0 0 0 0 rgba(204,0,204,0); } }
@media print { .attp-day-edit { display: none !important; } }

/* v1.54.0 — double-check banner and real travel-time note */
.attp-wrap .attp-review-banner { margin: 0 0 14px; padding: 10px 14px; border-radius: 10px; font-size: 0.88em; background: #f3fbf4; border: 1px solid #b9e3c0; color: #1f5a2b; }
.attp-wrap .attp-review-banner.is-checking { background: #f6f2fa; border-color: #d9c8ea; color: #5b3a7a; }
.attp-wrap .attp-review-banner ul { margin: 6px 0 0 18px; padding: 0; }
.attp-wrap .attp-review-banner a { font-weight: 700; color: inherit; }
.attp-wrap .attp-travel-note { margin: 2px 0 10px; font-size: 0.85em; color: #555; font-weight: 600; }
@media print { .attp-review-banner.is-checking { display: none; } }

/* v1.55.0 — 👍 / 👎 feedback */
.attp-wrap .attp-fb { margin-top: 12px; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; font-size: 0.82em; color: #666; }
.attp-wrap .attp-fb.is-done { color: #20605E; font-weight: 600; }
.attp-wrap .attp-fb-btn { appearance: none; cursor: pointer; background: #fff; border: 1px solid #ddd; border-radius: 999px; padding: 2px 10px; font-size: 1.1em; line-height: 1.4; }
.attp-wrap .attp-fb-btn:hover { border-color: #cc00cc; background: #fbf0fb; }
.attp-wrap .attp-fb-more { flex-basis: 100%; }
.attp-wrap .attp-fb-reasons { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 8px; }
.attp-wrap .attp-fb-reason { appearance: none; cursor: pointer; background: #fff; border: 1px solid #ccc; border-radius: 999px; padding: 3px 10px; font-size: 0.95em; }
.attp-wrap .attp-fb-reason.is-on { background: #cc00cc; border-color: #cc00cc; color: #fff; }
.attp-wrap .attp-fb-send-row { display: flex; gap: 6px; flex-wrap: wrap; }
.attp-wrap .attp-fb-comment { flex: 1 1 220px; min-width: 0; padding: 6px 10px; border: 1px solid #ccc; border-radius: 8px; font-size: 0.95em; }
.attp-wrap .attp-fb-send { appearance: none; cursor: pointer; background: #cc00cc; color: #fff; border: 0; border-radius: 8px; padding: 6px 14px; font-weight: 700; }
.attp-wrap .attp-fb-overall { margin: 18px 0 8px; padding: 12px 14px; background: #fff; border: 1px solid #e6d3e6; border-radius: 12px; font-size: 0.9em; }
@media print { .attp-fb { display: none !important; } }

/* v1.57.0 — whole-trip refinement box */
.attp-wrap .attp-refine { margin: 0 0 16px; padding: 14px; background: #fff; border: 1px solid #e6d3e6; border-radius: 14px; }
.attp-wrap .attp-refine-title { font-weight: 800; color: var(--attp-primary-dark); margin-bottom: 10px; }
.attp-wrap .attp-refine-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 10px; }
.attp-wrap .attp-refine-chip { appearance: none; cursor: pointer; background: #fff; border: 1px solid #cc00cc; color: var(--attp-text); border-radius: 999px; padding: 4px 11px; font-size: 0.8em; font-weight: 600; }
.attp-wrap .attp-refine-chip:hover { background: #fbf0fb; }
.attp-wrap .attp-refine-log { margin: 4px 0 10px; font-size: 0.85em; }
.attp-wrap .attp-refine-q { margin: 6px 0 2px auto; max-width: 85%; width: fit-content; background: #cc00cc; color: #fff; padding: 6px 12px; border-radius: 14px 14px 2px 14px; }
.attp-wrap .attp-refine-a { max-width: 90%; background: #f6f2fa; color: var(--attp-text); padding: 6px 12px; border-radius: 14px 14px 14px 2px; }
.attp-wrap .attp-refine-a a { font-weight: 700; color: #cc00cc; }
.attp-wrap .attp-refine-row { display: flex; gap: 6px; flex-wrap: wrap; }
.attp-wrap .attp-refine-input { flex: 1 1 240px; min-width: 0; padding: 8px 12px; border: 1px solid #ccc; border-radius: 10px; font-size: 0.9em; }
.attp-wrap .attp-refine-go { appearance: none; cursor: pointer; background: #cc00cc; color: #fff; border: 0; border-radius: 10px; padding: 8px 16px; font-weight: 700; font-size: 0.9em; }
.attp-wrap .attp-refine-status { margin-top: 8px; font-size: 0.82em; color: #666; min-height: 1.2em; }
.attp-wrap .attp-refine.is-busy .attp-refine-chip,
.attp-wrap .attp-refine.is-busy .attp-refine-go { opacity: .5; pointer-events: none; }
@media print { .attp-refine { display: none !important; } }

/* v1.58.0 — day maps */
.attp-wrap .attp-map-block { margin: 4px 0 10px; }
.attp-wrap .attp-map-toggle { appearance: none; cursor: pointer; background: transparent; border: 1px solid #20605E; color: #20605E; border-radius: 999px; padding: 4px 12px; font-size: 0.8em; font-weight: 700; }
.attp-wrap .attp-map-toggle:hover { background: #eef7f6; }
.attp-wrap .attp-map-panel { margin-top: 8px; }
.attp-wrap .attp-map-status { font-size: 0.85em; color: #666; }
.attp-wrap .attp-map-canvas { height: 280px; border-radius: 12px; overflow: hidden; border: 1px solid #ddd; z-index: 0; }
.attp-wrap .attp-map-list { margin: 8px 0 0 18px; padding: 0; font-size: 0.85em; }
.attp-wrap .attp-map-note { margin: 6px 0 0; font-size: 0.75em; color: #777; }
.attp-wrap .attp-map-note a { color: #20605E; font-weight: 700; }
.attp-map-pin-wrap { background: transparent; border: 0; }
.attp-map-pin { display: flex; align-items: center; justify-content: center; width: 26px; height: 26px; border-radius: 50%; background: #cc00cc; color: #fff; font-weight: 800; font-size: 13px; border: 2px solid #fff; box-shadow: 0 2px 6px rgba(0,0,0,.35); }
@media (max-width: 600px) { .attp-wrap .attp-map-canvas { height: 230px; } }
@media print { .attp-map-block { display: none !important; } }

/* v1.61.0 — action buttons on the right, Share button also in the top bar */
.attp-wrap .attp-actions { justify-content: flex-end; }
.attp-wrap .attp-btn-share { background: #0055FF !important; color: #fff !important; border: 0 !important; }
.attp-wrap .attp-btn-share span { color: #fff !important; }
.attp-step4-topbar .attp-share-top { padding: 8px 16px; font-size: 0.95em; }
.attp-step4-topbar .attp-share-top[hidden] { display: none; }

/* v1.62.0 — Share button in the bottom row; per-day edit + feedback sit beside the city on one line above Morning */
.attp-wrap .attp-actions .attp-share-bottom {
	display: inline-flex !important; align-items: center; gap: 8px;
	background: #0055FF !important; color: #fff !important; border: 0 !important; border-radius: 999px;
	padding: 12px 22px; font-size: 0.95em; font-weight: 700; cursor: pointer;
	box-shadow: 0 6px 16px rgba(0,85,255,0.3); visibility: visible !important; opacity: 1 !important;
}
.attp-wrap .attp-actions .attp-share-bottom span { color: #fff !important; }
.attp-wrap .attp-day-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin: 0 0 10px; }
.attp-wrap .attp-day-meta:empty { display: none; }
.attp-wrap .attp-day-meta .attp-day-location { margin: 0; order: 0; }
.attp-wrap .attp-day-meta .attp-day-edit { display: contents; }
.attp-wrap .attp-day-meta .attp-day-edit-toggle { order: 1; }
.attp-wrap .attp-day-meta .attp-fb { order: 2; margin: 0; }
.attp-wrap .attp-day-meta .attp-day-edit-panel { order: 3; flex: 0 0 100%; margin-top: 2px; }

/* v1.62.1 share window robustness */
#attpShareModal { position: fixed !important; inset: 0 !important; z-index: 2147483000 !important; align-items: center; justify-content: center; }
#attpShareModal[hidden] { display: none !important; }
.attp-share-notice { background: #fff4e5; color: #8a4b00; border: 1px solid #f3c98b; border-radius: 8px; padding: 8px 10px; margin: 10px 0 0; font-size: 0.86em; }

/* v1.63.0 one border around Morning / Afternoon / Evening / Night */
.attp-wrap .attp-day-slots {
	border: 2px solid #0f766e !important;
	border-radius: 14px !important;
	padding: 8px 12px 0 !important;
	margin: 0 0 14px !important;
	background: rgba(255,255,255,0.7) !important;
	box-shadow: 0 0 0 4px rgba(15,118,110,0.14), 0 4px 14px rgba(15,118,110,0.22) !important;
}
.attp-wrap .attp-day-slots .attp-day-block { border: 0 !important; padding: 0 !important; background: none !important; margin: 0 0 10px !important; }
@media (max-width: 600px) { .attp-wrap .attp-day-slots { padding: 6px 9px 0 !important; } }
@media print { .attp-wrap .attp-day-slots { break-inside: avoid; } }

/* v1.64.0 distance from capital on destination cards */
.attp-wrap .attp-dest-capital { margin: 4px 0 !important; font-size: 0.88em !important; font-weight: 600 !important; color: #0f766e !important; }

.attp-wrap .attp-dest-capital { text-transform: capitalize !important; }

/* v1.68.0 Specific Interests: first 8 shown + Show more chevron */
.attp-wrap #attpInterests:not(.is-open) .attp-checkbox.is-extra { display: none !important; }
.attp-wrap .attp-showmore {
	display: inline-flex !important; align-items: center !important; gap: 8px !important; margin: 12px 0 0 !important; padding: 4px 2px !important;
	background: transparent !important; border: 0 !important; box-shadow: none !important; cursor: pointer !important;
	font: inherit !important; font-size: 1.02em !important; font-weight: 500 !important; color: #000 !important;
}
.attp-wrap .attp-showmore[hidden] { display: none !important; }
.attp-wrap .attp-showmore svg { width: 28px; height: 28px; color: #0f766e; flex: none; transition: transform .2s ease; }
.attp-wrap .attp-showmore:hover svg { color: #115e59; }
.attp-wrap .attp-showmore[aria-expanded="true"] svg { transform: rotate(180deg); }
.attp-wrap .attp-showmore:focus-visible { outline: 2px solid #0f766e !important; outline-offset: 2px !important; }
.attp-wrap .attp-interests-count { display: inline-block; background: #0f766e; color: #fff; border-radius: 999px; font-size: 0.75em; font-weight: 700; padding: 1px 9px; }
.attp-wrap .attp-interests-count[hidden] { display: none !important; }

/* v1.66.0 map button, Adjust this day and feedback side by side */
.attp-wrap .attp-day-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin: 4px 0 10px; }
.attp-wrap .attp-day-actions:empty { display: none; }
.attp-wrap .attp-day-actions .attp-map-block { display: contents; }
.attp-wrap .attp-day-actions .attp-map-toggle { order: 0; }
.attp-wrap .attp-day-actions .attp-day-edit { display: contents; }
.attp-wrap .attp-day-actions .attp-day-edit-toggle { order: 1; }
.attp-wrap .attp-day-actions .attp-fb { order: 2; margin: 0; }
.attp-wrap .attp-day-actions .attp-map-panel { order: 3; flex: 0 0 100%; margin-top: 4px; }
.attp-wrap .attp-day-actions .attp-day-edit-panel { order: 4; flex: 0 0 100%; margin-top: 2px; }

/* v1.66.1 Start of day and Night programs side by side */
.attp-wrap .attp-field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; align-items: stretch; margin-bottom: 18px; }
.attp-wrap .attp-field-row > .attp-field-block { margin: 0 !important; min-width: 0; display: flex; flex-direction: column; }
.attp-wrap .attp-field-row > .attp-field-block > .attp-purpose-box { flex: 1 1 auto; }
@media (max-width: 800px) { .attp-wrap .attp-field-row { grid-template-columns: 1fr; gap: 0; } .attp-wrap .attp-field-row > .attp-field-block { margin-bottom: 16px !important; } }

/* v1.66.2 capital travel lines: black text, one under the other */
.attp-wrap .attp-dest-capital { color: #000 !important; margin: 2px 0 !important; }

/* v1.67.0 calendar-page "Day N" badge with the headline centred underneath */
.attp-wrap .attp-day-head { display: flex; flex-direction: column; align-items: center; text-align: center; margin: 0 0 8px; }
.attp-wrap .attp-day-cal {
	position: relative; width: 92px; background: #fff; border-radius: 10px; overflow: hidden; margin: 6px 0 10px;
	box-shadow: 0 3px 10px rgba(0,0,0,.18), 0 0 0 1px rgba(0,0,0,.12); display: flex; flex-direction: column; align-items: center;
}
.attp-wrap .attp-day-cal::before, .attp-wrap .attp-day-cal::after { content: ""; }
.attp-wrap .attp-day-cal-top {
	display: block; width: 100%; background: linear-gradient(#e53935, #c62828); color: #fff; font-weight: 800; font-size: 20px; line-height: 1;
	padding: 14px 0 7px; letter-spacing: .5px; position: relative;
	background-image: radial-gradient(circle at 50% 7px, #fff 0 2.6px, transparent 3px), linear-gradient(#e53935, #c62828);
	background-size: 12px 14px, 100% 100%; background-repeat: repeat-x, no-repeat;
}
.attp-wrap .attp-day-cal-num { display: block; font-weight: 900; font-size: 46px; line-height: 1; color: #000; padding: 6px 0 9px; font-family: Arial, Helvetica, sans-serif; }
.attp-wrap .attp-day-head h4 { margin: 0 !important; text-align: center; }
.attp-wrap .attp-sr-only { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.attp-wrap .attp-day-card > .attp-day-meta { justify-content: center; }

/* v1.67.1 page curl on every day except the last */
.attp-wrap .attp-day-cal-wrap { position: relative; margin: 6px 0 10px; filter: drop-shadow(0 3px 5px rgba(0,0,0,.25)); }
.attp-wrap .attp-day-cal-wrap .attp-day-cal { margin: 0; box-shadow: inset 0 0 0 1px rgba(0,0,0,.12); }
.attp-wrap .attp-day-cal-wrap.has-curl .attp-day-cal {
	clip-path: polygon(0 0, 100% 0, 100% calc(100% - 26px), calc(100% - 26px) 100%, 0 100%);
}
.attp-wrap .attp-day-cal-wrap.has-curl .attp-day-cal::after {
	content: ""; position: absolute; right: 0; bottom: 0; width: 26px; height: 26px;
	background: linear-gradient(135deg, #ffffff 0%, #e9e9e9 55%, #bdbdbd 100%);
	clip-path: polygon(0 0, 100% 0, 0 100%);
}

/* v1.67.2 smaller day badge; black, compact action row */
.attp-wrap .attp-day-cal { width: 64px !important; border-radius: 8px !important; }
.attp-wrap .attp-day-cal-top { font-size: 14px !important; padding: 10px 0 5px !important; background-size: 9px 10px, 100% 100% !important; background-image: radial-gradient(circle at 50% 5px, #fff 0 1.9px, transparent 2.3px), linear-gradient(#e53935, #c62828) !important; }
.attp-wrap .attp-day-cal-num { font-size: 32px !important; padding: 4px 0 6px !important; }
.attp-wrap .attp-day-cal-wrap { margin: 4px 0 8px !important; }
.attp-wrap .attp-day-cal-wrap.has-curl .attp-day-cal { clip-path: polygon(0 0, 100% 0, 100% calc(100% - 18px), calc(100% - 18px) 100%, 0 100%) !important; }
.attp-wrap .attp-day-cal-wrap.has-curl .attp-day-cal::after { width: 18px !important; height: 18px !important; }

.attp-wrap .attp-day-actions .attp-map-toggle,
.attp-wrap .attp-day-actions .attp-day-edit-toggle,
.attp-wrap .attp-day-actions .attp-fb,
.attp-wrap .attp-day-actions .attp-fb-q { color: #000 !important; }
@media (max-width: 600px) {
	.attp-wrap .attp-day-actions { gap: 5px 6px !important; }
	.attp-wrap .attp-day-actions .attp-map-toggle,
	.attp-wrap .attp-day-actions .attp-day-edit-toggle { font-size: 10.5px !important; padding: 3px 7px !important; line-height: 1.3 !important; white-space: nowrap; }
	.attp-wrap .attp-day-actions .attp-fb { font-size: 11px !important; gap: 4px !important; }
	.attp-wrap .attp-day-actions .attp-fb-btn { font-size: 13px !important; padding: 1px 7px !important; }
}

/* v1.67.4 day badge header in #cc00cc */
.attp-wrap .attp-day-cal-top { background-color: #cc00cc !important; background-image: radial-gradient(circle at 50% 5px, #fff 0 1.9px, transparent 2.3px), linear-gradient(#cc00cc, #cc00cc) !important; }

/* v1.69.0 nearby places on destination cards */
.attp-wrap .attp-dest-addons { margin-top: 12px; }
.attp-wrap .attp-addons-label { color: #000 !important; font-size: 0.84em; }
.attp-wrap .attp-addon-check span em { font-style: normal; color: #444; font-size: 0.92em; }
.attp-wrap .attp-addon-check input[type="checkbox"] { accent-color: #cc00cc; }

/* v1.69.1 restored: option pills in #cc00cc (selected fill + white-pill border) */
.attp-wrap .attp-pill input:checked + span { background: #cc00cc !important; border-color: #cc00cc !important; color: #fff !important; }
.attp-wrap .attp-pill:hover span { border-color: #cc00cc !important; }
.attp-wrap .attp-pill span { border: 1.5px solid #cc00cc !important; }

/* v1.69.3 retry button when Other Popular Destinations can't load */
.attp-wrap .attp-more-retry { appearance: none; cursor: pointer; background: #fff; color: #000; border: 1.5px solid #cc00cc; border-radius: 999px; padding: 5px 14px; font-weight: 700; font-size: 0.85em; }

/* v1.69.6 quiet double-checked line after the last day */
.attp-wrap .attp-review-done { margin: 4px 0 14px; text-align: center; font-size: 0.85em; font-weight: 600; color: #000; }
@media print { .attp-review-done { display: none; } }

/* v1.70.0 Who's travelling */
.attp-wrap .attp-group-row { display: flex; flex-wrap: wrap; gap: 12px 18px; align-items: flex-end; }
.attp-wrap .attp-group-item { display: flex; flex-direction: column; gap: 4px; font-size: 0.88em; font-weight: 600; color: #000; }
.attp-wrap .attp-group-item select, .attp-wrap .attp-group-item input[type="text"] {
	min-width: 110px; padding: 8px 12px; border: 1.5px solid #cc00cc; border-radius: 999px; background: #fff; font: inherit; font-weight: 400; color: #000;
}
.attp-wrap .attp-group-item input[type="text"] { min-width: 160px; border-radius: 12px; }
.attp-wrap .attp-group-ages[hidden] { display: none !important; }

/* v1.70.1 short accessibility / dietary reminder */
.attp-wrap .attp-needs-note { margin: 0 0 14px; padding: 8px 12px; border: 1.5px solid #cc00cc; border-radius: 10px; background: #fff; color: #000; font-size: 0.85em; }

/* v1.72.0 stay-near links */
.attp-wrap .attp-airport-line{margin-top:6px !important;}

/* v1.73.0 calendar export */
.attp-wrap .attp-cal-box{margin:18px 0 !important;}
.attp-wrap .attp-cal-toggle{display:inline-flex !important;align-items:center !important;gap:8px !important;background:#fff !important;color:#000 !important;border:2px solid #cc00cc !important;border-radius:999px !important;padding:9px 18px !important;font-weight:600 !important;font-size:14px !important;cursor:pointer !important;}
.attp-wrap .attp-cal-toggle[aria-expanded="true"] .attp-cal-chev{display:inline-block;transform:rotate(180deg);}
.attp-wrap .attp-cal-panel{margin-top:10px !important;padding:12px !important;border:1px solid #e5e7eb !important;border-radius:12px !important;background:#fff !important;}
.attp-wrap .attp-cal-panel[hidden]{display:none !important;}
.attp-wrap .attp-cal-ics{display:block !important;width:100% !important;background:#0F766E !important;color:#fff !important;border:0 !important;border-radius:10px !important;padding:10px 12px !important;font-weight:600 !important;font-size:14px !important;cursor:pointer !important;text-align:center !important;}
.attp-wrap .attp-cal-list{margin-top:10px !important;}
.attp-wrap .attp-cal-row{display:flex !important;align-items:center !important;justify-content:space-between !important;gap:10px !important;padding:7px 0 !important;border-top:1px solid #f0f0f0 !important;font-size:13px !important;color:#000 !important;}
.attp-wrap .attp-cal-google{flex:0 0 auto !important;border:1.5px solid #0F766E !important;color:#0F766E !important;border-radius:999px !important;padding:4px 12px !important;font-weight:600 !important;font-size:13px !important;text-decoration:none !important;}

/* v1.74.0 other popular destinations: magenta pill borders + "near" line */
.attp-wrap .attp-place-chip{border:1.5px solid #cc00cc !important;}
.attp-wrap .attp-place-chip .attp-place-near{display:block !important;margin-top:2px !important;font-size:12px !important;color:#000 !important;}

/* v1.74.1 "near" sits on the name line, not a third line */
.attp-wrap .attp-place-chip strong .attp-place-near{display:inline !important;font-style:normal !important;font-weight:400 !important;font-size:0.82em !important;color:#000 !important;margin-left:2px !important;}

/* v1.74.3 top-bar calendar button */
.attp-step4-topbar .attp-cal-top[hidden]{display:none !important;}
@media print{.attp-cal-box{display:none !important;}}

/* v1.74.4 top-bar calendar dropdown (its own panel, no scrolling) */
.attp-step4-topbar{position:relative !important;}
.attp-wrap .attp-cal-pop{position:absolute !important;top:100% !important;right:0 !important;z-index:50 !important;width:min(380px,100%) !important;max-height:60vh !important;overflow:auto !important;margin-top:4px !important;padding:12px !important;background:#fff !important;border:1px solid #e5e7eb !important;border-radius:12px !important;box-shadow:0 10px 28px rgba(0,0,0,.18) !important;}
.attp-wrap .attp-cal-pop[hidden]{display:none !important;}
.attp-wrap .attp-cal-pop .attp-cal-ics{display:block !important;width:100% !important;background:#0F766E !important;color:#fff !important;border:0 !important;border-radius:10px !important;padding:10px 12px !important;font-weight:600 !important;font-size:14px !important;cursor:pointer !important;}
.attp-wrap .attp-cal-pop .attp-cal-list{margin-top:10px !important;}
@media print{.attp-cal-pop{display:none !important;}}

/* v1.74.5 own style for the top calendar button (no longer shares the My Trips class) */
.attp-cal-top {
	background: var(--attp-card);
	border: 1px solid var(--attp-border);
	border-radius: 999px;
	padding: 8px 16px;
	font-weight: 600;
	cursor: pointer;
	color: var(--attp-text);
}
.attp-cal-top:hover { border-color: #0055FF; color: #0055FF; }
.attp-step4-topbar .attp-cal-top { padding: 8px 16px; }

/* v1.75.0 Who's Travelling + Travel Pace side by side on wide screens */
.attp-wrap .attp-group-pace-row > .attp-field-block > .attp-purpose-box{height:100%;box-sizing:border-box;}

/* v1.76.2 share window: always hideable, and styled even when moved outside .attp-wrap */
.attp-modal[hidden]{display:none !important;}
.attp-modal{--attp-primary:#0f766e;--attp-primary-dark:#0b5a54;--attp-card:#fff;--attp-border:#e2e8e6;--attp-text:#1f2937;--attp-muted:#6b7280;--attp-radius:14px;}
.attp-modal .attp-modal-box{box-shadow:0 20px 50px rgba(0,0,0,.35);}

/* v1.77.0 email me this itinerary */
.attp-wrap .attp-email-box{position:relative !important;margin:18px 0 !important;padding:16px !important;background:#fff !important;border:1.5px solid #cc00cc !important;border-radius:14px !important;}
.attp-wrap .attp-email-title{font-weight:800 !important;color:#0b5a54 !important;font-size:1.05em !important;margin-bottom:2px !important;}
.attp-wrap .attp-email-sub{margin:0 0 10px !important;color:#000 !important;font-size:14px !important;}
.attp-wrap .attp-email-row{display:flex !important;gap:8px !important;flex-wrap:wrap !important;}
.attp-wrap .attp-email-input{flex:1 1 220px !important;min-width:0 !important;padding:10px 14px !important;border:1.5px solid #cc00cc !important;border-radius:999px !important;font-size:15px !important;background:#fff !important;color:#000 !important;}
.attp-wrap .attp-email-go{flex:0 0 auto !important;background:#cc00cc !important;color:#fff !important;border:0 !important;border-radius:999px !important;padding:10px 20px !important;font-weight:700 !important;font-size:15px !important;cursor:pointer !important;}
.attp-wrap .attp-email-go[disabled]{opacity:.6 !important;cursor:wait !important;}
.attp-wrap .attp-email-consent{display:flex !important;gap:8px !important;align-items:flex-start !important;margin-top:10px !important;font-size:13px !important;color:#000 !important;cursor:pointer !important;}
.attp-wrap .attp-email-consent input{margin-top:3px !important;}
.attp-wrap .attp-email-status{margin-top:8px !important;font-size:14px !important;min-height:1em;}
.attp-wrap .attp-email-status.is-ok{color:#0b5a54 !important;font-weight:600 !important;}
.attp-wrap .attp-email-status.is-error{color:#b91c1c !important;}
@media print{.attp-email-box{display:none !important;}}

/* v1.78.0 undo */
.attp-wrap .attp-undo-row{display:flex !important;align-items:center !important;gap:10px !important;flex-wrap:wrap !important;margin:0 0 10px !important;font-size:13px !important;color:#000 !important;}
.attp-wrap .attp-undo-inline{background:#fff !important;color:#000 !important;border:1.5px solid #cc00cc !important;border-radius:999px !important;padding:5px 14px !important;font-weight:600 !important;font-size:13px !important;cursor:pointer !important;}
.attp-wrap .attp-undo-what{color:#000 !important;}
@media print{#attpUndoToast{display:none !important;}}

/* v1.79.0 typical weather on destination cards */
.attp-wrap .attp-dest-weather{margin:2px 0 8px !important;font-size:0.88em !important;color:#000 !important;line-height:1.4 !important;}
.attp-wrap .attp-dest-weather strong{font-weight:700 !important;}

/* v1.79.1 city links: one row side by side on laptops; centred and compact on phones */
.attp-wrap .attp-city-text-links{display:flex !important;flex-wrap:wrap !important;align-items:center !important;justify-content:flex-start !important;gap:4px 0 !important;}
@media (min-width:768px){.attp-wrap .attp-city-text-links{flex-wrap:nowrap !important;}.attp-wrap .attp-city-text-links .attp-city-text-link{white-space:nowrap !important;}}
@media (max-width:767px){
	.attp-wrap .attp-city-text-links{justify-content:center !important;text-align:center !important;gap:2px 10px !important;font-size:0.76em !important;line-height:1.5 !important;margin:2px 0 8px !important;}
	.attp-wrap .attp-city-text-links .attp-city-text-sep{display:none !important;}
}

/* v1.79.2 — Share window: padded shadow border like the Dream Trip card */
.attp-modal .attp-modal-box{border:1px solid #cc00cc;padding:28px;box-shadow:0 6px 22px rgba(204,0,204,0.25),0 0 0 6px rgba(204,0,204,0.10);}

/* v1.80.0 — place auto-suggest under the Dream Trip box */
.attp-wrap .attp-suggest-list{position:absolute;left:0;right:0;z-index:50;margin:4px 0 0;padding:4px;list-style:none;background:#fff;border:1.5px solid #cc00cc;border-radius:12px;box-shadow:0 6px 22px rgba(204,0,204,0.25);max-height:280px;overflow-y:auto;}
.attp-wrap .attp-suggest-list[hidden]{display:none;}
.attp-wrap .attp-suggest-list li{margin:0;padding:10px 12px;border-radius:8px;cursor:pointer;color:#000;font-size:1em;list-style:none;}
.attp-wrap .attp-suggest-list li.is-active,.attp-wrap .attp-suggest-list li:hover{background:#fdf0fd;}
@media (max-width:600px){.attp-wrap .attp-suggest-list li{padding:12px;}}

/* v1.82.0 — longest-trip note */
.attp-wrap .attp-max-days-note{margin:-6px 0 12px;font-size:.8em;color:#6b7280;}

/* v1.82.1 — Share window background */
.attp-modal .attp-modal-box{background:#f0f0ff;}

/* v1.82.2 — weather sits under the description with a divider; month note removed */
.attp-wrap .attp-dest-weather{margin:6px 0 12px !important;padding:0 0 12px !important;border-bottom:1px solid #d9d9e3 !important;}

/* v1.82.3 — weather line: rectangular border instead of a divider */
.attp-wrap .attp-dest-weather{margin:8px 0 12px !important;padding:8px 12px !important;border:1px solid #cc00cc !important;border-radius:6px !important;background:#fff !important;}

/* v1.82.4 — third destination card: red border + padded magenta shadow (like the Dream Trip card) */
.attp-wrap .attp-dest-card.attp-dest-color-2,
.attp-wrap .attp-dest-card.attp-dest-color-2:hover,
.attp-wrap .attp-dest-card.attp-dest-color-2.is-selected{border-color:#cc0000 !important;box-shadow:0 6px 22px rgba(204,0,204,0.25) !important;}

/* v1.82.5 — Destinations page background matches the Dream Trip page */
#attpStep3 {
	background: #f8f4ff;
	border: 1px solid #cc00cc;
	box-shadow: 0 6px 22px rgba(204,0,204,0.25);
}

/* v1.84.0 — Recommended Partners cards + advertiser page */
.attp-wrap .attp-partners{margin:18px 0 6px;padding:0;}
.attp-wrap .attp-partners[hidden]{display:none !important;}
.attp-wrap .attp-partners-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 8px;color:#000;font-size:.95em;}
.attp-wrap .attp-partners-tag{font-size:.7em;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#6b7280;border:1px solid #d9d9e3;border-radius:999px;padding:2px 9px;background:#fff;}
.attp-wrap .attp-partners-list{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;}
@media (max-width:640px){.attp-wrap .attp-partners-list{grid-template-columns:1fr;}}
.attp-wrap .attp-partner{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#fff;border:1px solid #e2e2ec;border-radius:14px;text-decoration:none !important;color:#000 !important;transition:box-shadow .15s ease,transform .1s ease;}
.attp-wrap .attp-partner:hover{box-shadow:0 4px 14px rgba(204,0,204,0.22);transform:translateY(-1px);}
.attp-wrap .attp-partner img{width:52px;height:52px;border-radius:10px;object-fit:cover;flex:0 0 52px;background:#f4f4f8;}
.attp-wrap .attp-partner-text{display:flex;flex-direction:column;min-width:0;}
.attp-wrap .attp-partner-text strong{font-size:1em;color:#000;line-height:1.25;}
.attp-wrap .attp-partner-text em{font-style:normal;font-size:.86em;color:#4b5563;line-height:1.35;}
.attp-wrap .attp-partner-cta{background:#f6f6fa;border:2px dashed #cfcfdd;justify-content:center;text-align:left;}
.attp-wrap .attp-partner-cta .attp-partner-text em{color:#6b7280;font-size:.84em;}
/* advertiser page */
.attp-adv{max-width:760px;margin:0 auto;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:#1f2937;}
.attp-adv h2{margin:0 0 6px;}
.attp-adv-lead{font-size:1.05em;line-height:1.5;}
.attp-adv-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0;}
.attp-adv-facts div,.attp-adv-stats div{background:#f8f4ff;border:1px solid #cc00cc;border-radius:12px;padding:10px 12px;text-align:center;}
.attp-adv-facts strong,.attp-adv-stats strong{display:block;font-size:1.15em;color:#000;}
.attp-adv-facts span,.attp-adv-stats span{font-size:.8em;color:#6b7280;}
.attp-adv-steps{padding-left:20px;line-height:1.7;}
.attp-adv-msg{padding:10px 14px;border-radius:10px;margin:10px 0;font-weight:600;}
.attp-adv-ok{background:#ecfdf5;border:1px solid #10b981;color:#065f46;}
.attp-adv-err{background:#fef2f2;border:1px solid #ef4444;color:#991b1b;}
.attp-adv-form{background:#f8f4ff;border:1px solid #cc00cc;box-shadow:0 6px 22px rgba(204,0,204,0.25);border-radius:14px;padding:22px;margin:18px 0;display:grid;gap:12px;}
.attp-adv-form h3{margin:0;}
.attp-adv-form label{display:grid;gap:5px;font-weight:600;font-size:.92em;}
.attp-adv-form input[type=text],.attp-adv-form input[type=email],.attp-adv-form input[type=url],.attp-adv-form input[type=file]{padding:10px 12px;border:1px solid #cfcfdd;border-radius:10px;font-size:1em;background:#fff;width:100%;box-sizing:border-box;}
.attp-adv-ad{border:1px solid #e2e2ec;border-radius:14px;padding:14px;margin:12px 0;background:#fff;}
.attp-adv-ad-head{display:flex;align-items:center;gap:12px;}
.attp-adv-ad-head img{border-radius:10px;object-fit:cover;}
.attp-adv-ad-head div{flex:1;display:flex;flex-direction:column;min-width:0;}
.attp-adv-ad-head span{font-size:.88em;color:#4b5563;}
.attp-adv-chip{font-style:normal;font-size:.75em;font-weight:700;padding:3px 10px;border-radius:999px;background:#eef;white-space:nowrap;}
.attp-adv-chip-live{background:#d1fae5;color:#065f46;}.attp-adv-chip-pending{background:#fef3c7;color:#92400e;}.attp-adv-chip-approved{background:#dbeafe;color:#1e40af;}.attp-adv-chip-rejected,.attp-adv-chip-expired{background:#fee2e2;color:#991b1b;}
.attp-adv-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0;}
@media (max-width:600px){.attp-adv-stats{grid-template-columns:repeat(2,1fr);}.attp-adv-facts{grid-template-columns:1fr;}}
.attp-adv-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
.attp-adv-terms{font-size:.8em;color:#6b7280;margin-top:20px;}
.attp-adv .attp-btn-primary,.attp-adv .attp-btn-secondary{display:inline-block;cursor:pointer;border-radius:999px;padding:10px 20px;font-weight:700;text-decoration:none;border:1.5px solid #cc00cc;}
.attp-adv .attp-btn-primary{background:#cc00cc;color:#fff;}
.attp-adv .attp-btn-secondary{background:#fff;color:#000;}

/* v1.84.1 — advertiser daily charts */
.attp-adv-charts{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:8px 0 12px;}
@media (max-width:600px){.attp-adv-charts{grid-template-columns:1fr;}}
.attp-adv-chart{background:#fafafe;border:1px solid #e2e2ec;border-radius:12px;padding:10px 12px;}
.attp-adv-chart-top{display:flex;justify-content:space-between;gap:8px;font-size:.8em;color:#4b5563;margin-bottom:6px;flex-wrap:wrap;}
.attp-adv-chart-top strong{color:#000;}
.attp-adv-chart svg{display:block;}
.attp-adv-chart-axis{display:flex;justify-content:space-between;font-size:.72em;color:#6b7280;margin-top:3px;}

/* v1.85.0 — sidebar widgets */
.attp-wrap.attp-widget{max-width:none;margin:0;}
.attp-wrap .attp-partners-side .attp-partners-list{grid-template-columns:1fr;}
.attp-wrap .attp-cta-box{background:#f8f4ff;border:1px solid #cc00cc;box-shadow:0 6px 22px rgba(204,0,204,0.25);border-radius:14px;padding:18px;text-align:center;}
.attp-wrap .attp-cta-box strong{display:block;font-size:1.1em;color:#000;margin-bottom:6px;}
.attp-wrap .attp-cta-box p{margin:0 0 12px;color:#4b5563;font-size:.92em;line-height:1.45;}
.attp-wrap .attp-cta-btn{display:inline-block;background:#cc00cc;color:#fff !important;font-weight:700;border-radius:999px;padding:10px 22px;text-decoration:none !important;}
.attp-wrap .attp-cta-btn:hover{opacity:.9;}

/* v1.86.0 — Advertise pop-up */
.attp-admodal[hidden]{display:none !important;}
.attp-admodal{position:fixed !important;inset:0 !important;z-index:999999 !important;background:rgba(15,15,30,.55) !important;display:flex !important;align-items:center;justify-content:center;padding:16px !important;max-width:none !important;margin:0 !important;overflow:auto;}
.attp-admodal .attp-admodal-box{position:relative;background:#fff;border-radius:16px;max-width:560px;width:100%;max-height:92vh;overflow:auto;padding:26px;box-shadow:0 10px 40px rgba(0,0,0,.3);color:#111;text-align:left;}
.attp-admodal h3{margin:0 40px 8px 0 !important;font-size:1.45em !important;line-height:1.2;}
.attp-admodal .attp-admodal-x{position:absolute;top:12px;right:12px;width:38px;height:38px;border:1px solid #e2e2ec !important;background:#fff !important;border-radius:10px;font-size:22px;line-height:1;cursor:pointer;color:#111 !important;padding:0 !important;}
.attp-admodal .attp-admodal-lead{color:#4b5563;margin:0 0 14px;line-height:1.5;}
.attp-admodal .attp-admodal-card{background:#f6f6fa;border-radius:12px;padding:14px 16px;margin:0 0 14px;}
.attp-admodal .attp-admodal-card p{margin:6px 0 0;line-height:1.7;}
.attp-admodal label{display:block;font-weight:700;margin:0 0 12px;font-size:.95em;}
.attp-admodal label small{font-weight:400;color:#6b7280;}
.attp-admodal input[type=text],.attp-admodal input[type=url],.attp-admodal input[type=email],.attp-admodal input[type=file]{display:block;width:100%;box-sizing:border-box;margin-top:6px;padding:11px 12px;border:1.5px solid #d6d6e2;border-radius:10px;font-size:1em;font-weight:400;background:#fff;}
.attp-admodal .attp-admodal-btn{background:#000 !important;color:#fff !important;border:0 !important;border-radius:10px;padding:12px 22px !important;font-weight:700;cursor:pointer;font-size:1em;}
.attp-admodal .attp-admodal-btn[disabled]{opacity:.6;cursor:wait;}
.attp-admodal .attp-admodal-back{background:#fff !important;color:#111 !important;border:1.5px solid #d6d6e2 !important;border-radius:10px;padding:12px 20px !important;font-weight:600;cursor:pointer;}
.attp-admodal .attp-admodal-row{display:flex;gap:10px;align-items:center;}
.attp-admodal .attp-admodal-note{color:#6b7280;font-size:.88em;margin:12px 0 0;}
.attp-admodal .attp-admodal-err{background:#fef2f2;color:#b91c1c;border-radius:10px;padding:10px 12px;margin:0 0 12px;font-size:.92em;}
.attp-adv-form label small{font-weight:400;color:#6b7280;}

/* v1.87.2 — third destination card: magenta selection box (was lime) */
.attp-wrap .attp-dest-color-2 .attp-dest-marker{border-color:#cc00cc !important;}
.attp-wrap .attp-dest-color-2.is-selected .attp-dest-marker{background:#cc00cc !important;border-color:#cc00cc !important;}

/* v1.88.0 — chat box and email box side by side on laptop/PC */
.attp-wrap .attp-refine-email-row{display:block;margin:0 0 16px;}
.attp-wrap .attp-refine-email-row .attp-refine{margin:0 0 16px !important;}
.attp-wrap .attp-refine-email-row .attp-email-box{margin:0 0 16px !important;}
@media (min-width:900px){
.attp-wrap .attp-refine-email-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:stretch;}
.attp-wrap .attp-refine-email-row .attp-refine,.attp-wrap .attp-refine-email-row .attp-email-box{margin:0 !important;box-sizing:border-box;height:100%;}
}

/* v1.89.0 — More Itinerary Ideas sits under the Start The Magic button */
.attp-wrap .attp-accordion-bottom{margin:18px 0 8px !important;}

/* v1.90.0 — day action row and feedback centred; Yes / No buttons */
.attp-wrap .attp-day-actions{justify-content:center !important;text-align:center !important;}
.attp-wrap .attp-day-actions .attp-map-panel,.attp-wrap .attp-day-actions .attp-day-edit-panel{text-align:left;}
.attp-wrap .attp-fb{justify-content:center !important;text-align:center !important;}
.attp-wrap .attp-fb-btn{font-size:.95em !important;font-weight:700 !important;padding:3px 16px !important;color:#000 !important;}
.attp-wrap .attp-fb-more{text-align:left;}
.attp-wrap .attp-day-actions .attp-fb-btn{font-size:13px !important;padding:2px 14px !important;}

/* v1.90.1 — city links row (Best Hotels, Things To Do, Tour Guides, Airport) centred everywhere */
.attp-wrap .attp-city-text-links{justify-content:center !important;text-align:center !important;}

/* v1.90.2 — overall rating: last thing on the itinerary, centred and compact */
.attp-wrap .attp-fb-overall{width:fit-content !important;max-width:100% !important;margin:22px auto 8px !important;padding:10px 20px !important;justify-content:center !important;}
.attp-wrap .attp-fb-overall .attp-fb-more{flex-basis:100%;}

/* v1.92.0 — flights: "Landing in" / "Flying home from" and the line on the itinerary */
.attp-wrap .attp-flights-row{margin:6px 0 4px;}
.attp-wrap .attp-flights-row .attp-label em{font-style:normal;font-weight:400;color:#6b7280;font-size:.88em;}
.attp-wrap .attp-flight-field{position:relative;}
.attp-wrap .attp-flight-field input[type=text]{width:100%;box-sizing:border-box;}
.attp-wrap .attp-flights-line{margin:0 0 14px;padding:9px 14px;background:#fff;border:1px solid #e6d3e6;border-radius:12px;text-align:center;font-size:.92em;color:#000;}
.attp-wrap .attp-flights-assumed{color:#6b7280;}
.attp-wrap .attp-flights-change{appearance:none;background:none;border:0;padding:0;margin-left:4px;color:#cc00cc;font-weight:700;cursor:pointer;text-decoration:underline;font-size:1em;}
@media print{.attp-flights-change{display:none !important;}}
.attp-wrap .attp-flights-row > .attp-label{display:block;margin:0 0 8px;}
.attp-wrap .attp-flight-field input[type=text]{border:2px solid #cc00cc !important;border-radius:12px !important;padding:11px 14px !important;font-size:1em !important;background:#fff !important;color:#000 !important;height:auto;}
.attp-wrap .attp-flight-field input[type=text]:focus{outline:none;box-shadow:0 0 0 3px rgba(204,0,204,.18);}

/* v1.93.0 – flights: hint, notes, time fields */
.attp-wrap .attp-flights-hint{margin:0 0 10px;color:#374151;font-size:.92em;}
.attp-wrap .attp-flight-col{display:flex;flex-direction:column;gap:8px;min-width:0;}
.attp-wrap .attp-flight-time input[type=time]{border:2px solid #e6d3e6 !important;border-radius:12px !important;padding:9px 12px !important;font-size:1em !important;background:#fff !important;color:#000 !important;height:auto;max-width:170px;box-sizing:border-box;}
.attp-wrap .attp-flight-time .attp-label{font-weight:500;font-size:.9em;}
.attp-wrap .attp-flight-note{background:#f8f4ff;border:1px solid #cc00cc;border-radius:12px;padding:8px 12px;font-size:.88em;color:#000;line-height:1.5;}
.attp-wrap .attp-flight-note[hidden]{display:none !important;}
.attp-wrap .attp-flight-use,.attp-wrap .attp-flight-keep{appearance:none;border:1px solid #cc00cc;background:#fff;color:#cc00cc;border-radius:999px;padding:3px 11px;margin:3px 4px 0 0;font-weight:700;font-size:.95em;cursor:pointer;}
.attp-wrap .attp-flight-use{background:#cc00cc;color:#fff;}
.attp-wrap .attp-flight-col .attp-flight-note{order:3;}
.attp-wrap .attp-flight-col .attp-flight-time{order:2;}
.attp-wrap .attp-flight-col .attp-flight-field{order:1;}
.attp-wrap .attp-flights-row .attp-grid-2{align-items:start;}

/* v1.93.4 – "Want to change something?" box matches the email box */
.attp-wrap .attp-refine{border:1.5px solid #cc00cc !important;border-radius:14px !important;padding:16px !important;background:#fff !important;}
.attp-wrap .attp-refine-input{border:2px solid #cc00cc !important;border-radius:12px !important;}
.attp-wrap .attp-refine-input:focus{outline:none;box-shadow:0 0 0 3px rgba(204,0,204,.18);}

/* v1.93.5 */
.attp-wrap .attp-flights-hint{margin:10px 0 0;color:#6b7280;font-size:.88em;}

/* v1.93.11 – calendar button sits with Save / Print / Share */
.attp-wrap .attp-cal-slot{flex:1 1 100%;display:flex;justify-content:flex-end;}
.attp-wrap .attp-cal-slot:empty{display:none;}
.attp-wrap .attp-cal-slot .attp-cal-box{margin:0 !important;display:flex;flex-direction:column;align-items:flex-end;max-width:100%;}
.attp-wrap .attp-cal-slot .attp-cal-panel{text-align:left;width:min(520px,100%);}
@media (max-width:600px){.attp-wrap .attp-cal-slot,.attp-wrap .attp-cal-slot .attp-cal-box{justify-content:center;align-items:center;}}

/* v1.93.12 – calendar button on the same line as the other buttons; its list opens upward */
.attp-wrap .attp-cal-slot{flex:0 0 auto !important;display:block !important;position:relative;}
.attp-wrap .attp-cal-slot:empty{display:none !important;}
.attp-wrap .attp-cal-slot .attp-cal-box{display:block !important;align-items:initial;}
.attp-wrap .attp-cal-slot .attp-cal-toggle{padding:10px 18px !important;}
.attp-wrap .attp-cal-slot .attp-cal-panel{position:absolute;bottom:calc(100% + 8px);right:0;margin:0 !important;width:min(380px,86vw);z-index:30;box-shadow:0 10px 30px rgba(0,0,0,.18);}
.attp-wrap .attp-cal-slot .attp-cal-panel[hidden]{display:none !important;}
@media (max-width:600px){.attp-wrap .attp-cal-slot .attp-cal-panel{right:auto;left:50%;transform:translateX(-50%);}}
.attp-wrap .attp-fb-overall{margin:22px auto 16px !important;}

/* v1.93.14 – "Which city would you like to start in?" drop-down */
.attp-wrap .attp-arrival-field select,.attp-wrap #attpArrivalCity{background:#bf00ff !important;color:#fff !important;border:2px solid #bf00ff !important;font-weight:600 !important;}
.attp-wrap .attp-arrival-field select option{background:#bf00ff;color:#fff;}
.attp-wrap .attp-arrival-field select:focus{outline:none;box-shadow:0 0 0 3px rgba(191,0,255,.28);}

/* v1.93.15 – suggestion drop-downs: purple #bf00ff with white text */
.attp-wrap .attp-suggest-list{background:#bf00ff !important;border:2px solid #bf00ff !important;box-shadow:0 8px 24px rgba(191,0,255,.35) !important;}
.attp-wrap .attp-suggest-list li{color:#fff !important;font-weight:600;}
.attp-wrap .attp-suggest-list li.is-active,.attp-wrap .attp-suggest-list li:hover{background:#8f00bf !important;color:#fff !important;}

/* v1.93.16 – drop-downs in #bd7aef */
.attp-wrap .attp-suggest-list{background:#bd7aef !important;border:2px solid #bd7aef !important;box-shadow:0 8px 24px rgba(189,122,239,.4) !important;}
.attp-wrap .attp-suggest-list li.is-active,.attp-wrap .attp-suggest-list li:hover{background:#a05bd8 !important;}
.attp-wrap .attp-arrival-field select,.attp-wrap #attpArrivalCity{background:#bd7aef !important;border:2px solid #bd7aef !important;}
.attp-wrap .attp-arrival-field select option{background:#bd7aef;color:#fff;}
.attp-wrap .attp-arrival-field select:focus{box-shadow:0 0 0 3px rgba(189,122,239,.35);}

/* v1.93.17 */
.attp-wrap .attp-flight-field .attp-opt{font-style:normal;font-weight:400;color:#6b7280;font-size:.88em;}
.attp-wrap .attp-flights-row .attp-flights-hint{margin:2px 0 0 !important;}
.attp-wrap .attp-flights-row .attp-flight-col{gap:4px;}

/* v1.94.0 – taglines wear the card's border colour (white text); badges retired */
.attp-wrap .attp-dest-tagline{display:inline-block;font-style:normal !important;font-weight:600;color:#fff !important;padding:6px 14px;border-radius:12px;line-height:1.45;margin:2px 0 12px !important;background:#20605E;}
.attp-wrap .attp-dest-color-0 .attp-dest-tagline{background:#20605E;}
.attp-wrap .attp-dest-color-1 .attp-dest-tagline{background:#F54927;}
.attp-wrap .attp-dest-color-2 .attp-dest-tagline{background:#cc0000;}
.attp-wrap .attp-dest-color-3 .attp-dest-tagline{background:#4927F5;}
.attp-wrap .attp-dest-color-4 .attp-dest-tagline{background:#F5276C;}
.attp-wrap .attp-dest-color-5 .attp-dest-tagline{background:#8C3FDE;}

/* v1.95.0 – "I don't have dates yet" */
.attp-wrap .attp-nodates-toggle{display:inline-flex;align-items:center;gap:8px;margin:2px 0 14px;font-weight:600;color:#20605E;cursor:pointer;font-size:.95em;}
.attp-wrap .attp-nodates-toggle input{width:18px;height:18px;accent-color:#cc00cc;margin:0;}
.attp-wrap .attp-nodates-block[hidden],.attp-wrap #attpDatesBlock[hidden]{display:none !important;}
.attp-wrap .attp-nodates-block{margin:0 0 6px;}
.attp-wrap .attp-nodates-block input[type=number],.attp-wrap .attp-nodates-block select{width:100%;box-sizing:border-box;border:2px solid #cc00cc !important;border-radius:12px !important;padding:11px 14px !important;font-size:1em !important;background:#fff !important;color:#000 !important;height:auto;}
.attp-wrap .attp-nodates-hint{margin:6px 0 0;color:#6b7280;font-size:.88em;}
.attp-wrap .attp-auto-note{margin:0 0 14px;padding:9px 14px;background:#f8f4ff;border:1px solid #cc00cc;border-radius:12px;font-size:.92em;color:#000;}
.attp-wrap .attp-auto-note[hidden]{display:none !important;}
.attp-wrap .attp-late-date{display:flex;flex-direction:column;gap:6px;font-weight:600;}
.attp-wrap .attp-late-date input{border:2px solid #cc00cc;border-radius:10px;padding:8px 10px;font-size:1em;}
.attp-wrap .attp-nodates-block{margin-bottom:14px !important;}

/* v1.95.1 – flights collapsed behind a link */
.attp-wrap .attp-flights-row[hidden],.attp-wrap #attpFlightsBody[hidden]{display:none !important;}
.attp-wrap .attp-flights-link{appearance:none;background:none;border:0;padding:4px 0;color:#cc00cc;font-weight:700;font-size:.95em;cursor:pointer;text-decoration:underline;}
.attp-wrap .attp-flights-link[hidden]{display:none !important;}

/* v1.95.5 airports tick box, days drop-down, smaller month/days menus */
.attp-wrap .attp-flights-toggle{margin:2px 0 8px !important;}
.attp-wrap .attp-nodates-block .attp-grid-2{grid-template-columns:minmax(0,150px) minmax(0,170px) !important;gap:12px !important;justify-content:start !important;}
.attp-wrap .attp-nodates-block select{width:100% !important;padding:7px 28px 7px 10px !important;font-size:14px !important;min-height:0 !important;height:auto !important;border:2px solid #cc00cc !important;border-radius:8px !important;}
@media (max-width:480px){.attp-wrap .attp-nodates-block .attp-grid-2{grid-template-columns:1fr 1fr !important;}}

/* v1.95.7 keep days + month menus level on desktop */
.attp-wrap .attp-nodates-block .attp-grid-2{grid-template-columns:minmax(150px,190px) minmax(230px,280px) !important;align-items:end !important;gap:14px !important;}
.attp-wrap .attp-nodates-block .attp-label{white-space:nowrap !important;display:block !important;}
.attp-wrap .attp-nodates-block .attp-label .attp-opt{display:inline !important;}
@media (max-width:520px){.attp-wrap .attp-nodates-block .attp-grid-2{grid-template-columns:1fr 1fr !important;}.attp-wrap .attp-nodates-block .attp-label{white-space:normal !important;}}

/* v1.95.10 centre the days + month menus and make labels line up with the boxes (theme-proof) */
.attp-wrap .attp-nodates-block .attp-grid-2{justify-content:center !important;margin-left:auto !important;margin-right:auto !important;}
.attp-wrap .attp-nodates-block .attp-field{padding:0 !important;margin:0 !important;text-indent:0 !important;align-items:stretch !important;}
.attp-wrap .attp-nodates-block .attp-field .attp-label{padding:0 !important;margin:0 0 6px 0 !important;text-indent:0 !important;text-align:left !important;}
.attp-wrap .attp-nodates-block .attp-field select{margin:0 !important;box-sizing:border-box !important;}
.attp-wrap .attp-nodates-hint{text-align:center !important;}

/* v1.95.11 equal-width days + month menus; stacked on mobile */
.attp-wrap .attp-nodates-block .attp-grid-2{grid-template-columns:220px 220px !important;gap:16px !important;}
@media (max-width:600px){
.attp-wrap .attp-nodates-block .attp-grid-2{grid-template-columns:1fr !important;gap:12px !important;justify-content:stretch !important;}
.attp-wrap .attp-nodates-block .attp-field{margin-bottom:0 !important;}
.attp-wrap .attp-nodates-block .attp-label{white-space:normal !important;}
}

/* v1.95.13 colour band moves from the tagline to the city name */
.attp-wrap .attp-dest-card h4{display:block;color:#fff !important;font-weight:700;padding:8px 14px !important;border-radius:12px;line-height:1.35;margin:0 0 8px !important;background:#20605E;}
.attp-wrap .attp-dest-color-0 h4{background:#20605E;}
.attp-wrap .attp-dest-color-1 h4{background:#F54927;}
.attp-wrap .attp-dest-color-2 h4{background:#cc0000;}
.attp-wrap .attp-dest-color-3 h4{background:#4927F5;}
.attp-wrap .attp-dest-color-4 h4{background:#F5276C;}
.attp-wrap .attp-dest-color-5 h4{background:#8C3FDE;}
.attp-wrap .attp-dest-tagline{display:block !important;background:none !important;color:#444 !important;padding:0 !important;border-radius:0 !important;font-style:italic !important;font-weight:500 !important;margin:0 0 12px !important;}
.attp-wrap .attp-dest-color-0 .attp-dest-tagline,.attp-wrap .attp-dest-color-1 .attp-dest-tagline,.attp-wrap .attp-dest-color-2 .attp-dest-tagline,.attp-wrap .attp-dest-color-3 .attp-dest-tagline,.attp-wrap .attp-dest-color-4 .attp-dest-tagline,.attp-wrap .attp-dest-color-5 .attp-dest-tagline{background:none !important;}

/* v1.96.0 small tag on each city card: why it is on the list */
.attp-wrap .attp-dest-reason{display:inline-block;font-size:11.5px;font-weight:700;line-height:1;letter-spacing:.2px;padding:5px 9px;border-radius:999px;margin:0 0 9px;background:#f3e8ff;color:#6b21a8;border:1px solid #e0c3fb;}
.attp-wrap .attp-dest-reason-your_choice{background:#e6f6f4;color:#0F766E;border-color:#b6e3dd;}
.attp-wrap .attp-dest-reason-popular{background:#fff4d6;color:#8a5a00;border-color:#f3dc9b;}
.attp-wrap .attp-dest-reason-nearby{background:#eef2f7;color:#475569;border-color:#d5dde8;}

/* v1.96.1 colour moves from the city name to the reason tag (white text, card colour) */
.attp-wrap .attp-dest-card h4,
.attp-wrap .attp-dest-color-0 h4,.attp-wrap .attp-dest-color-1 h4,.attp-wrap .attp-dest-color-2 h4,.attp-wrap .attp-dest-color-3 h4,.attp-wrap .attp-dest-color-4 h4,.attp-wrap .attp-dest-color-5 h4{background:none !important;color:#1f2937 !important;padding:0 !important;border-radius:0 !important;margin:0 0 6px !important;font-weight:700;}
.attp-wrap .attp-dest-reason,.attp-wrap .attp-dest-reason-your_choice,.attp-wrap .attp-dest-reason-popular,.attp-wrap .attp-dest-reason-interests,.attp-wrap .attp-dest-reason-nearby{color:#fff !important;border:0 !important;font-size:12.5px;padding:7px 13px;margin:0 0 10px;background:#20605E;}
.attp-wrap .attp-dest-color-0 .attp-dest-reason{background:#20605E !important;}
.attp-wrap .attp-dest-color-1 .attp-dest-reason{background:#F54927 !important;}
.attp-wrap .attp-dest-color-2 .attp-dest-reason{background:#cc0000 !important;}
.attp-wrap .attp-dest-color-3 .attp-dest-reason{background:#4927F5 !important;}
.attp-wrap .attp-dest-color-4 .attp-dest-reason{background:#F5276C !important;}
.attp-wrap .attp-dest-color-5 .attp-dest-reason{background:#8C3FDE !important;}

/* v1.97.0 extra pages in the progress bar */
.attp-wrap .attp-step-extra{border:2px dashed #cc00cc !important;background:#fff !important;color:#cc00cc !important;font-weight:700;}
.attp-wrap .attp-step-extra:hover,.attp-wrap .attp-step-extra.is-active{background:#cc00cc !important;color:#fff !important;border-style:solid !important;}
.attp-wrap .attp-extra-panel[hidden]{display:none !important;}
.attp-wrap .attp-extra-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:space-between;margin:0 0 10px;}
.attp-wrap .attp-extra-title{flex:1 1 auto;text-align:center;color:#20605E;}
.attp-wrap .attp-extra-bar .attp-btn-secondary{padding:8px 14px;font-size:.92em;text-decoration:none;white-space:nowrap;}
.attp-wrap .attp-extra-frame{display:block;width:100%;height:78vh;min-height:520px;border:2px solid #cc00cc;border-radius:12px;background:#fff;}
.attp-wrap .attp-extra-note{font-size:.82em;color:#6b7280;text-align:center;margin:8px 0 0;}
@media (max-width:600px){.attp-wrap .attp-extra-frame{height:70vh;min-height:420px;}.attp-wrap .attp-extra-title{order:3;flex-basis:100%;}}
.attp-wrap a.attp-step-extra-link{text-decoration:none !important;display:inline-flex;align-items:center;}

/* v1.97.2 no dotted border on the extra progress-bar buttons */
.attp-wrap .attp-step-extra,.attp-wrap .attp-step-extra:hover,.attp-wrap .attp-step-extra.is-active{border:0 !important;outline:0;box-shadow:none !important;}

/* v1.97.3 progress bar: everything centred; extra buttons match the step buttons in size and shape */
.attp-wrap .attp-steps{justify-content:center !important;align-items:center !important;}
.attp-wrap .attp-step.attp-step-extra{font-size:0.85em !important;padding:8px 14px !important;border-radius:999px !important;background:#fbe8fb !important;color:#a800a8 !important;font-weight:600 !important;line-height:normal;}
.attp-wrap .attp-step.attp-step-extra:hover,.attp-wrap .attp-step.attp-step-extra.is-active{background:#cc00cc !important;color:#fff !important;}
@media (max-width:600px){
.attp-wrap .attp-steps{gap:6px !important;padding:8px !important;}
.attp-wrap .attp-step{padding:7px 11px;}
.attp-wrap .attp-step.attp-step-extra{padding:7px 11px !important;}
}

/* v1.97.4 extra progress-bar buttons back to the off-white background with magenta text (same size and shape as the steps) */
.attp-wrap .attp-step.attp-step-extra{background:#fff !important;color:#cc00cc !important;font-weight:700 !important;}
.attp-wrap .attp-step.attp-step-extra:hover,.attp-wrap .attp-step.attp-step-extra.is-active{background:#cc00cc !important;color:#fff !important;}

/* v1.98.0 no-dates mode: one "Flying from" field, no tick box, no arrival airport */
.attp-wrap .attp-flights-row.is-nodates #attpFlightsToggle,.attp-wrap .attp-flights-row.is-nodates .attp-flight-col:first-child,.attp-wrap .attp-flights-row.is-nodates .attp-flights-hint{display:none !important;}
.attp-wrap .attp-flights-row.is-nodates .attp-grid-2{grid-template-columns:minmax(0,420px) !important;justify-content:center !important;}
.attp-wrap .attp-flights-row.is-nodates #attpFlightsBody{margin-top:4px;}
.attp-wrap .attp-flights-row .attp-lbl-nodates[hidden],.attp-wrap .attp-flights-row .attp-lbl-std[hidden]{display:none !important;}

/* v1.98.1 tick box on the Other Popular Destinations chips */
.attp-wrap .attp-place-chip{flex-direction:row !important;align-items:center !important;gap:10px !important;}
.attp-wrap .attp-place-chip .attp-chip-text{display:flex;flex-direction:column;gap:1px;font-size:inherit !important;color:inherit !important;}
.attp-wrap .attp-place-chip .attp-chip-text > span{font-size:0.76em;color:var(--attp-muted);}
.attp-wrap .attp-place-chip .attp-chip-text > span.attp-place-sight{color:#20605E;font-weight:600;margin-top:2px;}
.attp-wrap .attp-place-chip .attp-chip-box{flex:0 0 20px;width:20px;height:20px;box-sizing:border-box;border:2px solid #cc00cc;border-radius:5px;background:#fff;position:relative;font-size:0 !important;}
.attp-wrap .attp-place-chip .attp-chip-box.is-round{border-radius:50%;}
.attp-wrap .attp-place-chip.is-selected .attp-chip-box{background:#cc00cc;}
.attp-wrap .attp-place-chip.is-selected .attp-chip-box::after{content:'';position:absolute;left:5px;top:1px;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg);}
.attp-wrap .attp-place-chip.is-selected strong::before{content:none !important;}

/* v1.98.2 Quick Tip lives inside the coloured "Did you know" box, in a white-bordered panel */
.attp-fact-box .attp-fact-tip{margin-top:12px;padding:10px 14px;border:2px solid #fff;border-radius:10px;color:#fff;font-family:'Poppins',-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:0.9em;line-height:1.5;background:transparent;-webkit-print-color-adjust:exact;print-color-adjust:exact;}
.attp-fact-box .attp-fact-tip strong{color:#fff;font-weight:700;}

/* v1.98.3 light border around the itinerary overview */
.attp-wrap .attp-itin-overview{border:1.5px solid #bfdcd8 !important;}

/* 1.142.0 city cards: sections are lined up by script (attp-planner.js alignCardHeadings); the CSS subgrid version overlapped text in Opera. */

/* v1.98.8 - magenta tick boxes for nearby places and attractions */
.attp-wrap .attp-dest-card input.attp-addon-checkbox,
.attp-wrap .attp-dest-card input.attp-attraction-checkbox{-webkit-appearance:none !important;appearance:none !important;flex:0 0 20px;width:20px !important;height:20px !important;box-sizing:border-box;border:2px solid #cc00cc !important;border-radius:5px;background:#fff !important;position:relative;margin:0;cursor:pointer;}
.attp-wrap .attp-dest-card input.attp-addon-checkbox:checked,
.attp-wrap .attp-dest-card input.attp-attraction-checkbox:checked{background:#cc00cc !important;}
.attp-wrap .attp-dest-card input.attp-addon-checkbox:checked::after,
.attp-wrap .attp-dest-card input.attp-attraction-checkbox:checked::after{content:'';position:absolute;left:5px;top:1px;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg);}
.attp-wrap .attp-dest-card input.attp-addon-checkbox:disabled{border-color:#cc00cc !important;cursor:not-allowed;}

/* v1.98.9 - "suggested plan" note under the itinerary page heading */
.attp-wrap .attp-itin-suggest{margin:0 0 14px;font-size:.95em;color:#1f2937;}

/* v1.98.12 - flights line: centred box that fits its text (like the "Is this itinerary helpful?" box) */
.attp-wrap .attp-flights-line{width:fit-content;max-width:100%;margin:0 auto 14px !important;box-sizing:border-box;}

/* v1.99.0 - hotel search page */
.attp-wrap.attp-hotels{max-width:880px;margin:0 auto;padding:20px;background:#f7f4ff;border:1.5px solid #cc00cc;border-radius:18px;box-sizing:border-box;}
.attp-wrap .attp-hotels-title{margin:0 0 4px;color:#20605E;}
.attp-wrap .attp-hotels-sub{margin:0 0 14px;color:#374151;}
.attp-wrap .attp-hotels-form input[type=text],.attp-wrap .attp-hotels-form input[type=date],.attp-wrap .attp-hotels-form select{width:100%;box-sizing:border-box;padding:10px 12px;border:2px solid #20605E;border-radius:12px;background:#fff;font-size:1em;}
.attp-wrap .attp-hotels-lbl{display:block;font-weight:600;margin:10px 0 4px;color:#1f2937;}
.attp-wrap .attp-hotels-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;}
.attp-wrap .attp-hotels-ages{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px;}
.attp-wrap .attp-hotels-age{display:block;min-width:120px;}
.attp-wrap .attp-hotels-age span{display:block;font-size:.85em;margin-bottom:3px;color:#374151;}
.attp-wrap .attp-hotels-form .attp-btn-primary{margin-top:16px;}
.attp-wrap .attp-hotels-status{margin:12px 0 0;color:#374151;text-align:center;}
.attp-wrap .attp-hotels-status.is-error{color:#b91c1c;}
.attp-wrap .attp-hotels-head h4{margin:18px 0 4px;color:#20605E;}
.attp-wrap .attp-hotels-head p{margin:0 0 10px;color:#374151;}
.attp-wrap .attp-hotels-list{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;}
.attp-wrap .attp-hotel-card{background:#fff;border:1.5px solid #bfdcd8;border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:6px;}
.attp-wrap .attp-hotel-name{font-weight:700;color:#1f2937;font-size:1.05em;}
.attp-wrap .attp-hotel-meta{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:.88em;color:#4b5563;}
.attp-wrap .attp-hotel-why{margin:0;color:#374151;font-size:.95em;flex:1;}
.attp-wrap .attp-hotel-btn{align-self:flex-start;margin-top:4px;padding:8px 14px;border-radius:999px;border:2px solid #cc00cc;color:#cc00cc;background:#fff;font-weight:700;text-decoration:none;font-size:.92em;}
.attp-wrap .attp-hotel-btn:hover{background:#cc00cc;color:#fff;}
.attp-wrap .attp-hotels-all{text-align:center;margin:18px 0 6px;}
.attp-wrap .attp-hotels-all-btn{display:inline-block;text-decoration:none;}
.attp-wrap .attp-hotels-note{font-size:.82em;color:#6b7280;text-align:center;margin:8px 0 0;}
@media (max-width:700px){
	.attp-wrap .attp-hotels-row{grid-template-columns:1fr 1fr;}
	.attp-wrap .attp-hotels-list{grid-template-columns:1fr;}
}

/* v1.99.1 - hotel search form: hold its layout against theme form styles */
.attp-wrap.attp-hotels{overflow:hidden;}
.attp-wrap.attp-hotels .attp-hotels-sub{font-size:1em !important;line-height:1.5 !important;margin:0 0 14px !important;}
.attp-wrap.attp-hotels .attp-hotels-title{font-size:1.5em !important;line-height:1.25 !important;margin:0 0 6px !important;}
.attp-wrap.attp-hotels .attp-hotels-row{display:grid !important;grid-template-columns:repeat(auto-fit,minmax(140px,1fr)) !important;gap:12px !important;}
.attp-wrap.attp-hotels .attp-hotels-row > div{min-width:0 !important;}
.attp-wrap.attp-hotels .attp-hotels-form input[type=text],
.attp-wrap.attp-hotels .attp-hotels-form input[type=date],
.attp-wrap.attp-hotels .attp-hotels-form select{display:block !important;width:100% !important;max-width:100% !important;min-width:0 !important;box-sizing:border-box !important;height:auto !important;min-height:46px;padding:10px 12px !important;margin:0 !important;font-size:1em !important;line-height:1.3 !important;border:2px solid #20605E !important;border-radius:12px !important;background-color:#fff !important;color:#1f2937 !important;}
.attp-wrap.attp-hotels .attp-hotels-form select{padding-right:28px !important;text-overflow:ellipsis;}
.attp-wrap.attp-hotels .attp-hotels-lbl{display:block !important;margin:10px 0 4px !important;font-size:1em !important;line-height:1.3 !important;}
.attp-wrap.attp-hotels .attp-hotels-age{min-width:0 !important;flex:0 1 130px;}
.attp-wrap.attp-hotels .attp-hotels-head p,.attp-wrap.attp-hotels .attp-hotel-why{font-size:.95em !important;line-height:1.45 !important;margin:0 0 8px !important;}
.attp-wrap.attp-hotels .attp-hotels-note{font-size:.82em !important;line-height:1.45 !important;}
.attp-wrap.attp-hotels .attp-hotels-head h4{font-size:1.15em !important;line-height:1.3 !important;}

.attp-wrap.attp-hotels .attp-hotels-tip{font-size:.9em !important;line-height:1.45 !important;text-align:center;margin:6px 0 0 !important;color:#374151;}

/* v1.100.0 LuxuryHotelsApp page */
.attp-wrap.attp-hotels.attp-lux-dark{background:#12100d !important;border:1.5px solid #c9a24b !important;color:#e9e2d0;}
.attp-wrap.attp-lux .attp-lux-brand{font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;letter-spacing:.2em;text-transform:uppercase;font-size:.8em;color:#c9a24b;margin:0 0 6px;}
.attp-wrap.attp-lux-ivory .attp-lux-brand{color:#8a6d2b;}
.attp-wrap.attp-hotels.attp-lux-dark .attp-hotels-title{color:#f3e7c4 !important;font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;}
.attp-wrap.attp-hotels.attp-lux-dark .attp-hotels-sub,.attp-wrap.attp-hotels.attp-lux-dark .attp-hotels-head p,.attp-wrap.attp-hotels.attp-lux-dark .attp-hotels-tip,.attp-wrap.attp-hotels.attp-lux-dark .attp-hotels-status{color:#d9d1bd !important;}
.attp-wrap.attp-hotels.attp-lux-dark .attp-hotels-status.is-error{color:#ff8a80 !important;}
.attp-wrap.attp-hotels.attp-lux-dark .attp-hotels-lbl{color:#e9e2d0 !important;}
.attp-wrap.attp-hotels.attp-lux-dark .attp-hotels-form input[type=text],.attp-wrap.attp-hotels.attp-lux-dark .attp-hotels-form input[type=date],.attp-wrap.attp-hotels.attp-lux-dark .attp-hotels-form select{border:2px solid #c9a24b !important;background-color:#1d1a15 !important;color:#f3e7c4 !important;}
.attp-wrap.attp-hotels.attp-lux-dark .attp-hotels-age span{color:#d9d1bd !important;}
.attp-wrap.attp-hotels.attp-lux-dark .attp-btn-primary{background:#c9a24b !important;color:#12100d !important;box-shadow:none !important;}
.attp-wrap.attp-hotels.attp-lux-dark .attp-hotels-head h4{color:#c9a24b !important;font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;}
.attp-wrap.attp-hotels.attp-lux-dark .attp-hotel-card{background:#1d1a15 !important;border:1.5px solid #4a3d1f !important;}
.attp-wrap.attp-hotels.attp-lux-dark .attp-hotel-name{color:#f3e7c4 !important;font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;}
.attp-wrap.attp-hotels.attp-lux-dark .attp-hotel-meta,.attp-wrap.attp-hotels.attp-lux-dark .attp-hotel-why{color:#d9d1bd !important;}
.attp-wrap.attp-hotels.attp-lux-dark .attp-hotel-btn{background:transparent !important;border:2px solid #c9a24b !important;color:#c9a24b !important;}
.attp-wrap.attp-hotels.attp-lux-dark .attp-hotel-btn:hover{background:#c9a24b !important;color:#12100d !important;}
.attp-wrap.attp-hotels.attp-lux-dark .attp-hotels-note{color:#a39a85 !important;}

/* v1.100.3 LuxuryHotelsApp Ivory style */
.attp-wrap.attp-hotels.attp-lux-ivory{background:#faf6ee !important;border:1px solid #c9a24b !important;border-radius:6px !important;color:#1c2430;}
.attp-wrap.attp-hotels.attp-lux-ivory .attp-hotels-title{color:#1b2a41 !important;font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;font-weight:400 !important;letter-spacing:.01em;}
.attp-wrap.attp-hotels.attp-lux-ivory .attp-hotels-sub,.attp-wrap.attp-hotels.attp-lux-ivory .attp-hotels-head p,.attp-wrap.attp-hotels.attp-lux-ivory .attp-hotels-tip,.attp-wrap.attp-hotels.attp-lux-ivory .attp-hotels-status{color:#4a5160 !important;}
.attp-wrap.attp-hotels.attp-lux-ivory .attp-hotels-status.is-error{color:#9b1c1c !important;}
.attp-wrap.attp-hotels.attp-lux-ivory .attp-hotels-lbl{color:#1b2a41 !important;font-weight:600;letter-spacing:.02em;}
.attp-wrap.attp-hotels.attp-lux-ivory .attp-hotels-form input[type=text],.attp-wrap.attp-hotels.attp-lux-ivory .attp-hotels-form input[type=date],.attp-wrap.attp-hotels.attp-lux-ivory .attp-hotels-form select{border:1px solid #c9b78a !important;border-radius:4px !important;background-color:#fff !important;color:#1c2430 !important;}
.attp-wrap.attp-hotels.attp-lux-ivory .attp-hotels-form input:focus,.attp-wrap.attp-hotels.attp-lux-ivory .attp-hotels-form select:focus{border-color:#8a6d2b !important;outline:2px solid #e8d9ae;}
.attp-wrap.attp-hotels.attp-lux-ivory .attp-hotels-age span{color:#4a5160 !important;}
.attp-wrap.attp-hotels.attp-lux-ivory .attp-btn-primary{background:#1b2a41 !important;color:#faf6ee !important;border-radius:4px !important;letter-spacing:.06em;text-transform:uppercase;font-size:.9em !important;box-shadow:none !important;}
.attp-wrap.attp-hotels.attp-lux-ivory .attp-btn-primary:hover{background:#8a6d2b !important;}
.attp-wrap.attp-hotels.attp-lux-ivory .attp-hotels-head h4{color:#1b2a41 !important;font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;font-weight:400 !important;border-bottom:1px solid #c9a24b;padding-bottom:8px;}
.attp-wrap.attp-hotels.attp-lux-ivory .attp-hotel-card{background:#fff !important;border:1px solid #e6dcc3 !important;border-radius:4px !important;}
.attp-wrap.attp-hotels.attp-lux-ivory .attp-hotel-name{color:#1b2a41 !important;font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;font-weight:400 !important;}
.attp-wrap.attp-hotels.attp-lux-ivory .attp-hotel-meta,.attp-wrap.attp-hotels.attp-lux-ivory .attp-hotel-why{color:#4a5160 !important;}
.attp-wrap.attp-hotels.attp-lux-ivory .attp-hotel-btn{background:transparent !important;border:1px solid #8a6d2b !important;border-radius:4px !important;color:#8a6d2b !important;letter-spacing:.04em;}
.attp-wrap.attp-hotels.attp-lux-ivory .attp-hotel-btn:hover{background:#8a6d2b !important;color:#fff !important;}
.attp-wrap.attp-hotels.attp-lux-ivory .attp-hotels-note{color:#6b7280 !important;}

/* v1.100.4 Ivory: shadow and more padding */
.attp-wrap.attp-hotels.attp-lux-ivory{padding:34px 32px !important;margin-top:20px !important;margin-bottom:28px !important;box-shadow:0 14px 44px rgba(27,42,65,.18),0 2px 8px rgba(27,42,65,.08) !important;}
.attp-wrap.attp-hotels.attp-lux-ivory .attp-hotel-card{padding:18px !important;box-shadow:0 4px 14px rgba(27,42,65,.08) !important;}
.attp-wrap.attp-hotels.attp-lux-ivory .attp-hotels-list{gap:18px !important;}
.attp-wrap.attp-hotels.attp-lux-ivory .attp-btn-primary{box-shadow:0 4px 12px rgba(27,42,65,.22) !important;}
@media (max-width:600px){
.attp-wrap.attp-hotels.attp-lux-ivory{padding:24px 18px !important;box-shadow:0 10px 30px rgba(27,42,65,.18),0 2px 6px rgba(27,42,65,.08) !important;}
}

/* v1.100.5 LuxuryHotelsApp Ivory and Burgundy style */
.attp-wrap.attp-hotels.attp-lux-burgundy{background:#fbf7f0 !important;border:1px solid #561122 !important;border-radius:6px !important;color:#2a2124;}
.attp-wrap.attp-hotels.attp-lux-burgundy .attp-hotels-title{color:#561122 !important;font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;font-weight:400 !important;letter-spacing:.01em;}
.attp-wrap.attp-hotels.attp-lux-burgundy .attp-hotels-sub,.attp-wrap.attp-hotels.attp-lux-burgundy .attp-hotels-head p,.attp-wrap.attp-hotels.attp-lux-burgundy .attp-hotels-tip,.attp-wrap.attp-hotels.attp-lux-burgundy .attp-hotels-status{color:#4a3f42 !important;}
.attp-wrap.attp-hotels.attp-lux-burgundy .attp-hotels-status.is-error{color:#9b1c1c !important;}
.attp-wrap.attp-hotels.attp-lux-burgundy .attp-hotels-lbl{color:#561122 !important;font-weight:600;letter-spacing:.02em;}
.attp-wrap.attp-hotels.attp-lux-burgundy .attp-hotels-form input[type=text],.attp-wrap.attp-hotels.attp-lux-burgundy .attp-hotels-form input[type=date],.attp-wrap.attp-hotels.attp-lux-burgundy .attp-hotels-form select{border:1px solid #c2a3a8 !important;border-radius:4px !important;background-color:#fff !important;color:#2a2124 !important;}
.attp-wrap.attp-hotels.attp-lux-burgundy .attp-hotels-form input:focus,.attp-wrap.attp-hotels.attp-lux-burgundy .attp-hotels-form select:focus{border-color:#561122 !important;outline:2px solid #e8c9ce;}
.attp-wrap.attp-hotels.attp-lux-burgundy .attp-hotels-age span{color:#4a3f42 !important;}
.attp-wrap.attp-hotels.attp-lux-burgundy .attp-btn-primary{background:#561122 !important;color:#fbf7f0 !important;border-radius:4px !important;letter-spacing:.06em;text-transform:uppercase;font-size:.9em !important;box-shadow:none !important;}
.attp-wrap.attp-hotels.attp-lux-burgundy .attp-btn-primary:hover{background:#561122 !important;}
.attp-wrap.attp-hotels.attp-lux-burgundy .attp-hotels-head h4{color:#561122 !important;font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;font-weight:400 !important;border-bottom:1px solid #561122;padding-bottom:8px;}
.attp-wrap.attp-hotels.attp-lux-burgundy .attp-hotel-card{background:#fff !important;border:1px solid #e9d9d3 !important;border-radius:4px !important;}
.attp-wrap.attp-hotels.attp-lux-burgundy .attp-hotel-name{color:#561122 !important;font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;font-weight:400 !important;}
.attp-wrap.attp-hotels.attp-lux-burgundy .attp-hotel-meta,.attp-wrap.attp-hotels.attp-lux-burgundy .attp-hotel-why{color:#4a3f42 !important;}
.attp-wrap.attp-hotels.attp-lux-burgundy .attp-hotel-btn{background:transparent !important;border:1px solid #561122 !important;border-radius:4px !important;color:#561122 !important;letter-spacing:.04em;}
.attp-wrap.attp-hotels.attp-lux-burgundy .attp-hotel-btn:hover{background:#561122 !important;color:#fff !important;}
.attp-wrap.attp-hotels.attp-lux-burgundy .attp-hotels-note{color:#6b7280 !important;}

/* Burgundy: shadow and padding */
.attp-wrap.attp-hotels.attp-lux-burgundy{padding:34px 32px !important;margin-top:20px !important;margin-bottom:28px !important;box-shadow:0 14px 44px rgba(86,17,34,.18),0 2px 8px rgba(86,17,34,.08) !important;}
.attp-wrap.attp-hotels.attp-lux-burgundy .attp-hotel-card{padding:18px !important;box-shadow:0 4px 14px rgba(86,17,34,.08) !important;}
.attp-wrap.attp-hotels.attp-lux-burgundy .attp-hotels-list{gap:18px !important;}
.attp-wrap.attp-hotels.attp-lux-burgundy .attp-btn-primary{box-shadow:0 4px 12px rgba(86,17,34,.22) !important;}
@media (max-width:600px){
.attp-wrap.attp-hotels.attp-lux-burgundy{padding:24px 18px !important;box-shadow:0 10px 30px rgba(86,17,34,.18),0 2px 6px rgba(86,17,34,.08) !important;}
}

.attp-wrap.attp-lux-burgundy .attp-lux-brand{color:#b08d3c;}
.attp-wrap.attp-hotels.attp-lux-burgundy .attp-hotels-head h4{border-bottom:1px solid #b08d3c;}
.attp-wrap.attp-hotels.attp-lux-burgundy .attp-btn-primary:hover{background:#741a2f !important;}
.attp-wrap.attp-hotels.attp-lux-burgundy .attp-hotel-btn:hover{background:#561122 !important;color:#fbf7f0 !important;}
.attp-wrap.attp-hotels.attp-lux-burgundy{border:1.5px solid #561122 !important;box-shadow:0 14px 44px rgba(86,17,34,.28),0 2px 8px rgba(86,17,34,.12) !important;}

/* v1.100.6 backdrop behind the luxury box */
.attp-lux-stage{padding:44px 40px;border-radius:12px;margin:10px 0 24px;}
.attp-lux-stage-ivory{background:#ece4d3;}
.attp-lux-stage-burgundy{background:linear-gradient(180deg,#efe5d8 0%,#e6d8c8 100%);}
.attp-lux-stage-dark{background:#0a0908;}
.attp-lux-stage .attp-wrap.attp-hotels{margin-top:0 !important;margin-bottom:0 !important;}
@media (max-width:600px){.attp-lux-stage{padding:22px 10px;border-radius:8px;}}

/* v1.100.8 bigger search box (multi-line) */
.attp-wrap .attp-hotels-form textarea#attpHotelsQuery{display:block !important;width:100% !important;max-width:100% !important;box-sizing:border-box !important;min-height:112px !important;height:auto !important;padding:14px 16px !important;margin:0 !important;font-size:1.05em !important;line-height:1.5 !important;border:2px solid #20605E !important;border-radius:12px !important;background-color:#fff !important;color:#1f2937 !important;resize:vertical;font-family:inherit;}
.attp-wrap .attp-hotels-form textarea#attpHotelsQuery::placeholder{color:#6b7280;opacity:1;}
.attp-wrap.attp-hotels.attp-lux-dark .attp-hotels-form textarea#attpHotelsQuery{border:2px solid #c9a24b !important;background-color:#1d1a15 !important;color:#f3e7c4 !important;}
.attp-wrap.attp-hotels.attp-lux-dark .attp-hotels-form textarea#attpHotelsQuery::placeholder{color:#a39a85;}
.attp-wrap.attp-hotels.attp-lux-ivory .attp-hotels-form textarea#attpHotelsQuery{border:1px solid #c9b78a !important;border-radius:4px !important;color:#1c2430 !important;}
.attp-wrap.attp-hotels.attp-lux-burgundy .attp-hotels-form textarea#attpHotelsQuery{border:1px solid #c2a3a8 !important;border-radius:4px !important;color:#2a2124 !important;}
.attp-wrap.attp-hotels.attp-lux-ivory .attp-hotels-form textarea#attpHotelsQuery:focus{border-color:#8a6d2b !important;outline:2px solid #e8d9ae;}
.attp-wrap.attp-hotels.attp-lux-burgundy .attp-hotels-form textarea#attpHotelsQuery:focus{border-color:#561122 !important;outline:2px solid #e8c9ce;}

/* v1.100.9 slimmer backdrop */
.attp-lux-stage{padding:22px 20px;}
.attp-lux-stage-ivory{background:#f1ebde;}
.attp-lux-stage-burgundy{background:linear-gradient(180deg,#f4ede3 0%,#eee3d6 100%);}
@media (max-width:600px){.attp-lux-stage{padding:12px 8px;}}

/* v1.101.0 Refine your stay (luxury page) */
.attp-lux{--lx-accent:#8a6d2b;--lx-line:#c9b78a;--lx-text:#1c2430;--lx-bg:#fff;--lx-sel:#f3ead2;}
.attp-lux-burgundy{--lx-accent:#561122;--lx-line:#c2a3a8;--lx-text:#2a2124;--lx-bg:#fff;--lx-sel:#f3dde1;}
.attp-lux-dark{--lx-accent:#c9a24b;--lx-line:#4a3d1f;--lx-text:#f3e7c4;--lx-bg:#1d1a15;--lx-sel:#3a3017;}
.attp-wrap.attp-lux .attp-refine{margin-top:16px;border-top:1px solid var(--lx-line);padding-top:12px;}
.attp-wrap.attp-lux .attp-refine summary{cursor:pointer;font-weight:700;color:var(--lx-accent);letter-spacing:.03em;list-style:none;padding:4px 0;}
.attp-wrap.attp-lux .attp-refine summary::-webkit-details-marker{display:none;}
.attp-wrap.attp-lux .attp-refine summary::before{content:"+";display:inline-block;width:1.2em;font-weight:400;}
.attp-wrap.attp-lux .attp-refine[open] summary::before{content:"\2212";}
.attp-wrap.attp-lux .attp-chips{display:flex;flex-wrap:wrap;gap:8px;margin:2px 0 4px;}
.attp-wrap.attp-lux .attp-chip{position:relative;display:inline-block;cursor:pointer;margin:0;}
.attp-wrap.attp-lux .attp-chip input{position:absolute;opacity:0;width:1px;height:1px;}
.attp-wrap.attp-lux .attp-chip span{display:inline-block;padding:8px 14px;border:1px solid var(--lx-line);border-radius:999px;background:var(--lx-bg);color:var(--lx-text);font-size:.92em;line-height:1.2;}
.attp-wrap.attp-lux .attp-chip input:checked + span{background:var(--lx-accent);border-color:var(--lx-accent);color:#fff;}
.attp-wrap.attp-lux-dark .attp-chip input:checked + span{color:#12100d;}
.attp-wrap.attp-lux .attp-chip input:focus-visible + span{outline:2px solid var(--lx-accent);outline-offset:2px;}
.attp-wrap.attp-lux .attp-chip.is-off span{opacity:.45;cursor:not-allowed;}
.attp-wrap.attp-lux details.attp-refine{border:0 !important;border-top:1px solid var(--lx-line) !important;border-radius:0 !important;background:transparent !important;box-shadow:none !important;padding:12px 0 0 !important;margin:16px 0 0 !important;}
.attp-wrap.attp-lux details.attp-refine > summary{padding:4px 0 !important;margin:0 !important;background:transparent !important;border:0 !important;}

/* v1.102.0 Luxury landing page */
.attp-land{--ln-hero:#1b2a41;--ln-ink:#1b2a41;--ln-accent:#8a6d2b;--ln-gold:#c9a24b;--ln-bg:#faf6ee;--ln-card:#fff;--ln-line:#e6dcc3;--ln-text:#4a5160;--ln-onacc:#fff;max-width:1100px;margin:10px auto 28px !important;background:var(--ln-bg);border-radius:10px;overflow:hidden;box-shadow:0 16px 48px rgba(27,42,65,.18);color:var(--ln-text);}
.attp-land-burgundy{--ln-hero:#561122;--ln-ink:#561122;--ln-accent:#561122;--ln-gold:#c9a24b;--ln-bg:#fbf7f0;--ln-line:#e9d9d3;--ln-text:#4a3f42;box-shadow:0 16px 48px rgba(86,17,34,.24);}
.attp-land-dark{--ln-hero:#0a0908;--ln-ink:#f3e7c4;--ln-accent:#c9a24b;--ln-gold:#c9a24b;--ln-bg:#12100d;--ln-card:#1d1a15;--ln-line:#4a3d1f;--ln-text:#d9d1bd;--ln-onacc:#12100d;box-shadow:0 16px 48px rgba(0,0,0,.4);}
.attp-land section{margin:0;}
.attp-land .attp-land-hero{background:radial-gradient(120% 140% at 50% 0%,rgba(255,255,255,.08),rgba(255,255,255,0) 55%),var(--ln-hero);padding:60px 40px 44px;text-align:center;}
.attp-land .attp-land-eyebrow{font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;letter-spacing:.32em;text-transform:uppercase;font-size:.8em;color:var(--ln-gold);margin:0 0 16px;}
.attp-land .attp-land-h1{font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif !important;font-weight:400 !important;color:#faf6ee !important;font-size:clamp(2rem,5.2vw,3.3rem) !important;line-height:1.15 !important;margin:0 0 14px !important;letter-spacing:.005em;}
.attp-land .attp-land-lede{color:#e7dfcf !important;font-size:1.08em !important;line-height:1.6 !important;max-width:640px;margin:0 auto 30px !important;}
.attp-land .attp-land-search{max-width:860px;margin:0 auto;text-align:left;}
.attp-land .attp-land-search .attp-wrap.attp-hotels{max-width:100% !important;}
.attp-land .attp-land-sec{padding:50px 40px 8px;text-align:center;}
.attp-land .attp-land-h2{font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif !important;font-weight:400 !important;color:var(--ln-ink) !important;font-size:1.7em !important;line-height:1.25 !important;margin:0 0 8px !important;}
.attp-land .attp-land-h2::after{content:"";display:block;width:56px;height:1px;background:var(--ln-gold);margin:14px auto 0;}
.attp-land .attp-land-sub{margin:14px 0 26px !important;color:var(--ln-text) !important;font-size:1em !important;}
.attp-land .attp-land-ways{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:26px;text-align:left;}
.attp-land button.attp-land-way{display:flex !important;flex-direction:column;gap:6px;width:100% !important;background:var(--ln-card) !important;border:1px solid var(--ln-line) !important;border-radius:6px !important;padding:22px 20px !important;cursor:pointer;text-align:left !important;box-shadow:0 4px 14px rgba(0,0,0,.05) !important;transition:transform .18s,border-color .18s,box-shadow .18s;font-family:inherit;}
.attp-land button.attp-land-way:hover,.attp-land button.attp-land-way:focus-visible{transform:translateY(-3px);border-color:var(--ln-accent) !important;box-shadow:0 10px 24px rgba(0,0,0,.12) !important;outline:none;}
.attp-land .attp-land-way-t{font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;font-size:1.15em;color:var(--ln-ink);line-height:1.3;}
.attp-land .attp-land-way-d{font-size:.93em;color:var(--ln-text);line-height:1.5;}
.attp-land .attp-land-steps{list-style:none !important;margin:30px 0 0 !important;padding:0 !important;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;text-align:center;}
.attp-land .attp-land-steps li{display:flex;flex-direction:column;align-items:center;gap:8px;margin:0 !important;padding:0 !important;}
.attp-land .attp-land-steps li::before,.attp-land .attp-land-steps li::marker{content:none;}
.attp-land .attp-land-num{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--ln-gold);border-radius:50%;font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;font-size:1.2em;color:var(--ln-accent);}
.attp-land .attp-land-steps b{font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;font-weight:400;font-size:1.12em;color:var(--ln-ink);}
.attp-land .attp-land-steps li > span:last-child{font-size:.94em;line-height:1.5;max-width:260px;}
.attp-land .attp-land-dests{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:26px;}
.attp-land button.attp-land-dest{background:var(--ln-card) !important;border:1px solid var(--ln-line) !important;border-radius:999px !important;padding:10px 20px !important;color:var(--ln-ink) !important;font-family:inherit;font-size:.98em !important;cursor:pointer;box-shadow:none !important;transition:border-color .18s,background .18s,color .18s;}
.attp-land button.attp-land-dest:hover,.attp-land button.attp-land-dest:focus-visible{border-color:var(--ln-accent) !important;background:var(--ln-accent) !important;color:var(--ln-onacc) !important;outline:none;}
.attp-land .attp-land-valgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:28px;text-align:left;}
.attp-land .attp-land-val{border-top:1px solid var(--ln-gold);padding-top:14px;display:flex;flex-direction:column;gap:6px;}
.attp-land .attp-land-val b{font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;font-weight:400;font-size:1.12em;color:var(--ln-ink);}
.attp-land .attp-land-val span{font-size:.94em;line-height:1.5;}
.attp-land .attp-land-cta{padding:56px 40px 40px;text-align:center;}
.attp-land button.attp-land-btn{background:var(--ln-accent) !important;color:var(--ln-onacc) !important;border:0 !important;border-radius:4px !important;padding:15px 34px !important;margin-top:18px;font-family:inherit;font-size:.95em !important;letter-spacing:.08em;text-transform:uppercase;font-weight:700;cursor:pointer;box-shadow:0 6px 16px rgba(0,0,0,.2) !important;}
.attp-land button.attp-land-btn:hover{filter:brightness(1.12);}
.attp-land .attp-land-fine{max-width:680px;margin:30px auto 0 !important;font-size:.8em !important;line-height:1.5 !important;color:var(--ln-text) !important;opacity:.85;}
@media (max-width:760px){
.attp-land .attp-land-hero{padding:40px 16px 26px;}
.attp-land .attp-land-sec{padding:38px 18px 6px;}
.attp-land .attp-land-cta{padding:40px 18px 28px;}
.attp-land .attp-land-ways,.attp-land .attp-land-steps,.attp-land .attp-land-valgrid{grid-template-columns:1fr;}
}
.attp-land .attp-land-search .attp-lux-brand,.attp-land .attp-land-search .attp-hotels-title,.attp-land .attp-land-search .attp-hotels-sub{display:none !important;}
/* 1.102.1 deeper borders on landing occasion cards */
.attp-land button.attp-land-way{border:2px solid var(--ln-accent) !important;}
.attp-land button.attp-land-way:hover,.attp-land button.attp-land-way:focus-visible{border-color:var(--ln-gold) !important;}
/* 1.102.2 Cormorant Garamond headings: slightly larger and heavier because the face is small */
.attp-land .attp-land-h1{font-weight:600 !important;font-size:clamp(2.3rem,6vw,3.8rem) !important;}
.attp-land .attp-land-h2{font-weight:600 !important;font-size:2em !important;}
.attp-land .attp-land-way-t{font-weight:600;font-size:1.4em;}
.attp-land .attp-land-steps b,.attp-land .attp-land-val b{font-weight:600;font-size:1.35em;}
.attp-land .attp-land-eyebrow{font-weight:600;}
.attp-wrap.attp-hotels[class*="attp-lux-"] .attp-hotel-name{font-weight:600 !important;font-size:1.25em !important;}
/* 1.103.0 hero photo, destination pages */
.attp-land .attp-land-hero.has-img{background:linear-gradient(rgba(10,8,8,.58),rgba(10,8,8,.74)),var(--ln-img) center/cover no-repeat;}
.attp-land a.attp-land-dest{display:inline-block;text-decoration:none !important;background:var(--ln-card);border:1px solid var(--ln-line);border-radius:999px;padding:10px 20px;color:var(--ln-ink) !important;font-size:.98em;transition:border-color .18s,background .18s,color .18s;}
.attp-land a.attp-land-dest:hover,.attp-land a.attp-land-dest:focus-visible{border-color:var(--ln-accent);background:var(--ln-accent);color:var(--ln-onacc) !important;outline:none;}
.attp-land .attp-land-tag{display:inline-block;border:1px solid var(--ln-gold);border-radius:999px;padding:7px 16px;color:var(--ln-accent);font-size:.92em;letter-spacing:.03em;}
.attp-land .attp-land-intro{max-width:680px;margin-left:auto !important;margin-right:auto !important;text-align:center;font-size:1.08em !important;line-height:1.7 !important;}
.attp-land .attp-land-sec .attp-land-dests:first-of-type{margin-top:0;}
/* 1.103.2 luxury search button: far right, #b90064 */
.attp-wrap.attp-lux #attpHotelsGo{display:block !important;margin-left:auto !important;margin-right:0 !important;}

/* 1.103.3 Ivory and Magenta (#b90064) style */
.attp-wrap.attp-hotels.attp-lux-magenta{background:#fbf7f0 !important;border:1px solid #b90064 !important;border-radius:6px !important;color:#2a2124;}
.attp-wrap.attp-hotels.attp-lux-magenta .attp-hotels-title{color:#b90064 !important;font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;font-weight:400 !important;letter-spacing:.01em;}
.attp-wrap.attp-hotels.attp-lux-magenta .attp-hotels-sub,.attp-wrap.attp-hotels.attp-lux-magenta .attp-hotels-head p,.attp-wrap.attp-hotels.attp-lux-magenta .attp-hotels-tip,.attp-wrap.attp-hotels.attp-lux-magenta .attp-hotels-status{color:#4a3f42 !important;}
.attp-wrap.attp-hotels.attp-lux-magenta .attp-hotels-status.is-error{color:#9b1c1c !important;}
.attp-wrap.attp-hotels.attp-lux-magenta .attp-hotels-lbl{color:#b90064 !important;font-weight:600;letter-spacing:.02em;}
.attp-wrap.attp-hotels.attp-lux-magenta .attp-hotels-form input[type=text],.attp-wrap.attp-hotels.attp-lux-magenta .attp-hotels-form input[type=date],.attp-wrap.attp-hotels.attp-lux-magenta .attp-hotels-form select{border:1px solid #d9a3bd !important;border-radius:4px !important;background-color:#fff !important;color:#2a2124 !important;}
.attp-wrap.attp-hotels.attp-lux-magenta .attp-hotels-form input:focus,.attp-wrap.attp-hotels.attp-lux-magenta .attp-hotels-form select:focus{border-color:#b90064 !important;outline:2px solid #e8c9ce;}
.attp-wrap.attp-hotels.attp-lux-magenta .attp-hotels-age span{color:#4a3f42 !important;}
.attp-wrap.attp-hotels.attp-lux-magenta .attp-btn-primary{background:#b90064 !important;color:#fbf7f0 !important;border-radius:4px !important;letter-spacing:.06em;text-transform:uppercase;font-size:.9em !important;box-shadow:none !important;}
.attp-wrap.attp-hotels.attp-lux-magenta .attp-btn-primary:hover{background:#b90064 !important;}
.attp-wrap.attp-hotels.attp-lux-magenta .attp-hotels-head h4{color:#b90064 !important;font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;font-weight:400 !important;border-bottom:1px solid #b90064;padding-bottom:8px;}
.attp-wrap.attp-hotels.attp-lux-magenta .attp-hotel-card{background:#fff !important;border:1px solid #ecd6e0 !important;border-radius:4px !important;}
.attp-wrap.attp-hotels.attp-lux-magenta .attp-hotel-name{color:#b90064 !important;font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;font-weight:400 !important;}
.attp-wrap.attp-hotels.attp-lux-magenta .attp-hotel-meta,.attp-wrap.attp-hotels.attp-lux-magenta .attp-hotel-why{color:#4a3f42 !important;}
.attp-wrap.attp-hotels.attp-lux-magenta .attp-hotel-btn{background:transparent !important;border:1px solid #b90064 !important;border-radius:4px !important;color:#b90064 !important;letter-spacing:.04em;}
.attp-wrap.attp-hotels.attp-lux-magenta .attp-hotel-btn:hover{background:#b90064 !important;color:#fff !important;}
.attp-wrap.attp-hotels.attp-lux-magenta .attp-hotels-note{color:#6b7280 !important;}
.attp-wrap.attp-hotels.attp-lux-magenta{padding:34px 32px !important;margin-top:20px !important;margin-bottom:28px !important;box-shadow:0 14px 44px rgba(185,0,100,.18),0 2px 8px rgba(185,0,100,.08) !important;}
.attp-wrap.attp-hotels.attp-lux-magenta .attp-hotel-card{padding:18px !important;box-shadow:0 4px 14px rgba(185,0,100,.08) !important;}
.attp-wrap.attp-hotels.attp-lux-magenta .attp-hotels-list{gap:18px !important;}
.attp-wrap.attp-hotels.attp-lux-magenta .attp-btn-primary{box-shadow:0 4px 12px rgba(185,0,100,.22) !important;}
.attp-wrap.attp-hotels.attp-lux-magenta{padding:24px 18px !important;box-shadow:0 10px 30px rgba(185,0,100,.18),0 2px 6px rgba(185,0,100,.08) !important;}
.attp-wrap.attp-lux-magenta .attp-lux-brand{color:#b08d3c;}
.attp-wrap.attp-hotels.attp-lux-magenta .attp-hotels-head h4{border-bottom:1px solid #b08d3c;}
.attp-wrap.attp-hotels.attp-lux-magenta .attp-btn-primary:hover{background:#96004f !important;}
.attp-wrap.attp-hotels.attp-lux-magenta .attp-hotel-btn:hover{background:#b90064 !important;color:#fbf7f0 !important;}
.attp-wrap.attp-hotels.attp-lux-magenta{border:1.5px solid #b90064 !important;box-shadow:0 14px 44px rgba(185,0,100,.28),0 2px 8px rgba(185,0,100,.12) !important;}
.attp-lux-stage-magenta{background:linear-gradient(180deg,#efe5d8 0%,#e6d8c8 100%);}
.attp-wrap.attp-hotels.attp-lux-magenta .attp-hotels-form textarea#attpHotelsQuery{border:1px solid #d9a3bd !important;border-radius:4px !important;color:#2a2124 !important;}
.attp-wrap.attp-hotels.attp-lux-magenta .attp-hotels-form textarea#attpHotelsQuery:focus{border-color:#b90064 !important;outline:2px solid #e8c9ce;}
.attp-lux-stage-magenta{background:linear-gradient(180deg,#f4ede3 0%,#eee3d6 100%);}
.attp-lux-magenta{--lx-accent:#b90064;--lx-line:#d9a3bd;--lx-text:#2a2124;--lx-bg:#fff;--lx-sel:#f8dbe9;}
.attp-land-magenta{--ln-hero:#b90064;--ln-ink:#b90064;--ln-accent:#b90064;--ln-gold:#c9a24b;--ln-bg:#fbf7f0;--ln-line:#ecd6e0;--ln-text:#4a3f42;box-shadow:0 16px 48px rgba(185,0,100,.24);}
.attp-wrap.attp-land-magenta{border:1px solid #b90064 !important;box-shadow:0 6px 22px rgba(185,0,100,0.25) !important;}
.attp-lux-stage-magenta .attp-wrap.attp-hotels.attp-lux-magenta{border:1px solid #b90064 !important;box-shadow:0 6px 22px rgba(185,0,100,0.25) !important;}

/* 1.104.0 custom colours for the landing pages (set in Settings) */
.attp-land.attp-land-custom{--ln-bg:var(--cu-bg,#faf6ee);--ln-hero:var(--cu-hero);--ln-ink:var(--cu-main);--ln-accent:var(--cu-btn);--ln-gold:var(--cu-gold);border:1px solid var(--cu-border) !important;box-shadow:0 6px 22px color-mix(in srgb,var(--cu-border) 30%,transparent) !important;}
.attp-land.attp-land-custom button.attp-land-way{border-color:var(--cu-main) !important;}
.attp-land.attp-land-custom .attp-land-num{color:var(--cu-main);}
.attp-land.attp-land-custom .attp-land-tag{color:var(--cu-main);}
.attp-land.attp-land-custom .attp-land-hero{background:radial-gradient(120% 140% at 50% 0%,rgba(255,255,255,.08),rgba(255,255,255,0) 55%),var(--cu-hero);}
.attp-land.attp-land-custom .attp-land-hero.has-img{background:linear-gradient(rgba(10,8,8,.58),rgba(10,8,8,.74)),var(--ln-img) center/cover no-repeat;}
.attp-land.attp-land-custom .attp-lux{--lx-accent:var(--cu-main);}
.attp-land.attp-land-custom .attp-wrap.attp-hotels.attp-lux .attp-hotels-lbl,.attp-land.attp-land-custom .attp-wrap.attp-hotels.attp-lux .attp-hotels-head h4,.attp-land.attp-land-custom .attp-wrap.attp-hotels.attp-lux .attp-hotel-name{color:var(--cu-main) !important;}
.attp-land.attp-land-custom .attp-wrap.attp-hotels.attp-lux .attp-btn-primary,.attp-land.attp-land-custom .attp-wrap.attp-hotels.attp-lux .attp-btn-primary:hover{background:var(--cu-btn) !important;border-color:var(--cu-btn) !important;color:#fff !important;}
.attp-land.attp-land-custom .attp-wrap.attp-hotels.attp-lux .attp-btn-primary:hover{filter:brightness(.88);}
.attp-land.attp-land-custom .attp-wrap.attp-hotels.attp-lux .attp-hotel-btn{border-color:var(--cu-btn) !important;color:var(--cu-btn) !important;}
.attp-land.attp-land-custom .attp-wrap.attp-hotels.attp-lux .attp-hotel-btn:hover{background:var(--cu-btn) !important;color:#fff !important;}
.attp-land.attp-land-custom .attp-wrap.attp-hotels.attp-lux .attp-chip input:checked + span{background:var(--cu-btn) !important;border-color:var(--cu-btn) !important;}
.attp-land.attp-land-custom .attp-wrap.attp-hotels.attp-lux .attp-hotels-head h4{border-bottom-color:var(--cu-gold) !important;}
/* 1.104.1 destination chips reversed: filled by default, light on hover */
.attp-land button.attp-land-dest,.attp-land a.attp-land-dest{background:var(--ln-accent) !important;border:1px solid var(--ln-accent) !important;color:var(--ln-onacc) !important;}
.attp-land button.attp-land-dest:hover,.attp-land button.attp-land-dest:focus-visible,.attp-land a.attp-land-dest:hover,.attp-land a.attp-land-dest:focus-visible{background:var(--ln-card) !important;border-color:var(--ln-accent) !important;color:var(--ln-accent) !important;}
/* 1.105.0 front-end text editor (administrators only) */
.attp-edit-toggle{position:fixed;right:18px;bottom:18px;z-index:99998;background:#1b2a41;color:#fff;border:0;border-radius:999px;padding:12px 20px;font:600 14px/1 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.3);}
.attp-edit-on .attp-edit-toggle{background:#b90064;}
.attp-edit-on #attpLand [data-attp-key]{outline:2px dashed #b90064;outline-offset:3px;cursor:pointer;}
.attp-edit-on #attpLand [data-attp-key]:hover{background:rgba(185,0,100,.12);}
.attp-edit-pop{position:absolute;z-index:99999;background:#fff;color:#1f2937;border:2px solid #b90064;border-radius:10px;padding:12px;box-shadow:0 14px 40px rgba(0,0,0,.28);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;font-size:14px;text-align:left;}
.attp-edit-pop label{display:block;font-weight:700;margin-bottom:6px;}
.attp-edit-pop textarea{width:100%;box-sizing:border-box;border:1px solid #c9b8c1;border-radius:6px;padding:8px;font:inherit;color:#1f2937;background:#fff;resize:vertical;}
.attp-edit-pop .attp-edit-note,.attp-edit-pop .attp-edit-msg{margin:6px 0 0;font-size:12px;color:#6b7280;}
.attp-edit-pop .attp-edit-btns{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;}
.attp-edit-pop .attp-edit-btns button{border:1px solid #b90064;background:#fff;color:#b90064;border-radius:6px;padding:7px 12px;font:600 13px/1 inherit;cursor:pointer;}
.attp-edit-pop .attp-edit-btns button[data-a="save"]{background:#b90064;color:#fff;}

/* 1.105.1 five-star tick box */
.attp-wrap.attp-lux .attp-five{display:flex;align-items:center;gap:8px;margin:14px 0 4px;font-weight:600;cursor:pointer;color:var(--lx-accent);}
.attp-wrap.attp-lux .attp-five input{accent-color:var(--lx-accent);width:18px;height:18px;}

/* 1.106.0 luxury body font */
.attp-bf-montserrat{--attp-bf:"Montserrat",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;}
.attp-bf-lato{--attp-bf:"Lato",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;}
.attp-bf-jost{--attp-bf:"Jost",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;}
.attp-bf-raleway{--attp-bf:"Raleway",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;}
.attp-bf-inter{--attp-bf:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;}
.attp-bf-nunito{--attp-bf:"Nunito Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;}
.attp-bf-poppins{--attp-bf:"Poppins",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;}
[class*="attp-bf-"] :where(p,span,label,input,select,textarea,button,a,li,summary,small,div):not(.attp-land-way-t,.attp-land-num,.attp-land-eyebrow,.attp-lux-brand,.attp-hotel-name){font-family:var(--attp-bf) !important;}
[class*="attp-bf-"]{font-family:var(--attp-bf);}

/* 1.107.0 text size controls in the front-end editor */
.attp-edit-pop .attp-edit-size{display:flex;align-items:center;gap:8px;margin-top:10px;}
.attp-edit-pop .attp-edit-size span{font-weight:700;}
.attp-edit-pop .attp-edit-size button{border:1px solid #b90064;background:#fff;color:#b90064;border-radius:6px;min-width:38px;padding:6px 10px;font:700 14px/1 inherit;cursor:pointer;}
.attp-edit-pop .attp-edit-size .attp-edit-pct{min-width:48px;text-align:center;font-weight:600;color:#1f2937;}

/* 1.107.5 editable search-box labels */
.attp-edit-pop .attp-edit-size[hidden]{display:none;}
.attp-edit-on #attpHotels [data-attp-key]{outline:2px dashed #b90064;outline-offset:3px;cursor:pointer;}
.attp-edit-on #attpHotels [data-attp-key]:hover{background:rgba(185,0,100,.12);}

/* 1.108.0 destinations page */
.attp-land .attp-dd-nav{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:26px auto 4px;max-width:1000px;}
.attp-land .attp-dd-nav a{text-decoration:none !important;background:var(--ln-card);border:1px solid var(--ln-line);border-radius:999px;padding:8px 18px;color:var(--ln-ink) !important;font-size:.95em;}
.attp-land .attp-dd-nav a:hover{border-color:var(--ln-accent);}
.attp-land .attp-dd-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px;margin-top:26px;text-align:left;}
.attp-land button.attp-dd-card{display:flex !important;flex-direction:column;gap:6px;min-height:104px;justify-content:flex-end;text-align:left;background:var(--ln-accent) !important;border:1px solid var(--ln-accent) !important;border-radius:14px !important;padding:18px 20px !important;color:var(--ln-onacc) !important;cursor:pointer;box-shadow:0 1px 0 rgba(0,0,0,.04) !important;font-family:inherit;transition:transform .18s,box-shadow .18s;}
.attp-land button.attp-dd-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,.18) !important;}
.attp-land .attp-dd-name{font-family:"Cormorant Garamond",Georgia,serif;font-size:1.55em;line-height:1.1;font-weight:600;}
.attp-land .attp-dd-sub{font-size:.86em;opacity:.85;}
.attp-land .attp-dd-sec{scroll-margin-top:20px;}
@media (max-width:600px){.attp-land .attp-dd-grid{grid-template-columns:repeat(2,1fr);gap:12px;}.attp-land button.attp-dd-card{padding:14px 14px !important;min-height:90px;}.attp-land .attp-dd-name{font-size:1.3em;}}

/* 1.108.1 per-destination card colours */
.attp-land button.attp-dd-card{background:var(--dd-bg,var(--ln-accent)) !important;border-color:var(--dd-bg,var(--ln-accent)) !important;color:var(--dd-fg,var(--ln-onacc)) !important;}

/* 1.108.2 card colour control in the editor */
.attp-edit-pop .attp-edit-cc{display:flex;align-items:center;gap:8px;margin-top:10px;flex-wrap:wrap;}
.attp-edit-pop .attp-edit-cc span{font-weight:700;}
.attp-edit-pop .attp-edit-cc input[type=color]{width:46px;height:34px;padding:2px;border:1px solid #b90064;border-radius:6px;background:#fff;cursor:pointer;}
.attp-edit-pop .attp-edit-cc button{border:1px solid #b90064;background:#fff;color:#b90064;border-radius:6px;padding:6px 10px;font:600 13px/1 inherit;cursor:pointer;}

/* 1.108.3 card shadow */
.attp-land button.attp-dd-card{box-shadow:var(--dd-sh,0 1px 0 rgba(0,0,0,.04)) !important;}
.attp-land button.attp-dd-card:hover{box-shadow:var(--dd-sh,0 8px 20px rgba(0,0,0,.18)) !important;}
.attp-edit-pop .attp-edit-sh{min-width:120px;padding:6px 8px;border:1px solid #b90064;border-radius:6px;}

/* 1.108.4 apply to all cards */
.attp-edit-pop .attp-edit-all{margin-top:10px;font-size:13px;}
.attp-edit-pop .attp-edit-all label{display:flex;gap:6px;align-items:center;cursor:pointer;}

/* 1.108.5 editable region buttons */
.attp-land .attp-dd-nav a{border:1px solid var(--pl-b,var(--ln-line));box-shadow:var(--pl-sh,none);}
.attp-land .attp-dd-nav a:hover{border-color:var(--pl-b,var(--ln-accent));}
.attp-edit-on #attpLand .attp-dd-nav a span{display:inline-block;}

/* 1.108.6 hotel result cards: editable look */
.attp-hotels.attp-hr-b.attp-hr-b.attp-hr-b.attp-hr-b.attp-hr-b.attp-wrap .attp-hotel-card{border-color:var(--hr-b) !important;}
.attp-hotels.attp-hr-bg.attp-hr-bg.attp-hr-bg.attp-hr-bg.attp-hr-bg.attp-wrap .attp-hotel-card{background:var(--hr-bg) !important;}
.attp-hotels.attp-hr-s.attp-hr-s.attp-hr-s.attp-hr-s.attp-hr-s.attp-wrap .attp-hotel-card{box-shadow:var(--hr-sh) !important;}
.attp-hotels.attp-hr-btn.attp-hr-btn.attp-hr-btn.attp-hr-btn.attp-hr-btn.attp-wrap .attp-hotel-btn{border-color:var(--hr-btn) !important;color:var(--hr-btn) !important;}
.attp-hotels.attp-hr-btn.attp-hr-btn.attp-hr-btn.attp-hr-btn.attp-hr-btn.attp-wrap .attp-hotel-btn:hover{background:var(--hr-btn) !important;color:#fff !important;}
.attp-edit-on .attp-hotel-card{outline:2px dashed #b90064;outline-offset:3px;cursor:pointer;}

/* 1.109.0 destination card links */
.attp-land a.attp-dd-card{display:flex;flex-direction:column;gap:6px;min-height:104px;justify-content:flex-end;text-align:left;text-decoration:none !important;background:var(--dd-bg,var(--ln-accent)) !important;border:1px solid var(--dd-bg,var(--ln-accent)) !important;border-radius:14px;padding:18px 20px;color:var(--dd-fg,var(--ln-onacc)) !important;cursor:pointer;box-shadow:var(--dd-sh,0 1px 0 rgba(0,0,0,.04)) !important;font-family:inherit;transition:transform .18s,box-shadow .18s;}
.attp-land a.attp-dd-card:hover{transform:translateY(-2px);box-shadow:var(--dd-sh,0 8px 20px rgba(0,0,0,.18)) !important;}
@media (max-width:600px){.attp-land a.attp-dd-card{padding:14px;min-height:90px;}}
.attp-edit-pop .attp-edit-link{display:flex;align-items:center;gap:8px;margin-top:10px;}
.attp-edit-pop .attp-edit-link span{font-weight:700;}
.attp-edit-pop .attp-edit-link input{flex:1;min-width:0;padding:6px 8px;border:1px solid #b90064;border-radius:6px;}

/* 1.110.1 add and remove destinations from the front end */
.attp-land button.attp-dd-add{min-height:104px;border:2px dashed var(--ln-accent) !important;background:transparent !important;color:var(--ln-accent) !important;border-radius:14px !important;font:600 1em inherit;cursor:pointer;box-shadow:none !important;padding:18px 20px !important;}
.attp-land button.attp-dd-add:hover{background:rgba(0,0,0,.04) !important;}
.attp-edit-pop .attp-edit-del{margin-left:auto;background:#fff;border:1px solid #b32d2e;color:#b32d2e;}

/* 1.110.4 destination grid: layout rules that themes and other browsers cannot override */
#attpLand .attp-dd-grid{display:grid !important;grid-template-columns:repeat(auto-fill,minmax(210px,1fr)) !important;gap:16px !important;justify-items:stretch !important;align-items:stretch !important;width:100% !important;box-sizing:border-box !important;float:none !important;}
#attpLand .attp-dd-grid > .attp-dd-card{width:100% !important;max-width:none !important;min-width:0 !important;box-sizing:border-box !important;margin:0 !important;float:none !important;}
#attpLand .attp-dd-nav{display:flex !important;flex-wrap:wrap !important;justify-content:center !important;gap:10px !important;}
#attpLand .attp-dd-nav a{display:inline-block !important;}
@media (max-width:600px){#attpLand .attp-dd-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:12px !important;}}

/* 1.110.8 if the page wraps the shortcode in code formatting (<code>), undo its effect so the layout and fonts stay right */
#attpLand code,#attpLand kbd,#attpLand samp,#attpLand tt{display:contents !important;font:inherit !important;background:none !important;color:inherit !important;padding:0 !important;border:0 !important;margin:0 !important;white-space:normal !important;}
#attpLand{font-family:var(--attp-bf,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif) !important;}
#attpLand pre{display:contents !important;white-space:normal !important;font:inherit !important;margin:0 !important;padding:0 !important;background:none !important;border:0 !important;}

/* 1.111.0 photos and a Find hotels button on the destination cards */
#attpLand .attp-dd-card{position:relative;overflow:hidden;}
#attpLand .attp-dd-card.has-photo{background-color:#1b2a41 !important;background-image:linear-gradient(to top,rgba(0,0,0,.8) 0%,rgba(0,0,0,.2) 62%,rgba(0,0,0,.06) 100%),var(--dd-img) !important;background-size:cover !important;background-position:center !important;border-color:transparent !important;color:#fff !important;min-height:200px !important;}
#attpLand .attp-dd-card.has-photo .attp-dd-name,#attpLand .attp-dd-card.has-photo .attp-dd-sub,#attpLand .attp-dd-card.has-photo .attp-dd-cta{color:#fff !important;text-shadow:0 1px 8px rgba(0,0,0,.5);}
#attpLand .attp-dd-cta{display:inline-block;align-self:flex-start;margin-top:8px;font-size:.72em;font-weight:600;letter-spacing:.14em;text-transform:uppercase;padding:7px 14px;border:1px solid currentColor;border-radius:999px;line-height:1.2;transition:background .15s;}
#attpLand .attp-dd-card:hover .attp-dd-cta{background:rgba(255,255,255,.22);}
#attpLand .attp-dd-credit{position:absolute;top:8px;right:10px;max-width:75%;text-align:right;font-size:.62em;line-height:1.2;color:#fff;opacity:.85;text-shadow:0 1px 3px rgba(0,0,0,.65);}
@media (max-width:600px){#attpLand .attp-dd-card.has-photo{min-height:170px !important;}#attpLand .attp-dd-cta{font-size:.62em;padding:6px 11px;}}
.attp-edit-pop .attp-edit-photo{margin-top:10px;}
.attp-edit-pop .attp-edit-photo > span{display:block;font-weight:700;margin-bottom:6px;}
.attp-edit-pop .attp-ph-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.attp-edit-pop .attp-ph-prev{width:54px;height:40px;object-fit:cover;border-radius:6px;border:1px solid #c9b8c1;}
.attp-edit-pop .attp-ph-row button{border:1px solid #b90064;background:#fff;color:#b90064;border-radius:6px;padding:6px 10px;font:600 13px/1 inherit;cursor:pointer;}
.attp-edit-pop .attp-edit-photo input{display:block;width:100%;box-sizing:border-box;margin-top:6px;border:1px solid #c9b8c1;border-radius:6px;padding:7px 8px;font:inherit;color:#1f2937;background:#fff;}

/* 1.111.1 the edit popup: compact, always on screen, and immune to theme styles */
.attp-edit-pop{position:fixed !important;z-index:2147483000 !important;max-height:calc(100vh - 24px);max-width:calc(100vw - 24px);overflow-y:auto;overscroll-behavior:contain;box-sizing:border-box !important;padding:12px !important;font-size:13px !important;line-height:1.35 !important;text-align:left !important;}
.attp-edit-pop *{box-sizing:border-box !important;max-width:100%;}
.attp-edit-pop label,.attp-edit-pop span,.attp-edit-pop b,.attp-edit-pop p,.attp-edit-pop select,.attp-edit-pop button,.attp-edit-pop input,.attp-edit-pop textarea{font-size:13px !important;line-height:1.35 !important;letter-spacing:normal !important;text-transform:none !important;}
.attp-edit-pop input[type=url],.attp-edit-pop input[type=text],.attp-edit-pop textarea,.attp-edit-pop select{width:100% !important;height:auto !important;min-height:0 !important;margin:0 !important;padding:6px 8px !important;border:1px solid #c9b8c1 !important;border-radius:6px !important;background:#fff !important;color:#1f2937 !important;font-weight:400 !important;box-shadow:none !important;}
.attp-edit-pop select{width:auto !important;}
.attp-edit-pop .attp-edit-link input{flex:1 1 auto;width:auto !important;min-width:0;}
.attp-edit-pop .attp-edit-link{margin-top:8px !important;}
.attp-edit-pop .attp-edit-link span,.attp-edit-pop .attp-edit-cc span,.attp-edit-pop .attp-edit-size span,.attp-edit-pop .attp-edit-photo > span{min-width:0;margin:0 !important;}
.attp-edit-pop .attp-edit-cc,.attp-edit-pop .attp-edit-size{margin-top:8px !important;}
.attp-edit-pop .attp-edit-note{margin:4px 0 0 !important;font-size:12px !important;color:#6b7280 !important;}
.attp-edit-pop .attp-edit-photo{margin-top:8px !important;}
.attp-edit-pop .attp-edit-photo input{margin-top:6px !important;}
.attp-edit-pop button{width:auto !important;height:auto !important;min-height:0 !important;margin:0 !important;padding:6px 10px !important;border-radius:6px !important;font-weight:600 !important;white-space:nowrap;}
.attp-edit-pop .attp-edit-btns{position:sticky;bottom:-12px;z-index:2;background:#fff;margin:10px -12px -12px !important;padding:8px 12px 10px !important;border-top:1px solid #eadfe4;}
.attp-edit-pop .attp-edit-btns button[data-a="remove"]{margin-left:auto !important;}
.attp-edit-pop .attp-edit-msg{margin:6px 0 0 !important;}

.attp-edit-pop label,.attp-edit-pop span,.attp-edit-pop b{height:auto !important;min-height:0 !important;padding:0 !important;margin:0 !important;border:0 !important;background:none !important;letter-spacing:normal !important;text-transform:none !important;font-weight:inherit;}
.attp-edit-pop > label,.attp-edit-pop .attp-edit-link span,.attp-edit-pop .attp-edit-cc span,.attp-edit-pop .attp-edit-size span,.attp-edit-pop .attp-edit-photo > span{font-weight:700 !important;}
.attp-edit-pop > label{display:block;margin-bottom:6px !important;}
.attp-edit-pop .attp-edit-pct{min-width:48px;text-align:center;}
.attp-edit-pop .attp-edit-cc input[type=color]{width:46px !important;height:32px !important;padding:2px !important;border:1px solid #b90064 !important;border-radius:6px !important;background:#fff !important;}
.attp-edit-pop input[type=checkbox]{width:auto !important;height:auto !important;padding:0 !important;margin:0 6px 0 0 !important;}
.attp-edit-pop .attp-edit-all label{display:flex !important;align-items:center;gap:6px;}
.attp-edit-pop textarea{min-height:56px !important;}

/* 1.111.2 draggable edit popup and photo size hint */
.attp-edit-pop .attp-edit-drag{position:sticky;top:-12px;z-index:3;margin:-12px -12px 8px !important;padding:6px 12px !important;background:#fbf3f7 !important;border-bottom:1px solid #eadfe4 !important;border-radius:8px 8px 0 0;color:#8a6a78 !important;font-size:12px !important;font-weight:600 !important;cursor:grab;user-select:none;-webkit-user-select:none;touch-action:none;}
.attp-edit-pop .attp-edit-drag:active{cursor:grabbing;}
.attp-edit-pop .attp-edit-drag,.attp-edit-pop .attp-edit-btns{max-width:none !important;}
.attp-edit-pop .attp-ph-size{margin:6px 0 0 !important;}
.attp-edit-pop .attp-ph-size b{color:#1f2937;font-weight:700 !important;}

/* 1.113.0 commission disclosure under the search box */
.attp-land .attp-land-disc{max-width:620px;margin:12px auto 0 !important;padding:0 !important;font-size:.78em !important;line-height:1.5 !important;text-align:center !important;color:inherit !important;opacity:.8;}

/* 1.113.1 destination and activity cards: always 4 in a row, 2 on phones, whatever width the page gives the section */
#attpLand .attp-dd-grid{grid-template-columns:repeat(4,minmax(0,1fr)) !important;}
@media (max-width:600px){#attpLand .attp-dd-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}}

/* 1.113.4 card button hover colour (set in Settings) */
#attpLand .attp-dd-card[style*="--dd-cta-bg"]:hover .attp-dd-cta{background:var(--dd-cta-bg) !important;color:var(--dd-cta-fg) !important;border-color:var(--dd-cta-bg) !important;text-shadow:none !important;}

/* 1.110.3 end-of-file marker: lets the page detect an old or cut-off copy of this file */
html.attp-edit-on .attp-land .attp-mv{font:600 12px/1 sans-serif;}
html.attp-edit-on .attp-land .attp-mv-g{display:flex;justify-content:center;gap:8px;margin:0 0 10px;}
html.attp-edit-on .attp-land .attp-mv-g button{background:#fff !important;color:#222 !important;border:1px solid #999 !important;border-radius:6px !important;padding:7px 12px !important;cursor:pointer;}
html.attp-edit-on .attp-land .attp-dd-card{position:relative;}
html.attp-edit-on .attp-land .attp-mv-c{position:absolute;top:6px;right:6px;display:flex;gap:4px;z-index:3;}
html.attp-edit-on .attp-land .attp-mv-c span{display:inline-block;text-align:center;font-size:12px;background:#fff !important;color:#222 !important;border:1px solid #999 !important;border-radius:5px !important;width:26px;height:26px;padding:0 !important;cursor:pointer;line-height:26px;}
/* Shortlist */
.attp-land .attp-dd-card{position:relative;}
.attp-land .attp-heart{position:absolute;top:8px;right:8px;z-index:4;width:30px;height:30px;line-height:30px;text-align:center;border-radius:50%;background:rgba(0,0,0,.42);color:#fff;font-size:17px;cursor:pointer;user-select:none;}
.attp-land .attp-heart:hover,.attp-land .attp-heart:focus{background:rgba(0,0,0,.65);outline:2px solid #fff;}
.attp-land .attp-heart.is-on{background:#fff;color:#c2185b;}
html.attp-edit-on .attp-land .attp-heart{display:none;}
.attp-sl-chip{position:fixed;right:16px;bottom:16px;z-index:99990;background:#1b1b1b;color:#fff !important;text-decoration:none !important;font:600 14px/1 sans-serif;padding:12px 16px;border-radius:999px;box-shadow:0 4px 16px rgba(0,0,0,.3);}
.attp-sl-chip[hidden]{display:none;}
.attp-sl-chip b{background:#fff;color:#1b1b1b;border-radius:999px;padding:2px 7px;margin-left:4px;}
.attp-land .attp-sl-flash{outline:3px solid var(--ln-accent,#c9a227);outline-offset:3px;}
.attp-sl .attp-sl-list{max-width:720px;margin:20px auto 0;display:flex;flex-direction:column;gap:10px;}
.attp-sl .attp-sl-item{display:flex;align-items:center;gap:12px;border:1px solid var(--ln-gold,#c9a227);border-radius:12px;padding:12px 14px;text-align:left;}
.attp-sl .attp-sl-txt{flex:1;display:flex;flex-direction:column;gap:2px;}
.attp-sl .attp-sl-go,.attp-sl button.attp-sl-btn{background:var(--ln-accent,#1b2a41);color:#fff !important;border:0;border-radius:999px;padding:9px 16px;font:600 14px/1.2 sans-serif;text-decoration:none !important;cursor:pointer;}
.attp-sl button.attp-sl-ghost{background:transparent;color:inherit !important;border:1px solid currentColor;}
.attp-sl button.attp-sl-x{background:transparent;border:0;font-size:22px;line-height:1;cursor:pointer;color:inherit;padding:4px 8px;}
.attp-sl .attp-sl-bar,.attp-sl .attp-sl-shared{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:18px;}
.attp-sl [hidden]{display:none !important;}
.attp-sl .attp-sl-empty{text-align:center;margin-top:18px;}
.attp-sl .attp-sl-msg{text-align:center;min-height:1.4em;margin-top:10px;}
@media(max-width:600px){.attp-sl .attp-sl-item{flex-wrap:wrap;}.attp-sl .attp-sl-go{order:3;}}
/* Seasonal banner */
.attp-ban .attp-ban-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:18px;}
.attp-ban button.attp-ban-chip{background:transparent;border:1px solid var(--ln-gold,#c9a227);color:inherit;border-radius:999px;padding:10px 20px;font:600 15px/1.2 sans-serif;cursor:pointer;}
.attp-ban button.attp-ban-chip:hover,.attp-ban button.attp-ban-chip:focus{background:var(--ln-accent,#1b2a41);color:#fff;border-color:var(--ln-accent,#1b2a41);}
.attp-ban [hidden]{display:none !important;}
/* City pages */
.attp-land .attp-city-btns{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:18px;}
.attp-land .attp-city-btns a.attp-land-btn{display:inline-block;background:var(--ln-accent) !important;color:var(--ln-onacc) !important;border:0 !important;border-radius:4px !important;padding:15px 34px !important;font-size:.95em;letter-spacing:.08em;text-transform:uppercase;font-weight:700;text-decoration:none !important;cursor:pointer;box-shadow:0 6px 16px rgba(0,0,0,.2);}
.attp-land .attp-city-btns a.attp-land-btn:hover{filter:brightness(1.12);}
.attp-land .attp-city-btns button.attp-land-btn{margin-top:0 !important;}
/* Airport partner links */
.attp-land .attp-air-wrap{display:flex;flex-direction:column;gap:8px;min-width:0;}
.attp-land .attp-air-wrap > .attp-dd-card{flex:1;width:100% !important;max-width:none !important;margin:0 !important;box-sizing:border-box;}
.attp-land .attp-air-x{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 14px;font-size:.84em;}
.attp-land .attp-air-x a{color:var(--ln-accent,#1b2a41) !important;text-decoration:underline !important;font-weight:600;}
.attp-land .attp-city-air .attp-air-x{margin-top:14px;font-size:.95em;}
/* Long region bars fold away behind a chevron */
.attp-land details.attp-dd-navbox{max-width:1000px;margin:22px auto 4px;text-align:center;}
.attp-land details.attp-dd-navbox > summary{display:inline-flex;align-items:center;gap:10px;cursor:pointer;list-style:none;background:var(--ln-card);border:1px solid var(--ln-line);border-radius:999px;padding:11px 24px;color:var(--ln-ink);font-weight:600;box-shadow:0 2px 8px rgba(0,0,0,.08);}
.attp-land details.attp-dd-navbox > summary::-webkit-details-marker{display:none;}
.attp-land details.attp-dd-navbox > summary::after{content:"";width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translate(-2px,-2px);transition:transform .2s;}
.attp-land details.attp-dd-navbox[open] > summary::after{transform:rotate(-135deg) translate(-2px,-2px);}
.attp-land details.attp-dd-navbox > summary:hover{border-color:var(--ln-accent);}
.attp-land details.attp-dd-navbox .attp-dd-nav{margin-top:16px;}
/* Trip Planner: click-to-edit wording (administrators, while "Edit Text" is on). */
.attp-edit-on #attp-app [data-attp-key]{outline:2px dashed #b90064;outline-offset:2px;cursor:pointer;}
.attp-edit-on #attp-app [data-attp-key]:hover{background:rgba(185,0,100,.12);}
.attp-edit-on #attp-app .attp-panel[hidden],.attp-edit-on #attp-app #attpFlightsBody[hidden],.attp-edit-on #attp-app #attpNoDatesBlock[hidden],.attp-edit-on #attp-app .attp-lbl-nodates[hidden]{display:block !important;}
.attp-edit-on #attp-app .attp-panel[hidden]{margin-top:28px;padding-top:18px;border-top:2px dashed #b90064;}
.attp-edit-on #attp-app .attp-loading[hidden]{display:block !important;}
.attp-edit-on #attp-app .attp-modal[hidden]{display:block !important;position:static !important;background:none !important;padding:0 !important;height:auto !important;}
.attp-edit-on #attp-app .attp-modal[hidden] .attp-modal-box{margin:28px auto;border:2px dashed #b90064;}
.attp-edit-on #attp-app #attpSidebar[hidden]{display:block !important;position:static !important;transform:none !important;width:auto !important;max-width:none !important;height:auto !important;margin-bottom:16px;}
/* Airports page: countries flow in columns, each a compact block with slim airport cards */
.attp-land.attp-air-page .attp-air-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:22px;row-gap:26px;align-items:start;max-width:1280px;margin:30px auto 0;padding:0 20px;box-sizing:border-box;}
.attp-land.attp-air-page .attp-air-flow.is-m{row-gap:0;grid-auto-rows:8px;}
.attp-land.attp-air-page .attp-air-flow > .attp-dd-sec{display:block;margin:0 !important;padding:0 !important;text-align:left;align-self:start;min-width:0;}
.attp-land.attp-air-page .attp-air-flow > .attp-ad{grid-column:1 / -1;}
.attp-land.attp-air-page .attp-air-flow .attp-land-h2{font-family:inherit !important;font-weight:700 !important;font-size:.78em !important;letter-spacing:.16em;text-transform:uppercase;text-align:left !important;margin:0 0 10px !important;padding:0 0 8px;border-bottom:1px solid var(--ln-gold);color:var(--ln-ink) !important;}
.attp-land.attp-air-page .attp-air-flow .attp-land-h2::after{display:none !important;}
.attp-land.attp-air-page .attp-air-flow .attp-land-sub{display:none;}
#attpLand.attp-air-page .attp-air-flow .attp-dd-grid{grid-template-columns:minmax(0,1fr) !important;gap:10px !important;margin-top:0 !important;}
#attpLand.attp-air-page .attp-air-flow .attp-dd-card{min-height:0 !important;padding:13px 16px !important;border-radius:12px !important;gap:3px !important;box-shadow:0 2px 8px rgba(0,0,0,.08) !important;}
#attpLand.attp-air-page .attp-air-flow .attp-dd-card.has-photo{min-height:118px !important;justify-content:flex-end;}
#attpLand.attp-air-page .attp-air-flow .attp-dd-name{font-size:1.12em !important;line-height:1.2;}
#attpLand.attp-air-page .attp-air-flow .attp-dd-sub{font-size:.8em !important;line-height:1.3;opacity:.85;}
#attpLand.attp-air-page .attp-air-flow .attp-dd-cta{align-self:flex-start;margin-top:6px !important;padding:5px 12px !important;font-size:.64em !important;}
.attp-land.attp-air-page .attp-air-x{justify-content:flex-start;font-size:.76em;}
@media (max-width:1180px){.attp-land.attp-air-page .attp-air-flow{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media (max-width:820px){.attp-land.attp-air-page .attp-air-flow{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px;}}
@media (max-width:520px){.attp-land.attp-air-page .attp-air-flow{grid-template-columns:minmax(0,1fr);}}
#attpLand.attp-air-page .attp-air-flow .attp-land-h2,#attpLand.attp-air-page .attp-air-flow .attp-dd-sec{text-align:left !important;}
.attp-land .attp-air-find{max-width:560px;margin:26px auto 0;padding:0 16px;box-sizing:border-box;text-align:center;}
.attp-land .attp-air-find input{width:100%;box-sizing:border-box;padding:14px 22px !important;border:1px solid var(--ln-line) !important;border-radius:999px !important;background:var(--ln-card) !important;color:var(--ln-ink) !important;font:inherit;font-size:1em;box-shadow:0 2px 10px rgba(0,0,0,.07);}
.attp-land .attp-air-find input:focus{outline:2px solid var(--ln-accent);outline-offset:2px;}
.attp-land .attp-air-none{margin:16px 0 0;color:var(--ln-ink);opacity:.7;}
.attp-land .attp-air-none[hidden]{display:none;}
/* Airports page v2: one-row cards (name and airport on the left, button on the right); big countries may split across columns so the bottom ends level */
#attpLand.attp-air-page .attp-air-flow .attp-dd-card:not(.has-photo){display:grid !important;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"n c" "s c";column-gap:12px;row-gap:2px;align-items:center;padding:12px 14px 12px 16px !important;}
#attpLand.attp-air-page .attp-air-flow .attp-dd-card:not(.has-photo) .attp-dd-name{grid-area:n;align-self:end;}
#attpLand.attp-air-page .attp-air-flow .attp-dd-card:not(.has-photo) .attp-dd-sub{grid-area:s;align-self:start;}
#attpLand.attp-air-page .attp-air-flow .attp-dd-card:not(.has-photo) .attp-dd-cta{grid-area:c;align-self:center;margin:0 !important;white-space:nowrap;}
#attpLand.attp-air-page .attp-air-flow .attp-dd-card:not(.has-photo) .attp-dd-credit{grid-column:1 / -1;}
/* Airports page v3: roomier cards (between the first and second versions) */
#attpLand.attp-air-page .attp-air-flow .attp-dd-grid{gap:12px !important;}
#attpLand.attp-air-page .attp-air-flow .attp-dd-card{border-radius:14px !important;box-shadow:0 4px 14px rgba(0,0,0,.12) !important;}
#attpLand.attp-air-page .attp-air-flow .attp-dd-card:not(.has-photo){min-height:96px !important;padding:18px 18px 18px 22px !important;column-gap:10px;row-gap:3px;}
#attpLand.attp-air-page .attp-air-flow .attp-dd-name{font-size:1.45em !important;}
#attpLand.attp-air-page .attp-air-flow .attp-dd-sub{font-size:.98em !important;line-height:1.3;}
#attpLand.attp-air-page .attp-air-flow .attp-dd-cta{padding:7px 13px !important;font-size:.68em !important;letter-spacing:.07em !important;}
#attpLand.attp-air-page .attp-air-flow .attp-dd-card.has-photo{min-height:130px !important;}
.attp-land.attp-air-page .attp-air-flow > .attp-dd-sec{margin-bottom:26px !important;}
.attp-land.attp-air-page .attp-air-flow .attp-land-h2{font-size:1em !important;margin-bottom:14px !important;}
.attp-edit-toggle.attp-edit-btncol{bottom:66px;background:#b90064;}
.attp-edit-toggle.attp-edit-btncol[hidden]{display:none;}
.attp-edit-pop .attp-edit-cc button[data-a=btncol]{cursor:pointer;}
.attp-edit-toggle.attp-edit-txtst{bottom:114px;background:#b90064;}
.attp-edit-toggle.attp-edit-txtst[hidden]{display:none;}
.attp-edit-pop .attp-edit-cc select{max-width:210px;}
.attp-edit-pop .attp-edit-cc input[type=range]{flex:1;min-width:110px;}
/* Airports page: country headings, larger and in the page's heading font (not small capitals) */
html body #attpLand.attp-air-page .attp-air-flow .attp-land-h2{font-size:1.75em !important;line-height:1.15 !important;letter-spacing:.01em !important;text-transform:none !important;font-weight:600 !important;margin:0 0 14px !important;padding:0 0 10px !important;border-bottom:1px solid var(--ln-gold);}
/* Narrow columns (pages with a sidebar): grids fit the space they are given instead of forcing three tight columns that spill out of the page */
.attp-land .attp-land-ways{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr)) !important;gap:14px;max-width:100%;}
.attp-land .attp-land-steps,.attp-land .attp-land-valgrid{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr)) !important;max-width:100%;}
.attp-land .attp-land-ways > *,.attp-land .attp-land-steps > *,.attp-land .attp-land-valgrid > *{min-width:0;box-sizing:border-box;}
.attp-land button.attp-land-way{min-width:0;max-width:100%;overflow-wrap:break-word;word-break:normal;hyphens:auto;}
.attp-land .attp-land-way-t{font-size:clamp(1.05em,1.3vw + .8em,1.4em) !important;overflow-wrap:break-word;}
.attp-land .attp-land-way-d{overflow-wrap:break-word;}
/* Experiences pages: the commission line sits in the blue hero, so it takes the hero's light text colour and the hero is kept compact */
.attp-land .attp-land-hero .attp-land-disc{color:#e7dfcf !important;opacity:.85;margin:10px auto 0 !important;}
.attp-land .attp-land-hero.has-disc{padding-bottom:26px;}
.attp-land .attp-land-hero.has-disc .attp-land-lede{margin-bottom:0 !important;}
/* Airports page: long names never run under the button; in narrow columns the button drops below the text */
#attpLand.attp-air-page .attp-air-flow .attp-dd-name,#attpLand.attp-air-page .attp-air-flow .attp-dd-sub{min-width:0;overflow-wrap:anywhere;}
#attpLand.attp-air-page .attp-air-flow .attp-dd-grid{container-type:inline-size;}
@container (max-width:350px){
#attpLand.attp-air-page .attp-air-flow .attp-dd-card:not(.has-photo){grid-template-columns:minmax(0,1fr);grid-template-areas:"n" "s" "c";row-gap:3px;}
#attpLand.attp-air-page .attp-air-flow .attp-dd-card:not(.has-photo) .attp-dd-cta{justify-self:start;margin-top:10px !important;}
}
.attp-edit-toggle.attp-edit-mo{bottom:162px;background:#b90064;}
.attp-edit-toggle.attp-edit-mo[hidden]{display:none;}
/* Links bar at the bottom of the planner: same look as the step bar, with white pill buttons */
.attp-wrap .attp-foot-nav{background:#f0f1f0;justify-content:center !important;align-items:center !important;gap:8px !important;padding:8px !important;margin:22px 0 6px !important;}
.attp-wrap .attp-foot-nav a.attp-foot-link{display:inline-flex;align-items:center;font-size:.85em;font-weight:700;font-family:inherit;padding:8px 18px;border-radius:999px;background:#fff !important;color:#cc00cc !important;text-decoration:none !important;border:0 !important;line-height:normal;transition:background .12s ease,color .12s ease;}
.attp-wrap .attp-foot-nav a.attp-foot-link:hover,.attp-wrap .attp-foot-nav a.attp-foot-link:focus-visible{background:#cc00cc !important;color:#fff !important;outline:none;}
@media print{.attp-foot-nav{display:none !important;}}
/* 1.140.0 occasion tiles: no mid-word hyphens, and counts that would leave one orphan tile get an even grid */
.attp-land button.attp-land-way,.attp-land .attp-land-way-d,.attp-land .attp-land-way-t{hyphens:manual !important;-webkit-hyphens:manual !important;}
@media (min-width:900px){
.attp-land .attp-land-ways:has(> :nth-child(9):last-child),.attp-land .attp-land-ways:has(> :nth-child(6):last-child),.attp-land .attp-land-ways:has(> :nth-child(3):last-child){grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
.attp-land .attp-land-ways:has(> :nth-child(10):last-child){grid-template-columns:repeat(5,minmax(0,1fr)) !important;}
.attp-land .attp-land-ways:has(> :nth-child(5):last-child){grid-template-columns:repeat(5,minmax(0,1fr)) !important;}
.attp-land .attp-land-ways:has(> :nth-child(7):last-child),.attp-land .attp-land-ways:has(> :nth-child(11):last-child){grid-template-columns:repeat(4,minmax(0,1fr)) !important;}
}
.attp-day-block a.attp-dine-chip{display:inline-block;margin-left:6px;padding:2px 10px;border:1px solid #20605E;border-radius:999px;font-size:.82em;font-weight:600;color:#20605E !important;text-decoration:none !important;background:#fff;white-space:nowrap;vertical-align:baseline;}
.attp-day-block a.attp-dine-chip:hover{background:#20605E;color:#fff !important;}
.attp-wrap .attp-destinations-cards > .attp-dest-card{display:block !important;grid-row:auto !important;grid-template-rows:none !important;}
.attp-wrap .attp-dest-card > div{position:static !important;float:none !important;}
/* 1.145.0 value / step grids: even rows instead of one or two orphans (6 -> 3x2, 8 -> 4x2, 9 -> 3x3 ...) */
@media (min-width:900px){
.attp-land .attp-land-valgrid:has(> :nth-child(6):last-child),.attp-land .attp-land-valgrid:has(> :nth-child(9):last-child),.attp-land .attp-land-valgrid:has(> :nth-child(3):last-child),.attp-land .attp-land-steps:has(> :nth-child(6):last-child),.attp-land .attp-land-steps:has(> :nth-child(9):last-child){grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
.attp-land .attp-land-valgrid:has(> :nth-child(8):last-child),.attp-land .attp-land-valgrid:has(> :nth-child(4):last-child),.attp-land .attp-land-steps:has(> :nth-child(8):last-child),.attp-land .attp-land-steps:has(> :nth-child(4):last-child){grid-template-columns:repeat(4,minmax(0,1fr)) !important;}
.attp-land .attp-land-valgrid:has(> :nth-child(10):last-child),.attp-land .attp-land-valgrid:has(> :nth-child(5):last-child){grid-template-columns:repeat(5,minmax(0,1fr)) !important;}
}
/* 1.149.4 city cards: names are never split mid-word (attp-fit.js shrinks a name that is too wide), the button text stays on one line, and only a card whose name would touch the heart gets extra room at the top */
#attpLand:not(.attp-air-page) .attp-dd-card .attp-dd-name{overflow-wrap:break-word;word-break:normal;hyphens:manual;}
#attpLand:not(.attp-air-page) .attp-dd-card .attp-dd-cta{white-space:nowrap;max-width:calc(100% + 14px);margin-right:-14px;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis;letter-spacing:.04em;font-size:.64em;padding:7px 12px;}
#attpLand:not(.attp-air-page) .attp-dd-card .attp-dd-cta.attp-cta-wrap{max-width:100%;margin-right:0;white-space:normal;overflow:visible;text-overflow:clip;text-align:center;line-height:1.25;border-radius:16px;padding:6px 14px;}
/* 1.152.0 badges use the card colour with white text */
.attp-wrap .attp-hotel-badges{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 2px;}
.attp-wrap .attp-badge,.attp-wrap .attp-badge-top,.attp-wrap .attp-badge-pick,.attp-wrap .attp-badge-luxury,.attp-wrap .attp-badge-upscale,.attp-wrap .attp-badge-mid-range,.attp-wrap .attp-badge-budget{display:inline-block;padding:3px 10px;border-radius:999px;font-size:.74em;font-weight:700;letter-spacing:.03em;line-height:1.35;white-space:nowrap;color:#fff;background:var(--bd-bg,var(--ln-accent,#0a1ca5));}
#attpLand .attp-dd-card .attp-pick-badge{position:absolute;top:10px;left:12px;z-index:3;display:inline-block;padding:3px 10px;border-radius:999px;background:var(--dd-bg,var(--ln-accent,#0a1ca5));border:1px solid #fff;color:#fff;font-size:.62em;font-weight:700;letter-spacing:.04em;line-height:1.35;white-space:nowrap;}
#attpLand .attp-dd-card:has(.attp-pick-badge){padding-top:48px !important;}
.attp-wrap .attp-tag{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.74em;font-weight:600;letter-spacing:.02em;line-height:1.35;white-space:nowrap;background:#fff;color:var(--bd-bg,var(--ln-accent,#0a1ca5));border:1.5px solid var(--bd-bg,var(--ln-accent,#0a1ca5));}
.attp-wrap .attp-hotels-extra{grid-column:1/-1;margin:10px 0 -4px;padding-top:14px;border-top:1px solid rgba(128,128,128,.28);font-size:.95em;font-weight:700;letter-spacing:.06em;text-transform:uppercase;opacity:.8;}
.attp-wrap .attp-stay{margin:0 0 14px;}
.attp-wrap .attp-stay-head{font-weight:700;margin:0 0 8px;}
.attp-wrap .attp-stay-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
.attp-wrap .attp-stay-card{background:#fff;border:2px solid #cc00cc;border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:6px;min-width:0;}
.attp-wrap .attp-stay-name{font-weight:700;line-height:1.25;overflow-wrap:break-word;}
.attp-wrap .attp-stay-area{font-size:.85em;opacity:.75;}
.attp-wrap .attp-stay-tags{display:flex;flex-wrap:wrap;gap:4px;}
.attp-wrap .attp-stay-tag{font-size:.78em;border:1.5px solid #cc00cc;border-radius:999px;padding:2px 8px;}
.attp-wrap .attp-stay-badge{align-self:flex-start;font-size:.78em;font-weight:700;color:#fff;background:#cc00cc;border-radius:999px;padding:3px 9px;}
.attp-wrap .attp-stay-btn{margin-top:auto;align-self:flex-start;font-size:.9em;font-weight:700;text-decoration:none;border:1.5px solid #cc00cc;border-radius:999px;padding:6px 12px;}
.attp-wrap .attp-stay-msg{font-size:.9em;opacity:.7;grid-column:1/-1;}
@media (max-width:700px){.attp-wrap .attp-stay-list{grid-template-columns:1fr;}}
@media print{.attp-wrap .attp-stay{display:none;}}
.attp-wrap .attp-stay-morewrap{margin-top:12px;text-align:center;}
.attp-wrap .attp-stay-card .attp-stay-more{font-size:.82em;font-weight:600;color:#cc00cc;border:0 !important;background:none !important;padding:0 !important;margin:2px 0 0 !important;border-radius:0 !important;align-self:flex-start;}
.attp-wrap .attp-stay-box{margin-bottom:14px;}
@media print{.attp-wrap .attp-stay-box{display:none;}}
.attp-wrap .attp-stay-dates{font-size:.85em;opacity:.8;margin-top:auto;padding-top:4px;}
.attp-wrap .attp-stay-dates + .attp-stay-btn{margin-top:4px;}
.attp-wrap .attp-stay-near{font-size:.9em;margin-top:2px;}
/* Airports page v1.154.13: one full-width block per country (A to Z), cards in a tidy grid, no columns or "continued" blocks */
html body #attpLand.attp-air-page .attp-air-flow{display:block !important;max-width:1180px;margin:30px auto 0;padding:0 20px;}
html body #attpLand.attp-air-page .attp-air-flow > .attp-dd-sec{display:block;margin:0 0 38px !important;}
html body #attpLand.attp-air-page .attp-air-flow .attp-land-h2{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;}
html body #attpLand.attp-air-page .attp-air-flow .attp-air-count{font-size:.42em;font-weight:600;letter-spacing:.08em;text-transform:uppercase;opacity:.6;white-space:nowrap;}
html body #attpLand.attp-air-page .attp-air-flow .attp-dd-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr)) !important;gap:14px !important;}
html body #attpLand.attp-air-page .attp-air-flow > .attp-ad{margin:0 0 38px;}
/* Airports A to Z by city: big letter headings */
html body #attpLand.attp-air-page.attp-airc .attp-air-flow .attp-land-h2{font-size:2.6em !important;font-weight:700 !important;line-height:1 !important;}
html body #attpLand.attp-air-page.attp-airc .attp-air-flow > .attp-dd-sec{margin-bottom:30px !important;}
.attp-hotels.attp-hr-tx.attp-hr-tx.attp-hr-tx.attp-hr-tx.attp-hr-tx.attp-wrap .attp-hotel-card .attp-hotel-name,.attp-hotels.attp-hr-tx.attp-hr-tx.attp-hr-tx.attp-hr-tx.attp-hr-tx.attp-wrap .attp-hotel-card .attp-hotel-meta,.attp-hotels.attp-hr-tx.attp-hr-tx.attp-hr-tx.attp-hr-tx.attp-hr-tx.attp-wrap .attp-hotel-card .attp-hotel-why{color:var(--hr-tx) !important;}
.attp-hotels.attp-hr-z.attp-hr-z.attp-hr-z.attp-hr-z.attp-hr-z.attp-wrap .attp-hotel-card .attp-hotel-name{font-size:calc(1.05em * var(--hr-z)) !important;}
.attp-hotels.attp-hr-z.attp-hr-z.attp-hr-z.attp-hr-z.attp-hr-z.attp-wrap.attp-lux .attp-hotel-card .attp-hotel-name{font-size:calc(1.25em * var(--hr-z)) !important;}
.attp-hotels.attp-hr-z.attp-hr-z.attp-hr-z.attp-hr-z.attp-hr-z.attp-wrap .attp-hotel-card .attp-hotel-meta,.attp-hotels.attp-hr-z.attp-hr-z.attp-hr-z.attp-hr-z.attp-hr-z.attp-wrap .attp-hotel-card .attp-hotel-why{font-size:calc(.95em * var(--hr-z)) !important;}
.attp-hotels.attp-hr-bt.attp-hr-bt.attp-hr-bt.attp-hr-bt.attp-hr-bt.attp-wrap .attp-hotel-btn{color:var(--hr-bt) !important;}
.attp-hotels.attp-hr-bt.attp-hr-bt.attp-hr-bt.attp-hr-bt.attp-hr-bt.attp-wrap .attp-hotel-btn:hover{color:#fff !important;}
.attp-hotels.attp-hr-bf.attp-hr-bf.attp-hr-bf.attp-hr-bf.attp-hr-bf.attp-wrap .attp-hotel-btn{background:var(--hr-bf) !important;}
.attp-hotels.attp-hr-bf.attp-hr-bf.attp-hr-bf.attp-hr-bf.attp-hr-bf.attp-wrap .attp-hotel-btn:hover{background:var(--hr-bf) !important;color:var(--hr-bt,#fff) !important;filter:brightness(.88);}
/* Date boxes: if the month/day badge was not filled in, hide the blank circle and show the browser's own calendar icon */
.attp-date-field-wrap:has(.attp-date-badge strong:empty) .attp-date-badge{display:none;}
.attp-date-field-wrap:has(.attp-date-badge strong:empty) input[type="date"]::-webkit-calendar-picker-indicator{opacity:1;}
/* Calendar pop-up (Date of Arrival / Date of Departure) */
.attp-date-field-wrap .attp-cal-open{position:absolute;left:0;top:0;right:0;bottom:0;z-index:3;width:100%;height:100%;margin:0;padding:0;border:0;border-radius:inherit;background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent;}
.attp-date-field-wrap input[type="date"][readonly]{cursor:pointer;}
html.attp-cal-lock{overflow:hidden;}
.attp-cal-back{position:fixed;left:0;top:0;right:0;bottom:0;z-index:2147483000;background:rgba(20,10,30,.55);display:flex;align-items:center;justify-content:center;padding:14px;box-sizing:border-box;}
.attp-cal-back[hidden]{display:none;}
.attp-cal{position:relative;width:100%;max-width:380px;max-height:calc(100vh - 28px);overflow:auto;background:#fff;color:#1f1330;border-radius:22px;border:2px solid #cc00cc;box-shadow:0 18px 50px rgba(0,0,0,.35);padding:20px 18px 18px;box-sizing:border-box;font-family:inherit;}
.attp-cal *{box-sizing:border-box;font-family:inherit;}
.attp-cal-x{position:absolute;right:10px;top:8px;width:40px;height:40px;border:0;border-radius:50%;background:transparent;color:#6b5a78;font-size:28px;line-height:1;cursor:pointer;}
.attp-cal-x:hover,.attp-cal-x:focus-visible{background:#f6e8f6;}
.attp-cal-kicker{font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:#cc00cc;font-weight:700;padding-right:44px;}
.attp-cal-title{margin:2px 0 4px;padding:0 44px 0 0;font-size:1.55rem;line-height:1.15;font-weight:800;color:#1f1330;}
.attp-cal-sel{font-size:1rem;font-weight:600;color:#1f1330;margin:0 0 12px;min-height:1.3em;}
.attp-cal-sel.is-empty{color:#8a7a96;font-weight:500;}
.attp-cal-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 6px;}
.attp-cal-month{font-weight:700;font-size:1.05rem;}
.attp-cal-prev,.attp-cal-next{width:44px;height:44px;border:2px solid #cc00cc;border-radius:50%;background:#fff;color:#cc00cc;font-size:26px;line-height:1;cursor:pointer;padding:0;}
.attp-cal-prev:disabled,.attp-cal-next:disabled{opacity:.3;cursor:default;}
.attp-cal-dow,.attp-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;text-align:center;}
.attp-cal-dow span{font-size:.72rem;font-weight:700;color:#8a7a96;padding:6px 0;text-transform:uppercase;letter-spacing:.04em;}
.attp-cal-gap{display:block;}
.attp-cal-day{height:42px;border:0;border-radius:50%;background:transparent;color:#1f1330;font-size:1rem;cursor:pointer;padding:0;}
.attp-cal-day:hover:not(:disabled){background:#f6e8f6;}
.attp-cal-day:disabled{color:#c9bfd1;cursor:default;}
.attp-cal-day.is-today{box-shadow:inset 0 0 0 2px #e9b7e9;}
.attp-cal-day.is-other{box-shadow:inset 0 0 0 2px #cc00cc;font-weight:700;}
.attp-cal-day.in-range{background:#fbeefb;border-radius:0;}
.attp-cal-day.is-sel,.attp-cal-day.is-sel:hover{background:#cc00cc;color:#fff;font-weight:700;box-shadow:none;}
.attp-cal button:focus-visible{outline:3px solid #7a007a;outline-offset:1px;}
@media (max-width:420px){.attp-cal{padding:18px 12px 14px;}.attp-cal-title{font-size:1.4rem;}.attp-cal-day{height:40px;}}
.attp-wrap .attp-header{justify-content:flex-end;}
.attp-wrap .attp-header .attp-my-trips-btn{margin-left:auto;}
.attp-wrap .attp-itin-suggest,.attp-wrap .attp-itin-header,.attp-wrap .attp-itin-header h3,.attp-wrap .attp-itin-header .attp-itin-sub{text-align:center;}
/* v1.155.16 slide-in results panel for the landing-page cards */
html.attp-pnl-lock{overflow:hidden;}
.attp-pnl-back{position:fixed;inset:0;z-index:99999;background:rgba(15,12,20,.5);opacity:0;transition:opacity .22s ease;display:flex;justify-content:flex-end;}
.attp-pnl-back[hidden]{display:none;}
.attp-pnl-back.is-open{opacity:1;}
html body .attp-pnl-back .attp-pnl.attp-pnl.attp-wrap.attp-hotels{position:relative !important;width:min(620px,100%) !important;max-width:100% !important;height:100% !important;margin:0 !important;border-radius:0 !important;padding:0 !important;overflow:hidden !important;display:flex !important;flex-direction:column;transform:translateX(100%);transition:transform .26s ease;box-shadow:-10px 0 40px rgba(0,0,0,.3) !important;box-sizing:border-box;}
.attp-pnl-back.is-open .attp-pnl.attp-pnl.attp-wrap.attp-hotels{transform:translateX(0);}
.attp-pnl-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px 6px;}
.attp-pnl-ttl{font-size:1.25em;font-weight:700;line-height:1.25;}
.attp-pnl-x{background:none;border:0;font-size:2em;line-height:1;cursor:pointer;color:inherit;padding:0 6px;}
.attp-pnl-meta{padding:0 20px 12px;font-size:.88em;opacity:.8;border-bottom:1px solid rgba(128,128,128,.3);}
.attp-pnl-chg{background:none;border:0;padding:0;margin-left:6px;text-decoration:underline;cursor:pointer;color:inherit;font:inherit;}
.attp-pnl-body{flex:1;overflow-y:auto;padding:16px 20px 28px;-webkit-overflow-scrolling:touch;}
@media (max-width:700px){.attp-pnl-back{align-items:flex-end;}html body .attp-pnl-back .attp-pnl.attp-pnl.attp-wrap.attp-hotels{width:100% !important;height:92% !important;border-radius:16px 16px 0 0 !important;transform:translateY(100%);}.attp-pnl-back.is-open .attp-pnl.attp-pnl.attp-wrap.attp-hotels{transform:translateY(0);}}
/* v1.155.17 itinerary stay card details panel */
.attp-wrap .attp-stay-card{cursor:pointer;}
.attp-wrap .attp-stay-card .attp-stay-more{font-size:.82em;font-weight:600;color:#cc00cc;border:0 !important;background:none !important;padding:0 !important;margin:2px 0 0 !important;border-radius:0 !important;align-self:flex-start;}
html.attp-stp-lock{overflow:hidden;}
.attp-stp-back{position:fixed;inset:0;z-index:99999;background:rgba(15,12,20,.5);opacity:0;transition:opacity .22s ease;display:flex;justify-content:flex-end;}
.attp-stp-back[hidden]{display:none;}
.attp-stp-back.is-open{opacity:1;}
html body .attp-stp-back .attp-stp.attp-stp.attp-wrap{position:relative;width:min(440px,100%);max-width:100%;height:100%;margin:0;padding:28px 24px;background:#fff;color:#1f2937;box-sizing:border-box;overflow-y:auto;transform:translateX(100%);transition:transform .26s ease;box-shadow:-10px 0 40px rgba(0,0,0,.3);display:block;}
.attp-stp-back.is-open .attp-stp.attp-stp.attp-wrap{transform:translateX(0);}
.attp-stp-x{position:absolute;top:10px;right:14px;background:none;border:0;font-size:2em;line-height:1;cursor:pointer;color:#1f2937;}
.attp-stp-body{display:flex;flex-direction:column;gap:10px;align-items:flex-start;padding-top:8px;}
.attp-stp-name{margin:4px 0 0;font-size:1.5em;line-height:1.25;}
.attp-stp-why{margin:0;font-size:1.02em;line-height:1.5;}
.attp-stp-btn{margin-top:8px !important;font-size:1em !important;padding:10px 20px !important;}
.attp-stp-fine{margin:6px 0 0;font-size:.8em;color:#6b7280;}
@media (max-width:700px){.attp-stp-back{align-items:flex-end;}html body .attp-stp-back .attp-stp.attp-stp.attp-wrap{width:100%;height:auto;max-height:88%;border-radius:16px 16px 0 0;transform:translateY(100%);}.attp-stp-back.is-open .attp-stp.attp-stp.attp-wrap{transform:translateY(0);}}
/* v1.155.19 price filter chips */
.attp-wrap .attp-hotels-filter{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 14px;}
.attp-wrap .attp-hotels-filter .attp-hf{border:1.5px solid currentColor;background:transparent;color:inherit;border-radius:999px;padding:6px 14px;font:inherit;font-size:.85em;font-weight:600;cursor:pointer;opacity:.75;}
.attp-wrap .attp-hotels-filter .attp-hf.is-on{background:var(--lx-accent,#cc00cc);border-color:var(--lx-accent,#cc00cc);color:#fff;opacity:1;}
.attp-wrap .attp-notlisted{text-align:center;margin:10px auto 18px;max-width:640px;font-size:.98em;opacity:.9;}
.attp-wrap .attp-notlisted a{font-weight:700;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:5px;color:var(--dd-bg,var(--ln-accent,#1f4fd8)) !important;}
/* v1.155.32 hotels hub */
.attp-wrap.attp-hub .attp-hub-pop{text-align:center;margin:18px auto 6px;}
.attp-wrap.attp-hub .attp-hub-pop-h{margin:0 0 10px;font-size:1.05em;}
.attp-wrap.attp-hub .attp-hub-chips,.attp-wrap.attp-hub .attp-hub-tabs{justify-content:center;margin:10px 0 18px;}
.attp-wrap.attp-hub .attp-hub-tabs a.attp-hf{text-decoration:none;display:inline-block;}
#attpLand.attp-hub .attp-hub-tabs a.attp-hf.is-on,#attpLand.attp-hub .attp-hub-tabs button.attp-hf.is-on{background:var(--dd-bg,var(--ln-accent,#1f4fd8)) !important;border-color:var(--dd-bg,var(--ln-accent,#1f4fd8)) !important;color:var(--dd-fg,#fff) !important;}
.attp-wrap.attp-hub .attp-hub-tabs{position:sticky;top:0;z-index:20;padding:10px 0;background:inherit;}
.attp-wrap.attp-hub .attp-hub-loading{text-align:center;padding:30px 0;opacity:.7;}
.attp-wrap.attp-hub .attp-hub-section{margin-top:26px;}
.attp-wrap.attp-hub .attp-hub-sec-h{text-align:center;margin:10px 0 6px;}
.attp-wrap .attp-hotels-more-wrap{text-align:center;margin:18px 0 6px;}
.attp-wrap .attp-hotels-more{border:1.5px solid currentColor;background:transparent;color:inherit;border-radius:999px;padding:10px 24px;font:inherit;font-weight:700;cursor:pointer;}
.attp-wrap .attp-hotels-more:hover{background:rgba(0,0,0,.06);}
.attp-wrap .attp-notlisted-end{text-align:center;margin:4px 0 26px;}
.attp-wrap .attp-notlisted-end .attp-notlisted-btn,.attp-wrap .attp-notlisted .attp-notlisted-btn{display:inline-block;margin-top:0;padding:11px 26px;border-radius:999px;background:var(--dd-bg,var(--ln-accent,#1f4fd8)) !important;color:var(--dd-fg,#fff) !important;font-weight:700;font-size:.95em;text-decoration:none !important;box-shadow:0 2px 8px rgba(0,0,0,.14);}
.attp-wrap .attp-notlisted-end .attp-notlisted-btn:hover{transform:translateY(-1px);box-shadow:0 6px 14px rgba(0,0,0,.2);}
.attp-wrap .attp-stay-list{gap:8px;}
.attp-wrap .attp-stay-card{padding:9px 11px;gap:4px;}
.attp-wrap .attp-stay-card .attp-stay-name{font-size:.95em;}
.attp-wrap .attp-stay-card .attp-stay-area{font-size:.8em;line-height:1.35;}
.attp-wrap .attp-stay-card .attp-stay-badge{font-size:.72em;padding:2px 8px;}
.attp-wrap .attp-stay-card .attp-stay-tag{font-size:.72em;padding:1px 7px;}
.attp-wrap .attp-stay-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:4px;}
.attp-wrap .attp-stay-foot .attp-stay-btn{margin-top:0;align-self:auto;font-size:.82em;padding:4px 11px;white-space:nowrap;}
.attp-wrap .attp-stay-foot .attp-stay-more{margin:0 !important;font-size:.8em;}
.attp-wrap .attp-stay-card .attp-stay-foot a.attp-stay-btn{padding:3px 10px !important;font-size:.78em !important;line-height:1.5 !important;min-height:0 !important;height:auto !important;margin:0 !important;border-width:1.5px !important;}
.attp-wrap .attp-stay-card .attp-stay-foot .attp-stay-more{font-size:.78em !important;line-height:1.5 !important;}
.attp-wrap .attp-stay-card{gap:3px !important;padding:8px 10px !important;}
.attp-wrap .attp-stay-card .attp-stay-foot{padding-top:2px;}
.attp-wrap .attp-stay-card .attp-stay-area{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
#attpLand.attp-hub .attp-hub-chips .attp-hf,#attpLand.attp-hub .attp-hub-tabs .attp-hf:not(.is-on){background:#fff !important;border:1.5px solid var(--dd-bg,var(--ln-accent,#1f4fd8)) !important;color:var(--dd-bg,var(--ln-accent,#1f4fd8)) !important;opacity:1 !important;}
#attpLand.attp-hub .attp-hub-chips .attp-hf:hover,#attpLand.attp-hub .attp-hub-tabs .attp-hf:not(.is-on):hover{background:rgba(255,255,255,.7) !important;box-shadow:0 2px 8px rgba(0,0,0,.12);}
@keyframes attpCalFade{from{opacity:0}to{opacity:1}}
@keyframes attpCalSlide{from{opacity:0;transform:translateY(70px)}to{opacity:1;transform:translateY(0)}}
.attp-cal-back.is-slow{animation:attpCalFade 1s ease-out both;}
.attp-cal-back.is-slow .attp-cal{animation:attpCalSlide 1.1s cubic-bezier(.22,.8,.3,1) both;}
@media (prefers-reduced-motion:reduce){.attp-cal-back.is-slow,.attp-cal-back.is-slow .attp-cal{animation:none;}}
html body .attp-pnl-back .attp-pnl.attp-pnl.attp-wrap.attp-hotels{border-left:4px solid var(--dd-bg,var(--ln-accent,#0a1aa8)) !important;box-shadow:-10px 0 40px rgba(10,26,168,.25) !important;}
@media (max-width:700px){html body .attp-pnl-back .attp-pnl.attp-pnl.attp-wrap.attp-hotels{border-left:0 !important;border-top:4px solid var(--dd-bg,var(--ln-accent,#0a1aa8)) !important;}}
.attp-wrap .attp-hotels-status.is-loading{padding:30px 6px 40px;}
.attp-wrap .attp-load{max-width:460px;margin:0 auto;text-align:center;}
.attp-wrap .attp-load-bar{height:10px;border-radius:999px;background:rgba(10,26,168,.14);overflow:hidden;border:1.5px solid var(--dd-bg,var(--ln-accent,#0a1aa8));}
.attp-wrap .attp-load-bar span{display:block;height:100%;width:3%;border-radius:999px;background:var(--dd-bg,var(--ln-accent,#0a1aa8));transition:width .3s linear;}
.attp-wrap .attp-load-msg{margin:16px 0 0;font-size:1.02em;min-height:1.5em;transition:opacity .22s ease,transform .22s ease;}
.attp-wrap .attp-load-msg.is-out{opacity:0;transform:translateY(6px);}
html body .attp-wrap .attp-hotels-results .attp-hotels-filter .attp-hf.is-on,html body .attp-pnl .attp-hotels-filter .attp-hf.is-on{background:var(--dd-bg,var(--ln-accent,#0a1aa8)) !important;border-color:var(--dd-bg,var(--ln-accent,#0a1aa8)) !important;color:#fff !important;}
html body .attp-pnl .attp-hotels-head h4,html body .attp-wrap .attp-hotels-results .attp-hotels-head h4{color:var(--dd-bg,var(--ln-accent,#0a1aa8)) !important;}
@media (max-width:700px){
html body #attpLand.attp-hub .attp-dd-nav{display:grid !important;grid-template-columns:repeat(7,minmax(0,1fr)) !important;gap:8px !important;max-width:420px !important;margin-left:auto !important;margin-right:auto !important;}
html body #attpLand.attp-hub .attp-dd-nav a{display:flex !important;align-items:center;justify-content:center;width:100% !important;aspect-ratio:1/1;height:auto !important;padding:0 !important;border-radius:50% !important;font-size:.95em;box-sizing:border-box;}
html body #attpLand.attp-hub .attp-hub-chips{gap:8px !important;}
.attp-wrap .attp-notlisted{line-height:1.5 !important;padding:0 6px;}
}
@media (min-width:701px){
.attp-pnl-back{align-items:flex-end;justify-content:center;}
html body .attp-pnl-back .attp-pnl.attp-pnl.attp-wrap.attp-hotels{width:min(980px,96%) !important;height:90vh !important;border-radius:20px 20px 0 0 !important;border-left:0 !important;border-top:4px solid var(--dd-bg,var(--ln-accent,#0a1aa8)) !important;transform:translateY(100%);transition:transform .55s cubic-bezier(.22,.8,.3,1);box-shadow:0 -12px 40px rgba(10,26,168,.28) !important;}
.attp-pnl-back.is-open .attp-pnl.attp-pnl.attp-wrap.attp-hotels{transform:translateY(0);}
}
@media (prefers-reduced-motion:reduce){html body .attp-pnl-back .attp-pnl.attp-pnl.attp-wrap.attp-hotels{transition:none;}}
.attp-wrap .attp-hub-nomatch{max-width:620px;margin:10px auto 0;padding:12px 16px;text-align:center;border:1.5px solid var(--dd-bg,var(--ln-accent,#0a1aa8));border-radius:16px;background:#fff;box-sizing:border-box;}
.attp-wrap .attp-hub-nomatch[hidden]{display:none;}
.attp-wrap .attp-hub-nomatch p{margin:0 0 8px;line-height:1.4;font-size:.95em;}
.attp-wrap .attp-hub-nm-sep{align-self:center;font-size:.85em;opacity:.7;}
.attp-wrap .attp-hub-nomatch .attp-hub-nm-or{margin:12px 0 10px;font-size:.92em;opacity:.85;}
.attp-wrap .attp-hub-nm-row{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;}
.attp-wrap .attp-hub-nomatch .attp-hub-nm-btn{border:1.5px solid var(--dd-bg,var(--ln-accent,#0a1aa8)) !important;background:var(--dd-bg,var(--ln-accent,#0a1aa8)) !important;color:#fff !important;border-radius:999px !important;padding:6px 16px !important;font:inherit;font-weight:700;font-size:.88em;cursor:pointer;}
.attp-wrap .attp-hub-nomatch .attp-hub-nm-btn.attp-hub-nm-alt{background:#fff !important;color:var(--dd-bg,var(--ln-accent,#0a1aa8)) !important;}
html body .attp-wrap .attp-hub-nomatch{overflow-y:auto;overflow-x:hidden;transition:max-height .35s ease;text-align:left;padding:0 16px;max-width:620px;border-width:1.5px;}
html body .attp-wrap .attp-hub-nomatch:not([hidden]){padding:6px 16px 12px;}
.attp-wrap .attp-hub-nm-msg{margin:10px 0 8px;text-align:center;}
.attp-wrap .attp-hub-grp{padding:8px 0 4px;}
.attp-wrap .attp-hub-grp-h{font-weight:700;font-size:.8em;letter-spacing:.08em;text-transform:uppercase;color:var(--dd-bg,var(--ln-accent,#0a1aa8));margin:0 0 6px;}
.attp-wrap .attp-hub-grp-h span{opacity:.6;font-weight:600;}
.attp-wrap .attp-hub-hits{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:6px;}
.attp-wrap .attp-hub-nomatch .attp-hub-hit{display:flex !important;flex-direction:column;align-items:flex-start;gap:1px;text-align:left;background:#fff !important;border:1.5px solid rgba(10,26,168,.35) !important;border-radius:12px !important;padding:8px 12px !important;cursor:pointer;color:inherit !important;font:inherit;}
.attp-wrap .attp-hub-nomatch .attp-hub-hit:hover{border-color:var(--dd-bg,var(--ln-accent,#0a1aa8)) !important;background:rgba(10,26,168,.05) !important;}
.attp-wrap .attp-hub-hit .attp-dd-name{font-weight:700;font-size:.95em;color:var(--dd-bg,var(--ln-accent,#0a1aa8)) !important;}
.attp-wrap .attp-hub-hit-sub{font-size:.8em;opacity:.75;line-height:1.3;}
.attp-wrap .attp-hub-nomatch .attp-hub-more{background:none !important;border:0 !important;padding:6px 2px !important;margin-top:2px;color:var(--dd-bg,var(--ln-accent,#0a1aa8)) !important;font:inherit;font-weight:700;font-size:.85em;cursor:pointer;text-decoration:underline;}
.attp-wrap .attp-hub-ft{margin-top:8px;padding-top:10px;border-top:1px solid rgba(128,128,128,.25);display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:center;font-size:.9em;}
html body .attp-wrap .attp-hub-nomatch{scrollbar-width:thin;scrollbar-color:var(--dd-bg,var(--ln-accent,#0a1aa8)) transparent;}
html body .attp-wrap .attp-hub-nomatch::-webkit-scrollbar{width:6px;}
html body .attp-wrap .attp-hub-nomatch::-webkit-scrollbar-track{background:transparent;margin:10px 0;}
html body .attp-wrap .attp-hub-nomatch::-webkit-scrollbar-thumb{background:var(--dd-bg,var(--ln-accent,#0a1aa8));border-radius:999px;}
html body .attp-wrap .attp-hub-nomatch .attp-hub-grp-h{color:#9a6f00 !important;}
html body .attp-wrap .attp-hub-nomatch .attp-hub-grp-h span{color:#9a6f00 !important;opacity:.7;}
html body .attp-wrap .attp-hub-nomatch .attp-hub-grp-h,html body .attp-wrap .attp-hub-nomatch .attp-hub-grp-h span{color:#111 !important;}
html body .attp-wrap .attp-hub-nomatch .attp-hub-hit{flex-direction:row !important;align-items:center !important;justify-content:space-between;gap:10px;background:var(--dd-bg,var(--ln-accent,#0a1aa8)) !important;border:1px solid var(--dd-bg,var(--ln-accent,#0a1aa8)) !important;border-radius:14px !important;padding:12px 14px !important;color:var(--dd-fg,#fff) !important;box-shadow:0 2px 8px rgba(0,0,0,.12);transition:transform .15s,box-shadow .15s;}
html body .attp-wrap .attp-hub-nomatch .attp-hub-hit:hover{background:var(--dd-bg,var(--ln-accent,#0a1aa8)) !important;transform:translateY(-1px);box-shadow:0 6px 16px rgba(0,0,0,.2);}
.attp-wrap .attp-hub-hit-txt{display:flex;flex-direction:column;gap:2px;min-width:0;text-align:left;}
html body .attp-wrap .attp-hub-nomatch .attp-hub-hit .attp-dd-name{color:var(--dd-fg,#fff) !important;font-weight:700;font-size:1.02em;}
html body .attp-wrap .attp-hub-nomatch .attp-hub-hit .attp-hub-hit-sub{color:var(--dd-fg,#fff) !important;opacity:.78;font-size:.82em;}
.attp-wrap .attp-hub-hit-cta{flex:0 0 auto;border:1px solid var(--dd-fg,#fff);border-radius:999px;padding:6px 12px;font-size:.68em;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--dd-fg,#fff);white-space:nowrap;}
@media (max-width:480px){.attp-wrap .attp-hub-hits{grid-template-columns:1fr;}}
.attp-wrap .attp-testroute{margin:0 0 12px;padding:8px 12px;border:1px dashed #0a1aa8;border-radius:8px;background:#fff;color:#0a1aa8;font-size:.85em;font-weight:600;}
.attp-wrap .attp-hotels-things{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:0 0 10px;}
.attp-wrap .attp-hotels-things-btn{display:inline-block;padding:10px 24px;border-radius:999px;background:#fff !important;color:var(--dd-bg,var(--ln-accent,#0a1aa8)) !important;border:1.5px solid var(--dd-bg,var(--ln-accent,#0a1aa8));font-weight:700;font-size:.92em;text-decoration:none !important;}
.attp-wrap .attp-share-row{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px;}
.attp-wrap .attp-share-btn{padding:8px 18px;border-radius:999px;border:1.5px solid var(--dd-bg,var(--ln-accent,#0a1aa8));background:var(--dd-bg,var(--ln-accent,#0a1aa8)) !important;color:var(--dd-fg,#fff) !important;font-weight:700;font-size:.85em;cursor:pointer;}
.attp-wrap .attp-share-btn.is-ghost{background:#fff !important;color:var(--dd-bg,var(--ln-accent,#0a1aa8)) !important;}
html body #attpLand .attp-dd-sec:not(.is-all) .attp-dd-card.attp-dd-extra{display:none !important;}
html body #attpLand .attp-dd-sec.is-folded .attp-dd-grid,html body #attpLand .attp-dd-sec.is-folded .attp-dd-morewrap{display:none !important;}
html body #attpLand.is-hubq .attp-dd-sec.is-folded .attp-dd-grid{display:grid !important;}
html body #attpLand.is-hubq .attp-dd-morewrap,html body #attpLand.is-hubq .attp-dd-fold{display:none !important;}
html body #attpLand .attp-dd-morewrap{margin:14px 0 0;text-align:center;}
html body #attpLand .attp-dd-more{cursor:pointer;border:1px solid var(--ln-gold);background:transparent;color:var(--ln-ink);border-radius:999px;padding:9px 22px;font:inherit;font-size:.9em;font-weight:600;letter-spacing:.02em;}
html body #attpLand .attp-dd-more:hover{background:var(--ln-gold);color:#fff;}
html body #attpLand .attp-dd-fold{display:block;margin:-6px 0 12px auto;cursor:pointer;border:1px solid var(--ln-gold);background:transparent;color:var(--ln-ink);border-radius:999px;padding:4px 16px;font:inherit;font-size:.8em;font-weight:600;}
html body #attpLand .attp-dd-fold:hover{background:var(--ln-gold);color:#fff;}
.attp-wrap .attp-share-btn.is-tpf{text-decoration:none !important;display:inline-block;}
html body .attp-wrap .attp-share-row .attp-share-btn,html body .attp-wrap .attp-share-row .attp-share-btn:hover,html body .attp-wrap .attp-share-row .attp-share-btn:focus{background:#fff !important;color:var(--dd-bg,var(--ln-accent,#0a1aa8)) !important;border:1.5px solid var(--dd-bg,var(--ln-accent,#0a1aa8)) !important;}
html body .attp-wrap .attp-share-row .attp-share-btn:hover{background:rgba(10,26,168,.06) !important;}
html body .attp-wrap .attp-share-row.is-bottom{justify-content:center;margin:16px 0 8px;}
.attp-wrap .attp-hub-hotd{text-align:center;margin:22px auto 6px;max-width:1280px;padding:0 20px;box-sizing:border-box;}
html body .attp-wrap .attp-fh-grid{display:grid !important;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;margin:8px 0 0;}
html body .attp-wrap a.attp-fh{display:flex;flex-direction:column;gap:5px;align-items:flex-start;justify-content:flex-start;text-align:left;text-decoration:none !important;box-sizing:border-box;min-width:0;min-height:128px;padding:14px 18px;border-radius:14px;background:var(--fh-bg,#0b6b62) !important;color:#fff !important;box-shadow:0 6px 18px rgba(0,0,0,.12);}
html body .attp-wrap a.attp-fh.is-off{display:none !important;}
html body .attp-wrap a.attp-fh .attp-fh-name{font-weight:700;font-size:1.05em;line-height:1.25;color:#fff !important;}
html body .attp-wrap a.attp-fh .attp-fh-where{opacity:.85;font-size:.88em;color:#fff !important;}
html body .attp-wrap a.attp-fh .attp-fh-why{font-size:.88em;color:#fff !important;}
html body .attp-wrap a.attp-fh .attp-fh-tag{display:inline-block;padding:2px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.7);font-size:.68em;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#fff !important;}
html body .attp-wrap a.attp-fh .attp-fh-cta{margin-top:6px;display:inline-block;padding:6px 14px;border-radius:999px;border:1px solid #fff;font-size:.8em;font-weight:700;color:#fff !important;}
.attp-wrap .attp-fhx{display:grid;grid-template-columns:minmax(0,1fr);gap:18px 0;align-items:start;}
.attp-wrap .attp-hub-hotd.has-adults .attp-fhx{grid-template-columns:minmax(220px,1fr) 1px minmax(0,2fr);column-gap:22px;}
.attp-wrap .attp-fhx-div{align-self:stretch;width:1px;background:var(--ln-gold,#c9a227);opacity:.7;}
html body .attp-wrap .attp-fhx-col .attp-fh-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));}
html body .attp-wrap .attp-fhx-ad .attp-fh-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
@media (max-width:560px){html body .attp-wrap .attp-fhx-ad .attp-fh-grid{grid-template-columns:minmax(0,1fr);}}
html body .attp-wrap .attp-fhx-day .attp-fh-grid{grid-template-columns:minmax(0,1fr);}
html body .attp-wrap .attp-hub-hotd:not(.has-adults) .attp-fhx-day .attp-fh-grid{max-width:340px;margin-left:auto;margin-right:auto;}
@media (max-width:820px){.attp-wrap .attp-hub-hotd.has-adults .attp-fhx{grid-template-columns:minmax(0,1fr);}.attp-wrap .attp-fhx-div{width:auto;height:1px;}}
.attp-wrap .attp-hub-navhold{margin:18px 0 6px;}
.attp-wrap .attp-hub-navhold:empty{display:none;}
@media (max-width:700px){
html body #attpLand.attp-hub .attp-hub-navhold{padding:0 16px;box-sizing:border-box;}
html body #attpLand.attp-hub .attp-hub-navhold .attp-dd-nav{grid-template-columns:repeat(9,minmax(0,1fr)) !important;gap:6px !important;max-width:100% !important;margin-top:4px !important;margin-bottom:0 !important;}
html body #attpLand.attp-hub .attp-hub-navhold .attp-dd-nav a{font-size:.8em;}
}
html body .attp-wrap a.attp-fh .attp-fh-cta{margin-top:auto;}
html body .attp-wrap a.attp-fh .attp-fh-cta{border-color:var(--fh-btn,#fff);color:var(--fh-btn,#fff) !important;}
html body .attp-wrap .attp-hub-hotd.fh-solid a.attp-fh .attp-fh-cta{background:var(--fh-btn,#fff);color:var(--fh-bg,#0b6b62) !important;}
html body .attp-wrap .attp-deals-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 12px;}
html body .attp-wrap .attp-deals-tabs button.attp-dt{cursor:pointer;border:1.5px solid var(--fh-bg,#0b6b62) !important;background:#fff !important;color:var(--fh-bg,#0b6b62) !important;border-radius:999px;padding:6px 16px;font:inherit;font-size:.88em;font-weight:600;line-height:1.3;}
html body .attp-wrap .attp-deals-tabs button.attp-dt.is-on{background:var(--fh-bg,#0b6b62) !important;color:#fff !important;}
html body .attp-wrap .attp-fh-grid[hidden]{display:none !important;}
html body .attp-wrap a.attp-fh.has-img{padding-top:0;overflow:hidden;}
html body .attp-wrap a.attp-fh .attp-fh-img{display:block;width:calc(100% + 36px);margin:0 -18px 8px;aspect-ratio:16/10;overflow:hidden;background:rgba(255,255,255,.15);}
html body .attp-wrap a.attp-fh .attp-fh-img img{display:block;width:100%;height:100%;object-fit:cover;margin:0;border:0;border-radius:0;}
html body .attp-wrap .attp-hotel-card .attp-hotel-dist{font-size:.88em;opacity:.85;margin:2px 0 4px;}
html body .attp-wrap .attp-hotels-sortrow .attp-hf.is-on{background:var(--dd-bg,var(--ln-accent,#0a1aa8)) !important;border-color:var(--dd-bg,var(--ln-accent,#0a1aa8)) !important;color:#fff !important;opacity:1;}
html body .attp-wrap .attp-badge.attp-badge-onsite{background:#0b6b3a !important;color:#fff !important;}
html body .attp-wrap .attp-hotels-types .attp-hf.is-on{background:var(--dd-bg,var(--ln-accent,#0a1aa8)) !important;border-color:var(--dd-bg,var(--ln-accent,#0a1aa8)) !important;color:#fff !important;opacity:1;}
html body .attp-wrap .attp-hotels-staynote{margin:6px 0 10px;font-size:13px;line-height:1.4;opacity:.85;}
html body .attp-wrap .attp-badge.attp-badge-far{background:#e8e2d4 !important;color:#4a4231 !important;}
html body .attp-wrap .attp-flight-field{position:relative;}
html body .attp-wrap .attp-flight-field > .attp-suggest-list{top:100%;margin-top:2px;}
html body .attp-wrap .attp-suggest-list li.has-ap{line-height:1.3;}
html body .attp-wrap .attp-suggest-list li .attp-ap-code{display:inline-block;min-width:40px;}
html body .attp-wrap .attp-suggest-list li .attp-ap-sub{display:block;font-size:13px;font-weight:400;opacity:.8;margin-left:44px;}
html body .attp-wrap .attp-date-field-wrap{display:flex;align-items:center;}
html body .attp-wrap .attp-date-field-wrap input[type=date]{margin:0 !important;flex:1 1 auto;width:100%;}
html body .attp-wrap .attp-date-field-wrap .attp-date-badge{top:50%;bottom:auto;margin:0;}
html body #attp-app .attp-flight-field > .attp-suggest-list{background:#fff !important;border:1px solid #d6cfc0 !important;border-radius:10px !important;box-shadow:0 8px 24px rgba(0,0,0,.14) !important;padding:0 !important;overflow-x:hidden;}
html body #attp-app .attp-flight-field > .attp-suggest-list li{color:#1f2937 !important;font-weight:400 !important;border-radius:0 !important;padding:9px 14px !important;font-size:15px;}
html body #attp-app .attp-flight-field > .attp-suggest-list li.is-active,html body #attp-app .attp-flight-field > .attp-suggest-list li:hover{background:#eef1ff !important;color:#1f2937 !important;}
html body #attp-app .attp-flight-field > .attp-suggest-list li .attp-ap-code{color:#0a1aa8;font-weight:700;}
html body #attp-app .attp-flight-field > .attp-suggest-list li .attp-ap-sub{opacity:.7;}
.attp-wrap{--attp-tail:1;}
