/*! Generated by tools/build-performance.cjs; edit original stylesheets. */
/*
 * Paired content/media sections.
 *
 * Desktop media starts level with its copy and follows the viewport until the
 * end of its own section. Compact layouts keep the normal stacked flow.
 */@media (min-width: 992px){/* `overflow-x: hidden` on the document root turns the other axis into an
     implicit scroll container in some browsers, so descendants never reach
     the viewport's sticky threshold. `clip` prevents horizontal spill without
     creating that extra scrolling ancestor. */html:not(.frc-lightbox-open):has(
    > body:not(.frc-booking-page):not(.frc-lightbox-open):not(.lg-on):not(.modal-open):not(.frc-mobile-nav-open) .section-lg > .container > .row > [class*="col-"] > .owl-carousel.carousel-post-gallery,
    > body:not(.frc-booking-page):not(.frc-lightbox-open):not(.lg-on):not(.modal-open):not(.frc-mobile-nav-open) .section-lg > .container > .row > [class*="col-"] > img.img-bordered,
    > body:not(.frc-booking-page):not(.frc-lightbox-open):not(.lg-on):not(.modal-open):not(.frc-mobile-nav-open) .section-lg > .container > .row > [class*="col-"] > figure > img.img-bordered
  ),html:not(.frc-lightbox-open) > body:not(.frc-booking-page):not(.frc-lightbox-open):not(.lg-on):not(.modal-open):not(.frc-mobile-nav-open):has(
    .section-lg > .container > .row > [class*="col-"] > .owl-carousel.carousel-post-gallery,
    .section-lg > .container > .row > [class*="col-"] > img.img-bordered,
    .section-lg > .container > .row > [class*="col-"] > figure > img.img-bordered
  ){overflow-x:clip !important;overflow-y:visible !important}html body:not(.frc-booking-page) .page:has(
    .section-lg > .container > .row > [class*="col-"] > .owl-carousel.carousel-post-gallery,
    .section-lg > .container > .row > [class*="col-"] > img.img-bordered,
    .section-lg > .container > .row > [class*="col-"] > figure > img.img-bordered
  ),html body:not(.frc-booking-page) .section-lg:has(
    > .container > .row > [class*="col-"] > .owl-carousel.carousel-post-gallery,
    > .container > .row > [class*="col-"] > img.img-bordered,
    > .container > .row > [class*="col-"] > figure > img.img-bordered
  ){overflow:visible !important;overflow-x:clip !important;overflow-y:visible !important}html body:not(.frc-booking-page) .section-lg:has(
    > .container > .row > [class*="col-"] > .owl-carousel.carousel-post-gallery,
    > .container > .row > [class*="col-"] > img.img-bordered,
    > .container > .row > [class*="col-"] > figure > img.img-bordered
  ) > .container{overflow:visible !important}html body:not(.frc-booking-page) .section-lg > .container > .row:has(
    > [class*="col-"] > .owl-carousel.carousel-post-gallery,
    > [class*="col-"] > img.img-bordered,
    > [class*="col-"] > figure > img.img-bordered
  ){align-items:stretch !important;margin-bottom:0 !important;overflow:visible !important;transform:none !important}/* The legacy row spacing uses translateY(-50px) plus a 50px top margin on
     every child. Reset both halves together so the row keeps the same visual
     start while remaining a reliable sticky containing block. */html body:not(.frc-booking-page) .section-lg > .container > .row:has(
    > [class*="col-"] > .owl-carousel.carousel-post-gallery,
    > [class*="col-"] > img.img-bordered,
    > [class*="col-"] > figure > img.img-bordered
  ) > *{margin-top:0 !important}html body:not(.frc-booking-page) .section-lg > .container > .row > [class*="col-"]:has(
    > .owl-carousel.carousel-post-gallery,
    > img.img-bordered,
    > figure > img.img-bordered
  ){position:relative !important;align-self:stretch !important;height:auto !important;overflow:visible !important}}/* A very short landscape viewport cannot contain the complete media card, so
   it remains top-aligned without sticky positioning in that case. */@media (min-width: 992px) and (min-height: 560px){html body:not(.frc-booking-page) .section-lg > .container > .row > [class*="col-"] > .owl-carousel.carousel-post-gallery,html body:not(.frc-booking-page) .section-lg > .container > .row > [class*="col-"] > img.img-bordered,html body:not(.frc-booking-page) .section-lg > .container > .row > [class*="col-"] > figure:has(> img.img-bordered){position:sticky !important;top:120px !important;z-index:2 !important}}/* Keep the Material Icons glyph exactly centered inside gallery controls. */html body .owl-carousel.carousel-post-gallery .owl-nav .owl-prev,html body .owl-carousel.carousel-post-gallery .owl-nav .owl-next{padding:0 !important;line-height:1 !important;text-align:center !important}html body .owl-carousel.carousel-post-gallery .owl-nav .owl-prev::before,html body .owl-carousel.carousel-post-gallery .owl-nav .owl-next::before{position:absolute !important;top:50% !important;left:50% !important;display:block !important;width:1em !important;height:1em !important;margin:0 !important;line-height:1 !important;transform:translate(-50%, -50%) !important}/*
 * WCAG 2.2 AA colour safeguards.
 *
 * This file is intentionally loaded after the legacy theme and the final
 * layout styles. It only owns contrast-critical colours and state indicators;
 * spacing and component geometry remain in their original stylesheets.
 */:root{--frc-wcag-navy:#082f49;--frc-wcag-blue:#075985;--frc-wcag-blue-hover:#0b3a5b;--frc-wcag-blue-soft:#e0f2fe;--frc-wcag-blue-soft-strong:#bae6fd;--frc-wcag-muted:#526273;--frc-wcag-border:#64748b;--frc-wcag-link-dark:#bae6fd;--frc-wcag-orange:#c2410c;--frc-wcag-orange-dark:#9a3412;--frc-wcag-orange-deep:#7c2d12;--frc-wcag-error:#b42318;--frc-wcag-success:#166534;--frc-wcag-motion:cubic-bezier(0.22, 1, 0.36, 1)}/* A two-colour focus ring remains visible on both light and dark surfaces. */html body .page a[href]:focus-visible,html body .page button:focus-visible,html body .page input:focus-visible,html body .page select:focus-visible,html body .page textarea:focus-visible,html body .page [tabindex]:not([tabindex="-1"]):focus-visible{outline:3px solid #ffffff !important;outline-offset:3px !important;box-shadow:0 0 0 6px var(--frc-wcag-blue) !important}/* Primary and outline buttons already use the compliant blue palette. */html body .button,html body a.button,html body button.button,html body input.button{color:#ffffff !important;-webkit-text-fill-color:#ffffff !important}html body .button.button-primary,html body a.button.button-primary,html body button.button.button-primary,html body input.button.button-primary{border-color:var(--frc-wcag-blue) !important;background:var(--frc-wcag-blue) !important;background-color:var(--frc-wcag-blue) !important}html body .button.button-primary-outline,html body a.button.button-primary-outline,html body button.button.button-primary-outline,html body .frc-contact-actions .frc-contact-secondary{border-color:var(--frc-wcag-blue) !important;background:#ffffff !important;background-color:#ffffff !important;color:var(--frc-wcag-blue) !important;-webkit-text-fill-color:var(--frc-wcag-blue) !important}html body .button:hover,html body .button:focus-visible,html body a.button:hover,html body a.button:focus-visible,html body button.button:hover,html body button.button:focus-visible,html body input.button:hover,html body input.button:focus-visible,html body .button.button-primary-outline:hover,html body .button.button-primary-outline:focus-visible,html body .frc-contact-actions .frc-contact-secondary:hover,html body .frc-contact-actions .frc-contact-secondary:focus-visible{border-color:var(--frc-wcag-navy) !important;background:var(--frc-wcag-navy) !important;background-color:var(--frc-wcag-navy) !important;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important}html body .button[disabled],html body .button.disabled,html body button.button:disabled,html body input.button:disabled{border-color:#8ba5bf !important;background:#e8eff5 !important;background-color:#e8eff5 !important;color:#31465b !important;-webkit-text-fill-color:#31465b !important;box-shadow:none !important}html body :is(.context-dark, .bg-gray-dark, .swiper-slide-caption)
  .button:not([disabled]):not(.disabled),html body :is(.context-dark, .bg-gray-dark, .swiper-slide-caption)
  a.button:not(.disabled){border-color:#ffffff !important}/* Keep the orange booking CTA, using stops that pass with white text. */html body[class] .page .page-header.frc-nav-ready.frc-nav-ready
  .rd-navbar-nav-wrap__element .button,html body[class] .page .page-header.frc-nav-ready.frc-nav-ready
  .rd-navbar-nav-wrap__element .button.button-primary{border-color:transparent !important;background:linear-gradient(
    135deg,
    var(--frc-wcag-orange) 0%,
    var(--frc-wcag-orange-dark) 100%
  ) !important;background-color:var(--frc-wcag-orange-dark) !important;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;box-shadow:inset 0 0 0 2px #ffffff,0 14px 30px rgba(122, 45, 18, 0.28) !important}html body[class] .page .page-header.frc-nav-ready.frc-nav-ready
  .rd-navbar-nav-wrap__element .button:hover,html body[class] .page .page-header.frc-nav-ready.frc-nav-ready
  .rd-navbar-nav-wrap__element .button:focus-visible,html body[class] .page .page-header.frc-nav-ready.frc-nav-ready
  .rd-navbar-nav-wrap__element .button:active{background:var(--frc-wcag-orange-dark) !important;background-color:var(--frc-wcag-orange-dark) !important;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important}/* Other orange controls use the same accessible dark-orange pair. */html body #ui-to-top.ui-to-top,html body .frc-scroll-top{border-color:#ffffff !important;background:linear-gradient(
    135deg,
    var(--frc-wcag-orange) 0%,
    var(--frc-wcag-orange-dark) 100%
  ) !important;background-color:var(--frc-wcag-orange-dark) !important;color:#ffffff !important}/*
 * Restore the single custom back-to-top control. A late legacy rule hides
 * both historical variants; this semantic button is the one maintained by
 * script.js and becomes available after the user scrolls down the page.
 */html body .frc-scroll-top{position:fixed !important;inset:auto auto 28px 28px !important;z-index:9995 !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;width:54px !important;height:54px !important;padding:0 !important;border:1px solid #ffffff !important;border-radius:999px !important;opacity:0 !important;visibility:hidden !important;pointer-events:none !important;transform:translateY(14px) !important}html body .frc-scroll-top.is-visible{opacity:1 !important;visibility:visible !important;pointer-events:auto !important;transform:translateY(0) !important}html body .frc-scroll-top span{display:block !important;margin:-2px 0 0 !important;color:currentColor !important;font-size:29px !important;font-weight:800 !important;line-height:1 !important}@media (max-width: 767px){html body .frc-scroll-top{inset:auto auto 18px 18px !important;width:50px !important;height:50px !important}html body .frc-scroll-top span{font-size:26px !important}}html body .frc-hero-control-fixed.swiper-button-prev:hover,html body .frc-hero-control-fixed.swiper-button-next:hover,html body .frc-hero-control-fixed.frc-video-audio-toggle:hover,html body .frc-hero-control-fixed.frc-video-audio-toggle:focus-visible,html body .swiper-form-wrap > .frc-video-audio-toggle:hover,html body .swiper-form-wrap > .frc-video-audio-toggle:focus-visible,html body .rd-navbar-toggle:hover,html body .rd-navbar-toggle:focus-visible{border-color:#ffffff !important;background:var(--frc-wcag-orange-dark) !important;background-color:var(--frc-wcag-orange-dark) !important;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important}html body.frc-page-contact .frc-contact-card a:hover,html body.frc-page-contact .frc-contact-card a:focus-visible{color:var(--frc-wcag-blue) !important}/* Form controls, hints and validation feedback on the site's own forms. */html body .rd-mailform .form-input,html body .rd-mailform select.form-input,html body .rd-mailform textarea.form-input,html body:has(form[name="SiteForm"]) form.rd-mailform.rd-mailform_style-1
  .form-input,html body:has(form[name="SiteForm"]) form.rd-mailform.rd-mailform_style-1
  textarea.form-input{border-color:var(--frc-wcag-border) !important}html body .rd-mailform .form-input::placeholder,html body .rd-mailform textarea.form-input::placeholder,html body input::placeholder,html body textarea::placeholder,html body:has(form[name="SiteForm"]) form.rd-mailform.rd-mailform_style-1
  .form-input::placeholder,html body:has(form[name="SiteForm"]) form.rd-mailform.rd-mailform_style-1
  textarea.form-input::placeholder{color:var(--frc-wcag-muted) !important;opacity:1 !important}html body .form-validation,html body .form-output.error,html body [role="alert"].error,html body .form-wrap.has-error .form-validation,html body:has(form[name="SiteForm"]) form.rd-mailform.rd-mailform_style-1
  .form-validation{color:var(--frc-wcag-error) !important;-webkit-text-fill-color:var(--frc-wcag-error) !important}html body .form-output.success{color:var(--frc-wcag-success) !important;-webkit-text-fill-color:var(--frc-wcag-success) !important}html body .rd-mailform [aria-invalid="true"],html body .rd-mailform .has-error .form-input{border-color:var(--frc-wcag-error) !important}/* Inline links have both sufficient contrast and a non-colour cue. */html body .page :is(.bg-default, .bg-gray-lighter)
  :is(p, li, dd, address) a[href]:not(.button):not(:has(img)){color:var(--frc-wcag-blue) !important;text-decoration:underline !important;text-decoration-thickness:0.1em !important;text-underline-offset:0.18em !important}html body .pre-footer-corporate .unit-body a[href]:not(:has(img)),html body .footer-corporate .rights a[href]{color:var(--frc-wcag-link-dark) !important;text-decoration:underline !important;text-decoration-thickness:0.1em !important;text-underline-offset:0.18em !important}html body .pre-footer-corporate .unit-body a[href]:not(:has(img)):hover,html body .pre-footer-corporate .unit-body a[href]:not(:has(img)):focus-visible,html body .footer-corporate .rights a[href]:hover,html body .footer-corporate .rights a[href]:focus-visible{color:#ffffff !important}/* Footer credits use one native underline, without the legacy bottom border
   or mobile privacy badge. Inline links can wrap naturally in every language. */html body .footer-corporate .rights a[href]{display:inline !important;margin:0 !important;padding:0 !important;border:0 !important;border-radius:0 !important;background:none !important;white-space:normal !important;text-decoration-style:solid !important;text-decoration-thickness:1px !important;text-underline-offset:0.2em !important;text-decoration-skip-ink:auto !important}html body .footer-corporate .rights a[href^="https://www.sitiprofessionali.net/"]{white-space:nowrap !important}/* The excursion exclusivity note is textual and no longer depends on red alone. */html body .frc-exclusive-note{display:inline-block;margin-top:4px;color:var(--frc-wcag-orange-dark) !important;-webkit-text-fill-color:var(--frc-wcag-orange-dark) !important;font-weight:800 !important}/* Gallery controls: stable contrast regardless of the image underneath. */html body .img-thumbnail-variant-1 .caption .icon{border:2px solid #ffffff !important;background:rgba(8, 47, 73, 0.82) !important;color:#ffffff !important}html body .owl-carousel.carousel-post-gallery .owl-dot{background:var(--frc-wcag-border) !important}html body .owl-carousel.carousel-post-gallery .owl-dot.active{background:var(--frc-wcag-blue) !important}/* Guarantee white hero text over every frame, including bright video frames. */html body:not(.frc-checkout-page) .swiper-form-wrap .swiper-slide::before,html body:not(.frc-checkout-page) .swiper-form-wrap .frc-video-hero-slide::before,html body:not(.frc-booking-page):not(.frc-checkout-page)
  .swiper-form-wrap.frc-video-only-hero .frc-video-hero-slide::before{background:linear-gradient(
    90deg,
    rgba(8, 47, 73, 0.82) 0%,
    rgba(8, 47, 73, 0.74) 55%,
    rgba(8, 47, 73, 0.68) 100%
  ) !important}html body:not(.frc-checkout-page) .parallax-container.parallax-header::before,html body:not(.frc-checkout-page) .page > section.bg-gray-dark
  .parallax-header::before{background:linear-gradient(
    110deg,
    rgba(8, 47, 73, 0.78) 0%,
    rgba(8, 47, 73, 0.72) 56%,
    rgba(8, 47, 73, 0.68) 100%
  ) !important}/* BookingKit is injected at runtime, so its contrast safeguards stay scoped. */html body.frc-checkout-page.frc-booking-page #bookingKitContainer
  input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),html body.frc-checkout-page.frc-booking-page #bookingKitContainer select,html body.frc-checkout-page.frc-booking-page #bookingKitContainer textarea{border-color:var(--frc-wcag-border) !important;color:#0f172a !important}html body.frc-checkout-page.frc-booking-page #bookingKitContainer input::placeholder,html body.frc-checkout-page.frc-booking-page #bookingKitContainer textarea::placeholder{color:var(--frc-wcag-muted) !important;opacity:1 !important}html body.frc-checkout-page.frc-booking-page #bookingKitContainer
  .bk-voucher-btn.bk-offer-btn{border-color:var(--frc-wcag-blue) !important}html body.frc-checkout-page.frc-booking-page #bookingKitContainer
  [aria-invalid="true"],html body.frc-checkout-page.frc-booking-page #bookingKitContainer
  .has-error input,html body.frc-checkout-page.frc-booking-page #bookingKitContainer
  .has-error select,html body.frc-checkout-page.frc-booking-page #bookingKitContainer
  .has-error textarea{border-color:var(--frc-wcag-error) !important}html body.frc-checkout-page.frc-booking-page #bookingKitContainer [role="alert"],html body.frc-checkout-page.frc-booking-page #bookingKitContainer .bk-error,html body.frc-checkout-page.frc-booking-page #bookingKitContainer .form-error{color:var(--frc-wcag-error) !important;-webkit-text-fill-color:var(--frc-wcag-error) !important}html body.frc-checkout-page.frc-booking-page #bookingKitContainer
  .bk-events-images:focus-within{outline:3px solid var(--frc-wcag-blue) !important;outline-offset:3px !important;box-shadow:0 0 0 2px #ffffff !important}/*
 * Polished button interactions.
 * Motion is reserved for precise pointing devices so touch taps never leave
 * a raised, sticky hover state. Focus and pressed states remain independent.
 */html body .page a.button,html body .page button.button,html body .page input.button,html body a.button,html body button.button,html body input.button,html body a.btn,html body button.btn,html body #ui-to-top.ui-to-top,html body .frc-scroll-top,html body .frc-hero-control-fixed,html body .swiper-form-wrap > .frc-video-audio-toggle,html body .rd-navbar-toggle,html body .owl-carousel.carousel-post-gallery .owl-prev,html body .owl-carousel.carousel-post-gallery .owl-next,html body .owl-carousel.carousel-post-gallery .owl-dot,html body .frc-lightbox__button,html body .lg-outer .lg-close,html body .lg-outer .lg-actions .lg-prev,html body .lg-outer .lg-actions .lg-next,html body #cookie-bar a{transform-origin:center !important;transition:background-color 180ms ease,background-position 260ms var(--frc-wcag-motion),border-color 180ms ease,color 180ms ease,box-shadow 220ms var(--frc-wcag-motion),transform 220ms var(--frc-wcag-motion) !important}html body.frc-checkout-page.frc-booking-page #bookingKitContainer
  :is(
    a.bk-date-btn.alphaBg,
    a.bk-detail-go-checkout.alphaBg,
    .bk-offer-btn.alphaBg,
    .bk-calendar-picker-boosted.alphaBg,
    .bk-btn.bk-blue,
    .bk-btn.bk-green,
    .bk-btn.bk-red,
    .bk-voucher-btn.bk-offer-btn
  ){transform-origin:center !important;transition:background-color 180ms ease,border-color 180ms ease,color 180ms ease,box-shadow 220ms var(--frc-wcag-motion),transform 220ms var(--frc-wcag-motion) !important}/* Keyboard focus keeps each button's visual hierarchy without adding motion. */html body .page a.button.button-primary-outline:focus-visible,html body .page button.button.button-primary-outline:focus-visible,html body .page input.button.button-primary-outline:focus-visible,html body .page a.button.frc-contact-secondary:focus-visible,html body a.button.button-primary-outline:focus-visible,html body button.button.button-primary-outline:focus-visible,html body input.button.button-primary-outline:focus-visible,html body a.btn-outline-primary:focus-visible,html body button.btn-outline-primary:focus-visible{border-color:var(--frc-wcag-blue) !important;background:var(--frc-wcag-blue-soft) !important;background-color:var(--frc-wcag-blue-soft) !important;color:var(--frc-wcag-navy) !important;-webkit-text-fill-color:var(--frc-wcag-navy) !important;transform:none !important}/* A short press gives tactile feedback on both pointer and touch devices. */html body .page a.button:not(.button-primary-outline):not(.frc-contact-secondary):not(.disabled):not([aria-disabled="true"]):active,html body .page button.button:not(.button-primary-outline):not(.frc-contact-secondary):not(:disabled):not([aria-disabled="true"]):active,html body .page input.button:not(.button-primary-outline):not(:disabled):active,html body a.button:not(.button-primary-outline):not(.frc-contact-secondary):not(.disabled):not([aria-disabled="true"]):active,html body button.button:not(.button-primary-outline):not(.frc-contact-secondary):not(:disabled):not([aria-disabled="true"]):active,html body input.button:not(.button-primary-outline):not(:disabled):active,html body a.btn:not(.btn-outline-primary):not(.disabled):not([aria-disabled="true"]):active,html body button.btn:not(.btn-outline-primary):not(:disabled):not([aria-disabled="true"]):active{border-color:var(--frc-wcag-navy) !important;background:var(--frc-wcag-navy) !important;background-color:var(--frc-wcag-navy) !important;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;box-shadow:inset 0 3px 0 rgba(0, 0, 0, 0.2) !important;transform:translateY(1px) scale(0.99) !important}html body .page a.button.button-primary-outline:not(.disabled):not([aria-disabled="true"]):active,html body .page button.button.button-primary-outline:not(:disabled):not([aria-disabled="true"]):active,html body .page input.button.button-primary-outline:not(:disabled):active,html body .page a.button.frc-contact-secondary:not(.disabled):not([aria-disabled="true"]):active,html body a.button.button-primary-outline:not(.disabled):not([aria-disabled="true"]):active,html body button.button.button-primary-outline:not(:disabled):not([aria-disabled="true"]):active,html body input.button.button-primary-outline:not(:disabled):active,html body a.btn-outline-primary:not(.disabled):not([aria-disabled="true"]):active,html body button.btn-outline-primary:not(:disabled):not([aria-disabled="true"]):active{border-color:var(--frc-wcag-navy) !important;background:var(--frc-wcag-blue-soft-strong) !important;background-color:var(--frc-wcag-blue-soft-strong) !important;color:var(--frc-wcag-navy) !important;-webkit-text-fill-color:var(--frc-wcag-navy) !important;box-shadow:inset 0 2px 0 rgba(8, 47, 73, 0.14) !important;transform:translateY(1px) scale(0.99) !important}html body[class] .page .page-header.frc-nav-ready.frc-nav-ready
  .rd-navbar-nav-wrap__element .button,html body[class] .page .page-header.frc-nav-ready.frc-nav-ready
  .rd-navbar-nav-wrap__element .button.button-primary{background-size:180% 180% !important;background-position:0 50% !important;transition:background-position 280ms var(--frc-wcag-motion),border-color 180ms ease,box-shadow 220ms var(--frc-wcag-motion),transform 220ms var(--frc-wcag-motion) !important}html body[class] .page .page-header.frc-nav-ready.frc-nav-ready
  .rd-navbar-nav-wrap__element .button:active{border-color:transparent !important;background:var(--frc-wcag-orange-deep) !important;background-color:var(--frc-wcag-orange-deep) !important;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;box-shadow:inset 0 0 0 2px #ffffff,inset 0 3px 0 rgba(0, 0, 0, 0.16) !important;transform:translateY(1px) scale(0.99) !important}html body .frc-lightbox__button:active{border-color:#ffffff !important;background:var(--frc-wcag-blue) !important;background-color:var(--frc-wcag-blue) !important;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;box-shadow:inset 0 3px 0 rgba(0, 0, 0, 0.18) !important}@media (hover: hover) and (pointer: fine){html body .page a.button:not(.button-primary-outline):not(.frc-contact-secondary):not(.disabled):not([aria-disabled="true"]):hover:not(:active),html body .page button.button:not(.button-primary-outline):not(.frc-contact-secondary):not(:disabled):not([aria-disabled="true"]):hover:not(:active),html body .page input.button:not(.button-primary-outline):not(:disabled):hover:not(:active),html body a.button:not(.button-primary-outline):not(.frc-contact-secondary):not(.disabled):not([aria-disabled="true"]):hover:not(:active),html body button.button:not(.button-primary-outline):not(.frc-contact-secondary):not(:disabled):not([aria-disabled="true"]):hover:not(:active),html body input.button:not(.button-primary-outline):not(:disabled):hover:not(:active),html body a.btn:not(.btn-outline-primary):not(.disabled):not([aria-disabled="true"]):hover:not(:active),html body button.btn:not(.btn-outline-primary):not(:disabled):not([aria-disabled="true"]):hover:not(:active){border-color:var(--frc-wcag-navy) !important;background:linear-gradient(
      120deg,
      var(--frc-wcag-blue-hover) 0%,
      var(--frc-wcag-navy) 100%
    ) !important;background-color:var(--frc-wcag-navy) !important;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.18),0 15px 30px rgba(8, 47, 73, 0.28) !important;transform:translateY(-2px) scale(1.01) !important}html body .page a.button.button-primary-outline:not(.disabled):not([aria-disabled="true"]):hover:not(:active),html body .page button.button.button-primary-outline:not(:disabled):not([aria-disabled="true"]):hover:not(:active),html body .page input.button.button-primary-outline:not(:disabled):hover:not(:active),html body .page a.button.frc-contact-secondary:not(.disabled):not([aria-disabled="true"]):hover:not(:active),html body a.button.button-primary-outline:not(.disabled):not([aria-disabled="true"]):hover:not(:active),html body button.button.button-primary-outline:not(:disabled):not([aria-disabled="true"]):hover:not(:active),html body input.button.button-primary-outline:not(:disabled):hover:not(:active),html body a.btn-outline-primary:not(.disabled):not([aria-disabled="true"]):hover:not(:active),html body button.btn-outline-primary:not(:disabled):not([aria-disabled="true"]):hover:not(:active){border-color:var(--frc-wcag-blue) !important;background:linear-gradient(
      135deg,
      #ffffff 0%,
      var(--frc-wcag-blue-soft) 100%
    ) !important;background-color:var(--frc-wcag-blue-soft) !important;color:var(--frc-wcag-navy) !important;-webkit-text-fill-color:var(--frc-wcag-navy) !important;box-shadow:inset 0 1px 0 #ffffff,0 14px 28px rgba(7, 89, 133, 0.18) !important;transform:translateY(-2px) scale(1.01) !important}html body[class] .page .page-header.frc-nav-ready.frc-nav-ready
    .rd-navbar-nav-wrap__element .button:hover:not(:active),html body[class] .page .page-header.frc-nav-ready.frc-nav-ready
    .rd-navbar-nav-wrap__element .button.button-primary:hover:not(:active){border-color:transparent !important;background:linear-gradient(
      115deg,
      var(--frc-wcag-orange-dark) 0%,
      var(--frc-wcag-orange-deep) 100%
    ) !important;background-color:var(--frc-wcag-orange-deep) !important;background-position:100% 50% !important;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;box-shadow:inset 0 0 0 2px #ffffff,0 17px 34px rgba(124, 45, 18, 0.36) !important;transform:translateY(-2px) scale(1.015) !important}html body #ui-to-top.ui-to-top:hover:not(:active),html body .frc-scroll-top:hover:not(:active){border-color:#ffffff !important;background:linear-gradient(
      135deg,
      var(--frc-wcag-orange-dark) 0%,
      var(--frc-wcag-orange-deep) 100%
    ) !important;color:#ffffff !important;box-shadow:0 18px 36px rgba(124, 45, 18, 0.34) !important;transform:translateY(-2px) scale(1.06) !important}html body .frc-hero-control-fixed.swiper-button-prev:hover:not(:active),html body .frc-hero-control-fixed.swiper-button-next:hover:not(:active),html body .frc-hero-control-fixed.frc-video-audio-toggle:hover:not(:active),html body .swiper-form-wrap > .frc-video-audio-toggle:hover:not(:active),html body .rd-navbar-toggle:hover:not(:active){border-color:rgba(255, 255, 255, 0.82) !important;background:linear-gradient(
      135deg,
      var(--frc-wcag-orange) 0%,
      var(--frc-wcag-orange-dark) 100%
    ) !important;background-color:var(--frc-wcag-orange-dark) !important;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.22),0 16px 32px rgba(124, 45, 18, 0.3) !important;transform:translateY(-2px) scale(1.04) !important}html body .frc-hero-control-fixed.frc-video-audio-toggle:hover:not(:active),html body .swiper-form-wrap > .frc-video-audio-toggle:hover:not(:active){transform:translateY(-2px) scale(1.015) !important}html body .owl-carousel.carousel-post-gallery .owl-prev:hover:not(:active),html body .owl-carousel.carousel-post-gallery .owl-next:hover:not(:active){border-color:#ffffff !important;background:var(--frc-wcag-blue-soft-strong) !important;background-color:var(--frc-wcag-blue-soft-strong) !important;color:var(--frc-wcag-navy) !important;-webkit-text-fill-color:var(--frc-wcag-navy) !important;box-shadow:0 16px 32px rgba(8, 47, 73, 0.3) !important;transform:translateY(-50%) scale(1.08) !important}html body .owl-carousel.carousel-post-gallery .owl-dot:hover{background:var(--frc-wcag-navy) !important;box-shadow:0 0 0 4px rgba(186, 230, 253, 0.5) !important;transform:scale(1.25) !important}html body .owl-carousel.carousel-post-gallery .owl-dot.active:hover{background:var(--frc-wcag-blue) !important;transform:scale(1.08) !important}html body .frc-lightbox__button:hover:not(:active){border-color:#ffffff !important;background:var(--frc-wcag-blue-soft-strong) !important;background-color:var(--frc-wcag-blue-soft-strong) !important;color:var(--frc-wcag-navy) !important;-webkit-text-fill-color:var(--frc-wcag-navy) !important;box-shadow:0 18px 38px rgba(0, 0, 0, 0.34) !important}html body .frc-lightbox__close:hover:not(:active){transform:scale(1.08) !important}html body .lg-outer .lg-close:hover:not(:active){border-color:#ffffff !important;background:var(--frc-wcag-blue-soft-strong) !important;color:var(--frc-wcag-navy) !important;-webkit-text-fill-color:var(--frc-wcag-navy) !important;box-shadow:0 16px 34px rgba(0, 0, 0, 0.32) !important;transform:scale(1.08) !important}html body .lg-outer .lg-actions .lg-prev:hover:not(:active),html body .lg-outer .lg-actions .lg-next:hover:not(:active){border-color:#ffffff !important;background:var(--frc-wcag-blue-soft-strong) !important;color:var(--frc-wcag-navy) !important;-webkit-text-fill-color:var(--frc-wcag-navy) !important;box-shadow:0 16px 34px rgba(0, 0, 0, 0.32) !important}html body #cookie-bar a:hover:not(:active){background:var(--frc-wcag-blue-soft) !important;color:var(--frc-wcag-navy) !important;-webkit-text-fill-color:var(--frc-wcag-navy) !important;box-shadow:0 10px 22px rgba(0, 0, 0, 0.26) !important;transform:translateY(-1px) !important}html body.frc-checkout-page.frc-booking-page #bookingKitContainer
    :is(
      a.bk-date-btn.alphaBg,
      a.bk-detail-go-checkout.alphaBg,
      .bk-offer-btn.alphaBg,
      .bk-calendar-picker-boosted.alphaBg,
      .bk-btn.bk-blue,
      .bk-btn.bk-green,
      .bk-btn.bk-red
    ):not(.bk-disabled):not([aria-disabled="true"]):hover:not(:active){border-color:var(--frc-wcag-navy) !important;background:linear-gradient(
      120deg,
      var(--frc-wcag-blue-hover) 0%,
      var(--frc-wcag-navy) 100%
    ) !important;background-color:var(--frc-wcag-navy) !important;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;box-shadow:0 14px 28px rgba(8, 47, 73, 0.28) !important;transform:translateY(-2px) scale(1.01) !important}html body.frc-checkout-page.frc-booking-page #bookingKitContainer
    .bk-voucher-btn.bk-offer-btn:not(.bk-disabled):not([aria-disabled="true"]):hover:not(:active){border-color:var(--frc-wcag-blue) !important;background:var(--frc-wcag-blue-soft-strong) !important;color:var(--frc-wcag-navy) !important;-webkit-text-fill-color:var(--frc-wcag-navy) !important;box-shadow:0 12px 24px rgba(7, 89, 133, 0.16) !important;transform:translateY(-2px) scale(1.01) !important}}@media (hover: hover) and (pointer: fine) and (min-width: 768px){html body .lg-outer .lg-actions .lg-prev:hover:not(:active),html body .lg-outer .lg-actions .lg-next:hover:not(:active){transform:translateY(-50%) scale(1.08) !important}}/* Neutralise legacy sticky hover/focus styling on coarse or hoverless devices. */@media (hover: none),(pointer: coarse){html body .page a.button:not(.button-primary-outline):not(.frc-contact-secondary):not(.disabled):hover:not(:active):not(:focus-visible),html body .page a.button:not(.button-primary-outline):not(.frc-contact-secondary):not(.disabled):focus:not(:active):not(:focus-visible),html body .page button.button:not(.button-primary-outline):not(.frc-contact-secondary):not(:disabled):hover:not(:active):not(:focus-visible),html body .page button.button:not(.button-primary-outline):not(.frc-contact-secondary):not(:disabled):focus:not(:active):not(:focus-visible),html body .page input.button:not(.button-primary-outline):not(:disabled):hover:not(:active):not(:focus-visible),html body .page input.button:not(.button-primary-outline):not(:disabled):focus:not(:active):not(:focus-visible){border-color:var(--frc-wcag-blue) !important;background:var(--frc-wcag-blue) !important;background-color:var(--frc-wcag-blue) !important;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;box-shadow:inset 0 -3px 0 rgba(8, 47, 73, 0.22),0 2px 5px rgba(11, 58, 91, 0.16) !important;transform:none !important}html body .page a.button.button-primary-outline:not(.disabled):hover:not(:active):not(:focus-visible),html body .page a.button.button-primary-outline:not(.disabled):focus:not(:active):not(:focus-visible),html body .page button.button.button-primary-outline:not(:disabled):hover:not(:active):not(:focus-visible),html body .page button.button.button-primary-outline:not(:disabled):focus:not(:active):not(:focus-visible),html body .page a.button.frc-contact-secondary:not(.disabled):hover:not(:active):not(:focus-visible),html body .page a.button.frc-contact-secondary:not(.disabled):focus:not(:active):not(:focus-visible){border-color:var(--frc-wcag-blue) !important;background:#ffffff !important;background-color:#ffffff !important;color:var(--frc-wcag-blue) !important;-webkit-text-fill-color:var(--frc-wcag-blue) !important;box-shadow:none !important;transform:none !important}html body[class] .page .page-header.frc-nav-ready.frc-nav-ready
    .rd-navbar-nav-wrap__element .button:hover:not(:active):not(:focus-visible),html body[class] .page .page-header.frc-nav-ready.frc-nav-ready
    .rd-navbar-nav-wrap__element .button:focus:not(:active):not(:focus-visible){border-color:transparent !important;background:linear-gradient(
      135deg,
      var(--frc-wcag-orange) 0%,
      var(--frc-wcag-orange-dark) 100%
    ) !important;background-color:var(--frc-wcag-orange-dark) !important;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;box-shadow:inset 0 0 0 2px #ffffff,0 14px 30px rgba(122, 45, 18, 0.28) !important;transform:none !important}html body .owl-carousel.carousel-post-gallery .owl-prev:hover:not(:active):not(:focus-visible),html body .owl-carousel.carousel-post-gallery .owl-next:hover:not(:active):not(:focus-visible){background:rgba(8, 47, 73, 0.82) !important;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important}html body .frc-lightbox__button:hover:not(:active):not(:focus-visible),html body .frc-lightbox__button:focus:not(:active):not(:focus-visible){background:rgba(8, 47, 73, 0.94) !important;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;box-shadow:0 16px 40px rgba(0, 0, 0, 0.24) !important}html body .lg-outer .lg-close:hover:not(:active):not(:focus-visible),html body .lg-outer .lg-actions .lg-prev:hover:not(:active):not(:focus-visible),html body .lg-outer .lg-actions .lg-next:hover:not(:active):not(:focus-visible){background:rgba(8, 47, 73, 0.92) !important;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important}}@media (prefers-reduced-motion: reduce){html body .page a.button,html body .page button.button,html body .page input.button,html body a.button,html body button.button,html body input.button,html body a.btn,html body button.btn,html body #ui-to-top.ui-to-top,html body .frc-scroll-top,html body .frc-hero-control-fixed,html body .swiper-form-wrap > .frc-video-audio-toggle,html body .rd-navbar-toggle,html body .owl-carousel.carousel-post-gallery .owl-prev,html body .owl-carousel.carousel-post-gallery .owl-next,html body .owl-carousel.carousel-post-gallery .owl-dot,html body .frc-lightbox__button,html body .lg-outer .lg-close,html body .lg-outer .lg-actions .lg-prev,html body .lg-outer .lg-actions .lg-next,html body #cookie-bar a,html body.frc-checkout-page.frc-booking-page #bookingKitContainer
    :is(
      a.bk-date-btn.alphaBg,
      a.bk-detail-go-checkout.alphaBg,
      .bk-offer-btn.alphaBg,
      .bk-calendar-picker-boosted.alphaBg,
      .bk-btn,
      .bk-voucher-btn
    ){transition:none !important}html body .page a.button,html body .page button.button,html body .page input.button,html body a.button,html body button.button,html body input.button,html body a.btn,html body button.btn,html body #ui-to-top.ui-to-top,html body .frc-scroll-top,html body .frc-hero-control-fixed,html body .swiper-form-wrap > .frc-video-audio-toggle,html body .rd-navbar-toggle,html body .owl-carousel.carousel-post-gallery .owl-dot,html body .frc-lightbox__close,html body .lg-outer .lg-close,html body #cookie-bar a,html body.frc-checkout-page.frc-booking-page #bookingKitContainer
    :is(
      a.bk-date-btn.alphaBg,
      a.bk-detail-go-checkout.alphaBg,
      .bk-offer-btn.alphaBg,
      .bk-calendar-picker-boosted.alphaBg,
      .bk-btn,
      .bk-voucher-btn
    ){transform:none !important}html body .owl-carousel.carousel-post-gallery .owl-prev,html body .owl-carousel.carousel-post-gallery .owl-next{transform:translateY(-50%) !important}}/* Reassert keyboard focus after component-specific legacy shadows/outlines. */html body[class] .page .button:focus-visible,html body[class] .page a.button:focus-visible,html body[class] .page button.button:focus-visible,html body[class] .page .rd-navbar-toggle:focus-visible,html body .frc-lightbox__button:focus-visible,html body[class] .page .swiper-form-wrap
  .frc-hero-control-fixed.swiper-button-prev:focus-visible,html body[class] .page .swiper-form-wrap
  .frc-hero-control-fixed.swiper-button-next:focus-visible,html body[class] .page .swiper-form-wrap
  .frc-hero-control-fixed.frc-video-audio-toggle:focus-visible,html body[class] .page .swiper-form-wrap > .frc-video-audio-toggle:focus-visible,html body[class] .page .owl-carousel.carousel-post-gallery .owl-dot:focus-visible,html body[class] .page .img-thumbnail-variant-1:focus-visible,html body[class] .page form.rd-mailform.rd-mailform_style-1
  .form-input:focus-visible,html body #ui-to-top.ui-to-top:focus-visible,html body .frc-scroll-top:focus-visible{outline:3px solid #ffffff !important;outline-offset:3px !important;box-shadow:0 0 0 6px var(--frc-wcag-blue) !important}html body[class] .page .page-header.frc-nav-ready.frc-nav-ready
  .rd-navbar-nav-wrap__element .button:focus-visible,html body[class] .page .page-header.frc-nav-ready.frc-nav-ready
  .rd-navbar-nav-wrap__element .button.button-primary:focus-visible{outline:3px solid #ffffff !important;outline-offset:3px !important;box-shadow:0 0 0 6px var(--frc-wcag-blue) !important}@media (forced-colors: active){html body .page a[href]:focus-visible,html body .page button:focus-visible,html body .page input:focus-visible,html body .page select:focus-visible,html body .page textarea:focus-visible,html body .page [tabindex]:not([tabindex="-1"]):focus-visible{outline-color:Highlight !important;box-shadow:none !important}html body .frc-lightbox__button:focus-visible{outline-color:Highlight !important;box-shadow:none !important}}/*
 * Responsive button sizing system (2026-07-28)
 *
 * This stylesheet is intentionally loaded after the legacy button files.
 * It only normalizes geometry: colors, hover states and keyboard focus remain
 * owned by wcag-colors.css. Icon-only controls and BookingKit controls use
 * their dedicated component rules and are not targeted here.
 *//* Normal textual CTA: compact, readable and able to grow only when text wraps. */html body[class] .page.page a.button.button,html body[class] .page.page button.button.button,html body[class] .page.page input.button.button{box-sizing:border-box !important;width:auto !important;min-width:0 !important;max-width:100% !important;height:auto !important;min-height:50px !important;max-height:none !important;padding:12px 22px !important;border-width:2px !important;border-radius:15px !important;font-size:clamp(14px, .82vw, 16px) !important;line-height:1.2 !important;white-space:normal !important;overflow-wrap:anywhere !important}/* Legacy content columns used stronger 390 x 72 px locks. */html body[class] .page.page .section-lg.bg-default .col-md-10.col-lg-6 > a.button.button,html body[class] .page.page .section-lg.bg-gray-lighter .col-md-10.col-lg-6 > a.button.button,html body[class] .page.page .section-md.bg-default .col-md-10.col-lg-6 > a.button.button,html body[class] .page.page .section-md.bg-gray-lighter .col-md-10.col-lg-6 > a.button.button,html body[class] .page.page .box-menu-item__main.box-menu-item__main > a.button.button{width:auto !important;min-width:0 !important;max-width:100% !important;height:auto !important;min-height:50px !important;max-height:none !important;padding:12px 22px !important;border-width:2px !important;border-radius:15px !important;font-size:clamp(14px, .82vw, 16px) !important;line-height:1.2 !important}/* Shared CTA rows: intrinsic width on larger screens, clean wrapping as needed. */html body[class] .page.page .frc-service-actions.frc-service-actions,html body[class] .page.page .frc-services-detail-actions.frc-services-detail-actions,html body[class] .page.page .frc-program-actions.frc-program-actions,html body[class] .page.page .frc-contact-actions.frc-contact-actions{gap:12px !important}html body[class] .page.page .frc-service-actions.frc-service-actions > a.button.button,html body[class] .page.page .frc-services-detail-actions.frc-services-detail-actions > a.button.button,html body[class] .page.page .frc-program-actions.frc-program-actions > a.button.button,html body[class] .page.page .frc-contact-actions.frc-contact-actions > a.button.button{flex:0 1 auto !important;width:auto !important;min-width:0 !important;max-width:min(100%, 360px) !important;height:auto !important;min-height:50px !important;max-height:none !important;margin:0 !important;padding:12px 22px !important;border-width:2px !important;border-radius:15px !important;font-size:clamp(14px, .82vw, 16px) !important;line-height:1.2 !important}/* Fleet and booking cards keep their full cell width, but lose the tall pill. */html body[class] .page.page .frc-fleet-section.frc-fleet-section
article.box-menu-item > .box-menu-item__main > a.button.button{width:100% !important;min-width:0 !important;max-width:100% !important;height:auto !important;min-height:52px !important;max-height:none !important;margin:0 !important;padding:11px 14px !important;border-width:2px !important;border-radius:15px !important;font-size:14px !important;line-height:1.2 !important}@media (max-width: 1199.98px){html body[class] .page.page .frc-fleet-section.frc-fleet-section
  article.box-menu-item > .box-menu-item__main > a.button.button{width:min(100%, 360px) !important;max-width:360px !important;align-self:center !important;justify-self:center !important}}/* The cove cards are loaded from a later, highly specific legacy stylesheet. */html body[class].frc-cale-page .page.page
> section.section-lg:is(.bg-default, .bg-gray-lighter)
> .container > .row
> .col-md-10.col-lg-6:first-child
> a.button.button{width:auto !important;min-width:0 !important;max-width:min(100%, 360px) !important;height:auto !important;min-height:50px !important;max-height:none !important;padding:12px 22px !important;border-width:2px !important;border-radius:15px !important;font-size:clamp(14px, .82vw, 16px) !important;line-height:1.2 !important}/* Long review label: constrained measure, automatic height when translated. */html body[class].frc-reviews-page .page.page
a.button.button-primary.frc-tripadvisor-cta{width:auto !important;min-width:0 !important;max-width:min(100%, 360px) !important;height:auto !important;min-height:50px !important;max-height:none !important;padding:12px 22px !important;border-width:2px !important;border-radius:15px !important;font-size:clamp(14px, .82vw, 16px) !important;line-height:1.2 !important}/* Hero CTA stays prominent without becoming a wide banner. */html body[class] .page.page .swiper-slide-caption.swiper-slide-caption
a.button.button{width:auto !important;min-width:0 !important;max-width:min(100%, 280px) !important;height:auto !important;min-height:50px !important;max-height:none !important;padding:12px 22px !important;border-radius:15px !important;font-size:clamp(14px, .82vw, 16px) !important;line-height:1.2 !important}/* Header booking CTA remains fitted to its navigation slot. */html body[class] .page.page .page-header.frc-nav-ready.frc-nav-ready
.rd-navbar-nav-wrap__element .button.button{width:100% !important;min-width:0 !important;max-width:100% !important;height:auto !important;min-height:54px !important;max-height:none !important;margin:0 !important;padding:10px 14px !important;border-radius:999px !important;font-size:clamp(12px, .78vw, 15px) !important;line-height:1.12 !important}@media (min-width: 1200px) and (max-width: 1499.98px){html body[class] .page.page .page-header.frc-nav-ready.frc-nav-ready
  .rd-navbar-nav-wrap__element .button.button{min-height:48px !important;padding:8px 10px !important;font-size:clamp(10.5px, .9vw, 12.5px) !important}}@media (max-width: 1199.98px){html body[class].frc-mobile-nav-open .page.page
  .page-header.frc-nav-ready.frc-nav-ready
  .rd-navbar-nav-wrap__element .button.button{width:100% !important;min-height:50px !important;padding:11px 16px !important;border-radius:16px !important;font-size:15px !important;line-height:1.16 !important}}@media (max-width: 767.98px){html body[class] .page.page a.button.button,html body[class] .page.page button.button.button,html body[class] .page.page input.button.button,html body[class] .page.page .section-lg.bg-default .col-md-10.col-lg-6 > a.button.button,html body[class] .page.page .section-lg.bg-gray-lighter .col-md-10.col-lg-6 > a.button.button,html body[class] .page.page .section-md.bg-default .col-md-10.col-lg-6 > a.button.button,html body[class] .page.page .section-md.bg-gray-lighter .col-md-10.col-lg-6 > a.button.button,html body[class] .page.page .box-menu-item__main.box-menu-item__main > a.button.button{min-height:48px !important;padding:11px 16px !important;border-radius:14px !important;font-size:14px !important;line-height:1.2 !important}html body[class] .page.page .frc-service-actions.frc-service-actions,html body[class] .page.page .frc-services-detail-actions.frc-services-detail-actions,html body[class] .page.page .frc-program-actions.frc-program-actions,html body[class] .page.page .frc-contact-actions.frc-contact-actions{gap:10px !important}html body[class] .page.page .frc-service-actions.frc-service-actions > a.button.button,html body[class] .page.page .frc-services-detail-actions.frc-services-detail-actions > a.button.button,html body[class] .page.page .frc-program-actions.frc-program-actions > a.button.button,html body[class] .page.page .frc-contact-actions.frc-contact-actions > a.button.button{flex:0 0 min(100%, 360px) !important;width:min(100%, 360px) !important;min-width:0 !important;max-width:360px !important;min-height:48px !important;margin:0 auto !important;padding:11px 16px !important;border-radius:14px !important;font-size:14px !important;align-self:center !important;justify-self:center !important}html body[class].frc-cale-page .page.page
  > section.section-lg:is(.bg-default, .bg-gray-lighter)
  > .container > .row
  > .col-md-10.col-lg-6:first-child
  > a.button.button,html body[class].frc-reviews-page .page.page
  a.button.button-primary.frc-tripadvisor-cta{width:min(100%, 360px) !important;min-width:0 !important;max-width:360px !important;min-height:48px !important;padding:11px 16px !important;border-radius:14px !important;font-size:14px !important}html body[class] .page.page .frc-fleet-section.frc-fleet-section
  article.box-menu-item > .box-menu-item__main > a.button.button{min-height:50px !important;padding:10px 12px !important;border-radius:14px !important;font-size:14px !important}html body[class] .page.page .swiper-slide-caption.swiper-slide-caption
  a.button.button{width:min(100%, 280px) !important;min-height:48px !important;padding:11px 18px !important;border-radius:14px !important;font-size:14px !important}}@media (max-width: 1199.98px) and (max-height: 700px){html body[class].frc-mobile-nav-open .page.page
  .page-header.frc-nav-ready.frc-nav-ready
  .rd-navbar-nav > li:not(.language-switcher-item)
  > a:not(.language-switcher-link){min-height:44px !important;padding-top:8px !important;padding-bottom:8px !important}html body[class].frc-mobile-nav-open .page.page
  .page-header.frc-nav-ready.frc-nav-ready
  .rd-navbar-nav-wrap__element .button.button{min-height:44px !important;padding:8px 14px !important;font-size:14px !important}}@media (prefers-reduced-motion: reduce){html body[class] .page.page a.button.button,html body[class] .page.page button.button.button,html body[class] .page.page input.button.button{transition-duration:.01ms !important}}/* Three-button content groups: one aligned row on larger screens, one compact
   centered column on mobile. The wrapper neutralizes old sibling margins. */html body[class] .page.page .frc-content-actions.frc-content-actions{display:grid !important;grid-template-columns:repeat(3, minmax(0, 1fr)) !important;gap:12px !important;align-items:stretch !important;width:100% !important;max-width:100% !important;margin:34px 0 0 !important;padding:0 !important}html body[class] .page.page .frc-content-actions.frc-content-actions > a.button.button{display:inline-flex !important;align-items:center !important;justify-content:center !important;flex:none !important;width:100% !important;min-width:0 !important;max-width:none !important;height:100% !important;min-height:54px !important;margin:0 !important;text-align:center !important}@media (max-width: 767.98px){html body[class] .page.page .frc-content-actions.frc-content-actions{grid-template-columns:minmax(0, 360px) !important;justify-content:center !important;gap:10px !important;margin-top:28px !important}html body[class] .page.page .frc-content-actions.frc-content-actions > a.button.button{width:100% !important;max-width:360px !important;height:auto !important;min-height:48px !important;margin:0 auto !important}}/*
 * Fuorirotta Charter - canonical navigation interaction states
 *
 * The same treatment is intentionally used for hover, keyboard focus,
 * an open submenu and the current page. The current page simply keeps the
 * treatment when the pointer leaves. Language pills retain their own style.
 */@media (min-width: 1200px){/* Keep the Fleet panel visually connected to its trigger at every desktop width. */html body[class] .page.page .page-header.frc-nav-ready.frc-nav-ready
    .rd-navbar-nav > li > .rd-navbar-dropdown{top:calc(100% + 8px) !important}html body[class] .page.page .page-header.frc-nav-ready.frc-nav-ready
    .rd-navbar-nav > li:not(.language-switcher-item):is(
      :hover,
      :focus-within,
      .focus,
      .opened,
      .frc-dropdown-open,
      .active,
      .current,
      .frc-current-page
    ) > a:not(.language-switcher-link),html body[class] .page.page .page-header.frc-nav-ready.frc-nav-ready
    .rd-navbar-nav > li:not(.language-switcher-item)
    > a:not(.language-switcher-link):is(:hover, :focus-visible, [aria-current="page"]){border-color:#7dd3fc !important;background-color:#075985 !important;background-image:linear-gradient(
      135deg,
      rgba(255, 255, 255, .10) 0%,
      rgba(255, 255, 255, .02) 45%,
      rgba(2, 24, 44, .20) 100%
    ) !important;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;box-shadow:inset 0 1px 0 rgba(255, 255, 255, .22),0 8px 20px rgba(2, 24, 44, .28) !important;text-decoration:none !important;text-shadow:0 1px 3px rgba(2, 24, 44, .32) !important;transform:none !important}html body[class] .page.page .page-header.frc-nav-ready.frc-nav-ready
    .rd-navbar-nav > li:not(.language-switcher-item):is(
      :hover,
      :focus-within,
      .focus,
      .opened,
      .frc-dropdown-open,
      .active,
      .current,
      .frc-current-page
    ) > a:not(.language-switcher-link)::before,html body[class] .page.page .page-header.frc-nav-ready.frc-nav-ready
    .rd-navbar-nav > li:not(.language-switcher-item)
    > a:not(.language-switcher-link):is(:hover, :focus-visible, [aria-current="page"])::before{content:"" !important;position:absolute !important;inset:auto auto 5px 50% !important;display:block !important;width:24px !important;height:3px !important;border-radius:999px !important;background:#bae6fd !important;box-shadow:0 0 8px rgba(125, 211, 252, .78) !important;pointer-events:none !important;transform:translateX(-50%) !important}html body[class] .page.page .page-header.frc-nav-ready.frc-nav-ready
    .rd-navbar-dropdown > li:is(
      :hover,
      :focus-within,
      .focus,
      .active,
      .current,
      .frc-current-page
    ) > a,html body[class] .page.page .page-header.frc-nav-ready.frc-nav-ready
    .rd-navbar-dropdown > li > a:is(:hover, :focus-visible, [aria-current="page"]){border-color:#7dd3fc !important;background-color:#bae6fd !important;background-image:linear-gradient(90deg, #bae6fd 0%, #e0f2fe 100%) !important;color:#082f49 !important;-webkit-text-fill-color:#082f49 !important;font-weight:800 !important;box-shadow:inset 4px 0 0 #075985,0 6px 16px rgba(2, 24, 44, .20) !important;text-decoration:none !important;text-shadow:none !important;transform:none !important}html body[class] .page.page .page-header.frc-nav-ready.frc-nav-ready
    .rd-navbar-nav > li:not(.language-switcher-item) > a:not(.language-switcher-link):focus-visible,html body[class] .page.page .page-header.frc-nav-ready.frc-nav-ready
    .rd-navbar-dropdown > li > a:focus-visible{outline:3px solid #ffffff !important;outline-offset:3px !important}}@media (max-width: 1199.98px){html body[class] .page.page .page-header.frc-nav-ready.frc-nav-ready
    .rd-navbar-nav > li:not(.language-switcher-item):is(
      :hover,
      :focus-within,
      .focus,
      .opened,
      .frc-dropdown-open,
      .active,
      .current,
      .frc-current-page
    ) > a:not(.language-switcher-link),html body[class] .page.page .page-header.frc-nav-ready.frc-nav-ready
    .rd-navbar-nav > li:not(.language-switcher-item)
    > a:not(.language-switcher-link):is(:hover, :focus-visible, [aria-current="page"]){border-color:#7dd3fc !important;background-color:#075985 !important;background-image:linear-gradient(90deg, #075985 0%, #0b3a5b 100%) !important;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;box-shadow:inset 4px 0 0 #7dd3fc,inset 0 1px 0 rgba(255, 255, 255, .16),0 7px 18px rgba(2, 24, 44, .24) !important;text-decoration:none !important;text-shadow:0 1px 3px rgba(2, 24, 44, .32) !important;transform:none !important}html body[class] .page.page .page-header.frc-nav-ready.frc-nav-ready
    .rd-navbar-dropdown > li:is(
      :hover,
      :focus-within,
      .focus,
      .active,
      .current,
      .frc-current-page
    ) > a,html body[class] .page.page .page-header.frc-nav-ready.frc-nav-ready
    .rd-navbar-dropdown > li > a:is(:hover, :focus-visible, [aria-current="page"]){border-color:#7dd3fc !important;background-color:#bae6fd !important;background-image:linear-gradient(90deg, #bae6fd 0%, #e0f2fe 100%) !important;color:#082f49 !important;-webkit-text-fill-color:#082f49 !important;font-weight:800 !important;box-shadow:inset 4px 0 0 #075985,0 6px 16px rgba(2, 24, 44, .18) !important;text-decoration:none !important;text-shadow:none !important;transform:none !important}html body[class] .page.page .page-header.frc-nav-ready.frc-nav-ready
    .rd-navbar-nav > li:not(.language-switcher-item) > a:not(.language-switcher-link):focus-visible,html body[class] .page.page .page-header.frc-nav-ready.frc-nav-ready
    .rd-navbar-dropdown > li > a:focus-visible{outline:3px solid #ffffff !important;outline-offset:3px !important}}/*
 * Language pills: use the same refined blue as the navigation without the
 * heavy bottom accent. The current language remains the white pill.
 */html body[class] .page.page .page-header.frc-nav-ready.frc-nav-ready
  .language-switcher-item:not(.is-active):not(.active)
  > .language-switcher-link:focus-visible{border-color:#7dd3fc !important;background-color:#075985 !important;background-image:linear-gradient(
    135deg,
    rgba(255, 255, 255, .10) 0%,
    rgba(2, 24, 44, .18) 100%
  ) !important;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;box-shadow:inset 0 1px 0 rgba(255, 255, 255, .18),0 7px 16px rgba(2, 24, 44, .22) !important;text-shadow:0 1px 2px rgba(2, 24, 44, .30) !important;transform:translateY(-1px) !important}@media (hover: hover) and (pointer: fine){html body[class] .page.page .page-header.frc-nav-ready.frc-nav-ready
    .language-switcher-item:not(.is-active):not(.active)
    > .language-switcher-link:hover{border-color:#7dd3fc !important;background-color:#075985 !important;background-image:linear-gradient(
      135deg,
      rgba(255, 255, 255, .10) 0%,
      rgba(2, 24, 44, .18) 100%
    ) !important;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;box-shadow:inset 0 1px 0 rgba(255, 255, 255, .18),0 7px 16px rgba(2, 24, 44, .22) !important;text-shadow:0 1px 2px rgba(2, 24, 44, .30) !important;transform:translateY(-1px) !important}}html body[class] .page.page .page-header.frc-nav-ready.frc-nav-ready
  .language-switcher-link:focus-visible{outline:3px solid #ffffff !important;outline-offset:3px !important}@media (forced-colors: active){html body[class] .page.page .page-header.frc-nav-ready.frc-nav-ready
    .rd-navbar-nav > li:not(.language-switcher-item):is(
      :hover,
      :focus-within,
      .focus,
      .opened,
      .frc-dropdown-open,
      .active,
      .current,
      .frc-current-page
    ) > a:not(.language-switcher-link),html body[class] .page.page .page-header.frc-nav-ready.frc-nav-ready
    .rd-navbar-nav > li:not(.language-switcher-item)
    > a:not(.language-switcher-link):is(:hover, :focus-visible, [aria-current="page"]),html body[class] .page.page .page-header.frc-nav-ready.frc-nav-ready
    .rd-navbar-dropdown > li:is(
      :hover,
      :focus-within,
      .focus,
      .active,
      .current,
      .frc-current-page
    ) > a,html body[class] .page.page .page-header.frc-nav-ready.frc-nav-ready
    .rd-navbar-dropdown > li > a:is(:hover, :focus-visible, [aria-current="page"]){border-color:HighlightText !important;background:Highlight !important;color:HighlightText !important;-webkit-text-fill-color:HighlightText !important;box-shadow:none !important;forced-color-adjust:auto !important}html body[class] .page.page .page-header.frc-nav-ready.frc-nav-ready
    .rd-navbar-nav > li:not(.language-switcher-item)
    > a:not(.language-switcher-link)::before{display:none !important}html body[class] .page.page .page-header.frc-nav-ready.frc-nav-ready
    .language-switcher-item:not(.is-active):not(.active)
    > .language-switcher-link:is(:hover, :focus-visible){border-color:HighlightText !important;background:Highlight !important;color:HighlightText !important;-webkit-text-fill-color:HighlightText !important;box-shadow:none !important;forced-color-adjust:auto !important}}@media (prefers-reduced-motion: reduce){html body[class] .page.page .page-header.frc-nav-ready.frc-nav-ready
    .rd-navbar-nav > li:not(.language-switcher-item) > a:not(.language-switcher-link),html body[class] .page.page .page-header.frc-nav-ready.frc-nav-ready
    .rd-navbar-dropdown > li > a{transition:none !important}}/* Fuorirotta Charter - restrained, navigation-aware back-to-top control. */html body #ui-to-top.ui-to-top,html body .frc-scroll-top{border-color:#5b8da8 !important;background:#ffffff !important;background-color:#ffffff !important;background-image:none !important;color:#075985 !important;-webkit-text-fill-color:#075985 !important;box-shadow:inset 0 1px 0 rgba(255, 255, 255, .96),0 8px 20px rgba(8, 47, 73, .18) !important;filter:none !important}@media (hover: hover) and (pointer: fine){html body #ui-to-top.ui-to-top:hover:not(:active),html body .frc-scroll-top:hover:not(:active){border-color:#075985 !important;background:#f0f9ff !important;background-color:#f0f9ff !important;background-image:none !important;color:#0b3a5b !important;-webkit-text-fill-color:#0b3a5b !important;box-shadow:inset 0 1px 0 #ffffff,0 10px 22px rgba(8, 47, 73, .22) !important;transform:translateY(-1px) scale(1.02) !important}}html body #ui-to-top.ui-to-top:active,html body .frc-scroll-top:active{border-color:#075985 !important;background:#e0f2fe !important;background-color:#e0f2fe !important;background-image:none !important;color:#082f49 !important;-webkit-text-fill-color:#082f49 !important;box-shadow:0 4px 10px rgba(8, 47, 73, .18) !important;transform:translateY(0) scale(.98) !important}html body #ui-to-top.ui-to-top:focus-visible,html body .frc-scroll-top:focus-visible{outline:3px solid #ffffff !important;outline-offset:3px !important;box-shadow:0 0 0 6px #075985,0 8px 18px rgba(2, 24, 44, .20) !important}/*
 * The menu controller toggles frc-mobile-nav-open on both html and body.
 * Keeping is-visible untouched lets the button restore itself automatically
 * as soon as the menu closes, without waiting for another scroll event.
 */@media (max-width: 1199.98px){html.frc-mobile-nav-open body .frc-scroll-top,html body.frc-mobile-nav-open .frc-scroll-top,html body:has(.page-header .rd-navbar-nav-wrap.active) .frc-scroll-top{opacity:0 !important;visibility:hidden !important;pointer-events:none !important;transform:translateY(14px) scale(.96) !important}}@media (forced-colors: active){html body #ui-to-top.ui-to-top,html body .frc-scroll-top{border-color:ButtonText !important;background:ButtonFace !important;color:ButtonText !important;-webkit-text-fill-color:ButtonText !important;box-shadow:none !important;forced-color-adjust:auto !important}}@media (prefers-reduced-motion: reduce){html body #ui-to-top.ui-to-top,html body .frc-scroll-top{transition:none !important}}/*
 * Home hero: keep the video natural and protect the copy locally.
 * This intentionally overrides the site-wide WCAG overlay, which is too dark
 * for a moving image, while retaining strong contrast around the text.
 */html body:not(.frc-booking-page):not(.frc-checkout-page)
  .swiper-form-wrap.frc-video-only-hero .frc-video-hero-slide::before{background:radial-gradient(
      ellipse 62% 88% at 25% 56%,
      rgba(3, 18, 27, 0.42) 0%,
      rgba(3, 18, 27, 0.27) 43%,
      rgba(3, 18, 27, 0.07) 72%,
      rgba(3, 18, 27, 0) 100%
    ),linear-gradient(
      180deg,
      rgba(3, 18, 27, 0.11) 0%,
      rgba(3, 18, 27, 0.02) 42%,
      rgba(3, 18, 27, 0.14) 100%
    ) !important}/* Keep the full-screen hero behind the fixed nav, including fractional widths. */html body .page:has(> .swiper-form-wrap.frc-video-only-hero){padding-top:0 !important}/* A single, keyboard-accessible control group, outside the animated slide. */html body .swiper-form-wrap.frc-video-only-hero .frc-video-controls{position:absolute;z-index:20;right:max(24px, env(safe-area-inset-right));bottom:max(24px, calc(env(safe-area-inset-bottom) + 12px));display:flex;align-items:stretch;gap:8px;max-width:calc(100% - 48px);margin:0;/* Empty space around the controls must not intercept nearby booking links. */pointer-events:none}html body .swiper-form-wrap.frc-video-only-hero .frc-video-control{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-width:0;min-height:48px;margin:0;padding:12px 18px;border:1px solid rgba(186, 230, 253, 0.65);border-radius:999px;background:rgba(8, 47, 73, 0.9);color:#fff;-webkit-text-fill-color:#fff;box-shadow:0 4px 16px rgba(3, 18, 27, 0.18);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font-family:"Outfit",sans-serif;font-size:13px;font-weight:700;line-height:1.25;text-align:center;text-transform:uppercase;white-space:nowrap;cursor:pointer;pointer-events:auto;touch-action:manipulation;transition:background-color 160ms ease,border-color 160ms ease}html body .swiper-form-wrap.frc-video-only-hero .frc-video-control:focus-visible{outline:3px solid #fff;outline-offset:3px;box-shadow:0 0 0 6px #075985}html body .swiper-form-wrap.frc-video-only-hero .frc-video-control:active{background:#075985}.frc-video-control-icon{flex:0 0 20px;width:20px;height:20px;color:#bae6fd}html body .frc-video-controls .frc-video-control-label{white-space:nowrap}.frc-video-play-icon,.frc-video-sound-icon,.is-paused .frc-video-pause-icon,.is-audio-on .frc-video-muted-icon{display:none}.is-paused .frc-video-play-icon,.is-audio-on .frc-video-sound-icon{display:block}@media (hover: hover) and (pointer: fine){html body .swiper-form-wrap.frc-video-only-hero .frc-video-control:hover{background:#075985;border-color:#bae6fd}}@media (min-width: 1200px) and (min-height: 761px){html body .swiper-form-wrap.frc-video-only-hero .frc-video-controls{top:60%;bottom:auto;flex-direction:column;transform:translateY(-50%)}}@media (max-width: 1199.98px){html body .swiper-form-wrap.frc-video-only-hero .frc-video-controls{left:max(16px, calc(env(safe-area-inset-left) + 8px));right:max(16px, calc(env(safe-area-inset-right) + 8px));bottom:max(18px, calc(env(safe-area-inset-bottom) + 10px));justify-content:center;max-width:none}}@media (max-width: 575.98px),(max-height: 680.98px){html body .swiper-form-wrap.frc-video-only-hero .frc-video-control{gap:6px;min-height:44px;padding:10px;font-size:11px}.frc-video-control-icon{flex-basis:18px;width:18px;height:18px}}/* Leave the bottom corner free for the site's chat launcher on phones. */@media (max-width: 575.98px) and (orientation: portrait){html body .swiper-form-wrap.frc-video-only-hero .frc-video-controls{bottom:max(84px, calc(env(safe-area-inset-bottom) + 72px))}}@media (max-height: 680.98px) and (orientation: landscape){html body .swiper-form-wrap.frc-video-only-hero .frc-video-controls{left:max(16px, calc(env(safe-area-inset-left) + 8px));right:max(16px, calc(env(safe-area-inset-right) + 8px));bottom:max(10px, calc(env(safe-area-inset-bottom) + 8px));justify-content:flex-start;max-width:none}}@media (prefers-reduced-motion: reduce){html body .swiper-form-wrap.frc-video-only-hero .frc-video-control{transition:none}}/* Reserve room for both the fixed header and controls on short desktop windows. */@media (min-width: 992px) and (max-height: 760.98px) and (orientation: landscape){html body:not(.frc-booking-page) .page > .page-header.frc-nav-ready +
    .swiper-form-wrap.frc-video-only-hero .swiper-slide-caption{padding-top:104px !important;padding-bottom:76px !important}html body:not(.frc-booking-page) .swiper-form-wrap.frc-video-only-hero .swiper-slide-caption h1{padding-bottom:0 !important}html body .swiper-form-wrap.frc-video-only-hero .frc-video-controls{top:auto;left:max(16px, calc(env(safe-area-inset-left) + 8px));right:max(16px, calc(env(safe-area-inset-right) + 8px));bottom:max(10px, calc(env(safe-area-inset-bottom) + 8px));flex-direction:row;justify-content:flex-start;max-width:none;transform:none}}@media (min-width: 1200px) and (max-height: 760.98px){html body:not(.frc-booking-page) .page > .page-header.frc-nav-ready +
    .swiper-form-wrap.frc-video-only-hero .swiper-slide-caption{padding-top:clamp(228px, 39vh, 236px) !important}}/* Extremely short desktop windows can scroll instead of clipping the hero copy. */@media (min-width: 1200px) and (max-height: 499.98px){html body:not(.frc-booking-page) .page .swiper-form-wrap.frc-video-only-hero,html body:not(.frc-booking-page) .page .swiper-form-wrap.frc-video-only-hero
    :is(.swiper-container, .swiper-wrapper, .swiper-slide, .swiper-slide-caption){height:500px !important;min-height:500px !important}}html body .swiper-form-wrap.frc-video-only-hero .frc-hero-video{filter:none !important}html body .swiper-form-wrap.frc-video-only-hero .swiper-slide-caption h1,html body .swiper-form-wrap.frc-video-only-hero .swiper-slide-caption h2,html body .swiper-form-wrap.frc-video-only-hero .swiper-slide-caption h6,html body .swiper-form-wrap.frc-video-only-hero .swiper-slide-caption p{color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;text-shadow:0 2px 3px rgba(0, 0, 0, 0.92),0 5px 20px rgba(0, 12, 20, 0.72) !important}/* Tablet: the copy becomes centered, so the local contrast follows it. */@media (min-width: 768px) and (max-width: 991.98px){html body:not(.frc-booking-page):not(.frc-checkout-page)
    .swiper-form-wrap.frc-video-only-hero .frc-video-hero-slide::before{background:radial-gradient(
        ellipse 80% 78% at 50% 53%,
        rgba(3, 18, 27, 0.42) 0%,
        rgba(3, 18, 27, 0.25) 46%,
        rgba(3, 18, 27, 0.05) 76%,
        rgba(3, 18, 27, 0) 100%
      ),linear-gradient(
        180deg,
        rgba(3, 18, 27, 0.11) 0%,
        rgba(3, 18, 27, 0.02) 42%,
        rgba(3, 18, 27, 0.14) 100%
      ) !important}}/* Phone: preserve the brighter edges and protect the central text column. */@media (max-width: 767.98px){html body:not(.frc-booking-page):not(.frc-checkout-page)
    .swiper-form-wrap.frc-video-only-hero .frc-video-hero-slide::before{background:radial-gradient(
        ellipse 108% 70% at 50% 49%,
        rgba(3, 18, 27, 0.44) 0%,
        rgba(3, 18, 27, 0.27) 48%,
        rgba(3, 18, 27, 0.06) 78%,
        rgba(3, 18, 27, 0) 100%
      ),linear-gradient(
        180deg,
        rgba(3, 18, 27, 0.12) 0%,
        rgba(3, 18, 27, 0.03) 45%,
        rgba(3, 18, 27, 0.16) 100%
      ) !important}/* Keep the original clean layout and add only a soft halo to the copy. */html body .swiper-form-wrap.frc-video-only-hero .swiper-slide-caption h1,html body .swiper-form-wrap.frc-video-only-hero .swiper-slide-caption p{text-shadow:0 2px 3px rgba(0, 0, 0, 0.82),0 0 10px rgba(3, 18, 27, 0.58),0 5px 16px rgba(3, 18, 27, 0.42) !important}}/* Short landscape screens need a slightly wider protection around wrapped copy. */@media (max-width: 991.98px) and (max-height: 600px) and (orientation: landscape){html body:not(.frc-booking-page):not(.frc-checkout-page)
    .swiper-form-wrap.frc-video-only-hero .frc-video-hero-slide::before{background:radial-gradient(
        ellipse 78% 110% at 50% 54%,
        rgba(3, 18, 27, 0.43) 0%,
        rgba(3, 18, 27, 0.25) 48%,
        rgba(3, 18, 27, 0.05) 78%,
        rgba(3, 18, 27, 0) 100%
      ),linear-gradient(
        180deg,
        rgba(3, 18, 27, 0.12) 0%,
        rgba(3, 18, 27, 0.03) 45%,
        rgba(3, 18, 27, 0.15) 100%
      ) !important}}/* Reserve a separate row above chat even on short portrait phones. */@media (max-width: 575.98px) and (max-height: 540.98px) and (orientation: portrait){html body:not(.frc-booking-page) .swiper-form-wrap.frc-video-only-hero .swiper-slide-caption{padding-top:90px !important;padding-bottom:140px !important}html body:not(.frc-booking-page) .swiper-form-wrap.frc-video-only-hero .swiper-slide-caption h1{margin-bottom:10px !important;font-size:32px !important;line-height:0.94 !important}html body:not(.frc-booking-page) .swiper-form-wrap.frc-video-only-hero .swiper-slide-caption h2{margin-bottom:10px !important;padding:7px 10px !important;font-size:12px !important;line-height:1.15 !important}html body:not(.frc-booking-page) .swiper-form-wrap.frc-video-only-hero .swiper-slide-caption p{margin-bottom:12px !important;font-size:15px !important;line-height:1.32 !important}html body:not(.frc-booking-page) .swiper-form-wrap.frc-video-only-hero .swiper-slide-caption .button.button-primary{min-height:44px !important;padding:10px 16px !important}}/* Keep words whole in every language. Important declarations in this layer
   take precedence over the older, unlayered page-specific wrapping rules. */@layer frc-whole-words{html,body,body *{-webkit-hyphens:none !important;hyphens:none !important;word-break:normal !important;overflow-wrap:normal !important}/* Email addresses are technical strings: allow them to fit narrow contact
     cards without inserting hyphens or changing the destination address. */body a[href^="mailto:"]{overflow-wrap:anywhere !important}/* Give long German headings room without splitting compound words. */@media (min-width: 992px) and (max-width: 1199.98px){html[lang="de"] .frc-excursion-video-section + section h3{font-size:clamp(42px, 4.4vw, 50px) !important}}@media (max-width: 575.98px){html[lang="de"] .frc-excursion-video-section + section h3{font-size:clamp(24px, 7.3vw, 36px) !important}html[lang="de"] .frc-services-preview h2{font-size:clamp(28px, 8.3vw, 46px) !important}html[lang="de"] .parallax-header[data-parallax-img="images/parallax-1.jpg"] h2{font-size:clamp(32px, 9vw, 54px) !important}html[lang="de"] .frc-service-detail-card h4{display:block !important;width:fit-content !important;max-width:100% !important}}}