.rpt-faq-page{--fq-deep:#031711;--fq-forest:#082d22;--fq-mid:#164638;--fq-sage:#a7c8b8;--fq-pale:#deebe5;--fq-gold:#c9aa63;--fq-cream:#f3f1e9;--fq-ink:#10251f;--fq-muted:#567167;background:#fff;color:var(--fq-ink)}
.rpt-faq-hero{position:relative;overflow:hidden;min-height:720px;display:flex;align-items:center;padding:82px 0 90px;background:radial-gradient(circle at 82% 27%,rgba(167,200,184,.17),transparent 31%),radial-gradient(circle at 18% 82%,rgba(201,170,99,.08),transparent 30%),linear-gradient(135deg,#02120e 0%,#082b21 58%,#031711 100%);color:#fff;isolation:isolate}
.rpt-faq-hero::before{content:"";position:absolute;inset:0;z-index:-2;background-image:linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(to bottom,#000 15%,transparent 95%)}
.rpt-faq-hero__question{position:absolute;right:-1vw;bottom:-16%;color:rgba(255,255,255,.024);font-size:clamp(380px,44vw,720px);font-weight:950;line-height:.8;letter-spacing:-.1em;pointer-events:none}
.rpt-faq-hero__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(390px,.95fr);gap:clamp(48px,7vw,100px);align-items:center}
.rpt-faq-eyebrow{display:flex;align-items:center;gap:14px;margin-bottom:25px;color:var(--fq-sage);font-size:10px;font-weight:950;letter-spacing:.18em;text-transform:uppercase}.rpt-faq-eyebrow::before{content:"";width:42px;height:1px;background:currentColor}.rpt-faq-eyebrow b{padding:7px 10px;border:1px solid rgba(167,200,184,.22);border-radius:999px;color:rgba(255,255,255,.66);font-size:9px;letter-spacing:.11em}
.rpt-faq-hero__title{max-width:810px;margin:0;font-size:clamp(58px,6.6vw,106px);font-weight:950;line-height:.88;letter-spacing:-.064em}.rpt-faq-hero__title span{display:block}.rpt-faq-hero__soft{color:var(--fq-sage)}
.rpt-faq-hero__intro{max-width:680px;margin:28px 0 0;color:rgba(255,255,255,.74);font-size:17px;line-height:1.75}
.rpt-faq-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.rpt-faq-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:14px 22px;border:1px solid transparent;border-radius:999px;font-size:11px;font-weight:950;letter-spacing:.1em;text-decoration:none!important;text-transform:uppercase;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}.rpt-faq-btn:hover{transform:translateY(-2px)}.rpt-faq-btn--light{background:linear-gradient(135deg,var(--fq-sage),#e3efe9);color:var(--fq-deep)!important;box-shadow:0 16px 42px rgba(167,200,184,.17)}.rpt-faq-btn--ghost{border-color:rgba(255,255,255,.22);background:rgba(255,255,255,.045);color:#fff!important}
.rpt-faq-desk{position:relative;min-height:485px;padding:42px;border:1px solid rgba(255,255,255,.13);border-radius:42px;background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.035));backdrop-filter:blur(14px);box-shadow:0 35px 90px rgba(0,0,0,.28);animation:rptFaqFloat 7s ease-in-out infinite}.rpt-faq-desk::before{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.09);border-radius:31px;pointer-events:none}.rpt-faq-desk__top{position:relative;z-index:2;display:flex;align-items:center;gap:12px;color:var(--fq-sage);font-size:10px;font-weight:950;letter-spacing:.16em;text-transform:uppercase}.rpt-faq-desk__top img{width:46px;height:46px;object-fit:contain}.rpt-faq-desk>strong{position:relative;z-index:2;display:block;margin-top:70px;font-size:clamp(35px,3.2vw,50px);line-height:.98;letter-spacing:-.055em}.rpt-faq-desk__stats{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:56px;border:1px solid rgba(255,255,255,.1);border-radius:20px;overflow:hidden;background:rgba(255,255,255,.08)}.rpt-faq-desk__stats div{padding:18px;background:rgba(3,23,17,.68)}.rpt-faq-desk__stats b{display:block;color:var(--fq-sage);font-size:25px}.rpt-faq-desk__stats small{display:block;margin-top:5px;color:rgba(255,255,255,.52);font-size:9px;line-height:1.35}.rpt-faq-desk__line{position:absolute;z-index:2;left:42px;right:42px;bottom:32px;display:flex;align-items:center;gap:12px}.rpt-faq-desk__line span{width:34px;height:1px;background:var(--fq-gold)}.rpt-faq-desk__line em{color:rgba(255,255,255,.48);font-size:9px;font-style:normal;font-weight:850;letter-spacing:.11em;text-transform:uppercase}
.rpt-faq-section{padding:108px 0}.rpt-faq-section--library{background:var(--fq-cream)}.rpt-faq-section--routes{background:#fff}.rpt-faq-library-head{display:grid;grid-template-columns:1fr .82fr;gap:70px;align-items:end;margin-bottom:44px}.rpt-faq-kicker{display:inline-flex;align-items:center;gap:12px;margin-bottom:17px;color:#527d6d;font-size:10px;font-weight:950;letter-spacing:.18em;text-transform:uppercase}.rpt-faq-kicker::before{content:"";width:36px;height:1px;background:currentColor}.rpt-faq-library-head h2,.rpt-faq-final h2{margin:0;font-size:clamp(44px,5.3vw,78px);line-height:.94;letter-spacing:-.06em}.rpt-faq-library-head h2 em,.rpt-faq-final h2 em{color:#77a08f;font-style:normal}.rpt-faq-library-head>p{margin:0;color:var(--fq-muted);font-size:16px;line-height:1.72}
.rpt-faq-search-shell{position:sticky;top:calc(var(--rpt-header-height,82px) + 16px);z-index:10;margin-bottom:56px;padding:15px;border:1px solid #dce4e0;border-radius:28px;background:rgba(255,255,255,.94);box-shadow:0 18px 48px rgba(16,37,31,.08);backdrop-filter:blur(14px)}.rpt-faq-search{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:0 16px;min-height:56px;border:1px solid #d8e2dd;border-radius:18px;background:#fff}.rpt-faq-search svg{width:22px;height:22px;fill:none;stroke:#5d7e71;stroke-width:1.7}.rpt-faq-search input{width:100%;min-width:0;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;color:var(--fq-ink);font:inherit;font-size:15px}.rpt-faq-search input::placeholder{color:#829a90}.rpt-faq-search button{border:0;background:transparent;color:#456e5f;font-size:10px;font-weight:950;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}.rpt-faq-filter-row{display:flex;flex-wrap:wrap;gap:8px;padding:12px 2px 2px}.rpt-faq-filter-row button{min-height:38px;padding:9px 13px;border:1px solid #d6e0db;border-radius:999px;background:#f8faf9;color:#45675b;font-size:9px;font-weight:950;letter-spacing:.08em;cursor:pointer;text-transform:uppercase;transition:.2s ease}.rpt-faq-filter-row button:hover,.rpt-faq-filter-row button.is-active{border-color:var(--fq-deep);background:var(--fq-deep);color:#fff}.rpt-faq-search-status{position:absolute;right:22px;bottom:-31px;color:#6e877d;font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.rpt-faq-search-status strong{color:var(--fq-deep)}
.rpt-faq-groups{display:grid;gap:24px}.rpt-faq-group{display:grid;grid-template-columns:minmax(250px,.38fr) minmax(0,.62fr);gap:32px;padding:34px;border:1px solid #dce4e0;border-radius:34px;background:#fff;box-shadow:0 15px 45px rgba(16,37,31,.045)}.rpt-faq-group__head{display:grid;grid-template-columns:52px 1fr;gap:16px;align-content:start}.rpt-faq-group__head--no-number{grid-template-columns:1fr}.rpt-faq-group__number{width:52px;height:52px;display:grid;place-items:center;border-radius:16px;background:#e4eee9;color:#315d4d;font-size:12px;font-weight:950;letter-spacing:.1em}.rpt-faq-group__head span{display:block;margin:6px 0 10px;color:#729487;font-size:9px;font-weight:950;letter-spacing:.15em;text-transform:uppercase}.rpt-faq-group__head h3{margin:0;font-size:30px;line-height:1;letter-spacing:-.045em}.rpt-faq-group__head p{margin:15px 0 0;color:#668077;font-size:13px;line-height:1.6}.rpt-faq-accordion{display:grid;gap:9px}.rpt-faq-item{border:1px solid #dce4e0;border-radius:20px;background:#fbfcfb;overflow:hidden}.rpt-faq-item[hidden]{display:none}.rpt-faq-item summary{list-style:none;display:grid;grid-template-columns:1fr 38px;gap:14px;align-items:center;min-height:70px;padding:15px 16px 15px 20px;cursor:pointer;color:var(--fq-ink);font-size:14px;font-weight:900;line-height:1.35}.rpt-faq-item summary::-webkit-details-marker{display:none}.rpt-faq-item summary i{position:relative;width:38px;height:38px;border-radius:50%;background:#e3ede8}.rpt-faq-item summary i::before,.rpt-faq-item summary i::after{content:"";position:absolute;left:50%;top:50%;width:13px;height:1.5px;background:#315d4d;transform:translate(-50%,-50%);transition:transform .25s ease}.rpt-faq-item summary i::after{transform:translate(-50%,-50%) rotate(90deg)}.rpt-faq-item[open]{border-color:#a7c8b8;background:#fff}.rpt-faq-item[open] summary i{background:var(--fq-deep)}.rpt-faq-item[open] summary i::before,.rpt-faq-item[open] summary i::after{background:#fff}.rpt-faq-item[open] summary i::after{transform:translate(-50%,-50%) rotate(0)}.rpt-faq-item__answer{padding:0 70px 21px 20px}.rpt-faq-item__answer p{margin:0;color:#58736a;font-size:13.5px;line-height:1.72}.rpt-faq-empty{padding:46px;border:1px dashed #b8c9c1;border-radius:30px;text-align:center;background:#f7faf8}.rpt-faq-empty span{display:block;color:#729487;font-size:9px;font-weight:950;letter-spacing:.16em;text-transform:uppercase}.rpt-faq-empty strong{display:block;margin:12px 0 18px;font-size:27px;letter-spacing:-.04em}.rpt-faq-empty a{color:#315d4d;font-size:10px;font-weight:950;letter-spacing:.1em;text-decoration:none;text-transform:uppercase}
.rpt-faq-routes{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.rpt-faq-route{position:relative;min-height:330px;padding:28px;border:1px solid #dce4e0;border-radius:30px;background:#f8faf8;color:var(--fq-ink);text-decoration:none!important;overflow:hidden;transition:transform .28s ease,box-shadow .28s ease}.rpt-faq-route:hover{transform:translateY(-5px);box-shadow:0 20px 55px rgba(16,37,31,.11)}.rpt-faq-route>span{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:#e1ece7;color:#315d4d;font-size:10px;font-weight:950}.rpt-faq-route small{display:block;margin-top:70px;color:#6e9183;font-size:9px;font-weight:950;letter-spacing:.16em;text-transform:uppercase}.rpt-faq-route strong{display:block;margin-top:11px;max-width:300px;font-size:27px;line-height:1.02;letter-spacing:-.045em}.rpt-faq-route p{max-width:330px;margin:14px 0 0;color:#607b71;font-size:13px;line-height:1.6}.rpt-faq-route>b{position:absolute;right:24px;bottom:22px;font-size:22px}.rpt-faq-route--dark{border-color:#0b3428;background:#08291f;color:#fff!important}.rpt-faq-route--dark:visited,.rpt-faq-route--dark:hover,.rpt-faq-route--dark:focus{color:#fff!important}.rpt-faq-route--dark>span{background:rgba(255,255,255,.08);color:var(--fq-sage)}.rpt-faq-route--dark small{color:var(--fq-gold)}.rpt-faq-route--dark strong,.rpt-faq-route--dark>b{color:#fff!important}.rpt-faq-route--dark p{color:rgba(255,255,255,.68)}.rpt-faq-route--sage{background:#dce9e3}.rpt-faq-route--sage>span{background:rgba(255,255,255,.55)}
.rpt-faq-final{padding:86px 0;background:#041b15;color:#fff}.rpt-faq-final__inner{display:grid;grid-template-columns:1.05fr .95fr;gap:65px;align-items:center;padding:52px;border:1px solid rgba(255,255,255,.1);border-radius:36px;background:linear-gradient(130deg,rgba(255,255,255,.07),rgba(255,255,255,.025))}.rpt-faq-final .rpt-faq-kicker{color:var(--fq-gold)}.rpt-faq-final h2 em{color:var(--fq-sage)}.rpt-faq-final p{max-width:660px;margin:20px 0 0;color:rgba(255,255,255,.65);font-size:15px;line-height:1.7}.rpt-faq-final__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px}
.rpt-faq-enter{opacity:0;transform:translateY(26px)}.rpt-faq-page.is-faq-live .rpt-faq-enter{animation:rptFaqEnter .85s cubic-bezier(.2,.8,.2,1) forwards}.rpt-faq-page.is-faq-live .rpt-faq-delay-1{animation-delay:.05s}.rpt-faq-page.is-faq-live .rpt-faq-delay-2{animation-delay:.16s}.rpt-faq-page.is-faq-live .rpt-faq-delay-3{animation-delay:.29s}.rpt-faq-page.is-faq-live .rpt-faq-delay-4{animation-delay:.43s}.rpt-faq-reveal{opacity:0;transform:translateY(24px);transition:opacity .72s ease,transform .72s cubic-bezier(.2,.8,.2,1)}.rpt-faq-reveal.is-visible{opacity:1;transform:none}
@keyframes rptFaqEnter{to{opacity:1;transform:none}}@keyframes rptFaqFloat{0%,100%{transform:translateY(0) rotate(.2deg)}50%{transform:translateY(-12px) rotate(-.2deg)}}
@media(max-width:1040px){.rpt-faq-hero__grid,.rpt-faq-library-head,.rpt-faq-final__inner{grid-template-columns:1fr}.rpt-faq-hero__visual{max-width:580px}.rpt-faq-group{grid-template-columns:1fr}.rpt-faq-group__head{max-width:620px}.rpt-faq-routes{grid-template-columns:1fr}.rpt-faq-route{min-height:250px}.rpt-faq-route small{margin-top:45px}.rpt-faq-final__actions{justify-content:flex-start}}
@media(max-width:720px){.rpt-faq-hero{min-height:auto;padding:58px 0 66px}.rpt-faq-hero__grid{gap:42px}.rpt-faq-hero__question{display:none}.rpt-faq-eyebrow{flex-wrap:wrap;font-size:9px}.rpt-faq-hero__title{font-size:clamp(43px,12vw,62px);line-height:.94;letter-spacing:-.052em}.rpt-faq-hero__intro{font-size:15.5px;line-height:1.65}.rpt-faq-hero__actions{display:grid}.rpt-faq-btn{width:100%}.rpt-faq-desk{min-height:420px;padding:28px 24px;border-radius:30px}.rpt-faq-desk::before{inset:12px;border-radius:22px}.rpt-faq-desk>strong{margin-top:52px;font-size:35px}.rpt-faq-desk__stats{grid-template-columns:1fr;margin-top:38px}.rpt-faq-desk__stats div{padding:12px 15px}.rpt-faq-desk__line{left:24px;right:24px;bottom:20px}.rpt-faq-section{padding:72px 0}.rpt-faq-library-head{gap:20px;margin-bottom:32px}.rpt-faq-library-head h2,.rpt-faq-final h2{font-size:clamp(36px,10.5vw,50px);line-height:.98}.rpt-faq-search-shell{position:relative;top:auto;margin-bottom:46px;padding:10px;border-radius:22px}.rpt-faq-search{padding:0 12px;min-height:54px}.rpt-faq-search input{font-size:16px}.rpt-faq-filter-row{flex-wrap:nowrap;overflow-x:auto;padding:10px 0 3px;scrollbar-width:none}.rpt-faq-filter-row::-webkit-scrollbar{display:none}.rpt-faq-filter-row button{flex:0 0 auto}.rpt-faq-search-status{position:static;margin:9px 4px 0;text-align:right}.rpt-faq-group{gap:24px;padding:22px;border-radius:26px}.rpt-faq-group__head{grid-template-columns:44px 1fr}.rpt-faq-group__number{width:44px;height:44px;border-radius:13px}.rpt-faq-group__head h3{font-size:27px}.rpt-faq-item summary{grid-template-columns:1fr 36px;min-height:64px;padding:13px 12px 13px 16px;font-size:13px}.rpt-faq-item__answer{padding:0 16px 18px}.rpt-faq-route{min-height:270px;padding:24px}.rpt-faq-route small{margin-top:42px}.rpt-faq-route strong{font-size:25px}.rpt-faq-final{padding:64px 0}.rpt-faq-final__inner{gap:30px;padding:30px 25px;border-radius:28px}.rpt-faq-final__actions{display:grid;width:100%}}
@media(prefers-reduced-motion:reduce){.rpt-faq-enter,.rpt-faq-reveal{opacity:1!important;transform:none!important;animation:none!important;transition:none!important}.rpt-faq-desk{animation:none!important}}
/* =========================================================
   FAQ BOOKING NOTE SPACING — v2.2.42
   Rebuilt from the v2.2.41 baseline. Only the booking-status
   strip inside the hero information card is adjusted.
   ========================================================= */
.rpt-faq-desk__line {
  position: relative;
  left: auto;
  right: auto;
  bottom: auto;
  margin-top: 22px;
  padding-inline: 2px;
}

@media (max-width: 720px) {
  .rpt-faq-desk__line {
    left: auto;
    right: auto;
    bottom: auto;
    margin-top: 18px;
    padding-inline: 0;
  }
}
