.auth-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.auth-modal{background:#fff;border-radius:1rem;width:100%;max-width:420px;max-height:90vh;overflow-y:auto;padding:2rem;position:relative;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;color:#666;cursor:pointer;padding:.25rem;transition:color .2s}.modal-close:hover{color:#333}.modal-header{text-align:center;margin-bottom:1.5rem}.modal-logo{font-size:2.5rem;display:block;margin-bottom:.5rem}.modal-header h2{font-size:1.5rem;font-weight:700;color:#1a1a1a;margin:0 0 .25rem}.modal-header p{color:#666;font-size:.9rem;margin:0}.auth-error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:.75rem 1rem;border-radius:.5rem;font-size:.875rem;margin-bottom:1rem}.auth-form{display:flex;flex-direction:column;gap:1rem}.auth-form .form-group{display:flex;flex-direction:column;gap:.375rem}.auth-form label{font-size:.875rem;font-weight:500;color:#374151}.input-with-icon{position:relative;display:flex;align-items:center}.input-with-icon>svg:first-child{position:absolute;left:.75rem;color:#9ca3af;pointer-events:none}.input-with-icon input{width:100%;padding:.75rem .75rem .75rem 2.5rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:.9375rem;transition:border-color .2s,box-shadow .2s}.input-with-icon input:focus{outline:none;border-color:#2d5016;box-shadow:0 0 0 3px #2d50161a}.password-toggle{position:absolute;right:.75rem;background:none;border:none;color:#9ca3af;cursor:pointer;padding:.25rem;display:flex;transition:color .2s}.password-toggle:hover{color:#374151}.password-requirements{display:flex;flex-direction:column;gap:.25rem;margin-top:.5rem}.requirement{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;color:#9ca3af}.requirement svg{opacity:.3}.requirement.met{color:#16a34a}.requirement.met svg{opacity:1}.form-row-between{display:flex;justify-content:space-between;align-items:center}.checkbox-label{display:flex;align-items:flex-start;gap:.5rem;font-size:.875rem;color:#4b5563;cursor:pointer}.checkbox-label input[type=checkbox]{margin-top:.125rem;accent-color:#2D5016}.link-button{background:none;border:none;color:#2d5016;font-size:inherit;font-weight:500;cursor:pointer;padding:0;text-decoration:underline;text-decoration-color:transparent;transition:text-decoration-color .2s}.link-button:hover{text-decoration-color:#2d5016}.btn-full{width:100%;padding:.875rem;font-size:1rem;font-weight:600;margin-top:.5rem;display:flex;align-items:center;justify-content:center;gap:.5rem}.btn-full:disabled{background:#9ca3af;cursor:not-allowed}.spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.demo-hint{background:#f3f4f6;padding:.75rem;border-radius:.5rem;font-size:.8125rem;color:#4b5563;text-align:center;margin-top:.5rem}.demo-hint strong{display:block;color:#1f2937;margin-bottom:.25rem}.auth-switch{text-align:center;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e5e7eb;font-size:.9rem;color:#4b5563}.header{position:sticky;top:0;z-index:100;background-color:var(--color-surface);box-shadow:var(--shadow-sm)}.header-top{background-color:var(--color-primary);color:#fff;font-size:.875rem;padding:var(--spacing-xs) 0}.header-top-content{display:flex;justify-content:space-between;align-items:center}.header-contact{display:flex;gap:var(--spacing-lg)}.header-contact a{display:flex;align-items:center;gap:var(--spacing-xs);color:#fff;opacity:.9;transition:opacity var(--transition-fast)}.header-contact a:hover{opacity:1}.header-tagline{font-weight:500}.header-nav{padding:var(--spacing-md) 0}.header-nav-content{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-xl)}.logo{display:flex;align-items:center;gap:var(--spacing-sm)}.logo-icon{font-size:2rem}.logo-text{display:flex;flex-direction:column;line-height:1.2}.logo-text strong{font-size:1.25rem;color:var(--color-primary)}.logo-text small{font-size:.75rem;color:var(--color-text-muted);letter-spacing:2px}.nav-links{display:flex;gap:var(--spacing-lg)}.nav-links a{font-weight:500;color:var(--color-text-secondary);padding:var(--spacing-sm);border-radius:var(--radius-md);transition:all var(--transition-fast)}.nav-links a:hover,.nav-links a.active{color:var(--color-primary);background-color:var(--color-bg-secondary)}.header-actions{display:flex;align-items:center;gap:var(--spacing-sm)}.btn-ghost{background:transparent;color:var(--color-text-secondary);border:none;padding:var(--spacing-sm) var(--spacing-md);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.btn-ghost:hover{color:var(--color-primary);background:var(--color-bg-secondary)}.btn-secondary{background:var(--color-bg-secondary);color:var(--color-primary);border:1px solid var(--color-primary);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.btn-secondary:hover{background:var(--color-primary);color:#fff}.user-menu-container{position:relative}.user-menu-trigger{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:9999px;cursor:pointer;transition:all var(--transition-fast)}.user-menu-trigger:hover{border-color:var(--color-primary)}.user-avatar{width:32px;height:32px;border-radius:50%;background:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden}.user-avatar img{width:100%;height:100%;object-fit:cover}.user-name{font-weight:500;color:var(--color-text);font-size:.875rem}.user-menu-trigger svg.rotated{transform:rotate(180deg)}.user-dropdown{position:absolute;top:calc(100% + .5rem);right:0;min-width:220px;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:50;animation:dropdownFade .15s ease-out}@keyframes dropdownFade{0%{opacity:0;transform:translateY(-.5rem)}to{opacity:1;transform:translateY(0)}}.dropdown-header{padding:var(--spacing-md)}.dropdown-name{font-weight:600;color:var(--color-text);margin:0}.dropdown-email{font-size:.8125rem;color:var(--color-text-muted);margin:.25rem 0 0}.dropdown-divider{height:1px;background:var(--color-border)}.dropdown-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);color:var(--color-text-secondary);font-size:.875rem;font-weight:500;transition:all var(--transition-fast);cursor:pointer;border:none;background:none;width:100%;text-align:left}.dropdown-item:hover{background:var(--color-bg-secondary);color:var(--color-primary)}.dropdown-item.logout{color:#dc2626}.dropdown-item.logout:hover{background:#fef2f2;color:#dc2626}.menu-toggle{display:none;padding:var(--spacing-sm);color:var(--color-text)}@media (max-width: 1024px){.header-contact{display:none}.header-tagline{font-size:.75rem}}@media (max-width: 768px){.header-top{display:none}.nav-links{position:fixed;top:70px;left:0;right:0;bottom:0;background-color:var(--color-surface);flex-direction:column;padding:var(--spacing-xl);gap:var(--spacing-md);transform:translate(100%);transition:transform var(--transition-normal)}.nav-links.open{transform:translate(0)}.nav-links a{font-size:1.125rem;padding:var(--spacing-md)}.menu-toggle{display:block}}.footer{background-color:var(--color-text);color:#fff;padding:var(--spacing-3xl) 0 var(--spacing-lg);margin-top:auto}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:var(--spacing-2xl);margin-bottom:var(--spacing-2xl)}.footer-brand{max-width:320px}.footer-logo{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.footer-logo .logo-icon{font-size:2rem}.footer-logo .logo-text{display:flex;flex-direction:column;line-height:1.2}.footer-logo .logo-text strong{font-size:1.25rem;color:#fff}.footer-logo .logo-text small{font-size:.75rem;color:var(--color-border);letter-spacing:2px}.footer-description{color:var(--color-border);font-size:.9rem;line-height:1.7;margin-bottom:var(--spacing-lg)}.footer-social{display:flex;gap:var(--spacing-md)}.footer-social a{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background-color:#ffffff1a;border-radius:var(--radius-md);color:#fff;transition:all var(--transition-fast)}.footer-social a:hover{background-color:var(--color-primary);transform:translateY(-2px)}.footer-links h4,.footer-contact h4{font-size:1rem;margin-bottom:var(--spacing-lg);color:#fff}.footer-links ul,.footer-contact ul{display:flex;flex-direction:column;gap:var(--spacing-sm)}.footer-links a{color:var(--color-border);font-size:.9rem;transition:color var(--transition-fast)}.footer-links a:hover{color:var(--color-accent)}.footer-contact li{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--color-border);font-size:.9rem}.footer-contact a{color:var(--color-border);transition:color var(--transition-fast)}.footer-contact a:hover{color:var(--color-accent)}.footer-certifications{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-top:var(--spacing-lg)}.certification{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background-color:#ffffff1a;border-radius:var(--radius-sm);font-size:.75rem}.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:var(--spacing-lg);border-top:1px solid rgba(255,255,255,.1);font-size:.875rem;color:var(--color-border)}.footer-legal{display:flex;gap:var(--spacing-lg)}.footer-legal a{color:var(--color-border);transition:color var(--transition-fast)}.footer-legal a:hover{color:#fff}@media (max-width: 1024px){.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:span 2;max-width:100%}}@media (max-width: 768px){.footer-grid{grid-template-columns:1fr;gap:var(--spacing-xl)}.footer-brand{grid-column:1}.footer-bottom{flex-direction:column;gap:var(--spacing-md);text-align:center}.footer-legal{flex-wrap:wrap;justify-content:center;gap:var(--spacing-md)}}.home-page{flex:1}.hero-actions{display:flex;gap:var(--spacing-md);justify-content:center;flex-wrap:wrap;margin-bottom:var(--spacing-2xl)}.hero-stats{display:flex;gap:var(--spacing-2xl);justify-content:center;flex-wrap:wrap}.hero-stats .stat{text-align:center}.hero-stats .stat strong{display:block;font-size:2rem;color:var(--color-accent)}.hero-stats .stat span{font-size:.875rem;opacity:.8}.quick-booking{background-color:var(--color-surface);padding:var(--spacing-xl) 0;margin-top:-40px;position:relative;z-index:10}.booking-bar{display:flex;gap:var(--spacing-md);align-items:flex-end;padding:var(--spacing-lg);background-color:var(--color-bg-secondary);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg)}.booking-field{flex:1}.booking-field label{display:block;font-size:.75rem;font-weight:600;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--spacing-xs)}.booking-field .form-select,.booking-field .form-input{padding:var(--spacing-md)}.safari-card .card-image-wrapper{position:relative}.safari-card .badge{position:absolute;top:var(--spacing-md);left:var(--spacing-md)}.safari-meta{margin-bottom:var(--spacing-md)}.safari-destinations{font-size:.875rem;color:var(--color-text-secondary)}.card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.section-action{text-align:center;margin-top:var(--spacing-2xl)}.why-us{background-color:var(--color-bg-secondary)}.feature-card{text-align:center;padding:var(--spacing-xl);background-color:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all var(--transition-normal)}.feature-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.feature-icon{width:70px;height:70px;margin:0 auto var(--spacing-md);background-color:var(--color-primary);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center}.feature-card h3{margin-bottom:var(--spacing-sm);color:var(--color-text)}.feature-card p{font-size:.9rem;color:var(--color-text-secondary)}.accommodation-card .card-image-wrapper{position:relative}.accommodation-card .badge{position:absolute;bottom:var(--spacing-md);left:var(--spacing-md)}.acc-rating{display:flex;align-items:center;gap:var(--spacing-xs);margin-bottom:var(--spacing-sm);color:var(--color-accent);font-weight:600}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-lg)}.service-card{padding:var(--spacing-xl);background-color:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all var(--transition-normal);border:2px solid transparent}.service-card:hover{border-color:var(--color-primary);transform:translateY(-4px);box-shadow:var(--shadow-md)}.service-icon{font-size:2.5rem;display:block;margin-bottom:var(--spacing-md)}.service-card h3{margin-bottom:var(--spacing-sm);color:var(--color-text)}.service-card p{font-size:.9rem;color:var(--color-text-secondary);margin-bottom:var(--spacing-md)}.service-count{font-size:.75rem;font-weight:600;color:var(--color-primary);text-transform:uppercase}.services-section{background-color:var(--color-bg-secondary)}.testimonials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-lg)}.testimonial-card{padding:var(--spacing-xl);background-color:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.testimonial-rating{display:flex;gap:2px;margin-bottom:var(--spacing-md)}.testimonial-text{font-size:1rem;line-height:1.7;color:var(--color-text-secondary);margin-bottom:var(--spacing-lg);font-style:italic}.testimonial-author{display:flex;align-items:center;gap:var(--spacing-md)}.testimonial-author img{width:50px;height:50px;border-radius:50%;object-fit:cover}.testimonial-author strong{display:block;color:var(--color-text)}.testimonial-author span{font-size:.875rem;color:var(--color-text-muted)}.cta-section{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);padding:var(--spacing-3xl) 0;color:#fff}.cta-content{text-align:center;max-width:700px;margin:0 auto}.cta-content h2{font-size:2.5rem;margin-bottom:var(--spacing-md)}.cta-content p{font-size:1.125rem;opacity:.9;margin-bottom:var(--spacing-xl)}.cta-actions{display:flex;gap:var(--spacing-md);justify-content:center;flex-wrap:wrap}@media (max-width: 1024px){.booking-bar{flex-wrap:wrap}.booking-field{flex:1 1 calc(50% - var(--spacing-md))}.services-grid,.testimonials-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.hero-stats{gap:var(--spacing-lg)}.hero-stats .stat strong{font-size:1.5rem}.booking-bar{flex-direction:column;align-items:stretch}.booking-field{flex:1 1 100%}.services-grid,.testimonials-grid{grid-template-columns:1fr}.cta-content h2{font-size:1.75rem}}.page-hero{position:relative;height:40vh;min-height:300px;display:flex;align-items:center;justify-content:center;background-size:cover;background-position:center;color:#fff}.page-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,#2c181080,#2c1810b3)}.page-hero-content{position:relative;z-index:1;text-align:center;max-width:700px;padding:var(--spacing-xl)}.page-hero-content h1{font-size:3rem;margin-bottom:var(--spacing-md)}.page-hero-content p{font-size:1.125rem;opacity:.9}.categories-bar{background-color:var(--color-surface);padding:var(--spacing-md) 0;box-shadow:var(--shadow-sm);position:sticky;top:70px;z-index:50}.categories-scroll{display:flex;gap:var(--spacing-sm);overflow-x:auto;padding-bottom:var(--spacing-sm);scrollbar-width:none}.categories-scroll::-webkit-scrollbar{display:none}.category-btn{flex-shrink:0;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-full);font-size:.875rem;font-weight:500;color:var(--color-text-secondary);background-color:var(--color-bg-secondary);transition:all var(--transition-fast);white-space:nowrap}.category-btn:hover{background-color:var(--color-border)}.category-btn.active{background-color:var(--color-primary);color:#fff}.safaris-layout{display:grid;grid-template-columns:280px 1fr;gap:var(--spacing-xl)}.filters-sidebar{background-color:var(--color-surface);padding:var(--spacing-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);height:fit-content;position:sticky;top:140px}.filters-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border)}.filters-header h3{display:flex;align-items:center;gap:var(--spacing-sm);font-size:1.125rem}.filters-close{display:none;font-size:1.5rem;color:var(--color-text-muted)}.filter-group{margin-bottom:var(--spacing-lg)}.filter-group h4{font-size:.875rem;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--spacing-md)}.filter-options{display:flex;flex-direction:column;gap:var(--spacing-sm)}.filter-option{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;font-size:.9rem}.filter-option input{accent-color:var(--color-primary)}.safaris-content{min-height:500px}.safaris-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.results-count{color:var(--color-text-secondary)}.mobile-filter-toggle{display:none}.safaris-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg)}.safari-card{display:flex;flex-direction:column}.safari-image-wrapper{position:relative}.safari-badges{position:absolute;top:var(--spacing-md);left:var(--spacing-md);display:flex;gap:var(--spacing-xs)}.safari-category{font-size:.75rem;color:var(--color-primary);font-weight:600;margin-bottom:var(--spacing-sm)}.safari-details{display:flex;flex-direction:column;gap:var(--spacing-xs);margin:var(--spacing-md) 0;padding:var(--spacing-md) 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.safari-details .detail{display:flex;align-items:center;gap:var(--spacing-sm);font-size:.875rem;color:var(--color-text-secondary)}.safari-highlights{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-bottom:var(--spacing-md)}.highlight-tag{font-size:.75rem;padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--color-bg-secondary);border-radius:var(--radius-sm);color:var(--color-secondary)}.safari-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto}.price-block{display:flex;flex-direction:column}.from-text{font-size:.75rem;color:var(--color-text-muted)}.price-block .price{font-size:1.5rem}.price-block .price-unit{font-size:.75rem;color:var(--color-text-muted)}.no-results{text-align:center;padding:var(--spacing-3xl);background-color:var(--color-surface);border-radius:var(--radius-lg)}.no-results h3{margin-bottom:var(--spacing-sm)}.no-results p{color:var(--color-text-secondary);margin-bottom:var(--spacing-lg)}.ai-cta{background-color:var(--color-bg-secondary);padding:var(--spacing-2xl) 0}.ai-cta-content{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-xl);padding:var(--spacing-xl);background-color:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-md)}.ai-cta-text h2{font-size:1.5rem;margin-bottom:var(--spacing-sm)}.ai-cta-text p{color:var(--color-text-secondary)}@media (max-width: 1024px){.safaris-grid{grid-template-columns:1fr}}@media (max-width: 768px){.page-hero-content h1{font-size:2rem}.safaris-layout{grid-template-columns:1fr}.filters-sidebar{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;border-radius:0;transform:translate(-100%);transition:transform var(--transition-normal);overflow-y:auto}.filters-sidebar.open{transform:translate(0)}.filters-close{display:block}.mobile-filter-toggle{display:flex}.ai-cta-content{flex-direction:column;text-align:center}}.safari-detail-page{min-height:100vh}.not-found-page h1{font-size:2rem;margin-bottom:.5rem}.not-found-page p{color:var(--color-text-muted);margin-bottom:1.5rem}.detail-hero h1{color:#fff;font-size:2.5rem;font-weight:700;margin:0 0 1rem;max-width:700px}.content-section h2{font-size:1.5rem;margin-bottom:1rem;color:var(--color-text)}.highlights-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.highlights-list li{display:flex;align-items:flex-start;gap:.75rem;color:var(--color-text-secondary)}.check-icon{color:var(--color-primary);flex-shrink:0;margin-top:.125rem}.includes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem}.include-item{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:var(--color-bg-secondary);border-radius:.5rem;font-size:.9375rem}.detail-sidebar{display:flex;flex-direction:column;gap:1.5rem;position:sticky;top:100px}.price-unit{color:var(--color-text-muted);font-size:.9375rem}.booking-form input,.booking-form select{padding:.75rem;border:1px solid var(--color-border);border-radius:.5rem;font-size:1rem;transition:border-color .2s}.contact-card{background:var(--color-bg-secondary);border-radius:1rem;padding:1.5rem;text-align:center}.contact-card h4{margin:0 0 .5rem}.contact-card p{font-size:.9375rem;color:var(--color-text-secondary);margin:0 0 1rem}.related-content h3{font-size:1rem;margin:0 0 .25rem;color:var(--color-text)}@media (max-width: 768px){.detail-hero h1{font-size:1.75rem}.details-grid{grid-template-columns:1fr}}.accommodations-page{flex:1}.accommodations-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);flex-wrap:wrap;gap:var(--spacing-md)}.price-filter{display:flex;align-items:center;gap:var(--spacing-sm)}.price-filter label{font-size:.875rem;color:var(--color-text-secondary)}.price-filter .form-select{width:auto;padding:var(--spacing-sm) var(--spacing-md)}.accommodations-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-xl)}.accommodation-card{display:flex;flex-direction:column}.acc-image-wrapper{position:relative;height:220px}.acc-image-wrapper .card-image{height:100%}.acc-badges{position:absolute;top:var(--spacing-md);left:var(--spacing-md);display:flex;gap:var(--spacing-xs)}.acc-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.acc-location{display:flex;align-items:center;gap:var(--spacing-xs);font-size:.875rem;color:var(--color-text-secondary)}.acc-rating{display:flex;align-items:center;gap:var(--spacing-xs);font-weight:600;color:var(--color-accent)}.acc-amenities{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin:var(--spacing-md) 0}.amenity-tag{font-size:.75rem;padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--color-bg-secondary);border-radius:var(--radius-sm);color:var(--color-text-secondary)}.amenity-more{font-size:.75rem;padding:var(--spacing-xs) var(--spacing-sm);color:var(--color-primary);font-weight:600}.acc-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.combo-section{background-color:var(--color-bg-secondary);padding:var(--spacing-3xl) 0}.combo-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-2xl);align-items:center}.combo-text h2{font-size:2rem;margin-bottom:var(--spacing-md)}.combo-text p{color:var(--color-text-secondary);margin-bottom:var(--spacing-lg)}.combo-features{margin-bottom:var(--spacing-xl)}.combo-features li{padding:var(--spacing-sm) 0;color:var(--color-text-secondary)}.combo-image img{width:100%;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg)}@media (max-width: 1024px){.accommodations-grid{grid-template-columns:1fr}}@media (max-width: 768px){.combo-content{grid-template-columns:1fr}.combo-image{order:-1}}.accommodation-detail-page{min-height:100vh}.amenities-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem}.amenity-item{display:flex;align-items:center;gap:.75rem;padding:1rem;background:var(--color-bg-secondary);border-radius:.5rem}.amenity-item svg{color:var(--color-primary);flex-shrink:0}.highlights-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}@media (max-width: 768px){.highlights-grid{grid-template-columns:1fr}}.highlight-card{display:flex;align-items:flex-start;gap:.75rem;padding:1.25rem;background:#fff;border:1px solid var(--color-border);border-radius:.75rem}.highlight-card svg{color:var(--color-primary);flex-shrink:0}.highlight-card div{display:flex;flex-direction:column}.highlight-card strong{font-size:.9375rem;color:var(--color-text)}.highlight-card span{font-size:.8125rem;color:var(--color-text-muted)}.map-placeholder{background:var(--color-bg-secondary);border-radius:.75rem;padding:3rem;text-align:center;color:var(--color-text-muted)}.map-placeholder svg{opacity:.3;margin-bottom:1rem}.map-placeholder p{font-size:1.125rem;font-weight:500;color:var(--color-text);margin:0 0 .25rem}.date-inputs{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.btn-block:disabled{background:var(--color-text-muted);cursor:not-allowed}@media (max-width: 768px){.related-grid{grid-template-columns:1fr}}.related-footer{display:flex;justify-content:space-between;align-items:center}.related-rating{display:flex;align-items:center;gap:.25rem;font-size:.875rem}.activities-page{flex:1}.activities-header{margin-bottom:var(--spacing-lg)}.activities-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-lg)}.activity-card{display:flex;flex-direction:column}.activity-image-wrapper{position:relative;height:180px}.activity-image-wrapper .card-image{height:100%}.activity-category-badge{position:absolute;top:var(--spacing-md);left:var(--spacing-md);padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--color-surface);border-radius:var(--radius-full);font-size:.75rem;font-weight:600;color:var(--color-primary)}.activity-details{display:flex;flex-wrap:wrap;gap:var(--spacing-md);padding:var(--spacing-md) 0;margin:var(--spacing-md) 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.activity-details .detail{display:flex;align-items:center;gap:var(--spacing-xs);font-size:.8rem;color:var(--color-text-secondary)}.difficulty{padding:2px 8px;border-radius:var(--radius-sm);font-size:.7rem;font-weight:600;text-transform:uppercase}.difficulty-easy{background-color:#d4edda;color:#155724}.difficulty-moderate{background-color:#fff3cd;color:#856404}.difficulty-challenging{background-color:#f8d7da;color:#721c24}.activity-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto}.combos-section{background-color:var(--color-bg-secondary);padding:var(--spacing-3xl) 0}.combos-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-lg)}.combo-card{background-color:var(--color-surface);padding:var(--spacing-xl);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-sm);transition:all var(--transition-normal);border:2px solid transparent}.combo-card:hover{border-color:var(--color-primary);transform:translateY(-4px);box-shadow:var(--shadow-md)}.combo-icon{font-size:3rem;margin-bottom:var(--spacing-md)}.combo-card h3{margin-bottom:var(--spacing-sm)}.combo-card p{font-size:.9rem;color:var(--color-text-secondary);margin-bottom:var(--spacing-md)}.combo-price{display:flex;justify-content:center;align-items:center;gap:var(--spacing-sm)}.combo-price .original{text-decoration:line-through;color:var(--color-text-muted);font-size:.9rem}.combo-price .discounted{font-size:1.5rem;font-weight:700;color:var(--color-primary)}@media (max-width: 1024px){.activities-grid,.combos-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.activities-grid,.combos-grid{grid-template-columns:1fr}}.activity-detail-page{min-height:100vh}.not-found-page{min-height:60vh;display:flex;align-items:center;justify-content:center;text-align:center}.detail-hero{height:60vh;min-height:400px;background-size:cover;background-position:center;position:relative}.detail-hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,#000c,#0000004d,#0006);display:flex;flex-direction:column;justify-content:flex-end;padding:3rem 0}.back-button{display:inline-flex;align-items:center;gap:.5rem;color:#fff;background:#ffffff26;border:none;padding:.5rem 1rem;border-radius:.5rem;cursor:pointer;font-weight:500;margin-bottom:1rem;transition:background .2s}.back-button:hover{background:#ffffff40}.hero-badges{display:flex;gap:.5rem;margin-bottom:1rem}.detail-hero h1{color:#fff;font-size:2.5rem;font-weight:700;margin:0 0 1rem}.hero-meta{display:flex;flex-wrap:wrap;gap:1.5rem;color:#ffffffe6}.hero-meta span{display:flex;align-items:center;gap:.5rem}.detail-layout{display:grid;grid-template-columns:1fr 380px;gap:2.5rem;align-items:start}@media (max-width: 1024px){.detail-layout{grid-template-columns:1fr}}.detail-content{display:flex;flex-direction:column;gap:2rem}.content-section h2{font-size:1.5rem;margin-bottom:1rem}.description{font-size:1.0625rem;line-height:1.7;color:var(--color-text-secondary)}.details-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.detail-item{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;background:var(--color-bg-secondary);border-radius:.5rem}.detail-item svg{color:var(--color-primary);flex-shrink:0}.detail-item div{display:flex;flex-direction:column}.detail-item strong{font-size:.875rem;color:var(--color-text-muted)}.detail-item span{font-weight:600;color:var(--color-text)}.includes-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.includes-list li{display:flex;align-items:center;gap:.75rem;color:var(--color-text-secondary)}.includes-list svg{color:var(--color-primary);flex-shrink:0}.bring-list{padding-left:1.5rem;display:flex;flex-direction:column;gap:.5rem;color:var(--color-text-secondary)}.info-box{background:#fef3c7;border:1px solid #fcd34d;border-radius:.5rem;padding:1rem}.info-box p{margin:0 0 .75rem;font-size:.9375rem;color:#92400e}.info-box p:last-child{margin-bottom:0}.info-box strong{color:#78350f}.detail-sidebar{position:sticky;top:100px}.booking-card{background:#fff;border:1px solid var(--color-border);border-radius:1rem;overflow:hidden;box-shadow:var(--shadow-lg)}.booking-card-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem;border-bottom:1px solid var(--color-border)}.price-display{display:flex;align-items:baseline;gap:.25rem}.price-amount{font-size:1.75rem;font-weight:700;color:var(--color-primary)}.price-unit{color:var(--color-text-muted)}.action-buttons{display:flex;gap:.5rem}.icon-button{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-border);border-radius:.5rem;background:#fff;cursor:pointer;color:var(--color-text-secondary);transition:all .2s}.icon-button:hover{border-color:var(--color-primary);color:var(--color-primary)}.icon-button.active{background:#fef2f2;border-color:#fecaca}.booking-form{padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.booking-form .form-group{display:flex;flex-direction:column;gap:.375rem}.booking-form label{display:flex;align-items:center;gap:.375rem;font-size:.875rem;font-weight:500;color:var(--color-text-secondary)}.booking-form input,.booking-form select{padding:.75rem;border:1px solid var(--color-border);border-radius:.5rem;font-size:1rem}.booking-form input:focus,.booking-form select:focus{outline:none;border-color:var(--color-primary)}.price-breakdown{padding-top:1rem;border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:.5rem}.price-row{display:flex;justify-content:space-between;color:var(--color-text-secondary);font-size:.9375rem}.price-row.total{font-weight:600;color:var(--color-text);font-size:1.0625rem;padding-top:.5rem;margin-top:.5rem;border-top:1px solid var(--color-border)}.btn-block{width:100%}.booking-note{text-align:center;font-size:.8125rem;color:var(--color-text-muted);margin:0}.related-section{background:var(--color-bg-secondary)}.related-section h2{font-size:1.5rem;margin-bottom:1.5rem}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}@media (max-width: 768px){.related-grid,.details-grid{grid-template-columns:1fr}}.related-card{background:#fff;border-radius:.75rem;overflow:hidden;box-shadow:var(--shadow-sm);transition:transform .2s,box-shadow .2s}.related-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.related-card img{width:100%;height:180px;object-fit:cover}.related-content{padding:1rem}.related-content h3{font-size:1rem;margin:0 0 .25rem}.related-content p{font-size:.875rem;color:var(--color-text-muted);margin:0 0 .5rem}.related-price{font-weight:600;color:var(--color-primary)}.services-page{flex:1}.services-full-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-xl)}.service-full-card{background-color:var(--color-surface);border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-sm);transition:all var(--transition-normal)}.service-full-card:hover{box-shadow:var(--shadow-md)}.service-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.service-header .service-icon{font-size:2.5rem}.service-header h3{font-size:1.25rem;color:var(--color-text)}.service-description{color:var(--color-text-secondary);margin-bottom:var(--spacing-lg)}.service-items h4,.ai-capabilities h4{font-size:.875rem;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--spacing-sm)}.service-items ul{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-xs);margin-bottom:var(--spacing-lg)}.service-items li{font-size:.875rem;color:var(--color-text-secondary);padding:var(--spacing-xs) 0}.ai-capabilities{background-color:var(--color-bg-secondary);padding:var(--spacing-md);border-radius:var(--radius-md)}.ai-capabilities ul{display:flex;flex-direction:column;gap:var(--spacing-xs)}.ai-capabilities li{font-size:.8rem;color:var(--color-primary)}.ai-highlight-section{background-color:var(--color-bg-secondary);padding:var(--spacing-3xl) 0}.ai-highlight-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-2xl);align-items:center}.ai-highlight-text h2{font-size:2rem;margin-bottom:var(--spacing-md)}.ai-highlight-text>p{color:var(--color-text-secondary);margin-bottom:var(--spacing-lg)}.ai-features{margin-bottom:var(--spacing-lg)}.ai-features li{padding:var(--spacing-sm) 0;color:var(--color-text-secondary)}.ai-cta-text{font-weight:600;color:var(--color-primary)}.ai-highlight-visual{background-color:var(--color-surface);border-radius:var(--radius-xl);padding:var(--spacing-lg);box-shadow:var(--shadow-lg)}.mock-chat{display:flex;flex-direction:column;gap:var(--spacing-md)}.mock-message{padding:var(--spacing-md);border-radius:var(--radius-lg);font-size:.9rem;max-width:85%}.mock-message.assistant{background-color:var(--color-bg-secondary);color:var(--color-text);border-bottom-left-radius:var(--radius-sm)}.mock-message.user{background-color:var(--color-primary);color:#fff;align-self:flex-end;border-bottom-right-radius:var(--radius-sm)}.why-ai-section{background-color:var(--color-surface)}.ai-benefits-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-lg)}.ai-benefit{text-align:center;padding:var(--spacing-xl);background-color:var(--color-bg);border-radius:var(--radius-lg);transition:all var(--transition-normal)}.ai-benefit:hover{background-color:var(--color-bg-secondary);transform:translateY(-4px)}.benefit-icon{font-size:2.5rem;margin-bottom:var(--spacing-md)}.ai-benefit h3{margin-bottom:var(--spacing-sm)}.ai-benefit p{font-size:.9rem;color:var(--color-text-secondary)}.services-cta{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);padding:var(--spacing-3xl) 0;color:#fff}.services-cta .cta-content{text-align:center;max-width:600px;margin:0 auto}.services-cta h2{font-size:2rem;margin-bottom:var(--spacing-md)}.services-cta p{opacity:.9;margin-bottom:var(--spacing-xl)}.services-cta .cta-actions{display:flex;justify-content:center;gap:var(--spacing-md);flex-wrap:wrap}@media (max-width: 1024px){.services-full-grid{grid-template-columns:1fr}.ai-benefits-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.ai-highlight-content{grid-template-columns:1fr}.ai-highlight-visual{order:-1}.ai-benefits-grid,.service-items ul{grid-template-columns:1fr}}.transport-page{flex:1}.transport-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-xl)}.transport-card{display:flex;flex-direction:column}.transport-image-wrapper{position:relative;height:200px}.transport-image-wrapper .card-image{height:100%}.transport-type-badge{position:absolute;top:var(--spacing-md);left:var(--spacing-md);padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--color-surface);border-radius:var(--radius-full);font-size:.75rem;font-weight:600;color:var(--color-primary)}.transport-info{padding:var(--spacing-md) 0;border-bottom:1px solid var(--color-border);margin-bottom:var(--spacing-md)}.info-item{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--color-text-secondary);font-size:.9rem}.transport-features{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-bottom:var(--spacing-md)}.feature-tag{display:inline-flex;align-items:center;gap:4px;font-size:.75rem;padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--color-bg-secondary);border-radius:var(--radius-sm);color:var(--color-secondary)}.transport-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.guides-section{background-color:var(--color-bg-secondary);padding:var(--spacing-3xl) 0}.guides-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-xl)}.guide-card{display:grid;grid-template-columns:150px 1fr;gap:var(--spacing-lg);background-color:var(--color-surface);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm)}.guide-image{width:150px;height:150px;border-radius:var(--radius-lg);object-fit:cover}.guide-info h3{margin-bottom:var(--spacing-xs)}.guide-rating{font-size:.875rem;color:var(--color-accent);margin-bottom:var(--spacing-sm)}.guide-bio{font-size:.9rem;color:var(--color-text-secondary);margin-bottom:var(--spacing-md)}.guide-details{display:flex;gap:var(--spacing-lg);margin-bottom:var(--spacing-md)}.detail-group h4{font-size:.75rem;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--spacing-xs)}.tags{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.tag{font-size:.7rem;padding:2px 8px;background-color:var(--color-bg-secondary);border-radius:var(--radius-sm);color:var(--color-text-secondary)}.guide-certifications{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.guide-certifications .certification{font-size:.75rem;color:var(--color-primary)}.sgr-section{padding:var(--spacing-3xl) 0}.sgr-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-2xl);align-items:center}.sgr-text h2{font-size:2rem;margin-bottom:var(--spacing-md)}.sgr-text>p{color:var(--color-text-secondary);margin-bottom:var(--spacing-lg)}.sgr-features{margin-bottom:var(--spacing-lg)}.sgr-features li{padding:var(--spacing-sm) 0;color:var(--color-text-secondary)}.sgr-prices{display:flex;gap:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.sgr-price{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-md) var(--spacing-xl);background-color:var(--color-bg-secondary);border-radius:var(--radius-md)}.sgr-price .class{font-size:.875rem;color:var(--color-text-muted)}.sgr-price .amount{font-size:1.5rem;font-weight:700;color:var(--color-primary)}.sgr-image img{width:100%;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg)}@media (max-width: 1024px){.transport-grid,.guides-grid{grid-template-columns:1fr}.guide-card{grid-template-columns:1fr;text-align:center}.guide-image{margin:0 auto}.guide-details{justify-content:center}}@media (max-width: 768px){.sgr-content{grid-template-columns:1fr}.sgr-image{order:-1}.sgr-prices{justify-content:center}}.booking-page{flex:1}.booking-hero{min-height:35vh}.booking-section{padding:var(--spacing-2xl) 0 var(--spacing-3xl)}.booking-progress{display:flex;justify-content:center;gap:var(--spacing-xl);margin-bottom:var(--spacing-2xl)}.progress-step{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);position:relative}.progress-step:not(:last-child):after{content:"";position:absolute;top:20px;left:calc(100% + 10px);width:calc(var(--spacing-xl) - 20px);height:2px;background-color:var(--color-border)}.progress-step.active:not(:last-child):after{background-color:var(--color-primary)}.step-number{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;background-color:var(--color-border);color:var(--color-text-muted);transition:all var(--transition-normal)}.progress-step.active .step-number{background-color:var(--color-primary);color:#fff}.progress-step.current .step-number{box-shadow:0 0 0 4px #8b451333}.step-label{font-size:.875rem;color:var(--color-text-muted);font-weight:500}.progress-step.active .step-label{color:var(--color-text)}.booking-form-container{max-width:800px;margin:0 auto;background-color:var(--color-surface);border-radius:var(--radius-xl);padding:var(--spacing-2xl);box-shadow:var(--shadow-md)}.form-step h2{margin-bottom:var(--spacing-sm)}.step-description{color:var(--color-text-secondary);margin-bottom:var(--spacing-xl)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.form-group.full-width{grid-column:span 2}.form-textarea{resize:vertical;min-height:100px}.interests-grid{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.interest-btn{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--color-border);border-radius:var(--radius-full);font-size:.875rem;color:var(--color-text-secondary);background-color:var(--color-surface);transition:all var(--transition-fast);cursor:pointer}.interest-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.interest-btn.selected{border-color:var(--color-primary);background-color:var(--color-primary);color:#fff}.activities-selection{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.activity-option{display:grid;grid-template-columns:80px 1fr 30px;gap:var(--spacing-md);padding:var(--spacing-md);border:2px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast)}.activity-option:hover{border-color:var(--color-primary)}.activity-option.selected{border-color:var(--color-primary);background-color:#8b45130d}.activity-option img{width:80px;height:60px;border-radius:var(--radius-sm);object-fit:cover}.activity-option-content h4{font-size:.9rem;margin-bottom:2px}.activity-option-content p{font-size:.75rem;color:var(--color-text-muted);margin-bottom:4px}.activity-price{font-size:.875rem;font-weight:600;color:var(--color-primary)}.activity-checkbox{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:2px solid var(--color-border);border-radius:var(--radius-sm);margin:auto 0}.activity-option.selected .activity-checkbox{border-color:var(--color-primary);background-color:var(--color-primary);color:#fff}.form-notice{margin-top:var(--spacing-xl);padding:var(--spacing-md);background-color:var(--color-bg-secondary);border-radius:var(--radius-md)}.form-notice p{font-size:.875rem;color:var(--color-text-secondary);text-align:center}.form-actions{display:flex;justify-content:space-between;margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);border-top:1px solid var(--color-border)}.form-actions .btn:only-child{margin-left:auto}@media (max-width: 768px){.booking-progress{gap:var(--spacing-md)}.progress-step:not(:last-child):after{display:none}.step-label{display:none}.form-grid{grid-template-columns:1fr}.form-group.full-width{grid-column:1}.activities-selection{grid-template-columns:1fr}.booking-form-container{padding:var(--spacing-lg)}}.about-page{min-height:100vh}.about-hero{min-height:400px}.story-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.story-text h2{font-size:2.5rem;color:var(--color-primary);margin-bottom:1.5rem}.story-text p{font-size:1.1rem;color:#555;line-height:1.8;margin-bottom:1.5rem}.story-image img{width:100%;height:500px;object-fit:cover;border-radius:var(--border-radius);box-shadow:var(--shadow-lg)}.stats-section{background:var(--color-primary);padding:4rem 0;color:#fff}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;text-align:center}.stat-card{padding:2rem}.stat-card svg{color:var(--color-accent);margin-bottom:1rem}.stat-number{font-size:3rem;font-weight:700;margin-bottom:.5rem}.stat-label{font-size:1.1rem;opacity:.9}.values-section{background-color:#f9f6f1}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.value-card{background:#fff;padding:2.5rem;border-radius:var(--border-radius);box-shadow:var(--shadow-sm);text-align:center;transition:var(--transition)}.value-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)}.value-icon{font-size:3rem;margin-bottom:1.5rem}.value-card h3{font-size:1.3rem;color:var(--color-primary);margin-bottom:1rem}.value-card p{color:#666;line-height:1.6}.team-section{background:#fff}.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}.team-member{text-align:center;padding:2rem;background:#f9f9f9;border-radius:var(--border-radius);transition:var(--transition)}.team-member:hover{background:#fff;box-shadow:var(--shadow-md)}.team-member img{width:150px;height:150px;border-radius:50%;object-fit:cover;margin-bottom:1.5rem;border:4px solid var(--color-accent)}.team-member h3{font-size:1.2rem;color:var(--color-primary);margin-bottom:.5rem}.team-member .role{color:var(--color-accent);font-weight:600;margin-bottom:1rem}.team-member .bio{font-size:.9rem;color:#666;line-height:1.6}.certifications-section{background:#f9f6f1;padding:5rem 0}.certifications-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}.certification-card{background:#fff;padding:2rem;border-radius:var(--border-radius);text-align:center;box-shadow:var(--shadow-sm)}.cert-icon{font-size:3rem;display:block;margin-bottom:1rem}.certification-card h3{font-size:1.1rem;color:var(--color-primary);margin-bottom:.5rem}.certification-card p{font-size:.9rem;color:#666}.about-cta{background:linear-gradient(#8b4513e6,#8b4513e6),url(https://images.unsplash.com/photo-1523805009345-7448845a9e53?w=1600) center / cover;padding:5rem 0;text-align:center;color:#fff}.cta-content h2{font-size:2.5rem;margin-bottom:1rem}.cta-content p{font-size:1.2rem;margin-bottom:2rem;opacity:.9}.cta-actions{display:flex;gap:1rem;justify-content:center}@media (max-width: 1024px){.story-content{grid-template-columns:1fr;gap:2rem}.story-image{order:-1}.story-image img{height:350px}.stats-grid,.team-grid,.certifications-grid,.values-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.story-text h2{font-size:2rem}.stats-grid,.values-grid,.team-grid,.certifications-grid{grid-template-columns:1fr}.stat-number{font-size:2.5rem}.cta-content h2{font-size:1.8rem}.cta-actions{flex-direction:column;align-items:center}}.contact-page{min-height:100vh}.contact-hero{min-height:350px}.contact-info-section{margin-top:-80px;position:relative;z-index:10;padding-bottom:3rem}.contact-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.contact-card{background:#fff;padding:2rem;border-radius:var(--border-radius);box-shadow:var(--shadow-lg);text-align:center;transition:var(--transition)}.contact-card:hover{transform:translateY(-5px)}.contact-icon{width:70px;height:70px;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;color:#fff}.contact-card h3{color:var(--color-primary);margin-bottom:1rem;font-size:1.2rem}.contact-card p{color:#666;font-size:.95rem;margin-bottom:.3rem}.contact-main{display:grid;grid-template-columns:1fr 400px;gap:3rem;align-items:start}.contact-form-wrapper{background:#fff;padding:3rem;border-radius:var(--border-radius);box-shadow:var(--shadow-md)}.contact-form-wrapper h2{color:var(--color-primary);font-size:2rem;margin-bottom:.5rem}.contact-form-wrapper>p{color:#666;margin-bottom:2rem}.contact-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.contact-form .form-group{margin-bottom:1.5rem}.contact-form label{display:block;margin-bottom:.5rem;font-weight:600;color:#333}.contact-form input,.contact-form select,.contact-form textarea{width:100%;padding:.875rem 1rem;border:2px solid #e0e0e0;border-radius:var(--border-radius);font-size:1rem;transition:var(--transition)}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #8b45131a}.contact-form textarea{resize:vertical}.submit-btn{display:flex;align-items:center;gap:.5rem;width:100%;justify-content:center}.success-message{text-align:center;padding:3rem 2rem}.success-icon{width:80px;height:80px;background:#4caf50;color:#fff;font-size:2.5rem;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem}.success-message h3{color:var(--color-primary);font-size:1.8rem;margin-bottom:1rem}.success-message p{color:#666;margin-bottom:2rem}.contact-sidebar{display:flex;flex-direction:column;gap:1.5rem}.map-container{border-radius:var(--border-radius);overflow:hidden;box-shadow:var(--shadow-md)}.quick-actions{background:#fff;padding:1.5rem;border-radius:var(--border-radius);box-shadow:var(--shadow-md)}.quick-actions h3{color:var(--color-primary);margin-bottom:1rem;font-size:1.1rem}.quick-action{display:flex;align-items:center;gap:1rem;padding:1rem;border-radius:var(--border-radius);text-decoration:none;margin-bottom:.75rem;transition:var(--transition)}.quick-action:last-child{margin-bottom:0}.quick-action:hover{transform:translate(5px)}.quick-action.whatsapp{background:#25d366;color:#fff}.quick-action.phone{background:var(--color-primary);color:#fff}.quick-action.email{background:var(--color-accent);color:#fff}.quick-action strong{display:block;font-size:.95rem}.quick-action span{font-size:.85rem;opacity:.9}.social-connect{background:#fff;padding:1.5rem;border-radius:var(--border-radius);box-shadow:var(--shadow-md)}.social-connect h3{color:var(--color-primary);margin-bottom:1rem;font-size:1.1rem}.social-links{display:flex;flex-wrap:wrap;gap:.5rem}.social-link{padding:.5rem 1rem;border-radius:20px;font-size:.85rem;font-weight:600;text-decoration:none;color:#fff;transition:var(--transition)}.social-link:hover{transform:scale(1.05)}.social-link.facebook{background:#1877f2}.social-link.instagram{background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888)}.social-link.twitter{background:#1da1f2}.social-link.youtube{background:red}.social-link.linkedin{background:#0a66c2}.faq-teaser{background:#f9f6f1;padding:4rem 0}.faq-content{text-align:center}.faq-content h2{color:var(--color-primary);font-size:2rem;margin-bottom:.5rem}.faq-content>p{color:#666;margin-bottom:2rem}.faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;max-width:900px;margin:0 auto;text-align:left}.faq-item{background:#fff;padding:1.5rem;border-radius:var(--border-radius);box-shadow:var(--shadow-sm)}.faq-item strong{color:var(--color-primary);display:block;margin-bottom:.5rem}.faq-item p{color:#666;font-size:.95rem;margin:0}@media (max-width: 1024px){.contact-cards{grid-template-columns:repeat(2,1fr)}.contact-main{grid-template-columns:1fr}.contact-sidebar{order:-1}}@media (max-width: 768px){.contact-cards{grid-template-columns:1fr}.contact-info-section{margin-top:-40px}.contact-form-wrapper{padding:2rem}.contact-form .form-row{grid-template-columns:1fr;gap:0}.faq-grid{grid-template-columns:1fr}}.dashboard-page{min-height:100vh;background:var(--color-bg-secondary)}.not-authenticated{min-height:60vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.not-authenticated svg{color:var(--color-text-muted);opacity:.3;margin-bottom:1.5rem}.not-authenticated h1{margin:0 0 .5rem}.not-authenticated p{color:var(--color-text-muted);margin-bottom:1.5rem}.dashboard-header{background:var(--color-primary);color:#fff;padding:3rem 0}.header-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:2rem}.user-info{display:flex;align-items:center;gap:1rem}.user-avatar-large{width:64px;height:64px;border-radius:50%;background:#fff3;display:flex;align-items:center;justify-content:center;overflow:hidden}.user-avatar-large img{width:100%;height:100%;object-fit:cover}.user-info h1{margin:0;font-size:1.5rem}.user-info p{margin:.25rem 0 0;opacity:.8}.header-stats{display:flex;gap:2rem}.stat-item{text-align:center}.stat-item strong{display:block;font-size:1.5rem;font-weight:700}.stat-item span{font-size:.875rem;opacity:.8}.dashboard-main{padding:2rem 0 4rem}.dashboard-layout{display:grid;grid-template-columns:240px 1fr;gap:2rem;align-items:start}@media (max-width: 768px){.dashboard-layout{grid-template-columns:1fr}}.dashboard-sidebar{background:#fff;border-radius:.75rem;padding:1rem;box-shadow:var(--shadow-sm);position:sticky;top:100px}.dashboard-nav{display:flex;flex-direction:column;gap:.25rem}.nav-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border:none;background:none;border-radius:.5rem;font-size:.9375rem;font-weight:500;color:var(--color-text-secondary);cursor:pointer;transition:all .2s;text-align:left;width:100%}.nav-item:hover{background:var(--color-bg-secondary);color:var(--color-primary)}.nav-item.active{background:var(--color-primary);color:#fff}.nav-item.logout{color:#dc2626}.nav-item.logout:hover{background:#fef2f2}.nav-divider{height:1px;background:var(--color-border);margin:.5rem 0}.dashboard-content{background:#fff;border-radius:.75rem;padding:2rem;box-shadow:var(--shadow-sm);min-height:500px}.tab-content h2{margin:0 0 1.5rem;font-size:1.5rem}.overview-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:2rem}@media (max-width: 640px){.overview-cards{grid-template-columns:1fr}}.overview-card{display:flex;align-items:center;gap:1rem;padding:1.25rem;background:var(--color-bg-secondary);border-radius:.75rem;transition:transform .2s}.overview-card:hover{transform:translateY(-2px)}.card-icon{width:48px;height:48px;border-radius:.5rem;background:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.card-content{flex:1}.card-content h3{margin:0 0 .25rem;font-size:.875rem;color:var(--color-text-muted);font-weight:500}.trip-name{font-weight:600;color:var(--color-text);margin:0 0 .25rem}.trip-date{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;color:var(--color-text-muted);margin:0}.no-trips{color:var(--color-text-muted);font-style:italic}.recent-section h3{margin:0 0 1rem;font-size:1.125rem}.bookings-list{display:flex;flex-direction:column;gap:1rem}.booking-item{display:flex;align-items:center;gap:1rem;padding:1rem;border:1px solid var(--color-border);border-radius:.75rem;transition:border-color .2s}.booking-item:hover{border-color:var(--color-primary)}.booking-item img{width:80px;height:60px;object-fit:cover;border-radius:.5rem}.booking-details{flex:1}.booking-details h4{margin:0 0 .25rem;font-size:1rem}.booking-details p{display:flex;align-items:center;gap:.25rem;margin:0;font-size:.875rem;color:var(--color-text-muted)}.booking-status{text-align:right}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500;color:#fff;text-transform:capitalize}.booking-total{display:block;margin-top:.25rem;font-weight:600;color:var(--color-text)}.bookings-full-list{display:flex;flex-direction:column;gap:1.5rem}.booking-card-full{display:flex;gap:1.5rem;padding:1.5rem;border:1px solid var(--color-border);border-radius:.75rem}@media (max-width: 640px){.booking-card-full{flex-direction:column}}.booking-card-full img{width:200px;height:150px;object-fit:cover;border-radius:.5rem;flex-shrink:0}@media (max-width: 640px){.booking-card-full img{width:100%}}.booking-info{flex:1;display:flex;flex-direction:column}.booking-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.booking-header h3{margin:0;font-size:1.125rem}.booking-meta{display:flex;gap:1.5rem;color:var(--color-text-muted);font-size:.9375rem;margin-bottom:1rem}.booking-meta span{display:flex;align-items:center;gap:.375rem}.booking-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:1rem;border-top:1px solid var(--color-border)}.booking-total-large{font-size:1.0625rem;color:var(--color-text-secondary)}.booking-total-large strong{color:var(--color-primary);font-size:1.25rem}.booking-actions{display:flex;gap:.5rem}.favorites-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.favorite-card{background:#fff;border:1px solid var(--color-border);border-radius:.75rem;overflow:hidden;transition:transform .2s,box-shadow .2s}.favorite-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.favorite-card img{width:100%;height:160px;object-fit:cover}.favorite-content{padding:1rem}.favorite-type{display:inline-block;padding:.125rem .5rem;background:var(--color-bg-secondary);border-radius:9999px;font-size:.75rem;font-weight:500;color:var(--color-text-muted);margin-bottom:.5rem}.favorite-content h3{margin:0 0 .25rem;font-size:1rem}.favorite-content p{margin:0 0 .5rem;font-size:.875rem;color:var(--color-text-muted)}.favorite-price{font-weight:600;color:var(--color-primary)}.empty-state{text-align:center;padding:2rem}.empty-state.large{padding:4rem 2rem}.empty-state svg{color:var(--color-text-muted);opacity:.3;margin-bottom:1rem}.empty-state h3{margin:0 0 .5rem}.empty-state p{color:var(--color-text-muted);margin:0 0 1.5rem}.settings-section{margin-bottom:2rem}.settings-section h3{margin:0 0 1rem;font-size:1.125rem}.profile-form{display:flex;flex-direction:column;gap:1.25rem;max-width:500px}.profile-form .form-group{display:flex;flex-direction:column;gap:.375rem}.profile-form label{font-size:.875rem;font-weight:500;color:var(--color-text-secondary)}.profile-form input{padding:.75rem;border:1px solid var(--color-border);border-radius:.5rem;font-size:1rem}.profile-form input:focus{outline:none;border-color:var(--color-primary)}.form-value{padding:.75rem;background:var(--color-bg-secondary);border-radius:.5rem;color:var(--color-text)}.form-hint{font-size:.8125rem;color:var(--color-text-muted)}.form-actions{display:flex;gap:.75rem;padding-top:.5rem}.danger-zone{padding:1.5rem;background:#fef2f2;border:1px solid #fecaca;border-radius:.75rem}.danger-zone h3{color:#991b1b}.danger-zone p{color:#b91c1c;margin:0 0 1rem;font-size:.9375rem}.btn-danger{background:#dc2626;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:500;cursor:pointer;transition:background .2s}.btn-danger:hover{background:#b91c1c}.app{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;margin-top:80px}.clickable-card{display:block;text-decoration:none;color:inherit;transition:transform .2s ease,box-shadow .2s ease}.clickable-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #00000026}.clickable-card:focus{outline:2px solid var(--color-primary);outline-offset:2px}.page-enter{opacity:0;transform:translateY(20px)}.page-enter-active{opacity:1;transform:translateY(0);transition:opacity .3s ease,transform .3s ease}.page-exit{opacity:1}.page-exit-active{opacity:0;transition:opacity .3s ease}:root{--color-primary: #8B4513;--color-primary-dark: #6B3410;--color-primary-light: #A0522D;--color-secondary: #228B22;--color-secondary-dark: #1a6b1a;--color-accent: #DAA520;--color-accent-light: #FFD700;--color-bg: #FDF8F3;--color-bg-secondary: #F5EDE4;--color-surface: #FFFFFF;--color-text: #2C1810;--color-text-secondary: #5C4033;--color-text-muted: #8B7355;--color-border: #D4C4B5;--color-success: #228B22;--color-warning: #DAA520;--color-error: #CD5C5C;--color-info: #4682B4;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .15);--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .35s ease}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth}body{font-family:Segoe UI,system-ui,-apple-system,sans-serif;background-color:var(--color-bg);color:var(--color-text);line-height:1.6}#root{min-height:100vh;display:flex;flex-direction:column}a{text-decoration:none;color:inherit}button{font-family:inherit;cursor:pointer;border:none;background:none}img{max-width:100%;height:auto;display:block}ul,ol{list-style:none}.container{max-width:1280px;margin:0 auto;padding:0 var(--spacing-lg)}.section{padding:var(--spacing-3xl) 0}.text-center{text-align:center}.text-primary{color:var(--color-primary)}.text-secondary{color:var(--color-secondary)}.text-accent{color:var(--color-accent)}.text-muted{color:var(--color-text-muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);font-weight:600;font-size:1rem;transition:all var(--transition-normal)}.btn-primary{background-color:var(--color-primary);color:#fff}.btn-primary:hover{background-color:var(--color-primary-dark);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-secondary{background-color:var(--color-secondary);color:#fff}.btn-secondary:hover{background-color:var(--color-secondary-dark);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-outline{background-color:transparent;border:2px solid var(--color-primary);color:var(--color-primary)}.btn-outline:hover{background-color:var(--color-primary);color:#fff}.btn-accent{background-color:var(--color-accent);color:var(--color-text)}.btn-accent:hover{background-color:var(--color-accent-light);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-lg{padding:var(--spacing-md) var(--spacing-xl);font-size:1.125rem}.btn-sm{padding:var(--spacing-xs) var(--spacing-md);font-size:.875rem}.card{background-color:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden;transition:all var(--transition-normal)}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.card-image{width:100%;height:200px;object-fit:cover}.card-content{padding:var(--spacing-lg)}.card-title{font-size:1.25rem;font-weight:700;margin-bottom:var(--spacing-sm);color:var(--color-text)}.card-description{color:var(--color-text-secondary);margin-bottom:var(--spacing-md)}.grid{display:grid;gap:var(--spacing-lg)}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media (max-width: 1024px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.grid-4,.grid-3,.grid-2{grid-template-columns:1fr}}.badge{display:inline-flex;align-items:center;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full);font-size:.75rem;font-weight:600}.badge-primary{background-color:var(--color-primary);color:#fff}.badge-secondary{background-color:var(--color-secondary);color:#fff}.badge-accent{background-color:var(--color-accent);color:var(--color-text)}.badge-outline{background-color:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary)}.form-group{margin-bottom:var(--spacing-md)}.form-label{display:block;margin-bottom:var(--spacing-xs);font-weight:600;color:var(--color-text)}.form-input,.form-select,.form-textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--color-border);border-radius:var(--radius-md);font-size:1rem;transition:border-color var(--transition-fast);background-color:var(--color-surface)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--color-primary)}.price{font-size:1.5rem;font-weight:700;color:var(--color-primary)}.price-unit{font-size:.875rem;font-weight:400;color:var(--color-text-muted)}.rating{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--color-accent)}.feature-list{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.feature-item{display:flex;align-items:center;gap:var(--spacing-xs);font-size:.875rem;color:var(--color-text-secondary)}.feature-item svg{color:var(--color-secondary)}.spinner{width:40px;height:40px;border:4px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.hero{position:relative;min-height:80vh;display:flex;align-items:center;justify-content:center;background-size:cover;background-position:center;color:#fff}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,#2c181099,#2c1810cc)}.hero-content{position:relative;z-index:1;text-align:center;max-width:800px;padding:var(--spacing-xl)}.hero-title{font-size:3.5rem;font-weight:800;margin-bottom:var(--spacing-md);line-height:1.1}.hero-subtitle{font-size:1.25rem;margin-bottom:var(--spacing-xl);opacity:.9}@media (max-width: 768px){.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1rem}}.section-header{text-align:center;margin-bottom:var(--spacing-2xl)}.section-title{font-size:2.5rem;font-weight:800;color:var(--color-text);margin-bottom:var(--spacing-sm)}.section-subtitle{font-size:1.125rem;color:var(--color-text-secondary);max-width:600px;margin:0 auto}.chat-widget{position:fixed;bottom:var(--spacing-lg);right:var(--spacing-lg);z-index:1000}.chat-toggle{width:60px;height:60px;border-radius:50%;background-color:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg);transition:all var(--transition-normal)}.chat-toggle:hover{background-color:var(--color-primary-dark);transform:scale(1.05)}.chat-window{position:absolute;bottom:80px;right:0;width:380px;height:500px;background-color:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);display:flex;flex-direction:column;overflow:hidden}.chat-header{background-color:var(--color-primary);color:#fff;padding:var(--spacing-md);display:flex;align-items:center;justify-content:space-between}.chat-messages{flex:1;overflow-y:auto;padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm)}.chat-message{max-width:80%;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-lg);font-size:.9rem}.chat-message.user{align-self:flex-end;background-color:var(--color-primary);color:#fff;border-bottom-right-radius:var(--radius-sm)}.chat-message.assistant{align-self:flex-start;background-color:var(--color-bg-secondary);color:var(--color-text);border-bottom-left-radius:var(--radius-sm)}.chat-input-area{padding:var(--spacing-md);border-top:1px solid var(--color-border);display:flex;gap:var(--spacing-sm)}.chat-input{flex:1;padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--color-border);border-radius:var(--radius-full);font-size:.9rem}.chat-input:focus{outline:none;border-color:var(--color-primary)}.chat-send{width:40px;height:40px;border-radius:50%;background-color:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;transition:background-color var(--transition-fast)}.chat-send:hover{background-color:var(--color-primary-dark)}@media (max-width: 480px){.chat-window{width:calc(100vw - 32px);right:-8px;height:60vh}}
