/* Homepage chapters: compact summaries with complete data and existing actions. */
.home-view #main>section:not(.grand-hero):not(.closing-section){padding-block:28px;margin-block:0}
.home-view .section-head{gap:16px;margin-bottom:18px;align-items:center}
.home-view .section-head.centered{gap:0;margin-bottom:18px}
.home-view .section-head h2,.home-view .welcome-heading h2,.home-view .lounge-copy h2,.home-view .pricing-intro h2,.home-view .booking-section h2,.home-view .payment-section h2,.home-view .faq-layout h2{font-size:28px;line-height:1.4}
.home-view .section-head h2>span,.home-view .section-head h2 .serif{display:inline;font-size:28px;line-height:1.4;margin:0 0 0 7px}
.home-view .section-head h2 br,.home-view .pricing-intro h2 br{display:none}
.home-view .eyebrow{font-size:10px;line-height:1.5;margin-bottom:7px}
.home-view .section-head .eyebrow{margin-bottom:7px}
.home-view .section-head>p{font-size:13px;line-height:1.7;margin:7px 0 0}
.home-view .text-link{font-size:13px;gap:9px}
.home-view .grand-hero{height:clamp(650px,100svh,760px);min-height:0}
.home-view .glass-site .hero-copy{padding-top:110px}
.home-view .hero-copy>.eyebrow{display:none}
.home-view .hero-glass-label{font-size:11px;padding:9px 14px;gap:8px;margin-bottom:20px;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none}
.home-view .hero-glass-label svg{width:18px;height:18px}
.home-view .hero-copy h1{font-size:48px;line-height:1.2;max-width:650px}
.home-view .hero-copy>p{font-size:17px;line-height:1.7;margin-top:16px}
.home-view .hero-actions{margin-top:20px;gap:22px;align-items:center;flex-direction:row}
.home-view .hero-actions .button{min-height:46px;font-size:14px;padding:12px 20px;gap:12px}
.home-view .hero-gallery-link{font-size:13px;gap:10px}
.home-view .hero-gallery-link>span{width:38px;height:38px}
.home-view .hero-copy>.hero-base{margin-top:14px;gap:8px}
.home-view .hero-location-bottom{bottom:24px;display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
.home-view .hero-location-bottom .hero-contact-grid{margin-bottom:0;width:600px;max-width:100%}.home-view .hero-contact-button{padding-left:8px;padding-right:8px;gap:7px}
.home-view .hero-contact-button{min-height:44px;padding:10px;font-size:13px;border-radius:11px}
.home-view .hero-contact-button svg{width:18px;height:18px}
.home-view .hero-location{font-size:11px;gap:8px}
.home-view .hero-location small{font-size:11px;line-height:1.6}
.home-view .welcome-section{gap:40px;align-items:center}
.home-view .welcome-heading h2 .serif{font-size:32px}
.home-view .welcome-text>p{font-size:14px;line-height:1.8}
.home-view .welcome-stats{margin-top:16px;padding-top:14px;gap:16px}
.home-view .welcome-stats strong{font-size:30px;line-height:1.3}
.home-view .welcome-stats strong.thai-stat{font-size:21px;padding-top:5px}
.home-view .welcome-stats small{font-size:11px;margin-top:4px}
.home-view .lounge-section{grid-template-columns:1fr 1fr;gap:36px}
.home-view .lounge-image{height:300px;margin-right:0}
.home-view .lounge-image>img,.home-view .lounge-image:after{border-radius:60px 16px 16px 16px}
.home-view .lounge-image .image-caption{padding:8px 12px;right:auto;border-radius:10px}
.home-view .lounge-image .image-caption>.serif{font-size:26px;line-height:1.3}
.home-view .lounge-copy>p{font-size:14px;line-height:1.8;margin-block:12px}
.home-view .lounge-features{gap:12px;margin-block:16px}
.home-view .lounge-features>div{font-size:13px}
.home-view .lounge-features svg{width:20px;height:20px}
.home-view .fleet-grid{gap:18px;margin-top:18px}
.home-view .fleet-grid .fleet-visual{height:auto;min-height:0;aspect-ratio:1.8}
.home-view .fleet-grid .fleet-visual>img{height:100%;object-fit:cover;object-position:center 48%;background:#09151c}
.home-view .fleet-grid .fleet-visual-top{font-size:9px;top:12px;left:14px;right:14px}
.home-view .fleet-grid .fleet-watermark{font-size:30px!important;bottom:7px;left:14px}
.home-view .fleet-grid .fleet-details{padding:16px 18px!important}
.home-view .fleet-grid .fleet-details>.eyebrow{display:none}
.home-view .fleet-grid .fleet-details h3{font-size:28px!important;line-height:1.2}
.home-view .fleet-grid .fleet-details h3>span{font-size:12px;display:inline;margin-right:6px}
.home-view .fleet-grid .fleet-details>p{font-size:13px!important;line-height:1.6;min-height:0;margin:8px 0 12px}
.home-view .fleet-grid .fleet-specs{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:0;min-height:0;padding-bottom:12px}
.home-view .fleet-grid .fleet-specs>span{font-size:11px!important;line-height:1.5;gap:5px}
.home-view .fleet-grid .fleet-specs svg{width:15px;height:15px;flex-shrink:0}
.home-view .fleet-grid .fleet-decision{display:flex;flex-direction:row;align-items:center;gap:12px;padding-top:12px}
.home-view .fleet-grid .fleet-price>div{font-size:28px!important;line-height:1.3}
.home-view .fleet-grid .fleet-price>small{font-size:10px}
.home-view .fleet-grid .fleet-price>div>span{font-size:11px}
.home-view .fleet-grid .fleet-decision .button{min-height:44px;font-size:12px;padding:10px 16px;gap:8px;margin:0}
.home-view .fleet-note{font-size:11px;line-height:1.6;margin-top:12px}
.home-view .campaign-grid{gap:18px}
.home-view .campaign-card.campaign-uncovered{display:grid;grid-template-columns:1fr 1fr;height:auto;min-height:0;overflow:hidden}
.home-view .campaign-card .campaign-image{height:auto;min-height:220px;position:relative;aspect-ratio:auto;min-width:0}
.home-view .campaign-card .campaign-image>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.home-view .campaign-card.campaign-uncovered .campaign-copy{position:static;margin:0;padding:16px;border-radius:0;min-height:0;min-width:0;display:flex;flex-direction:column;justify-content:center}
.home-view .campaign-card .campaign-top{position:static;padding:0;margin-bottom:12px;gap:8px}
.home-view .campaign-top>span{font-size:8px;letter-spacing:.1em}
.home-view .campaign-card.campaign-uncovered .campaign-copy>.serif{font-size:24px;line-height:1.2}
.home-view .campaign-card.campaign-uncovered .campaign-copy h3{font-size:19px;line-height:1.5;margin:8px 0}
.home-view .campaign-card.campaign-uncovered .campaign-copy p{font-size:11px;line-height:1.7}
.home-view .campaign-card .campaign-bottom{margin-top:14px;padding-top:10px}
.home-view .campaign-cta{font-size:12px;gap:8px}
.home-view .service-ribbon>a{padding:12px 18px}
.home-view .service-ribbon svg{width:22px;height:22px;margin-bottom:10px}
.home-view .service-ribbon h3{font-size:15px}
.home-view .service-ribbon p{font-size:12px;line-height:1.6}
.home-view .moments-heading{margin-bottom:16px}
.home-view .moments-heading h2{font-size:28px;line-height:1.4}
.home-view .moments-preview-grid{gap:10px}
.home-view .moments-preview-grid .moment-preview{aspect-ratio:1.6}
.home-view .moments-gallery-link{margin-top:14px;min-height:40px;font-size:13px}
.home-view .pricing-layout{grid-template-columns:.8fr 1.4fr;gap:36px}
.home-view .pricing-intro>p{font-size:13px;line-height:1.7;margin-block:12px}
.home-view .pricing-intro .included{font-size:12px;gap:8px;margin-block:16px}
.home-view .pricing-table{padding:12px 16px;border-radius:17px}
.home-view .price-tabs{margin-bottom:8px}
.home-view .price-tabs button{min-height:40px;font-size:13px;padding:8px 12px}
.home-view .pricing-table th{height:44px;font-size:12px;padding:10px}
.home-view .pricing-table td{font-size:13px;padding:10px;line-height:1.6}
.home-view .pricing-table td:not(:first-child){font-size:14px}
.home-view .show-routes{min-height:40px;margin-top:8px;font-size:12px}
.home-view .pricing-note{font-size:11px;line-height:1.6;margin-top:8px}
.home-view .steps{gap:24px;margin-top:16px}
.home-view .steps>div{padding-top:12px}
.home-view .steps>div>span{font-size:28px;margin-bottom:8px}
.home-view .steps h3{font-size:17px;line-height:1.5;margin-bottom:6px}
.home-view .steps p{font-size:13px;line-height:1.7}
.home-view .payment-section>p{font-size:13px;line-height:1.7;margin:8px 0 16px}
.home-view .payment-grid{gap:10px}
.home-view .payment-grid>div{padding:14px;border-radius:12px}
.home-view .payment-grid b{font-size:14px}
.home-view .payment-grid small{font-size:12px;line-height:1.6;margin-top:5px}
.home-view .faq-layout{grid-template-columns:.7fr 1.5fr;gap:28px}
.home-view .faq-list{padding:0 18px}
.home-view .faq-list details{padding:10px 0}
.home-view .faq-list .faq-more>summary{color:#edcf96;min-height:44px;display:flex;align-items:center}
.home-view .faq-more>summary::before{content:"+";margin-right:10px}
.home-view .faq-more[open]>summary::before{content:"−"}
.home-view .faq-list summary{font-size:14px;line-height:1.6;min-height:24px}
.home-view .faq-answer{font-size:13px;line-height:1.8;padding-top:10px}
.home-view .closing-section{min-height:0}
.home-view .closing-content{padding-block:40px}
.home-view .closing-serif{font-size:30px;line-height:1.3;margin-bottom:12px}
.home-view .closing-content h2{font-size:32px;line-height:1.4}
.home-view .closing-content>p{font-size:14px;line-height:1.7;margin-block:12px}
.home-view .closing-content .hero-contact-grid{margin-top:20px}
.home-view footer{padding-top:28px}
.home-view .footer-wordmark{font-size:clamp(46px,9vw,110px)}
.home-view .footer-bottom{padding-bottom:28px}
@media(min-width:1101px){
 .home-view .bottom-navigation{display:none}
 .home-view .glass-site .header{top:8px}
 .home-view .glass-site .header .nav-inner{height:70px;gap:24px}
 .home-view .glass-site .header .brand img.kingtocar-wordmark{width:210px;height:70px}
}
@media(max-width:1100px){
 .home-view .campaign-card.campaign-uncovered{grid-template-columns:.85fr 1fr}
 .home-view .campaign-card.campaign-uncovered .campaign-copy{padding:13px}
 .home-view .campaign-card .campaign-image{height:auto;min-height:220px}
 .home-view .fleet-grid .fleet-specs{grid-template-columns:1fr}
}
@media(max-width:800px){
 .home-view #main>section:not(.grand-hero):not(.closing-section){padding-block:20px}
 .home-view .section-head{gap:7px;margin-bottom:14px}
 .home-view .section-head h2,.home-view .section-head h2>span,.home-view .section-head h2 .serif,.home-view .welcome-heading h2,.home-view .lounge-copy h2,.home-view .pricing-intro h2,.home-view .booking-section h2,.home-view .payment-section h2,.home-view .faq-layout h2,.home-view .moments-heading h2{font-size:23px;line-height:1.4}
 .home-view .section-head.centered h2>span{display:inline;margin-left:5px}
 .home-view .section-head>p{font-size:12px;margin-top:5px}
 .home-view .welcome-section{grid-template-columns:1fr;gap:14px}
 .home-view .welcome-heading h2 br{display:none}
 .home-view .welcome-heading h2 .serif{font-size:26px}
 .home-view .welcome-text>p{font-size:13px}
 .home-view .welcome-stats{gap:8px;margin-top:12px;padding-top:12px}
 .home-view .welcome-stats strong{font-size:27px}
 .home-view .welcome-stats strong.thai-stat{font-size:18px}
 .home-view .welcome-stats small{font-size:10px}
 .home-view .lounge-section{grid-template-columns:1fr;gap:16px}
 .home-view .lounge-image{height:160px}
 .home-view .lounge-image>img,.home-view .lounge-image:after{border-radius:24px 14px 14px 14px}
 .home-view .lounge-image .image-caption{bottom:10px;left:12px;right:auto;padding:6px 10px;border-radius:8px}
 .home-view .lounge-image .image-caption>.serif{font-size:20px;line-height:1.3}
 .home-view .lounge-copy h2 br{display:none}
 .home-view .lounge-copy h2>span{display:inline;margin-left:5px}
 .home-view .lounge-copy>p{font-size:13px;margin-block:8px}
 .home-view .lounge-features{gap:8px;margin-block:12px}
 .home-view .lounge-features>div{font-size:12px}
 .home-view .fleet-grid{gap:12px;margin-top:14px}
 .home-view .fleet-grid .fleet-visual{height:auto;aspect-ratio:1.8}
 .home-view .fleet-grid .fleet-details{padding:12px!important}
 .home-view .fleet-grid .fleet-details h3{font-size:25px!important}
 .home-view .fleet-grid .fleet-details h3>span{display:block;font-size:11px;margin-bottom:3px}
 .home-view .fleet-grid .fleet-details>p{font-size:12px!important;line-height:1.6;margin:7px 0 10px}
 .home-view .fleet-grid .fleet-specs{gap:6px;padding-bottom:10px}
 .home-view .fleet-grid .fleet-decision{display:block;padding-top:10px}
 .home-view .fleet-grid .fleet-price>div{font-size:25px!important}
 .home-view .fleet-grid .fleet-decision .button{width:100%;margin-top:8px;padding:10px 6px}
 .home-view .campaign-grid{grid-template-columns:1fr;gap:12px}
 .home-view .campaign-card.campaign-uncovered{grid-template-columns:.8fr 1.2fr}
 .home-view .campaign-card .campaign-image{height:auto;min-height:170px}
 .home-view .campaign-card .campaign-top{position:static;padding:0;margin-bottom:7px}
 .home-view .campaign-card.campaign-uncovered .campaign-copy>.serif{font-size:22px}
 .home-view .campaign-card.campaign-uncovered .campaign-copy h3{font-size:17px;margin:5px 0}
 .home-view .campaign-card .campaign-bottom{margin-top:8px;padding-top:7px}
 .home-view .service-ribbon>a{padding:14px 10px}
 .home-view .service-ribbon h3{font-size:14px}
 .home-view .service-ribbon p{font-size:11px}
 .home-view .moments-preview-grid{gap:7px}
 .home-view .moments-heading{gap:10px;margin-bottom:12px}
 .home-view .pricing-layout{grid-template-columns:1fr;gap:14px}
 .home-view .pricing-intro>p{font-size:12px;margin-block:7px}
 .home-view .pricing-intro>p br{display:none}
 .home-view .pricing-intro .included{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:11px;margin-block:8px}
 .home-view .pricing-intro .text-link{font-size:12px}
 .home-view .pricing-table{padding:10px}
 .home-view .pricing-table td{padding:8px 6px;font-size:12px}
 .home-view .pricing-table th{padding:8px 6px;font-size:11px;height:38px}
 .home-view .pricing-table td:not(:first-child){font-size:13px!important}
 .home-view .price-tabs button{font-size:12px;min-height:38px}
 .home-view .steps{grid-template-columns:1fr;gap:12px;margin-top:14px}
 .home-view .steps>div{padding:10px 0 0 40px}
 .home-view .steps>div>span{top:8px;font-size:26px}
 .home-view .steps h3{font-size:15px;margin-bottom:4px}
 .home-view .steps p{font-size:12px}
 .home-view .payment-grid{grid-template-columns:1fr 1fr;gap:8px}
 .home-view .payment-grid>div{padding:11px}
 .home-view .payment-grid b{font-size:13px}
 .home-view .payment-grid small{font-size:11px}
 .home-view .faq-layout{grid-template-columns:1fr;gap:14px}
 .home-view .faq-layout .text-link{margin-top:8px}
 .home-view .faq-list{padding-inline:14px}
 .home-view .faq-list details{padding-block:10px}
 .home-view .faq-list summary{font-size:13px;line-height:1.5}
 .home-view .closing-content{padding-block:28px}
 .home-view .closing-serif{font-size:25px}
 .home-view .closing-content h2{font-size:27px}
 .home-view .closing-content>p{font-size:13px}
 .home-view .footer-bottom{padding-bottom:100px}
}
@media(max-width:768px){
 .home-view .hero-backdrop img{object-position:35% 50%}
 .home-view .glass-site .header{top:8px}
 .home-view .glass-site .header .nav-inner{height:64px}
 .home-view .glass-site .header .brand img.kingtocar-wordmark{width:192px;height:64px}
 .home-view .grand-hero{height:auto;min-height:0;padding-bottom:20px}
 .home-view .glass-site .hero-copy{padding-top:104px}
 .home-view .hero-glass-label{font-size:9px;padding:8px 11px;gap:7px;margin-bottom:16px;letter-spacing:.05em}
 .home-view .hero-copy h1{font-size:clamp(29px,8.5vw,38px);line-height:1.2}
 .home-view .hero-copy>p{font-size:14px;line-height:1.7;margin-top:13px}
 .home-view .hero-actions{gap:12px;margin-top:16px;flex-wrap:wrap}
 .home-view .hero-actions .button{min-height:44px;font-size:12px;padding:10px 14px;gap:8px}
 .home-view .hero-gallery-link{font-size:11px;gap:7px}
 .home-view .hero-gallery-link>span{width:30px;height:30px}
 .home-view .hero-copy>.hero-base{margin-top:12px}
 .home-view .hero-location-bottom{position:relative;bottom:auto;display:block;margin-top:20px}
 .home-view .hero-contact-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
 .home-view .hero-contact-grid>*,.home-view .hero-contact-grid>:nth-child(n+4){grid-column:auto}
 .home-view .hero-contact-button{font-size:11px;padding:8px 5px;gap:5px;min-height:44px}
 .home-view .hero-contact-button svg{display:none}
 .home-view .hero-location-bottom .hero-location{margin-top:12px}
 .home-view .hero-location small{font-size:10px}
}
@media(max-width:359px){
 .home-view .glass-site .header .brand img.kingtocar-wordmark{width:162px;height:54px}
 .home-view .fleet-grid .fleet-details{padding:10px!important}
 .home-view .fleet-grid .fleet-details h3{font-size:22px!important}
 .home-view .hero-actions{gap:9px}
}

/* Keep route controls close to the first fares; ten rows paginate naturally. */
.home-view .home-route-board{padding-bottom:0}
.home-view .home-route-board .board-pagination{padding:8px 12px}
.home-view .home-route-board .board-pagination button{width:44px;height:44px}
.home-view .home-route-board .board-conditions{margin-top:10px}

@media(min-width:1101px) and (max-height:800px){
 .home-view #main>.fleet-section{padding-block:16px}
 .home-view .fleet-section>.container{max-width:920px}
 .home-view .fleet-section .section-head{margin-bottom:10px}
 .home-view .fleet-section .section-head h2,.home-view .fleet-section .section-head h2>span{font-size:24px}
 .home-view .fleet-section .fleet-grid{margin-top:10px}
 .home-view .fleet-grid .fleet-details{padding:12px 16px!important}
 .home-view .fleet-grid .fleet-details>p{margin-block:6px 8px}
 .home-view .fleet-grid .fleet-specs{padding-bottom:8px}
 .home-view .fleet-grid .fleet-decision{padding-top:8px}
 .home-view .fleet-note{margin-top:8px;font-size:10px}
}

@media(max-width:380px){.home-view .hero-contact-button{font-size:10px;padding-left:3px;padding-right:3px}}

/* Legibility and touch floor for the route directory and the shared fare board:
   Thai microcopy ≥12px, catalog prices 13px, every link/button ≥24px tall. */
:is(.v22-route-directory,.home-route-board) .fare-key>span{font-size:12px;line-height:1.2}
:is(.v22-route-directory,.home-route-board) :is(.board-route-origin,.board-route-link-hint){font-size:12px}
.v22-route-directory :is(th,th small,.board-price-unit,.board-toolbar span,.board-kicker,.eyebrow,.directory-fleet-photo span,.departure-heading p,#departure-title span){font-size:12px}
.v22-route-directory .route-catalog-group :is(li span,li small,li b,.route-catalog-note){font-size:13px}
.v22-route-directory .route-catalog-group li a{display:inline-block;min-height:24px;padding-block:2px}
.v22-route-directory .board-section-links a{display:inline-flex;align-items:center;min-height:32px}
.v22-route-directory :is(.route-help,.route-breadcrumb,.board-source) a{display:inline-flex;align-items:center;min-height:24px}
.moment-preview .gallery-real-badge{font-size:12px}
@media(min-width:992px){.header .nav-phone{min-height:24px}}
.nobr{white-space:nowrap}
.route-catalog-note{margin:0;padding:12px 24px 16px;color:#b9b196;line-height:1.6}@media(max-width:768px){.route-catalog-note{padding-inline:16px}}
.v22-route-directory :is(.route-popular a span,.board-pagination span,.board-table-note,.moments-count){font-size:12px}
@media(max-width:560px){.hide-sm{display:none}}  /* phones keep five fare rows in the first screen; the table header already names both cars */
@media(max-width:560px){.v22-route-directory .departure-heading h1{line-height:1.18;margin-bottom:0}}
@media(max-width:360px){.v22-route-directory .departure-heading h1{font-size:20px}}
