/* Croaziere price table — shared base + desktop cleanup (all widths). Scope: TARIFE section only. */
html body #section-cruise-2 .cz-prices-wrap { position: relative; margin: 0 0 1.5rem; }
html body #section-cruise-2 table {
	width: 100% !important;
	height: auto !important;
	border-collapse: collapse;
	font-family: "Montserrat", "Helvetica Neue", Arial, sans-serif;
	font-variant-numeric: tabular-nums lining-nums;
}
html body #section-cruise-2 table th,
html body #section-cruise-2 table td { width: auto !important; height: auto !important; }
/* Header: small sans uppercase caption + short green underline (replaces the big serif h3 headers) */
html body #section-cruise-2 table th {
	padding: 0 14px 12px 0;
	vertical-align: bottom;
	text-align: left;
	border-bottom: 0;
}
html body #section-cruise-2 table th h3,
html body #section-cruise-2 .cz-th {
	display: block;
	margin: 0;
	font-family: "Montserrat", "Helvetica Neue", Arial, sans-serif;
	font-size: 12px;
	line-height: 1.35;
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: #6F746A;
}
html body #section-cruise-2 table th h3:after,
html body #section-cruise-2 .cz-th:after {
	content: "";
	display: block;
	width: 1.25rem;
	height: 2px;
	margin: .6rem 0 0;
	background: #CDD873;
}
html body #section-cruise-2 table td {
	padding: 14px 14px 14px 0;
	vertical-align: middle;
	border-bottom: 1px solid #E4E5E0;
	font-size: 15px;
	line-height: 1.4;
	color: #1C1F1A;
}
html body #section-cruise-2 table td:after { display: none; } /* theme's itinerary cell rule */
html body #section-cruise-2 td.cz-rowhead { font-size: 14px; font-weight: 500; color: #1C1F1A; }
html body #section-cruise-2 td.cz-price { white-space: nowrap; font-weight: 500; }
html body #section-cruise-2 td.cz-na,
html body #section-cruise-2 td.cz-soldout { color: #6F746A; font-size: 14px; }
html body #section-cruise-2 td.cz-note { font-size: 14px; color: #3A3E36; }
@media (min-width: 768px) {
	html body #section-cruise-2 td.cz-rowhead { white-space: nowrap; padding-right: 24px; }
	html body #section-cruise-2 .cz-swipe-hint { display: none; }
}
/* Lowest price per cabin: soft green marker under the figure (not a colour change, so it stays readable) */
html body #section-cruise-2 td.cz-best .cz-v,
html body #section-cruise-2 .cz-legend-mark {
	font-weight: 700;
	padding: 0 2px;
	margin: 0 -2px;
	background: linear-gradient(transparent 60%, rgba(205, 216, 115, .6) 60%, rgba(205, 216, 115, .6) 90%, transparent 90%);
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
}
html body #section-cruise-2 .cz-legend { margin: .75rem 0 1.25rem; font-size: 13px; line-height: 1.4; color: #6F746A; }
html body #section-cruise-2 .cz-legend-mark { color: #1C1F1A; font-size: 13px; padding: 0 1px; }
html body #section-cruise-2 .cz-swipe-hint { display: none; }
/* Option C — one compact table on phones, no swiping: cabins as rows, fare types as columns.
   Needs croaziere-prices.js with window.czPrices = { layout: 'flip', best: false }.
   Desktop keeps the cleaned-up source table (prices-base.css) unless option-c-desktop-flip.css is added too. */
