/* Plus Jakarta Sans and Kaushan Script are licensed under the SIL Open Font License 1.1 */
@font-face { font-family: 'Plus Jakarta Sans'; font-style: normal; font-weight: 400; font-display: swap; src: url(/assets/fonts/plus-jakarta-sans-400-800.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Plus Jakarta Sans'; font-style: normal; font-weight: 500; font-display: swap; src: url(/assets/fonts/plus-jakarta-sans-400-800.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Plus Jakarta Sans'; font-style: normal; font-weight: 600; font-display: swap; src: url(/assets/fonts/plus-jakarta-sans-400-800.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Plus Jakarta Sans'; font-style: normal; font-weight: 700; font-display: swap; src: url(/assets/fonts/plus-jakarta-sans-400-800.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Plus Jakarta Sans'; font-style: normal; font-weight: 800; font-display: swap; src: url(/assets/fonts/plus-jakarta-sans-400-800.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Kaushan Script'; font-style: normal; font-weight: 400; font-display: swap; src: url(/assets/fonts/kaushan-script-400.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

/* Infinity Travels site styles */

body { margin: 0; }

a { color: #1C6699; }
a:hover { color: #0C4575; }

h1, h2, h3 { letter-spacing: -.02em; }

/* form labels and fields */
.lb { display: block; font-size: 13px; font-weight: 700; letter-spacing: .02em; color: #0C4575; margin-bottom: 6px; }
.f { width: 100%; height: 52px; box-sizing: border-box; border: 1.5px solid #8A94A8; border-radius: 12px; padding: 0 14px; font: inherit; font-size: 16px; color: #0C4575; background: #FFFFFF; }
.f:focus { outline: 3px solid #3F9FD2; outline-offset: 1px; border-color: #0C4575; }

.btn { cursor: pointer; }
.btn:hover { filter: brightness(.95); }

/* picture zoom on card hover */
.zoom { transition: transform .5s ease; }
a:hover .zoom { transform: scale(1.05); }

/* sideways scrolling card row */
.rail { scrollbar-width: none; scroll-snap-type: x proximity; }
.rail::-webkit-scrollbar { display: none; }

/* questions list */
details > summary { list-style: none; cursor: pointer; }
details > summary::-webkit-details-marker { display: none; }
details[open] .chev { transform: rotate(180deg); }

/* home page: desktop layout above 760px, mobile layout below */
.v-mobile { display: none; }

@media (max-width: 760px) {
  .v-desktop { display: none; }
  .v-mobile { display: block; }
  .d-only { display: none !important; }
  .m-only { display: flex !important; }
  .mbar { display: grid !important; }
  .hd-row { padding: 8px 10px 8px 18px !important; }
  .bn-img { width: 100% !important; }
  .bn-scrim { background: linear-gradient(180deg, rgba(10, 51, 80, .93) 0%, rgba(10, 51, 80, .82) 55%, rgba(10, 51, 80, .55) 100%) !important; }
  .card-pad { padding: 20px !important; }
  .fgrid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 14px 12px !important; }
  .side-pad { padding-top: 0 !important; }
  .sec { padding-top: 48px !important; padding-bottom: 48px !important; }
  .pills button { padding: 0 15px !important; font-size: 15px !important; }
  .m-stack { flex-direction: column !important; align-items: stretch !important; }
  .m-h { height: 260px !important; }
}

/* header: switch to the menu button before the links run out of room */
@media (max-width: 900px) {
  header .d-only { display: none !important; }
  header .m-only { display: flex !important; }
  header .hd-row { padding: 8px 10px 8px 18px !important; }
}

/* very narrow phones */
@media (max-width: 340px) {
  .pills button { padding: 0 10px !important; font-size: 14px !important; }
}

/* closed menu, inactive search tab */
.is-off,
header .m-only.is-off { display: none !important; }
