/* === theme-v88-home-slider-uppercase-mobile-h1.css === */

/* V88 — admin-selectable home slider, uppercase display typography and smaller mobile H1 */

/* V90 overrides the earlier broad uppercase treatment: only text placed on a home-slider image is capitalized. */

/* Home slider selection controls in Package Manager. */
.home-slider-selector-v88{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(210px,280px);
  gap:16px;
  padding:18px;
  border:1px solid #c9dcda;
  border-left:5px solid #f6bd55;
  background:linear-gradient(135deg,#eef6f4,#ffffff);
}
.home-slider-selector-v88 label{margin:0!important}
.slider-check-v88{
  display:flex!important;
  align-items:flex-start;
  gap:12px;
  cursor:pointer;
}
.slider-check-v88 input{
  width:21px;
  height:21px;
  margin:2px 0 0;
  accent-color:#0a5c49;
  flex:0 0 auto;
}
.slider-check-v88 span,.slider-order-v88{display:grid;gap:5px}
.slider-check-v88 b{color:#063844;font-size:.92rem;letter-spacing:.025em}
.slider-check-v88 small,.slider-order-v88 small{color:#60777a;line-height:1.5;text-transform:none}
.slider-order-v88>span{font-weight:800;color:#063844;font-size:.76rem;text-transform:uppercase;letter-spacing:.055em}
.slider-order-v88 .form-control{max-width:150px}
.slider-state-v88{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:4px 9px;
  border-radius:999px;
  font-size:.62rem;
  font-weight:800;
  letter-spacing:.04em;
  white-space:nowrap;
}
.slider-state-v88.is-on{background:#def4e8;color:#09623f;border:1px solid #a9dec3}
.slider-state-v88.is-off{background:#f1f4f4;color:#66777a;border:1px solid #d8e0e0}
.slider-toggle-v88{display:block;margin-top:7px;white-space:nowrap}

/* Smaller, balanced mobile H1 across public, account and admin screens. */
@media(max-width:767px){
  .home-page .luxury-hero h1,
  .home-page .home-db-empty-hero h1{
    font-size:clamp(1.75rem,8.5vw,2.2rem)!important;
    line-height:1.08!important;
    letter-spacing:-.025em!important;
  }
  .is-inner .page-hero h1{
    font-size:clamp(1.6rem,7.4vw,1.95rem)!important;
    line-height:1.12!important;
    letter-spacing:-.02em!important;
  }
  .premium-admin-dashboard .dash-main>.dash-top h1,
  .premium-dashboard-body .dash-top h1,
  .auth-card h1,
  .ticket-hero-row h1{
    font-size:1.42rem!important;
    line-height:1.16!important;
  }
  .home-slider-selector-v88{grid-template-columns:1fr;padding:15px}
  .slider-order-v88 .form-control{max-width:none}
}

@media(max-width:420px){
  .home-page .luxury-hero h1,
  .home-page .home-db-empty-hero h1{font-size:1.72rem!important}
  .is-inner .page-hero h1{font-size:1.52rem!important}
  .premium-admin-dashboard .dash-main>.dash-top h1,
  .premium-dashboard-body .dash-top h1{font-size:1.30rem!important}
}

/* V91 — complete Bahnschrift family system, selected by interface role. */
/* No font file is bundled: Windows uses its installed Bahnschrift family; other devices use safe fallbacks. */
@font-face{font-family:'TWE Bahnschrift Light';src:local('Bahnschrift Light'),local('Bahnschrift');font-style:normal;font-weight:300;font-stretch:normal;font-display:swap}
@font-face{font-family:'TWE Bahnschrift SemiLight';src:local('Bahnschrift SemiLight'),local('Bahnschrift Light'),local('Bahnschrift');font-style:normal;font-weight:350;font-stretch:normal;font-display:swap}
@font-face{font-family:'TWE Bahnschrift Regular';src:local('Bahnschrift Regular'),local('Bahnschrift');font-style:normal;font-weight:400;font-stretch:normal;font-display:swap}
@font-face{font-family:'TWE Bahnschrift SemiBold';src:local('Bahnschrift SemiBold'),local('Bahnschrift');font-style:normal;font-weight:600;font-stretch:normal;font-display:swap}
@font-face{font-family:'TWE Bahnschrift Bold';src:local('Bahnschrift Bold'),local('Bahnschrift');font-style:normal;font-weight:700;font-stretch:normal;font-display:swap}

@font-face{font-family:'TWE Bahnschrift Light Condensed';src:local('Bahnschrift Light Condensed'),local('Bahnschrift Condensed'),local('Bahnschrift');font-style:normal;font-weight:300;font-stretch:condensed;font-display:swap}
@font-face{font-family:'TWE Bahnschrift SemiLight Condensed';src:local('Bahnschrift SemiLight Condensed'),local('Bahnschrift SemiLight'),local('Bahnschrift Condensed'),local('Bahnschrift');font-style:normal;font-weight:350;font-stretch:condensed;font-display:swap}
@font-face{font-family:'TWE Bahnschrift Condensed';src:local('Bahnschrift Condensed'),local('Bahnschrift');font-style:normal;font-weight:400;font-stretch:condensed;font-display:swap}
@font-face{font-family:'TWE Bahnschrift SemiBold Condensed';src:local('Bahnschrift SemiBold Condensed'),local('Bahnschrift SemiBold'),local('Bahnschrift Condensed'),local('Bahnschrift');font-style:normal;font-weight:600;font-stretch:condensed;font-display:swap}
@font-face{font-family:'TWE Bahnschrift Bold Condensed';src:local('Bahnschrift Bold Condensed'),local('Bahnschrift Bold'),local('Bahnschrift Condensed'),local('Bahnschrift');font-style:normal;font-weight:700;font-stretch:condensed;font-display:swap}

@font-face{font-family:'TWE Bahnschrift Light SemiCondensed';src:local('Bahnschrift Light SemiCondensed'),local('Bahnschrift Light'),local('Bahnschrift');font-style:normal;font-weight:300;font-stretch:semi-condensed;font-display:swap}
@font-face{font-family:'TWE Bahnschrift SemiLight SemiCondensed';src:local('Bahnschrift SemiLight SemiCondensed'),local('Bahnschrift SemiLight'),local('Bahnschrift');font-style:normal;font-weight:350;font-stretch:semi-condensed;font-display:swap}
@font-face{font-family:'TWE Bahnschrift SemiCondensed';src:local('Bahnschrift SemiCondensed'),local('Bahnschrift');font-style:normal;font-weight:400;font-stretch:semi-condensed;font-display:swap}
@font-face{font-family:'TWE Bahnschrift SemiBold SemiCondensed';src:local('Bahnschrift SemiBold SemiCondensed'),local('Bahnschrift SemiBold'),local('Bahnschrift');font-style:normal;font-weight:600;font-stretch:semi-condensed;font-display:swap}
@font-face{font-family:'TWE Bahnschrift Bold SemiCondensed';src:local('Bahnschrift Bold SemiCondensed'),local('Bahnschrift Bold'),local('Bahnschrift');font-style:normal;font-weight:700;font-stretch:semi-condensed;font-display:swap}

:root{
  --twe-font-fallback:'DIN Alternate','Arial Narrow','Segoe UI',Arial,sans-serif;
  --twe-font-light:'TWE Bahnschrift Light','Bahnschrift Light','Bahnschrift',var(--twe-font-fallback);
  --twe-font-semilight:'TWE Bahnschrift SemiLight','Bahnschrift SemiLight','Bahnschrift',var(--twe-font-fallback);
  --twe-font-regular:'TWE Bahnschrift Regular','Bahnschrift','Bahnschrift Regular',var(--twe-font-fallback);
  --twe-font-semibold:'TWE Bahnschrift SemiBold','Bahnschrift SemiBold','Bahnschrift',var(--twe-font-fallback);
  --twe-font-bold:'TWE Bahnschrift Bold','Bahnschrift Bold','Bahnschrift',var(--twe-font-fallback);
  --twe-font-light-condensed:'TWE Bahnschrift Light Condensed','Bahnschrift Light Condensed','Bahnschrift Condensed','Bahnschrift',var(--twe-font-fallback);
  --twe-font-semilight-condensed:'TWE Bahnschrift SemiLight Condensed','Bahnschrift SemiLight Condensed','Bahnschrift SemiLight','Bahnschrift',var(--twe-font-fallback);
  --twe-font-condensed:'TWE Bahnschrift Condensed','Bahnschrift Condensed','Bahnschrift',var(--twe-font-fallback);
  --twe-font-semibold-condensed:'TWE Bahnschrift SemiBold Condensed','Bahnschrift SemiBold Condensed','Bahnschrift SemiBold','Bahnschrift',var(--twe-font-fallback);
  --twe-font-bold-condensed:'TWE Bahnschrift Bold Condensed','Bahnschrift Bold Condensed','Bahnschrift Bold','Bahnschrift',var(--twe-font-fallback);
  --twe-font-light-semicondensed:'TWE Bahnschrift Light SemiCondensed','Bahnschrift Light SemiCondensed','Bahnschrift Light','Bahnschrift',var(--twe-font-fallback);
  --twe-font-semilight-semicondensed:'TWE Bahnschrift SemiLight SemiCondensed','Bahnschrift SemiLight SemiCondensed','Bahnschrift SemiLight','Bahnschrift',var(--twe-font-fallback);
  --twe-font-semicondensed:'TWE Bahnschrift SemiCondensed','Bahnschrift SemiCondensed','Bahnschrift',var(--twe-font-fallback);
  --twe-font-semibold-semicondensed:'TWE Bahnschrift SemiBold SemiCondensed','Bahnschrift SemiBold SemiCondensed','Bahnschrift SemiBold','Bahnschrift',var(--twe-font-fallback);
  --twe-font-bold-semicondensed:'TWE Bahnschrift Bold SemiCondensed','Bahnschrift Bold SemiCondensed','Bahnschrift Bold','Bahnschrift',var(--twe-font-fallback);
}

/* General reading text — Bahnschrift Regular. */
html:root body,
html:root body p,
html:root body li,
html:root body input,
html:root body select,
html:root body textarea,
html:root body option{
  font-family:var(--twe-font-regular)!important;
  font-weight:400;
  font-stretch:normal;
  font-variation-settings:'wght' 400,'wdth' 100;
}

/* Main display headings — strong but slightly compact. */
html:root body h1,
html:root body h2,
html:root body .page-title,
html:root body .section-title,
html:root body .dash-top h1,
html:root body .auth-card h1{
  font-family:var(--twe-font-semibold-semicondensed)!important;
  font-weight:600!important;
  font-stretch:semi-condensed;
  font-variation-settings:'wght' 600,'wdth' 88;
}
html:root body h3,
html:root body h4,
html:root body h5,
html:root body h6,
html:root body .card-title,
html:root body .package-title,
html:root body .ticket-title{
  font-family:var(--twe-font-semibold)!important;
  font-weight:600!important;
  font-stretch:normal;
  font-variation-settings:'wght' 600,'wdth' 100;
}

/* Public/admin/account navigation — Bahnschrift SemiBold Condensed. */
html:root body .main-nav,
html:root body .main-nav a,
html:root body .mobile-menu,
html:root body .mobile-menu a,
html:root body .dash-account-nav,
html:root body .dash-account-nav a,
html:root body .dash-public-nav,
html:root body .dash-public-nav a,
html:root body .admin-nav,
html:root body .admin-nav a,
html:root body .sidebar,
html:root body .sidebar a,
html:root body nav,
html:root body nav a{
  font-family:var(--twe-font-semibold-condensed)!important;
  font-weight:600!important;
  font-stretch:condensed;
  font-variation-settings:'wght' 600,'wdth' 75;
}

/* Action controls — bold semi-condensed for quick recognition. */
html:root body button,
html:root body .btn,
html:root body input[type='submit'],
html:root body input[type='button'],
html:root body .action-btn,
html:root body .pay-button{
  font-family:var(--twe-font-bold-semicondensed)!important;
  font-weight:700!important;
  font-stretch:semi-condensed;
  font-variation-settings:'wght' 700,'wdth' 88;
}

/* Form labels and table headers — compact SemiBold Condensed. */
html:root body label,
html:root body legend,
html:root body th,
html:root body .form-label,
html:root body .field-label,
html:root body .filter-label{
  font-family:var(--twe-font-semibold-condensed)!important;
  font-weight:600!important;
  font-stretch:condensed;
  font-variation-settings:'wght' 600,'wdth' 75;
}
html:root body td,
html:root body table,
html:root body .data-row{
  font-family:var(--twe-font-semicondensed)!important;
  font-weight:400;
  font-stretch:semi-condensed;
  font-variation-settings:'wght' 400,'wdth' 88;
}


/* Editorial/review copy — true Bahnschrift Light for a softer reading tone. */
html:root body blockquote,
html:root body .review-text,
html:root body .testimonial-text,
html:root body .quote-text{
  font-family:var(--twe-font-light)!important;
  font-weight:300!important;
  font-stretch:normal;
  font-variation-settings:'wght' 300,'wdth' 100;
}

/* Compact section captions — Bahnschrift Condensed Regular. */
html:root body caption,
html:root body .table-caption,
html:root body .menu-section-title,
html:root body .footer-title,
html:root body .sidebar-title{
  font-family:var(--twe-font-condensed)!important;
  font-weight:400!important;
  font-stretch:condensed;
  font-variation-settings:'wght' 400,'wdth' 75;
}

/* Placeholder and quiet overline copy — Bahnschrift Light Condensed. */
html:root body input::placeholder,
html:root body textarea::placeholder,
html:root body .overline,
html:root body .micro-label{
  font-family:var(--twe-font-light-condensed)!important;
  font-weight:300!important;
  font-stretch:condensed;
  font-variation-settings:'wght' 300,'wdth' 75;
}

/* Prices, totals and dashboard figures — Bahnschrift Bold. */
html:root body strong,
html:root body b,
html:root body .price,
html:root body .amount,
html:root body .total,
html:root body .stat-value,
html:root body .metric-value,
html:root body .dashboard-number{
  font-family:var(--twe-font-bold)!important;
  font-weight:700!important;
  font-stretch:normal;
  font-variation-settings:'wght' 700,'wdth' 100;
}

/* Status chips and compact identifiers — Bold Condensed. */
html:root body .badge,
html:root body .status-badge,
html:root body .slider-state-v88,
html:root body .pill,
html:root body .tag,
html:root body .booking-code,
html:root body .reference-code{
  font-family:var(--twe-font-bold-condensed)!important;
  font-weight:700!important;
  font-stretch:condensed;
  font-variation-settings:'wght' 700,'wdth' 75;
}

/* Secondary descriptions, dates and helper copy — light/semi-condensed. */
html:root body small,
html:root body .small,
html:root body .muted,
html:root body .text-muted,
html:root body .helper-text,
html:root body .form-text,
html:root body .meta,
html:root body .metadata,
html:root body .date,
html:root body .time,
html:root body .subtitle,
html:root body .eyebrow,
html:root body footer p,
html:root body footer li,
html:root body footer a{
  font-family:var(--twe-font-light-semicondensed)!important;
  font-weight:300!important;
  font-stretch:semi-condensed;
  font-variation-settings:'wght' 300,'wdth' 88;
}

/* Breadcrumbs and tiny utility links — SemiLight Condensed. */
html:root body .breadcrumb,
html:root body .breadcrumb a,
html:root body .breadcrumbs,
html:root body .breadcrumbs a,
html:root body .utility-link,
html:root body .quick-link{
  font-family:var(--twe-font-semilight-condensed)!important;
  font-weight:350!important;
  font-stretch:condensed;
  font-variation-settings:'wght' 350,'wdth' 75;
}

/* Homepage text placed on slider images: all remain in the SemiLight family. */
html:root body.home-page .luxury-hero-slide .luxury-hero-content,
html:root body.home-page .luxury-hero-slide .luxury-hero-content .luxury-script,
html:root body.home-page .luxury-hero-slide .luxury-hero-content h1,
html:root body.home-page .luxury-hero-slide .luxury-hero-content p,
html:root body.home-page .luxury-hero-slide .luxury-hero-content a,
html:root body.home-page .luxury-hero-slide .luxury-hero-content button{
  font-family:var(--twe-font-semilight)!important;
  font-weight:350!important;
  font-stretch:normal;
  font-variation-settings:'wght' 350,'wdth' 100;
}
html:root body.home-page .luxury-hero-slide .luxury-hero-content .luxury-script{
  font-family:var(--twe-font-semilight-condensed)!important;
  font-stretch:condensed;
  font-variation-settings:'wght' 350,'wdth' 75;
  letter-spacing:.12em!important;
}
html:root body.home-page .luxury-hero-slide .luxury-hero-content h1{
  font-family:var(--twe-font-semilight-semicondensed)!important;
  font-stretch:semi-condensed;
  font-variation-settings:'wght' 350,'wdth' 88;
  letter-spacing:.012em!important;
}
html:root body.home-page .luxury-hero-slide .luxury-hero-content p{
  font-family:var(--twe-font-semilight)!important;
  font-variation-settings:'wght' 350,'wdth' 100;
}
html:root body.home-page .luxury-hero-slide .luxury-hero-actions a,
html:root body.home-page .luxury-hero-slide .luxury-hero-actions button{
  font-family:var(--twe-font-semilight-semicondensed)!important;
  font-weight:350!important;
  font-stretch:semi-condensed;
  font-variation-settings:'wght' 350,'wdth' 88;
}

/* Empty slider state follows the same SemiLight visual language. */
html:root body.home-page .home-db-empty-hero,
html:root body.home-page .home-db-empty-hero h1,
html:root body.home-page .home-db-empty-hero p,
html:root body.home-page .home-db-empty-hero span{
  font-family:var(--twe-font-semilight-semicondensed)!important;
  font-weight:350!important;
  font-stretch:semi-condensed;
  font-variation-settings:'wght' 350,'wdth' 88;
}

html:root body code,
html:root body pre,
html:root body kbd,
html:root body samp{
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono',monospace!important;
  font-variation-settings:normal;
}

/* Retain the compact mobile heading sizing from V88. */
@media(max-width:767px){
  html:root body.home-page .luxury-hero-slide .luxury-hero-content h1{
    font-weight:350!important;
    letter-spacing:.006em!important;
  }
}

/* V90 — preserve the exact entered case everywhere except text displayed over home-slider images. */
html:root body:not(#twe-case-lock-a):not(#twe-case-lock-b) *,
html:root body:not(#twe-case-lock-a):not(#twe-case-lock-b) *::before,
html:root body:not(#twe-case-lock-a):not(#twe-case-lock-b) *::after{
  text-transform:none!important;
}

/* Only slide-on-image copy remains CAPITAL, regardless of how package text was entered. */
html:root body.home-page:not(#twe-case-lock-a):not(#twe-case-lock-b) .luxury-hero-slide .luxury-hero-content,
html:root body.home-page:not(#twe-case-lock-a):not(#twe-case-lock-b) .luxury-hero-slide .luxury-hero-content *,
html:root body.home-page:not(#twe-case-lock-a):not(#twe-case-lock-b) .luxury-hero-slide .luxury-hero-content *::before,
html:root body.home-page:not(#twe-case-lock-a):not(#twe-case-lock-b) .luxury-hero-slide .luxury-hero-content *::after{
  text-transform:uppercase!important;
}


/* V92 — legibility correction after the complete Bahnschrift rollout.
   The condensed family remains available, but important interface copy must not render too small. */
html:root{
  font-size:16px;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}
html:root body{
  font-size:16px!important;
  line-height:1.55;
  font-synthesis-weight:auto;
}

/* Comfortable reading size across public pages, user dashboard and admin pages. */
html:root body main p,
html:root body main li,
html:root body .dashboard-layout p,
html:root body .dashboard-layout li,
html:root body .dashboard-main p,
html:root body .dashboard-main li,
html:root body .admin-layout p,
html:root body .admin-layout li,
html:root body .admin-main p,
html:root body .admin-main li,
html:root body .auth-page p,
html:root body .auth-page li{
  font-family:var(--twe-font-regular)!important;
  font-size:.98rem!important;
  font-weight:400!important;
  font-stretch:normal;
  font-variation-settings:'wght' 400,'wdth' 100;
  line-height:1.62!important;
}

/* Forms and action controls remain compact but no longer look miniature. */
html:root body main label,
html:root body .dashboard-layout label,
html:root body .admin-layout label,
html:root body .auth-page label,
html:root body .form-label,
html:root body .field-label,
html:root body .filter-label{
  font-family:var(--twe-font-semibold-semicondensed)!important;
  font-size:.90rem!important;
  font-weight:600!important;
  font-stretch:semi-condensed;
  font-variation-settings:'wght' 600,'wdth' 88;
  line-height:1.35!important;
}
html:root body input:not([type='checkbox']):not([type='radio']),
html:root body select,
html:root body textarea{
  font-family:var(--twe-font-regular)!important;
  font-size:.95rem!important;
  font-weight:400!important;
  line-height:1.35!important;
}
html:root body button,
html:root body .btn,
html:root body input[type='submit'],
html:root body input[type='button'],
html:root body .action-btn,
html:root body .pay-button{
  font-size:.90rem!important;
  line-height:1.2!important;
}

/* Tables, ledgers and compact cards: readable without losing density. */
html:root body th{
  font-family:var(--twe-font-semibold-semicondensed)!important;
  font-size:.84rem!important;
  font-stretch:semi-condensed;
  font-variation-settings:'wght' 600,'wdth' 88;
  line-height:1.35!important;
}
html:root body td,
html:root body .data-row{
  font-family:var(--twe-font-semicondensed)!important;
  font-size:.91rem!important;
  font-weight:400!important;
  font-stretch:semi-condensed;
  font-variation-settings:'wght' 400,'wdth' 88;
  line-height:1.45!important;
}
html:root body small,
html:root body .small,
html:root body .muted,
html:root body .text-muted,
html:root body .helper-text,
html:root body .form-text,
html:root body .meta,
html:root body .metadata,
html:root body .date,
html:root body .time,
html:root body .subtitle,
html:root body .eyebrow{
  font-family:var(--twe-font-semilight-semicondensed)!important;
  font-size:.82rem!important;
  font-weight:350!important;
  font-stretch:semi-condensed;
  font-variation-settings:'wght' 350,'wdth' 88;
  line-height:1.45!important;
}

/* Dashboard/admin side navigation needs a stronger visual size than metadata. */
html:root body .dash-account-nav>a strong,
html:root body .admin-nav a,
html:root body .sidebar a,
html:root body .dash-public-nav a,
html:root body .admin-public-nav a{
  font-family:var(--twe-font-semibold-semicondensed)!important;
  font-size:.92rem!important;
  font-weight:600!important;
  font-stretch:semi-condensed;
  font-variation-settings:'wght' 600,'wdth' 88;
  line-height:1.2!important;
}
html:root body .dash-account-nav>a small{
  font-size:.76rem!important;
  font-weight:350!important;
  line-height:1.35!important;
}

/* HEADER: readable Bahnschrift, primary labels in CAPITAL only. */
html:root body .site-header .luxury-main-nav>a:not(.btn):not(.luxury-login-link):not(.luxury-account-link),
html:root body .site-header .luxury-main-nav>a .nav-link-copy strong,
html:root body .site-header .luxury-login-link,
html:root body .site-header .luxury-account-link,
html:root body .site-header .luxury-plan-btn{
  font-family:var(--twe-font-semibold-semicondensed)!important;
  font-size:.94rem!important;
  font-weight:600!important;
  font-stretch:semi-condensed;
  font-variation-settings:'wght' 600,'wdth' 88;
  line-height:1.15!important;
  letter-spacing:.045em!important;
  text-transform:uppercase!important;
}
html:root body .site-header .nav-link-copy small,
html:root body .site-header .mobile-menu-intro,
html:root body .site-header .mobile-menu-intro *,
html:root body .site-header .mobile-menu-support,
html:root body .site-header .mobile-menu-support *{
  text-transform:none!important;
}

/* FOOTER: regular case and a visibly larger, less compressed reading scale. */
html:root body .site-footer,
html:root body .site-footer p,
html:root body .site-footer li,
html:root body .site-footer a,
html:root body .site-footer span,
html:root body .site-footer input{
  font-family:var(--twe-font-regular)!important;
  font-weight:400!important;
  font-stretch:normal;
  font-variation-settings:'wght' 400,'wdth' 100;
  text-transform:none!important;
}
html:root body .compact-footer-about p{
  font-size:.94rem!important;
  line-height:1.62!important;
}
html:root body .compact-luxury-footer h4,
html:root body .compact-footer-col h4,
html:root body .compact-contact-col h4{
  font-family:var(--twe-font-semibold-semicondensed)!important;
  font-size:1rem!important;
  font-weight:600!important;
  font-stretch:semi-condensed;
  font-variation-settings:'wght' 600,'wdth' 88;
  line-height:1.25!important;
  letter-spacing:.055em!important;
  text-transform:none!important;
}
html:root body .compact-footer-col>a,
html:root body .compact-contact-col .footer-contact-row,
html:root body .compact-contact-col p{
  font-family:var(--twe-font-regular)!important;
  font-size:.93rem!important;
  font-weight:400!important;
  line-height:1.52!important;
}
html:root body .compact-newsletter input{
  font-family:var(--twe-font-regular)!important;
  font-size:.86rem!important;
  font-weight:400!important;
  letter-spacing:.01em!important;
  text-transform:none!important;
}
html:root body .compact-footer-trust{
  font-family:var(--twe-font-regular)!important;
  font-size:.88rem!important;
  font-weight:400!important;
  line-height:1.35!important;
}
html:root body .compact-footer-bottom,
html:root body .compact-footer-bottom span,
html:root body .compact-footer-bottom a{
  font-family:var(--twe-font-regular)!important;
  font-size:.84rem!important;
  font-weight:400!important;
  line-height:1.4!important;
  text-transform:none!important;
}

/* Keep the previously requested slider-on-image copy CAPITAL. */
html:root body.home-page .luxury-hero-slide .luxury-hero-content,
html:root body.home-page .luxury-hero-slide .luxury-hero-content *{
  text-transform:uppercase!important;
}

@media(max-width:991px){
  html:root body .site-header .luxury-main-nav>a .nav-link-copy strong,
  html:root body .site-header .luxury-login-link,
  html:root body .site-header .luxury-account-link,
  html:root body .site-header .luxury-plan-btn{
    font-size:.94rem!important;
    line-height:1.2!important;
  }
  html:root body .site-header .nav-link-copy small{
    font-family:var(--twe-font-regular)!important;
    font-size:.78rem!important;
    font-weight:400!important;
    line-height:1.35!important;
    letter-spacing:.01em!important;
  }
}

@media(max-width:640px){
  html:root body{
    font-size:15.5px!important;
  }
  html:root body main p,
  html:root body main li,
  html:root body .dashboard-layout p,
  html:root body .dashboard-layout li,
  html:root body .admin-layout p,
  html:root body .admin-layout li{
    font-size:.96rem!important;
    line-height:1.58!important;
  }
  html:root body .compact-footer-about p,
  html:root body .compact-footer-col>a,
  html:root body .compact-contact-col .footer-contact-row,
  html:root body .compact-contact-col p{
    font-size:.92rem!important;
  }
  html:root body .compact-luxury-footer h4{
    font-size:.98rem!important;
  }
  html:root body .compact-footer-trust{
    font-size:.86rem!important;
  }
  html:root body .compact-footer-bottom,
  html:root body .compact-footer-bottom span,
  html:root body .compact-footer-bottom a{
    font-size:.82rem!important;
  }
}

/* === theme-v94-desktop-destination-slider.css === */

/* V94 — Featured destinations: horizontal slider on desktop and mobile */
.home-page .luxury-destination-slider-shell{
  position:relative;
  z-index:1;
}

.home-page .luxury-destination-grid{
  display:flex!important;
  grid-template-columns:none!important;
  gap:18px!important;
  width:100%;
  margin:0!important;
  padding:4px 5px 18px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory;
  scroll-padding-inline:5px;
  scroll-behavior:smooth;
  overscroll-behavior-inline:contain;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
}
.home-page .luxury-destination-grid::-webkit-scrollbar{display:none}

.home-page .luxury-destination-card,
.home-page .luxury-destination-card:nth-child(n){
  flex:0 0 clamp(320px,30.5%,420px)!important;
  min-width:0!important;
  height:310px!important;
  grid-column:auto!important;
  scroll-snap-align:start;
  scroll-snap-stop:always;
}

.home-page .luxury-destination-slider-arrow{
  position:absolute;
  z-index:5;
  top:50%;
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.58);
  border-radius:50%;
  background:rgba(6,56,68,.92);
  color:#fff;
  box-shadow:0 12px 30px rgba(6,56,68,.28);
  font-family:Bahnschrift,"Arial Narrow",Arial,sans-serif;
  font-size:1.35rem;
  line-height:1;
  cursor:pointer;
  transform:translateY(-50%);
  transition:transform .2s ease,background .2s ease,color .2s ease;
  backdrop-filter:blur(10px);
}
.home-page .luxury-destination-slider-arrow:hover,
.home-page .luxury-destination-slider-arrow:focus-visible{
  background:#f6bd55;
  color:#063844;
  transform:translateY(-50%) scale(1.06);
  outline:3px solid rgba(246,189,85,.28);
  outline-offset:3px;
}
.home-page .luxury-destination-slider-arrow.is-prev{left:-22px}
.home-page .luxury-destination-slider-arrow.is-next{right:-22px}

@media(max-width:1200px){
  .home-page .luxury-destination-card,
  .home-page .luxury-destination-card:nth-child(n){flex-basis:42%!important;height:300px!important}
  .home-page .luxury-destination-slider-arrow.is-prev{left:-12px}
  .home-page .luxury-destination-slider-arrow.is-next{right:-12px}
}

@media(max-width:900px){
  .home-page .luxury-destination-card,
  .home-page .luxury-destination-card:nth-child(n){flex-basis:54%!important;height:290px!important}
}

@media(max-width:600px){
  .home-page .luxury-destination-grid{
    gap:14px!important;
    padding:0 2px 12px!important;
    scroll-padding-inline:2px;
  }
  .home-page .luxury-destination-card,
  .home-page .luxury-destination-card:nth-child(n){flex-basis:82%!important;height:285px!important;scroll-snap-align:center}
  .home-page .luxury-destination-slider-arrow{display:none}
}

/* === theme-v96-gallery-pagination-header-case.css === */

/* V96 — filterable gallery, pagination for gallery/old tours, enhanced photo cards,
   and natural-case public header text. Loaded last to override older theme rules. */

/* ---------------- Public header: natural case ---------------- */
html:root body .site-header .luxury-main-nav > a,
html:root body .site-header .luxury-main-nav > a .nav-link-copy > strong,
html:root body .site-header .luxury-nav-actions > a,
html:root body .site-header .luxury-nav-actions > a .header-account-name,
html:root body .site-header .luxury-login-link,
html:root body .site-header .luxury-account-link,
html:root body .site-header .luxury-plan-btn {
  text-transform: none !important;
  letter-spacing: .025em !important;
}

/* The logo remains a logo; slider-overlay capitalization remains unchanged. */
html:root body .site-header .tripwithera-wordmark,
html:root body .site-header .tripwithera-wordmark * {
  text-transform: uppercase !important;
}

/* ---------------- Shared filter/result layout ---------------- */
.page-gallery .gallery-album-section,
.page-past-tours .past-tour-section {
  padding-top: 42px !important;
}

.page-gallery .gallery-filter-bar {
  display: grid !important;
  grid-template-columns: minmax(300px, 1.8fr) minmax(145px, .7fr) minmax(170px, .8fr) auto !important;
  gap: 14px !important;
  align-items: end !important;
  max-width: 1180px !important;
  margin: 0 auto 26px !important;
  padding: 22px !important;
  border-top-color: #F6BD55 !important;
}

.page-gallery .gallery-filter-bar .field,
.page-past-tours .past-tour-filter .field {
  min-width: 0 !important;
}

.page-gallery .gallery-filter-bar label,
.page-past-tours .past-tour-filter label {
  display: block !important;
  margin-bottom: 7px !important;
  color: #173b43 !important;
  font-family: var(--twe-font-semibold-semicondensed, 'Bahnschrift SemiBold SemiCondensed', 'Bahnschrift', Arial, sans-serif) !important;
  font-size: .78rem !important;
  font-weight: 600 !important;
  letter-spacing: .025em !important;
  line-height: 1.2 !important;
  text-transform: none !important;
}

.page-gallery .gallery-filter-bar select,
.page-past-tours .past-tour-filter select {
  width: 100% !important;
  min-height: 46px !important;
  padding: 10px 38px 10px 13px !important;
  border: 1px solid #bfd3d5 !important;
  border-radius: 10px !important;
  background-color: #fff !important;
  color: #102f37 !important;
  font-family: var(--twe-font-regular, 'Bahnschrift', Arial, sans-serif) !important;
  font-size: .94rem !important;
}

.gallery-filter-actions,
.past-tour-filter-actions {
  display: flex !important;
  align-items: center !important;
  gap: 9px !important;
  flex-wrap: nowrap !important;
}

.gallery-filter-actions .btn,
.past-tour-filter-actions .btn {
  min-height: 46px !important;
  white-space: nowrap !important;
}

.page-past-tours .past-tour-filter {
  max-width: 850px !important;
  grid-template-columns: minmax(150px, .8fr) minmax(200px, 1fr) auto !important;
  gap: 14px !important;
  margin-bottom: 26px !important;
}

.gallery-results-head {
  display: flex !important;
  align-items: end !important;
  justify-content: space-between !important;
  gap: 20px !important;
  margin: 27px 0 18px !important;
  padding-bottom: 14px !important;
  border-bottom: 1px solid rgba(6, 56, 68, .16) !important;
}

.gallery-results-head > div {
  min-width: 0 !important;
}

.gallery-result-kicker {
  display: block !important;
  margin-bottom: 4px !important;
  color: #0A5C49 !important;
  font-family: var(--twe-font-semibold-semicondensed, 'Bahnschrift SemiBold SemiCondensed', 'Bahnschrift', Arial, sans-serif) !important;
  font-size: .77rem !important;
  font-weight: 600 !important;
  letter-spacing: .045em !important;
  text-transform: none !important;
}

.gallery-results-head h2 {
  margin: 0 !important;
  color: #102f37 !important;
  font-family: var(--twe-font-semibold-semicondensed, 'Bahnschrift SemiBold SemiCondensed', 'Bahnschrift', Arial, sans-serif) !important;
  font-size: clamp(1.35rem, 2vw, 1.85rem) !important;
  line-height: 1.15 !important;
  text-transform: none !important;
}

.gallery-results-head > span {
  flex: 0 0 auto !important;
  color: #55747b !important;
  font-size: .9rem !important;
}

.gallery-selected-tour-summary {
  margin: 0 auto 8px !important;
  max-width: 1180px !important;
}

/* ---------------- Enhanced gallery cards ---------------- */
.page-gallery .gallery-card-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  grid-auto-rows: auto !important;
  columns: auto !important;
  gap: 18px !important;
  align-items: stretch !important;
}

.page-gallery .gallery-card-grid .gallery-photo-card,
.page-gallery .gallery-card-grid .gallery-photo-card:nth-child(n) {
  display: block !important;
  grid-column: auto !important;
  grid-row: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  border: 1px solid rgba(6, 56, 68, .14) !important;
  border-radius: 17px !important;
  background: #063844 !important;
  box-shadow: 0 13px 35px rgba(6, 56, 68, .12) !important;
  transition: transform .25s ease, box-shadow .25s ease !important;
}

.page-gallery .gallery-card-grid .gallery-photo-card:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 20px 45px rgba(6, 56, 68, .19) !important;
}

.gallery-photo-open {
  position: relative !important;
  display: block !important;
  height: 100% !important;
  min-height: 300px !important;
  color: #fff !important;
  text-decoration: none !important;
  isolation: isolate !important;
}

.gallery-photo-media {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  overflow: hidden !important;
  background: #dcebea !important;
}

.page-gallery .gallery-photo-media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  transition: transform .55s ease !important;
}

.page-gallery .gallery-photo-card:hover .gallery-photo-media img {
  transform: scale(1.055) !important;
}

.page-gallery .gallery-photo-copy {
  position: absolute !important;
  inset: auto 0 0 !important;
  z-index: 2 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  min-height: 56% !important;
  padding: 70px 18px 17px !important;
  background: linear-gradient(180deg, transparent 0%, rgba(4, 37, 45, .40) 25%, rgba(4, 37, 45, .96) 100%) !important;
  text-align: left !important;
}

.gallery-photo-album {
  display: inline-flex !important;
  max-width: 100% !important;
  margin-bottom: 9px !important;
  padding: 5px 9px !important;
  overflow: hidden !important;
  border: 1px solid rgba(246, 189, 85, .55) !important;
  border-radius: 999px !important;
  background: rgba(6, 56, 68, .66) !important;
  color: #F6BD55 !important;
  font-family: var(--twe-font-semibold-semicondensed, 'Bahnschrift SemiBold SemiCondensed', 'Bahnschrift', Arial, sans-serif) !important;
  font-size: .68rem !important;
  line-height: 1.2 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.page-gallery .gallery-photo-copy strong {
  display: block !important;
  width: 100% !important;
  margin: 0 0 6px !important;
  color: #fff !important;
  font-family: var(--twe-font-semibold-semicondensed, 'Bahnschrift SemiBold SemiCondensed', 'Bahnschrift', Arial, sans-serif) !important;
  font-size: 1.14rem !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
  letter-spacing: .005em !important;
  text-transform: none !important;
}

.page-gallery .gallery-photo-copy small {
  display: block !important;
  color: #d8e9e7 !important;
  font-size: .84rem !important;
  line-height: 1.4 !important;
}

.gallery-photo-view {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  margin-top: 12px !important;
  color: #F6BD55 !important;
  font-family: var(--twe-font-semibold-semicondensed, 'Bahnschrift SemiBold SemiCondensed', 'Bahnschrift', Arial, sans-serif) !important;
  font-size: .78rem !important;
}

.page-gallery .gallery-empty {
  grid-column: 1 / -1 !important;
  width: 100% !important;
}

/* ---------------- Pagination ---------------- */
.pagination.gallery-pagination,
.pagination.past-tour-pagination {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  margin: 34px 0 4px !important;
  padding: 0 !important;
}

.pagination.gallery-pagination a,
.pagination.past-tour-pagination a {
  display: inline-grid !important;
  place-items: center !important;
  min-width: 42px !important;
  height: 42px !important;
  padding: 0 10px !important;
  border: 1px solid #b9d0d2 !important;
  border-radius: 10px !important;
  background: #fff !important;
  color: #17464f !important;
  font-family: var(--twe-font-semibold-semicondensed, 'Bahnschrift SemiBold SemiCondensed', 'Bahnschrift', Arial, sans-serif) !important;
  font-size: .9rem !important;
  text-decoration: none !important;
  transition: .2s ease !important;
}

.pagination.gallery-pagination a:hover,
.pagination.past-tour-pagination a:hover,
.pagination.gallery-pagination a.active,
.pagination.past-tour-pagination a.active {
  border-color: #063844 !important;
  background: #063844 !important;
  color: #fff !important;
}

.pagination.gallery-pagination .pagination-arrow,
.pagination.past-tour-pagination .pagination-arrow {
  min-width: 48px !important;
  background: #F6BD55 !important;
  border-color: #F6BD55 !important;
  color: #16343b !important;
  font-size: 1.12rem !important;
}

.pagination-gap {
  display: inline-grid !important;
  place-items: center !important;
  width: 25px !important;
  height: 42px !important;
  color: #6d858a !important;
}

@media (max-width: 1180px) {
  .page-gallery .gallery-filter-bar {
    grid-template-columns: minmax(280px, 1.55fr) repeat(2, minmax(145px, 1fr)) !important;
  }
  .page-gallery .gallery-filter-actions {
    grid-column: 1 / -1 !important;
    justify-content: flex-end !important;
  }
  .page-gallery .gallery-card-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 800px) {
  .page-gallery .gallery-filter-bar,
  .page-past-tours .past-tour-filter {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    padding: 18px !important;
  }
  .page-gallery .gallery-album-field {
    grid-column: 1 / -1 !important;
  }
  .gallery-filter-actions,
  .past-tour-filter-actions {
    grid-column: 1 / -1 !important;
    justify-content: stretch !important;
  }
  .gallery-filter-actions .btn,
  .past-tour-filter-actions .btn {
    flex: 1 1 0 !important;
  }
  .page-gallery .gallery-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .gallery-photo-open {
    min-height: 320px !important;
  }
}

@media (max-width: 560px) {
  .page-gallery .gallery-filter-bar,
  .page-past-tours .past-tour-filter {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    margin-bottom: 20px !important;
    padding: 16px !important;
  }
  .page-gallery .gallery-album-field,
  .gallery-filter-actions,
  .past-tour-filter-actions {
    grid-column: auto !important;
  }
  .gallery-filter-actions,
  .past-tour-filter-actions {
    flex-wrap: wrap !important;
  }
  .gallery-results-head {
    align-items: flex-start !important;
    margin-top: 20px !important;
  }
  .gallery-results-head > span {
    padding-top: 4px !important;
    font-size: .8rem !important;
  }
  .page-gallery .gallery-card-grid {
    grid-template-columns: 1fr !important;
    gap: 15px !important;
  }
  .gallery-photo-open {
    min-height: 340px !important;
  }
  .pagination.gallery-pagination,
  .pagination.past-tour-pagination {
    gap: 6px !important;
    overflow-x: auto !important;
    justify-content: flex-start !important;
    padding: 0 2px 6px !important;
    scrollbar-width: thin !important;
  }
  .pagination.gallery-pagination a,
  .pagination.past-tour-pagination a {
    min-width: 40px !important;
    height: 40px !important;
    flex: 0 0 auto !important;
  }
}

/* === theme-v97-gallery-centered-theme-original.css === */

/* V97 — Gallery centered copy, desktop-style mobile controls, clean result area,
   and theme-tinted thumbnails while original files remain untouched. */

/* Keep Gallery page text visually centered. */
.page-gallery .gallery-page-hero .container,
.page-gallery .gallery-filter-bar label,
.page-gallery .gallery-filter-bar select,
.page-gallery .gallery-filter-actions,
.page-gallery .gallery-selected-tour-summary,
.page-gallery .gallery-empty,
.page-gallery .gallery-photo-copy {
  text-align: center !important;
}

/* Desktop-style controls on every screen. Mobile gets a horizontal swipe area,
   not a stacked/re-designed version. */
.page-gallery .gallery-controls-scroll,
.page-gallery .gallery-summary-scroll {
  width: 100% !important;
  max-width: 1180px !important;
  margin-inline: auto !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  overscroll-behavior-inline: contain !important;
  -webkit-overflow-scrolling: touch !important;
  scrollbar-width: thin !important;
  scrollbar-color: rgba(6,56,68,.45) rgba(6,56,68,.08) !important;
}
.page-gallery .gallery-controls-scroll::-webkit-scrollbar,
.page-gallery .gallery-summary-scroll::-webkit-scrollbar { height: 7px !important; }
.page-gallery .gallery-controls-scroll::-webkit-scrollbar-track,
.page-gallery .gallery-summary-scroll::-webkit-scrollbar-track {
  background: rgba(6,56,68,.08) !important;
  border-radius: 999px !important;
}
.page-gallery .gallery-controls-scroll::-webkit-scrollbar-thumb,
.page-gallery .gallery-summary-scroll::-webkit-scrollbar-thumb {
  background: rgba(6,56,68,.45) !important;
  border-radius: 999px !important;
}

.page-gallery .gallery-filter-bar {
  grid-template-columns: minmax(330px,1.7fr) minmax(150px,.7fr) minmax(175px,.8fr) auto !important;
  min-width: 930px !important;
  width: 100% !important;
  margin: 0 auto 12px !important;
}
.page-gallery .gallery-filter-bar .gallery-album-field {
  grid-column: auto !important;
}
.page-gallery .gallery-filter-actions {
  grid-column: auto !important;
  justify-content: center !important;
  flex-wrap: nowrap !important;
}
.page-gallery .gallery-filter-actions .btn {
  flex: 0 0 auto !important;
}

.page-gallery .gallery-summary-scroll {
  margin-top: 12px !important;
  margin-bottom: 20px !important;
}
.page-gallery .gallery-selected-tour-summary {
  min-width: 760px !important;
  width: 100% !important;
  margin: 0 !important;
  align-items: center !important;
  flex-direction: row !important;
}
.page-gallery .gallery-selected-tour-summary > div {
  flex: 1 1 auto !important;
  align-items: center !important;
}
.page-gallery .gallery-selected-tour-summary .btn {
  flex: 0 0 auto !important;
  white-space: nowrap !important;
}

/* Result-count headings were removed in markup. Guard against stale cached markup. */
.page-gallery .gallery-results-head,
.page-past-tours .past-tour-results-head {
  display: none !important;
}

/* Cards: all copy centered on the image. */
.page-gallery .gallery-photo-copy {
  inset: 0 !important;
  min-height: 100% !important;
  padding: 28px 20px !important;
  align-items: center !important;
  justify-content: flex-end !important;
  background: linear-gradient(180deg,
    rgba(3,29,35,.03) 0%,
    rgba(3,29,35,.10) 34%,
    rgba(4,37,45,.74) 72%,
    rgba(4,37,45,.94) 100%) !important;
}
.page-gallery .gallery-photo-copy strong,
.page-gallery .gallery-photo-copy small,
.page-gallery .gallery-photo-view {
  width: 100% !important;
  max-width: 100% !important;
  text-align: center !important;
  justify-content: center !important;
}
.page-gallery .gallery-photo-copy strong {
  font-size: clamp(1.05rem,1.4vw,1.25rem) !important;
}
.page-gallery .gallery-photo-copy small {
  color: #eef6f4 !important;
}
.page-gallery .gallery-photo-album {
  display: none !important;
}

/* Theme presentation is visual only. The linked href remains the original file. */
.page-gallery .gallery-photo-media {
  background: #063844 !important;
}
.page-gallery .gallery-photo-media img {
  filter: saturate(.80) contrast(1.07) brightness(.94) !important;
}
.page-gallery .gallery-photo-media::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  background:
    linear-gradient(135deg, rgba(6,56,68,.30), rgba(10,92,73,.16) 56%, rgba(246,189,85,.10)),
    linear-gradient(180deg, rgba(238,246,244,.04), rgba(6,56,68,.14)) !important;
  mix-blend-mode: multiply !important;
  transition: opacity .3s ease !important;
}
.page-gallery .gallery-photo-card:hover .gallery-photo-media img,
.page-gallery .gallery-photo-card:focus-within .gallery-photo-media img {
  filter: saturate(.94) contrast(1.04) brightness(.98) !important;
}
.page-gallery .gallery-photo-card:hover .gallery-photo-media::after,
.page-gallery .gallery-photo-card:focus-within .gallery-photo-media::after {
  opacity: .58 !important;
}

/* Keep the photo grid naturally centered when the final row is incomplete. */
.page-gallery .gallery-card-grid {
  justify-content: center !important;
}

@media (max-width: 800px) {
  .page-gallery .gallery-filter-bar {
    grid-template-columns: minmax(330px,1.7fr) minmax(150px,.7fr) minmax(175px,.8fr) auto !important;
    min-width: 930px !important;
    padding: 18px 20px !important;
  }
  .page-gallery .gallery-filter-actions {
    grid-column: auto !important;
  }
}

@media (max-width: 560px) {
  .page-gallery .gallery-album-section > .container {
    padding-inline: 14px !important;
  }
  .page-gallery .gallery-controls-scroll,
  .page-gallery .gallery-summary-scroll {
    margin-inline: 0 !important;
    padding-bottom: 7px !important;
  }
  .page-gallery .gallery-filter-bar {
    grid-template-columns: minmax(330px,1.7fr) minmax(150px,.7fr) minmax(175px,.8fr) auto !important;
    min-width: 930px !important;
    gap: 14px !important;
    margin-bottom: 0 !important;
    padding: 17px 18px !important;
  }
  .page-gallery .gallery-filter-bar .gallery-album-field,
  .page-gallery .gallery-filter-actions {
    grid-column: auto !important;
  }
  .page-gallery .gallery-filter-actions {
    flex-wrap: nowrap !important;
  }
  .page-gallery .gallery-filter-actions .btn {
    flex: 0 0 auto !important;
  }
  .page-gallery .gallery-selected-tour-summary {
    min-width: 760px !important;
    flex-direction: row !important;
    align-items: center !important;
  }
  .page-gallery .gallery-photo-open {
    min-height: 330px !important;
  }
}

/* === theme-v98-gallery-layout-theme-refine.css === */

/* V98 — restore the original selected-album design, remove mobile horizontal
   overflow, keep gallery copy centered, and apply a stronger TripWithEra
   colour treatment to thumbnails without changing the original linked file. */

/* ---------- Filter: responsive, never horizontal-scroll ---------- */
.page-gallery .gallery-controls-scroll,
.page-gallery .gallery-summary-scroll {
  width: 100% !important;
  max-width: 1180px !important;
  margin-inline: auto !important;
  padding: 0 !important;
  overflow: visible !important;
  min-width: 0 !important;
  scrollbar-width: none !important;
}
.page-gallery .gallery-controls-scroll::-webkit-scrollbar,
.page-gallery .gallery-summary-scroll::-webkit-scrollbar {
  display: none !important;
}

.page-gallery .gallery-filter-bar {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 1180px !important;
  grid-template-columns: minmax(260px, 1.7fr) minmax(130px, .7fr) minmax(150px, .8fr) auto !important;
  gap: 14px !important;
  margin: 0 auto 16px !important;
}
.page-gallery .gallery-filter-bar .field,
.page-gallery .gallery-filter-actions {
  min-width: 0 !important;
}
.page-gallery .gallery-filter-actions {
  grid-column: auto !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
}
.page-gallery .gallery-filter-actions .btn {
  min-width: 0 !important;
  max-width: 100% !important;
  white-space: normal !important;
}

/* ---------- Selected tour/package block: original theme card, centered ---------- */
.page-gallery .gallery-summary-scroll {
  margin-top: 12px !important;
  margin-bottom: 20px !important;
}
.page-gallery .gallery-selected-tour-summary {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 20px 22px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  background: linear-gradient(135deg, #cfe2df, #e7f2f0) !important;
  border: 0 !important;
  border-left: 5px solid #F6BD55 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
  text-align: center !important;
}
.page-gallery .gallery-selected-tour-summary > div {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 4px !important;
  text-align: center !important;
}
.page-gallery .gallery-selected-tour-summary span,
.page-gallery .gallery-selected-tour-summary strong,
.page-gallery .gallery-selected-tour-summary small {
  width: 100% !important;
  max-width: 100% !important;
  text-align: center !important;
  overflow-wrap: anywhere !important;
}
.page-gallery .gallery-selected-tour-summary span {
  color: #0A5C49 !important;
  font-size: .72rem !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: none !important;
}
.page-gallery .gallery-selected-tour-summary strong {
  color: #063844 !important;
  font-size: clamp(1.05rem, 1.8vw, 1.28rem) !important;
  line-height: 1.22 !important;
}
.page-gallery .gallery-selected-tour-summary small {
  color: #4f6970 !important;
  font-size: .84rem !important;
  line-height: 1.35 !important;
}
.page-gallery .gallery-selected-tour-summary .gallery-back-button {
  flex: 0 1 auto !important;
  min-width: 0 !important;
  max-width: 100% !important;
  padding: 9px 13px !important;
  border-color: #063844 !important;
  color: #063844 !important;
  font-size: .78rem !important;
  line-height: 1.2 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  text-align: center !important;
}
.page-gallery .gallery-selected-tour-summary .gallery-back-button:hover {
  background: #063844 !important;
  color: #fff !important;
}

/* ---------- Gallery cards: keep the previous design, only center copy ---------- */
.page-gallery .gallery-photo-copy {
  inset: auto 0 0 !important;
  min-height: 56% !important;
  padding: 70px 18px 17px !important;
  align-items: center !important;
  justify-content: flex-end !important;
  text-align: center !important;
  background: linear-gradient(180deg,
    transparent 0%,
    rgba(4,37,45,.40) 25%,
    rgba(4,37,45,.96) 100%) !important;
}
.page-gallery .gallery-photo-copy strong,
.page-gallery .gallery-photo-copy small,
.page-gallery .gallery-photo-view {
  width: 100% !important;
  max-width: 100% !important;
  text-align: center !important;
  justify-content: center !important;
}
.page-gallery .gallery-photo-album {
  display: none !important;
}

/* Strong TripWithEra colour treatment on thumbnails only. The anchor href
   still opens/downloads the untouched original image. */
.page-gallery .gallery-photo-media {
  background: #063844 !important;
}
.page-gallery .gallery-photo-media img {
  filter: grayscale(.22) saturate(.56) contrast(1.12) brightness(.88) !important;
}
.page-gallery .gallery-photo-media::before,
.page-gallery .gallery-photo-media::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
}
.page-gallery .gallery-photo-media::before {
  background:
    radial-gradient(circle at 82% 18%, rgba(246,189,85,.30), transparent 35%),
    linear-gradient(135deg, rgba(6,56,68,.78), rgba(10,92,73,.60)) !important;
  mix-blend-mode: color !important;
  opacity: .86 !important;
}
.page-gallery .gallery-photo-media::after {
  background:
    linear-gradient(180deg, rgba(238,246,244,.05), rgba(6,56,68,.26)),
    linear-gradient(135deg, rgba(6,56,68,.24), rgba(10,92,73,.14) 62%, rgba(246,189,85,.14)) !important;
  mix-blend-mode: multiply !important;
  opacity: .88 !important;
}
.page-gallery .gallery-photo-card:hover .gallery-photo-media img,
.page-gallery .gallery-photo-card:focus-within .gallery-photo-media img {
  filter: grayscale(.12) saturate(.68) contrast(1.10) brightness(.92) !important;
}
.page-gallery .gallery-photo-card:hover .gallery-photo-media::before,
.page-gallery .gallery-photo-card:focus-within .gallery-photo-media::before {
  opacity: .76 !important;
}
.page-gallery .gallery-photo-card:hover .gallery-photo-media::after,
.page-gallery .gallery-photo-card:focus-within .gallery-photo-media::after {
  opacity: .78 !important;
}

@media (max-width: 920px) {
  .page-gallery .gallery-filter-bar {
    grid-template-columns: minmax(0, 1.3fr) minmax(120px, .7fr) !important;
  }
  .page-gallery .gallery-filter-bar .gallery-album-field {
    grid-column: 1 / -1 !important;
  }
  .page-gallery .gallery-filter-actions {
    grid-column: 1 / -1 !important;
    justify-content: stretch !important;
  }
  .page-gallery .gallery-filter-actions .btn {
    flex: 1 1 150px !important;
  }
}

@media (max-width: 620px) {
  .page-gallery .gallery-album-section > .container {
    padding-inline: 14px !important;
  }
  .page-gallery .gallery-filter-bar {
    grid-template-columns: 1fr 1fr !important;
    gap: 11px !important;
    padding: 15px !important;
  }
  .page-gallery .gallery-filter-bar .gallery-album-field,
  .page-gallery .gallery-filter-actions {
    grid-column: 1 / -1 !important;
  }
  .page-gallery .gallery-filter-actions {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }
  .page-gallery .gallery-filter-actions .btn:only-child {
    grid-column: 1 / -1 !important;
  }
  .page-gallery .gallery-filter-bar label {
    font-size: .72rem !important;
  }
  .page-gallery .gallery-filter-bar select,
  .page-gallery .gallery-filter-actions .btn {
    min-height: 42px !important;
    font-size: .82rem !important;
  }

  .page-gallery .gallery-selected-tour-summary {
    padding: 15px 12px !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 11px !important;
  }
  .page-gallery .gallery-selected-tour-summary .gallery-back-button {
    width: 100% !important;
    font-size: .70rem !important;
    padding: 8px 10px !important;
  }
  .page-gallery .gallery-selected-tour-summary strong {
    font-size: 1rem !important;
  }
  .page-gallery .gallery-selected-tour-summary small {
    font-size: .75rem !important;
  }
}

@media (max-width: 390px) {
  .page-gallery .gallery-filter-bar {
    grid-template-columns: 1fr !important;
  }
  .page-gallery .gallery-filter-bar .gallery-album-field,
  .page-gallery .gallery-filter-actions {
    grid-column: auto !important;
  }
  .page-gallery .gallery-filter-actions {
    grid-template-columns: 1fr !important;
  }
  .page-gallery .gallery-filter-actions .btn:only-child {
    grid-column: auto !important;
  }
}

/* === theme-v99-gallery-original60-footer40.css === */

/* V99 — Gallery cards: preserve the original photo in the upper 60% and use
   a TripWithEra footer in the lower 40%. No tint/filter is applied to photos. */

/* Keep the actual photo completely original. */
.page-gallery .gallery-photo-media {
  background: #eef6f4 !important;
}
.page-gallery .gallery-photo-media img {
  filter: none !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
}
.page-gallery .gallery-photo-media::before,
.page-gallery .gallery-photo-media::after {
  content: none !important;
  display: none !important;
  background: none !important;
  opacity: 0 !important;
}
.page-gallery .gallery-photo-card:hover .gallery-photo-media img,
.page-gallery .gallery-photo-card:focus-within .gallery-photo-media img {
  filter: none !important;
  opacity: 1 !important;
}

/* Lower 40% footer: theme background, gold top border, centered white copy. */
.page-gallery .gallery-photo-copy {
  position: absolute !important;
  inset: auto 0 0 !important;
  z-index: 3 !important;
  width: 100% !important;
  height: 40% !important;
  min-height: 118px !important;
  max-height: 44% !important;
  box-sizing: border-box !important;
  padding: 12px 16px 11px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 5px !important;
  overflow: hidden !important;
  border: 0 !important;
  border-top: 3px solid #F6BD55 !important;
  border-radius: 0 !important;
  background: rgba(6, 56, 68, .96) !important;
  box-shadow: 0 -8px 24px rgba(6, 56, 68, .16) !important;
  color: #fff !important;
  text-align: center !important;
}
.page-gallery .gallery-photo-copy strong {
  display: -webkit-box !important;
  width: 100% !important;
  margin: 0 !important;
  overflow: hidden !important;
  color: #fff !important;
  font-family: var(--twe-font-semibold-semicondensed, 'Bahnschrift SemiBold SemiCondensed', 'Bahnschrift', Arial, sans-serif) !important;
  font-size: clamp(.98rem, 1.2vw, 1.16rem) !important;
  font-weight: 600 !important;
  line-height: 1.18 !important;
  letter-spacing: .005em !important;
  text-align: center !important;
  text-transform: none !important;
  overflow-wrap: anywhere !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
}
.page-gallery .gallery-photo-copy small {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  overflow: hidden !important;
  color: rgba(255,255,255,.86) !important;
  font-size: .76rem !important;
  line-height: 1.25 !important;
  text-align: center !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
.page-gallery .gallery-photo-view {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  margin: 1px 0 0 !important;
  padding: 0 !important;
  color: #F6BD55 !important;
  font-size: .72rem !important;
  line-height: 1.2 !important;
  text-align: center !important;
}

/* The upper portion remains visually untouched; only a subtle image zoom is
   retained for interaction. */
.page-gallery .gallery-photo-card:hover .gallery-photo-media img,
.page-gallery .gallery-photo-card:focus-within .gallery-photo-media img {
  transform: scale(1.035) !important;
}

@media (max-width: 620px) {
  .page-gallery .gallery-photo-open {
    min-height: 300px !important;
  }
  .page-gallery .gallery-photo-copy {
    height: 40% !important;
    min-height: 116px !important;
    max-height: 44% !important;
    padding: 10px 12px 9px !important;
    gap: 4px !important;
  }
  .page-gallery .gallery-photo-copy strong {
    font-size: .96rem !important;
  }
  .page-gallery .gallery-photo-copy small {
    font-size: .70rem !important;
  }
  .page-gallery .gallery-photo-view {
    font-size: .68rem !important;
  }
}

/* === theme-v100-mobile-login-visibility.css === */

/* V100 — Mobile Login / Account button visibility
   Older dark-header rules made the text white while the action button stayed white.
   Keep the light action card, but use TripWithEra's readable theme colours. */
@media (max-width: 900px) {
  html:root body .site-header .luxury-main-nav .luxury-nav-actions .luxury-login-link,
  html:root body .site-header .luxury-main-nav .luxury-nav-actions .luxury-account-link {
    background: #ffffff !important;
    color: #063844 !important;
    border: 1px solid #F6BD55 !important;
    font-weight: 600 !important;
    opacity: 1 !important;
    text-shadow: none !important;
    box-shadow: 0 8px 20px rgba(6, 56, 68, .08) !important;
  }

  html:root body .site-header .luxury-main-nav .luxury-nav-actions .luxury-login-link .action-icon,
  html:root body .site-header .luxury-main-nav .luxury-nav-actions .luxury-account-link .action-icon {
    color: #F6BD55 !important;
    opacity: 1 !important;
  }

  html:root body .site-header .luxury-main-nav .luxury-nav-actions .luxury-login-link svg,
  html:root body .site-header .luxury-main-nav .luxury-nav-actions .luxury-account-link svg {
    stroke: currentColor !important;
  }

  html:root body .site-header .luxury-main-nav .luxury-nav-actions .luxury-login-link:hover,
  html:root body .site-header .luxury-main-nav .luxury-nav-actions .luxury-login-link:focus-visible,
  html:root body .site-header .luxury-main-nav .luxury-nav-actions .luxury-account-link:hover,
  html:root body .site-header .luxury-main-nav .luxury-nav-actions .luxury-account-link:focus-visible {
    background: #EEF6F4 !important;
    color: #063844 !important;
    border-color: #F6BD55 !important;
  }

  html:root body .site-header .luxury-main-nav .luxury-nav-actions .luxury-login-link:visited,
  html:root body .site-header .luxury-main-nav .luxury-nav-actions .luxury-account-link:visited,
  html:root body .site-header .luxury-main-nav .luxury-nav-actions .luxury-account-link .header-account-name {
    color: #063844 !important;
  }
}