html body #section-cruise-2 .cz-flip-wrap { display: none; }
html body #section-cruise-2 .cz-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
/* short labels on phones (Interior, My Cruise + Drinks), the full ones from 768px with the desktop flip */
html body #section-cruise-2 table.cz-flip .cz-l { display: none; }
html body #section-cruise-2 table.cz-flip {
	width: 100% !important;
	table-layout: fixed;
	border-collapse: collapse;
	margin: 0;
	font-family: "Montserrat", "Helvetica Neue", Arial, sans-serif;
	font-variant-numeric: tabular-nums lining-nums;
	color: #1C1F1A;
}
html body #section-cruise-2 table.cz-flip th,
html body #section-cruise-2 table.cz-flip td { width: auto !important; border: 0; background: none; }
html body #section-cruise-2 table.cz-flip td::after,
html body #section-cruise-2 table.cz-flip th::after { display: none; }
html body #section-cruise-2 table.cz-flip thead th {
	padding: 0 3px 9px;
	vertical-align: bottom;
	text-align: right;
	font-size: 10.5px;
	line-height: 1.25;
	font-weight: 600;
	letter-spacing: .03em;
	text-transform: uppercase;
	color: #6F746A;
	overflow-wrap: normal;
	hyphens: none;
	border-bottom: 2px solid #CDD873;
}
html body #section-cruise-2 table.cz-flip thead th.cz-flip-corner { width: 20% !important; padding-left: 0; }
/* few fare columns: give the cabin names room (Celebrity 'Concierge Class', MSC 'Yacht Club') */
html body #section-cruise-2 table.cz-flip.cz-flip--1 thead th.cz-flip-corner { width: 55% !important; }
html body #section-cruise-2 table.cz-flip.cz-flip--2 thead th.cz-flip-corner { width: 40% !important; }
html body #section-cruise-2 table.cz-flip.cz-flip--3 thead th.cz-flip-corner { width: 28% !important; }
/* 6 fare columns (not in today's data; stress-tested): tighter header + 12px values so 5-digit prices still fit */
html body #section-cruise-2 table.cz-flip.cz-flip--6 thead th { font-size: 10px; letter-spacing: 0; padding: 0 2px 9px; }
html body #section-cruise-2 table.cz-flip.cz-flip--6 thead th.cz-flip-corner { width: 15% !important; }
html body #section-cruise-2 table.cz-flip.cz-flip--6 td { font-size: 12px; padding: 11px 1px; letter-spacing: -.01em; }
html body #section-cruise-2 table.cz-flip.cz-flip--6 tbody th { font-size: 12px; }
html body #section-cruise-2 table.cz-flip.cz-flip--6 td.cz-price .cz-cur { font-size: .75em; margin-left: 0; }
html body #section-cruise-2 table.cz-flip tbody th {
	padding: 11px 4px 11px 0;
	text-align: left;
	font-size: 12.5px;
	font-weight: 600;
	line-height: 1.25;
	color: #1C1F1A;
	white-space: normal; /* 'Yacht Club', 'Mini suite' may take 2 lines */
	border-bottom: 1px solid #E4E5E0;
}
html body #section-cruise-2 table.cz-flip td {
	padding: 11px 3px;
	text-align: right;
	vertical-align: middle;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.25;
	white-space: nowrap;
	border-bottom: 1px solid #E4E5E0;
}
html body #section-cruise-2 table.cz-flip tr > :last-child { padding-right: 0; }
html body #section-cruise-2 table.cz-flip td.cz-na { color: #A9ADA3; font-weight: 400; }
html body #section-cruise-2 table.cz-flip td.cz-soldout { font-size: 11px; font-weight: 400; color: #6F746A; white-space: normal; }
html body #section-cruise-2 table.cz-flip td.cz-note { font-size: 12px; font-weight: 400; color: #3A3E36; white-space: normal; overflow-wrap: anywhere; }
html body #section-cruise-2 table.cz-flip .cz-cur { margin-left: .06em; font-size: .85em; font-weight: 500; }
html body #section-cruise-2 .cz-unit {
	margin: 0 0 10px;
	font-family: "Montserrat", "Helvetica Neue", Arial, sans-serif;
	font-size: 12px;
	line-height: 1.4;
	color: #6F746A;
}
@media (max-width: 767.98px) {
	html body #section-cruise-2 .cz-has-flip > .cz-prices-wrap { display: none; }
	html body #section-cruise-2 .cz-flip-wrap { display: block; margin: 0 0 1.5rem; }
}
/* No-JS fallback: the source table at least scrolls instead of overflowing the screen */
@media (max-width: 767.98px) {
	html body #section-cruise-2 .cruise-section-content table:not(.cz-prices):not(.cz-flip) { display: block; overflow-x: auto; }
}
/* Option C, desktop too: show the same flipped table at every width (comfortable sizes from 768px). */
@media (min-width: 768px) {
	html body #section-cruise-2 .cz-has-flip > .cz-prices-wrap { display: none; }
	html body #section-cruise-2 .cz-flip-wrap { display: block; margin: 0 0 1.75rem; }
	html body #section-cruise-2 table.cz-flip thead th { padding: 0 14px 12px; font-size: 12px; letter-spacing: .08em; }
	html body #section-cruise-2 table.cz-flip thead th.cz-flip-corner { width: 24% !important; }
	html body #section-cruise-2 table.cz-flip tbody th { padding: 14px 14px 14px 0; font-size: 14px; font-weight: 500; }
	html body #section-cruise-2 table.cz-flip td { padding: 14px; font-size: 15px; }
	html body #section-cruise-2 table.cz-flip td.cz-soldout,
	html body #section-cruise-2 table.cz-flip td.cz-note { font-size: 14px; }
	html body #section-cruise-2 table.cz-flip tbody tr:hover > * { background: #F7F8F4; }
	html body #section-cruise-2 .cz-unit { font-size: 13px; }
	html body #section-cruise-2 table.cz-flip .cz-s { display: none; }
	html body #section-cruise-2 table.cz-flip .cz-l { display: inline; }
	html body #section-cruise-2 table.cz-flip tbody th { white-space: normal; }
}
/* v1.2.0 — 1 or 2 fare columns leave room: phones show the full Romanian names too (Cabină cu vedere la mare) */
@media (max-width: 767.98px) {
	html body #section-cruise-2 table.cz-flip.cz-flip--1 .cz-s,
	html body #section-cruise-2 table.cz-flip.cz-flip--2 .cz-s { display: none; }
	html body #section-cruise-2 table.cz-flip.cz-flip--1 .cz-l,
	html body #section-cruise-2 table.cz-flip.cz-flip--2 .cz-l { display: inline; }
}
