/* TOUR SCOPE V8.3.10 R13 — micro-polish & visual consistency layer.
   CSS-only presentation override on top of R12. No booking, data, popup,
   Cloudinary, CMS, SEO, security, routing or persistence logic changes. */

:root{
  --ts13-ink:#0a304a;
  --ts13-muted:#526d7e;
  --ts13-teal:#07889a;
  --ts13-teal2:#0aa9b2;
  --ts13-aqua:#21c8c8;
  --ts13-coral:#ff6846;
  --ts13-coral2:#ff8a6d;
  --ts13-paper:#fff;
  --ts13-line:#d9e7eb;
  --ts13-soft:#f6fbfb;
  --ts13-shadow:0 14px 34px rgba(7,58,79,.10);
  --ts13-shadow-hover:0 20px 44px rgba(7,58,79,.16);
  --ts13-ease:cubic-bezier(.2,.75,.2,1);
}

/* --------------------------------------------------------------------------
   Trip cards — stronger editorial typography, clearer chips, premium CTA
   -------------------------------------------------------------------------- */
.trip-card{border-color:#d8e6ea !important;box-shadow:0 12px 30px rgba(7,58,79,.085) !important}
.trip-card:hover{box-shadow:var(--ts13-shadow-hover) !important}
.trip-card-top p{
  font-size:10.5px !important;
  line-height:1 !important;
  font-weight:900 !important;
  letter-spacing:.055em !important;
  padding:8px 11px !important;
  border-radius:9px !important;
  background:rgba(7,53,74,.91) !important;
}
.trip-card-body{padding:35px 21px 20px !important;min-height:344px !important}
.trip-card h3{
  margin:0 0 9px !important;
  color:var(--ts13-ink) !important;
  font-size:22.5px !important;
  line-height:1.14 !important;
  font-weight:900 !important;
  letter-spacing:-.025em !important;
}
.trip-description{
  color:#526f81 !important;
  min-height:64px !important;
  margin:0 0 17px !important;
  font-size:13.25px !important;
  line-height:1.58 !important;
  font-weight:620 !important;
  letter-spacing:.002em !important;
}
.trip-facts{gap:8px !important;margin-bottom:9px !important}
.trip-facts>span,
.trip-best-for span{
  min-height:29px !important;
  padding:0 10px !important;
  font-size:10.5px !important;
  line-height:1 !important;
  font-weight:800 !important;
  letter-spacing:.035em !important;
  color:#49687a !important;
  border-color:#dce8ec !important;
}
.trip-facts>span{background:#f3f8f9 !important}
.trip-facts>span:first-child{
  min-height:36px !important;
  min-width:52% !important;
  top:-18px !important;
  font-size:10.5px !important;
  font-weight:900 !important;
  color:#446678 !important;
  background:#fff !important;
  border:1px solid #e6eef1 !important;
  box-shadow:0 9px 20px rgba(7,58,79,.11) !important;
}
.trip-best-for{gap:7px !important;margin:6px 0 17px !important}
.trip-best-for span{background:#fff !important}
.trip-note{font-size:12.5px !important;line-height:1.55 !important;font-weight:650 !important;color:#5c7483 !important}
.trip-price strong{font-size:14px !important;font-weight:900 !important}
.trip-price del,.trip-price small{font-size:11px !important;font-weight:700 !important}

.trip-actions{gap:8px !important;align-items:stretch !important}
.trip-detail-button{
  position:relative !important;
  overflow:hidden !important;
  min-height:52px !important;
  padding:6px 6px 6px 17px !important;
  border:1px solid rgba(255,255,255,.16) !important;
  border-radius:14px !important;
  background:linear-gradient(135deg,#07788b 0%,#079aa7 56%,#10b4ba 100%) !important;
  box-shadow:0 10px 22px rgba(5,119,134,.18) !important;
  text-transform:none !important;
  transition:transform .24s var(--ts13-ease),box-shadow .24s ease,filter .24s ease !important;
}
.trip-detail-button:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(105deg,transparent 0 44%,rgba(255,255,255,.13) 50%,transparent 56%);
  transform:translateX(-120%);
  transition:transform .55s ease;
  pointer-events:none;
}
.trip-detail-button span{
  position:relative;z-index:2;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:900 !important;
  letter-spacing:.015em !important;
}
.trip-detail-button b{
  position:relative;z-index:2;
  width:40px !important;height:40px !important;min-width:40px !important;
  border-radius:10px !important;
  background:linear-gradient(145deg,var(--ts13-coral),var(--ts13-coral2)) !important;
  box-shadow:0 6px 14px rgba(255,104,70,.24) !important;
  transition:transform .24s var(--ts13-ease),box-shadow .24s ease !important;
}
.trip-detail-button:hover{
  background:linear-gradient(135deg,#066e81 0%,#078f9c 56%,#0cabb2 100%) !important;
  transform:translateY(-2px) !important;
  box-shadow:0 15px 28px rgba(5,119,134,.24) !important;
  filter:saturate(1.06) !important;
}
.trip-detail-button:hover:after{transform:translateX(120%)}
.trip-detail-button:hover b{transform:translateX(2px) !important;background:linear-gradient(145deg,var(--ts13-coral),var(--ts13-coral2)) !important}
.trip-whatsapp-button{
  width:52px !important;height:52px !important;min-width:52px !important;
  border-radius:14px !important;
  background:linear-gradient(145deg,#078273,#0ca58c) !important;
  box-shadow:0 10px 22px rgba(7,130,115,.16) !important;
}

/* Small premium labels across experience pages: readable, never hairline. */
.xp-proof small,.signature-proof small,.xp-number,.xp-related small,.xp-gallery figcaption,
.xp-suit-panel li,.xp-bring li,.xp-fact{
  font-weight:800 !important;
}
.xp-proof small,.signature-proof small{font-size:10.5px !important;opacity:.82 !important}
.xp-proof strong,.signature-proof strong{font-size:13.5px !important;font-weight:850 !important}
.xp-number,.xp-related small{font-size:10.5px !important}
.xp-suit-panel li,.xp-bring li{font-size:12.5px !important;line-height:1.45 !important}
.xp-fact{font-size:13.5px !important;line-height:1.55 !important}

/* --------------------------------------------------------------------------
   Footer — one brand treatment everywhere, no decorative circles/placeholders
   -------------------------------------------------------------------------- */
footer,.signature-footer,.xp-footer{
  background:linear-gradient(118deg,#087f93 0%,#0b9fab 48%,#18b9b6 100%) !important;
  border-top:0 !important;
  padding-top:54px !important;
}
footer:before,.signature-footer:before,.xp-footer:before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;height:3px;
  background:linear-gradient(90deg,var(--ts13-coral),var(--ts13-aqua),#fff3 72%,transparent) !important;
  pointer-events:none;
}
footer:after,.signature-footer:after,.xp-footer:after{display:none !important;content:none !important}

/* Homepage footer: replace the emblem + text composition with the approved
   horizontal brand lockup so all public footers use one visual signature. */
.footer-brand-signature{
  width:310px !important;
  height:92px !important;
  display:block !important;
  padding:8px 14px !important;
  border:1px solid rgba(255,255,255,.62) !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.94) url('/brand/tour-scope-horizontal.png') center/88% auto no-repeat !important;
  box-shadow:0 12px 28px rgba(3,68,78,.14) !important;
}
.footer-brand-signature .footer-emblem,
.footer-brand-signature .footer-wordmark{display:none !important}

.signature-footer>a:first-child,
.xp-footer>a:first-child{
  width:310px !important;
  height:92px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:8px 14px !important;
  border:1px solid rgba(255,255,255,.62) !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.94) !important;
  box-shadow:0 12px 28px rgba(3,68,78,.14) !important;
}
.signature-footer>a:first-child img,
.xp-footer>a:first-child img{
  width:282px !important;
  height:76px !important;
  max-width:100% !important;
  object-fit:contain !important;
  object-position:center !important;
  filter:none !important;
}

.site-shell>footer,.signature-footer,.xp-footer{
  grid-template-columns:minmax(280px,.9fr) minmax(300px,1fr) !important;
  gap:20px 64px !important;
  align-items:center !important;
}
footer>p,.signature-footer>p,.xp-footer>p{
  max-width:470px !important;
  margin:0 !important;
  font-size:14px !important;
  line-height:1.6 !important;
  font-weight:650 !important;
  color:rgba(255,255,255,.92) !important;
}
footer>p strong,.signature-footer>p strong,.xp-footer>p strong{
  display:inline-block !important;
  margin-bottom:5px !important;
  font-size:26px !important;
  line-height:1.05 !important;
  letter-spacing:-.025em !important;
  font-weight:900 !important;
  color:#fff !important;
}

/* Homepage already has icon buttons. Experience/Speedboat footer links become
   the same compact icon language through CSS masks while preserving link text
   for assistive technologies. */
.signature-footer nav,.xp-footer nav{gap:9px !important;display:flex !important;align-items:center !important;flex-wrap:wrap !important}
.signature-footer nav a,.xp-footer nav a{
  width:46px !important;height:46px !important;min-width:46px !important;
  padding:0 !important;
  display:grid !important;place-items:center !important;
  border:1px solid rgba(255,255,255,.40) !important;
  border-radius:13px !important;
  background:rgba(255,255,255,.15) !important;
  box-shadow:0 8px 18px rgba(3,68,78,.12) !important;
  font-size:0 !important;
  color:#fff !important;
}
.signature-footer nav a:before,.xp-footer nav a:before{
  content:"";
  width:21px;height:21px;
  background:currentColor;
  -webkit-mask:center/contain no-repeat;
  mask:center/contain no-repeat;
}
.signature-footer nav a[href*="instagram"]:before,.xp-footer nav a[href*="instagram"]:before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='3' y='3' width='18' height='18' rx='5' fill='none' stroke='black' stroke-width='2'/%3E%3Ccircle cx='12' cy='12' r='4' fill='none' stroke='black' stroke-width='2'/%3E%3Ccircle cx='17.5' cy='6.5' r='1.2' fill='black'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='3' y='3' width='18' height='18' rx='5' fill='none' stroke='black' stroke-width='2'/%3E%3Ccircle cx='12' cy='12' r='4' fill='none' stroke='black' stroke-width='2'/%3E%3Ccircle cx='17.5' cy='6.5' r='1.2' fill='black'/%3E%3C/svg%3E");
}
.signature-footer nav a[href*="facebook"]:before,.xp-footer nav a[href*="facebook"]:before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M14 8h3V4.2c-.5-.1-2.2-.2-4-.2-3 0-5 1.8-5 5.2V12H5v4h3v8h4v-8h3.3l.7-4h-4V9.6c0-1.2.3-1.6 2-1.6Z'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M14 8h3V4.2c-.5-.1-2.2-.2-4-.2-3 0-5 1.8-5 5.2V12H5v4h3v8h4v-8h3.3l.7-4h-4V9.6c0-1.2.3-1.6 2-1.6Z'/%3E%3C/svg%3E");
}
.signature-footer nav a[href*="wa.me"]:before,.xp-footer nav a[href*="wa.me"]:before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M20.5 3.5A11.7 11.7 0 0 0 12.1 0 11.9 11.9 0 0 0 1.8 17.8L.1 24l6.4-1.7A11.9 11.9 0 0 0 24 11.9c0-3.2-1.2-6.2-3.5-8.4Zm-8.4 18.4a9.9 9.9 0 0 1-5-1.4l-.4-.2-3.8 1 1-3.7-.2-.4a9.9 9.9 0 1 1 8.4 4.7Z'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M20.5 3.5A11.7 11.7 0 0 0 12.1 0 11.9 11.9 0 0 0 1.8 17.8L.1 24l6.4-1.7A11.9 11.9 0 0 0 24 11.9c0-3.2-1.2-6.2-3.5-8.4Zm-8.4 18.4a9.9 9.9 0 0 1-5-1.4l-.4-.2-3.8 1 1-3.7-.2-.4a9.9 9.9 0 1 1 8.4 4.7Z'/%3E%3C/svg%3E");
}
.signature-footer nav a:hover,.xp-footer nav a:hover{background:#fff !important;color:var(--ts13-teal) !important;border-color:#fff !important;transform:translateY(-2px) !important}

.ts-footer-contact{margin-top:2px !important;max-width:820px !important}
.ts-footer-email{
  min-height:56px !important;
  border-radius:14px !important;
  background:rgba(255,255,255,.16) !important;
  border-color:rgba(255,255,255,.36) !important;
}
.ts-footer-email-text small{font-size:8.5px !important;font-weight:900 !important;opacity:.80 !important}
.ts-footer-email-text strong{font-size:13.5px !important;font-weight:900 !important}
footer>small,.ts-footer-copyright{
  color:rgba(255,255,255,.86) !important;
  font-size:10px !important;
  line-height:1.4 !important;
  letter-spacing:.08em !important;
  font-weight:800 !important;
}

/* --------------------------------------------------------------------------
   Touch/mobile refinements
   -------------------------------------------------------------------------- */
@media(max-width:900px){
  .trip-card-body{min-height:0 !important;padding:34px 18px 18px !important}
  .trip-card h3{font-size:21px !important}
  .trip-description{font-size:13px !important;line-height:1.58 !important;min-height:0 !important}
  .trip-facts>span,.trip-best-for span{font-size:10.5px !important;min-height:29px !important}
  .trip-detail-button{min-height:52px !important}
  .trip-detail-button span{font-size:12px !important}
  .trip-whatsapp-button{width:52px !important;height:52px !important;min-width:52px !important}

  .site-shell>footer,.signature-footer,.xp-footer{grid-template-columns:1fr !important;gap:16px !important}
  .footer-brand-signature,.signature-footer>a:first-child,.xp-footer>a:first-child{width:270px !important;height:82px !important}
  .signature-footer>a:first-child img,.xp-footer>a:first-child img{width:246px !important;height:66px !important}
  footer>p,.signature-footer>p,.xp-footer>p{max-width:520px !important}
  footer>p strong,.signature-footer>p strong,.xp-footer>p strong{font-size:23px !important}
}

@media(max-width:560px){
  .trip-card-body{padding:33px 16px 16px !important}
  .trip-card h3{font-size:20.5px !important}
  .trip-description{font-size:12.75px !important;font-weight:620 !important}
  .trip-card-top p{font-size:10px !important;padding:7px 10px !important}
  .trip-facts>span:first-child{font-size:10px !important;min-height:35px !important}
  .trip-facts>span,.trip-best-for span{font-size:10px !important;padding:0 9px !important}
  .trip-detail-button{border-radius:13px !important;padding-left:15px !important}
  .trip-detail-button b{width:39px !important;height:39px !important;min-width:39px !important}

  footer,.signature-footer,.xp-footer{padding-top:46px !important;padding-bottom:28px !important}
  .footer-brand-signature,.signature-footer>a:first-child,.xp-footer>a:first-child{width:242px !important;height:74px !important}
  .signature-footer>a:first-child img,.xp-footer>a:first-child img{width:220px !important;height:60px !important}
  .signature-footer nav a,.xp-footer nav a{width:44px !important;height:44px !important;min-width:44px !important}
  .ts-footer-email-text strong{font-size:12.5px !important}
}

@media(pointer:coarse){
  .trip-detail-button:hover,.trip-detail-button:hover b,.signature-footer nav a:hover,.xp-footer nav a:hover{transform:none !important}
  .trip-detail-button:after{display:none !important}
}

@media(prefers-reduced-motion:reduce){
  .trip-detail-button,.trip-detail-button b,.signature-footer nav a,.xp-footer nav a{transition:none !important;transform:none !important}
  .trip-detail-button:after{display:none !important}
}
