@charset "UTF-8";
/* CSS Document */
/* Content ====================================================== 
   0. BRANDING
   1. TYPOGRAPHY
   2. ICONS / FONTAWESOME
   3. KICKERS / BANNER FONTS
   4. SIGNATURES
   5. CARDS / CONTENT BLOCKS
   6. FOOTER
   7. HELPER CLASSES / UTILITIES
   8. FONTS / CUSTOM TYPEFACES
   9. MISC / ONE OFFS
   10. ACCESSIBILIY
   11. RESPONSIVE / MEDIA QUERIES
   12. Buttons
   13. Google SEARCH
====================================================== */
/* 0.
BRANDING / BASELINE
======================================================
====================================================== */
html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  scroll-behavior: smooth;
  font-size: clamp(14px, 1vw + 0.2rem, 16px);
  line-height: 1.3;
}
html, body {
  min-height: 100%;
}
body {
  margin: 0;
  padding: 0;
  font-family: "Manrope", sans-serif;
  font-size: 1rem;
  font-weight: 475;
  letter-spacing: 0.15px;
  font-synthesis: none;
  color: #0a0a0a;
}
p {
  font-size: 1rem;
  line-height: 1.8;
  margin: 0 0 1.25rem;
}
/* Links inside paragraphs */
p a {
  font-weight: 650;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
  transition: text-decoration-thickness 0.2s ease;
  /* removing negative tracking reduces heaviness */
  letter-spacing: 0.05px;
}
p a:hover, p a:focus-visible {
  text-decoration-thickness: 2px;
}
p strong, p b {
  font-weight: 750;
  letter-spacing: -0.125px;
}
ul.no-bullets {
  list-style: none;
  padding-left: 0;
  margin: 20px 0 0;
}
ul.no-bullets li {
  margin: 0 40px 10px;
}
/* text weight utilities */
.txt-500 {
  font-weight: 500;
}
.txt-600 {
  font-weight: 600;
}
.txt-700 {
  font-weight: 700;
}
.txt-800 {
  font-weight: 800;
}
/* COLOR DECLARATIONS.
====================================================== */
.t-blk {
  color: #051520;
}
.t-wht {
  color: #f6f6f6;
}
.t-gray {
  color: #909090;
}
.t-gray-dk {
  color: #363636;
}
.t-red {
  color: #d62828;
}
.t-red-dk {
  color: #ae0c0c;
}
.t-blue {
  color: #003b83;
}
.bg-blk {
  background-color: #051520;
}
.bg-blk-ultra {
  background-color: #000000;
}
.bg-wht {
  background-color: #f6f6f6;
}
.bg-E6 {
  background-color: #efefef;
}
.bg-C4 {
  background-color: #dddddd;
}
.bg-gray {
  background-color: #909090;
}
.bg-gray-dk {
  background-color: #363636;
}
.bg-red {
  background-color: #ae0c0c;
}
.bg-blue {
  background-color: #0085ca;
}
/* TYPOGRAPHY
====================================================== */
h1, h2, h3, h4, h5, h6 {
  color: #040b10; /* color: var(--black); */
  font-family: "YankeeBold", "Helvetica Neue", Arial, sans-serif;
  font-weight: 700;
  margin-top: 0;
}
/* Sizes and line heights */
h1 {
  font-size: clamp(1.84rem, 4.89vw, 3.22rem);
  line-height: clamp(1.18, 1.9 - 1.2vw, 1.1);
  letter-spacing: -0.03em;
}
h2 {
  font-size: clamp(1.67rem, 4.14vw, 2.65rem);
  line-height: clamp(1.30, 2.1 - 1.2vw, 1.2);
  letter-spacing: -0.0225em;
}
h3 {
  font-size: clamp(1.54rem, 3.45vw, 2.24rem);
  line-height: 1.2;
  letter-spacing: -0.02em;
}
h4 {
  font-size: clamp(1.47rem, 2.88vw, 1.9rem);
  line-height: 1.25;
  letter-spacing: -0.015em;
}
h5 {
  font-size: clamp(1.44rem, 2.42vw, 1.63rem);
  line-height: 1.375;
  letter-spacing: -0.01em;
}
h6 {
  font-size: clamp(1.27rem, 1.61vw, 1.4rem);
  line-height: 1.5;
  letter-spacing: -0.005em;
}
.h-black {
  font-family: "YankeeBlack", "Helvetica Neue", Arial, sans-serif;
  font-weight: 800 !important;
}
/* No Font Awesome arrow on heading links (H tags + .h1-.h6 utility classes) */ :is(h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6) a[href]::after {
  content: none !important;
  display: none !important;
}
/* ==========================
   Links
   ========================== */
a, a:visited {
  color: inherit;
  text-decoration: none;
  transition: text-decoration-color 0.2s ease, color 0.2s ease;
}
a:hover, a:focus {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
  color: inherit;
}
/* ==========================
   SPECIAL
   ========================== */
