.elementor-kit-8{--e-global-color-primary:#D02725;--e-global-color-secondary:#1E1E22;--e-global-color-text:#2B2A28;--e-global-color-accent:#EF3937;--e-global-color-bdbase:#17171A;--e-global-color-bdcard:#26262B;--e-global-color-bdline:#3A3A41;--e-global-color-bdink:#F4F2EE;--e-global-color-bdmuted:#B2ADA4;--e-global-color-bdpaper:#F5F2EC;--e-global-color-bdinkdark:#1A1A1D;--e-global-color-bdmuteddark:#5A564F;--e-global-color-bdredhover:#AB1E1C;--e-global-typography-primary-font-family:"Bodoni Moda";--e-global-typography-primary-font-weight:500;--e-global-typography-secondary-font-family:"Bodoni Moda";--e-global-typography-secondary-font-weight:400;--e-global-typography-secondary-font-style:italic;--e-global-typography-text-font-family:"Manrope";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Manrope";--e-global-typography-accent-font-weight:700;--e-global-typography-bdmono-font-family:"IBM Plex Mono";--e-global-typography-bdmono-font-weight:500;background-color:#FFFFFF;color:#2B2A28;font-family:"Manrope", Sans-serif;font-size:16.5px;font-weight:400;line-height:1.65em;}.elementor-kit-8 button,.elementor-kit-8 input[type="button"],.elementor-kit-8 input[type="submit"],.elementor-kit-8 .elementor-button{background-color:#D02725;font-family:"Manrope", Sans-serif;font-size:13.5px;font-weight:700;text-transform:uppercase;letter-spacing:1.1px;color:#FFFFFF;border-radius:2px 2px 2px 2px;padding:16px 26px 16px 26px;}.elementor-kit-8 button:hover,.elementor-kit-8 button:focus,.elementor-kit-8 input[type="button"]:hover,.elementor-kit-8 input[type="button"]:focus,.elementor-kit-8 input[type="submit"]:hover,.elementor-kit-8 input[type="submit"]:focus,.elementor-kit-8 .elementor-button:hover,.elementor-kit-8 .elementor-button:focus{background-color:#AB1E1C;color:#FFFFFF;}.elementor-kit-8 e-page-transition{background-color:#FFBC7D;}.elementor-kit-8 a{color:#B3201E;}.elementor-kit-8 a:hover{color:#1A1A1D;}.elementor-kit-8 h1{color:#1A1A1D;font-family:"Bodoni Moda", Sans-serif;font-weight:500;letter-spacing:-0.01em;}.elementor-kit-8 h2{color:#1A1A1D;font-family:"Bodoni Moda", Sans-serif;font-weight:500;letter-spacing:-0.01em;}.elementor-kit-8 h3{color:#1A1A1D;font-family:"Bodoni Moda", Sans-serif;font-weight:500;letter-spacing:-0.01em;}.elementor-kit-8 h4{color:#1A1A1D;font-family:"Bodoni Moda", Sans-serif;font-weight:500;letter-spacing:-0.01em;}.elementor-kit-8 h5{color:#1A1A1D;font-family:"Bodoni Moda", Sans-serif;font-weight:500;letter-spacing:-0.01em;}.elementor-kit-8 h6{color:#1A1A1D;font-family:"Bodoni Moda", Sans-serif;font-weight:500;letter-spacing:-0.01em;}.elementor-kit-8 label{color:#1A1A1D;font-family:"Manrope", Sans-serif;font-weight:600;}.elementor-kit-8 input:not([type="button"]):not([type="submit"]),.elementor-kit-8 textarea,.elementor-kit-8 .elementor-field-textual{font-family:"Manrope", Sans-serif;color:#1A1A1D;background-color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-color:#8A857C;border-radius:2px 2px 2px 2px;}.elementor-kit-8 input:focus:not([type="button"]):not([type="submit"]),.elementor-kit-8 textarea:focus,.elementor-kit-8 .elementor-field-textual:focus{border-style:solid;border-color:#D02725;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS */:root{--bd-paper: #18181B; --bd-white: #212125; --bd-sand: #1C1C1F; --bd-stone: #46443F; --bd-base: #111113; --bd-ink: #f4f2ee; --bd-ink-2: #d6d2ca; --bd-muted: #ADA9A1; --bd-line: #34343A; --bd-photo-ink: #fbf8f2; --bd-photo-dim: rgba(251,248,242,.8); --bd-red: #ef3937; --bd-red-deep: #c9221f; --bd-red-btn: #d02725; --bd-red-btn-hover: #ab1e1c; --bd-display: "Bodoni Moda","Didot","Bodoni 72",Georgia,serif; --bd-body: "Manrope",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif; --bd-mono: "IBM Plex Mono",ui-monospace,Consolas,monospace; --bd-hero-h: clamp(520px,80svh,820px)}
.bd *{box-sizing: border-box;}
html{scroll-behavior: smooth;}
.bd{margin: 0px; background: var(--bd-paper); color: var(--bd-ink); font-family: var(--bd-body); font-size: 16.5px; line-height: 1.6; -webkit-font-smoothing: antialiased;}
.bd img{max-width: 100%; display: block;}
.bd a{color: inherit;}
.bd p{margin: 0px;}
.bd h1,.bd h2,.bd h3{margin: 0px; font-family: var(--bd-display); font-weight: 500; line-height: 1.04; text-wrap: balance; letter-spacing: -0.01em;}
.bd h1{font-size: clamp(42px, 6.6vw, 92px);}
.bd h2{font-size: clamp(34px, 4.4vw, 60px);}
.bd h3{font-size: clamp(22px, 2vw, 28px); font-weight: 500;}
.bd h1 em,.bd h2 em{font-style: italic; font-weight: 400;}
.bd .wrap{max-width: 1320px; margin: 0px auto; padding-left: max(20px,env(safe-area-inset-left,0px)); padding-right: max(20px,env(safe-area-inset-right,0px));}
.bd .eyebrow{font-family: var(--bd-mono); font-size: 12px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--bd-muted);}
.bd .lede{font-size: clamp(17px, 1.5vw, 19px); color: var(--bd-muted); max-width: 60ch;}
.bd section{padding-block: clamp(72px, 9vw, 128px);}
.bd .band-sand{background: var(--bd-sand);}
.bd .band-white{background: var(--bd-white);}
.bd .sec-head{display: flex; flex-direction: column; gap: 18px; max-width: 820px; margin-bottom: clamp(36px, 5vw, 60px);}
.bd .sec-head.split{max-width: none; flex-flow: wrap; justify-content: space-between; align-items: end; gap: 32px;}
.bd .sec-head.split > div{display: flex; flex-direction: column; gap: 18px; max-width: 780px; min-width: 0px;}
.bd :focus-visible{outline: 2px solid var(--bd-ink); outline-offset: 3px;}
.bd .sr{position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0px, 0px, 0px, 0px); white-space: nowrap;}
.bd .btn{display: inline-flex; align-items: center; justify-content: center; gap: 10px; font: 700 13.5px/1 var(--bd-body); letter-spacing: 0.08em; text-transform: uppercase; text-decoration: none; padding: 17px 26px; border: 1px solid var(--bd-ink); cursor: pointer; white-space: nowrap; transition: background 0.2s, color 0.2s;}
.bd .btn.solid{background: var(--bd-red-btn); border-color: var(--bd-red-btn); color: rgb(255, 255, 255);}
.bd .btn.solid:hover{background: var(--bd-red-btn-hover); border-color: var(--bd-red-btn-hover);}
.bd .btn.line{background: transparent; color: var(--bd-ink);}
.bd .btn.line:hover{background: var(--bd-ink); color: var(--bd-paper);}
.bd .arrow{display: inline-flex; gap: 10px; align-items: center; font-weight: 700; font-size: 13.5px; letter-spacing: 0.08em; text-transform: uppercase; text-decoration: none;}
.bd .arrow::after{content: ""; width: 28px; height: 1px; background: currentcolor; transition: width 0.25s;}
.bd .arrow:hover::after{width: 44px;}
.bd .top{position: sticky; top: env(safe-area-inset-top,0px); z-index: 40; background: rgba(24,24,27,.92); backdrop-filter: blur(14px) saturate(1.3); border-bottom: 1px solid var(--bd-line);}
.bd .top .wrap{display: flex; align-items: center; gap: 36px; height: 78px;}
.bd .logo{display: block; width: 140px; flex: 0 0 auto; color: var(--bd-ink);}
.bd .logo svg{display: block; width: 100%; height: auto;}
.bd nav.main{display: flex; gap: 26px; font-size: 14.5px; font-weight: 600;}
.bd nav.main a{text-decoration: none; color: var(--bd-ink-2);}
.bd nav.main a:hover{text-decoration: underline; text-underline-offset: 6px;}
.bd .top .right{margin-left: auto; display: flex; align-items: center; gap: 20px;}
.bd .locale{font-family: var(--bd-mono); font-size: 12.5px; letter-spacing: 0.08em; color: var(--bd-ink-2); background: none; border: 1px solid var(--bd-line); padding: 8px 12px; cursor: pointer;}
.bd .phone{font-weight: 700; text-decoration: none; font-variant-numeric: tabular-nums; font-size: 14.5px;}
.bd .top .btn{padding: 13px 18px; font-size: 12.5px;}
.bd .hero{padding: 0px; background: var(--bd-paper);}
.bd .hero-media{position: relative; height: var(--bd-hero-h); overflow: hidden; isolation: isolate; display: flex; align-items: flex-end; background: var(--bd-base);}
.bd .hero-media img{position: absolute; inset: 0px; width: 100%; height: 100%; object-fit: cover; object-position: 60% 55%; z-index: -2;}
.bd .hero-media::before{content: ""; position: absolute; inset: 0px; z-index: -1; background: linear-gradient(90deg, rgba(21, 20, 19, 0.78) 0%, rgba(21, 20, 19, 0.45) 42%, rgba(21, 20, 19, 0) 75%), linear-gradient(0deg, rgba(21, 20, 19, 0.6) 0%, rgba(21, 20, 19, 0) 45%);}
.bd .hero-copy{display: flex; flex-direction: column; gap: 22px; max-width: 780px; color: var(--bd-photo-ink); padding-bottom: clamp(120px, 14vw, 170px);}
.bd .hero-copy .eyebrow{color: var(--bd-photo-dim);}
.bd .hero-copy .lede{color: var(--bd-photo-dim);}
.bd .book{position: relative; z-index: 2; margin-top: clamp(-120px, -9vw, -72px); background: var(--bd-white); box-shadow: rgba(0, 0, 0, 0.7) 0px 30px 60px -24px; border: 1px solid var(--bd-line);}
.bd .book-tabs{display: flex; border-bottom: 1px solid var(--bd-line);}
.bd .book-tabs button{background: none; border-width: 0px 0px 2px; border-style: none none solid; border-color: currentcolor currentcolor transparent; border-image: none; color: var(--bd-muted); font: 600 14px var(--bd-body); padding: 16px 22px; cursor: pointer; margin-bottom: -1px;}
.bd .book-tabs button[aria-selected="true"]{color: var(--bd-ink); border-bottom-color: var(--bd-red);}
.bd .book-form{display: grid; grid-template-columns: 1.3fr 1.3fr 0.8fr 0.6fr 0.6fr auto; gap: 1px; background: var(--bd-line);}
.bd .book-form.is-return{grid-template-columns: 1.15fr 1.15fr 0.78fr 0.58fr 0.78fr 0.58fr 0.5fr auto;}
.bd .book-form .rt{display: none;}
.bd .book-form.is-return .rt{display: flex;}
.bd .field{display: flex; flex-direction: column; gap: 4px; padding: 16px 20px; background: var(--bd-white); min-width: 0px;}
.bd .field label{font-family: var(--bd-mono); font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--bd-muted);}
.bd .field input,.bd .field select{background: none; border: 0px; color: var(--bd-ink); font: 600 16px var(--bd-body); padding: 2px 0px; width: 100%; min-width: 0px; outline: none;}
.bd .field:focus-within{box-shadow: inset 0 -2px 0 var(--bd-red);}
.bd .field input::placeholder{color: rgba(244, 242, 238, 0.4);}
.bd .book-form .btn{border: 0px; padding-inline: 34px;}
.bd .book-note{padding: 12px 20px; font-size: 13.5px; color: var(--bd-muted); border-top: 1px solid var(--bd-line); display: flex; flex-wrap: wrap; gap: 4px 18px;}
.bd .book-note b{color: var(--bd-ink); font-weight: 600;}
.bd .facts{display: grid; grid-template-columns: repeat(4, minmax(0px, 1fr)); margin-top: 40px;}
.bd .facts div{padding: 6px 24px 6px 20px; display: flex; flex-direction: column; gap: 4px; border-left: 1px solid var(--bd-line);}
.bd .facts div:first-child{border-left: 0px; padding-left: 0px;}
.bd .facts b{font-family: var(--bd-display); font-size: clamp(30px, 3vw, 42px); font-weight: 500; line-height: 1;}
.bd .facts span{font-size: 14px; color: var(--bd-muted);}
.bd .promises{display: grid; grid-template-columns: repeat(5, minmax(0px, 1fr)); gap: 1px; background: var(--bd-line); border: 1px solid var(--bd-line);}
.bd .promises div{background: var(--bd-white); padding: 22px 20px; display: flex; flex-direction: column; gap: 6px;}
.bd .promises b{font-size: 15.5px;}
.bd .promises span{font-size: 14px; color: var(--bd-muted);}
.bd .svc-grid{display: grid; grid-template-columns: 1fr 1fr 1fr; grid-template-rows: repeat(2, minmax(300px, auto)); gap: 14px;}
.bd .svc{position: relative; overflow: hidden; isolation: isolate; display: flex; flex-direction: column; justify-content: flex-end; gap: 10px; padding: 28px; text-decoration: none; min-height: 300px; color: var(--bd-photo-ink); background: var(--bd-white);}
.bd .svc.tall{grid-row: span 2;}
.bd .svc.wide{grid-column: span 2;}
.bd .svc img{position: absolute; inset: 0px; width: 100%; height: 100%; object-fit: cover; z-index: -2; transition: transform 1.2s cubic-bezier(0.2, 0.7, 0.2, 1);}
.bd .svc::before{content: ""; position: absolute; inset: 0px; z-index: -1; background: linear-gradient(0deg, rgba(21, 20, 19, 0.88) 0%, rgba(21, 20, 19, 0.4) 48%, rgba(21, 20, 19, 0) 100%);}
.bd .svc:hover img{transform: scale(1.04);}
.bd .svc .tag{font-family: var(--bd-mono); font-size: 11.5px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--bd-photo-dim);}
.bd .svc p{color: var(--bd-photo-dim); font-size: 15.5px; max-width: 46ch;}
.bd .more-svc{display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 14px; margin-top: 14px;}
.bd .more-svc a{background: var(--bd-white); border: 1px solid var(--bd-line); padding: 24px 26px; text-decoration: none; display: flex; flex-direction: column; gap: 8px; transition: border-color 0.2s;}
.bd .more-svc a:hover{border-color: var(--bd-ink);}
.bd .more-svc h3{font-size: 22px;}
.bd .more-svc p{color: var(--bd-muted); font-size: 15px;}
.bd .arrivals{position: relative; isolation: isolate; overflow: hidden; padding-block: clamp(90px, 11vw, 160px); color: var(--bd-photo-ink); background: var(--bd-base);}
.bd .arrivals > img{position: absolute; inset: 0px; width: 100%; height: 100%; object-fit: cover; z-index: -2; object-position: 50% 70%;}
.bd .arrivals::before{content: ""; position: absolute; inset: 0px; z-index: -1; background: linear-gradient(90deg, rgba(21, 20, 19, 0.86) 0%, rgba(21, 20, 19, 0.55) 55%, rgba(21, 20, 19, 0.25) 100%);}
.bd .arrivals .eyebrow,.bd .arrivals .lede{color: var(--bd-photo-dim);}
.bd .arr-grid{display: grid; grid-template-columns: minmax(0px, 1fr) minmax(0px, 0.9fr); gap: 56px; align-items: center;}
.bd .board{background: rgba(10, 10, 12, 0.88); border: 1px solid var(--bd-line); backdrop-filter: blur(8px); color: var(--bd-ink); padding: 22px 24px; font-family: var(--bd-mono); font-variant-numeric: tabular-nums;}
.bd .board .bh{display: flex; justify-content: space-between; align-items: baseline; border-bottom: 1px solid var(--bd-ink); padding-bottom: 14px;}
.bd .board .bh b{font-size: 13px; letter-spacing: 0.16em; font-weight: 500;}
.bd .board .bh span{font-size: 12px; color: var(--bd-muted);}
.bd .flight{display: grid; grid-template-columns: 76px minmax(0px, 1fr) auto; gap: 4px 14px; padding: 14px 0px; border-bottom: 1px solid var(--bd-line); font-size: 14px;}
.bd .flight:last-of-type{border-bottom: 0px;}
.bd .flight .from{color: var(--bd-muted);}
.bd .flight .st{font-size: 11.5px; letter-spacing: 0.12em; text-transform: uppercase; font-weight: 500;}
.bd .st.landed{color: rgb(111, 211, 156);}
.bd .st.late{color: rgb(242, 181, 68);}
.bd .st.ontime{color: var(--bd-muted);}
.bd .flight .note{grid-column: 2 / -1; color: var(--bd-muted); font-family: var(--bd-body); font-size: 13.5px;}
.bd .flight .note b{color: var(--bd-ink); font-weight: 600;}
.bd .steps{list-style: none; margin: 40px 0px 0px; padding: 0px; display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 24px; counter-reset: s 0;}
.bd .steps li{counter-increment: s 1; border-top: 1px solid rgba(251, 248, 242, 0.3); padding-top: 16px; display: flex; flex-direction: column; gap: 6px; font-size: 15px; color: var(--bd-photo-dim);}
.bd .steps li::before{content: counter(s, decimal-leading-zero); font-family: var(--bd-mono); font-size: 12px; letter-spacing: 0.1em; color: var(--bd-photo-ink);}
.bd .steps b{color: var(--bd-photo-ink); font-size: 16px;}
.bd .rail{display: grid; grid-auto-flow: column; grid-auto-columns: minmax(250px, 1fr); gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 14px; scrollbar-width: thin; scrollbar-color: var(--bd-stone) transparent;}
.bd .city{scroll-snap-align: start; position: relative; isolation: isolate; overflow: hidden; aspect-ratio: 3 / 4.2; max-width: 100%; display: flex; flex-direction: column; justify-content: space-between; padding: 22px; text-decoration: none; color: var(--bd-photo-ink); background: var(--bd-white);}
.bd .city img{position: absolute; inset: 0px; width: 100%; height: 100%; object-fit: cover; z-index: -2; transition: transform 1.2s cubic-bezier(0.2, 0.7, 0.2, 1);}
.bd .city::before{content: ""; position: absolute; inset: 0px; z-index: -1; background: linear-gradient(0deg, rgba(21, 20, 19, 0.88) 0%, rgba(21, 20, 19, 0.08) 52%, rgba(21, 20, 19, 0.5) 100%);}
.bd .city:hover img{transform: scale(1.05);}
.bd .city .meta{display: flex; justify-content: space-between; font-family: var(--bd-mono); font-size: 12px; letter-spacing: 0.12em; font-variant-numeric: tabular-nums;}
.bd .city h3{font-size: clamp(28px, 2.6vw, 36px);}
.bd .city p{font-size: 14px; color: var(--bd-photo-dim);}
.bd .city .hq{display: inline-block; align-self: flex-start; background: var(--bd-red); color: rgb(255, 255, 255); font-family: var(--bd-mono); font-size: 10.5px; letter-spacing: 0.14em; padding: 3px 7px; margin-bottom: 8px;}
.bd .network{display: grid; grid-template-columns: minmax(0px, 0.8fr) minmax(0px, 3fr); gap: 48px; margin-top: 64px; padding-top: 40px; border-top: 1px solid var(--bd-stone);}
.bd .network > div:first-child{display: flex; flex-direction: column; align-items: flex-start; gap: 12px;}
.bd .network h3{font-size: 26px;}
.bd .network p{color: var(--bd-muted); font-size: 15px;}
.bd .regions{display: grid; grid-template-columns: repeat(4, minmax(0px, 1fr)); gap: 28px;}
.bd .regions h4{margin: 0px 0px 10px; font-family: var(--bd-mono); font-size: 11.5px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--bd-muted); font-weight: 500;}
.bd .regions ul{list-style: none; margin: 0px 0px 18px; padding: 0px; display: flex; flex-direction: column;}
.bd .regions li > a,.bd .regions li > span.city-name{display: flex; justify-content: space-between; gap: 10px; padding: 8px 0px; border-bottom: 1px solid var(--bd-stone); text-decoration: none; font-weight: 600; font-size: 15px;}
.bd .regions li > span.city-name{color: var(--bd-ink-2); font-weight: 500;}
.bd .regions small{font-family: var(--bd-mono); font-weight: 400; font-size: 12px; color: var(--bd-muted);}
.bd .regions a:hover{text-decoration: underline; text-underline-offset: 4px;}
.bd .fleet-grid{display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 1px; background: var(--bd-line); border: 1px solid var(--bd-line);}
.bd .vclass{background: var(--bd-white); padding: 28px 26px; display: flex; flex-direction: column; gap: 10px;}
.bd .vclass .cap{font-family: var(--bd-mono); font-size: 12.5px; color: var(--bd-muted); letter-spacing: 0.06em; font-variant-numeric: tabular-nums;}
.bd .vclass .cap b{font-family: var(--bd-display); font-size: 40px; font-weight: 500; color: var(--bd-ink); letter-spacing: 0px; line-height: 1; display: block; margin-bottom: 6px;}
.bd .vclass p{color: var(--bd-muted); font-size: 15px;}
.bd .fine{font-size: 13.5px; color: var(--bd-muted); margin-top: 18px; max-width: 90ch;}
.bd .biz{display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 14px;}
.bd .biz > div{background: var(--bd-white); border: 1px solid var(--bd-line); padding: 32px 28px; display: flex; flex-direction: column; gap: 14px;}
.bd .biz p{color: var(--bd-muted); font-size: 15.5px;}
.bd .biz ul{margin: 0px; padding: 0px; list-style: none; display: flex; flex-direction: column; gap: 6px; font-size: 14.5px;}
.bd .biz ul li{padding-left: 18px; position: relative;}
.bd .biz ul li::before{content: ""; position: absolute; left: 0px; top: 0.75em; width: 8px; height: 1px; background: var(--bd-ink);}
.bd .biz .btn{margin-top: auto; align-self: flex-start;}
.bd .faq-grid{display: grid; grid-template-columns: minmax(0px, 0.8fr) minmax(0px, 1.2fr); gap: clamp(32px, 5vw, 80px);}
.bd .faq details{border-bottom: 1px solid var(--bd-line); padding: 22px 0px;}
.bd .faq details:first-child{border-top: 1px solid var(--bd-ink);}
.bd .faq summary{cursor: pointer; font-weight: 700; font-size: 18px; list-style: none; display: flex; justify-content: space-between; gap: 20px;}
.bd .faq summary::-webkit-details-marker{display: none;}
.bd .faq summary::after{content: "+"; font-family: var(--bd-display); font-weight: 400; font-size: 28px; line-height: 0.8; color: var(--bd-muted);}
.bd .faq details[open] summary::after{content: "−";}
.bd .faq details p{margin-top: 12px; color: var(--bd-muted); max-width: 66ch;}
.bd .faq details p a{color: var(--bd-ink);}
.bd .closing .inner{display: grid; grid-template-columns: minmax(0px, 1.3fr) minmax(0px, 1fr); gap: 40px; align-items: end;}
.bd .closing .cta{display: flex; flex-wrap: wrap; gap: 12px; justify-content: flex-end;}
.bd footer{background: var(--bd-base); border-top: 1px solid var(--bd-line); color: var(--bd-photo-ink); padding-block: 72px calc(56px + env(safe-area-inset-bottom,0px)); font-size: 14.5px;}
.bd footer .logo{color: var(--bd-photo-ink);}
.bd .fgrid{display: grid; grid-template-columns: 1.4fr repeat(4, minmax(0px, 1fr)); gap: 36px;}
.bd .fgrid h4{margin: 0px 0px 14px; font-family: var(--bd-mono); font-size: 11.5px; letter-spacing: 0.16em; text-transform: uppercase; color: rgb(164, 157, 146); font-weight: 500;}
.bd .fgrid ul{list-style: none; margin: 0px; padding: 0px; display: flex; flex-direction: column; gap: 8px;}
.bd .fgrid a{text-decoration: none; color: rgba(251, 248, 242, 0.82);}
.bd .fgrid a:hover{color: var(--bd-photo-ink); text-decoration: underline;}
.bd .fgrid address{font-style: normal; color: rgb(164, 157, 146); margin-top: 18px; line-height: 1.75;}
.bd .offices{display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px;}
.bd .offices span{font-family: var(--bd-mono); font-size: 11.5px; letter-spacing: 0.1em; border: 1px solid rgba(251, 248, 242, 0.2); padding: 5px 9px; color: rgb(207, 200, 188);}
.bd .legal{margin-top: 56px; padding-top: 24px; border-top: 1px solid rgba(251, 248, 242, 0.14); display: flex; flex-wrap: wrap; gap: 8px 24px; color: rgb(164, 157, 146); font-size: 13px;}
.bd .legal a{text-decoration: none;}
.bd .mbar{display: none;}
@media (max-width: 1100px){
.bd nav.main{display: none;}
.bd .book-form,.bd .book-form.is-return{grid-template-columns: repeat(4, minmax(0px, 1fr));}
.bd .book-form .f-from,.bd .book-form .f-to{grid-column: span 2;}
.bd .book-form .btn{grid-column: span 1; padding-block: 18px;}
.bd .book-form.is-return .btn{grid-column: span 3;}
.bd .svc-grid{grid-template-columns: 1fr 1fr;}
.bd .svc.tall{grid-area: auto / span 2; min-height: 420px;}
.bd .svc.wide{grid-column: span 2;}
.bd .promises{grid-template-columns: repeat(3, minmax(0px, 1fr));}
.bd .fgrid{grid-template-columns: 1fr 1fr 1fr;}
.bd .fgrid > div:first-child{grid-column: 1 / -1;}
.bd .regions{grid-template-columns: repeat(2, minmax(0px, 1fr));}
.bd .fleet-grid{grid-template-columns: repeat(2, minmax(0px, 1fr));}
}
@media (max-width: 860px){
.bd .top .phone,.bd .locale{display: none;}
.bd .arr-grid,.bd .faq-grid,.bd .network,.bd .closing .inner{grid-template-columns: 1fr;}
.bd .closing .cta{justify-content: flex-start;}
.bd .biz,.bd .more-svc{grid-template-columns: 1fr;}
.bd .fleet-grid{grid-template-columns: 1fr 1fr;}
.bd .facts{grid-template-columns: 1fr 1fr; row-gap: 22px;}
.bd .facts div:nth-child(3){border-left: 0px; padding-left: 0px;}
.bd .steps{grid-template-columns: 1fr;}
.bd .promises{grid-template-columns: 1fr 1fr;}
.bd .mbar{display: flex; position: fixed; left: 0px; right: 0px; bottom: 0px; z-index: 50; gap: 10px; background: rgba(12, 12, 14, 0.94); backdrop-filter: blur(12px); border-top: 1px solid var(--bd-line); padding: 10px max(16px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));}
.bd .mbar .btn{flex: 1 1 0%;}
.bd footer{padding-bottom: calc(110px + env(safe-area-inset-bottom,0px));}
}
@media (max-width: 620px){
:root{--bd-hero-h: clamp(460px,72svh,600px);}
.bd .wrap{padding-left: max(16px,env(safe-area-inset-left,0px)); padding-right: max(16px,env(safe-area-inset-right,0px));}
.bd .top .wrap{height: 64px;}
.bd .logo{width: 118px;}
.bd .top .btn{display: none;}
.bd .hero-copy{padding-bottom: 96px;}
.bd .book{margin-top: -56px;}
.bd .book-form,.bd .book-form.is-return{grid-template-columns: 1fr 1fr;}
.bd .book-form .f-pax,.bd .book-form .btn,.bd .book-form.is-return .btn{grid-column: span 2;}
.bd .book-tabs button{padding: 14px 10px; flex: 1 1 0%;}
.bd .svc-grid{grid-template-columns: 1fr;}
.bd .svc.tall,.bd .svc.wide{grid-column: auto;}
.bd .rail{grid-auto-columns: 78%;}
.bd .regions{grid-template-columns: 1fr;}
.bd .fleet-grid,.bd .promises{grid-template-columns: 1fr;}
.bd .fgrid{grid-template-columns: 1fr 1fr;}
}
@media (prefers-reduced-motion: reduce){
html{scroll-behavior: auto;}
.bd .svc img,.bd .city img{transition: none;}
}
.bd .menu-btn{display: none; background: none; border: 1px solid var(--bd-line); color: var(--bd-ink); font: 600 13px var(--bd-body); letter-spacing: 0.06em; text-transform: uppercase; padding: 9px 12px; cursor: pointer;}
@media (max-width: 1100px){
.bd .menu-btn{display: inline-flex;}
.bd .top.nav-open nav.main{display: flex; position: absolute; left: 0px; right: 0px; top: 100%; flex-direction: column; gap: 0px; background: var(--bd-paper); border-bottom: 1px solid var(--bd-line); padding: 8px max(16px,env(safe-area-inset-right,0px)) 16px max(16px,env(safe-area-inset-left,0px));}
.bd .top.nav-open nav.main a{padding: 12px 0px; border-bottom: 1px solid var(--bd-line); font-size: 16px;}
}
.bd .exp-grid{display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 18px;}
.bd .exp{margin: 0px; display: flex; flex-direction: column; gap: 18px;}
.bd .exp .ph{aspect-ratio: 4 / 5; max-width: 100%; overflow: hidden; background: var(--bd-white);}
.bd .exp .ph img{width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s cubic-bezier(0.2, 0.7, 0.2, 1);}
.bd .exp:hover .ph img{transform: scale(1.03);}
.bd .exp figcaption{display: flex; flex-direction: column; gap: 8px;}
.bd .exp h3{font-size: clamp(22px, 2vw, 28px);}
.bd .exp p{color: var(--bd-muted); font-size: 15.5px; max-width: 40ch;}
@media (max-width: 860px){
.bd .exp-grid{gap: 12px;}
.bd .exp p{font-size: 14.5px;}
}
@media (max-width: 620px){
.bd .exp-grid{grid-template-columns: 1fr; gap: 28px;}
.bd .exp .ph{aspect-ratio: 4 / 4.4;}
}
@media (prefers-reduced-motion: reduce){
.bd .exp .ph img{transition: none;}
}
.bd .vclass .vimg{margin: -28px -26px 8px; aspect-ratio: 16 / 10; max-width: none; overflow: hidden; background: rgb(10, 10, 11); border-bottom: 1px solid var(--bd-line);}
.bd .vclass .vimg img{width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 1s cubic-bezier(0.2, 0.7, 0.2, 1);}
.bd .vclass:hover .vimg img{transform: scale(1.03);}
.bd .vclass .vimg-icon{display: flex; align-items: center; justify-content: center; color: var(--bd-muted); background: radial-gradient(circle at 50% 45%, rgb(29, 29, 33), rgb(10, 10, 11) 70%);}
@media (prefers-reduced-motion: reduce){
.bd .vclass .vimg img{transition: none;}
}
.bd .vclass .models{font-family: var(--bd-mono); font-size: 11.5px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--bd-ink); opacity: 0.72; margin-top: -4px; line-height: 1.5;}
.bd .vclass.wide{grid-column: 1 / -1;}
.bd .vclass.wide .vimg{aspect-ratio: 24 / 7;}
@media (max-width: 620px){
.bd .vclass.wide .vimg{aspect-ratio: 16 / 10;}
}
.bd .fleet-grid.compact{grid-template-columns: repeat(5, minmax(0px, 1fr));}
.bd .fleet-grid.compact .vclass{padding: 22px 20px; gap: 6px;}
.bd .fleet-grid.compact .cap b{font-size: 32px; margin-bottom: 4px;}
.bd .fleet-grid.compact h3{font-size: 20px;}
.bd .fleet-grid.compact p{font-size: 13.5px;}
@media (max-width: 1100px){
.bd .fleet-grid.compact{grid-template-columns: repeat(5, minmax(0px, 1fr));}
.bd .fleet-grid.compact p{display: none;}
}
@media (max-width: 860px){
.bd .fleet-grid.compact{grid-template-columns: repeat(2, minmax(0px, 1fr));}
}
@media (max-width: 620px){
.bd .fleet-grid.compact{grid-template-columns: repeat(2, minmax(0px, 1fr));}
.bd .fleet-grid.compact .vclass{padding: 16px 14px;}
.bd .fleet-grid.compact .cap b{font-size: 26px;}
.bd .fleet-grid.compact h3{font-size: 17px;}
}
.bd .airport-drops{display: grid; grid-template-columns: repeat(4, minmax(0px, 1fr)); gap: 12px; align-items: start;}
.bd .drop{border: 1px solid var(--bd-stone); background: var(--bd-white);}
.bd .drop summary{list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 52px; padding: 12px 16px; font-weight: 600; font-size: 15px;}
.bd .drop summary::-webkit-details-marker{display: none;}
.bd .drop summary small{font-family: var(--bd-mono); font-size: 11px; letter-spacing: 0.06em; color: var(--bd-muted); font-weight: 400; margin-left: auto;}
.bd .drop summary::after{content: ""; width: 8px; height: 8px; border-right: 1.5px solid; border-bottom: 1.5px solid; transform: rotate(45deg) translateY(-2px); transition: transform 0.2s; flex: 0 0 auto;}
.bd .drop[open] summary::after{transform: rotate(225deg) translateY(-2px);}
.bd .drop summary:hover{background: var(--bd-sand);}
.bd .drop summary:focus-visible{outline: 2px solid var(--bd-red); outline-offset: -2px;}
.bd .drop-body{padding: 4px 16px 14px; border-top: 1px solid var(--bd-stone);}
.bd .drop-body h4{margin: 14px 0px 4px; font-family: var(--bd-mono); font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--bd-muted); font-weight: 500;}
.bd .drop-body ul{list-style: none; margin: 0px; padding: 0px;}
.bd .drop-body li > a,.bd .drop-body li > span.city-name{display: flex; justify-content: space-between; gap: 10px; padding: 9px 0px; border-bottom: 1px solid var(--bd-stone); text-decoration: none; font-weight: 600; font-size: 14.5px; min-height: 24px;}
.bd .drop-body li:last-child > *{border-bottom: 0px;}
.bd .drop-body li > span.city-name{color: var(--bd-ink-2); font-weight: 500;}
.bd .drop-body small{font-family: var(--bd-mono); font-weight: 400; font-size: 11.5px; color: var(--bd-muted); white-space: nowrap;}
.bd .drop-body a:hover{text-decoration: underline; text-underline-offset: 4px;}
@media (prefers-reduced-motion: reduce){
.bd .drop summary::after{transition: none;}
}
@media (max-width: 1100px){
.bd .airport-drops{grid-template-columns: repeat(2, minmax(0px, 1fr));}
}
@media (max-width: 620px){
.bd .airport-drops{grid-template-columns: 1fr;}
}
.bd .more-svc{grid-template-columns: repeat(4, minmax(0px, 1fr));}
@media (max-width: 1100px){
.bd .more-svc{grid-template-columns: repeat(2, minmax(0px, 1fr));}
}
@media (max-width: 620px){
.bd .more-svc{grid-template-columns: 1fr;}
}
@media (min-width: 621px){
.bd .drop{position: relative;}
.bd .drop[open]{z-index: 20; border-color: var(--bd-ink);}
.bd .drop-body{position: absolute; left: -1px; right: -1px; top: 100%; min-width: 260px; max-height: min(440px, 60vh); overflow: auto; background: var(--bd-white); border-top-style: ; border-top-width: ; border-right-color: ; border-right-style: ; border-right-width: ; border-bottom-color: ; border-bottom-style: ; border-bottom-width: ; border-left-color: ; border-left-style: ; border-left-width: ; border-image-source: ; border-image-slice: ; border-image-width: ; border-image-outset: ; border-image-repeat: ; border-top-color: var(--bd-stone); box-shadow: rgba(0, 0, 0, 0.45) 0px 18px 40px;}
.bd .airport-drops > .drop:nth-child(4n) .drop-body{left: auto;}
}
.bd .crumbs{font-size: 13.5px; color: var(--bd-muted); padding-block: 18px;}
.bd .crumbs ol{list-style: none; margin: 0px; padding: 0px; display: flex; flex-wrap: wrap; gap: 6px;}
.bd .crumbs li:not(:last-child)::after{content: "/"; margin-left: 6px; color: var(--bd-stone);}
.bd .crumbs a{text-decoration: none;}
.bd .crumbs a:hover{text-decoration: underline;}
.bd .crumbs [aria-current]{color: var(--bd-ink);}
.bd .page-hero .crumbs,.bd .page-hero .crumbs [aria-current]{color: var(--bd-photo-dim);}
.bd .page-hero .crumbs li:not(:last-child)::after{color: rgba(251, 248, 242, 0.4);}
.bd .page-hero{position: relative; height: clamp(420px, 62svh, 600px); overflow: hidden; isolation: isolate; display: flex; flex-direction: column; justify-content: space-between; color: var(--bd-photo-ink); background: var(--bd-base); padding: 0px;}
.bd .page-hero > img{position: absolute; inset: 0px; width: 100%; height: 100%; object-fit: cover; z-index: -2;}
.bd .page-hero::before{content: ""; position: absolute; inset: 0px; z-index: -1; background: linear-gradient(90deg, rgba(21, 20, 19, 0.8) 0%, rgba(21, 20, 19, 0.45) 50%, rgba(21, 20, 19, 0.1) 100%), linear-gradient(0deg, rgba(21, 20, 19, 0.55) 0%, rgba(21, 20, 19, 0) 50%);}
.bd .page-hero .copy{display: flex; flex-direction: column; gap: 18px; max-width: 760px; padding-bottom: clamp(110px, 12vw, 150px);}
.bd .page-hero .eyebrow,.bd .page-hero .lede{color: var(--bd-photo-dim);}
.bd .page-hero h1{font-size: clamp(38px, 5.6vw, 76px);}
.bd .page-hero.short{height: clamp(340px, 46svh, 460px);}
.bd .page-hero.short .copy{padding-bottom: 56px;}
.bd .plain-hero{padding-block: 8px clamp(48px, 6vw, 80px); border-bottom: 1px solid var(--bd-line);}
.bd .plain-hero .copy{display: flex; flex-direction: column; gap: 18px; max-width: 860px;}
.bd .plain-hero h1{font-size: clamp(38px, 5.4vw, 72px);}
.bd .book.compact .book-form{grid-template-columns: 1.3fr 1.3fr 0.8fr 0.6fr 0.6fr auto;}
.bd .glance{display: grid; grid-template-columns: repeat(4, minmax(0px, 1fr)); gap: 1px; background: var(--bd-line); border: 1px solid var(--bd-line); margin-top: 40px;}
.bd .glance div{background: var(--bd-white); padding: 20px 22px; display: flex; flex-direction: column; gap: 4px; min-width: 0px;}
.bd .glance dt{font-family: var(--bd-mono); font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--bd-muted);}
.bd .glance dd{margin: 0px; font-weight: 600; font-size: 16px;}
.bd .glance dd .big{font-family: var(--bd-display); font-weight: 500; font-size: 30px; line-height: 1.1; display: block;}
.bd .layout{display: grid; grid-template-columns: minmax(0px, 1fr) 340px; gap: clamp(32px, 5vw, 72px); align-items: start;}
.bd .layout > aside{position: sticky; top: 110px; display: flex; flex-direction: column; gap: 14px;}
.bd .aside-card{background: var(--bd-white); border: 1px solid var(--bd-line); padding: 24px; display: flex; flex-direction: column; gap: 12px;}
.bd .aside-card h3{font-size: 22px;}
.bd .aside-card p,.bd .aside-card li{font-size: 14.5px; color: var(--bd-muted);}
.bd .aside-card ul{margin: 0px; padding-left: 18px; display: flex; flex-direction: column; gap: 6px;}
.bd .aside-card .btn{width: 100%;}
.bd .stack{display: flex; flex-direction: column; gap: clamp(48px, 6vw, 80px); min-width: 0px;}
.bd .block{display: flex; flex-direction: column; gap: 18px; min-width: 0px;}
.bd .block > h2{font-size: clamp(30px, 3.4vw, 44px);}
.bd .block > p{color: var(--bd-ink-2); max-width: 68ch;}
.bd .tbl-wrap{overflow-x: auto; background: var(--bd-white); border: 1px solid var(--bd-line);}
.bd .data{width: 100%; border-collapse: collapse; font-size: 15px; font-variant-numeric: tabular-nums; min-width: 560px;}
.bd .data th,.bd .data td{text-align: left; padding: 14px 16px; border-bottom: 1px solid var(--bd-line); vertical-align: top;}
.bd .data th{font-family: var(--bd-mono); font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--bd-muted); font-weight: 500; border-bottom: 1px solid var(--bd-ink);}
.bd .data tr:last-child td{border-bottom: 0px;}
.bd .data td:first-child{font-weight: 600;}
.bd .data td small{display: block; color: var(--bd-muted); font-weight: 400; font-size: 13px;}
.bd .table-note{font-size: 13.5px; color: var(--bd-muted);}
.bd .pickup{list-style: none; margin: 0px; padding: 0px; counter-reset: p 0; display: grid; grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 14px;}
.bd .pickup li{counter-increment: p 1; background: var(--bd-white); border: 1px solid var(--bd-line); padding: 22px 22px 22px 70px; position: relative; display: flex; flex-direction: column; gap: 6px;}
.bd .pickup li::before{content: counter(p); position: absolute; left: 22px; top: 18px; font-family: var(--bd-display); font-size: 34px; line-height: 1;}
.bd .pickup b{font-size: 16px;}
.bd .pickup span{color: var(--bd-muted); font-size: 15px;}
.bd .vrows{display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 1px; background: var(--bd-line); border: 1px solid var(--bd-line);}
.bd .vrows div{background: var(--bd-white); padding: 20px 22px; display: flex; flex-direction: column; gap: 4px;}
.bd .vrows b{font-size: 16px;}
.bd .vrows span{font-family: var(--bd-mono); font-size: 12.5px; color: var(--bd-muted);}
.bd .vrows p{font-size: 14.5px; color: var(--bd-muted);}
.bd .links{display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 12px;}
.bd .links a{background: var(--bd-white); border: 1px solid var(--bd-line); padding: 18px 20px; text-decoration: none; display: flex; flex-direction: column; gap: 4px; transition: border-color 0.2s;}
.bd .links a:hover{border-color: var(--bd-ink);}
.bd .links b{font-size: 16px;}
.bd .links span{font-size: 13.5px; color: var(--bd-muted);}
.bd .links small{font-family: var(--bd-mono); font-size: 11.5px; letter-spacing: 0.1em; color: var(--bd-muted);}
.bd .ccards{display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 14px;}
.bd .ccard{background: var(--bd-white); border: 1px solid var(--bd-line); text-decoration: none; display: flex; flex-direction: column; transition: border-color 0.2s;}
.bd .ccard:hover{border-color: var(--bd-ink);}
.bd .ccard .ph{aspect-ratio: 16 / 10; max-width: 100%; overflow: hidden; background: var(--bd-sand);}
.bd .ccard .ph img{width: 100%; height: 100%; object-fit: cover;}
.bd .ccard .ph.blank{display: flex; align-items: flex-end; padding: 16px; font-family: var(--bd-display); font-size: 44px; color: var(--bd-stone);}
.bd .ccard .tx{padding: 20px 22px; display: flex; flex-direction: column; gap: 6px;}
.bd .ccard .tx small{font-family: var(--bd-mono); font-size: 11.5px; letter-spacing: 0.12em; color: var(--bd-muted);}
.bd .ccard .tx p{font-size: 14.5px; color: var(--bd-muted);}
.bd .ticket{display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 20px; background: var(--bd-white); border: 1px solid var(--bd-line); padding: 26px 28px; margin-top: 36px; max-width: 760px;}
.bd .ticket .end{display: flex; flex-direction: column; gap: 2px;}
.bd .ticket .end:last-child{text-align: right;}
.bd .ticket .code{font-family: var(--bd-display); font-size: clamp(40px, 5vw, 60px); line-height: 1;}
.bd .ticket .code.word{font-size: clamp(30px, 3.6vw, 46px); font-style: italic;}
.bd .ticket small{font-family: var(--bd-mono); font-size: 11.5px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--bd-muted);}
.bd .ticket .mid{display: flex; flex-direction: column; align-items: center; gap: 6px; font-family: var(--bd-mono); font-size: 12.5px; color: var(--bd-muted); text-align: center;}
.bd .ticket .mid i{display: block; width: clamp(60px, 12vw, 160px); height: 1px; background: var(--bd-ink); position: relative;}
.bd .ticket .mid i::after{content: ""; position: absolute; right: -1px; top: -4px; border-top: 4.5px solid transparent; border-bottom: 4.5px solid transparent; border-image: none; border-left: 7px solid var(--bd-ink); border-right: 0px;}
.bd .incl{display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 1px; background: var(--bd-line); border: 1px solid var(--bd-line);}
.bd .incl div{background: var(--bd-white); padding: 22px; display: flex; flex-direction: column; gap: 6px;}
.bd .incl b{font-size: 16px;}
.bd .incl span{font-size: 14.5px; color: var(--bd-muted);}
.bd .faq-index{display: flex; flex-wrap: wrap; gap: 8px;}
.bd .faq-index a,.bd .chips button{border: 1px solid var(--bd-line); background: var(--bd-white); padding: 8px 14px; font: 600 14px var(--bd-body); text-decoration: none; color: var(--bd-ink); cursor: pointer;}
.bd .faq-index a:hover,.bd .chips button:hover{border-color: var(--bd-ink);}
.bd .chips{display: flex; flex-wrap: wrap; gap: 8px;}
.bd .chips button[aria-pressed="true"]{background: var(--bd-ink); color: var(--bd-paper); border-color: var(--bd-ink);}
.bd .faq-group{display: grid; grid-template-columns: minmax(0px, 0.55fr) minmax(0px, 1.45fr); gap: clamp(24px, 4vw, 64px); padding-block: 40px; border-top: 1px solid var(--bd-line);}
.bd .faq-group h2{font-size: clamp(26px, 2.8vw, 36px);}
.bd .faq-group .faq details:first-child{border-top: 1px solid var(--bd-ink);}
.bd .posts{display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 14px;}
.bd .post{background: var(--bd-white); border: 1px solid var(--bd-line); text-decoration: none; display: flex; flex-direction: column; transition: border-color 0.2s;}
.bd .post:hover{border-color: var(--bd-ink);}
.bd .post .ph{aspect-ratio: 16 / 10; max-width: 100%; overflow: hidden; background: var(--bd-sand);}
.bd .post .ph img{width: 100%; height: 100%; object-fit: cover;}
.bd .post .tx{padding: 20px 22px 24px; display: flex; flex-direction: column; gap: 8px; flex: 1 1 0%;}
.bd .post .tx h3{font-size: 22px;}
.bd .post .tx p{font-size: 14.5px; color: var(--bd-muted);}
.bd .post .meta{font-family: var(--bd-mono); font-size: 11.5px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--bd-muted); margin-top: auto; padding-top: 6px;}
.bd .post.feature{grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0px, 1.2fr) minmax(0px, 1fr);}
.bd .post.feature .ph{aspect-ratio: auto; min-height: 340px;}
.bd .post.feature .tx{padding: 36px; justify-content: center;}
.bd .post.feature .tx h3{font-size: clamp(28px, 3vw, 40px);}
.bd .article-head{max-width: 820px; display: flex; flex-direction: column; gap: 18px;}
.bd .byline{display: flex; flex-wrap: wrap; gap: 6px 18px; font-size: 14px; color: var(--bd-muted);}
.bd .byline b{color: var(--bd-ink);}
.bd .prose{max-width: 68ch; font-size: 17.5px; line-height: 1.75; color: var(--bd-ink-2);}
.bd .prose > * + *{margin-top: 1.1em;}
.bd .prose h2{font-size: clamp(28px, 3vw, 36px); margin-top: 1.8em; color: var(--bd-ink);}
.bd .prose h3{font-size: 22px; margin-top: 1.4em; color: var(--bd-ink);}
.bd .prose ul,.bd .prose ol{padding-left: 1.2em;}
.bd .prose li + li{margin-top: 0.4em;}
.bd .prose a{color: var(--bd-ink); text-underline-offset: 3px;}
.bd .prose .callout{background: var(--bd-white); border-top-color: ; border-top-style: ; border-top-width: ; border-right-color: ; border-right-style: ; border-right-width: ; border-bottom-color: ; border-bottom-style: ; border-bottom-width: ; border-image-source: ; border-image-slice: ; border-image-width: ; border-image-outset: ; border-image-repeat: ; border-left: 3px solid var(--bd-ink); padding: 16px 20px; font-size: 16px;}
.bd .prose figure{margin: 1.6em 0px;}
.bd .prose figcaption{font-size: 13.5px; color: var(--bd-muted); margin-top: 8px;}
.bd .toc{background: var(--bd-white); border: 1px solid var(--bd-line); padding: 20px 22px;}
.bd .toc ol{margin: 8px 0px 0px; padding-left: 18px; display: flex; flex-direction: column; gap: 6px; font-size: 14.5px;}
.bd .toc a{text-decoration: none;}
.bd .toc a:hover{text-decoration: underline;}
.bd .verify{border: 1px dashed var(--bd-stone); background: var(--bd-sand); padding: 12px 16px; font-size: 13.5px; color: var(--bd-ink-2);}
.bd .verify b{font-family: var(--bd-mono); font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; margin-right: 6px;}
@media (max-width: 1100px){
.bd .layout{grid-template-columns: minmax(0px, 1fr);}
.bd .layout > aside{position: static;}
.bd .book.compact .book-form{grid-template-columns: repeat(4, minmax(0px, 1fr));}
.bd .ccards,.bd .posts,.bd .vrows,.bd .incl{grid-template-columns: 1fr 1fr;}
.bd .glance{grid-template-columns: 1fr 1fr;}
}
@media (max-width: 860px){
.bd .pickup{grid-template-columns: 1fr;}
.bd .faq-group{grid-template-columns: 1fr;}
.bd .post.feature{grid-template-columns: 1fr;}
.bd .post.feature .ph{min-height: 240px;}
}
@media (max-width: 620px){
.bd .ccards,.bd .posts,.bd .vrows,.bd .incl,.bd .glance{grid-template-columns: 1fr;}
.bd .book.compact .book-form{grid-template-columns: 1fr 1fr;}
.bd .ticket{grid-template-columns: 1fr; text-align: left;}
.bd .ticket .end:last-child{text-align: left;}
.bd .ticket .mid{align-items: flex-start;}
.bd .page-hero{height: clamp(380px, 60svh, 480px);}
.bd .page-hero .copy{padding-bottom: 80px;}
.bd .page-hero.short{height: clamp(300px, 44svh, 380px);}
.bd .prose{font-size: 17px;}
}
.bd .feature-split{display: grid; grid-template-columns: minmax(0px, 1.1fr) minmax(0px, 1fr); gap: clamp(28px, 4vw, 64px); align-items: center;}
.bd .feature-split .ph{aspect-ratio: 4 / 3; max-width: 100%; overflow: hidden; background: var(--bd-white);}
.bd .feature-split .ph img{width: 100%; height: 100%; object-fit: cover;}
.bd .feature-split .tx{display: flex; flex-direction: column; gap: 16px; min-width: 0px;}
.bd .feature-split .tx p{color: var(--bd-ink-2); max-width: 56ch;}
.bd .feature-split .specs{display: flex; flex-wrap: wrap; gap: 8px;}
.bd .feature-split .specs span{font-family: var(--bd-mono); font-size: 12px; letter-spacing: 0.06em; border: 1px solid var(--bd-line); background: var(--bd-white); padding: 5px 10px;}
@media (max-width: 860px){
.bd .feature-split{grid-template-columns: 1fr;}
}
/* WordPress integration */
body:has(.bd){background:var(--bd-paper)}
.elementor-location-header{position:sticky;top:var(--wp-admin--admin-bar--height,0px);z-index:40}
.elementor-location-header .bd .top{position:relative;top:auto}
.e-con:has(> .elementor-widget-html > .elementor-widget-container > .bd), .e-con:has(> .e-con-inner > .elementor-widget-html > .elementor-widget-container > .bd){--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--gap:0px;--content-width:100%}
.elementor-widget-html:has(.bd){width:100%}
.bd a:focus-visible,.bd button:focus-visible,.bd input:focus-visible,.bd select:focus-visible{outline:2px solid var(--bd-ink);outline-offset:3px}
.bd{color-scheme:dark}
/* keep kit globals (for not-yet-ported Elementor pages) out of the design */
.bd h1,.bd h2,.bd h3,.bd h4,.bd h5,.bd h6{color:inherit}
.bd h4,.bd h5,.bd h6{font-family:var(--bd-body)}
/* long-form content inside the design */
.bd .prose img{width:100%;height:auto;display:block}
.bd .prose table{width:100%;border-collapse:collapse;font-size:15.5px;line-height:1.5}
.bd .prose th,.bd .prose td{border:1px solid var(--bd-line);padding:10px 12px;text-align:left;vertical-align:top}
.bd .prose th{background:var(--bd-white);color:var(--bd-ink);font-weight:600}
.bd .prose h4{font-family:var(--bd-body);font-weight:700;font-size:17px;color:var(--bd-ink);margin-top:1.3em}
.bd .prose strong,.bd .prose b{color:var(--bd-ink)}
.bd .prose blockquote{border-left:3px solid var(--bd-red);margin:1.4em 0;padding:4px 0 4px 18px;color:var(--bd-ink)}
.bd .prose .tablewrap{overflow-x:auto}
.bd .hero-fig{margin:0}.bd .hero-fig div{aspect-ratio:21/9;overflow:hidden;background:var(--bd-sand)}.bd .hero-fig img{width:100%;height:100%;object-fit:cover}
/* Elementor widgets inside the design (forms, post grid, maps) */
.bd .elementor-form{font-family:var(--bd-body)}
.bd .elementor-form .elementor-field-group > label,.bd .elementor-form .elementor-field-label{color:var(--bd-ink)!important;font:600 14px var(--bd-body)!important}
.bd .elementor-form .elementor-field-textual,.bd .elementor-form select,.bd .elementor-form textarea{background:var(--bd-white)!important;color:var(--bd-ink)!important;border:1px solid var(--bd-stone)!important;border-radius:0!important;font:400 15.5px var(--bd-body)!important;min-height:48px}
.bd .elementor-form .elementor-field-textual:focus,.bd .elementor-form select:focus{border-color:var(--bd-ink)!important;outline:2px solid var(--bd-ink);outline-offset:1px}
.bd .elementor-form ::placeholder{color:var(--bd-muted)!important;opacity:1}
.bd .elementor-form .elementor-button{background:var(--bd-red-btn)!important;color:#fff!important;border-radius:0!important;font:700 13.5px/1 var(--bd-body)!important;letter-spacing:.08em;text-transform:uppercase;padding:17px 26px!important;min-height:50px}
.bd .elementor-form .elementor-button:hover{background:var(--bd-red-btn-hover)!important}
.bd .elementor-form .elementor-field-option label,.bd .elementor-form .elementor-field-subgroup label{color:var(--bd-ink-2)}
.bd .elementor-form .elementor-message-success{color:var(--bd-ink)}
.bd .elementor-widget-google_maps iframe{filter:grayscale(1) invert(.9) contrast(.9);min-height:420px}
.bd .elementor-widget-form,.bd .elementor-widget-google_maps{flex:1 1 0;min-width:0}
.bd .elementor-loop-container .e-loop-item,.bd .elementor-loop-container .e-loop-item > .e-con{background:var(--bd-white)!important;border:1px solid var(--bd-line)}
.bd .elementor-loop-container .elementor-heading-title,.bd .elementor-loop-container a{color:var(--bd-ink)!important;font-family:var(--bd-display)!important}
.bd .elementor-loop-container p,.bd .elementor-loop-container .elementor-widget-text-editor,.bd .elementor-loop-container .elementor-post-info{color:var(--bd-muted)!important;font-family:var(--bd-body)!important}
.bd .elementor-loop-container .elementor-button{background:transparent!important;color:var(--bd-ink)!important;border:1px solid var(--bd-ink)!important;border-radius:0!important;font:700 12.5px/1 var(--bd-body)!important;letter-spacing:.08em;text-transform:uppercase}
.bd .e-loop__load-more .elementor-button,.bd .elementor-pagination a{color:var(--bd-ink)!important}
/* Travel Partners page on the dark design */
.bdp{--ink:#F4F2EE;--tx:#D6D2CA;--mu:#ADA9A1;--ln:#34343A;--sf:#212125;--r:#EF3937;color:var(--tx)}
.bdp a{color:var(--ink)}.bdp a:hover{color:#fff}
.bdp .bdp-eyebrow{font-family:"IBM Plex Mono",ui-monospace,monospace!important;font-size:12px;letter-spacing:.16em;color:var(--mu)!important;font-weight:500}
.bdp-card,.bdp-sol,.bdp-steps li{background:#212125!important;border-color:#34343A!important}
.bdp-card{border-top:3px solid var(--r)!important;border-radius:0!important}.bdp-sol,.bdp-steps li,.bdp-note,.bdp-touch li{border-radius:0!important}
.bdp-steps li:before{background:#D02725!important}
.bdp .bdp-btn{border-radius:0!important;font:700 13.5px/1 Manrope,sans-serif!important;letter-spacing:.08em;text-transform:uppercase}
.bdp .bdp-btn--primary{background:#D02725!important}.bdp .bdp-btn--primary:hover{background:#AB1E1C!important}
body.page-id-462{background:#18181B}
body.page-id-462 #partner-enquiry .elementor-field-group .elementor-field-label{color:#F4F2EE!important}
body.page-id-462 #partner-enquiry .elementor-field-textual,body.page-id-462 #partner-enquiry select{background:#212125!important;color:#F4F2EE!important;border:1px solid #46443F!important;border-radius:0!important}
body.page-id-462 #partner-enquiry .elementor-field-option label,body.page-id-462 .bdp-formnote{color:#D6D2CA!important}
body.page-id-462 #partner-enquiry .elementor-button{border-radius:0!important;font:700 13.5px/1 Manrope,sans-serif!important;letter-spacing:.08em;text-transform:uppercase}
/* booking card with the live Moovs booking form */
.bd .book-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:12px 32px;padding:26px 26px 20px;border-bottom:1px solid var(--bd-line)}
.bd .book-title{font-size:clamp(26px,3vw,36px)}
.bd .book-sub{max-width:52ch;color:var(--bd-muted);font-size:15px}
.bd .book-frame{background:#fff}
.bd .book-frame iframe{min-height:950px}
@media (max-width:760px){.bd .book-frame iframe{height:1100px!important;min-height:1100px}}
.bd .book-cta .cta-row{display:flex;flex-wrap:wrap;gap:12px}
.bd .book-cta .book-note{padding:14px 26px;display:flex;flex-wrap:wrap;gap:6px 22px;color:var(--bd-muted);font-size:14px}
@media (max-width:760px){.bd .book-cta .cta-row .btn{width:100%}}
/* booking widget address search */
.bd .field.ac{position:relative}
.bd .ac-list{position:absolute;left:0;right:0;top:100%;z-index:30;margin:0;padding:6px 0;list-style:none;background:var(--bd-white);border:1px solid var(--bd-stone);box-shadow:0 18px 40px -18px rgba(0,0,0,.75);max-height:340px;overflow:auto;min-width:280px}
.bd .ac-list li{padding:10px 14px;cursor:pointer;display:flex;flex-direction:column;gap:2px;text-align:left}
.bd .ac-list li b{font-weight:600;font-size:14.5px;color:var(--bd-ink)}
.bd .ac-list li span{font-size:12.5px;color:var(--bd-muted)}
.bd .ac-list li[aria-selected="true"],.bd .ac-list li:hover{background:var(--bd-line)}
.bd .book,.bd .book-form{overflow:visible}
/* booking widget fields: keep the design's field style over the global form defaults */
.bd .field input,.bd .field select{background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;color:var(--bd-ink)!important;font:600 16px var(--bd-body)!important;padding:2px 0!important;min-height:0!important;width:100%;color-scheme:dark}
.bd .field select option{background:var(--bd-white);color:var(--bd-ink)}
.bd .field input::placeholder{color:rgba(244,242,238,.45)!important}/* End custom CSS */