:root{--color-teal: #5ECFBF;--color-teal-dark: #1a8a7a;--color-teal-light: #e6faf8;--color-teal-faint: #f4fbfb;--color-black: #1a1a1a;--color-yellow: #E8E840;--color-white: #ffffff;--ghana-red: #CF1020;--ghana-gold: #FCD116;--ghana-green: #006B3F;--map-active: #2d9e6b;--map-hover: #E8E840;--map-locked: #4a4a4a;--type-tours-bg: #5ECFBF;--type-tours-text: #1a1a1a;--type-stays-bg: #1a1a1a;--type-stays-text: #ffffff;--type-activities-bg:#E8E840;--type-activities-text: #1a1a1a;--text-primary: #1a1a1a;--text-secondary: #555555;--text-muted: #888888;--bg-page: #f4fbfb;--bg-card: #ffffff;--bg-hero-from: #0d4a42;--bg-hero-to: #060f0d;--shadow-sm: 0 2px 8px rgba(0,0,0,.08);--shadow-md: 0 2px 16px rgba(0,0,0,.1);--shadow-lg: 0 8px 40px rgba(0,0,0,.18);--shadow-nav: 0 2px 16px rgba(0,0,0,.08);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-pill: 50px;--font-display: "Playfair Display", Georgia, serif;--font-body: "Nunito Sans", system-ui, sans-serif;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 40px;--space-2xl: 64px;--transition-fast: all .15s ease;--transition-base: all .2s ease;--transition-slow: all .35s cubic-bezier(.4, 0, .2, 1);--max-width: 1280px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);background-color:var(--bg-page);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font-family:var(--font-body);cursor:pointer}img{max-width:100%;display:block}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#f0f0f0}::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-teal)}.font-display{font-family:var(--font-display)}.font-body{font-family:var(--font-body)}.text-xs{font-size:11px}.text-sm{font-size:13px}.text-base{font-size:15px}.text-lg{font-size:18px}.text-xl{font-size:22px}.text-2xl{font-size:28px}.text-muted{color:var(--text-muted)}.text-teal{color:var(--color-teal)}.text-yellow{color:var(--color-yellow)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.tracking-wide{letter-spacing:2px}.tracking-wider{letter-spacing:4px}.container{max-width:var(--max-width);margin:0 auto;padding:0 var(--space-lg)}.flex{display:flex}.flex-col{display:flex;flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.flex-wrap{flex-wrap:wrap}.gap-xs{gap:var(--space-xs)}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-md)}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-md)}.navbar{background:var(--color-white);box-shadow:var(--shadow-nav);position:sticky;top:0;z-index:900}.navbar__inner{max-width:var(--max-width);margin:0 auto;padding:0 var(--space-lg);height:80px;display:flex;align-items:center;gap:var(--space-md)}.navbar__logo img{height:72px;width:auto;object-fit:contain;display:block}.navbar__links{display:flex;gap:2px;margin-left:var(--space-sm);flex:1;overflow:hidden;align-items:center}.navbar__actions{display:flex;align-items:center;gap:10px;flex-shrink:0;margin-left:var(--space-sm)}.navbar__flag-strip{display:flex;height:5px}.navbar__flag-strip span:nth-child(1){flex:1;background:var(--ghana-red)}.navbar__flag-strip span:nth-child(2){flex:1;background:var(--ghana-gold)}.navbar__flag-strip span:nth-child(3){flex:1;background:var(--ghana-green)}.nav-link{color:var(--text-primary);text-decoration:none;font-weight:700;font-size:13px;padding:6px 14px;border-radius:var(--radius-sm);transition:var(--transition-base);white-space:nowrap}.nav-link:hover{background:#5ecfbf1f;color:var(--color-teal)}.btn-cart{background:var(--color-black);color:var(--color-white);border:none;border-radius:50%;width:46px;height:46px;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;box-shadow:0 2px 8px #0000002e;transition:var(--transition-base)}.btn-cart:hover{background:var(--color-teal);transform:scale(1.05)}.btn-cart__badge{position:absolute;top:-2px;right:-2px;background:var(--color-teal);color:var(--color-black);border-radius:50%;width:18px;height:18px;font-size:10px;display:flex;align-items:center;justify-content:center;font-weight:800}.btn-user{background:var(--color-black);color:var(--color-white);border:none;border-radius:30px;height:46px;padding:0 18px;display:flex;align-items:center;gap:10px;flex-shrink:0;position:relative;box-shadow:0 2px 8px #0000002e;transition:var(--transition-base)}.btn-user:hover{background:#2d2d2d}.btn-user__badge{position:absolute;top:-2px;right:-2px;background:var(--color-yellow);color:var(--color-black);border-radius:50%;width:18px;height:18px;font-size:10px;display:flex;align-items:center;justify-content:center;font-weight:800}.hero{position:relative;min-height:620px;background:linear-gradient(160deg,var(--bg-hero-from) 0%,#0a2e2a 40%,var(--bg-hero-to) 100%);overflow:visible}.hero__overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.hero__texture{position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle at 20% 30%,rgba(94,207,191,.18) 0%,transparent 50%),radial-gradient(circle at 80% 70%,rgba(232,232,64,.12) 0%,transparent 50%);z-index:0}.hero__content{position:relative;z-index:1;max-width:var(--max-width);margin:0 auto;padding:var(--space-xl) var(--space-lg);display:flex;flex-direction:column;align-items:center}.hero__eyebrow{font-family:var(--font-display);font-size:13px;font-weight:700;letter-spacing:4px;color:var(--color-yellow);text-transform:uppercase;margin-bottom:10px}.hero__title{font-family:var(--font-display);font-size:clamp(2rem,5vw,3.5rem);font-weight:900;color:var(--color-white);line-height:1.1;margin-bottom:10px;text-align:center}.hero__title span{color:var(--color-yellow)}.hero__subtitle{color:#ffffffbf;font-size:16px;max-width:480px;margin:0 auto;text-align:center}.search-bar{position:relative;width:100%;max-width:620px;margin-bottom:20px}.search-bar__inner{display:flex;background:var(--color-white);border-radius:var(--radius-pill);box-shadow:0 4px 24px #00000038;align-items:center;overflow:visible}.search-bar__input{flex:1;border:none;outline:none;padding:15px 12px;font-size:15px;font-family:var(--font-body);background:transparent;color:var(--text-primary)}.search-bar__input::placeholder{color:#aaa}.search-bar__dropdown{position:absolute;top:calc(100% + 8px);left:0;right:0;background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:200;overflow:hidden}.search-bar__dropdown-label{padding:10px 16px 4px;font-size:11px;font-weight:800;color:var(--text-muted);letter-spacing:1px;text-transform:uppercase}.search-bar__result{padding:10px 16px;cursor:pointer;display:flex;align-items:center;gap:10px;border-top:1px solid #f5f5f5;transition:var(--transition-fast)}.search-bar__result:hover{background:var(--color-teal-light)}.filter-pill{background:none;border:2px solid #ddd;cursor:pointer;font-family:var(--font-body);font-weight:700;font-size:13px;padding:7px 18px;border-radius:var(--radius-pill);transition:var(--transition-base);color:var(--text-secondary)}.filter-pill:hover,.filter-pill.active{background:var(--color-teal);border-color:var(--color-teal);color:var(--color-white)}.trust-strip{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px;width:100%;max-width:420px}.trust-strip__item{display:flex;align-items:center;gap:6px;background:#5ecfbf1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;padding:6px 12px;border:1px solid rgba(94,207,191,.2)}.trust-strip__icon{font-size:11px;color:var(--color-yellow);flex-shrink:0}.trust-strip__label{font-size:11px;font-family:var(--font-body);font-weight:700;color:#ffffffd9;letter-spacing:.2px;line-height:1.3}.map-legend{display:flex;gap:20px;margin-top:16px;flex-wrap:wrap;justify-content:center}.map-legend__item{display:flex;align-items:center;gap:7px}.map-legend__dot{width:14px;height:14px;border-radius:3px;border:1.5px solid rgba(255,255,255,.3)}.map-legend__label{color:#ffffffbf;font-size:12px;font-family:var(--font-body);font-weight:600}.card{background:var(--bg-card);border-radius:14px;overflow:hidden;box-shadow:var(--shadow-md);display:flex;flex-direction:column;border:1px solid #f0f0f0;transition:transform .2s ease,box-shadow .2s ease;position:relative}.card:hover{transform:translateY(-4px);box-shadow:0 8px 32px #00000026}.card__image{background:linear-gradient(135deg,#5ecfbf21,#e8e84021);height:110px;display:flex;align-items:center;justify-content:center;font-size:48px}.card__wishlist-btn{position:absolute;top:10px;right:10px;background:#ffffffd9;border:none;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #00000026;transition:var(--transition-base);font-size:16px;cursor:pointer}.card__wishlist-btn.active{background:var(--color-black)}.card__wishlist-btn.active span{color:var(--color-white)}.card__wishlist-btn span{color:var(--color-black)}.card__body{padding:12px 14px 14px}.card__type-badge{display:inline-block;border-radius:20px;padding:2px 10px;font-size:11px;font-weight:700;letter-spacing:.5px;margin-bottom:6px}.card__title{font-family:var(--font-display);font-size:14px;font-weight:700;color:var(--text-primary);line-height:1.3;margin-bottom:6px;min-height:36px}.card__meta{display:flex;justify-content:space-between;align-items:center;margin-top:8px}.card__duration{color:var(--text-secondary);font-size:12px}.card__price{font-family:var(--font-display);font-weight:800;font-size:16px;color:var(--color-teal)}.card__add-btn{width:100%;margin-top:10px;padding:9px 0;background:var(--color-teal);color:var(--color-black);border:none;border-radius:var(--radius-sm);font-family:var(--font-body);font-weight:700;font-size:13px;letter-spacing:.3px;transition:var(--transition-base)}.card__add-btn:hover{background:var(--color-teal-dark);color:var(--color-white)}.card__add-btn.added{background:#555;color:var(--color-white)}.stars{color:var(--color-yellow);font-size:13px;letter-spacing:1px}.stars__count{color:var(--text-muted);font-size:11px;margin-left:4px}.listings-section{max-width:var(--max-width);margin:0 auto;padding:var(--space-xl) var(--space-lg)}.listings-section__header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:var(--space-lg);flex-wrap:wrap;gap:12px}.listings-section__eyebrow{font-family:var(--font-display);font-size:13px;font-weight:700;letter-spacing:3px;color:var(--color-teal);text-transform:uppercase;margin-bottom:6px}.listings-section__title{font-family:var(--font-display);font-size:clamp(1.6rem,3vw,2.4rem);font-weight:900;color:var(--text-primary)}.listings-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.drawer{position:fixed;top:0;right:-480px;width:480px;max-width:100vw;height:100vh;background:var(--color-white);box-shadow:-8px 0 40px #0000002e;z-index:1000;transition:right .35s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column}.drawer.open{right:0}.drawer__header{padding:20px 24px;border-bottom:2px solid #f0f0f0;display:flex;justify-content:space-between;align-items:center}.drawer__header--cart{background:var(--color-teal)}.drawer__header--wish{background:var(--color-yellow)}.drawer__title{font-family:var(--font-display);font-weight:900;font-size:20px}.drawer__header--cart .drawer__title{color:var(--color-white)}.drawer__header--wish .drawer__title{color:var(--color-black)}.drawer__close{background:#fff3;border:none;border-radius:50%;width:34px;height:34px;font-size:18px;display:flex;align-items:center;justify-content:center;transition:var(--transition-base)}.drawer__header--cart .drawer__close{color:var(--color-white)}.drawer__header--wish .drawer__close{color:var(--color-black);background:#0000001f}.drawer__body{flex:1;overflow-y:auto;padding:20px}.drawer__empty{text-align:center;padding:60px 0;color:var(--text-muted)}.drawer__empty-icon{font-size:56px;margin-bottom:12px}.drawer__empty-title{font-family:var(--font-display);font-size:18px;font-weight:700}.drawer__empty-text{font-size:13px;margin-top:6px}.drawer__item{display:flex;gap:14px;padding:14px 0;border-bottom:1px solid #f0f0f0;align-items:center}.drawer__item-img{font-size:32px;width:52px;height:52px;background:var(--color-teal-faint);border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.drawer__item-name{font-weight:700;font-size:14px;color:var(--text-primary);margin-bottom:2px}.drawer__item-meta{font-size:12px;color:var(--text-muted)}.drawer__item-price{font-family:var(--font-display);font-weight:800;color:var(--color-teal);font-size:16px}.drawer__remove-btn{background:none;border:none;color:#c20;font-size:12px;font-weight:700;margin-top:4px;cursor:pointer}.drawer__footer{padding:16px 24px;border-top:2px solid #f0f0f0;background:var(--color-white)}.drawer__total{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.drawer__total-label{font-weight:700;font-size:16px}.drawer__total-amount{font-family:var(--font-display);font-weight:900;font-size:22px;color:var(--color-teal)}.btn-checkout{width:100%;padding:14px 0;background:var(--color-teal);color:var(--color-black);border:none;border-radius:var(--radius-md);font-family:var(--font-body);font-weight:800;font-size:16px;letter-spacing:.5px;transition:var(--transition-base)}.btn-checkout:hover{background:var(--color-teal-dark);color:var(--color-white)}.overlay-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:999;opacity:0;pointer-events:none;transition:opacity .3s ease}.overlay-backdrop.visible{opacity:1;pointer-events:all}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:1100;display:flex;align-items:center;justify-content:center;padding:20px}.modal{background:var(--color-white);border-radius:var(--radius-xl);width:100%;max-width:800px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;animation:slideUp .3s ease}.modal__header{background:linear-gradient(135deg,var(--color-teal),var(--color-teal-dark));padding:24px 28px;display:flex;justify-content:space-between;align-items:flex-start}.modal__eyebrow{font-size:12px;font-weight:700;color:var(--color-yellow);letter-spacing:3px;text-transform:uppercase;margin-bottom:6px}.modal__title{font-family:var(--font-display);font-size:26px;font-weight:900;color:var(--color-white)}.modal__subtitle{color:#ffffffb3;font-size:13px;margin-top:4px}.modal__close{background:#ffffff26;border:none;color:var(--color-white);border-radius:50%;width:36px;height:36px;font-size:18px;display:flex;align-items:center;justify-content:center}.modal__tabs{display:flex;gap:4px;padding:16px 20px 0;border-bottom:2px solid #f0f0f0;background:var(--color-white)}.tab-btn{background:none;border:none;cursor:pointer;font-family:var(--font-body);font-weight:700;font-size:14px;padding:8px 18px;border-radius:20px;transition:var(--transition-base);color:var(--text-secondary)}.tab-btn.active{background:var(--color-teal);color:var(--color-white)}.tab-btn:not(.active):hover{background:var(--color-teal-light);color:var(--color-teal)}.modal__body{flex:1;overflow-y:auto;padding:20px;background:var(--color-teal-faint)}.user-menu{position:absolute;right:0;top:50px;background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:260px;padding:16px;z-index:1000}.user-menu__btn-primary{width:100%;padding:10px 0;background:var(--color-teal);color:var(--color-white);border:none;border-radius:10px;font-weight:700;font-size:14px;margin-bottom:8px}.user-menu__btn-secondary{width:100%;padding:10px 0;background:var(--color-teal-faint);color:var(--color-teal);border:2px solid var(--color-teal);border-radius:10px;font-weight:700;font-size:14px;margin-bottom:12px}.user-menu__item{background:none;border:none;text-align:left;padding:8px 12px;border-radius:var(--radius-sm);cursor:pointer;font-weight:600;color:var(--text-primary);font-size:14px;width:100%;display:flex;align-items:center;gap:8px;transition:var(--transition-fast)}.user-menu__item:hover{background:var(--color-teal-faint)}.user-menu__signout{margin-top:8px;background:#fff0f0;border:1px solid #ffcdd2;color:#c20;border-radius:var(--radius-sm);padding:8px 12px;font-weight:700;font-size:13px;cursor:pointer;text-align:left;width:100%}.currency-btn{padding:4px 10px;border-radius:var(--radius-sm);font-weight:700;font-size:12px;cursor:pointer;transition:var(--transition-base);border:1px solid #ddd;background:var(--color-white);color:var(--text-secondary)}.currency-btn.active{background:var(--color-teal);border-color:var(--color-teal);color:var(--color-white)}.programs-dropdown{position:absolute;top:calc(100% + 8px);left:0;background:var(--color-white);border-radius:14px;box-shadow:var(--shadow-lg);border:1px solid #f0f0f0;min-width:270px;z-index:950;overflow:hidden;animation:slideUp .18s ease}.programs-dropdown__header{background:linear-gradient(135deg,var(--color-black),#2d2d2d);padding:14px 18px}.programs-dropdown__item{display:flex;align-items:flex-start;gap:12px;padding:12px 18px;text-decoration:none;border-top:1px solid #f5f5f5;color:inherit;transition:var(--transition-fast)}.programs-dropdown__item:hover{background:var(--color-teal-faint)}.programs-dropdown__badge{background:var(--color-teal);color:var(--color-black);font-size:9px;font-weight:800;border-radius:20px;padding:2px 7px;letter-spacing:.5px;text-transform:uppercase}.programs-dropdown__footer{background:var(--color-teal-faint);padding:10px 18px;border-top:1px solid #e8f8f6}.admin-panel{background:var(--color-black);color:var(--color-white);padding:16px var(--space-lg);border-bottom:2px solid var(--color-yellow)}.admin-panel__inner{max-width:var(--max-width);margin:0 auto;display:flex;align-items:center;gap:20px;flex-wrap:wrap}.admin-panel__drop-zone{border:2px dashed #555;border-radius:10px;padding:12px 24px;cursor:pointer;font-size:13px;color:#aaa;transition:border-color .2s ease}.admin-panel__drop-zone:hover{border-color:var(--color-teal)}.footer{background:#111;color:#aaa;padding:40px var(--space-lg) 24px}.footer__inner{max-width:var(--max-width);margin:0 auto}.footer__grid{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:24px;margin-bottom:32px}.footer__brand p{font-size:13px;max-width:260px;line-height:1.7}.footer__social{display:flex;gap:10px;margin-top:18px}.footer__social-icon{color:#aaa;display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;border:1px solid #333;transition:var(--transition-base);text-decoration:none}.footer__social-icon:hover{color:var(--color-yellow);border-color:var(--color-yellow);background:#e8e84014}.footer__col-title{font-family:var(--font-body);font-weight:800;color:var(--color-white);font-size:12px;letter-spacing:2px;text-transform:uppercase;margin-bottom:14px}.footer__link{display:block;font-size:13px;margin-bottom:8px;cursor:pointer;text-decoration:none;color:#aaa;transition:color .2s ease}.footer__link:hover{color:var(--color-yellow)}.footer__bottom{border-top:1px solid #333;padding-top:20px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}.footer__bottom-copy{font-size:12px}.footer__flag{display:flex;gap:8px;align-items:center}.footer__flag-bar{width:28px;height:18px;border-radius:3px;overflow:hidden;display:flex}.footer__flag-bar span{flex:1}.page-coming-soon{min-height:calc(100vh - 69px);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-xl) var(--space-lg);text-align:center;background:var(--bg-page)}.page-coming-soon__icon{font-size:64px;margin-bottom:20px}.page-coming-soon__title{font-family:var(--font-display);font-size:2.5rem;font-weight:900;color:var(--text-primary);margin-bottom:12px}.page-coming-soon__desc{color:var(--text-secondary);font-size:16px;max-width:480px;margin:0 auto 28px}.btn-back{display:inline-flex;align-items:center;gap:8px;background:var(--color-teal);color:var(--color-black);border:none;border-radius:var(--radius-md);padding:12px 28px;font-family:var(--font-body);font-weight:700;font-size:15px;cursor:pointer;text-decoration:none;transition:var(--transition-base)}.btn-back:hover{background:var(--color-teal-dark);color:var(--color-white)}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}input[type=range]{-webkit-appearance:none;width:100%;height:4px;background:#ddd;border-radius:2px;outline:none}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;background:var(--color-teal);border-radius:50%;cursor:pointer}@media (max-width: 1024px){.navbar__links .nav-link{font-size:12px;padding:6px 10px}}@media (max-width: 768px){.navbar__links{display:none}.listings-grid{grid-template-columns:1fr 1fr}.drawer{width:100vw}.footer__grid{flex-direction:column}.hero__title{font-size:2rem}.grid-4{grid-template-columns:1fr 1fr}}@media (max-width: 480px){.listings-grid,.trust-strip,.grid-2{grid-template-columns:1fr}}
