/* Homepage lower sections. Load after the existing booklet styles and home-white.css. */
body.home-white .guide-fee-notes .note-item:last-child:nth-child(odd) { grid-column:1 / -1; }
body.home-white .mobile-container > :is(.hotel-section,.tickets-section,.dining-section,.transport-section,.price-section,.booking-section,.story-section,.cancellation-section,.guarantee-section) {
  --guide-body:17px;
  --guide-small:13px;
  --guide-title:34px;
  --guide-touch:44px;
  --mobile-body-font:17px;
  --mobile-card-font:17px;
  --mobile-date-font:13px;
  --guide-ink:#123f55;
  --guide-muted:#526c76;
  --guide-line:#e0ebef;
  box-sizing:border-box;
  display:block;
  width:100%;
  max-width:100%;
  height:auto!important;
  min-height:0!important;
  margin:0;
  padding:72px 0!important;
  overflow:visible!important;
  color:#526c76;
  background:#fff!important;
  border:0;
  border-top:1px solid #e0ebef;
  border-radius:0;
  box-shadow:none;
  font-size:17px;
  line-height:1.75;
}
body.home-white .mobile-container :is(.hotel-section,.tickets-section,.dining-section,.transport-section,.price-section,.booking-section,.story-section,.cancellation-section,.guarantee-section) .section-header {
  width:100%;
  margin:0 0 30px;
  text-align:left!important;
}
body.home-white .mobile-container :is(.hotel-section,.tickets-section,.dining-section,.transport-section,.price-section,.booking-section,.story-section,.cancellation-section,.guarantee-section) :is(.section-header h2,.section-title-large) {
  margin:0;
  color:#123f55;
  font-size:34px!important;
  font-weight:600;
  line-height:1.35!important;
  letter-spacing:0;
}
body.home-white .mobile-container :is(.hotel-section,.tickets-section,.dining-section,.transport-section,.price-section,.booking-section,.story-section,.cancellation-section,.guarantee-section) .section-subtitle {
  margin:10px 0 0;
  color:#526c76;
  font-size:13px!important;
  line-height:1.6!important;
  letter-spacing:.08em!important;
}
body.home-white .mobile-container :is(.hotel-section,.tickets-section,.dining-section,.transport-section,.price-section,.booking-section,.story-section,.cancellation-section,.guarantee-section) h3 {
  color:#123f55;
  font-size:20px!important;
  font-weight:600;
  line-height:1.5!important;
  letter-spacing:0;
}
body.home-white :is(.hotel-content-grid,.dining-content,.transport-content,.price-content,.booking-content,.story-content,.cancellation-content,.guarantee-cards) {
  flex-grow:0;
  min-width:0;
  height:auto;
  justify-content:flex-start!important;
  gap:28px!important;
}
body.home-white :is(.hotel-region-card,.meal-count-card,.dining-details-card,.special-meal,.transport-intro-card,.vehicle-card,.price-table-container,.price-notes-card,.process-steps,.payment-card,.policy-timeline,.special-policy-card,.service-card,.stat-box) {
  min-width:0;
  max-width:100%;
  height:auto;
  min-height:0;
  background:#fff;
  color:#526c76;
  border:1px solid #e0ebef;
  border-radius:10px;
  box-shadow:none;
}
body.home-white :is(.hotel-region-card,.vehicle-card):hover {
  transform:none;
  border-color:#cbdde3;
  box-shadow:none;
}
body.home-white .mobile-container :is(.special-meal p,.policy-text,.policy-text p,.policy-text li,.intro-text p,.note-text,.option-item,.payment-desc,.payment-desc p,.story-text p,.policy-detail,.policy-desc p,.policy-desc li,.card-desc,.complaint-features li) {
  color:#526c76;
  font-size:17px!important;
  font-weight:400;
  line-height:1.8!important;
  text-align:left;
  overflow-wrap:break-word;
}
body.home-white :is(.special-meal,.dining-policy,.transport-intro-card,.payment-card,.special-policy-card,.service-card) h3 {
  display:flex;
  align-items:center;
  gap:10px;
  margin:0 0 14px;
}
body.home-white :is(.special-meal,.dining-policy,.payment-header,.special-policy-card,.card-icon-title) h3 :is(i,.inline-svg-icon),
body.home-white :is(.payment-header,.option-item,.payment-methods-row,.policy-desc,.complaint-features) > :is(i,.inline-svg-icon) {
  flex:0 0 20px;
  width:20px;
  height:20px;
  margin:0;
  color:#407b89;
  font-size:20px!important;
}