.ubar {
  border-top: 10px solid #ad0000;
  display: inline-block;
  padding-top: 0.125em;
}
.usabar {
  font-family: "YankeeBlack", "Helvetica Neue", Arial, sans-serif;
  font-weight: 800 !important;
  position: relative;
  display: block;
  width: 100%;
  padding-bottom: 25px;
  margin-bottom: 20px;
}
.usabar::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 10px /* clamp(3px, 2vw, 10px) */ ;
  background-color: #ad0000;
}
.ubar150 {
  position: relative;
  display: block;
  width: 100%;
  padding-bottom: 15px;
  margin-bottom: 25px;
}
.ubar150::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 10px /* clamp(3px, 2vw, 10px) */ ;
  background-color: #ad0000;
}
.ubar75 {
  position: relative;
  display: inline-block;
  padding-left: 1.5em;
  margin-bottom: 10px;
}
.ubar75::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 0.9em;
  height: 0.9em;
  background-color: #ad0000;
  transform: translateY(-50%);
}
/* Centering the bar
left: 50%;
transform: translateX(-50%); */
.h1-with-bar {
  position: relative;
  display: inline-flex;
  align-items: center;
}
.h1-with-bar::before {
  content: "";
  display: inline-block;
  width: 80px;
  height: 2px;
  background-color: #d32339; /* red bar */
  margin-right: 15px;
  vertical-align: middle;
}
/* H classes w/ font awesome post */
.h4-spec {
  font-size: clamp(1.47rem, 2.88vw, 1.9rem);
}
.h6-spec {
  font-size: clamp(1.27rem, 1.61vw, 1.4rem);
  line-height: 1.5;
  letter-spacing: -0.005em;
}
/*
2. ICONS / FONTAWESOME
======================================================
====================================================== */
.fa, .fas, .far, .fal, .fab {
  vertical-align: middle;
}
/* Accessibility Links */
a[href]::after {
  content: "\f178"; /* fa-arrow-up-right-from-square \f35d */
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  display: inline-block;
  margin-left: 20px;
  line-height: 1;
  font-size: 0.8rem;
  vertical-align: 0.08em;
  opacity: 0.95;
}
a[href]:has(img)::after {
  content: none;
}
/* Disable link arrows inside Elfsight */
div[class^="elfsight-app-"] a[href]::after {
  content: none !important;
}
/* Headings: force same icon size as body copy */
h1 a[href]::after, h2 a[href]::after, h3 a[href]::after, h4 a[href]::after, h5 a[href]::after, h6 a[href]::after {
  font-size: 0.8rem;
  vertical-align: 0.05em; /* slightly better optical alignment */
}
/* Exclusions: nav, mega menu, footer */
.ss-custom-navbar a[href]::after, .ss-mega-menu-container a[href]::after, .ss-footer-holder a[href]::after {
  content: none;
}
/* Exclusions: utility/system + card overlay links */
a[href^="mailto:"]::after, a[href^="tel:"]::after, a[href^="javascript:"]::after, a.card-link[href]::after, a[href]:empty::after {
  content: none;
}
/* Inline body copy: tighter spacing */
p a[href]::after, li a[href]::after {
  margin-left: 0.25em;
  margin-right: 0.35em;
}
/* Buttons: match button text strength */
[class^="usa-button-"] a::after {
  margin-left: 6px;
  font-size: 0.75em;
  opacity: 1;
}
/* For divs with no icon wanted */
.no-link-icons a[href]::after {
  content: none;
}
/*
3. KICKERS
======================================================
====================================================== */
.usa-kick, .usa-kick-tight, .usa-kick-lg, .usa-kick-hp, .usa-kick-news, .usa-kick-newshp {
  font-family: "YankeeBold", "Helvetica Neue", Arial, sans-serif;
  font-weight: 700;
  line-height: 1.2;
}
/* small kicker labels */
.usa-kick-news, .usa-kick-newshp {
  text-transform: uppercase;
  letter-spacing: 0.25em;
  font-size: 0.85rem;
}
.usa-kick-news {
  color: #a1791f;
  margin: 20px 0 15px !important;
}
.usa-kick-newshp {
  margin: 10px 0 0 !important;
  padding-top: 25px;
  border-top: 1px solid #f6f6f6;
  display: block;
  width: 100%;
}
/* main kicks */
.usa-kick, .usa-kick-tight {
  color: #f6f6f6;
  font-size: clamp(1.5rem, calc(0.95rem + 1.6vw), 2.5rem);
  letter-spacing: -0.0225em;
}
.usa-kick {
  margin-bottom: 10px !important;
}
.usa-kick-tight {
  margin-bottom: 0 !important;
}
.usa-kick-lg {
  color: #f6f6f6;
  font-size: clamp(1.83rem, calc(1.27rem + 2.13vw), 3.33rem);
  line-height: 1.1;
  letter-spacing: -0.02em;
  margin-top: 5px !important;
}
.usa-kick-hp {
  color: #f6f6f6;
  font-size: clamp(2.75rem, calc(1.9rem + 3.2vw), 5rem);
  line-height: 1.1;
  letter-spacing: -0.02em;
  margin-top: 5px !important;
}
/*
4A. Signatures
======================================================
====================================================== */
/* Shared base */
.band-hp-signature, .band-hp-supersig, .band-secdary-signature {
  position: relative;
  overflow: hidden;
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
  text-align: left;
  background-color: #FFFFFF;
  background-size: cover;
  background-repeat: no-repeat;
  padding: 75px 0 25px;
}
/* Heights */
.band-hp-signature, .band-secdary-signature {
  min-height: clamp(475px, 25vw + 210px, 800px);
}
.band-hp-supersig {
  min-height: clamp(500px, 38vw + 240px, 1250px);
}
.band-450-signature {
  position: relative;
  overflow: hidden;
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
  text-align: left;
  background-color: #FFFFFF;
  background-size: cover;
  background-repeat: no-repeat;
  padding: clamp(40px, 8vw, 110px) 0;
}
/* Content over overlay */
.band-hp-signature > *, .band-hp-supersig > *, .band-450-signature > *, .band-secdary-signature > * {
  position: relative;
  z-index: 1;
}
/* Shared overlay base */
.band-hp-signature::before, .band-hp-supersig::before, .band-450-signature::before, .band-secdary-signature::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
}
/* Overlays */
.band-hp-supersig::before, .band-hp-signature::before {
  background:
    linear-gradient(to bottom, rgba(0, 0, 0, 10) 0%, rgba(0, 0, 0, 0) 40%), linear-gradient(to top right, rgba(0, 0, 0, 90 /*0.6*/ ) 0%, rgba(0, 0, 0, 0) 40%), linear-gradient(to bottom left, rgba(0, 0, 0, 20) 0%, rgba(0, 0, 0, 0) 40%), linear-gradient(to top, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 40%);
}
.band-secdary-signature::before {
  background:
    linear-gradient(to bottom, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0) 40%), linear-gradient(to top, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0) 40%);
}
/* Keep only ONE .band-450-signature overlay — choose the one you intended */
.band-450-signature::before {
  background:
    linear-gradient(to bottom, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0) 40%), linear-gradient(to right, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0) 60%), linear-gradient(to top, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0) 40%);
}
.band-callout {
  position: relative;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center; /* vertically center text */
  text-align: center;
  background-color: #ffffff;
  background-size: cover;
  background-repeat: no-repeat;
  padding: 60px 0;
  min-height: 475px;
}
.band-callout::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.45) 0%, rgba(0, 0, 0, 0) 50%);
  z-index: 0;
  pointer-events: none;
}
.band-callout > * {
  position: relative;
  z-index: 1;
}
.band-040b10 {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  background-color: #040b10 /* cool green #547541*/ ;
  background-size: cover;
  background-repeat: no-repeat;
  padding: clamp(45px, 6vw, 75px) 0;
}
.band-040b10-10 {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  background-color: #040b10 /* cool green #547541*/ ;
  background-size: cover;
  background-repeat: no-repeat;
  padding: clamp(45px, 6vw, 75px) 10%;
}
.band-0068b2 {
  position: relative;
  overflow: hidden;
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
  text-align: left;
  background-color: #003b83;
  background-size: cover;
  background-repeat: no-repeat;
  padding: clamp(45px, 6vw, 75px) 10%;
  padding: 75px 0 10px;
}
.band-0068b2::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to top left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 90%);
  z-index: 0;
  pointer-events: none;
}
.band-0068b2 > * {
  position: relative;
  z-index: 1;
}
.band-esign {
  position: relative;
  overflow: hidden;
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
  text-align: left;
  background-color: #003b83 /* #0068b2 */ ;
  background-size: cover;
  background-repeat: no-repeat;
  padding: 75px 0px;
}
.band-esign::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to left, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0) 90%);
  /* background: linear-gradient(to bottom, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0) 90%), linear-gradient(to top, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0) 90%); */
  z-index: 0;
  pointer-events: none;
}
.band-esign > * {
  position: relative;
  z-index: 1;
}
.band-utility {
  position: relative;
  overflow: hidden;
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
  text-align: left;
  background-color: #003b83 /* #0068b2 */ ;
  background-size: cover;
  background-repeat: no-repeat;
  padding: 75px 0 10px;
  min-height: 325px;
}
.band-utility::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to left, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0) 90%);
  /* background: linear-gradient(to bottom, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0) 90%), linear-gradient(to top, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0) 90%); */
  z-index: 0;
  pointer-events: none;
}
.band-utility > * {
  position: relative;
  z-index: 1;
}
/* Div Padding */
.band-p25 {
  padding: 25px;
  border-radius: 5px;
}
.band-p50 {
  padding: 50px;
  border-radius: 5px;
}
/* Signature Imgs
====================================================== */
/* DESTINATIONS */
.usa-customize-sig {
  background-image: url("../../_assets/imgs/customize/usa-uns-milan.jpg");
  background-position: center center;
}
.usa-about-sig {
  background-image: url("../../_assets/imgs/about/usa-athlete-uns-sig.jpg");
  background-position: center center;
}
.usa-about-leadership {
  background-image: url("../../_assets/imgs/about/usa-athlete-about-leadership.jpg");
  background-position: center center;
}
.usa-coltou-sig {
  background-image: url("../../_assets/imgs/collegetours/usathlete-col-sig.jpg");
  background-position: center center;
}
.usa-coltou-italygreece-sig {
  background-image: url("../../_assets/imgs/destinations/tours/italy-greece/usathletetours-rome-sig.jpg");
  background-position: center center;
}
.usa-coltou-italygreece-amfi {
  background-image: url("../../_assets/imgs/destinations/tours/italy-greece/usathletetours-amfi-coast1.jpg");
  background-position: center center;
}
.usa-coltou-italygreece-athe {
  background-image: url("../../_assets/imgs/destinations/tours/italy-greece/usathletetours-athens1.jpg");
  background-position: center center;
}
.usa-coltou-italygreece-rome {
  background-image: url("../../_assets/imgs/destinations/tours/italy-greece/usathletetours-rome1.jpg");
  background-position: center center;
}
.usa-coltou-italygreece-vat {
  background-image: url("../../_assets/imgs/destinations/tours/italy-greece/usathletetours-vatcity.jpg");
  background-position: center center;
}
.usa-dest-sig {
  background-image: url("../../_assets/imgs/destinations/signatures/usathlete-tours-destinations.jpg");
  background-position: center center;
}
.usa-destsig-aus {
  background-image: url("../../_assets/imgs/destinations/signatures/usathlete-tours-zurich.jpg");
  background-position: center center;
}
.usa-dest-austria-1 {
  background-image: url("../../_assets/imgs/destinations/usathletetours-austria-sm1.jpg");
  background-position: center center;
}
.usa-dest-aus-barv {
  background-image: url("../../_assets/imgs/destinations/square/aus-bavarian-castles2.jpg");
  background-position: center center;
}
.usa-dest-aus-innsbr {
  background-image: url("../../_assets/imgs/destinations/square/aus-innsbruck.jpg");
  background-position: center center;
}
.usa-dest-aus-munich {
  background-image: url("../../_assets/imgs/destinations/square/aus-munich.jpg");
  background-position: center center;
}
.usa-dest-aus-salz {
  background-image: url("../../_assets/imgs/destinations/square/aus-salzburg.jpg");
  background-position: center center;
}
.usa-destsig-brazil {
  background-image: url("../../_assets/imgs/destinations/signatures/usathlete-tours-brazil.jpg");
  background-position: center center;
}
.usa-dest-brazil-1 {
  background-image: url("../../_assets/imgs/destinations/usathletetours-brazil-sm2.jpg");
  background-position: center center;
}
.usa-dest-brazil-sugar {
  background-image: url("../../_assets/imgs/destinations/square/brazil-sugarloaf.jpg");
  background-position: center center;
}
.usa-dest-brazil-rio {
  background-image: url("../../_assets/imgs/destinations/square/brazil-riodejaneiro.jpg");
  background-position: center center;
}
.usa-dest-brazil-forest {
  background-image: url("../../_assets/imgs/destinations/square/brazil-rainforest.jpg");
  background-position: center center;
}
.usa-dest-brazil-arm {
  background-image: url("../../_assets/imgs/destinations/square/brazil-arma.jpg");
  background-position: center center;
}
.usa-destsig-classicital {
  background-image: url("../../_assets/imgs/destinations/signatures/usathlete-tours-rome.jpg");
  background-position: center center;
}
.usa-dest-clasitaly-como {
  background-image: url("../../_assets/imgs/destinations/square/classic-italy-lakecomo4.jpg");
  background-position: center center;
}
.usa-dest-clasitaly-milan {
  background-image: url("../../_assets/imgs/destinations/square/classicitaly-milan4.jpg");
  background-position: center center;
}
.usa-dest-clasitaly-rome {
  background-image: url("../../_assets/imgs/destinations/square/classicitaly-rome1.jpg");
  background-position: center center;
}
.usa-dest-clasitaly-tusc {
  background-image: url("../../_assets/imgs/destinations/square/classic-italy-tuscany.jpg");
  background-position: bottom center;
}
.usa-dest-italy-classic-sm {
  background-image: url("../../_assets/imgs/destinations/usathletetours-classicitaly.jpg");
  background-position: top center;
}
.usa-dest-eastitaly {
  background-image: url("../../_assets/imgs/destinations/usathletetours-eastern-italy2.jpg");
  background-position: left center;
}
.usa-destsig-eastitaly {
  background-image: url("../../_assets/imgs/destinations/signatures/usathlete-tours-rome.jpg");
  background-position: center center;
}
.usa-dest-eastitaly-adri {
  background-image: url("../../_assets/imgs/destinations/square/eastern-italy-adriatic-riviera1.jpg");
  background-position: right center;
}
.usa-dest-eastitaly-bolog {
  background-image: url("../../_assets/imgs/destinations/square/eastern-italy-bologna2.jpg");
  background-position: center center;
}
.usa-dest-eastitaly-rome {
  background-image: url("../../_assets/imgs/destinations/square/eastern-italy-rome.jpg");
  background-position: center center;
}
.usa-dest-eastitaly-venice {
  background-image: url("../../_assets/imgs/destinations/square/eastern-italy-venice4.jpg");
  background-position: center center;
}
.usa-destsig-ireland {
  background-image: url("../../_assets/imgs/destinations/signatures/usathlete-tours-ireland.jpg");
  background-position: center center;
}
.usa-dest-ireland {
  background-image: url("../../_assets/imgs/destinations/usathletetours-ireland.jpg");
  background-position: left center;
}
.usa-dest-ireland-belfast {
  background-image: url("../../_assets/imgs/destinations/square/ireland-belfast3.jpg");
  background-position: center center;
}
.usa-dest-ireland-cliffs {
  background-image: url("../../_assets/imgs/destinations/square/ireland-cliffs.jpg");
  background-position: center center;
}
.usa-dest-ireland-dub {
  background-image: url("../../_assets/imgs/destinations/square/ireland-dublin2.jpg");
  background-position: center center;
}
.usa-dest-ireland-gal {
  background-image: url("../../_assets/imgs/destinations/square/ireland-galway4.jpg");
  background-position: center center;
}
.usa-destsig-switz {
  background-image: url("../../_assets/imgs/destinations/signatures/usathlete-tours-austria.jpg");
  background-position: center center;
}
.usa-dest-switzerland {
  background-image: url("../../_assets/imgs/destinations/usathletetours-switzerland.jpg");
  background-position: center center;
}
.usa-dest-switz-bern {
  background-image: url("../../_assets/imgs/destinations/square/switz-bern.jpg");
  background-position: center center;
}
.usa-dest-switz-inter {
  background-image: url("../../_assets/imgs/destinations/square/switz-inter1.jpg");
  background-position: center center;
}
.usa-dest-switz-luc {
  background-image: url("../../_assets/imgs/destinations/square/switz-luc3.jpg");
  background-position: bottom center;
}
.usa-dest-switz-zur {
  background-image: url("../../_assets/imgs/destinations/square/switz-zurich.jpg");
  background-position: center center;
}
.usa-dest-recent-sp-1 {
  background-image: url("../../_assets/imgs/recent-tours/spain/spain-gen-uns6.jpg");
  background-position: right center;
}
.usa-dest-recent-sp-2 {
  background-image: url("../../_assets/imgs/recent-tours/spain/vlaencia-uns2.jpg");
  background-position: center center;
}
.usa-dest-recent-sp-3 {
  background-image: url("../../_assets/imgs/recent-tours/spain/madrid-uns.jpg");
  background-position: center center;
}
.usa-dest-recent-sp-4 {
  background-image: url("../../_assets/imgs/recent-tours/spain/peniscola-uns.jpg");
  background-position: center center;
}
.usa-dest-recent-sp-5 {
  background-image: url("../../_assets/imgs/recent-tours/spain/barcel-uns.jpg");
  background-position: center center;
}
/* EXPLORE BLOCKS */
.usa-exp-m1 {
  background-image: url("../../_assets/imgs/inc-blocks/usa-athlete-explore1.jpg");
  background-position: center center;
}
.usa-exp-m2 {
  background-image: url("../../_assets/imgs/inc-blocks/usa-athlete-explore2.jpg");
  background-position: center center;
}
.usa-exp-m3 {
  background-image: url("../../_assets/imgs/inc-blocks/usa-athlete-explore3.jpg");
  background-position: center center;
}
.usa-exp-m4 {
  background-image: url("../../_assets/imgs/inc-blocks/usa-athlete-explore4.jpg");
  background-position: center center;
}
.usa-exp-m5 {
  background-image: url("../../_assets/imgs/inc-blocks/usa-athlete-explore5.jpg");
  background-position: center center;
}
.usa-exp-m6 {
  background-image: url("../../_assets/imgs/inc-blocks/usa-athlete-explore6.jpg");
  background-position: center center;
}
.usa-hiclub-sig {
  background-image: url("../../_assets/imgs/highclubtours/usathlete-hsc-tours-sig.jpg");
  background-position: center center;
}
.usa-why-1 {
  background-image: url("../../_assets/imgs/about/why/usa-athlete-why-1.jpg");
  background-position: center center;
}
.usa-why-2 {
  background-image: url("../../_assets/imgs/about/why/usa-athlete-why-2.jpg");
  background-position: center center;
}
.usa-why-3 {
  background-image: url("../../_assets/imgs/about/why/usa-athlete-why-3.jpg");
  background-position: center center;
}
.usa-why-4 {
  background-image: url("../../_assets/imgs/about/why/usa-athlete-why-4.jpg");
  background-position: center center;
}
.usa-why-5 {
  background-image: url("../../_assets/imgs/about/why/usathlete-why-26.jpg");
  background-position: center center;
}
.usa-why-6 {
  background-image: url("../../_assets/imgs/about/why/usa-athlete-why-6.jpg");
  background-position: center center;
}
.usa-why-7 {
  background-image: url("../../_assets/imgs/about/why/usa-athlete-why-7.jpg");
  background-position: center center;
}
.usa-why-sig {
  background-image: url("../../_assets/imgs/about/why/usa-athlete-why-sig.jpg");
  background-position: center center;
}
.usa-why-sig2 {
  background-image: url("../../_assets/imgs/about/why/usa-athlete-why-sig2.jpg");
  background-position: center center;
}
/* TEST BACKGROUNDS */
.usa-testimo-ba {
  background-image: url("../../_assets/imgs/testimonials/usa1289087649.jpg");
  background-position: top center;
}
.usa-testim-ban {
  background-image: url("../../_assets/imgs/testimonials/usathletetours-test564978312.jpg");
  background-position: top center;
}
.usa-test1 {
  background-image: url("../../_assets/imgs/test/destinations/joris-berthelot-EnTU_hr9wPA-unsplash.jpg");
  background-position: center center;
}
.usa-test2 {
  background-image: url("../../_assets/imgs/test/destinations/glade-optics-ttGLlNElbCc-unsplash.jpg");
  background-position: center center;
}
.usa-test3 {
  background-image: url("../../_assets/imgs/test/destinations/getty-images-xj_lCOeSCbU-unsplash.jpg");
  background-position: center center;
}
.usa-band-ut {
  background-color: #505050 !important;
}
/*
4. Page Bands
======================================================
====================================================== */
.container {
  width: 94% !important;
  max-width: 1600px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
@media (max-width: 767.98px) {
  .container {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
}
/* Add this RIGHT HERE */
.nav-matched {
  width: 94%;
  max-width: 1600px;
  margin: 0 auto;
  padding: 0;
}
.usa-base {
  padding: clamp(55px, 6.7vw, 110px) 0;
}
.usa-base-first {
  padding: clamp(55px, 6.7vw, 110px) 0;
}
.usa-base-firstunder {
  padding: 10px 0 50px;
}
.usa-base-body {
  padding: 50px 0px;
}
.usa-base-ut {
  padding: 50px 0;
}
.base-band-grad {
  background-color: #0a0a0a;
  background-image:
    linear-gradient(135deg, #002f59 0%, transparent 40%), linear-gradient(315deg, #6b0000 0%, transparent 40%);
  background-blend-mode: normal;
}
.usa-adblock {
  padding: clamp(55px, 6.7vw, 110px) 250px;
}
/*
5. CARDS / CONTENT BLOCKS
======================================================
====================================================== */
/* general card .card {
  background-color: rgba(0, 0, 0, 0.0);
  border: 1px solid rgba(0, 0, 0, 0.0);
  word-wrap: normal;
} */
.usacol {
  margin-bottom: clamp(25px, 4vw, 50px);
}
.usacard {
  display: flex;
  flex-direction: column;
  height: 100%;
  border-radius: 5px;
}
.spacer {
  flex-grow: 1;
}
.usacard-body {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  background-color: #E6E6E6;
  padding: 10px 15px 2px 15px;
  border: 5px solid #E6E6E6;
  border-top: none;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
  text-transform: none;
}
.usacard-body2 {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  background-color: #F6F6F6;
  padding: 10px 15px 2px 15px;
  border: 5px solid #F6F6F6;
  border-top: none;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
  text-transform: none;
}
.usa-source {
  font-family: 'PBSSans', sans-serif;
  font-weight: 400;
  font-size: .825rem;
  font-style: normal;
  color: #2e2e2e;
  margin-top: 1em;
}
.usa-source::before {
  content: "[ ";
}
.usa-source::after {
  content: " ]";
}
.usarow-gap {
  margin-left: -15px;
  margin-right: -15px;
}
.usarow-gap > .usacol {
  padding-left: 15px;
  padding-right: 15px;
}
.usa-feature-row {
  display: block;
}
.usa-feature-row .usa-feature-text {
  padding-top: 20px;
}
/* From md and up (when columns sit side by side): enable centering */
@media (min-width: 768px) {
  /* Make the row a flex container ONLY for this component */
  .usa-feature-row {
    display: flex;
    align-items: center;
  }
  /* Vertically center ONLY the text column */
  .usa-feature-row .usa-feature-text {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}
/* Tour Descriptions */
/* .usa-tour-descip {
  padding: 30px 0px 10px 0px;
  border: 2px solid #FFF;
}

/* Tour highlight items */
.small-tour-list p {
  font-size: 1rem;
  margin: 5px 0px 30px 0px;
  border-top: 2px solid #565656;
  padding: 10px 0px 7px 0px;
  width: 100%;
  line-height: 1.7;
}
@media (max-width: 1000px) {
  .small-tour-list p {
    font-size: 1rem;
    margin: 5px 0px 15px 0px;
    border-top: 1px solid #565656;
    padding: 5px 0px 5px 0px;
    width: 100%;
    line-height: 1.5;
  }
}
/*
6. FOOTER
======================================================
====================================================== */
/* =============================== */
/*        FOOTER TYPOGRAPHY        */
/* =============================== */
/*        MOBILE FOOTER NAV        */
/* =============================== */
/* =============================== */
/*        FOOTER LAYOUT FIXES      */
/* =============================== */
.link-separator {
  margin: 0 0.25rem;
  color: #FFFFFF;
}
/* Optional container spacing */
.usa-base {
  padding: clamp(50px, 8vw, 100px) 0;
}
/* Adjust mobile spacing */
@media (max-width: 767.98px) {
  .usa-base {
    padding: clamp(30px, 6vw, 70px) 0;
  }
}
.band-super .container {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  flex-grow: 1;
  height: 100%;
  position: relative;
  z-index: 1;
}
/*
7. HELPER CLASSES / UTILITIES
======================================================
====================================================== */
/* image border radius global also applied to imgzoom-wrapper */
body img {
  border-radius: 5px;
}
.ss-custom-navbar img, .ss-mega-menu-container img, .ss-footer-holder img {
  border-radius: 0;
}
.row.equalize {
  align-items: stretch; /* columns align to tallest sibling */
}
/* image border radius global also applied to imgzoom-wrapper */
.grow {
  transition: all .5s ease-in-out;
}
.grow:hover {
  transform: scale(0.65);
} /* ===== inside div === */ imgzoom img {
  opacity: 1;
  -webkit-transition: .4s ease-in-out;
  -webkit-transform: scale(1);
  transition: .4s ease-in-out;
}
imgzoom:hover img { /**** DEACTIVE opacity: .7; OR -webkit-filter: brightness(60%);****/ transform: scale(1.1);
}
.imgzoom-wrapper {
  overflow: hidden;
  border-radius: 5px;
}
.imgzoom-wrapper img {
  display: block; /* kills inline-img baseline gaps */
  width: 100%; /* keeps it clean in bootstrap cols */
  height: auto;
  border-radius: 5px; /* optional, but helps consistency */
}
/* ===== inside ad or logo === */ imgzoom-ad img {
  opacity: 1;
  -webkit-transition: .4s ease-in-out;
  -webkit-transform: scale(1);
  transition: .4s ease-in-out;
}
imgzoom-ad:hover img { /**** DEACTIVE opacity: .7; OR -webkit-filter: brightness(60%);****/ transform: scale(1.05);
}
.space-25 {
  height: 25px;
}
.space-50 {
  height: 50px;
}
.space-75 {
  height: 75px;
}
.space-100 {
  height: 100px;
}
.space-150 {
  height: 150px;
}
.space-200 {
  height: 200px;
}
/*
8. FONTS / CUSTOM TYPEFACES
======================================================
====================================================== */
@font-face {
  font-family: "YankeeLight";
  src: url('../webFonts/YankeeLight/font.woff2') format('woff2'), url('../webFonts/YankeeLight/font.woff') format('woff');
}
@font-face {
  font-family: "YankeeLightItalic";
  src: url('../webFonts/YankeeLightItalic/font.woff2') format('woff2'), url('../webFonts/YankeeLightItalic/font.woff') format('woff');
}
@font-face {
  font-family: "YankeeRegular";
  src: url('../webFonts/YankeeRegular/font.woff2') format('woff2'), url('../webFonts/YankeeRegular/font.woff') format('woff');
}
@font-face {
  font-family: "YankeeRegularItalic";
  src: url('../webFonts/YankeeRegularItalic/font.woff2') format('woff2'), url('../webFonts/YankeeRegularItalic/font.woff') format('woff');
}
@font-face {
  font-family: "YankeeMedium";
  src: url('../webFonts/YankeeMedium/font.woff2') format('woff2'), url('../webFonts/YankeeMedium/font.woff') format('woff');
}
@font-face {
  font-family: "YankeeBold";
  src: url('../webFonts/YankeeBold/font.woff2') format('woff2'), url('../webFonts/YankeeBold/font.woff') format('woff');
}
@font-face {
  font-family: "YankeeBoldItalic";
  src: url('../webFonts/YankeeBoldItalic/font.woff2') format('woff2'), url('../webFonts/YankeeBoldItalic/font.woff') format('woff');
}
@font-face {
  font-family: "YankeeBlack";
  src: url('../webFonts/YankeeBlack/font.woff2') format('woff2'), url('../webFonts/YankeeBlack/font.woff') format('woff');
}
@font-face {
  font-family: "YankeeBlackItalic";
  src: url('../webFonts/YankeeBlackItalic/font.woff2') format('woff2'), url('../webFonts/YankeeBlackItalic/font.woff') format('woff');
}
/*
9. MISC / ONE OFFS
======================================================
====================================================== */
/*
10. ACCESSIBILIY
======================================================
====================================================== */
/* Remove default outlines only on mouse click, not keyboard nav */ :focus {
  outline: 2px solid #5a9bd4; /* neutral soft blue focus */
  outline-offset: 3px;
}
/* Optional: make focus rings appear only for keyboard users */ :focus:not(:focus-visible) {
  outline: none;
}
/* Add a nice transition for smooth focus appearance */
a, button, input, textarea {
  transition: outline-color 0.2s ease, box-shadow 0.2s ease;
}
/* Optional subtle enhancement */
a:focus-visible, button:focus-visible {
  box-shadow: 0 0 0 3px rgba(90, 155, 212, 0.35); /* soft glow */
  border-radius: 4px;
}
/* 
11. RESPONSIVE / MEDIA QUERIES
======================================================
====================================================== */
/* 
12. Buttons
======================================================
====================================================== */
[class^="usa-button-"] a {
  font-family: "YankeeBold", "Helvetica Neue", Arial, sans-serif;
  font-optical-sizing: auto !important;
  font-size: 15px;
  font-weight: 800;
  line-height: 1;
  display: inline-block;
  margin: 15px 25px 20px 0;
  padding: 12px 15px 10px 15px;
  border-radius: 3px;
  text-decoration: none;
  letter-spacing: 0.05em;
  transition: all 0.3s ease;
  text-transform: uppercase;
}
/* Modifier: zero bottom margin */
.usa-button-10mb a {
  margin-bottom: 10px;
}
/* Variants */
.usa-button-light a {
  border: 1px solid #0a0a0a;
  color: #F6F6F6;
  background: #0a0a0a;
}
.usa-button-light a:hover {
  background: #F6F6F6;
  color: #0a0a0a;
  border: 1px solid #0a0a0a;
}
.usa-button-dark a {
  border: 1px solid #F6F6F6;
  color: #0a0a0a;
  background: #F6F6F6;
}
.usa-button-dark a:hover {
  background: #0a0a0a;
  color: #F6F6F6;
  border: 1px solid #F6F6F6;
}
.usa-button-red a {
  background: #D7263D;
  border-color: #D7263D;
  color: #fff;
}
.usa-button-blue a {
  background: #007BFF;
  border-color: #007BFF;
  color: #fff;
}
.usa-button-dkblue a {
  background: #262561;
  border-color: #262561;
  color: #fff;
}
.usa-button-red a:hover, .usa-button-blue a:hover, .usa-button-dkblue a:hover {
  background: #fff;
  color: inherit;
}
/* White Button */
.usa-button-white a {
  background: #fff;
  border: 1px solid #fff;
  color: #000;
  font-family: 'PBSSans-Bold', sans-serif;
  font-size: 18px;
  font-weight: 700;
  margin-top: 25px;
  padding: 0.75em 1.5em;
  border-radius: 5px;
}
.usa-button-white a:hover {
  background: #000;
  color: #fff;
  border-color: #fff;
}
.btn-row {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  align-items: center;
}
@media (max-width: 576px) {
  [class^="usa-button-"] a {
    transform: scale(0.85);
    transform-origin: left center;
  }
}
/* GOOGLE */
/* ======================================================
   13. GOOGLE SEARCH
====================================================== */

/* Main Google container */
.gsc-control-cse {
  width: 100% !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
}

/* Search box */
table.gsc-search-box {
  width: 100% !important;
  margin-bottom: 1.5rem !important;
}

.gsc-input-box {
  border: 1px solid #dddddd !important;
  border-radius: 4px !important;
}

input.gsc-input {
  font-family: "Manrope", sans-serif !important;
  font-size: 1rem !important;
  font-weight: 475 !important;
  letter-spacing: .15px !important;
  color: #0a0a0a !important;
}

/* Results wrapper */
.gsc-results,
.gsc-results-wrapper-visible,
.gsc-webResult,
.gsc-result {
  width: 100% !important;
  max-width: none !important;
}

/* Result count / sort */
.gsc-result-info,
.gsc-orderby-label,
.gsc-orderby {
  font-family: "Manrope", sans-serif !important;
  font-size: .9rem !important;
  font-weight: 475 !important;
  color: #909090 !important;
}

/* Individual result */
.gsc-webResult.gsc-result {
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid #dddddd !important;
  padding: 1.5rem 0 !important;
}

.gsc-webResult.gsc-result:last-child {
  border-bottom: 0 !important;
}

/* Remove Google's inner left indent */
.gsc-thumbnail-inside,
.gsc-url-top {
  padding-left: 0 !important;
}

/* Result title */
.gs-title,
.gs-title * {
  font-family: "YankeeBold", "Helvetica Neue", Arial, sans-serif !important;
  font-size: clamp(1.47rem, 2.88vw, 1.9rem) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: -.015em !important;
  color: #040b10 !important;
}

.gs-title {
  height: auto !important;
  margin-bottom: .25rem !important;
  text-decoration: none !important;
}

.gs-title:hover,
.gs-title:focus-visible,
.gs-title:hover *,
.gs-title:focus-visible * {
  text-decoration: underline !important;
}

/* Hide site-generated arrow after result links */
.gsc-results a[href]::after,
.gsc-results .gs-title::after,
.gsc-results .gs-title a::after {
  content: none !important;
  display: none !important;
}

/* URL */
.gs-visibleUrl,
.gs-visibleUrl-long,
.gs-visibleUrl-short {
  font-family: "Manrope", sans-serif !important;
  font-size: .9rem !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  color: #003b83 !important;
}

/* Result body copy */
.gs-snippet {
  font-family: "Manrope", sans-serif !important;
  font-size: 1rem !important;
  font-weight: 475 !important;
  line-height: 1.8 !important;
  letter-spacing: .15px !important;
  color: #363636 !important;
  margin-top: .5rem !important;
}

/* Thumbnails */
.gsc-table-cell-thumbnail {
  vertical-align: top !important;
  padding: 0 1.25rem 0 0 !important;
}

.gs-image-box {
  width: 120px !important;
  height: 90px !important;
  overflow: hidden !important;
}

.gs-image {
  width: 120px !important;
  height: 90px !important;
  max-width: none !important;
  object-fit: cover !important;
  border: 0 !important;
  border-radius: 6px !important;
}

/* Text beside thumbnail */
.gsc-table-cell-snippet-close {
  width: 100% !important;
  vertical-align: top !important;
  padding: 0 !important;
}

/* Bottom Google branding/search link */
.gcsc-more-maybe-branding-root {
  font-family: "Manrope", sans-serif !important;
}
/* 14. FAQ
======================================================
====================================================== */
/* =========================================================
   /* =========================================================
   FAQ (matches ss-footer style + behavior)
   - top rule via ::before (Bootstrap 4 gutter aware)
   - question headings: 1.5em (uppercase, YankeeBold)
   - answers inherit site base type size
   - chevron uses Font Awesome (no gray box)
   ========================================================= */
.usa-faq {
  position: relative;
  margin-top: 2rem;
  padding-top: 1.25rem; /* space below the rule */
  border-top: 0;
}
/* top rule like .ss-footer-container::before */
.usa-faq::before {
  content: "";
  position: absolute;
  top: 0;
  /*  left: 15px; right: 15px; border-top: 1px solid #FFCC00; */
}
/* item separators like footer accordion */
.usa-faq-item {
  border: 0;
  border-bottom: 1px solid #d2d2d2;
}
.usa-faq-item:last-child {
  border-bottom: 1px solid #d2d2d2;
  margin-bottom: 25px;
}
/* =========================
   Question button (heading)
   ========================= */
.usa-faq-q {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 18px 0;
  background: transparent;
  border: 0;
  cursor: pointer;
  text-align: left;
  color: #111;
  font-family: "YankeeBold", "Helvetica Neue", Arial, sans-serif !important;
  font-weight: 750;
  font-size: 1.25em;
  line-height: 1.2;
  text-transform: none;
  letter-spacing: 0.02em;
  transition: color 0.3s ease, text-decoration 0.3s ease;
}
.usa-faq-q:hover, .usa-faq-q:focus {
  color: #000;
  text-decoration: underline;
}
/* Remove any pseudo-icons if a project-wide rule ever hits buttons */
.usa-faq-q::after {
  content: none !important;
}
.usa-faq-qtext {
  flex: 1 1 auto;
}
/* =========================
   Chevron icon (Font Awesome)
   ========================= */
.usa-faq-icon {
  flex: 0 0 auto;
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  background: transparent;
  border-radius: 0;
  transition: transform 0.4s ease-in-out;
}
.usa-faq-icon::before {
  content: "\f078"; /* fa-chevron-down */
  font-family: "Font Awesome 6 Free";
  font-weight: 900; /* solid */
  font-size: 12px;
  line-height: 1;
  color: #111;
}
/* =========================
   Answer panel animation
   ========================= */
.usa-faq-a {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease-in-out;
}
/* padding inside answer */
.usa-faq-inner {
  padding: 0 0 18px 0;
}
/* Answers: match site base size (no downscaling) */
.usa-faq-inner, .usa-faq-inner p, .usa-faq-inner li {
  font-family: "Manrope", sans-serif;
  font-weight: 400;
  font-size: inherit; /* key: use whatever the site’s base type is */
  line-height: 1.8;
  letter-spacing: 0.025em;
  color: #0a0a0a;
  margin: 0;
}
/* spacing between paragraphs/lists (kept subtle) */
.usa-faq-inner p + p {
  margin-top: 0.85em;
}
.usa-faq-inner ul, .usa-faq-inner ol {
  margin: 0.85em 0 0 1.1em;
  padding: 0;
}
.usa-faq-inner li + li {
  margin-top: 0.4em;
}
/* Headings inside answers */
.usa-faq-inner h1, .usa-faq-inner h2, .usa-faq-inner h3, .usa-faq-inner h4, .usa-faq-inner h5, .usa-faq-inner h6 {
  font-family: "YankeeBold", "Helvetica Neue", Arial, sans-serif;
  font-weight: 700;
  font-size: 1.5em;
  line-height: 1.3;
  margin: 0 0 0.5em;
}
/* links in answers like footer links */
.usa-faq-inner a {
  color: inherit;
  text-decoration: none;
  transition: color 0.3s ease, text-decoration 0.3s ease;
}
.usa-faq-inner a:hover, .usa-faq-inner a:focus {
  text-decoration: underline;
  color: #0a0a0a;
}
/* =========================
   Open state hooks
   ========================= */
/* JS sets .usa-faq-a max-height to scrollHeight for smooth open/close */
.usa-faq-item.is-open .usa-faq-a {}
/* rotate chevron when open */
.usa-faq-item.is-open .usa-faq-icon {
  transform: rotate(180deg);
}