:root{--gt-cream:#f6f3ee;--gt-surface:#fff;--gt-ink:#162126;--gt-muted:#5f6b72;--gt-line:#e7e1d7;--gt-brand:#0b3e45;--gt-teal:#0f5f66;--gt-aqua:#4db6ac;--gt-sand:#d6b36a;--gt-gold:#c69a44}html{scroll-behavior:smooth}body{background:radial-gradient(circle at 10% 12%,rgba(77,182,172,.07),transparent 24rem),radial-gradient(circle at 92% 16%,rgba(214,179,106,.11),transparent 22rem),var(--gt-cream)}[x-cloak]{display:none!important}.site-shell{position:relative}.site-shell::before{content:"";position:fixed;left:-12rem;bottom:-8rem;width:40rem;height:40rem;pointer-events:none;opacity:.12;background-image:linear-gradient(rgba(11,62,69,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(11,62,69,.12) 1px,transparent 1px);background-size:40px 40px;transform:rotate(-8deg);mask-image:radial-gradient(circle,#000,transparent 70%)}.text-balance{text-wrap:balance}.gt-logo-mark{position:relative;display:grid;height:2.6rem;width:2.6rem;place-items:center;border-radius:999px;border:1px solid rgba(214,179,106,.65);background:#fff;box-shadow:0 4px 14px rgba(17,30,34,.06)}.gt-logo-mark:before{content:"";position:absolute;inset:.55rem;border-radius:999px;border:1px solid rgba(15,95,102,.35)}.gt-logo-mark:after{content:"";position:absolute;inset:.3rem;background:linear-gradient(90deg,transparent 47%,rgba(15,95,102,.5) 48%,rgba(15,95,102,.5) 52%,transparent 53%),linear-gradient(0deg,transparent 47%,rgba(15,95,102,.5) 48%,rgba(15,95,102,.5) 52%,transparent 53%);border-radius:999px}.gt-logo-mark span{height:.55rem;width:.55rem;border-radius:999px;background:var(--gt-sand);box-shadow:0 0 0 7px rgba(214,179,106,.18);z-index:2}.mock-map{position:absolute;inset:0;pointer-events:none;opacity:.45;background-image:radial-gradient(circle at 12% 30%,rgba(15,95,102,.05),transparent 12rem),radial-gradient(circle at 88% 14%,rgba(214,179,106,.09),transparent 12rem)}.mock-map:before,.mock-map:after{content:"";position:absolute;inset:auto;background-repeat:no-repeat;opacity:.85}.mock-map:before{left:-2rem;top:5rem;width:18rem;height:18rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 300' fill='none'%3E%3Cpath d='M-14 206C45 184 66 251 114 240C182 224 182 136 240 136C269 136 284 144 314 122' stroke='%23E2C890' stroke-width='2' stroke-dasharray='7 10'/%3E%3Ccircle cx='114' cy='240' r='4.5' fill='%23D6B36A'/%3E%3Cpath d='M244 120l18 7-16 10 3-8-5-9z' fill='%230F5F66' fill-opacity='.35'/%3E%3C/svg%3E")}.mock-map:after{right:-3rem;top:8rem;width:20rem;height:20rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 360 360' fill='none'%3E%3Cpath d='M357 104C286 112 285 194 236 197C156 201 137 274 82 278' stroke='%23E2C890' stroke-width='2' stroke-dasharray='7 10'/%3E%3Ccircle cx='236' cy='197' r='4.5' fill='%23D6B36A'/%3E%3Cpath d='M76 278c0-8 6-14 14-14s14 6 14 14-6 14-14 14-14-6-14-14z' stroke='%230F5F66' stroke-opacity='.22'/%3E%3C/svg%3E")}.glass-panel{background:rgba(255,255,255,.88);border:1px solid rgba(231,225,215,.95);box-shadow:0 18px 55px rgba(17,30,34,.08);backdrop-filter:blur(12px)}.panel-soft{background:rgba(255,255,255,.94);border:1px solid rgba(231,225,215,.92);box-shadow:0 10px 40px rgba(17,30,34,.07)}.section-card{background:rgba(255,255,255,.92);border:1px solid rgba(231,225,215,.9);box-shadow:0 8px 26px rgba(17,30,34,.05)}.brand-kicker{display:inline-flex;align-items:center;gap:.5rem;border-radius:999px;border:1px solid rgba(214,179,106,.45);background:rgba(255,255,255,.78);color:var(--gt-brand);padding:.45rem .85rem;font-size:.75rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.photo-card,.tour-photo,.banner-photo{position:relative;overflow:hidden;background-position:center;background-size:cover;background-repeat:no-repeat}.photo-card:before,.tour-photo:before,.banner-photo:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.62))}.tour-photo:before{background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.5))}.banner-photo:before{background:linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.55))}.photo-card>*,.tour-photo>*,.banner-photo>*{position:relative;z-index:1}.icon-chip{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:1rem;border:1px solid rgba(231,225,215,.95);background:#fff;color:var(--gt-brand);box-shadow:0 4px 10px rgba(17,30,34,.04)}.step-pill{display:grid;place-items:center;width:2rem;height:2rem;border-radius:999px;border:1px solid rgba(207,223,221,1);background:#fff;color:#79939a;font-size:.75rem;font-weight:800;transition:all .2s ease}.step-pill.is-active{background:var(--gt-teal);border-color:var(--gt-teal);color:#fff;box-shadow:0 10px 24px rgba(15,95,102,.22)}.step-pill.is-done{background:rgba(232,245,244,.95);border-color:rgba(167,213,209,.95);color:var(--gt-teal)}.choice-tile{position:relative;border:1px solid rgba(231,225,215,.95);background:#fff;border-radius:1.1rem;padding:1rem .75rem;text-align:center;transition:.18s ease}.choice-tile:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(17,30,34,.06)}.choice-tile.is-selected{border-color:rgba(15,95,102,.7);box-shadow:0 12px 28px rgba(15,95,102,.1);background:linear-gradient(180deg,rgba(232,245,244,.75),#fff)}.choice-tile .checkmark{position:absolute;top:.5rem;right:.5rem;display:none;width:1.25rem;height:1.25rem;border-radius:999px;background:var(--gt-teal);color:#fff;font-size:.72rem;place-items:center}.choice-tile.is-selected .checkmark{display:grid}.gt-range{width:100%;height:6px;border-radius:999px;background:linear-gradient(90deg,rgba(77,182,172,.22),rgba(15,95,102,.22));outline:none;-webkit-appearance:none;appearance:none}.gt-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;border-radius:999px;background:#fff;border:4px solid var(--gt-teal);box-shadow:0 4px 12px rgba(15,95,102,.2)}.gt-range::-moz-range-thumb{width:18px;height:18px;border-radius:999px;background:#fff;border:4px solid var(--gt-teal)}.preview-day{border:1px solid rgba(231,225,215,.9);border-radius:1rem;background:#fff;overflow:hidden}.preview-thumb{width:4rem;height:4rem;border-radius:.85rem;flex-shrink:0;background-size:cover;background-position:center}.gt-avatar,.mini-guide-avatar{width:2.75rem;height:2.75rem;border-radius:999px;display:inline-grid;place-items:center;background:var(--gt-brand);color:#fff;font-weight:800;flex-shrink:0}.gt-avatar.sm{width:2.1rem;height:2.1rem;font-size:.75rem}.gt-avatar.lg{width:4rem;height:4rem;font-size:1.2rem}.grid-scroll{scrollbar-width:thin;scrollbar-color:rgba(15,95,102,.26) rgba(245,235,212,.5)}.grid-scroll::-webkit-scrollbar{width:10px;height:10px}.grid-scroll::-webkit-scrollbar-track{background:rgba(245,235,212,.5);border-radius:999px}.grid-scroll::-webkit-scrollbar-thumb{background:rgba(15,95,102,.26);border-radius:999px}.metric-card{border:1px solid rgba(231,225,215,.95);background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(250,248,245,.96));border-radius:1.4rem;padding:1.25rem;box-shadow:0 8px 26px rgba(17,30,34,.04)}.soft-outline{border:1px solid rgba(231,225,215,.95);background:#fff}.home-section-title{display:flex;align-items:center;gap:.5rem;color:var(--gt-brand);font-family:Georgia,Cambria,'Times New Roman',serif;font-weight:700;font-size:1.35rem}.home-section-title:before{content:"✦";color:var(--gt-sand)}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.table-card{width:100%;border-collapse:separate;border-spacing:0}.table-card th{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:#64748b;font-weight:800;text-align:left;padding:.9rem 1rem;background:rgba(248,246,241,.8);border-bottom:1px solid var(--gt-line)}.table-card td{padding:1rem;border-bottom:1px solid rgba(231,225,215,.75);font-size:.875rem;vertical-align:middle}.table-card tr:last-child td{border-bottom:0}.app-shell-title{font-family:Georgia,Cambria,'Times New Roman',serif;font-weight:600;color:var(--gt-brand);letter-spacing:-.02em}.timeline-dot{position:relative}.timeline-dot:before{content:"";position:absolute;left:1.25rem;top:2.6rem;bottom:-2rem;width:1px;background:rgba(15,95,102,.2)}.timeline-dot:last-child:before{display:none}.form-input{width:100%;border-radius:1rem;border:1px solid var(--gt-line);background:#fff;padding:.85rem 1rem;font-size:.875rem;outline:none;transition:.18s}.form-input:focus{border-color:rgba(15,95,102,.45);box-shadow:0 0 0 4px rgba(214,238,236,.7)}.cta-primary{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;border-radius:1rem;background:var(--gt-brand);color:#fff;font-weight:800;padding:.85rem 1.2rem;box-shadow:0 12px 24px rgba(11,62,69,.12);transition:.18s}.cta-primary:hover{transform:translateY(-1px);background:#0b4b52}.cta-secondary{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;border-radius:1rem;border:1px solid rgba(198,154,68,.55);background:#fff;color:var(--gt-gold);font-weight:800;padding:.85rem 1.2rem;transition:.18s}.cta-secondary:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(17,30,34,.06)}.page-pad{padding-left:1rem;padding-right:1rem}@media(min-width:640px){.page-pad{padding-left:1.5rem;padding-right:1.5rem}}@media(min-width:1024px){.page-pad{padding-left:2rem;padding-right:2rem}}@media(max-width:1023px){.mobile-scroll-x{overflow-x:auto}.mobile-scroll-x>table{min-width:760px}}@media(max-width:640px){.gt-logo-mark{height:2.25rem;width:2.25rem}.metric-card{padding:1rem}}

/* V2 UI polish pass */
.mobile-nav-link{display:flex;align-items:center;justify-content:space-between;border-radius:1rem;border:1px solid rgba(231,225,215,.9);background:#fff;padding:.9rem 1rem;font-size:.95rem;font-weight:800;box-shadow:0 5px 16px rgba(17,30,34,.035)}
a,button{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(77,182,172,.35);outline-offset:3px}.cta-primary,.cta-secondary{min-height:2.75rem}.section-card,.glass-panel,.panel-soft,.metric-card{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.section-card:hover{border-color:rgba(214,179,106,.45)}.table-card tbody tr{transition:background .16s ease}.table-card tbody tr:hover{background:rgba(251,247,238,.6)}.photo-card,.tour-photo,.banner-photo{isolation:isolate}.form-input input,.form-input select,.form-input textarea{color:var(--gt-ink)}.form-input:has(input:focus),.form-input:has(select:focus),.form-input:has(textarea:focus){border-color:rgba(15,95,102,.45);box-shadow:0 0 0 4px rgba(214,238,236,.7)}.dashboard-status-dot{width:.55rem;height:.55rem;border-radius:999px;background:#059669;box-shadow:0 0 0 4px rgba(5,150,105,.12)}@media(max-width:1023px){.site-shell{overflow-x:hidden}.app-shell-title{font-size:2.4rem;line-height:1.05}.home-section-title{font-size:1.2rem}.table-card th,.table-card td{white-space:nowrap}.mobile-scroll-x{margin-left:-.25rem;margin-right:-.25rem;padding-left:.25rem;padding-right:.25rem}.cta-primary,.cta-secondary{width:100%}}@media(max-width:640px){body{background:radial-gradient(circle at 0 0,rgba(77,182,172,.08),transparent 16rem),var(--gt-cream)}.section-card,.glass-panel,.panel-soft{border-radius:1.25rem}.metric-card{border-radius:1.1rem}.brand-kicker{font-size:.68rem}.table-card th,.table-card td{padding:.85rem}.photo-card:hover,.section-card:hover,.choice-tile:hover,.cta-primary:hover,.cta-secondary:hover{transform:none}.icon-chip{width:2.25rem;height:2.25rem;border-radius:.85rem}.gt-avatar.lg{width:3.25rem;height:3.25rem}.gt-logo-mark+span{letter-spacing:-.04em}}

/* Phase 6 — form UX + validation polish */
.form-input.is-invalid{border-color:#f43f5e;background:#fff7f7;box-shadow:0 0 0 4px rgba(244,63,94,.10)}
.field-error{display:block;margin-top:.45rem;color:#be123c;font-size:.78rem;font-weight:800;line-height:1.35}
.form-status{display:none;border-radius:1rem;padding:.85rem 1rem;font-size:.86rem;font-weight:800;line-height:1.45}
.form-status-error,.form-status-success{display:block}
.form-status-error{border:1px solid #fecdd3;background:#fff1f2;color:#be123c}
.form-status-success{border:1px solid #bbf7d0;background:#f0fdf4;color:#047857}
.form-help{display:block;margin-top:.45rem;color:#64748b;font-size:.76rem;line-height:1.45}
.form-check-row{display:flex;align-items:flex-start;gap:.65rem;border-radius:1rem;border:1px solid rgba(231,225,215,.92);background:#fff;padding:.85rem 1rem;font-size:.84rem;font-weight:750;color:#475569}
.form-check-row input{margin-top:.15rem;accent-color:var(--gt-brand)}
.form-progress{height:.45rem;border-radius:999px;background:rgba(231,225,215,.9);overflow:hidden}
.form-progress span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--gt-aqua),var(--gt-brand));transition:width .2s ease}


/* Phase 17 — Mobile / PWA polish */
[x-cloak]{display:none!important}
.skip-link{position:fixed;left:1rem;top:.75rem;z-index:1000;transform:translateY(-150%);border-radius:999px;background:#0B3E45;color:#fff;padding:.7rem 1rem;font-size:.85rem;font-weight:900;box-shadow:0 16px 34px rgba(11,62,69,.18);transition:transform .16s ease}
.skip-link:focus{transform:translateY(0)}
.mobile-bottom-nav{display:none}.pwa-install-card{display:none}.offline-toast{position:fixed;left:50%;bottom:1rem;z-index:90;transform:translateX(-50%);border-radius:999px;background:#0B3E45;color:#fff;padding:.8rem 1rem;font-size:.8rem;font-weight:900;box-shadow:0 16px 40px rgba(11,62,69,.2)}
.dashboard-mobile-menu{border-radius:1.1rem;border:1px solid rgba(231,225,215,.95);background:#fff;overflow:hidden}.dashboard-mobile-menu summary{display:flex;cursor:pointer;list-style:none;align-items:center;justify-content:space-between;gap:1rem;padding:.95rem 1rem}.dashboard-mobile-menu summary::-webkit-details-marker{display:none}.dashboard-mobile-menu summary b{display:block;color:var(--gt-brand);font-size:.95rem}.dashboard-mobile-menu summary small{display:block;margin-top:.1rem;color:#64748b;font-size:.72rem;font-weight:800}.dashboard-mobile-menu-icon{display:grid;height:2rem;width:2rem;place-items:center;border-radius:999px;background:var(--gt-cream);color:var(--gt-brand);font-weight:900;transition:transform .18s ease}.dashboard-mobile-menu[open] .dashboard-mobile-menu-icon{transform:rotate(180deg)}.dashboard-mobile-menu>div{padding:0 .75rem .75rem}.dashboard-mobile-menu-link{display:flex;align-items:center;justify-content:space-between;gap:.75rem;border-radius:.9rem;border:1px solid rgba(231,225,215,.9);background:#fff;padding:.82rem .9rem;font-size:.86rem;font-weight:900;color:#334155}.dashboard-mobile-menu-link.is-active{border-color:var(--gt-brand);background:var(--gt-brand);color:#fff}.dashboard-mobile-menu-link.is-active span:last-child{background:rgba(255,255,255,.18);color:#fff}.dashboard-mobile-switcher{margin-bottom:1rem}.mobile-safe-stack{display:grid;gap:.75rem}
@media(max-width:767px){
  html{scroll-padding-top:5.5rem}body{padding-bottom:calc(5.75rem + env(safe-area-inset-bottom))}.site-shell{padding-bottom:calc(4.5rem + env(safe-area-inset-bottom))}footer{margin-bottom:calc(4.9rem + env(safe-area-inset-bottom))}
  header.sticky{box-shadow:0 12px 28px rgba(17,30,34,.055)}header .gt-logo-mark{height:2.15rem;width:2.15rem}header .font-display{font-size:1.55rem!important}.page-pad,main.px-4{padding-left:1rem!important;padding-right:1rem!important}.app-shell-title{font-size:2.15rem!important;line-height:1.04!important}.brand-kicker{max-width:100%;white-space:normal;text-align:left}.section-card,.glass-panel,.panel-soft{box-shadow:0 8px 26px rgba(17,30,34,.055)}.metric-card{box-shadow:0 6px 20px rgba(17,30,34,.045)}
  .mobile-bottom-nav{position:fixed;left:.65rem;right:.65rem;bottom:calc(.65rem + env(safe-area-inset-bottom));z-index:80;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.28rem;border:1px solid rgba(231,225,215,.94);border-radius:1.35rem;background:rgba(255,255,255,.94);padding:.42rem;box-shadow:0 18px 54px rgba(17,30,34,.14);backdrop-filter:blur(18px);transition:opacity .18s ease,transform .18s ease}.mobile-bottom-nav.is-soft-hidden{opacity:.35;transform:translateY(.35rem)}.mobile-bottom-nav a{display:flex;min-width:0;flex-direction:column;align-items:center;justify-content:center;gap:.1rem;border-radius:1rem;padding:.45rem .1rem;color:#64748b;font-size:.7rem;font-weight:900;text-decoration:none}.mobile-bottom-nav a span{font-size:1rem;line-height:1}.mobile-bottom-nav a b{font-size:.68rem;line-height:1;white-space:nowrap}.mobile-bottom-nav a.is-active{background:var(--gt-brand);color:#fff;box-shadow:0 10px 24px rgba(15,95,102,.2)}
  .pwa-install-card{position:fixed;left:.85rem;right:.85rem;bottom:calc(5.95rem + env(safe-area-inset-bottom));z-index:85;border:1px solid rgba(231,225,215,.95);border-radius:1.35rem;background:rgba(255,255,255,.96);padding:.9rem;box-shadow:0 20px 60px rgba(17,30,34,.14);backdrop-filter:blur(18px);opacity:0;transform:translateY(.75rem);transition:opacity .18s ease,transform .18s ease}.pwa-install-card.is-visible{display:block;opacity:1;transform:translateY(0)}
  .form-input{min-height:3rem;font-size:16px}.form-check-row{font-size:.88rem}.cta-primary,.cta-secondary{min-height:3rem}.table-card th,.table-card td{padding:.8rem}.mobile-scroll-x{border-radius:1.25rem;background:linear-gradient(90deg,rgba(255,255,255,.94),rgba(255,255,255,.7))}.grid-scroll{scroll-snap-type:x proximity}.grid-scroll>a,.grid-scroll>article{scroll-snap-align:start}.tour-photo.h-40,.photo-card.h-44{min-height:10.5rem}.preview-thumb{width:3.5rem;height:3.5rem}.timeline-dot:before{left:1.1rem}.gt-avatar,.mini-guide-avatar{width:2.45rem;height:2.45rem}.home-section-title{line-height:1.18}
}
@media(max-width:420px){.mobile-bottom-nav{left:.45rem;right:.45rem}.mobile-bottom-nav a b{font-size:.62rem}.mobile-bottom-nav a span{font-size:.95rem}.pwa-install-card{left:.55rem;right:.55rem}.app-shell-title{font-size:1.95rem!important}.brand-kicker{font-size:.64rem}.metric-card{padding:.9rem}.table-card th,.table-card td{font-size:.78rem}}
@media(hover:none){.section-card:hover,.metric-card:hover,.choice-tile:hover,.cta-primary:hover,.cta-secondary:hover{transform:none!important}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.mobile-bottom-nav,.pwa-install-card{transition:none!important}}

/* Phase 18A — Mobile View Repair + Responsive UI Polish
   Purpose: repair current mobile layout issues before multilingual/i18n and MySQL.
   Keep this as a safe responsive layer: no desktop redesign, no backend behavior. */
*,*::before,*::after{box-sizing:border-box}
img,svg,video,canvas{max-width:100%}button,input,select,textarea{max-width:100%}
.min-w-0{min-width:0}
@supports (overflow:clip){.site-shell{overflow-x:clip}}

/* Make native table layouts survivable even when a page forgot a mobile-scroll wrapper. */
.table-card{max-width:100%}
@media(max-width:767px){
  .table-card{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:1.15rem;background:#fff}
  .table-card thead,.table-card tbody,.table-card tr{min-width:max-content}
  .table-card th,.table-card td{white-space:nowrap}
}

@media(max-width:767px){
  html{font-size:15.5px;-webkit-text-size-adjust:100%}
  body{min-width:320px;overflow-x:hidden}
  .site-shell{width:100%;overflow-x:hidden}
  .mock-map::before,.mock-map::after,.site-shell::before{opacity:.08;transform:none}

  /* Header/menu repair */
  header.sticky{top:0;max-width:100vw}
  header.sticky>div:first-child{gap:.75rem;padding-top:.65rem!important;padding-bottom:.65rem!important}
  header a[aria-label="Globotrip home"]{min-width:0;gap:.55rem}
  header a[aria-label="Globotrip home"] .font-display{max-width:42vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  header [x-show="mobileMenu"]{max-height:calc(100dvh - 4.25rem);overflow-y:auto;-webkit-overflow-scrolling:touch}
  .mobile-nav-link{min-height:3.15rem;padding:1rem;font-size:.94rem}

  /* Global page rhythm */
  main,.page-pad,main.px-4{max-width:100vw!important}
  main{padding-top:1.5rem!important;padding-bottom:2.5rem!important}
  .page-pad{padding-left:1rem!important;padding-right:1rem!important}
  section{max-width:100%}
  .app-shell-title,h1.font-display{font-size:clamp(2rem,10vw,2.8rem)!important;line-height:1.04!important;letter-spacing:-.035em}
  h2.font-display{font-size:clamp(1.65rem,7vw,2.15rem)!important;line-height:1.1!important}
  .brand-kicker{display:inline-flex;max-width:100%;line-height:1.25}

  /* Card, hero, and photo repair */
  .rounded-\[2rem\],.rounded-\[1\.5rem\],.rounded-\[1\.45rem\],.rounded-\[1\.35rem\]{border-radius:1.2rem!important}
  .banner-photo{min-height:20rem!important;padding:1.25rem!important}
  .banner-photo h1{font-size:clamp(2.15rem,11vw,3rem)!important;line-height:1!important}
  .photo-card,.tour-photo{min-height:10rem}
  .section-card,.panel-soft,.glass-panel,.metric-card{max-width:100%;overflow-wrap:anywhere}
  .metric-card p[class*="text-3xl"],.metric-card .text-3xl{font-size:1.65rem!important;line-height:1.1!important}

  /* Forms and CTAs */
  .form-input,select.form-input,input.form-input,textarea.form-input{width:100%;min-width:0!important;min-height:3.05rem;font-size:16px!important;line-height:1.4}
  textarea.form-input{min-height:7rem}
  .cta-primary,.cta-secondary{width:100%;min-height:3.05rem;text-align:center;white-space:normal;line-height:1.25;padding-left:1rem!important;padding-right:1rem!important}
  .cta-primary+ .cta-secondary,.cta-secondary+ .cta-primary{margin-left:0!important}
  .flex:has(>.cta-primary),.flex:has(>.cta-secondary){gap:.7rem}

  /* Dashboard repair */
  .dashboard-mobile-switcher{position:relative;z-index:2;margin-bottom:1rem}
  .dashboard-mobile-menu summary{min-height:3.4rem}
  .dashboard-mobile-menu-link{min-height:3rem}
  .grid-scroll{max-width:100%;padding-bottom:.35rem;scrollbar-width:none}
  .grid-scroll::-webkit-scrollbar{display:none}
  .grid-scroll a{white-space:nowrap}

  /* Timelines and dense cards */
  .timeline-dot{display:block!important}
  .timeline-dot:before{display:none}
  .timeline-dot>div:first-child{margin-bottom:.75rem}
  .preview-day{border-radius:1rem}
  .preview-thumb{width:3.25rem;height:3.25rem}

  /* Prevent wide utility classes and fixed side panels from causing horizontal scrolling. */
  [class*="min-w-"]{min-width:0!important}
  [class*="max-w-"]{max-width:100%}
  aside{max-width:100%}
  .xl\:sticky,.lg\:sticky{position:static!important}
}

@media(max-width:480px){
  .gt-logo-mark{height:2rem!important;width:2rem!important}
  header a[aria-label="Globotrip home"] .font-display{font-size:1.35rem!important;max-width:38vw}
  .app-shell-title,h1.font-display{font-size:clamp(1.9rem,11vw,2.35rem)!important}
  h2.font-display{font-size:clamp(1.45rem,8vw,1.9rem)!important}
  .brand-kicker{font-size:.62rem!important;padding:.4rem .65rem}
  .section-card,.panel-soft,.glass-panel,.metric-card{padding:1rem!important}
  .mobile-bottom-nav{left:.35rem!important;right:.35rem!important;gap:.18rem;padding:.32rem!important}
  .mobile-bottom-nav a{border-radius:.85rem;padding:.42rem .05rem!important}
  .mobile-bottom-nav a b{font-size:.58rem!important;letter-spacing:-.01em}
}

@media(max-width:360px){
  header a[aria-label="Globotrip home"] .font-display{max-width:34vw;font-size:1.22rem!important}
  .mobile-bottom-nav a b{font-size:.54rem!important}
}
@media(max-width:767px){
  .is-keyboard-open .mobile-bottom-nav,.is-keyboard-open .pwa-install-card{display:none!important}
}

/* Phase 18A.1 — Full UI/UX Audit + Design System Lock
   Purpose: freeze shared visual rules before page-by-page polish and i18n.
   Keep this global layer static-only, backend-free, and safe for existing markup. */
:root{
  --gt-canvas:#f6f3ee;
  --gt-canvas-soft:#fbf8f1;
  --gt-elevated:#ffffff;
  --gt-elevated-soft:rgba(255,255,255,.92);
  --gt-border-soft:rgba(231,225,215,.92);
  --gt-border-strong:rgba(214,179,106,.42);
  --gt-text-soft:#64748b;
  --gt-text-muted:#71838b;
  --gt-success:#0f766e;
  --gt-warning:#b7791f;
  --gt-danger:#be123c;
  --gt-info:#0f5f66;
  --gt-radius-xs:.65rem;
  --gt-radius-sm:.9rem;
  --gt-radius-md:1.1rem;
  --gt-radius-lg:1.35rem;
  --gt-radius-xl:1.75rem;
  --gt-radius-page:2.15rem;
  --gt-shadow-xs:0 3px 10px rgba(17,30,34,.035);
  --gt-shadow-sm:0 8px 24px rgba(17,30,34,.055);
  --gt-shadow-md:0 16px 44px rgba(17,30,34,.075);
  --gt-shadow-lg:0 24px 70px rgba(17,30,34,.1);
  --gt-shadow-hover:0 18px 46px rgba(17,30,34,.095);
  --gt-focus:0 0 0 4px rgba(77,182,172,.28);
  --gt-section-y:clamp(3.5rem,7vw,6.5rem);
  --gt-section-y-compact:clamp(2rem,4vw,3.5rem);
  --gt-content-max:1180px;
  --gt-wide-max:1500px;
  --gt-readable:72ch;
}
::selection{background:rgba(77,182,172,.24);color:var(--gt-brand)}
body{font-feature-settings:"kern" 1,"liga" 1;text-rendering:optimizeLegibility}
main[id="main-content"]{isolation:isolate}

/* Locked reusable section/header patterns for the next UI polish phases. */
.gt-page-intro{max-width:var(--gt-readable)}
.gt-page-intro>p{color:var(--gt-text-soft);line-height:1.75}
.gt-section{padding-top:var(--gt-section-y);padding-bottom:var(--gt-section-y)}
.gt-section-compact{padding-top:var(--gt-section-y-compact);padding-bottom:var(--gt-section-y-compact)}
.gt-section-header{display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem;margin-bottom:1.5rem}
.gt-section-header>div:first-child{max-width:var(--gt-readable)}
.gt-section-eyebrow{display:inline-flex;align-items:center;gap:.45rem;border:1px solid var(--gt-border-strong);background:rgba(255,255,255,.82);color:var(--gt-brand);border-radius:999px;padding:.42rem .75rem;font-size:.72rem;font-weight:900;letter-spacing:.055em;text-transform:uppercase;box-shadow:var(--gt-shadow-xs)}
.gt-section-title{font-family:Georgia,Cambria,'Times New Roman',serif;color:var(--gt-brand);font-weight:700;letter-spacing:-.035em;line-height:1.04}
.gt-section-copy{color:var(--gt-text-soft);line-height:1.75}
.gt-readable{max-width:var(--gt-readable)}
.gt-wide{max-width:var(--gt-wide-max)}
.gt-content{max-width:var(--gt-content-max)}

/* Locked card/surface behavior. */
.gt-surface{border:1px solid var(--gt-border-soft);background:var(--gt-elevated-soft);border-radius:var(--gt-radius-lg);box-shadow:var(--gt-shadow-sm);backdrop-filter:blur(12px)}
.gt-surface-strong{border:1px solid var(--gt-border-soft);background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(250,248,245,.96));border-radius:var(--gt-radius-xl);box-shadow:var(--gt-shadow-md)}
.gt-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));gap:1rem}
.gt-card-grid-lg{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,21rem),1fr));gap:1.25rem}
.gt-action-row{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}
.gt-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;border:1px solid var(--gt-border-soft);background:rgba(255,255,255,.84);border-radius:var(--gt-radius-lg);padding:.75rem;box-shadow:var(--gt-shadow-xs)}
.gt-toolbar-group{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem}
.gt-filter-chip{display:inline-flex;align-items:center;gap:.4rem;border:1px solid var(--gt-border-soft);background:#fff;border-radius:999px;padding:.55rem .8rem;color:#475569;font-size:.78rem;font-weight:900;box-shadow:var(--gt-shadow-xs)}
.gt-filter-chip.is-active{border-color:rgba(15,95,102,.35);background:rgba(232,245,244,.9);color:var(--gt-brand)}

.section-card,.panel-soft,.glass-panel,.metric-card,.soft-outline,.preview-day,.choice-tile,.mobile-nav-link,.dashboard-mobile-menu,.dashboard-mobile-menu-link{transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background .18s ease}
@media(hover:hover){
  .section-card:hover,.panel-soft:hover,.metric-card:hover,.soft-outline:hover,.preview-day:hover{box-shadow:var(--gt-shadow-hover);border-color:rgba(214,179,106,.45)}
  a.section-card:hover,a.panel-soft:hover,a.metric-card:hover,a.soft-outline:hover{transform:translateY(-2px)}
}

/* Locked status/empty-state components for public, traveler, guide, and admin pages. */
.gt-status{display:inline-flex;align-items:center;gap:.38rem;border-radius:999px;border:1px solid rgba(148,163,184,.22);background:#fff;padding:.36rem .65rem;font-size:.72rem;font-weight:900;line-height:1;color:#475569;white-space:nowrap}
.gt-status::before{content:"";width:.45rem;height:.45rem;border-radius:999px;background:currentColor;opacity:.78}
.gt-status-success{background:rgba(240,253,250,.92);border-color:rgba(20,184,166,.22);color:var(--gt-success)}
.gt-status-warning{background:rgba(255,251,235,.95);border-color:rgba(245,158,11,.26);color:var(--gt-warning)}
.gt-status-danger{background:rgba(255,241,242,.95);border-color:rgba(244,63,94,.22);color:var(--gt-danger)}
.gt-status-info{background:rgba(232,245,244,.95);border-color:rgba(15,95,102,.18);color:var(--gt-info)}
.gt-status-muted{background:rgba(248,250,252,.95);border-color:rgba(148,163,184,.22);color:#64748b}
.gt-empty-state{display:grid;place-items:center;text-align:center;border:1px dashed rgba(214,179,106,.42);background:linear-gradient(180deg,rgba(255,255,255,.9),rgba(251,247,238,.72));border-radius:var(--gt-radius-xl);padding:clamp(1.5rem,4vw,2.5rem);box-shadow:var(--gt-shadow-xs)}
.gt-empty-state>*{max-width:38rem}
.gt-empty-icon{display:inline-grid;place-items:center;width:3rem;height:3rem;border-radius:1.1rem;background:rgba(232,245,244,.9);color:var(--gt-brand);font-weight:900;margin-bottom:.85rem}

/* Locked form/action polish. */
.form-input::placeholder{color:#9aa8af}
.form-input:hover{border-color:rgba(15,95,102,.22)}
.form-label{display:block;margin-bottom:.45rem;color:var(--gt-brand);font-size:.78rem;font-weight:900;letter-spacing:.02em}
.form-help{margin-top:.35rem;color:#64748b;font-size:.78rem;line-height:1.45}
.cta-primary,.cta-secondary{will-change:transform}
.cta-ghost{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;border-radius:1rem;border:1px solid transparent;background:transparent;color:var(--gt-brand);font-weight:900;padding:.85rem 1.05rem;transition:.18s ease}
.cta-ghost:hover{background:rgba(232,245,244,.72);transform:translateY(-1px)}

/* Locked desktop/tablet/mobile behavior standards. */
@media(min-width:768px){
  .gt-desktop-action-row{display:flex;align-items:center;justify-content:flex-end;gap:.75rem}
  .gt-sticky-panel{position:sticky;top:6rem;align-self:start}
}
@media(max-width:1023px){
  .gt-section-header{align-items:flex-start;flex-direction:column}
  .gt-toolbar{align-items:stretch}.gt-toolbar-group{width:100%}
}
@media(max-width:767px){
  .gt-section{padding-top:2.25rem;padding-bottom:2.25rem}
  .gt-section-compact{padding-top:1.35rem;padding-bottom:1.35rem}
  .gt-section-header{gap:.75rem;margin-bottom:1rem}
  .gt-section-title{font-size:clamp(1.65rem,8vw,2.2rem)}
  .gt-action-row,.gt-desktop-action-row,.gt-toolbar-group{display:grid;grid-template-columns:1fr;width:100%}
  .gt-filter-chip{justify-content:center;min-height:2.7rem}
  .gt-surface,.gt-surface-strong,.gt-empty-state{border-radius:1.2rem}
  .gt-card-grid,.gt-card-grid-lg{grid-template-columns:1fr;gap:.85rem}
  .cta-ghost{width:100%;min-height:3.05rem}
}


/* Phase 18A.2 — Desktop Public Pages Polish
   Scope: public pages only. Keep static/mock-data behavior and preserve mobile repair layer. */
:root{
  --gt-desktop-section-gap:clamp(3.75rem,6vw,6.75rem);
  --gt-desktop-card-gap:1.35rem;
  --gt-desktop-hero-min:clamp(31rem,52vh,43rem);
}
.gt-public-page main[id="main-content"],
main.gt-public-page,
.gt-public-main{position:relative}
.gt-public-hero{position:relative;overflow:hidden;border-bottom:1px solid rgba(231,225,215,.72)}
.gt-public-hero:after{content:"";position:absolute;inset:auto -10% -45% -10%;height:28rem;pointer-events:none;background:radial-gradient(ellipse at center,rgba(214,179,106,.12),transparent 65%);opacity:.9}
.gt-public-container{width:100%;max-width:var(--gt-wide-max);margin-inline:auto}
.gt-public-section{margin-top:var(--gt-desktop-section-gap)}
.gt-public-section:first-child{margin-top:0}
.gt-public-section-header{display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem;margin-bottom:1.45rem}
.gt-public-section-header .home-section-title{font-size:clamp(1.55rem,2vw,2.05rem);letter-spacing:-.035em}
.gt-public-section-header p{max-width:46rem;color:var(--gt-text-soft);line-height:1.7}
.gt-premium-panel{position:relative;border:1px solid rgba(231,225,215,.92);background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(250,248,245,.91));box-shadow:0 18px 55px rgba(17,30,34,.072);backdrop-filter:blur(14px)}
.gt-premium-panel:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(145deg,rgba(255,255,255,.75),transparent 42%,rgba(214,179,106,.07));opacity:.85}
.gt-premium-panel>*{position:relative;z-index:1}
.gt-hero-stat-strip{border:1px solid rgba(231,225,215,.95);background:rgba(255,255,255,.74);box-shadow:0 10px 34px rgba(17,30,34,.045);backdrop-filter:blur(12px)}
.gt-hero-stat-strip strong{color:var(--gt-brand)}
.gt-desktop-filter-card{border:1px solid rgba(231,225,215,.95);background:linear-gradient(180deg,#fff,rgba(250,248,245,.96));box-shadow:0 12px 36px rgba(17,30,34,.052)}
.gt-desktop-filter-card .form-input{background:rgba(255,255,255,.9)}
.gt-filter-pill{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(231,225,215,.95);background:#fff;border-radius:999px;padding:.55rem .85rem;font-size:.76rem;font-weight:900;color:#52626b;box-shadow:0 4px 12px rgba(17,30,34,.028)}
.gt-filter-pill.is-active{border-color:rgba(15,95,102,.3);background:rgba(232,245,244,.86);color:var(--gt-brand)}
.gt-feature-grid{display:grid;gap:var(--gt-desktop-card-gap);grid-template-columns:repeat(auto-fit,minmax(min(100%,13.5rem),1fr))}
.gt-listing-grid{display:grid;gap:1.35rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr))}
.gt-page-cta{position:relative;overflow:hidden;border:1px solid rgba(214,179,106,.35);background:linear-gradient(135deg,rgba(255,251,235,.96),rgba(232,245,244,.84));box-shadow:0 20px 60px rgba(17,30,34,.065)}
.gt-page-cta:after{content:"";position:absolute;right:-5rem;bottom:-8rem;width:24rem;height:24rem;border-radius:999px;background:rgba(255,255,255,.48);filter:blur(1px)}
.gt-page-cta>*{position:relative;z-index:1}
.gt-desktop-story-card{border:1px solid rgba(231,225,215,.9);background:rgba(255,255,255,.88);box-shadow:0 10px 32px rgba(17,30,34,.046)}
.gt-detail-photo{min-height:clamp(28rem,52vh,38rem)}
.gt-detail-sidebar{border:1px solid rgba(214,179,106,.35);background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(250,248,245,.96));box-shadow:0 18px 50px rgba(17,30,34,.07)}
.gt-desktop-metrics{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr))}
.gt-flow-card{border:1px solid rgba(231,225,215,.92);background:linear-gradient(180deg,#fff,rgba(250,248,245,.95));box-shadow:0 9px 28px rgba(17,30,34,.04)}
.gt-link-more{display:inline-flex;align-items:center;gap:.45rem;border-radius:999px;border:1px solid rgba(15,95,102,.14);background:rgba(232,245,244,.72);padding:.62rem .9rem;color:var(--gt-brand);font-size:.8rem;font-weight:900;transition:.18s ease}
.gt-link-more:hover{transform:translateY(-1px);background:rgba(232,245,244,.96)}
.gt-destination-card{isolation:isolate;box-shadow:0 14px 38px rgba(17,30,34,.08)}
.gt-destination-card:after{content:"";position:absolute;inset:0;z-index:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18),inset 0 -110px 80px rgba(0,0,0,.42);pointer-events:none}
.gt-destination-card>*{position:relative;z-index:1}
.gt-tour-card{box-shadow:0 11px 34px rgba(17,30,34,.052)}
.gt-tour-card .tour-photo{overflow:hidden}
.gt-tour-card .tour-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.1),transparent 38%);pointer-events:none}
.gt-public-form-shell{box-shadow:0 18px 55px rgba(17,30,34,.065)}
.gt-desktop-only-polish-note{display:none}
@media(min-width:1024px){
  .gt-public-hero{padding-top:clamp(3rem,4.8vw,5.4rem)!important;padding-bottom:clamp(3rem,4.5vw,5.2rem)!important}
  .gt-public-hero .app-shell-title,.gt-public-hero h1.font-display{letter-spacing:-.055em}
  .gt-public-hero .brand-kicker{box-shadow:0 8px 24px rgba(17,30,34,.05)}
  .gt-hero-copy{font-size:1.125rem;line-height:1.85;max-width:44rem}
  .gt-desktop-sticky{position:sticky;top:6.5rem;align-self:start}
  .gt-desktop-raise{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
  .gt-desktop-raise:hover{transform:translateY(-3px);box-shadow:0 22px 58px rgba(17,30,34,.09);border-color:rgba(214,179,106,.42)}
  .gt-feature-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
  .gt-feature-grid .gt-tour-card .tour-photo{height:9.5rem}
  .gt-public-listing-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,410px);align-items:end;gap:2rem}
  .gt-detail-page-grid{display:grid;grid-template-columns:minmax(0,1fr) 430px;gap:1.5rem;align-items:start}
  .gt-detail-photo h1{max-width:58rem}
  .gt-public-form-grid{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:1.5rem;align-items:start}
}
@media(max-width:1023px){
  .gt-public-section-header{align-items:flex-start;flex-direction:column;gap:.8rem}
  .gt-feature-grid,.gt-listing-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr))}
}
@media(max-width:767px){
  .gt-public-section{margin-top:2.3rem}
  .gt-feature-grid,.gt-listing-grid{grid-template-columns:1fr}
  .gt-hero-stat-strip{border-radius:1.2rem!important}
  .gt-detail-photo{min-height:22rem}
}