/* Each overnight stay remains in itinerary order; property names remain buttons. */
body.home-white .guide-stay-timeline {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 32px;
  margin:0 0 32px;
  padding:0;
  background:#fff;
  border:0;
  border-radius:0;
  overflow:visible;
}
body.home-white .guide-stay-timeline > li {
  display:grid;
  grid-template-columns:58px minmax(0,1fr);
  align-items:baseline;
  gap:16px;
  padding:16px 0;
  border-bottom:1px solid #e0ebef;
}
body.home-white .guide-stay-timeline > li:last-child { border-bottom:1px solid #e0ebef; }
body.home-white .guide-stay-night { color:#407b89; font-size:13px; line-height:1.7; font-weight:500; }
body.home-white .guide-stay-body { color:#123f55; font-size:17px; line-height:1.7; }
body.home-white .guide-stay-body strong { font-weight:600; }
body.home-white .guide-stay-body :is(span,small,p) { margin-top:3px; color:#526c76; font-size:13px; line-height:1.7; }
body.home-white .hotel-content-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; gap:20px; }
body.home-white .hotel-region-card { padding:24px; gap:16px; }
body.home-white .region-header { --region-title-size:20px; --region-icon-size:22px; flex-wrap:wrap; gap:10px; }
body.home-white .region-header h3 { margin:0; font-weight:600; }
body.home-white .region-header :is(i,.svg-icon,.inline-svg-icon) { color:#407b89; }
body.home-white .mobile-container .hotel-category { margin-left:auto; color:#526c76; font-size:13px!important; font-weight:400; line-height:1.6!important; }
body.home-white .hotel-list { display:flex; flex-direction:column; flex-wrap:nowrap; gap:8px; margin:0; padding:0; }
body.home-white .hotel-list li { width:100%; flex:0 1 auto; }
body.home-white .hotel-link {
  display:flex;
  width:100%;
  min-height:44px!important;
  gap:10px;
  padding:10px 14px!important;
  color:#123f55;
  background:#fff;
  border:1px solid #e0ebef;
  border-radius:8px;
  box-shadow:none;
  transform:none;
}
body.home-white .mobile-container .hotel-link span { color:inherit; font-size:17px!important; line-height:1.6!important; font-weight:500; white-space:normal; overflow:visible; overflow-wrap:anywhere; }
body.home-white .hotel-link::after { content:'↗'; flex:0 0 auto; margin-left:auto; color:#407b89; font-size:16px; line-height:1; }
body.home-white .hotel-link:hover { background:#fff; border-color:#407b89; transform:none; }
body.home-white .hotel-link:focus-visible { outline:2px solid #407b89; outline-offset:3px; background:#fff; transform:none; }
body.home-white .mobile-container .hotel-footer-note { margin:22px 0 0; padding:0; border:0; background:#fff; text-align:left; color:#526c76; font-size:13px!important; line-height:1.8!important; }
body.home-white .hotel-footer-note :is(i,.inline-svg-icon) { width:16px; height:16px; margin-right:6px; color:#407b89; font-size:16px; }

/* Ticket inclusions retain their explicit status text. */
body.home-white .guide-ticket-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 32px; margin:0; padding:0; background:#fff; border:0; border-radius:0; overflow:visible; }
body.home-white .guide-ticket-item { grid-template-columns:24px minmax(0,1fr) auto; gap:12px; padding:20px 0; border-bottom:1px solid #e0ebef; }
body.home-white .guide-ticket-item:last-child { border-bottom:1px solid #e0ebef; }
body.home-white .guide-ticket-icon { min-height:26px; color:#407b89; font-size:22px; }
body.home-white .mobile-container .guide-ticket-body h3 { margin:0; font-size:17px!important; font-weight:600; }
body.home-white .mobile-container .guide-ticket-body p { margin:7px 0 0; color:#526c76; font-size:13px!important; line-height:1.8; }
body.home-white .guide-ticket-status,
body.home-white .guide-ticket-status[data-ticket-status] { margin:1px 0 0; padding:3px 7px; color:#407b89; background:#fff; border:1px solid #e0ebef; border-radius:6px; font-size:12px; line-height:1.5; font-weight:500; }

/* Meals and transport use compact facts above the detailed explanations. */
body.home-white .meal-count-card { padding:24px; justify-content:space-evenly; }
body.home-white .meal-item { flex:1; gap:10px; }
body.home-white .meal-icon { margin:0; color:#407b89; font-size:24px; }
body.home-white .meal-info { gap:8px; }
body.home-white .meal-num { color:#123f55; font-size:36px; font-weight:500; line-height:1.1; }
body.home-white .mobile-container .meal-label { color:#526c76; font-size:13px!important; line-height:1.5!important; opacity:1; }
body.home-white .meal-divider { flex:0 0 1px; width:1px; height:48px; background:#e0ebef; }
body.home-white .dining-details-card { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; gap:32px; padding:0; border:0; border-radius:0; flex-grow:0; }
body.home-white .special-meal { padding:0; border:0; border-radius:0; }
body.home-white .dining-details-card > .special-meal:only-child { grid-column:1 / -1; }
body.home-white .special-meal p { margin:0; }
body.home-white .policy-text ul { gap:12px; margin:0; padding-left:1.15em; list-style:disc; }
body.home-white .policy-text li { display:list-item; }
body.home-white .policy-text li strong { margin-right:4px; white-space:normal; font-weight:600; }
body.home-white .transport-intro-card { align-items:flex-start; gap:16px; margin:0; padding:24px; }
body.home-white .transport-intro-card .intro-icon { width:42px; height:42px; flex:0 0 42px; font-size:28px; color:#407b89; background:#fff; border-radius:0; }
body.home-white .transport-intro-card .intro-text { min-width:0; }
body.home-white .transport-intro-card .intro-text h3 { margin:0 0 8px; }
body.home-white .transport-intro-card .intro-text p { margin:0; }
body.home-white .vehicle-type-grid { grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:none; grid-auto-rows:auto; gap:20px; flex-grow:0; }
body.home-white .vehicle-card { align-items:flex-start; gap:16px; padding:24px; }
body.home-white .v-icon { width:34px; height:34px; flex:0 0 34px; color:#407b89; background:#fff; border-radius:0; font-size:26px; }
body.home-white .v-info { min-width:0; gap:5px; }
body.home-white .mobile-container .v-group { margin:0; color:#526c76; font-size:13px!important; font-weight:400; line-height:1.6!important; }
body.home-white .mobile-container .v-name { color:#123f55; font-size:17px!important; font-weight:600; line-height:1.6!important; }
body.home-white .mobile-container .v-sub { margin:0; color:#526c76; font-size:13px!important; line-height:1.7!important; }

body.home-white .price-content { flex:none; }
body.home-white .price-table-container { display:block; flex:none; overflow-x:auto; }
body.home-white .price-table { width:100%; min-width:0; table-layout:fixed; font-size:17px!important; }
body.home-white .price-table :is(thead,th,tbody tr,tbody tr:nth-child(even)) { color:#123f55; background:#fff; }
body.home-white .price-table :is(th,td) { padding:18px 20px; border-bottom:1px solid #e0ebef; text-align:left; font-size:17px!important; font-weight:400; line-height:1.7!important; letter-spacing:0; overflow-wrap:anywhere; }
body.home-white .price-table th { font-weight:600; }
body.home-white .mobile-container .price-sub { margin-left:3px; font-size:13px!important; color:#526c76; }
body.home-white .price-table :is(.price-col,.highlight-price) { color:#123f55; font-size:17px!important; font-weight:600; }
body.home-white .guide-price-note { margin:0; padding:0 0 20px; color:#526c76; background:#fff; border:0; border-bottom:1px solid #e0ebef; font-size:17px; line-height:1.8; }
body.home-white .price-notes-card.guide-fee-notes { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; padding:0; border:0; border-radius:0; }
body.home-white .guide-fee-notes .note-item { gap:12px; margin:0; padding:24px; background:#fff; border:1px solid #e0ebef; border-radius:10px; }
body.home-white .guide-fee-notes .note-item > :is(i,.inline-svg-icon) { flex:0 0 22px; width:22px; height:22px; margin-top:4px; color:#407b89; font-size:22px; background:#fff; border-radius:0; box-shadow:none; }
body.home-white .guide-fee-notes .note-text { min-width:0; padding:0; }
body.home-white .guide-fee-notes .note-text > strong { margin:0 0 12px; color:#123f55; font-size:17px; font-weight:600; }
body.home-white .guide-fee-notes .note-text :is(p,li,span) { font-size:inherit!important; line-height:1.8!important; }
body.home-white .guide-fee-notes .note-text :is(ul,ol) { margin:0; padding-left:1.1em; }
body.home-white .guide-fee-notes .note-text li { margin:0 0 .65em; }
body.home-white .special-notes-section .special-notes-list { display:block; }
body.home-white .special-notes-section .guide-fee-notes .note-item { padding:17px 0; gap:14px; border:0; border-bottom:1px solid #e0ebef; border-radius:0; }
body.home-white .special-notes-section .guide-fee-notes .note-item:first-child { padding-top:0; }
body.home-white .special-notes-section .guide-fee-notes .note-item:last-child { border-bottom:0; padding-bottom:0; }
body.home-white .special-notes-section .note-item > :is(i,.inline-svg-icon) { flex-basis:18px; width:18px; height:18px; margin-top:6px; font-size:18px; }
body.home-white .special-notes-section .note-text { color:#526c76; font-size:17px; line-height:1.8; }
body.home-white .special-notes-section .note-item:first-child .note-text { color:#123f55; font-weight:600; }
body.home-white .guide-ticket-reference { min-height:44px; color:#407b89; text-underline-offset:.2em; }

/* Booking steps retain source order on desktop and stack as a sequence on phones. */
body.home-white .process-steps { align-items:flex-start; gap:12px; padding:24px; }
body.home-white .step-item { flex:1 1 0; min-width:0; gap:12px; }
body.home-white .step-icon,
body.home-white .highlight-step .step-icon { width:44px; height:44px; color:#407b89; background:#fff; border:1px solid #e0ebef; border-radius:10px; box-shadow:none; font-size:20px; }
body.home-white .mobile-container .step-text,
body.home-white .highlight-step .step-text { color:#123f55; font-size:15px!important; font-weight:500; line-height:1.6!important; text-align:center; overflow-wrap:anywhere; }
body.home-white .step-arrow { flex:0 0 16px; margin-top:13px; color:#8da7b1; font-size:16px; line-height:1; }
body.home-white .payment-details { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; flex-grow:0; }
body.home-white .payment-card { padding:24px; }
body.home-white .payment-header,
body.home-white .final-card .payment-header { gap:10px; margin:0 0 18px; padding:0 0 14px; border-bottom:1px solid #e0ebef; }
body.home-white .payment-header h3 { margin:0; color:#123f55; }
body.home-white .payment-options { grid-template-columns:1fr; gap:12px; }
body.home-white .option-item { align-items:flex-start; gap:10px; }
body.home-white .option-item :is(i,.inline-svg-icon) { flex:0 0 18px; width:18px; height:18px; margin-top:6px; color:#407b89; font-size:18px; }
body.home-white .final-card .payment-desc { margin:0 0 18px; }
body.home-white .payment-desc p { margin:0; }
body.home-white .payment-methods-row { gap:10px 20px; }
body.home-white .mobile-container .payment-methods-row span { gap:7px; padding:0; border-radius:0; color:#526c76; background:#fff; font-size:13px!important; line-height:1.7!important; }

/* Story and policy text use natural heights; no copy is clipped. */
body.home-white .story-content { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); align-items:start; gap:40px!important; }
body.home-white .story-content:not(:has(.story-image)) { grid-template-columns:minmax(0,1fr); }
body.home-white .story-text { min-width:0; }
body.home-white .story-text p { margin:0 0 20px; text-indent:0!important; }
body.home-white .story-text p:last-child { margin-bottom:0; }
body.home-white .story-text p:first-child { color:#123f55; font-weight:500; }
body.home-white .story-text :is(strong,b) { color:#123f55; font-weight:600; }
body.home-white .story-image { width:100%; height:auto!important; min-height:0!important; max-height:none; aspect-ratio:4/3; flex-grow:0; margin:0; border-radius:10px; box-shadow:none; }
body.home-white .story-image::after { content:none; }
body.home-white .story-image img { width:100%; height:100%; object-fit:cover; }
body.home-white .cancellation-content { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); align-items:start; gap:32px!important; }
body.home-white .policy-timeline { gap:0; padding:0; border:0; border-radius:0; }
body.home-white .policy-item { display:grid; grid-template-columns:minmax(100px,.8fr) minmax(0,1fr); align-items:start; gap:16px; padding:18px 0 18px 22px; border-bottom:1px solid #e0ebef; }
body.home-white .policy-item:first-child { padding-top:0; }
body.home-white .policy-item::before { content:none; }
body.home-white .policy-marker { left:0; top:26px; width:8px; height:8px; background:#407b89; border:0; box-shadow:none; }
body.home-white .policy-item:first-child .policy-marker { top:8px; }
body.home-white .policy-time { width:auto; min-width:0; color:#123f55; font-size:17px; font-weight:600; line-height:1.8; }
body.home-white .policy-detail { min-width:0; }
body.home-white .policy-detail :is(strong,b),
body.home-white .policy-detail.green-text { color:#123f55; font-weight:600; }
body.home-white .special-policy-card { padding:24px; }
body.home-white .special-policy-card h3 { color:#123f55; margin:0 0 18px; padding:0 0 14px; border-bottom:1px solid #e0ebef; }
body.home-white .policy-desc ul { gap:14px; margin:0; padding:0; }
body.home-white .policy-desc li { gap:10px; }
body.home-white .policy-desc li > :is(i,.inline-svg-icon) { flex:0 0 18px; width:18px; height:18px; margin-top:6px; color:#407b89; font-size:18px; }
body.home-white .policy-desc li strong { color:#123f55; font-weight:600; }

/* The service cards and direct contact details use one consistent white surface. */
body.home-white .guarantee-header-top { gap:10px; margin:0 0 12px; }
body.home-white .gold-line { width:28px; height:1px; background:#407b89; }
body.home-white .mobile-container .guarantee-label { color:#407b89; font-size:12px!important; line-height:1.5!important; letter-spacing:.12em; font-weight:500; }
body.home-white .guarantee-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:stretch; margin:30px 0 0; gap:20px!important; }
body.home-white .service-card { padding:24px; }
body.home-white .card-icon-title { gap:12px; margin:0 0 18px; }
body.home-white .icon-box.autumn-icon { width:30px; height:30px; flex:0 0 30px; color:#407b89; background:#fff; border-radius:0; font-size:24px; }
body.home-white .card-icon-title h3 { margin:0; }
body.home-white .card-desc { margin:0 0 18px; }
body.home-white .mobile-container .card-tag { padding:4px 9px; color:#407b89; background:#fff; border:1px solid #e0ebef; border-radius:6px; font-size:12px!important; font-weight:500; line-height:1.6!important; }
body.home-white .complaint-line { margin:0 0 20px; }
body.home-white .mobile-container .complaint-label { margin:0 0 10px; color:#526c76; font-size:13px!important; line-height:1.6!important; }
body.home-white .complaint-number { color:#123f55; font-size:clamp(19px,2.1vw,27px); font-weight:500; line-height:1.35; letter-spacing:0; white-space:normal; overflow-wrap:anywhere; }
body.home-white .complaint-features { margin:0; padding:0; color:#526c76; font-size:17px; }
body.home-white .complaint-features li { gap:10px; margin:0 0 12px; }
body.home-white .complaint-features li :is(i,.inline-svg-icon) { flex:0 0 18px; width:18px; height:18px; margin-top:6px; color:#407b89; font-size:18px; }
body.home-white .stats-row { grid-column:1/-1; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin:8px 0 0; }
body.home-white .stat-box { width:auto; padding:24px; text-align:left; }
body.home-white .stat-number { color:#123f55; font-size:34px; font-weight:500; line-height:1.25; margin:0 0 8px; }
body.home-white .mobile-container .stat-label { color:#526c76; font-size:13px!important; line-height:1.7!important; }
body.home-white .guarantee-section .booklet-contact { gap:12px 28px; margin-top:32px; padding:24px 0 0; border-top:1px solid #e0ebef; color:#526c76; font-size:17px!important; line-height:1.8; }
body.home-white .guarantee-section .booklet-contact a { display:inline-flex; align-items:center; min-height:44px; color:#123f55; font-weight:500; text-decoration:underline; text-underline-offset:.2em; }
body.home-white .guarantee-section .page-footer { gap:14px 24px; margin:28px 0 0; padding:22px 0 0; border-top:1px solid #e0ebef; color:#526c76; font-size:13px!important; line-height:1.7!important; }
body.home-white .guarantee-section .dot-autumn { width:6px; height:6px; margin-right:8px; background:#407b89; }

@media (max-width:900px) {
  body.home-white .guarantee-cards { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body.home-white .guarantee-cards > .service-card:last-of-type { grid-column:1/-1; }
  body.home-white .story-content { gap:28px!important; }
  body.home-white .cancellation-content { grid-template-columns:minmax(0,1fr); }

}
@media (max-width:600px) {
  body.home-white .mobile-container > :is(.hotel-section,.tickets-section,.dining-section,.transport-section,.price-section,.booking-section,.story-section,.cancellation-section,.guarantee-section) { padding:40px 0!important; }
  body.home-white .mobile-container :is(.hotel-section,.tickets-section,.dining-section,.transport-section,.price-section,.booking-section,.story-section,.cancellation-section,.guarantee-section) .section-header { margin-bottom:24px; }
  body.home-white .mobile-container :is(.hotel-section,.tickets-section,.dining-section,.transport-section,.price-section,.booking-section,.story-section,.cancellation-section,.guarantee-section) :is(.section-header h2,.section-title-large) { font-size:28px!important; }
  body.home-white :is(.guide-stay-timeline,.hotel-content-grid,.guide-ticket-list,.dining-details-card,.vehicle-type-grid,.price-notes-card.guide-fee-notes,.payment-details,.story-content,.guarantee-cards,.stats-row) { grid-template-columns:minmax(0,1fr); }
  body.home-white :is(.hotel-region-card,.meal-count-card,.transport-intro-card,.vehicle-card,.payment-card,.special-policy-card,.service-card,.stat-box) { padding:20px; }
  body.home-white .guide-fee-notes .note-item { padding:20px; gap:10px; }
  body.home-white .guide-fee-notes .note-item > :is(i,.inline-svg-icon) { flex-basis:20px; width:20px; height:20px; font-size:20px; }
  body.home-white .region-header { gap:8px; }
  body.home-white .mobile-container .hotel-category { margin-left:0; }
  body.home-white .guide-ticket-item { gap:10px; padding:18px 0; }
  body.home-white .guide-ticket-status { font-size:11px; }
  body.home-white .meal-count-card { padding:22px 10px; }
  body.home-white .meal-num { font-size:32px; }
  body.home-white .meal-info { gap:5px; }
  body.home-white .dining-details-card { gap:28px; }

  body.home-white .price-table :is(th,td) { padding:14px 10px; font-size:15px!important; }
  body.home-white .price-table :is(.price-col,.highlight-price) { font-size:15px!important; }
  body.home-white .mobile-container .price-sub { display:block; margin:0; font-size:12px!important; }
  body.home-white .process-steps { flex-direction:column; align-items:stretch; gap:8px; padding:20px; }
  body.home-white .step-item { flex-direction:row; flex:none; align-items:center; justify-content:flex-start; gap:16px; }
  body.home-white .step-icon { flex:0 0 44px; }
  body.home-white .mobile-container .step-text { font-size:17px!important; text-align:left; }
  body.home-white .step-arrow { flex:none; align-self:flex-start; width:16px; height:16px; margin:0 0 0 14px; transform:rotate(90deg); }
  body.home-white .story-image { aspect-ratio:4/3; }
  body.home-white .policy-item { grid-template-columns:minmax(0,1fr); gap:4px; padding:18px 0 18px 22px; }

  body.home-white .guarantee-cards > .service-card:last-of-type { grid-column:auto; }
  body.home-white .stats-row { gap:16px; margin:0; }
  body.home-white .complaint-number { font-size:27px; }
  body.home-white .guarantee-section .booklet-contact { flex-direction:column; align-items:flex-start; gap:6px; }
  body.home-white .guarantee-section .page-footer { flex-direction:column; align-items:flex-start; gap:8px; }
}
@media (max-width:360px) {
  body.home-white .guide-ticket-item { grid-template-columns:22px minmax(0,1fr); }
  body.home-white .guide-ticket-status { grid-column:2; justify-self:start; margin-top:2px; }
  body.home-white .region-header .hotel-category { flex-basis:100%; }
}
