/* Avatar Demo public presentation. Existing controls and route contracts retained. */
:root { --avatar-ink:#183b4b; --avatar-accent:#245c70; --avatar-paper:#f5f5ef; --avatar-line:#d9e3e5; }

/* A route desk beside an editorial introduction. */
.home-page main .homepage {
  display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
  gap:0 64px;align-items:center;max-width:1280px;min-height:0;
  margin:24px auto 0;padding:54px 48px 64px;border-radius:28px;
  background:radial-gradient(ellipse at 8% 95%,#dce9e1 0,transparent 46%),#f5f5ef;
  color:var(--avatar-ink);isolation:isolate;
}

/* Itinerary catalogue and detail use the same paper, ink and route desk. */
.tours-page,.tour-detail-page {background:#fcfcf9;color:var(--avatar-ink);}
.tours-page main>.tour-catalog-hero {order:0;width:min(calc(100% - 48px),1160px);height:auto;min-height:0;margin:0 auto 40px;padding:48px;border:1px solid #e0e6e1;border-radius:24px;background:#f5f5ef;display:block;text-align:left;}
.tours-page main>.crumbs {order:-1;width:min(calc(100% - 48px),1160px);margin:26px auto 22px;}
.tours-page .tour-catalog-hero h1 {color:var(--avatar-ink);margin:0;font-size:44px;line-height:1.15;letter-spacing:-.035em;}
.tours-page .tour-catalog-hero h1 span {font-size:inherit;line-height:inherit;display:inline;}
.tours-page main>.tour-catalog {width:min(calc(100% - 48px),1160px);}
.tours-page .catalog-toolbar {gap:24px;margin-bottom:24px;}
.tours-page .catalog-toolbar h2 {font-size:25px;font-weight:650;}
.tours-page .city-filter>summary {border:1px solid #cad8dd;border-radius:10px;background:white;min-height:44px;}
.tours-page .city-filter .filter {border-radius:12px;border-color:#cad8dd;box-shadow:0 12px 28px #183b4b14;}
.tours-page .cards {gap:24px;}
.tours-page .tour-card {border:1px solid var(--avatar-line);border-radius:18px;box-shadow:none;background:#fff;}
.tours-page .tour-card>.tour-card-link {height:100%;display:flex;flex-direction:column;border-radius:18px;overflow:hidden;}
.tours-page .tour-card-link>.catalog-picture {width:auto;height:auto;aspect-ratio:1.75;margin:12px 12px 0;border-radius:10px;overflow:hidden;flex-shrink:0;}
.tours-page .tour-card-link>.catalog-picture:after {display:none;}
.tours-page .tour-card-link>h3 {color:var(--avatar-ink);font-size:20px;line-height:1.4;margin:20px 22px 10px;padding:0;align-self:auto;}
.tours-page .tour-card-link>p {height:auto;overflow:visible;color:#526b77;font-size:14px;line-height:1.7;font-weight:400;margin:0 22px 24px;padding:0;}
.tours-page .tour-card-link>.card-origin {margin:auto 22px 0;padding:16px 0 20px;border-top:1px solid #e3eaea;color:var(--avatar-accent);font-size:12px;}
.tour-detail-page main {display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 32px;max-width:1160px;margin:0 auto;padding:0 24px;}
.tour-detail-page main>* {grid-column:1/-1;width:100%;max-width:none;min-width:0;}
.tour-detail-page main>.crumbs {grid-row:1;order:0;margin:26px 0;}
.tour-detail-page main>.page-intro {grid-column:1/7;grid-row:2;align-self:center;text-align:left;margin:0;padding:32px 0;}
.tour-detail-page .page-intro h1 {font-size:clamp(28px,3.2vw,42px);line-height:1.15;letter-spacing:-.035em;color:var(--avatar-ink);}
.tour-detail-page .page-intro p {max-width:none;margin:22px 0 0;line-height:1.75;color:#526b77;}
.tour-detail-page main>.picture-banner {grid-column:7/-1;grid-row:2;order:0;width:100%;max-width:none;aspect-ratio:1.45;height:auto;border-radius:20px;margin:0;background:#f5f5ef;overflow:hidden;}
.tour-detail-page main>.tour-back {grid-row:3;margin:28px 0 32px;}
.tour-detail-page main>.tour-story {max-width:800px;margin:0 auto 28px;padding:8px 0 8px 26px;border-left:3px solid #c8dcd8;}
.tour-detail-page .tour-story h2 {font-size:23px;margin:0 0 12px;color:var(--avatar-ink);}
.tour-detail-page .tour-story p {font-size:16px;line-height:1.8;color:#526b77;margin:0;}
.tour-detail-page main>.tour-booking-section {margin:14px 0 60px;}
.tour-detail-page .tour-booking-layout>.transfer-search-v20 {border:1px solid var(--avatar-line);border-radius:20px;background:#f5f5ef;}
.tour-detail-page .tour-booking-layout .transfer-search-v20>form {padding:24px 30px 28px;}
.tour-detail-page .tour-booking-layout .transfer-search-v20>.service-country-picker {padding:26px 30px 0;}
.tour-detail-page .tour-booking-layout .transfer-metrics {border-radius:0 0 19px 19px;background:#e7efed;color:#274f59;border-top:1px solid #d9e3df;}
.tour-detail-page .tour-booking-layout .location-picker>input {border:1px solid #cad8dd;border-radius:10px;}
.tour-detail-page .tour-booking-layout .transfer-add-stop {border-radius:10px;border-color:#bdced3;background:white;color:var(--avatar-accent);}
.tour-detail-page .tour-booking-layout .trip-date-trigger {border-radius:10px;border:1px solid #cad8dd;background:#fff;color:var(--avatar-ink);}

/* Separate day tabs remain scrollable; each itinerary is a single quiet card. */
body:has(.multi-day-planner),body:has(.checkout-journey) {background:#fcfcf9;}
.multi-day-planner {margin:24px 0 40px;}
.multi-day-planner .multi-tabs {gap:10px;margin:0 0 16px;padding:3px 3px 8px;}
.multi-day-planner .multi-tab-wrap {border:1px solid #d9e3e5;border-radius:12px;min-width:114px;background:#fff;}
.multi-day-planner .multi-tab-wrap.selected {border-color:var(--avatar-accent);background:#e8f0ef;}
.multi-day-planner .multi-tab-wrap>button[role=tab] {min-height:54px;color:#45636f;padding:16px 34px 16px 18px;}
.multi-day-planner .multi-tab-wrap.selected>button[role=tab] {color:var(--avatar-ink);}
.multi-day-planner .multi-tab-remove {width:24px;height:28px;top:12px;right:5px;color:#526b77;}
.multi-day-planner .multi-add-day {border-radius:12px;border:1px dashed #aec4cb;background:#f5f5ef;color:var(--avatar-accent);padding:14px 20px;}
.multi-day-planner>[role=tabpanel] {border:1px solid var(--avatar-line);border-radius:20px;background:#f5f5ef;}
.multi-day-planner .transfer-search-v20 {background:transparent;}
.multi-day-planner .transfer-search-v20>.service-country-picker {padding:28px 30px 0;}
.multi-day-planner .transfer-search-v20>form {padding:24px 30px 30px;}
.multi-day-planner .location-picker>input {border:1px solid #cad8dd;border-radius:10px;height:56px;}
.multi-day-planner .location-picker>input:disabled {background:#edf1f0;}
.multi-day-planner .transfer-add-stop {border-radius:10px;background:white;border:1px dashed #b1c6cc;color:var(--avatar-accent);font-size:15px;}
.multi-day-planner .transfer-search-v20 .trip-date-trigger {border:1px solid #cad8dd;border-radius:10px;background:#fff;color:var(--avatar-ink);}
.multi-day-planner .transfer-metrics {border-radius:0 0 19px 19px;background:#e7efed;color:#274f59;border-top:1px solid #d9e3df;}
.multi-day-planner .multi-day-heading {padding:24px 30px 0;}
.multi-day-planner .multi-trip-controls>.primary {border-radius:10px;background:var(--avatar-accent);}
.multi-day-planner>.search-preferences {border-radius:12px;}
.multi-day-planner .multi-date-dialog {border-radius:18px;}

/* Checkout keeps the existing validation and summary, with explicit field labels. */
.journey-heading.checkout-title-row {max-width:1120px;margin:28px auto 24px;padding-bottom:22px;border-bottom:1px solid #d9e3e5;}
.journey-heading.checkout-title-row h1 {color:var(--avatar-ink);font-size:30px;letter-spacing:-.025em;}
.journey-heading.checkout-title-row .secondary {border-radius:10px;border-color:#cad8dd;background:white;color:var(--avatar-accent);}
.journey-heading.checkout-title-row.single-day-checkout-title {height:auto;min-height:0;display:flex;flex-wrap:wrap;gap:16px;}
.journey-heading.checkout-title-row.single-day-checkout-title h1 {position:static;width:auto;height:auto;clip-path:none;overflow:visible;white-space:normal;margin:0;}
.journey-heading.checkout-title-row.single-day-checkout-title .secondary {font-size:13px!important;line-height:1.4;padding:12px 16px!important;border:1px solid #cad8dd;border-radius:10px;background:white;}
.journey-heading.checkout-title-row.single-day-checkout-title .secondary:before {display:none;}
.checkout-journey.journey-layout.compact-checkout {max-width:1120px;grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);gap:28px;align-items:start;}
.checkout-journey.journey-layout .booking-form {grid-column:1;grid-row:1;order:0;padding:30px;background:#fff;border:1px solid var(--avatar-line);border-radius:20px;box-shadow:none;}
.checkout-journey.compact-checkout .booking-form h2 {font-size:23px;line-height:1.4;margin:0 0 26px;color:var(--avatar-ink);}
.checkout-journey.compact-checkout .checkout-field-caption,.checkout-journey.compact-checkout .checkout-phone-field>.checkout-clock-label,.checkout-journey.compact-checkout .checkout-clock-field>.checkout-clock-label {position:static;width:auto;height:auto;padding:0;margin:0 0 8px;overflow:visible;clip-path:none;white-space:normal;font-size:12px;font-weight:650;color:#46616e;line-height:1.5;}
.checkout-journey.compact-checkout .booking-form .contact-grid {gap:22px 18px;}
.checkout-journey.compact-checkout .booking-form label>input:not([type=radio]),.checkout-journey.compact-checkout .booking-form textarea {border-color:#cad8dd;border-radius:10px;padding:14px;font-size:16px;}
.checkout-journey.compact-checkout .booking-form label>input:not([type=radio]) {height:54px;min-height:54px;}
.checkout-journey.compact-checkout .booking-form .checkout-phone-control {height:54px;border-color:#cad8dd;border-radius:10px;}
.checkout-journey.compact-checkout .booking-form .checkout-phone-control>input {height:52px;min-height:52px;}
.checkout-journey.compact-checkout .booking-form .field-row {gap:18px;margin-top:22px;}
.checkout-journey .booking-form button.checkout-time-trigger {height:54px;border-color:#cad8dd;border-radius:10px;padding:0 14px;}
.checkout-journey.compact-checkout .checkout-note-field {margin-top:22px;}
.checkout-journey.compact-checkout .checkout-payment-title {margin:30px 0 12px;font-size:18px;color:var(--avatar-ink);}
.checkout-journey.compact-checkout .booking-form .cash-choice {padding:16px;border:1px solid #a8c3c9;border-radius:12px;background:#edf4f3;font-size:14px;color:#24515e;}
.checkout-journey.compact-checkout .booking-form .primary {height:auto;min-height:52px;border-radius:10px;padding:14px 20px;background:var(--avatar-accent);font-size:18px;}
.checkout-journey.compact-checkout .booking-form :is(label>input:not([type=radio]),textarea,button)[aria-invalid=true],.checkout-journey.compact-checkout .booking-form .phone-invalid {border-color:#b54242;}
.checkout-journey.journey-layout.compact-checkout .checkout-summary {grid-column:2;grid-row:1;order:0;position:sticky;top:24px;padding:26px;border:1px solid #d9e3df;border-radius:20px;background:#f5f5ef;}
.checkout-journey .checkout-summary.compact-summary>h2 {font-size:23px;line-height:1.4;border:0;padding:0;margin:0 0 22px;color:var(--avatar-ink);}
.checkout-journey .checkout-summary.compact-summary :is(.checkout-itinerary-card,.checkout-cost-card) {border-radius:12px;border-color:#dce5e3;}
.checkout-journey .checkout-summary.compact-summary .checkout-route-heading {padding:20px;}
.checkout-journey .checkout-summary.compact-summary .checkout-route-heading h3 {font-size:17px;line-height:1.5;color:var(--avatar-ink);}
.checkout-journey .checkout-summary-stops {padding:20px;}
.checkout-journey .checkout-summary.compact-summary .checkout-cost-card {margin-top:16px;}
.checkout-journey .checkout-summary.compact-summary .checkout-cost-card>div {padding:18px 20px;font-size:14px;flex-wrap:wrap;}
.checkout-journey .checkout-summary.compact-summary .checkout-cost-card .checkout-total>strong {font-size:24px;color:var(--avatar-ink);}
.checkout-journey .checkout-multi-days {padding:20px;}
.checkout-terms-dialog {border-radius:18px;color:var(--avatar-ink);}
#app .booking-confirmation-ticket {border:1px solid #d9e3df;border-left:6px solid #245c70;border-top-width:1px;background:#f5f5ef;box-shadow:none;color:var(--avatar-ink);}

@media(max-width:980px) {
 .checkout-journey.journey-layout.compact-checkout {grid-template-columns:minmax(0,1fr);gap:24px;}
 .checkout-journey.journey-layout.compact-checkout .checkout-summary {grid-column:1;grid-row:1;position:static;}
 .checkout-journey.journey-layout .booking-form {grid-column:1;grid-row:2;}
 .journey-heading.checkout-title-row.single-day-checkout-title {height:auto;min-height:0;display:flex;flex-wrap:wrap;gap:16px;padding-bottom:20px;margin:24px 0;}
 .journey-heading.checkout-title-row.single-day-checkout-title h1 {position:static;width:auto;height:auto;clip-path:none;overflow:visible;white-space:normal;margin:0;}
 .journey-heading.checkout-title-row.single-day-checkout-title .secondary {font-size:13px!important;line-height:1.4;padding:12px 16px!important;border:1px solid #cad8dd;border-radius:10px;background:white;}
 .journey-heading.checkout-title-row.single-day-checkout-title .secondary:before {display:none;}
}
@media(max-width:760px) {
 .tours-page main>.tour-catalog-hero {width:calc(100% - 32px);padding:30px 24px;margin-bottom:30px;border-radius:18px;}
 .tours-page .tour-catalog-hero h1 {font-size:32px;}
 .tours-page main>.crumbs,.tours-page main>.tour-catalog {width:calc(100% - 32px);}
 .tours-page .catalog-toolbar {align-items:flex-start;gap:18px;}
 .tours-page .catalog-toolbar h2 {font-size:23px;}
 .tours-page .catalog-filter {align-self:flex-start;}
 .tours-page .cards {margin:0 0 40px;gap:20px;}
 .tours-page .tour-card-link>h3 {font-size:20px;}
 .tour-detail-page main {display:flex;padding:0 16px;gap:0;}
 .tour-detail-page main>* {width:100%;}
 .tour-detail-page main>.crumbs {order:-3;margin:22px 0;}
 .tour-detail-page main>.page-intro {order:-2;padding:8px 0 26px;margin:0;}
 .tour-detail-page .page-intro h1 {font-size:30px;}
 .tour-detail-page .page-intro p {font-size:15px;margin-top:16px;}
 .tour-detail-page main>.picture-banner {order:-1;width:100%;aspect-ratio:1.5;border-radius:16px;margin:0;}
 .tour-detail-page main>.tour-back {margin:22px 0 28px;}
 .tour-detail-page main>.tour-story {padding-left:20px;margin-bottom:24px;}
 .tour-detail-page .tour-story h2 {font-size:21px;}
 .tour-detail-page .tour-story p {font-size:15px;}
 .tour-detail-page .tour-booking-layout .transfer-search-v20>form {padding:20px 16px;}
 .tour-detail-page .tour-booking-layout .transfer-search-v20>.service-country-picker {padding:22px 16px 0;}
 .multi-day-planner:has(.transfer-search--planner) {width:100%;margin:20px 0 32px;}
 .multi-day-planner .multi-tab-wrap {min-width:100px;}
 .multi-day-planner .multi-tab-wrap>button[role=tab] {font-size:13px;padding:14px 30px 14px 14px;}
 .multi-day-planner .multi-add-day {font-size:13px;padding:12px 16px;}
 .multi-day-planner>[role=tabpanel] {border-radius:16px;}
 .multi-day-planner .transfer-search-v20>.service-country-picker {padding:22px 16px 0;}
 .multi-day-planner .transfer-search-v20>form {padding:20px 16px 24px;}
 .multi-day-planner .transfer-search-v20 .transfer-add-stop {font-size:14px;height:auto;min-height:48px;}
 .multi-day-planner .transfer-search-v20 .route-remove-endpoint {height:50px;width:40px;margin-left:0;}
 .multi-day-planner .route-point.route-point--removable {grid-template-columns:12px 16px minmax(0,1fr) 40px;}
 .journey-heading.checkout-title-row h1 {font-size:26px;}
 .checkout-journey.journey-layout .booking-form {padding:24px 20px;border-radius:16px;}
 .checkout-journey.journey-layout.compact-checkout .checkout-summary {padding:22px 18px;border-radius:16px;}
 .checkout-journey.compact-checkout .booking-form .contact-grid {gap:20px;}
 .checkout-journey.compact-checkout .booking-form .field-row {gap:20px;}
 .checkout-journey .checkout-summary.compact-summary>h2,.checkout-journey.compact-checkout .booking-form h2 {font-size:21px;}
}
.home-page main .homepage>.intro {grid-column:1;grid-row:1/3;text-align:left;max-width:none;align-self:center;}
.home-page main .homepage .intro h1 {color:var(--avatar-ink);font-size:clamp(32px,3.5vw,52px);line-height:1.08;letter-spacing:-.04em;margin:0 0 26px;max-width:520px;text-align:left;}
.home-page main .homepage .intro p {color:#46616e;font-size:17px;line-height:1.7;margin:0;max-width:430px;text-align:left;}
.home-page main .homepage #home-text-search {grid-column:2;grid-row:1;min-width:0;max-width:none;margin:0;}
.home-page main .homepage .home-form {grid-column:2;grid-row:2;max-width:none;width:100%;margin:0;padding:28px;display:grid;grid-template-columns:minmax(0,1fr);gap:16px;background:#fff;border:1px solid var(--avatar-line);border-radius:20px;color:var(--avatar-ink);backdrop-filter:none;box-shadow:0 12px 34px #183b4b0a;}
.home-page main .homepage .home-form>.home-country {grid-column:1;margin:0 0 4px;color:var(--avatar-ink);padding-bottom:18px;border-bottom:1px solid #e6ecec;}
.home-page main .homepage .home-fields {grid-column:1;gap:16px;}
.home-page main .homepage .home-form label,.home-page main .homepage .home-fields>label {color:var(--avatar-ink);font-size:13px;gap:7px;}
.home-page main .homepage .home-form :is(input,select) {border:1px solid #cad8dd;border-radius:10px;background:#fff;color:var(--avatar-ink);min-height:50px;}
.home-page main .homepage .home-form :is(input,select):disabled {background:#f1f4f4;color:#667b85;}
.home-page main .homepage .home-form .home-swap {top:29px;border-radius:8px;background:#edf4f5;color:var(--avatar-accent);}
.home-page main .homepage .home-form details {grid-column:1;border:1px dashed #bdced3;border-radius:10px;background:#f8faf9;padding:12px;}
.home-page main .homepage .home-form summary {color:var(--avatar-accent);text-align:left;font-size:14px;}
.home-page main .homepage .home-form .home-wait-included {color:#46616e;}
.home-page main .homepage .home-date-row {grid-column:1;}
.home-page main .homepage .trip-date-trigger {border-radius:10px;border:1px solid #cad8dd;min-height:50px;width:100%;color:var(--avatar-ink);background:#fff;}
.home-page main .homepage .home-form>.cta {grid-column:1;width:100%;height:auto;min-height:52px;border-radius:10px;background:var(--avatar-accent);border:1px solid var(--avatar-accent);font-size:15px;padding:15px 18px;}
.home-page main .homepage .home-form>.small {grid-column:1;color:#526b77;font-size:12px;}
.home-page main .homepage .home-form>a.small {color:var(--avatar-accent);justify-self:start;text-align:left;}
.home-page .home-sections>.home-benefits {max-width:none;min-height:0;margin:38px 0 64px;padding:24px;border:1px solid #e1e8e8;border-radius:18px;box-shadow:none;background:#fff;}
.home-page .home-benefits .home-benefit {align-items:flex-start;text-align:left;padding:12px 20px;border-right:1px solid #e1e8e8;}
.home-page .home-benefits .home-benefit:last-child {border-right:0;}
.home-page .home-benefits .home-icon {width:32px;height:32px;margin-bottom:14px;}
.home-page .home-benefits .home-icon svg {width:32px;height:32px;}
.home-page .home-benefits .home-benefit h3 {font-size:16px;font-weight:700;line-height:1.4;margin-bottom:8px;}
.home-page .home-benefits .home-benefit p {font-size:13px;line-height:1.6;color:#526b77;}
.home-page .home-section-title,.home-page .home-section-intro {text-align:left;margin-left:0;}
.home-page .home-callout {background:#183b4b;border-radius:24px;}

/* Horizontal comparison rows, with a distinct fare column. */
.transfer-results-v20 .offer-grid {display:grid;grid-template-columns:minmax(0,1fr);gap:20px;}
.transfer-results-v20 .offer-grid .offer-card {display:grid;grid-template-columns:minmax(180px,.9fr) minmax(0,1.5fr) minmax(195px,.8fr);gap:0;border:1px solid #d9e3e5;border-radius:18px;overflow:visible;background:#fff;box-shadow:none;}
.transfer-results-v20 .offer-grid .offer-photo {grid-column:1;grid-row:1;min-width:0;padding:14px;display:flex;align-items:center;background:#f5f5ef;border-radius:18px 0 0 18px;}
.transfer-results-v20 .offer-grid .offer-photo .vehicle-gallery.compact {width:100%;padding-bottom:22px;}
.transfer-results-v20 .offer-grid .offer-photo .gallery-main {border-radius:10px;overflow:hidden;}
.transfer-results-v20 .offer-grid .offer-photo .gallery-main img {height:auto;aspect-ratio:1.4;object-fit:cover;}
.transfer-results-v20 .offer-grid .offer-photo .favorite-card {top:22px;right:22px;border-radius:9px;width:34px;height:34px;border:1px solid #d9e3e5;}
.transfer-results-v20 .offer-grid .offer-info {grid-column:2;grid-row:1;padding:24px 20px;}
.transfer-results-v20 .offer-grid .offer-driver {gap:12px;align-items:flex-start;flex-wrap:wrap;}
.transfer-results-v20 .offer-grid .offer-driver>div {flex:1;min-width:110px;}
.transfer-results-v20 .offer-grid .offer-driver h3 {font-size:17px;line-height:1.4;}
.transfer-results-v20 .offer-grid .offer-driver p {font-size:12px;line-height:1.6;margin-top:5px;}
.transfer-results-v20 .offer-grid .offer-driver .avatar {width:42px;height:42px;min-width:42px;border-radius:12px;}
.transfer-results-v20 .offer-grid .offer-driver .offer-rating {font-size:12px;max-width:none;width:100%;text-align:left;}
.transfer-results-v20 .offer-grid .offer-model {display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:18px 0 14px;}
.transfer-results-v20 .offer-grid .offer-model>strong {font-size:16px;}
.transfer-results-v20 .offer-grid .offer-model .body-chip {margin:0;font-size:12px;border-radius:6px;}
.transfer-results-v20 .offer-grid .offer-price {grid-column:3;grid-row:1;display:flex;flex-direction:column;justify-content:center;align-items:stretch;gap:10px;margin:0;padding:24px 20px;background:#edf4f5;border-left:1px solid #d9e3e5;border-top:0;border-radius:0 18px 18px 0;min-width:0;}
.transfer-results-v20 .offer-grid .offer-price>strong {font-size:23px;color:var(--avatar-ink);line-height:1.3;overflow-wrap:anywhere;}
.transfer-results-v20 .offer-grid .offer-price>small {text-align:left;font-size:12px;}
.transfer-results-v20 .offer-grid .offer-price>.primary {width:100%;min-width:0;min-height:46px;border-radius:10px;background:var(--avatar-accent);color:#fff;text-align:center;align-content:center;font-size:14px;margin-top:10px;}
.transfer-results-v20 .offer-grid .offer-price .fare-information {font-size:12px;}

/* Gallery and booking desk share a two-column profile; no viewport-wide fare bar. */
.journey-layout.profile-journey {max-width:1160px;}
.profile-journey .profile-page {display:grid;grid-template-columns:minmax(0,1.3fr) minmax(320px,1fr);gap:32px;align-items:start;}
.profile-journey .profile-page>.vehicle-gallery:not(.compact) {grid-column:1;grid-row:1;display:grid;grid-template-columns:minmax(0,1fr);margin:0;padding:16px;background:#f5f5ef;border-radius:20px;border:1px solid #e0e6e4;}
.profile-journey .profile-page .gallery-main {border-radius:12px;}
.profile-journey .profile-page .gallery-main img {aspect-ratio:1.2;object-fit:contain;background:#f5f5ef;}
.profile-journey .profile-page .gallery-thumbs {display:flex;flex-direction:row;gap:10px;overflow:auto;}
.profile-journey .profile-page .gallery-thumbs button {width:88px;min-width:88px;border-radius:8px;}
.profile-journey .profile-page>.profile-summary-grid {grid-column:2;grid-row:1;display:flex;flex-direction:column;gap:18px;min-width:0;}
.profile-journey .profile-summary-grid .profile-overview {padding:24px;border:1px solid #d9e3e5;border-radius:18px;box-shadow:none;background:white;}
.profile-journey .profile-overview .profile-avatar {width:64px;height:64px;border-radius:16px;}
.profile-journey .profile-overview .profile-hero {flex-wrap:wrap;gap:14px;}
.profile-journey .profile-overview .profile-hero h2 {font-size:22px;line-height:1.3;}
.profile-journey .profile-overview .profile-hero .offer-rating {width:100%;text-align:left;margin:0;}
.profile-journey .profile-overview>p {font-size:14px;line-height:1.65;margin:20px 0;}
.profile-journey .profile-overview .profile-vehicle {border-top:1px solid #e1e8e8;padding-top:18px;}
.profile-journey .profile-overview .profile-vehicle h3 {font-size:17px;line-height:1.6;margin-bottom:14px;}
.profile-journey .profile-booking-anchor {min-height:0;width:100%;}
.profile-journey .profile-page .profile-summary-grid .order-summary.profile-booking-bar {position:static;inset:auto;max-width:none;width:100%;height:auto;margin:0!important;padding:24px;border-radius:18px;background:#edf4f5;border:1px solid #d9e3e5;box-shadow:none;display:flex;flex-direction:column;align-items:stretch;gap:14px;z-index:auto;}
.profile-journey .profile-page .profile-booking-bar .profile-booking-price {display:flex;flex-direction:column;gap:4px;align-items:flex-start;text-align:left;order:0;}
.profile-journey .profile-page .profile-summary-grid .profile-booking-price>strong {font-size:28px;color:var(--avatar-ink);letter-spacing:-.02em;}
.profile-journey .profile-page .profile-booking-price>small:first-child {display:block;}
.profile-journey .profile-page .profile-booking-bar .profile-booking-date {order:1;width:100%;}
.profile-journey .profile-page .profile-booking-bar .profile-booking-date>.trip-date {width:100%;}
.profile-journey .profile-page .profile-booking-bar :is(.trip-date-trigger,.trip-calendar-date) {width:100%;border-radius:10px;}
.profile-journey .profile-page .profile-booking-bar>.primary,.profile-journey .profile-page .profile-booking-bar>p {order:2;width:100%;max-width:none;min-width:0;margin:0;}
.profile-journey .profile-page .profile-booking-bar>.primary {background:var(--avatar-accent);min-height:48px;border-radius:10px;text-align:center;}
.profile-journey .profile-page>.profile-reviews {grid-column:1/-1;margin-top:16px;padding:30px;border:1px solid #d9e3e5;border-radius:20px;background:white;}
.profile-journey .profile-page .review-grid {gap:18px;}
.profile-journey .profile-page .passenger-review {border:0;border-left:3px solid #aec7ce;border-radius:0;background:#f7f9f8;box-shadow:none;}
#app:has(.profile-journey) .site-footer {padding-bottom:40px;}

/* Partner editorial page, with a vertical programme outline and separate application desk. */
.affiliate-public {--green:#245c70;background:#fcfcf9;color:#183b4b;}
.affiliate-public .cta {border-radius:10px;min-height:48px;padding:16px 26px;}
.affiliate-public header {max-width:1240px;min-height:96px;}
.affiliate-public .hero {background:#f5f5ef;color:#183b4b;border-top:1px solid #e2e8e5;border-bottom:1px solid #e2e8e5;}
.affiliate-public .hero .wrap {min-height:0;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.8fr);gap:24px 80px;padding:72px 0;align-items:center;}
.affiliate-public .hero h1 {grid-column:1;font-size:clamp(34px,4vw,58px);line-height:1.08;letter-spacing:-.04em;margin:0;max-width:680px;}
.affiliate-public .hero>div>p {grid-column:1;font-size:20px;color:#526b77;margin:0;}
.affiliate-public .hero .cta {grid-column:1;justify-self:start;min-width:0;margin:0;}
.affiliate-public .hero .trust {grid-column:2;grid-row:1/4;display:flex;flex-direction:column;gap:0;margin:0;padding:12px 28px;background:#fff;border:1px solid #d9e3e5;border-radius:18px;}
.affiliate-public .trust>div {padding:22px 0;border-bottom:1px solid #e4ebeb;}
.affiliate-public .trust>div:last-child {border-bottom:0;}
.affiliate-public .trust span {color:#245c70;}
.affiliate-public .trust p {font-size:14px;line-height:1.6;color:#526b77;margin:8px 0 0;}
.affiliate-public .intro {max-width:1160px;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start;text-align:left;}
.affiliate-public .intro h2 {font-size:34px;margin:0;}
.affiliate-public .intro p {margin:0;font-size:20px;line-height:1.7;}
.affiliate-public .audiences {grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px;border-top:1px solid #d9e3e5;}
.affiliate-public .audiences article {padding:22px 8px;background:transparent;min-height:0;border-radius:0;border-bottom:1px solid #d9e3e5;display:flex;align-items:center;gap:20px;}
.affiliate-public .audiences h3 {font-size:19px;margin:0;}
.affiliate-public .audiences span {font-size:22px;background:#edf4f5;border-radius:10px;width:42px;height:42px;display:grid;place-items:center;flex-shrink:0;}
.affiliate-public .how {background:#edf4f5;}
.affiliate-public .how>.wrap {display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:60px;}
.affiliate-public .steps {display:grid;grid-template-columns:minmax(0,1fr);gap:0;}
.affiliate-public .steps article {display:grid;grid-template-columns:46px minmax(0,1fr);gap:8px 20px;padding:24px 0;border-bottom:1px solid #cfdfe3;}
.affiliate-public .steps article:first-child {padding-top:0;}
.affiliate-public .steps .step {grid-row:1/3;width:46px;height:46px;border-radius:12px;font-size:22px;}
.affiliate-public .steps h3 {font-size:22px;margin:0;}
.affiliate-public .steps p {grid-column:2;margin:0;}
.affiliate-public .callout {max-width:1160px;margin:60px auto 0;padding:42px;border-radius:22px;background:#183b4b;color:white;display:flex;align-items:center;justify-content:space-between;gap:32px;text-align:left;}
.affiliate-public .callout h2 {margin:0;font-size:30px;max-width:650px;}
.affiliate-public .callout .cta {background:#f0dca2;color:#183b4b;flex-shrink:0;}
.affiliate-public .examples {text-align:left;}
.affiliate-public .sample {margin:0;max-width:none;padding:32px;border-radius:18px;background:#f5f5ef;font-size:25px;text-align:center;border:1px solid #e0e5e1;}
.affiliate-public .example p {max-width:none;margin-top:20px;font-size:17px;}
.affiliate-public .carousel-controls {justify-content:flex-start;}
.affiliate-public .numbers {text-align:left;border-top:1px solid #d9e3e5;border-bottom:1px solid #d9e3e5;}
.affiliate-public .numbers strong {font-size:24px;}
.affiliate-public .faq {max-width:1160px;}
.affiliate-public .faq details {background:#fff;border:1px solid #d9e3e5;border-radius:12px;padding:20px 24px;margin:12px 0;}
.affiliate-public footer#reg {background:#f5f5ef;border-top:1px solid #e0e5e1;}
.affiliate-public .footer-grid {grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:60px;}
.affiliate-public .footer-grid>div:last-child {padding:32px;background:#fff;border:1px solid #d9e3e5;border-radius:18px;}
.affiliate-public form input,.affiliate-public form textarea,.affiliate-public .affiliate-phone-control {border-radius:9px;border-color:#bdcfd5;}
.affiliate-public .affiliate-phone-control input {border-radius:0 9px 9px 0;}
.affiliate-public .phone-country {border-radius:9px 0 0 9px;}
.affiliate-public dialog {border-radius:18px;background:white;}

@media(max-width:1000px) {
  .home-page main .homepage {gap:24px;padding:36px 28px;margin:16px 20px 0;}
  .home-page main .homepage .home-form {padding:22px;}
  .transfer-results-v20 .offer-grid .offer-card {grid-template-columns:minmax(150px,.8fr) minmax(0,1.3fr) minmax(170px,.8fr);}
  .transfer-results-v20 .offer-grid .offer-info,.transfer-results-v20 .offer-grid .offer-price {padding:20px 16px;}
  .profile-journey .profile-page {gap:22px;grid-template-columns:minmax(0,1.1fr) minmax(300px,1fr);}
  .affiliate-public .hero .wrap {gap:24px 36px;}
  .affiliate-public .intro,.affiliate-public .how>.wrap,.affiliate-public .footer-grid {gap:36px;}
  .affiliate-public .callout {margin-left:20px;margin-right:20px;}
}
@media(max-width:760px) {
  .home-page main .homepage {grid-template-columns:minmax(0,1fr);gap:18px;margin:12px 12px 0;padding:28px 18px;border-radius:20px;}
  .home-page main .homepage>.intro {grid-column:1;grid-row:1;}
  .home-page main .homepage .intro h1 {font-size:32px;margin:0 0 16px;max-width:none;}
  .home-page main .homepage .intro p {font-size:14px;line-height:1.6;max-width:none;margin:0;}
  .home-page main .homepage #home-text-search {grid-column:1;grid-row:2;}
  .home-page main .homepage .home-form {grid-column:1;grid-row:3;padding:20px 16px;gap:14px;border-radius:14px;}
  .home-page main .homepage .home-form :is(input,select) {font-size:16px;}
  .home-page .home-sections>.home-benefits {margin:24px 0 38px;padding:12px;border-radius:14px;}
  .home-page .home-benefits .home-benefit-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 8px;}
  .home-page .home-benefits .home-benefit {padding:8px;border:0;}
  .home-page .home-benefits .home-benefit h3 {font-size:14px;}
  .home-page .home-benefits .home-benefit p {font-size:12px;}
  .transfer-results-v20 .offer-grid .offer-card {grid-template-columns:minmax(0,1fr);border-radius:16px;}
  .transfer-results-v20 .offer-grid .offer-info {grid-column:1;grid-row:1;padding:20px;}
  .transfer-results-v20 .offer-grid .offer-photo {grid-column:1;grid-row:2;border-radius:0;padding:14px 20px;}
  .transfer-results-v20 .offer-grid .offer-photo .gallery-main img {aspect-ratio:1.95;}
  .transfer-results-v20 .offer-grid .offer-driver>div {min-width:130px;}
  .transfer-results-v20 .offer-grid .offer-price {grid-column:1;grid-row:3;display:grid;grid-template-columns:minmax(0,1fr) minmax(130px,.8fr);gap:6px 14px;border-left:0;border-top:1px solid #d9e3e5;border-radius:0 0 16px 16px;padding:20px;}
  .transfer-results-v20 .offer-grid .offer-price>strong {grid-column:1;grid-row:2;font-size:23px;}
  .transfer-results-v20 .offer-grid .offer-price>small {grid-column:1;grid-row:3;}
  .transfer-results-v20 .offer-grid .offer-price>.primary {grid-column:2;grid-row:2/4;margin:0;align-self:center;font-size:13px;padding:12px 9px;}
  .transfer-results-v20 .offer-grid .offer-price>:not(strong):not(small):not(.primary) {grid-column:1/-1;grid-row:1;}
  .profile-journey .profile-page {grid-template-columns:minmax(0,1fr);gap:22px;}
  .journey-heading.profile-title-row {display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;}
  .profile-title-row>a {grid-column:1/-1;justify-self:start;}
  .profile-title-row h1 {font-size:20px;margin:0;}
  .profile-title-row #profile-page-actions {margin:0;}
  .profile-journey .profile-page>.profile-summary-grid {grid-column:1;grid-row:1;}
  .profile-journey .profile-page>.vehicle-gallery:not(.compact) {grid-column:1;grid-row:2;}
  .profile-journey .profile-page>.profile-reviews {grid-column:1;grid-row:3;padding:20px 16px;}
  .profile-journey .profile-page .profile-summary-grid .order-summary.profile-booking-bar {padding:20px;}
  .profile-journey .profile-summary-grid .profile-overview {padding:20px;}
  .profile-journey .profile-page .gallery-main img {aspect-ratio:1.4;}
  .affiliate-public .hero .wrap {grid-template-columns:minmax(0,1fr);gap:22px;padding:38px 0;}
  .affiliate-public .hero h1 {font-size:36px;}
  .affiliate-public .hero>div>p {font-size:17px;}
  .affiliate-public .hero .trust {grid-column:1;grid-row:4;padding:6px 22px;}
  .affiliate-public .intro,.affiliate-public .how>.wrap,.affiliate-public .footer-grid {grid-template-columns:minmax(0,1fr);gap:28px;}
  .affiliate-public .intro h2 {font-size:29px;}
  .affiliate-public .intro p {font-size:18px;}
  .affiliate-public .audiences {grid-template-columns:minmax(0,1fr);}
  .affiliate-public .callout {padding:28px 24px;margin-top:34px;display:flex;flex-direction:column;align-items:flex-start;gap:22px;}
  .affiliate-public .callout h2 {font-size:27px;}
  .affiliate-public .sample {font-size:21px;padding:22px 16px;overflow-wrap:anywhere;}
  .affiliate-public .numbers {grid-template-columns:minmax(0,1fr);gap:16px;}
  .affiliate-public .footer-grid>div:last-child {padding:24px 18px;}
  .affiliate-public dialog {background:white;border-radius:16px;width:calc(100% - 24px);height:auto;max-height:calc(100dvh - 24px);inset:12px;margin:auto;padding:46px 22px 26px;}
  .affiliate-public dialog .close {color:#183b4b;top:8px;}
}
