﻿/* GhoomiGhoomi Mobile & Tablet UI System v2 */
:root{--gg-blue:#1A6BFF;--gg-blue-dark:#0D4FCC;--gg-blue-light:#EEF4FF;--gg-navy:#0F172A;--gg-text:#1E293B;--gg-muted:#64748B;--gg-border:#E2E8F0;--gg-bg:#F8FAFC;--gg-white:#FFFFFF;--gg-success:#10B981;--gg-warning:#F59E0B;--gg-danger:#EF4444;--gg-bottom-nav-h:64px;--gg-shadow-card:0 4px 20px rgba(15,23,42,.08);--gg-shadow-lg:0 8px 32px rgba(15,23,42,.12);--gg-radius-sm:12px;--gg-radius-md:18px;--gg-radius-lg:24px;}
@media(max-width:991px){body{background:var(--gg-bg);padding-bottom:var(--gg-bottom-nav-h);-webkit-tap-highlight-color:transparent;}
.wv-footer,.wv-navbar,.cookie-bar{display:none!important;}.mobile-app-bottom-nav{display:flex!important;}main{min-height:100vh;}
.container{padding-left:0!important;padding-right:0!important;}
.wv-section,.wv-section-box,.wv-intl-banner,.wv-promo-card,.hp-showcase-banner,.page-head,.evora-hero-stage,footer.wv-footer{display:none!important;}
.mobile-app-home-wrapper,.gg-mobile-only{display:block!important;}
.traveler-hub-banner,.hub-nav-tabs-wrap{display:none!important;}}
/* Bottom Nav */
@media(max-width:991px){.mobile-app-bottom-nav{position:fixed!important;bottom:0;left:0;right:0;height:var(--gg-bottom-nav-h);background:var(--gg-white);border-top:1px solid var(--gg-border);display:flex!important;align-items:center;justify-content:space-around;z-index:1050;box-shadow:0 -4px 16px rgba(15,23,42,.08);padding:0 .25rem;padding-bottom:env(safe-area-inset-bottom);}
.mobile-tab-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;flex:1;text-decoration:none!important;color:var(--gg-muted);padding:.4rem .25rem;border-radius:var(--gg-radius-sm);cursor:pointer;background:transparent;border:none;position:relative;transition:all .2s ease;}
.mobile-tab-item.active{color:var(--gg-blue)!important;}.mobile-tab-icon{font-size:1.35rem;line-height:1;}.mobile-tab-item.active .mobile-tab-icon{transform:translateY(-1px);}
.mobile-tab-label{font-size:.65rem;font-weight:600;line-height:1;}
.mobile-tab-item.active::before{content:'';position:absolute;top:2px;left:50%;transform:translateX(-50%);width:5px;height:5px;background:var(--gg-blue);border-radius:50%;}
.mobile-tab-badge{position:absolute;top:2px;right:12px;background:#EF4444;color:white;font-size:.6rem;font-weight:700;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1.5px solid white;}}
/* Home Page */
@media(max-width:991px){.mobile-app-home-wrapper{display:block;background:var(--gg-bg);min-height:100vh;padding-bottom:calc(var(--gg-bottom-nav-h) + 1rem);}
.gg-home-topbar{background:var(--gg-white);padding:1rem 1.1rem .75rem;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100;box-shadow:0 2px 8px rgba(15,23,42,.04);}
.gg-home-greeting-wrap .gg-hello-label{font-size:.78rem;color:var(--gg-muted);font-weight:500;display:block;}
.gg-home-greeting-wrap .gg-user-name{font-size:1.08rem;font-weight:800;color:var(--gg-navy);display:flex;align-items:center;gap:.35rem;}
.gg-home-topbar-right{display:flex;align-items:center;gap:.6rem;}
.gg-topbar-notification-btn{width:36px;height:36px;border-radius:50%;background:var(--gg-bg);border:1px solid var(--gg-border);display:flex;align-items:center;justify-content:center;position:relative;color:var(--gg-navy);font-size:1.1rem;cursor:pointer;text-decoration:none;flex-shrink:0;}
.gg-topbar-notification-btn .dot{position:absolute;top:6px;right:6px;width:8px;height:8px;background:#EF4444;border-radius:50%;border:1.5px solid white;}
.gg-topbar-avatar{width:38px;height:38px;border-radius:50%;object-fit:cover;border:2.5px solid var(--gg-blue);cursor:pointer;flex-shrink:0;}
.gg-topbar-avatar-fallback{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#1A6BFF,#0D4FCC);color:white;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem;border:2.5px solid var(--gg-blue);flex-shrink:0;cursor:pointer;}
.gg-home-search-wrap{padding:.75rem 1.1rem;background:var(--gg-white);display:flex;align-items:center;gap:.6rem;}
.gg-home-search-bar{flex:1;display:flex;align-items:center;background:var(--gg-bg);border:1.5px solid var(--gg-border);border-radius:12px;padding:.6rem .95rem;gap:.55rem;text-decoration:none;color:var(--gg-muted);transition:all .2s ease;}
.gg-home-search-bar:hover,.gg-home-search-bar:focus{border-color:var(--gg-blue);background:#EEF4FF;color:var(--gg-blue);}
.gg-home-search-bar i{font-size:1rem;color:var(--gg-muted);flex-shrink:0;}
.gg-home-search-bar .search-placeholder{font-size:.88rem;font-weight:500;flex:1;}
.gg-home-filter-btn{width:42px;height:42px;border-radius:12px;background:var(--gg-blue);color:white;display:flex;align-items:center;justify-content:center;font-size:1.1rem;cursor:pointer;border:none;flex-shrink:0;text-decoration:none;transition:all .2s ease;box-shadow:0 4px 12px rgba(26,107,255,.3);}
.gg-home-filter-btn:hover{background:var(--gg-blue-dark);color:white;transform:scale(1.05);}
.gg-section-divider{height:8px;background:var(--gg-bg);border:none;margin:0;}}
/* Categories & Popular Destinations */
@media(max-width:991px){.gg-category-section{padding:.85rem .6rem;background:var(--gg-white);}
.gg-category-scroll{display:flex;align-items:flex-start;gap:.6rem;overflow-x:auto;padding:.2rem .5rem .4rem;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;-ms-overflow-style:none;scrollbar-width:none;}
.gg-category-scroll::-webkit-scrollbar{display:none;}
.gg-category-item{display:flex;flex-direction:column;align-items:center;gap:.4rem;flex-shrink:0;scroll-snap-align:start;cursor:pointer;text-decoration:none;min-width:68px;}
.gg-category-circle{width:64px;height:64px;border-radius:50%;overflow:hidden;border:2.5px solid transparent;transition:all .25s ease;box-shadow:var(--gg-shadow-card);position:relative;flex-shrink:0;}
.gg-category-circle img{width:100%;height:100%;object-fit:cover;}
.gg-category-circle::after{content:'';position:absolute;inset:0;border-radius:50%;background:linear-gradient(180deg,transparent 50%,rgba(15,23,42,.4) 100%);}
.gg-category-item.active .gg-category-circle,.gg-category-item:hover .gg-category-circle{border-color:var(--gg-blue);transform:scale(1.06);}
.gg-category-label{font-size:.72rem;font-weight:600;color:var(--gg-text);text-align:center;white-space:nowrap;line-height:1.2;}
.gg-category-item.active .gg-category-label{color:var(--gg-blue);}
.gg-category-more-circle{width:64px;height:64px;border-radius:50%;background:var(--gg-bg);border:2px solid var(--gg-border);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:2px;}
.gg-category-more-circle i{font-size:1.1rem;color:var(--gg-muted);}
.gg-home-section{padding:1rem 1.1rem .5rem;background:var(--gg-white);margin-top:.5rem;}
.gg-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.9rem;}
.gg-section-title{font-family:'Outfit',sans-serif;font-size:1.08rem;font-weight:800;color:var(--gg-navy);margin:0;}
.gg-section-see-all{font-size:.82rem;font-weight:700;color:var(--gg-blue);text-decoration:none;padding:.25rem .6rem;border-radius:8px;}
.gg-section-see-all:hover{background:var(--gg-blue-light);}
.gg-popular-dest-scroll{display:flex;gap:.8rem;overflow-x:auto;padding:.2rem 0 .8rem;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;-ms-overflow-style:none;scrollbar-width:none;}
.gg-popular-dest-scroll::-webkit-scrollbar{display:none;}
.gg-pop-dest-item{display:flex;flex-direction:column;align-items:center;gap:.45rem;flex-shrink:0;cursor:pointer;text-decoration:none;scroll-snap-align:start;min-width:72px;}
.gg-pop-dest-circle{width:70px;height:70px;border-radius:50%;overflow:hidden;box-shadow:var(--gg-shadow-card);transition:transform .25s ease;border:2.5px solid var(--gg-white);}
.gg-pop-dest-circle img{width:100%;height:100%;object-fit:cover;}
.gg-pop-dest-item:hover .gg-pop-dest-circle{transform:scale(1.06);box-shadow:var(--gg-shadow-lg);}
.gg-pop-dest-name{font-size:.72rem;font-weight:700;color:var(--gg-navy);text-align:center;white-space:nowrap;}
.gg-pop-dest-country{font-size:.64rem;font-weight:500;color:var(--gg-muted);text-align:center;white-space:nowrap;margin-top:-2px;}}
/* Special Offer Banner */
@media(max-width:991px){.gg-special-offer-banner{margin:.5rem 1.1rem;border-radius:var(--gg-radius-md);background:linear-gradient(135deg,#1A6BFF,#0D4FCC);padding:1rem 1.1rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem;overflow:hidden;position:relative;text-decoration:none;box-shadow:0 8px 24px rgba(26,107,255,.3);}
.gg-special-offer-banner::before{content:'';position:absolute;top:-40px;right:-40px;width:130px;height:130px;background:rgba(255,255,255,.08);border-radius:50%;}
.gg-offer-badge{background:var(--gg-warning);color:var(--gg-navy);font-size:.65rem;font-weight:800;padding:.2rem .6rem;border-radius:20px;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.3rem;display:inline-block;}
.gg-offer-title{font-size:1rem;font-weight:800;color:white;line-height:1.25;margin:0;}
.gg-offer-subtitle{font-size:.75rem;color:rgba(255,255,255,.85);margin:.2rem 0 0;}
.gg-offer-thumb{width:80px;height:80px;border-radius:12px;object-fit:cover;flex-shrink:0;box-shadow:0 4px 12px rgba(0,0,0,.25);}
.gg-offer-arrow{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.2);border:1.5px solid rgba(255,255,255,.4);display:flex;align-items:center;justify-content:center;color:white;font-size:1.1rem;flex-shrink:0;}}
/* Search/Packages Page */
@media(max-width:991px){.gg-search-page-header{background:var(--gg-white);padding:.85rem 1.1rem;display:flex;align-items:center;gap:.75rem;position:sticky;top:0;z-index:100;border-bottom:1px solid var(--gg-border);}
.gg-search-back-btn{width:36px;height:36px;border-radius:10px;background:var(--gg-bg);border:1.5px solid var(--gg-border);display:flex;align-items:center;justify-content:center;color:var(--gg-navy);font-size:1.05rem;text-decoration:none;flex-shrink:0;transition:all .2s ease;}
.gg-search-back-btn:hover{background:var(--gg-blue-light);border-color:var(--gg-blue);color:var(--gg-blue);}
.gg-search-input-wrap{flex:1;position:relative;}
.gg-search-input-wrap .gg-search-icon{position:absolute;left:.85rem;top:50%;transform:translateY(-50%);color:var(--gg-muted);font-size:.95rem;pointer-events:none;}
.gg-search-input-wrap input{width:100%;background:var(--gg-bg);border:1.5px solid var(--gg-border);border-radius:12px;padding:.6rem .85rem .6rem 2.4rem;font-size:.9rem;font-weight:500;color:var(--gg-navy);outline:none;transition:border-color .2s ease;}
.gg-search-input-wrap input:focus{border-color:var(--gg-blue);background:var(--gg-blue-light);}
.gg-search-filter-btn{width:38px;height:38px;border-radius:10px;background:var(--gg-bg);border:1.5px solid var(--gg-border);display:flex;align-items:center;justify-content:center;color:var(--gg-navy);font-size:1.05rem;cursor:pointer;flex-shrink:0;}
.gg-filter-chips-scroll{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.1rem;overflow-x:auto;background:var(--gg-white);-webkit-overflow-scrolling:touch;-ms-overflow-style:none;scrollbar-width:none;}
.gg-filter-chips-scroll::-webkit-scrollbar{display:none;}
.gg-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.42rem 1rem;border-radius:999px;font-size:.82rem;font-weight:600;border:1.5px solid var(--gg-border);background:var(--gg-white);color:var(--gg-text);white-space:nowrap;cursor:pointer;transition:all .2s ease;text-decoration:none;flex-shrink:0;}
.gg-chip.active{background:var(--gg-blue);border-color:var(--gg-blue);color:white;}
.gg-chip:hover{border-color:var(--gg-blue);color:var(--gg-blue);}
.gg-search-section-header{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.1rem .5rem;}
.gg-search-section-title{font-size:1rem;font-weight:800;color:var(--gg-navy);}
.gg-pkg-search-list{padding:0 1.1rem;}
.gg-pkg-card-mobile{background:var(--gg-white);border-radius:var(--gg-radius-md);overflow:hidden;box-shadow:var(--gg-shadow-card);margin-bottom:.85rem;transition:transform .2s ease,box-shadow .2s ease;cursor:pointer;text-decoration:none;display:block;color:var(--gg-text);}
.gg-pkg-card-mobile:hover{transform:translateY(-2px);box-shadow:var(--gg-shadow-lg);color:var(--gg-text);}
.gg-pkg-card-media{position:relative;height:200px;overflow:hidden;}
.gg-pkg-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease;}
.gg-pkg-card-mobile:hover .gg-pkg-card-media img{transform:scale(1.04);}
.gg-pkg-media-badge{position:absolute;top:10px;left:10px;background:var(--gg-warning);color:var(--gg-navy);font-size:.7rem;font-weight:800;padding:.25rem .65rem;border-radius:999px;z-index:2;}
.gg-pkg-media-badge.best-seller{background:#FF5722;color:white;}
.gg-pkg-media-wishlist{position:absolute;top:10px;right:10px;z-index:5;}
.gg-pkg-card-body{padding:1rem 1.1rem 1.1rem;}
.gg-pkg-card-title{font-family:'Outfit',sans-serif;font-size:1.05rem;font-weight:800;color:var(--gg-navy);margin-bottom:.3rem;line-height:1.3;}
.gg-pkg-card-meta{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:var(--gg-muted);margin-bottom:.6rem;flex-wrap:wrap;}
.gg-pkg-card-meta i{color:var(--gg-blue);font-size:.85rem;}
.gg-pkg-card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--gg-border);}
.gg-pkg-price{font-family:'Outfit',sans-serif;font-size:1.2rem;font-weight:800;color:var(--gg-navy);line-height:1;}
.gg-pkg-price-unit{font-size:.72rem;color:var(--gg-muted);display:block;font-weight:500;}
.gg-pkg-arrow-btn{width:38px;height:38px;border-radius:50%;background:var(--gg-blue);color:white!important;display:flex;align-items:center;justify-content:center;font-size:1.05rem;text-decoration:none;transition:all .2s ease;box-shadow:0 4px 12px rgba(26,107,255,.3);flex-shrink:0;}
.gg-pkg-arrow-btn:hover{background:var(--gg-blue-dark);transform:scale(1.08);color:white!important;}}
/* Discover/Place Page */
@media(max-width:991px){.gg-discover-header{position:relative;height:240px;overflow:hidden;}
.gg-discover-header-img{width:100%;height:100%;object-fit:cover;}
.gg-discover-header-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,23,42,.3),rgba(15,23,42,.1) 40%,rgba(15,23,42,.65));}
.gg-discover-header-actions{position:absolute;top:0;left:0;right:0;padding:1rem;display:flex;align-items:center;justify-content:space-between;z-index:5;}
.gg-discover-loc-badge{position:absolute;bottom:16px;left:1rem;z-index:5;display:flex;align-items:center;gap:.3rem;font-size:.78rem;font-weight:600;color:rgba(255,255,255,.9);}
.gg-discover-loc-badge i{color:#FF6B6B;font-size:.85rem;}
.gg-discover-sheet{background:var(--gg-white);border-radius:24px 24px 0 0;margin-top:-20px;position:relative;z-index:10;padding:1.25rem 1.1rem;min-height:calc(100vh - 220px);}
.gg-discover-place-name{font-family:'Outfit',sans-serif;font-size:1.65rem;font-weight:800;color:var(--gg-navy);line-height:1.2;margin-bottom:.35rem;}
.gg-discover-tagline{font-size:.88rem;color:var(--gg-muted);line-height:1.5;margin-bottom:1rem;}
.gg-discover-tabs{display:flex;gap:0;border-bottom:2px solid var(--gg-border);margin-bottom:1rem;overflow-x:auto;-ms-overflow-style:none;scrollbar-width:none;}
.gg-discover-tabs::-webkit-scrollbar{display:none;}
.gg-discover-tab{padding:.6rem 1.1rem;font-size:.88rem;font-weight:700;color:var(--gg-muted);background:transparent;border:none;border-bottom:2.5px solid transparent;margin-bottom:-2px;cursor:pointer;white-space:nowrap;transition:all .2s ease;}
.gg-discover-tab.active{color:var(--gg-blue);border-bottom-color:var(--gg-blue);}
.detail-cover-btn{width:38px;height:38px;border-radius:50%;background:rgba(0,0,0,.35);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1.5px solid rgba(255,255,255,.35);color:white!important;display:flex;align-items:center;justify-content:center;font-size:1.1rem;text-decoration:none;cursor:pointer;transition:all .2s ease;}
.detail-cover-btn:hover{background:rgba(255,255,255,.25);color:white!important;transform:scale(1.06);}}
/* Package Detail Page */
@media(max-width:991px){.gg-detail-hero{height:280px;position:relative;overflow:hidden;}
.gg-detail-hero-img{width:100%;height:100%;object-fit:cover;}
.gg-detail-hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,23,42,.5),rgba(15,23,42,.1) 50%,transparent);}
.gg-detail-hero-actions{position:absolute;top:0;left:0;right:0;padding:1rem 1.1rem;display:flex;align-items:center;justify-content:space-between;z-index:5;}
.gg-detail-hero-btn{width:38px;height:38px;border-radius:50%;background:rgba(0,0,0,.35);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1.5px solid rgba(255,255,255,.35);color:white!important;display:flex;align-items:center;justify-content:center;font-size:1.1rem;text-decoration:none;cursor:pointer;transition:all .2s ease;}
.gg-detail-hero-btn:hover{background:rgba(255,255,255,.25);color:white!important;transform:scale(1.06);}
.gg-detail-hero-actions-right{display:flex;align-items:center;gap:.5rem;}
.gg-detail-sheet{background:var(--gg-white);border-radius:24px 24px 0 0;margin-top:-20px;position:relative;z-index:10;padding:1.4rem 1.1rem;}
.gg-detail-title{font-family:'Outfit',sans-serif;font-size:1.55rem;font-weight:800;color:var(--gg-navy);margin-bottom:.5rem;line-height:1.2;}
.gg-detail-rating-row{display:flex;align-items:center;gap:.85rem;margin-bottom:.85rem;flex-wrap:wrap;}
.gg-detail-rating{display:flex;align-items:center;gap:.3rem;font-size:.88rem;font-weight:700;color:var(--gg-navy);}
.gg-detail-rating .star{color:var(--gg-warning);font-size:1rem;}
.gg-detail-rating .reviews{color:var(--gg-muted);font-weight:500;font-size:.82rem;}
.gg-detail-meta-pill{display:flex;align-items:center;gap:.3rem;font-size:.8rem;font-weight:600;color:var(--gg-muted);}
.gg-detail-meta-pill i{color:var(--gg-blue);font-size:.88rem;}
.gg-detail-price-card{background:var(--gg-bg);border:1.5px solid var(--gg-border);border-radius:var(--gg-radius-md);padding:1rem 1.1rem;display:flex;align-items:center;justify-content:space-between;margin-bottom:1.1rem;gap:.75rem;}
.gg-price-label{font-size:.75rem;font-weight:600;color:var(--gg-muted);text-transform:uppercase;letter-spacing:.3px;margin-bottom:.15rem;display:block;}
.gg-price-amount{font-family:'Outfit',sans-serif;font-size:1.5rem;font-weight:800;color:var(--gg-navy);line-height:1;}
.gg-price-unit{font-size:.8rem;font-weight:500;color:var(--gg-muted);margin-left:.25rem;}
.gg-book-now-btn{background:var(--gg-navy);color:white!important;font-family:'Outfit',sans-serif;font-weight:700;font-size:.95rem;border-radius:999px;padding:.75rem 1.35rem;display:flex;align-items:center;gap:.4rem;text-decoration:none;transition:all .25s ease;white-space:nowrap;flex-shrink:0;box-shadow:0 6px 18px rgba(15,23,42,.25);border:none;cursor:pointer;}
.gg-book-now-btn:hover{background:var(--gg-blue);color:white!important;transform:translateY(-1px);}
.gg-detail-nav-tabs{display:flex;gap:0;border-bottom:2px solid var(--gg-border);margin-bottom:1rem;overflow-x:auto;-ms-overflow-style:none;scrollbar-width:none;}
.gg-detail-nav-tabs::-webkit-scrollbar{display:none;}
.gg-detail-nav-tab{padding:.65rem 1.1rem;font-size:.88rem;font-weight:700;color:var(--gg-muted);background:transparent;border:none;border-bottom:2.5px solid transparent;margin-bottom:-2px;cursor:pointer;white-space:nowrap;transition:all .2s ease;text-decoration:none;}
.gg-detail-nav-tab.active{color:var(--gg-blue);border-bottom-color:var(--gg-blue);}
.gg-detail-section-title{font-family:'Outfit',sans-serif;font-size:1.1rem;font-weight:800;color:var(--gg-navy);margin-bottom:.65rem;}
.gg-detail-body-text{font-size:.9rem;color:var(--gg-muted);line-height:1.7;}
.gg-highlights-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.55rem;}
.gg-highlights-list li{display:flex;align-items:center;gap:.6rem;font-size:.88rem;font-weight:500;color:var(--gg-text);}
.gg-highlights-list li .gg-hi-icon{width:22px;height:22px;border-radius:50%;background:rgba(16,185,129,.12);color:var(--gg-success);display:flex;align-items:center;justify-content:center;font-size:.75rem;flex-shrink:0;}
.gg-detail-cta-bar{position:fixed;bottom:0;left:0;right:0;background:var(--gg-white);border-top:1px solid var(--gg-border);padding:.85rem 1.1rem;padding-bottom:calc(.85rem + env(safe-area-inset-bottom));z-index:1045;box-shadow:0 -6px 20px rgba(15,23,42,.08);display:flex;align-items:center;justify-content:space-between;gap:.75rem;}
.gg-cta-price-wrap .gg-cta-label{font-size:.72rem;color:var(--gg-muted);font-weight:500;display:block;}
.gg-cta-price-wrap .gg-cta-amount{font-family:'Outfit',sans-serif;font-size:1.25rem;font-weight:800;color:var(--gg-navy);line-height:1;}
.gg-cta-price-wrap .gg-cta-unit{font-size:.72rem;color:var(--gg-muted);font-weight:500;}
.gg-cta-book-btn{flex:1;background:var(--gg-navy);color:white!important;font-family:'Outfit',sans-serif;font-weight:700;font-size:1rem;border-radius:999px;padding:.88rem 1.25rem;text-align:center;text-decoration:none;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .25s ease;box-shadow:0 6px 18px rgba(15,23,42,.2);border:none;cursor:pointer;}
.gg-cta-book-btn:hover{background:var(--gg-blue);color:white!important;transform:translateY(-1px);}
.mobile-detail-stage{background:var(--gg-white);min-height:100vh;padding-bottom:90px;}}
/* Bookings Page */
@media(max-width:991px){.gg-bookings-page{background:var(--gg-bg);min-height:100vh;padding-bottom:calc(var(--gg-bottom-nav-h) + 1rem);}
.gg-page-header{background:var(--gg-white);padding:1rem 1.1rem .75rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--gg-border);}
.gg-page-back-btn{width:36px;height:36px;border-radius:10px;background:var(--gg-bg);border:1.5px solid var(--gg-border);display:flex;align-items:center;justify-content:center;color:var(--gg-navy);font-size:1.05rem;text-decoration:none;flex-shrink:0;}
.gg-page-title{font-family:'Outfit',sans-serif;font-size:1.08rem;font-weight:800;color:var(--gg-navy);margin:0;flex:1;text-align:center;}
.gg-bookings-tabs{display:flex;align-items:center;gap:.5rem;padding:.85rem 1.1rem;background:var(--gg-white);border-bottom:1px solid var(--gg-border);overflow-x:auto;-ms-overflow-style:none;scrollbar-width:none;}
.gg-bookings-tabs::-webkit-scrollbar{display:none;}
.gg-tab-pill{padding:.45rem 1.1rem;border-radius:999px;font-size:.82rem;font-weight:700;border:1.5px solid var(--gg-border);background:var(--gg-white);color:var(--gg-muted);cursor:pointer;white-space:nowrap;transition:all .2s ease;flex-shrink:0;}
.gg-tab-pill.active{background:var(--gg-blue);border-color:var(--gg-blue);color:white;}
.gg-bookings-list{padding:.85rem 1.1rem;}
.gg-booking-card{background:var(--gg-white);border-radius:var(--gg-radius-md);padding:1rem;margin-bottom:.75rem;box-shadow:var(--gg-shadow-card);display:flex;gap:.9rem;text-decoration:none;color:var(--gg-text);transition:all .2s ease;align-items:flex-start;}
.gg-booking-card:hover{box-shadow:var(--gg-shadow-lg);color:var(--gg-text);transform:translateY(-1px);}
.gg-booking-thumb{width:80px;height:80px;border-radius:12px;object-fit:cover;flex-shrink:0;}
.gg-booking-thumb-placeholder{width:80px;height:80px;border-radius:12px;background:var(--gg-blue-light);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--gg-blue);font-size:1.8rem;}
.gg-booking-info{flex:1;min-width:0;}
.gg-booking-name{font-weight:800;font-size:.95rem;color:var(--gg-navy);margin-bottom:.2rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.gg-booking-dates{font-size:.78rem;color:var(--gg-muted);display:flex;align-items:center;gap:.3rem;margin-bottom:.4rem;}
.gg-booking-status{display:inline-flex;align-items:center;gap:.25rem;font-size:.72rem;font-weight:700;padding:.18rem .6rem;border-radius:999px;}
.gg-booking-status.confirmed{background:rgba(16,185,129,.12);color:var(--gg-success);}
.gg-booking-status.pending{background:rgba(245,158,11,.12);color:var(--gg-warning);}
.gg-booking-status.cancelled{background:rgba(239,68,68,.1);color:var(--gg-danger);}
.gg-booking-amount{font-family:'Outfit',sans-serif;font-size:.95rem;font-weight:800;color:var(--gg-navy);white-space:nowrap;text-align:right;flex-shrink:0;}}
/* Wishlist Page */
@media(max-width:991px){.gg-wishlist-list{padding:.85rem 1.1rem;}
.gg-wishlist-card{background:var(--gg-white);border-radius:var(--gg-radius-md);margin-bottom:.75rem;box-shadow:var(--gg-shadow-card);display:flex;gap:.85rem;padding:.9rem;text-decoration:none;color:var(--gg-text);align-items:center;transition:all .2s ease;}
.gg-wishlist-card:hover{transform:translateY(-1px);box-shadow:var(--gg-shadow-lg);color:var(--gg-text);}
.gg-wishlist-thumb{width:74px;height:74px;border-radius:12px;object-fit:cover;flex-shrink:0;}
.gg-wishlist-info{flex:1;min-width:0;}
.gg-wishlist-name{font-weight:800;font-size:.95rem;color:var(--gg-navy);margin-bottom:.15rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.gg-wishlist-meta{font-size:.78rem;color:var(--gg-muted);display:flex;align-items:center;gap:.3rem;margin-bottom:.35rem;}
.gg-wishlist-price{font-family:'Outfit',sans-serif;font-size:1rem;font-weight:800;color:var(--gg-navy);}
.gg-wishlist-heart-btn{width:34px;height:34px;border-radius:50%;border:none;background:rgba(239,68,68,.1);color:var(--gg-danger);display:flex;align-items:center;justify-content:center;font-size:1rem;cursor:pointer;flex-shrink:0;transition:all .2s ease;}
.gg-wishlist-heart-btn:hover{background:rgba(239,68,68,.2);transform:scale(1.1);}}
/* Profile Page */
@media(max-width:991px){.gg-profile-page{background:var(--gg-bg);min-height:100vh;padding-bottom:calc(var(--gg-bottom-nav-h) + 1rem);}
.gg-profile-header-bg{background:linear-gradient(135deg,#0F172A,#1E3A5F);padding:1.5rem 1.1rem 3.5rem;position:relative;overflow:hidden;text-align:center;}
.gg-profile-header-bg::before{content:'';position:absolute;top:-60px;right:-60px;width:180px;height:180px;background:rgba(255,255,255,.04);border-radius:50%;}
.gg-profile-avatar-wrap{width:80px;height:80px;border-radius:50%;border:3px solid rgba(255,255,255,.8);overflow:hidden;margin:0 auto .75rem;box-shadow:0 6px 20px rgba(0,0,0,.3);position:relative;z-index:2;}
.gg-profile-avatar-wrap img{width:100%;height:100%;object-fit:cover;}
.gg-profile-name{font-family:'Outfit',sans-serif;font-size:1.15rem;font-weight:800;color:white;margin-bottom:.15rem;position:relative;z-index:2;}
.gg-profile-email{font-size:.78rem;color:rgba(255,255,255,.7);position:relative;z-index:2;}
.gg-profile-stats-card{background:var(--gg-white);border-radius:var(--gg-radius-lg);margin:-1.75rem 1.1rem 0;position:relative;z-index:10;padding:1rem;box-shadow:var(--gg-shadow-lg);display:flex;align-items:center;justify-content:space-around;gap:.5rem;}
.gg-stat-item{display:flex;flex-direction:column;align-items:center;gap:.2rem;flex:1;}
.gg-stat-divider{width:1px;height:36px;background:var(--gg-border);flex-shrink:0;}
.gg-stat-value{font-family:'Outfit',sans-serif;font-size:1.3rem;font-weight:800;color:var(--gg-navy);line-height:1;}
.gg-stat-label{font-size:.7rem;font-weight:600;color:var(--gg-muted);text-align:center;}
.gg-profile-menu{margin:1rem 1.1rem 0;background:var(--gg-white);border-radius:var(--gg-radius-lg);overflow:hidden;box-shadow:var(--gg-shadow-card);}
.gg-profile-menu-item{display:flex;align-items:center;justify-content:space-between;padding:.95rem 1.1rem;border-bottom:1px solid var(--gg-border);text-decoration:none;color:var(--gg-text);transition:background .15s ease;cursor:pointer;}
.gg-profile-menu-item:last-child{border-bottom:none;}
.gg-profile-menu-item:hover,.gg-profile-menu-item:active{background:var(--gg-bg);}
.gg-profile-menu-left{display:flex;align-items:center;gap:.85rem;}
.gg-profile-menu-icon{width:38px;height:38px;border-radius:10px;background:var(--gg-blue-light);color:var(--gg-blue);display:flex;align-items:center;justify-content:center;font-size:1.05rem;flex-shrink:0;}
.gg-profile-menu-icon.danger{background:rgba(239,68,68,.1);color:var(--gg-danger);}
.gg-profile-menu-icon.success{background:rgba(16,185,129,.1);color:var(--gg-success);}
.gg-profile-menu-icon.warning{background:rgba(245,158,11,.1);color:var(--gg-warning);}
.gg-profile-menu-text{font-weight:600;font-size:.9rem;color:var(--gg-navy);}
.gg-profile-menu-sub{font-size:.72rem;color:var(--gg-muted);font-weight:400;display:block;margin-top:1px;}
.gg-profile-menu-right{display:flex;align-items:center;gap:.4rem;color:var(--gg-muted);font-size:.88rem;}
.gg-profile-menu-badge{background:var(--gg-danger);color:white;font-size:.65rem;font-weight:700;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;}
.gg-profile-logout{margin:.75rem 1.1rem 0;background:var(--gg-white);border-radius:var(--gg-radius-lg);overflow:hidden;box-shadow:var(--gg-shadow-card);}}
/* Filters Offcanvas & Weekend Grid */
@media(max-width:991px){.gg-filters-offcanvas{border-radius:24px 24px 0 0!important;max-height:90vh;overflow-y:auto;}
.gg-filters-header{display:flex;align-items:center;justify-content:space-between;padding:1.1rem 1.1rem .75rem;border-bottom:1px solid var(--gg-border);position:sticky;top:0;background:var(--gg-white);z-index:5;}
.gg-filters-title{font-family:'Outfit',sans-serif;font-size:1.05rem;font-weight:800;color:var(--gg-navy);margin:0;}
.gg-filters-close-btn{width:32px;height:32px;border-radius:50%;background:var(--gg-bg);border:1.5px solid var(--gg-border);display:flex;align-items:center;justify-content:center;font-size:1rem;color:var(--gg-navy);cursor:pointer;}
.gg-filters-reset{font-size:.82rem;font-weight:700;color:var(--gg-blue);background:none;border:none;cursor:pointer;padding:0;}
.gg-filter-group{padding:1rem 1.1rem;border-bottom:1px solid var(--gg-border);}
.gg-filter-group:last-of-type{border-bottom:none;}
.gg-filter-group-title{font-size:.9rem;font-weight:800;color:var(--gg-navy);margin-bottom:.9rem;}
.gg-budget-slider{-webkit-appearance:none;appearance:none;width:100%;height:5px;border-radius:3px;background:linear-gradient(to right,var(--gg-blue) 60%,var(--gg-border) 60%);outline:none;cursor:pointer;}
.gg-budget-slider::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;border-radius:50%;background:var(--gg-blue);cursor:pointer;box-shadow:0 2px 8px rgba(26,107,255,.4);border:2.5px solid white;}
.gg-budget-labels{display:flex;justify-content:space-between;font-size:.75rem;font-weight:600;color:var(--gg-muted);margin-top:.45rem;}
.gg-filter-options{display:flex;flex-wrap:wrap;gap:.5rem;}
.gg-filter-opt{padding:.4rem 1rem;border-radius:999px;font-size:.82rem;font-weight:600;border:1.5px solid var(--gg-border);background:var(--gg-white);color:var(--gg-text);cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:.3rem;}
.gg-filter-opt.active{background:var(--gg-blue);border-color:var(--gg-blue);color:white;}
.gg-filter-opt:hover{border-color:var(--gg-blue);color:var(--gg-blue);}
.gg-rating-filter{display:flex;gap:.5rem;flex-wrap:wrap;}
.gg-rating-opt{display:flex;align-items:center;gap:.3rem;padding:.42rem .85rem;border-radius:999px;border:1.5px solid var(--gg-border);background:var(--gg-white);cursor:pointer;font-size:.82rem;font-weight:600;color:var(--gg-text);transition:all .2s ease;}
.gg-rating-opt.active{background:var(--gg-warning);border-color:var(--gg-warning);color:var(--gg-navy);}
.gg-rating-opt i{color:var(--gg-warning);font-size:.85rem;}
.gg-rating-opt.active i{color:var(--gg-navy);}
.gg-filter-apply-bar{padding:1rem 1.1rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom));background:var(--gg-white);border-top:1px solid var(--gg-border);position:sticky;bottom:0;}
.gg-filter-apply-btn{width:100%;background:var(--gg-blue);color:white!important;font-family:'Outfit',sans-serif;font-weight:700;font-size:1rem;border-radius:999px;padding:.9rem 1.5rem;border:none;cursor:pointer;transition:all .25s ease;box-shadow:0 6px 18px rgba(26,107,255,.35);display:flex;align-items:center;justify-content:center;gap:.5rem;text-decoration:none;}
.gg-filter-apply-btn:hover{background:var(--gg-blue-dark);color:white!important;transform:translateY(-1px);}
.gg-weekend-specials-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;padding:.85rem 1.1rem;}
.gg-weekend-card{background:var(--gg-white);border-radius:16px;overflow:hidden;box-shadow:var(--gg-shadow-card);text-decoration:none;color:var(--gg-text);transition:all .2s ease;display:block;}
.gg-weekend-card:hover{transform:translateY(-2px);box-shadow:var(--gg-shadow-lg);color:var(--gg-text);}
.gg-weekend-card-img{height:110px;overflow:hidden;position:relative;}
.gg-weekend-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease;}
.gg-weekend-card:hover .gg-weekend-card-img img{transform:scale(1.06);}
.gg-weekend-card-body{padding:.65rem .75rem .75rem;}
.gg-weekend-card-name{font-weight:800;font-size:.88rem;color:var(--gg-navy);margin-bottom:.2rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.gg-weekend-card-meta{font-size:.72rem;color:var(--gg-muted);font-weight:500;display:flex;align-items:center;gap:.25rem;}
.gg-weekend-card-price{display:flex;align-items:center;justify-content:space-between;margin-top:.5rem;}
.gg-weekend-price-val{font-family:'Outfit',sans-serif;font-size:.9rem;font-weight:800;color:var(--gg-navy);}
.gg-weekend-arrow-btn{width:26px;height:26px;border-radius:50%;background:var(--gg-blue);color:white;display:flex;align-items:center;justify-content:center;font-size:.75rem;text-decoration:none;flex-shrink:0;transition:all .2s ease;}
.gg-weekend-arrow-btn:hover{background:var(--gg-blue-dark);transform:scale(1.1);}}
/* Tablet Adjustments */
@media(min-width:768px) and (max-width:991px){.gg-category-circle{width:76px;height:76px;}.gg-pop-dest-circle{width:82px;height:82px;}.gg-pkg-card-media{height:220px;}.gg-weekend-specials-grid{grid-template-columns:repeat(3,1fr);}.gg-weekend-card-img{height:130px;}.gg-detail-hero{height:340px;}.gg-discover-header{height:280px;}.gg-booking-thumb,.gg-booking-thumb-placeholder{width:90px;height:90px;}.gg-wishlist-thumb{width:85px;height:85px;}.gg-profile-stats-card{margin:-2rem 1.5rem 0;padding:1.25rem 1.5rem;}.gg-profile-menu,.gg-profile-logout{margin-left:1.5rem;margin-right:1.5rem;}.gg-bookings-list,.gg-wishlist-list{padding:1rem 1.5rem;}.gg-home-section,.gg-category-section{padding-left:1.5rem;padding-right:1.5rem;}.gg-special-offer-banner{margin-left:1.5rem;margin-right:1.5rem;}.gg-home-topbar{padding-left:1.5rem;padding-right:1.5rem;}.gg-home-search-wrap{padding-left:1.5rem;padding-right:1.5rem;}}
/* Empty State */
@media(max-width:991px){.gg-empty-state{text-align:center;padding:3rem 1.5rem;}.gg-empty-icon{font-size:3rem;margin-bottom:.75rem;color:var(--gg-border);display:block;}.gg-empty-title{font-family:'Outfit',sans-serif;font-size:1.1rem;font-weight:700;color:var(--gg-navy);margin-bottom:.5rem;}.gg-empty-desc{font-size:.88rem;color:var(--gg-muted);max-width:260px;margin:0 auto 1.25rem;}.gg-h-scroll{display:flex;gap:.75rem;overflow-x:auto;padding:.25rem 0 .5rem;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;-ms-overflow-style:none;scrollbar-width:none;}.gg-h-scroll::-webkit-scrollbar{display:none;}.gg-h-scroll>*{scroll-snap-align:start;flex-shrink:0;}.gg-tap-scale:active{transform:scale(.96);transition:transform .1s ease;}}
/* Animations */
@keyframes gg-slide-up{from{transform:translateY(16px);opacity:0;}to{transform:translateY(0);opacity:1;}}
@keyframes gg-fade-in{from{opacity:0;}to{opacity:1;}}
@keyframes gg-shimmer{0%{background-position:200% 0;}100%{background-position:-200% 0;}}
@media(max-width:991px){.gg-animate-slide-up{animation:gg-slide-up .35s cubic-bezier(.16,1,.3,1) both;}.gg-animate-fade-in{animation:gg-fade-in .3s ease both;}.gg-stagger>*:nth-child(1){animation-delay:.05s;}.gg-stagger>*:nth-child(2){animation-delay:.1s;}.gg-stagger>*:nth-child(3){animation-delay:.15s;}.gg-stagger>*:nth-child(4){animation-delay:.2s;}.gg-stagger>*:nth-child(5){animation-delay:.25s;}.gg-stagger>*:nth-child(6){animation-delay:.3s;}.gg-skeleton{background:linear-gradient(90deg,#F1F5F9 25%,#E2E8F0 50%,#F1F5F9 75%);background-size:200% 100%;animation:gg-shimmer 1.5s infinite;border-radius:8px;}}
