/* TCL-P65 Booking & Contact UX | isolated transport-only. No H1/SEO/content changes. */
body.transport-native .txng-contact-pc{right:12px;max-height:78vh}
body.transport-native .txng-contact-pc ul{padding:5px;border-radius:13px}
body.transport-native .txng-contact-pc a,body.transport-native .txng-contact-pc button{width:48px;min-height:48px;border-radius:10px}
body.transport-native .txng-contact-pc img{width:32px;height:32px}
body.transport-native .tx-booking-dialog{box-sizing:border-box;width:min(820px,calc(100vw - 24px));overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
body.transport-native .tx-booking-backdrop{background:rgba(32,13,17,.69)}
body.transport-native .tx-booking-head>span{color:#ad1021}
body.transport-native .tx-booking-head h2{color:#5b0e18}
body.transport-native .tx-booking-submit{background:#b90d22;color:#fff}
body.transport-native .tx-booking-submit:hover{background:#960818}
body.transport-native .tx-booking-form input:focus-visible,body.transport-native .tx-booking-form select:focus-visible,body.transport-native .tx-booking-form textarea:focus-visible{border-color:#bc1830;box-shadow:0 0 0 3px rgba(188,24,48,.12)}
body.transport-native .tx-booking-consent input{accent-color:#b30e23}
body.transport-native .tx-booking-advanced{grid-column:1/-1;border:1px solid #e4e6ea;border-radius:11px;background:#fff;overflow:hidden}
body.transport-native .tx-booking-advanced>summary{padding:11px 13px;color:#6c2832;font-size:13px;font-weight:700;cursor:pointer}
body.transport-native .tx-booking-advanced[open]>summary{border-bottom:1px solid #e4e6ea}
body.transport-native .tx-booking-advanced__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px}
body.transport-native .tx-booking-advanced__grid .tx-booking-note{grid-column:1/-1}
body.transport-native .tx-booking-close:focus-visible,body.transport-native .txng-contact-mobile__item:focus-visible,body.transport-native .txng-contact-sheet button:focus-visible{outline:3px solid #df7580;outline-offset:3px}
@media(max-width:767px){
  body.transport-native{padding-bottom:calc(72px + env(safe-area-inset-bottom))}
  body.transport-native .txng-contact-pc{display:none!important}
  body.transport-native .txng-contact-mobile{display:block!important;position:fixed;bottom:0;left:0;right:0;transform:translateY(0);transition:transform .16s ease;box-shadow:0 -5px 18px rgba(65,9,20,.13);border-top:1px solid #f0d5d8}
  body.transport-native .txng-contact-mobile__inner{display:flex;align-items:center;justify-content:space-evenly;gap:4px;max-width:560px;height:64px;padding:5px 8px}
  body.transport-native .txng-contact-mobile__item{flex:1 1 0;min-width:0;height:56px;min-height:56px;justify-content:center;gap:3px;color:#5c1621;font-size:11px;font-weight:750;white-space:nowrap}
  body.transport-native .txng-contact-mobile__icon{width:30px;height:30px}
  body.transport-native .txng-contact-mobile__icon img{width:28px;height:28px}
  body.transport-native .txng-contact-mobile__call-icon{margin:0;transform:none;width:34px;height:34px;box-shadow:none;border:0}
  body.transport-native .txng-contact-mobile__call-icon img{width:32px;height:32px}
  body.transport-native .txng-contact-mobile__call>span:last-child{margin:0;color:inherit}
  body.transport-native .txng-contact-mobile__booking .txng-contact-mobile__icon{background:#b50e22;color:white;border-radius:10px;font-size:23px;line-height:1}
  body.transport-native .txng-contact-mobile__booking{color:#a20b1f}
  body.tcl-p65-input-focused .txng-contact-mobile,body.tx-booking-open .txng-contact-mobile{transform:translateY(120%);pointer-events:none}
  body.transport-native .tx-booking-modal{padding:0;align-items:stretch;justify-content:center}
  body.transport-native .tx-booking-dialog{width:100%;max-height:100dvh;height:100dvh;border-radius:0;overflow-y:auto;padding:20px 16px calc(26px + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch}
  body.transport-native .tx-booking-close{top:15px;right:14px;width:42px;height:42px}
  body.transport-native .tx-booking-head{padding-right:45px}
  body.transport-native .tx-booking-head>span{font-size:11px}
  body.transport-native .tx-booking-head h2{font-size:24px;line-height:1.25;margin:5px 0}
  body.transport-native .tx-booking-head p{font-size:13px;line-height:1.5}
  body.transport-native .tx-booking-form{display:grid;grid-template-columns:minmax(0,1fr);gap:11px;margin-top:16px;padding-bottom:8px}
  body.transport-native .tx-booking-form label{min-width:0;gap:5px}
  body.transport-native .tx-booking-form label>span{font-size:12px}
  body.transport-native .tx-booking-form input,body.transport-native .tx-booking-form select{height:46px;min-height:46px;padding:9px 12px;font-size:16px}
  body.transport-native .tx-booking-form textarea{font-size:16px;min-height:70px}
  body.transport-native .tx-booking-advanced__grid{grid-template-columns:1fr}
  body.transport-native .tx-booking-consent{padding:11px;border-radius:10px;grid-template-columns:20px 1fr!important}
  body.transport-native .tx-booking-consent input{width:18px!important;height:18px!important}
  body.transport-native .tx-booking-consent span{font-size:12px!important;line-height:1.5}
  body.transport-native .tx-booking-submit{height:48px;min-height:48px;font-size:15px}
  body.transport-native .tx-booking-status{font-size:13px;line-height:1.5}
  body.transport-native .gc03b-booking-form input,body.transport-native .gc03b-booking-form select,body.transport-native .info_form input,body.transport-native .info_form select{max-width:100%}
  body.transport-native .gc03b-booking-form input[type=tel],body.transport-native .gc03b-booking-form input[type=text],body.transport-native .info_form input[type=tel],body.transport-native .info_form input[type=text]{font-size:16px}
  body.transport-native .gc03b-jumpnav{scroll-padding-inline:16px;overscroll-behavior-x:contain}
}
@media(max-width:390px){
 body.transport-native .txng-contact-mobile__inner{padding-inline:3px;gap:1px}
 body.transport-native .txng-contact-mobile__item{font-size:10px}
 body.transport-native .tx-booking-dialog{padding:16px 12px calc(22px + env(safe-area-inset-bottom))}
}
@media(prefers-reduced-motion:reduce){body.transport-native .txng-contact-mobile{transition:none}}