/* Phase 18A.3 — Mobile Public Pages Polish
   Scope: public mobile pages only. This layer improves perceived quality after repair:
   compact heroes, better mobile cards, relevant bottom actions, safer forms, and shorter scroll fatigue. */
.gt-mobile-action-dock{display:none}
@media(max-width:767px){
  :root{--gt-mobile-nav-h:4.85rem;--gt-mobile-dock-h:4.15rem;--gt-mobile-page-x:1rem}
  html{scroll-padding-top:5.25rem}
  body:has(.gt-mobile-action-dock){padding-bottom:calc(9.7rem + env(safe-area-inset-bottom))}
  .site-shell:has(.gt-mobile-action-dock){padding-bottom:calc(8.8rem + env(safe-area-inset-bottom))}
  .site-shell:has(.gt-mobile-action-dock) footer{margin-bottom:calc(8.95rem + env(safe-area-inset-bottom))}

  /* Public mobile shell rhythm */
  .gt-public-main{overflow:hidden}
  main.gt-public-main,
  .gt-public-main.px-4,
  main.gt-public-main.px-4{padding-left:var(--gt-mobile-page-x)!important;padding-right:var(--gt-mobile-page-x)!important;padding-top:1.2rem!important}
  .gt-public-container{max-width:100%}
  .gt-public-section{margin-top:1.7rem!important}
  .gt-public-section-header{gap:.65rem;margin-bottom:.85rem!important}
  .gt-public-section-header .home-section-title{font-size:1.28rem!important;line-height:1.15}
  .gt-public-section-header p,.gt-section-copy,.gt-hero-copy{font-size:.95rem!important;line-height:1.72!important}
  .gt-public-section-header a:not(.cta-primary):not(.cta-secondary){width:100%;justify-content:center}

  /* Mobile public heroes */
  .gt-public-hero{border-radius:1.35rem!important;margin-inline:0!important;padding:1.05rem!important;box-shadow:0 10px 28px rgba(17,30,34,.055)!important}
  .gt-public-hero:after{height:15rem;bottom:-8rem;opacity:.6}
  .gt-public-hero .mock-map{opacity:.28}
  .gt-public-hero .app-shell-title,
  .gt-public-hero h1.font-display,
  .gt-public-hero h1{font-size:clamp(2rem,10.4vw,2.7rem)!important;line-height:.98!important;letter-spacing:-.045em!important;text-wrap:balance}
  .gt-public-hero p{max-width:100%;font-size:.98rem!important;line-height:1.7!important}
  .gt-public-hero .brand-kicker{margin-bottom:.1rem;line-height:1.25}
  .gt-public-listing-hero{display:block!important}
  .gt-public-listing-hero>div+div{margin-top:1rem}
  .gt-hero-stat-strip{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem!important;padding:.65rem!important;border-radius:1.1rem!important}
  .gt-hero-stat-strip>div{min-width:0;border-radius:.9rem;background:rgba(255,255,255,.72);padding:.55rem .35rem;text-align:center}
  .gt-hero-stat-strip strong{display:block;font-size:1rem;line-height:1.1}
  .gt-hero-stat-strip span,.gt-hero-stat-strip p{font-size:.68rem!important;line-height:1.25!important}
  .gt-desktop-filter-card,.gt-premium-panel,.gt-page-cta,.gt-desktop-story-card{border-radius:1.2rem!important;box-shadow:0 8px 24px rgba(17,30,34,.05)!important}
  .gt-filter-pill,.gt-filter-chip{min-height:2.45rem;padding:.55rem .75rem;font-size:.72rem}

  /* Destination/tour listing cards */
  .gt-listing-grid,.gt-feature-grid,.gt-card-grid,.gt-card-grid-lg{grid-template-columns:1fr!important;gap:.9rem!important}
  .gt-destination-card{min-height:17.5rem!important;height:auto!important;border-radius:1.25rem!important;padding:1rem!important;box-shadow:0 12px 32px rgba(17,30,34,.09)!important}
  .gt-destination-card h3{font-size:1.55rem!important;line-height:1.02!important}
  .gt-destination-card p{font-size:.88rem!important}
  .gt-destination-card span{max-width:100%}
  .gt-tour-card{border-radius:1.25rem!important;box-shadow:0 8px 24px rgba(17,30,34,.052)!important}
  .gt-tour-card .tour-photo{height:11.8rem!important;min-height:11.8rem!important;border-radius:0!important}
  .gt-tour-card .p-4{padding:1rem!important}
  .gt-tour-card h3{font-size:1.02rem!important;line-height:1.28!important}
  .gt-tour-card .mt-3.flex.items-center.justify-between{align-items:flex-start!important;flex-direction:column!important;gap:.45rem!important}

  /* Detail and conversion pages */
  .gt-detail-photo{min-height:24rem!important;border-radius:1.35rem!important;padding:1rem!important}
  .gt-detail-page-grid,.gt-public-form-grid{display:block!important}
  .gt-detail-sidebar,.gt-public-form-shell{margin-top:1rem;border-radius:1.25rem!important}
  .gt-sticky-panel,.gt-desktop-sticky{position:static!important}
  .gt-page-cta{padding:1.05rem!important}
  .gt-page-cta h2,.gt-page-cta .font-display{font-size:1.6rem!important;line-height:1.06!important}
  .gt-page-cta .flex,.gt-page-cta .grid{gap:.65rem!important}
  .gt-page-cta .rounded-full{white-space:normal;text-align:center}

  /* Mobile form comfort on public pages */
  .gt-public-main form{gap:.85rem}
  .gt-public-main label{line-height:1.35}
  .gt-public-main .form-input{border-radius:.95rem!important;min-height:3.15rem!important;padding:.85rem .95rem!important}
  .gt-public-main textarea.form-input{min-height:8rem!important}
  .gt-public-main select.form-input{padding-right:2rem!important;background-color:#fff}
  .gt-public-main .rounded-\[2rem\],
  .gt-public-main .rounded-\[2\.25rem\],
  .gt-public-main .rounded-\[1\.5rem\],
  .gt-public-main .rounded-\[1\.35rem\],
  .gt-public-main .rounded-\[1\.25rem\]{border-radius:1.15rem!important}
  .gt-public-main .grid[class*="sm:grid-cols"],
  .gt-public-main .grid[class*="md:grid-cols"],
  .gt-public-main .grid[class*="lg:grid-cols"]{grid-template-columns:1fr!important}
  .gt-public-main .flex[class*="sm:flex-row"],
  .gt-public-main .flex[class*="lg:flex"]{flex-direction:column!important;align-items:stretch!important}
  .gt-public-main .cta-primary,
  .gt-public-main .cta-secondary,
  .gt-public-main .cta-ghost{width:100%;min-height:3.15rem}

  /* Public mobile bottom action dock */
  .gt-mobile-action-dock{position:fixed;left:.65rem;right:.65rem;bottom:calc(5.55rem + env(safe-area-inset-bottom));z-index:82;display:grid;grid-template-columns:1fr 1fr;gap:.45rem;border:1px solid rgba(231,225,215,.94);border-radius:1.2rem;background:rgba(255,255,255,.95);padding:.45rem;box-shadow:0 16px 46px rgba(17,30,34,.14);backdrop-filter:blur(18px);transition:opacity .18s ease,transform .18s ease}
  .gt-mobile-action-dock a{display:flex;align-items:center;justify-content:center;min-height:2.9rem;border-radius:.95rem;padding:.6rem .65rem;text-align:center;font-size:.75rem;font-weight:950;line-height:1.15;text-decoration:none}
  .gt-mobile-action-dock-primary{background:var(--gt-brand);color:#fff;box-shadow:0 10px 22px rgba(15,95,102,.18)}
  .gt-mobile-action-dock-secondary{border:1px solid rgba(214,179,106,.42);background:#fff;color:var(--gt-gold)}
  .gt-mobile-action-dock.is-soft-hidden{opacity:.18;transform:translateY(.3rem);pointer-events:none}
  .mobile-bottom-nav{border-radius:1.2rem!important;background:rgba(255,255,255,.96)!important}
  .mobile-bottom-nav a{min-height:3rem}
  .mobile-bottom-nav a b{font-size:.63rem!important}

  /* Public footer becomes easier to scan on phones. */
  footer{margin-top:2.25rem!important;background:rgba(255,255,255,.82)!important}
  footer .grid{gap:1.15rem!important;padding-top:1.5rem!important;padding-bottom:1.5rem!important}
  footer h3{margin-bottom:.4rem;color:var(--gt-brand)}
  footer a.block{border-radius:.8rem;background:rgba(248,246,241,.7);padding:.6rem .7rem;font-weight:800;color:#52626b}
  footer p{font-size:.86rem;line-height:1.55}
}
@media(max-width:480px){
  .gt-mobile-action-dock{left:.45rem;right:.45rem;bottom:calc(5.35rem + env(safe-area-inset-bottom));gap:.35rem;padding:.36rem;border-radius:1.05rem}
  .gt-mobile-action-dock a{min-height:2.75rem;font-size:.7rem;border-radius:.85rem}
  .gt-public-hero{padding:.95rem!important;border-radius:1.15rem!important}
  .gt-public-hero .app-shell-title,.gt-public-hero h1.font-display,.gt-public-hero h1{font-size:clamp(1.92rem,10.8vw,2.4rem)!important}
  .gt-hero-stat-strip strong{font-size:.92rem}
  .gt-destination-card{min-height:16rem!important}
}
@media(max-width:360px){
  .gt-mobile-action-dock a{font-size:.66rem;padding:.5rem .35rem}
  .gt-public-hero .app-shell-title,.gt-public-hero h1.font-display,.gt-public-hero h1{font-size:1.82rem!important}
  .gt-hero-stat-strip{grid-template-columns:1fr!important;text-align:left}
  .gt-hero-stat-strip>div{text-align:left;padding:.55rem .65rem}
}
@media(max-width:767px){
  .is-keyboard-open .gt-mobile-action-dock{display:none!important}
}

/* Phase 18A.4 — Planner + Request Flow UX Polish
   Scope: planner → itinerary → guide/tour request conversion paths only. Static/mock-data only. */
.gt-request-flow-page .gt-flow-rail{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center}
.gt-request-flow-page .gt-flow-rail span{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(231,225,215,.94);background:rgba(255,255,255,.78);border-radius:999px;padding:.62rem .85rem;color:#64748b;font-size:.78rem;font-weight:950;box-shadow:0 5px 16px rgba(17,30,34,.035)}
.gt-request-flow-page .gt-flow-rail span.is-active{border-color:rgba(15,95,102,.24);background:rgba(232,245,244,.95);color:var(--gt-brand)}
.gt-request-flow-page .gt-flow-rail span.is-done{border-color:rgba(16,185,129,.18);background:rgba(236,253,245,.92);color:#047857}
.gt-flow-hero{position:relative;isolation:isolate}
.gt-flow-hero:after{content:"";position:absolute;right:-6rem;bottom:-8rem;width:22rem;height:22rem;border-radius:999px;background:rgba(214,179,106,.10);pointer-events:none}
.gt-flow-handoff-panel{background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(250,248,245,.96))}
.gt-flow-summary-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;border-radius:1rem;background:rgba(248,246,241,.84);padding:.85rem 1rem}
.gt-flow-summary-row span{color:#64748b;font-weight:850}
.gt-flow-summary-row b{max-width:62%;text-align:right;color:var(--gt-ink);font-weight:950}
.gt-intent-option{position:relative;overflow:hidden}
.gt-intent-option:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:inset 0 0 0 0 rgba(15,95,102,.18);transition:.18s ease}
.gt-intent-option.is-selected:after{box-shadow:inset 0 0 0 2px rgba(15,95,102,.16)}
.gt-flow-readiness span[style]{transition:width .2s ease}
.gt-flow-note{position:relative;overflow:hidden}
.gt-flow-note:after{content:"";position:absolute;right:-4rem;bottom:-6rem;width:18rem;height:18rem;border-radius:999px;background:rgba(255,255,255,.42);pointer-events:none}
.gt-flow-note>*{position:relative;z-index:1}
@media(min-width:1024px){
  .gt-request-flow-page .section-card{scroll-margin-top:6.5rem}
  .gt-flow-handoff-panel{min-height:100%}
}
@media(max-width:767px){
  .gt-request-flow-page .gt-flow-rail{display:grid;grid-template-columns:1fr 1fr;gap:.42rem}
  .gt-request-flow-page .gt-flow-rail span{min-height:2.45rem;padding:.54rem .5rem;font-size:.68rem;line-height:1.15;text-align:center}
  .gt-flow-hero{border-radius:1.2rem!important}
  .gt-flow-hero .banner-photo{min-height:25rem!important;padding:1.05rem!important;border-radius:0!important}
  .gt-flow-handoff-panel{padding:1rem!important}
  .gt-flow-summary-row{display:grid;grid-template-columns:1fr;gap:.25rem;padding:.8rem .85rem}
  .gt-flow-summary-row b{max-width:100%;text-align:left;font-size:.88rem}
  .gt-request-flow-page .app-shell-title{font-size:clamp(2rem,10vw,2.65rem)!important}
  .gt-request-flow-page .section-card{border-radius:1.2rem!important;padding:1rem!important}
  .gt-request-flow-page .brand-kicker{font-size:.66rem}
  .gt-intent-option{border-radius:1rem!important;padding:.95rem!important}
}

/* Phase 18A.5 — Traveler Dashboard UI Polish
   Scope: /traveler workspace only. Static/mock-data only. */
.gt-traveler-dashboard-page{background:
  radial-gradient(circle at 12% 8%,rgba(214,179,106,.11),transparent 28rem),
  radial-gradient(circle at 90% 12%,rgba(15,95,102,.08),transparent 30rem),
  linear-gradient(180deg,#fbfaf7 0%,#f8f6f1 54%,#fbfaf7 100%)}
.gt-traveler-shell .section-card,.gt-traveler-dashboard-page .section-card{border-color:rgba(231,225,215,.94);box-shadow:0 14px 38px rgba(17,30,34,.055)}
.gt-traveler-page-hero{position:relative;overflow:hidden;isolation:isolate;background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(250,248,244,.86))!important}
.gt-traveler-page-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,rgba(15,95,102,.075),transparent 46%),radial-gradient(circle at right bottom,rgba(214,179,106,.14),transparent 22rem);pointer-events:none;z-index:-1}
.gt-traveler-page-hero .app-shell-title{letter-spacing:-.045em;line-height:.98;text-wrap:balance}
.gt-traveler-chip{display:inline-flex;align-items:center;gap:.4rem;border:1px solid rgba(15,95,102,.10);border-radius:999px;background:rgba(255,255,255,.84);padding:.56rem .78rem;color:var(--gt-brand);font-size:.74rem;font-weight:950;box-shadow:0 8px 22px rgba(17,30,34,.04)}
.gt-traveler-action-cluster{min-width:min(100%,34rem)}
.gt-traveler-today-panel article{box-shadow:0 14px 38px rgba(17,30,34,.055)}
.gt-traveler-status-strip{align-items:stretch}
.gt-traveler-status-card{position:relative;overflow:hidden;display:flex;min-height:9.2rem;flex-direction:column;justify-content:space-between;gap:.8rem;border:1px solid rgba(231,225,215,.94);border-radius:1.35rem;background:rgba(255,255,255,.86);padding:1rem;box-shadow:0 10px 28px rgba(17,30,34,.046);transition:transform .18s ease,box-shadow .18s ease}
.gt-traveler-status-card:hover{transform:translateY(-.18rem);box-shadow:0 18px 42px rgba(17,30,34,.078)}
.gt-traveler-status-card:after{content:"";position:absolute;right:-3rem;bottom:-4rem;width:9rem;height:9rem;border-radius:999px;background:rgba(15,95,102,.06);pointer-events:none}
.gt-traveler-status-icon{display:grid;width:2.3rem;height:2.3rem;place-items:center;border-radius:1rem;background:rgba(15,95,102,.08);color:var(--gt-brand);font-weight:950}
.gt-traveler-profile-card{background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(250,248,244,.92))}
.gt-traveler-filter-bar{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center}
.gt-traveler-filter-pill{display:inline-flex;align-items:center;justify-content:center;min-height:2.55rem;border:1px solid rgba(231,225,215,.98);border-radius:999px;background:#fff;padding:.58rem .88rem;color:#64748b;font-size:.74rem;font-weight:950;text-transform:uppercase;letter-spacing:.04em;box-shadow:0 8px 22px rgba(17,30,34,.035);transition:transform .16s ease,background .16s ease,color .16s ease,border-color .16s ease}
.gt-traveler-filter-pill:hover{transform:translateY(-1px);color:var(--gt-brand);border-color:rgba(15,95,102,.18)}
.gt-traveler-filter-pill.is-active{background:var(--gt-brand);border-color:var(--gt-brand);color:#fff;box-shadow:0 12px 26px rgba(15,95,102,.16)}
.gt-traveler-filter-item.is-filter-hidden{display:none!important}
.gt-traveler-trip-card,.gt-traveler-saved-card,.gt-traveler-tour-request-card{position:relative;min-height:100%}
.gt-traveler-trip-card .tour-photo,.gt-traveler-tour-request-card .tour-photo{position:relative;overflow:hidden}
.gt-traveler-trip-card .tour-photo:after,.gt-traveler-tour-request-card .tour-photo:after{content:"";position:absolute;inset:auto 0 0;height:48%;background:linear-gradient(180deg,transparent,rgba(0,0,0,.44));pointer-events:none}
.gt-traveler-trip-card .tour-photo>*,.gt-traveler-tour-request-card .tour-photo>*{position:relative;z-index:1}
.gt-traveler-notification-card{position:relative;overflow:hidden}
.gt-traveler-notification-card:before{content:"";position:absolute;inset:0 0 0 auto;width:4px;background:rgba(15,95,102,.18)}
.gt-traveler-quick-replies{display:grid;gap:.45rem;margin-top:.35rem}
.gt-traveler-quick-replies button{min-height:2.5rem;border:1px solid rgba(231,225,215,.98);border-radius:1rem;background:#fff;padding:.55rem .7rem;color:#64748b;font-size:.76rem;font-weight:900;text-align:left;transition:.16s ease}
.gt-traveler-quick-replies button:hover{border-color:rgba(15,95,102,.18);background:rgba(232,245,244,.7);color:var(--gt-brand)}
.gt-traveler-dashboard-page .form-input:focus{box-shadow:0 0 0 4px rgba(15,95,102,.10);border-color:rgba(15,95,102,.34)}
.gt-traveler-dashboard-page .metric-card{border-color:rgba(231,225,215,.92);background:rgba(255,255,255,.86);box-shadow:0 10px 28px rgba(17,30,34,.046)}
.gt-traveler-dashboard-page .table-card th{background:rgba(248,246,241,.92);font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;color:#64748b}
.gt-traveler-dashboard-page .table-card td{vertical-align:top}
.gt-traveler-dashboard-page .mobile-scroll-x{overflow-x:auto!important;-webkit-overflow-scrolling:touch}
.gt-traveler-dashboard-page .dashboard-mobile-switcher .section-card{background:rgba(255,255,255,.9);backdrop-filter:blur(16px)}
.gt-traveler-dashboard-page .dashboard-mobile-menu-link.is-active{background:var(--gt-brand)!important;color:#fff!important}
@media(min-width:1024px){
  .gt-traveler-shell>div{align-items:start}
  .gt-traveler-shell aside .sticky{top:6.2rem}
  .gt-traveler-page-hero{padding:1.6rem!important}
}
@media(max-width:767px){
  .gt-traveler-dashboard-page main{padding-top:.85rem!important;padding-inline:.75rem!important}
  .gt-traveler-dashboard-page .dashboard-mobile-switcher{position:sticky;top:4.45rem;z-index:48;margin-inline:-.25rem}
  .gt-traveler-page-hero{border-radius:1.2rem!important;padding:1rem!important}
  .gt-traveler-page-hero .app-shell-title{font-size:clamp(2rem,10.2vw,2.65rem)!important;line-height:.98!important}
  .gt-traveler-page-hero p{font-size:.94rem;line-height:1.65}
  .gt-traveler-action-cluster{grid-template-columns:1fr!important;width:100%}
  .gt-traveler-page-hero .cta-primary,.gt-traveler-page-hero .cta-secondary{width:100%;min-height:3rem}
  .gt-traveler-chip{font-size:.68rem;padding:.5rem .62rem}
  .gt-traveler-status-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.7rem!important}
  .gt-traveler-status-card{min-height:8rem;border-radius:1.1rem;padding:.85rem}
  .gt-traveler-status-card p.text-3xl{font-size:1.55rem!important;line-height:1}
  .gt-traveler-status-card .badge,.gt-traveler-status-card [class*="rounded-full"]{font-size:.62rem}
  .gt-traveler-today-panel{grid-template-columns:1fr!important}
  .gt-traveler-filter-bar{overflow-x:auto;flex-wrap:nowrap;padding-bottom:.2rem;-webkit-overflow-scrolling:touch}
  .gt-traveler-filter-pill{min-width:max-content;min-height:2.35rem;font-size:.68rem;padding:.5rem .74rem}
  .gt-traveler-dashboard-page .section-card{border-radius:1.15rem!important;padding:1rem!important}
  .gt-traveler-dashboard-page .banner-photo{min-height:24rem!important;padding:1rem!important}
  .gt-traveler-dashboard-page .home-section-title{font-size:1.45rem!important;line-height:1.1}
  .gt-traveler-dashboard-page .grid[class*="xl:grid-cols"],.gt-traveler-dashboard-page .grid[class*="lg:grid-cols"]{grid-template-columns:1fr!important}
  .gt-traveler-dashboard-page .flex[class*="xl:flex-row"],.gt-traveler-dashboard-page .flex[class*="lg:flex-row"],.gt-traveler-dashboard-page .flex[class*="sm:flex-row"]{align-items:stretch!important}
  .gt-traveler-dashboard-page .cta-primary,.gt-traveler-dashboard-page .cta-secondary{min-height:3rem}
  .gt-traveler-dashboard-page table{min-width:760px}
  .gt-traveler-dashboard-page textarea.form-input{min-height:8rem}
}
@media(max-width:420px){
  .gt-traveler-status-strip{grid-template-columns:1fr!important}
  .gt-traveler-dashboard-page main{padding-inline:.55rem!important}
  .gt-traveler-page-hero .app-shell-title{font-size:1.92rem!important}
}

/* Phase 18A.6 — Guide Dashboard UI Polish
   Scope: /guide workspace only. Static/mock-data only. */
.gt-guide-dashboard-page{background:
  radial-gradient(circle at 10% 7%,rgba(214,179,106,.13),transparent 28rem),
  radial-gradient(circle at 92% 10%,rgba(15,95,102,.10),transparent 32rem),
  linear-gradient(180deg,#fbfaf7 0%,#f7f4ed 52%,#fbfaf7 100%)}
.gt-guide-shell .section-card,.gt-guide-dashboard-page .section-card{border-color:rgba(231,225,215,.94);box-shadow:0 14px 38px rgba(17,30,34,.055)}
.gt-guide-shell>div>section.min-w-0>.flex:first-child{position:relative;overflow:hidden;isolation:isolate;border:1px solid rgba(231,225,215,.94);border-radius:1.75rem;background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(251,247,238,.86));padding:1.35rem;box-shadow:0 14px 38px rgba(17,30,34,.055)}
.gt-guide-shell>div>section.min-w-0>.flex:first-child:before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,rgba(15,95,102,.075),transparent 45%),radial-gradient(circle at right bottom,rgba(214,179,106,.17),transparent 23rem);pointer-events:none;z-index:-1}
.gt-guide-shell .app-shell-title{letter-spacing:-.045em;line-height:.98;text-wrap:balance}
.gt-guide-shell .metric-card{position:relative;overflow:hidden;border-color:rgba(231,225,215,.92);background:rgba(255,255,255,.88);box-shadow:0 10px 28px rgba(17,30,34,.046);transition:transform .18s ease,box-shadow .18s ease}
.gt-guide-shell .metric-card:hover{transform:translateY(-.16rem);box-shadow:0 18px 42px rgba(17,30,34,.078)}
.gt-guide-shell .metric-card:after{content:"";position:absolute;right:-2.5rem;bottom:-3.5rem;width:8.5rem;height:8.5rem;border-radius:999px;background:rgba(15,95,102,.055);pointer-events:none}
.gt-guide-profile-card{background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(250,248,244,.92))}
.gt-guide-request-card,.gt-guide-experience-card{position:relative;min-height:100%}
.gt-guide-request-card .tour-photo,.gt-guide-experience-card .photo-card{position:relative;overflow:hidden}
.gt-guide-request-card .tour-photo:after,.gt-guide-experience-card .photo-card:after{content:"";position:absolute;inset:auto 0 0;height:48%;background:linear-gradient(180deg,transparent,rgba(0,0,0,.44));pointer-events:none}
.gt-guide-request-card .tour-photo>*,.gt-guide-experience-card .photo-card>*{position:relative;z-index:1}
.gt-guide-filter-bar{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;justify-content:flex-end}
.gt-guide-filter-pill{display:inline-flex;align-items:center;justify-content:center;min-height:2.55rem;border:1px solid rgba(231,225,215,.98);border-radius:999px;background:#fff;padding:.58rem .88rem;color:#64748b;font-size:.74rem;font-weight:950;text-transform:uppercase;letter-spacing:.04em;box-shadow:0 8px 22px rgba(17,30,34,.035);transition:transform .16s ease,background .16s ease,color .16s ease,border-color .16s ease}
.gt-guide-filter-pill:hover{transform:translateY(-1px);color:var(--gt-brand);border-color:rgba(15,95,102,.18)}
.gt-guide-filter-pill.is-active{background:var(--gt-brand);border-color:var(--gt-brand);color:#fff;box-shadow:0 12px 26px rgba(15,95,102,.16)}
.gt-guide-filter-item.is-filter-hidden{display:none!important}
.gt-guide-search{display:block;min-width:min(100%,18rem)}
.gt-guide-search .form-input{min-height:2.55rem;border-radius:999px;background:rgba(255,255,255,.92);padding-inline:1rem;font-size:.82rem;font-weight:800}
.gt-guide-quick-replies{display:grid;gap:.45rem;margin-top:.35rem}
.gt-guide-quick-replies button{min-height:2.5rem;border:1px solid rgba(231,225,215,.98);border-radius:1rem;background:#fff;padding:.55rem .7rem;color:#64748b;font-size:.76rem;font-weight:900;text-align:left;transition:.16s ease}
.gt-guide-quick-replies button:hover{border-color:rgba(15,95,102,.18);background:rgba(232,245,244,.7);color:var(--gt-brand)}
.gt-guide-dashboard-page .form-input:focus{box-shadow:0 0 0 4px rgba(15,95,102,.10);border-color:rgba(15,95,102,.34)}
.gt-guide-dashboard-page .table-card th{background:rgba(248,246,241,.92);font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;color:#64748b}
.gt-guide-dashboard-page .table-card td{vertical-align:top}
.gt-guide-dashboard-page .mobile-scroll-x{overflow-x:auto!important;-webkit-overflow-scrolling:touch}
.gt-guide-dashboard-page .dashboard-mobile-switcher .section-card{background:rgba(255,255,255,.9);backdrop-filter:blur(16px)}
.gt-guide-dashboard-page .dashboard-mobile-menu-link.is-active{background:var(--gt-brand)!important;color:#fff!important}
.gt-guide-dashboard-page .role-switcher{box-shadow:0 10px 28px rgba(17,30,34,.045)}
.gt-guide-dashboard-page textarea.form-input{line-height:1.7}
.gt-guide-dashboard-page .banner-photo{box-shadow:inset 0 -120px 90px rgba(0,0,0,.24)}
@media(min-width:1024px){
  .gt-guide-shell>div{align-items:start}
  .gt-guide-shell aside .sticky{top:6.2rem}
  .gt-guide-shell>div>section.min-w-0>.flex:first-child{padding:1.6rem!important}
}
@media(max-width:767px){
  .gt-guide-dashboard-page main{padding-top:.85rem!important;padding-inline:.75rem!important}
  .gt-guide-dashboard-page .dashboard-mobile-switcher{position:sticky;top:4.45rem;z-index:48;margin-inline:-.25rem}
  .gt-guide-shell>div>section.min-w-0>.flex:first-child{border-radius:1.2rem!important;padding:1rem!important}
  .gt-guide-shell .app-shell-title{font-size:clamp(2rem,10.2vw,2.65rem)!important;line-height:.98!important}
  .gt-guide-shell>div>section.min-w-0>.flex:first-child p{font-size:.94rem;line-height:1.65}
  .gt-guide-shell>div>section.min-w-0>.flex:first-child .cta-primary,.gt-guide-shell>div>section.min-w-0>.flex:first-child .cta-secondary{width:100%;min-height:3rem}
  .gt-guide-shell>div>section.min-w-0>.mt-6.grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.7rem!important}
  .gt-guide-shell .metric-card{border-radius:1.1rem;padding:.85rem!important}
  .gt-guide-shell .metric-card p.text-3xl{font-size:1.55rem!important;line-height:1}
  .gt-guide-filter-bar{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:.2rem;-webkit-overflow-scrolling:touch}
  .gt-guide-filter-pill{min-width:max-content;min-height:2.35rem;font-size:.68rem;padding:.5rem .74rem}
  .gt-guide-search{min-width:14rem}
  .gt-guide-dashboard-page .section-card{border-radius:1.15rem!important;padding:1rem!important}
  .gt-guide-dashboard-page .banner-photo{min-height:24rem!important;padding:1rem!important}
  .gt-guide-dashboard-page .home-section-title{font-size:1.45rem!important;line-height:1.1}
  .gt-guide-dashboard-page .grid[class*="xl:grid-cols"],.gt-guide-dashboard-page .grid[class*="lg:grid-cols"]{grid-template-columns:1fr!important}
  .gt-guide-dashboard-page .flex[class*="xl:flex-row"],.gt-guide-dashboard-page .flex[class*="lg:flex-row"],.gt-guide-dashboard-page .flex[class*="sm:flex-row"]{align-items:stretch!important}
  .gt-guide-dashboard-page .cta-primary,.gt-guide-dashboard-page .cta-secondary{min-height:3rem}
  .gt-guide-dashboard-page table{min-width:820px}
  .gt-guide-dashboard-page textarea.form-input{min-height:8rem}
}
@media(max-width:420px){
  .gt-guide-shell>div>section.min-w-0>.mt-6.grid{grid-template-columns:1fr!important}
  .gt-guide-dashboard-page main{padding-inline:.55rem!important}
  .gt-guide-shell .app-shell-title{font-size:1.92rem!important}
}

/* Phase 18A.7 — Admin UI Polish
   Scope: /admin console only. Static/mock-data only. */
.gt-admin-shell{position:relative;isolation:isolate;background:
  radial-gradient(circle at 8% 7%,rgba(214,179,106,.14),transparent 28rem),
  radial-gradient(circle at 92% 9%,rgba(15,95,102,.11),transparent 33rem),
  linear-gradient(180deg,#fbfaf7 0%,#f8f4ec 54%,#fbfaf7 100%)}
.gt-admin-shell:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.16;background-image:linear-gradient(rgba(11,62,69,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(11,62,69,.08) 1px,transparent 1px);background-size:42px 42px;mask-image:radial-gradient(circle at 45% 0,#000,transparent 70%);z-index:-1}
.gt-admin-shell .section-card{border-color:rgba(231,225,215,.94);box-shadow:0 14px 38px rgba(17,30,34,.055)}
.gt-admin-shell aside .section-card,.gt-admin-shell aside .rounded-\[1\.35rem\]{backdrop-filter:blur(14px)}
.gt-admin-hero{isolation:isolate;background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(250,247,240,.88))!important;box-shadow:0 18px 48px rgba(17,30,34,.065)!important}
.gt-admin-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,rgba(15,95,102,.08),transparent 44%),radial-gradient(circle at right bottom,rgba(214,179,106,.18),transparent 24rem);pointer-events:none;z-index:-1}
.gt-admin-hero .app-shell-title{letter-spacing:-.045em;line-height:.98;text-wrap:balance}
.gt-admin-stats{align-items:stretch}
.gt-admin-metric-card{position:relative;overflow:hidden;min-height:9.25rem;border-color:rgba(231,225,215,.92);background:rgba(255,255,255,.88);box-shadow:0 10px 28px rgba(17,30,34,.046);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.gt-admin-metric-card:hover{transform:translateY(-.16rem);border-color:rgba(214,179,106,.48);box-shadow:0 18px 42px rgba(17,30,34,.078)}
.gt-admin-metric-card:after{content:"";position:absolute;right:-3rem;bottom:-4rem;width:9.5rem;height:9.5rem;border-radius:999px;background:rgba(15,95,102,.055);pointer-events:none}
.gt-admin-toolbar{position:relative;background:linear-gradient(180deg,rgba(255,255,255,.88),rgba(250,248,244,.74));border-bottom:1px solid rgba(231,225,215,.86)}
.gt-admin-toolbar .form-input{background:rgba(255,255,255,.95)}
.gt-admin-search-label{display:block;min-width:min(100%,15rem)}
.gt-admin-result-count{min-height:1rem}
.gt-admin-empty-state{grid-column:1/-1;margin-top:.25rem;border:1px dashed rgba(214,179,106,.52);border-radius:1rem;background:rgba(251,247,238,.78);padding:.75rem 1rem;color:#9d6b1e;font-size:.8rem;font-weight:900}
.gt-admin-shell .table-card th{position:sticky;top:0;z-index:2;background:rgba(248,246,241,.96);backdrop-filter:blur(10px);font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;color:#64748b}
.gt-admin-shell .table-card td{vertical-align:top;background:rgba(255,255,255,.78);transition:background .16s ease}
.gt-admin-shell .table-card tbody tr{transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease}
.gt-admin-shell .table-card tbody tr:hover{transform:translateY(-1px);box-shadow:inset 3px 0 0 rgba(214,179,106,.62)}
.gt-admin-shell .table-card tbody tr:hover td{background:rgba(251,247,238,.72)}
.gt-admin-action-card,.gt-admin-progress-row,.gt-admin-funnel-bar{transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.gt-admin-action-card:hover,.gt-admin-progress-row:hover,.gt-admin-funnel-bar:hover{transform:translateY(-1px);border-color:rgba(214,179,106,.42);box-shadow:0 12px 30px rgba(17,30,34,.055)}
.gt-admin-shell .mobile-scroll-x{overflow-x:auto!important;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:rgba(15,95,102,.28) rgba(245,235,212,.5)}
.gt-admin-shell .mobile-scroll-x::-webkit-scrollbar{height:10px}.gt-admin-shell .mobile-scroll-x::-webkit-scrollbar-track{background:rgba(245,235,212,.5);border-radius:999px}.gt-admin-shell .mobile-scroll-x::-webkit-scrollbar-thumb{background:rgba(15,95,102,.28);border-radius:999px}
.gt-admin-shell .dashboard-mobile-switcher .section-card{background:rgba(255,255,255,.91);backdrop-filter:blur(16px)}
.gt-admin-shell .dashboard-mobile-menu-link.is-active{background:var(--gt-brand)!important;color:#fff!important}
.gt-admin-shell .cta-primary,.gt-admin-shell .cta-secondary,.gt-admin-shell button,.gt-admin-shell a{touch-action:manipulation}
.gt-admin-shell .cta-primary.is-admin-confirmed,.gt-admin-shell .cta-secondary.is-admin-confirmed,.gt-admin-shell button.is-admin-confirmed{background:#ecfdf5!important;border-color:#bbf7d0!important;color:#047857!important;box-shadow:0 10px 24px rgba(4,120,87,.09)!important}
.gt-admin-shell .is-filter-hidden{display:none!important}
.gt-admin-shell img{max-width:100%}
.gt-admin-toggle{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;border:1px solid rgba(231,225,215,.94);border-radius:1rem;background:#fff;padding:.85rem 1rem;text-align:left;font-size:.85rem;font-weight:900;color:#475569;transition:.16s ease}
.gt-admin-toggle:after{content:"";width:2.4rem;height:1.25rem;border-radius:999px;background:#e2e8f0;box-shadow:inset 0 0 0 2px rgba(255,255,255,.8);transition:.16s ease}
.gt-admin-toggle.is-active{color:var(--gt-brand);border-color:rgba(15,95,102,.24);background:rgba(232,245,244,.72)}
.gt-admin-toggle.is-active:after{background:var(--gt-brand);box-shadow:inset 1.1rem 0 0 rgba(255,255,255,.9)}
.gt-admin-shell .gt-avatar{box-shadow:0 6px 16px rgba(15,95,102,.16)}
@media(min-width:1024px){
  .gt-admin-shell>div{align-items:start}
  .gt-admin-shell aside .sticky{top:6.2rem}
  .gt-admin-hero{padding:1.6rem!important}
  .gt-admin-shell .table-card{min-width:860px}
}
@media(max-width:767px){
  .gt-admin-shell{padding-top:.85rem!important;padding-inline:.75rem!important}
  .gt-admin-shell .dashboard-mobile-switcher{position:sticky;top:4.45rem;z-index:48;margin-inline:-.25rem}
  .gt-admin-hero{border-radius:1.2rem!important;padding:1rem!important}
  .gt-admin-hero .app-shell-title{font-size:clamp(2rem,10.2vw,2.65rem)!important;line-height:.98!important}
  .gt-admin-hero p{font-size:.94rem;line-height:1.65}
  .gt-admin-hero .cta-primary,.gt-admin-hero .cta-secondary{width:100%;min-height:3rem}
  .gt-admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.7rem!important}
  .gt-admin-metric-card{min-height:8.2rem;border-radius:1.1rem;padding:.85rem!important}
  .gt-admin-metric-card p.text-3xl{font-size:1.55rem!important;line-height:1}
  .gt-admin-metric-card .icon-chip{width:2.15rem;height:2.15rem;border-radius:.85rem}
  .gt-admin-shell .section-card{border-radius:1.15rem!important;padding:1rem!important}
  .gt-admin-shell .section-card.overflow-hidden{padding:0!important}
  .gt-admin-toolbar{padding:1rem!important}
  .gt-admin-toolbar>div:last-of-type{width:100%;display:grid!important;grid-template-columns:1fr!important}
  .gt-admin-toolbar select,.gt-admin-toolbar input{min-width:0!important;width:100%}
  .gt-admin-shell .home-section-title{font-size:1.45rem!important;line-height:1.1}
  .gt-admin-shell .grid[class*="xl:grid-cols"],.gt-admin-shell .grid[class*="lg:grid-cols"],.gt-admin-shell .grid[class*="md:grid-cols"]{grid-template-columns:1fr!important}
  .gt-admin-shell .flex[class*="xl:flex-row"],.gt-admin-shell .flex[class*="lg:flex-row"],.gt-admin-shell .flex[class*="sm:flex-row"],.gt-admin-shell .flex[class*="md:flex-row"]{align-items:stretch!important}
  .gt-admin-shell .cta-primary,.gt-admin-shell .cta-secondary{min-height:3rem}
  .gt-admin-shell table{min-width:860px}
  .gt-admin-shell textarea.form-input{min-height:8rem}
  .gt-admin-shell .h-72{height:18rem!important}
}
@media(max-width:420px){
  .gt-admin-stats{grid-template-columns:1fr!important}
  .gt-admin-shell{padding-inline:.55rem!important}
  .gt-admin-hero .app-shell-title{font-size:1.92rem!important}
}

/* Phase 18A.8 — Forms, Tables, Filters, Empty States + Micro UX
   Scope: shared static/MVP UX layer across public, traveler, guide, and admin pages. No backend connection. */
.gt-micro-form{position:relative}
.gt-field-wrap{position:relative}
.gt-field-wrap>span:first-child,.gt-field-wrap>b:first-child,.gt-field-wrap>strong:first-child{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
.gt-required-dot{display:inline-flex;align-items:center;border-radius:999px;background:rgba(232,245,244,.9);border:1px solid rgba(15,95,102,.12);color:var(--gt-brand);padding:.18rem .45rem;font-size:.58rem;font-weight:950;letter-spacing:.055em;text-transform:uppercase;line-height:1}
.gt-form-mini-status{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:.55rem 0 1rem;border:1px solid rgba(231,225,215,.88);border-radius:1rem;background:rgba(255,255,255,.82);padding:.7rem .85rem;color:#64748b;font-size:.74rem;font-weight:900;box-shadow:0 6px 18px rgba(17,30,34,.035)}
.gt-form-mini-status b{color:var(--gt-brand)}
.form-status{display:none;border-radius:1rem;padding:.85rem 1rem;font-size:.85rem;font-weight:900;line-height:1.5}
.form-status:not(:empty){display:block;margin-bottom:1rem}
.form-status-error{border:1px solid rgba(244,63,94,.18);background:rgba(255,241,242,.95);color:#be123c}
.form-status-success{border:1px solid rgba(20,184,166,.18);background:rgba(240,253,250,.95);color:#0f766e}
.field-error{display:block;margin-top:.42rem;color:#be123c;font-size:.75rem;font-weight:850;line-height:1.35}
.gt-field-counter{display:block;margin-top:.38rem;color:#64748b;font-size:.72rem;font-weight:850;text-align:right}
.gt-field-counter.is-low{color:#b7791f}
.form-input.is-invalid{border-color:rgba(244,63,94,.55)!important;background:rgba(255,241,242,.42)!important;box-shadow:0 0 0 4px rgba(244,63,94,.09)!important}
.form-input.is-valid:not(.is-invalid){border-color:rgba(20,184,166,.28);background:linear-gradient(180deg,#fff,rgba(240,253,250,.34))}
.gt-auto-textarea{resize:vertical;overflow:hidden}
.gt-micro-form.is-submit-ready{animation:gtMicroReady .32s ease both}
@keyframes gtMicroReady{0%{transform:translateY(0)}40%{transform:translateY(-1px)}100%{transform:translateY(0)}}
.gt-micro-table-wrap{position:relative;border-radius:1.35rem;outline:none}
.gt-micro-table-wrap:focus-visible{box-shadow:0 0 0 4px rgba(77,182,172,.2)}
.gt-micro-table-card tbody tr.is-filter-hidden{display:none!important}
.gt-micro-table-card td[data-label=""]:before{display:none}
.gt-micro-empty-state{margin-top:1rem}
.gt-micro-empty-state[hidden]{display:none!important}
.gt-micro-empty-state h3{font-family:Georgia,Cambria,'Times New Roman',serif;font-size:1.35rem;font-weight:700;color:var(--gt-brand)}
.gt-micro-empty-state p{margin-top:.35rem;color:#64748b;font-size:.9rem;line-height:1.55}
.is-micro-confirmed{background:#ecfdf5!important;border-color:#bbf7d0!important;color:#047857!important;box-shadow:0 10px 24px rgba(4,120,87,.09)!important}
@media(max-width:767px){
  .gt-form-mini-status{display:grid;grid-template-columns:1fr;gap:.2rem;margin-bottom:.75rem;padding:.72rem .8rem;font-size:.7rem}
  .gt-required-dot{font-size:.55rem;padding:.16rem .38rem}
  .field-error{font-size:.72rem}
  .gt-field-counter{text-align:left}
}
@media(max-width:640px){
  .gt-micro-table-card{display:block;min-width:0!important;border-spacing:0}
  .gt-micro-table-card thead{display:none}
  .gt-micro-table-card tbody{display:grid;gap:.85rem}
  .gt-micro-table-card tr{display:grid!important;gap:.65rem;border:1px solid rgba(231,225,215,.9);border-radius:1.1rem;background:rgba(255,255,255,.92);padding:.9rem;box-shadow:0 8px 22px rgba(17,30,34,.04)}
  .gt-micro-table-card td{display:grid;grid-template-columns:minmax(6.5rem,.42fr) 1fr;align-items:start;gap:.85rem;border-bottom:0!important;background:transparent!important;padding:.1rem!important;font-size:.82rem;line-height:1.45}
  .gt-micro-table-card td:before{content:attr(data-label);color:#64748b;font-size:.68rem;font-weight:950;letter-spacing:.04em;text-transform:uppercase}
  .gt-micro-table-card td:last-child{padding-bottom:0!important}
  .gt-micro-table-wrap{overflow:visible!important}
  .gt-micro-table-wrap>table{min-width:0!important}
}
@media(max-width:390px){
  .gt-micro-table-card td{grid-template-columns:1fr;gap:.18rem}
}

/* Phase 18A.9 — Tablet, Browser, PWA + Responsive QA
   Scope: final static responsive QA layer before multilingual/i18n. No backend logic. */
:root{--gt-visual-vh:100vh;--gt-header-h:4.5rem;--gt-bottom-ui-h:0px;--gt-safe-bottom:env(safe-area-inset-bottom,0px)}
html[data-gt-responsive-qa="v37"]{scroll-padding-top:calc(var(--gt-header-h) + .75rem)}
html.gt-browser-safari body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
html.gt-device-ios input[type="search"],html.gt-device-ios input,html.gt-device-ios textarea,html.gt-device-ios select{-webkit-appearance:none;border-radius:1rem}
html.gt-is-standalone-pwa body{min-height:100dvh;background-color:var(--gt-cream)}
body.gt-horizontal-overflow-risk .site-shell{outline:2px solid rgba(244,63,94,.18);outline-offset:-2px}
body.gt-horizontal-overflow-risk .site-shell:after{content:"Responsive QA: hidden overflow repaired";position:fixed;left:50%;bottom:calc(var(--gt-bottom-ui-h) + .75rem + var(--gt-safe-bottom));z-index:95;transform:translateX(-50%);border:1px solid rgba(244,63,94,.16);border-radius:999px;background:rgba(255,241,242,.95);color:#be123c;padding:.45rem .7rem;font-size:.68rem;font-weight:950;pointer-events:none;opacity:.01}
@supports(height:100dvh){body{min-height:100dvh}.site-shell{min-height:100dvh}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){header.sticky,.mobile-bottom-nav,.gt-mobile-action-dock,.pwa-install-card,.glass-panel,.gt-surface{background:#fff!important}}
@supports not (overflow:clip){.site-shell{overflow-x:hidden}}
:where(a,button,input,select,textarea,summary){touch-action:manipulation}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid rgba(77,182,172,.42);outline-offset:3px}
:where(p,li,span,b,strong,h1,h2,h3,h4,td,th){overflow-wrap:anywhere}
.gt-responsive-scroll-region{position:relative;scrollbar-gutter:stable both-edges;overscroll-behavior-x:contain}
.gt-responsive-scroll-region.gt-has-scroll-overflow:after{content:"";position:sticky;right:0;top:0;bottom:0;display:block;float:right;width:3.5rem;height:100%;min-height:3.5rem;margin-left:-3.5rem;background:linear-gradient(90deg,transparent,rgba(255,255,255,.92));pointer-events:none;z-index:2}
.gt-scroll-hint{display:none;position:sticky;left:calc(100% - 6.3rem);bottom:.45rem;z-index:3;width:max-content;border:1px solid rgba(231,225,215,.95);border-radius:999px;background:rgba(255,255,255,.94);padding:.32rem .55rem;color:#64748b;font-size:.64rem;font-weight:950;letter-spacing:.035em;text-transform:uppercase;box-shadow:0 8px 20px rgba(17,30,34,.06);pointer-events:none}
.gt-has-scroll-overflow>.gt-scroll-hint{display:inline-flex}
@media(min-width:768px) and (max-width:1179px){
  html{font-size:15.8px}
  body{overflow-x:hidden}
  .site-shell{overflow-x:clip}
  header.sticky>div:first-child{gap:1rem;padding-inline:1.15rem!important}
  .page-pad,main.px-4,.gt-public-main.px-4,.gt-dashboard-shell{padding-left:1.25rem!important;padding-right:1.25rem!important}
  .gt-public-hero,.gt-admin-hero,.gt-guide-shell>div>section.min-w-0>.flex:first-child,.gt-traveler-page-hero{border-radius:1.55rem!important}
  .app-shell-title,.gt-public-hero h1,.gt-admin-hero .app-shell-title{font-size:clamp(2.6rem,6.2vw,4rem)!important;line-height:1!important}
  .gt-card-grid,.gt-card-grid-lg,.gt-listing-grid,.gt-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .gt-hero-stat-strip{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .gt-dashboard-shell>div{grid-template-columns:1fr!important}
  .gt-dashboard-shell aside{display:none!important}
  .gt-dashboard-shell .dashboard-mobile-switcher{display:block!important;position:sticky;top:calc(var(--gt-header-h) + .35rem);z-index:42;margin-bottom:1rem}
  .gt-dashboard-shell .dashboard-mobile-switcher .section-card{background:rgba(255,255,255,.94);backdrop-filter:blur(14px)}
  .gt-traveler-status-strip,.gt-admin-stats,.gt-guide-shell>div>section.min-w-0>.mt-6.grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .gt-admin-toolbar{display:grid!important;grid-template-columns:1fr!important}
  .gt-admin-toolbar>div:last-of-type{width:100%;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .gt-admin-toolbar input,.gt-admin-toolbar select{min-width:0!important}
  .table-card{font-size:.86rem}
  .mobile-scroll-x{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:1.2rem}
}
@media(min-width:1024px) and (max-width:1179px){
  .gt-dashboard-shell>div{grid-template-columns:1fr!important}
  .gt-dashboard-shell aside{display:none!important}
  .gt-dashboard-shell .dashboard-mobile-switcher{display:block!important}
}
@media(max-width:767px){
  body{padding-bottom:calc(max(5.75rem,var(--gt-bottom-ui-h)) + var(--gt-safe-bottom))}
  .site-shell{overflow-x:hidden;padding-bottom:calc(max(4.5rem,var(--gt-bottom-ui-h)) + var(--gt-safe-bottom))}
  main{scroll-margin-top:calc(var(--gt-header-h) + .75rem)}
  .mobile-bottom-nav,.gt-mobile-action-dock,.pwa-install-card{max-width:min(100% - 1rem,34rem);margin-inline:auto}
  .mobile-bottom-nav{bottom:calc(.55rem + var(--gt-safe-bottom))}
  .gt-mobile-action-dock{bottom:calc(5.45rem + var(--gt-safe-bottom))}
  .pwa-install-card{bottom:calc(5.85rem + var(--gt-safe-bottom))}
  body:has(.gt-mobile-action-dock) .pwa-install-card{bottom:calc(9.9rem + var(--gt-safe-bottom))}
  html.is-keyboard-open .mobile-bottom-nav,html.is-keyboard-open .gt-mobile-action-dock,html.is-keyboard-open .pwa-install-card{transform:translateY(120%);opacity:0;pointer-events:none}
  .gt-scroll-hint{font-size:.58rem;left:calc(100% - 5.75rem)}
}
@media(max-width:389px){
  .mobile-bottom-nav{grid-template-columns:repeat(5,minmax(2.85rem,1fr));gap:.2rem;padding:.34rem}
  .mobile-bottom-nav a{padding:.38rem .05rem}.mobile-bottom-nav a b{font-size:.58rem}.mobile-bottom-nav a span{font-size:.9rem}
  .gt-mobile-action-dock{grid-template-columns:1fr;gap:.32rem}.gt-mobile-action-dock a{min-height:2.55rem}
  .app-shell-title,.gt-public-hero h1{font-size:clamp(1.82rem,10.5vw,2.15rem)!important}
}
@media(orientation:landscape) and (max-height:520px){
  header.sticky{position:relative!important}
  .mobile-bottom-nav,.gt-mobile-action-dock,.pwa-install-card{position:fixed;transform:translateY(120%);opacity:0;pointer-events:none}
  body,.site-shell{padding-bottom:1rem!important}
  .gt-public-hero,.gt-admin-hero,.gt-traveler-page-hero{padding-top:1rem!important;padding-bottom:1rem!important}
}
@media(print){
  header,.mobile-bottom-nav,.gt-mobile-action-dock,.pwa-install-card,.offline-toast,.dashboard-mobile-switcher{display:none!important}
  body,.site-shell,main{background:#fff!important;color:#111!important;padding:0!important;box-shadow:none!important}
  .section-card,.metric-card,.panel-soft,.glass-panel{box-shadow:none!important;border-color:#ddd!important;break-inside:avoid}
}
@media(prefers-reduced-motion:reduce){.gt-scroll-hint{transition:none!important}}
