.header{position:relative!important;width:100%;background:linear-gradient(135deg,var(--whale-dark) 0%,var(--ocean-deep) 100%);border-bottom:1px solid rgba(255,255,255,.08);box-shadow:0 8px 20px #00000059;overflow:visible}.header-container{max-width:100%;margin:0 auto;padding:1.25rem 1.5rem 1.1rem;display:grid;grid-template-columns:160px 1fr 160px;align-items:center;gap:2rem;width:100%;position:relative;min-height:340px}.header-balancer{grid-column:1;width:160px;justify-self:start}.header-center-group{position:static;transform:none;grid-column:2;justify-self:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.55rem;width:max-content}.logo{display:flex;align-items:center;gap:var(--spacing-md);justify-content:center;cursor:pointer;flex-shrink:0;transition:all var(--transition-base);-webkit-user-select:none;user-select:none;outline:none}.logo:hover,.logo:focus{transform:scale(1.02)}.logo-img{width:320px;height:320px;object-fit:contain;border-radius:0;background:none;padding:0;box-shadow:none;transform:scale(1.42);transform-origin:center;transition:all var(--transition-base)}.logo:hover .logo-img{box-shadow:none}.logo-text{font-size:var(--text-lg);font-weight:700;margin:0;padding:0;color:#f9fafb;letter-spacing:-.5px;display:inline-flex}.logo:hover .logo-text{color:var(--accent-gold)}.header-centered-text{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:clamp(1.1rem,1.5vw,1.5rem);font-weight:700;color:#f9fafb;letter-spacing:-.5px;white-space:nowrap;pointer-events:none}.header-cta-buttons{grid-column:3;justify-self:end;display:flex;flex-direction:column;gap:8px;align-items:flex-end;justify-content:center;flex-shrink:0;overflow:visible;width:160px;min-width:160px}.header-cta-btn{padding:14px 28px;border-radius:var(--radius-lg);font-weight:700;font-size:.95rem;display:flex;align-items:center;justify-content:center;transition:all var(--transition-base);border:none;cursor:pointer;white-space:nowrap;text-decoration:none;width:160px;height:50px;flex-shrink:0;margin:0}.header-cta-btn+.header-cta-btn{margin-top:8px}.header-cta-btn.primary{background:linear-gradient(135deg,var(--accent-gold),var(--accent-sunset));color:var(--primary-dark);box-shadow:0 4px 12px #1ba4c84d}.header-cta-btn.primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #1ba4c873}.header-cta-btn.secondary{background:#ffffff14;color:#fff;border:1px solid rgba(255,255,255,.2)}.header-cta-btn.secondary:hover{background:#ffffff26;border-color:#ffffff59;transform:translateY(-2px)}.nav{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:nowrap}.nav-link{background:transparent;color:#ffffffc7;padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);font-weight:600;font-size:.98rem;display:inline-flex;align-items:center;gap:var(--spacing-sm);transition:all var(--transition-base);border:none;cursor:pointer;white-space:nowrap;position:relative}.nav-link:after{content:"";position:absolute;bottom:0;left:50%;width:0;height:2px;background:linear-gradient(90deg,var(--accent-gold),var(--accent-sunset));transition:all var(--transition-base);transform:translate(-50%)}.nav-link:hover{color:#fff;transform:translateY(-1px)}.nav-link:hover:after{width:80%}.nav-link.active{color:var(--accent-gold);font-weight:700}.nav-link.active:after{width:80%}.header-right{display:flex;align-items:center;gap:var(--spacing-lg)}.contact-link{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-lg);background:#ffffff0f;color:#f9fafb;text-decoration:none;font-weight:600;font-size:var(--text-sm);transition:all var(--transition-base);border:1px solid rgba(255,255,255,.14)}.contact-link:hover{background:#ffffff1f;border-color:#2cc3df8c;transform:translateY(-2px);box-shadow:0 8px 20px #00000059}.phone-icon{font-size:1rem;display:inline-flex;align-items:center}.mobile-menu-btn{background:transparent;color:#fff;padding:var(--spacing-sm);border:none;cursor:pointer;display:flex;flex-direction:column;gap:4px;z-index:1000;flex-shrink:0}.hamburger{display:flex;flex-direction:column;gap:4px;width:24px;height:20px}.hamburger span{width:100%;height:2.5px;background:#fff;border-radius:1px;transition:all var(--transition-base)}.hamburger.active span:nth-child(1){transform:rotate(45deg) translate(8px,8px);background:var(--accent-gold)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-8px);background:var(--accent-gold)}.mobile-nav{display:flex;flex-direction:column;background:#0b0b0ffa;border-top:1px solid rgba(255,255,255,.08);padding:var(--spacing-lg) var(--spacing-md);gap:var(--spacing-sm);animation:slideDown .3s cubic-bezier(.4,0,.2,1)}@keyframes slideDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.mobile-nav-link{background:transparent;color:#ffffffc7;padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-lg);font-weight:600;font-size:var(--text-base);display:flex;align-items:center;gap:var(--spacing-md);transition:all var(--transition-base);border:none;width:100%;text-align:left;cursor:pointer}.mobile-nav-link:hover{background:#ffffff14;color:#fff;padding-left:calc(var(--spacing-lg) + var(--spacing-md))}.mobile-nav-link.active{background:#2cc3df1f;color:var(--accent-gold);border-left:3px solid var(--accent-gold);padding-left:calc(var(--spacing-lg) - 3px)}.nav-icon{font-size:1.25rem;display:inline-flex;align-items:center}.mobile-cta{display:flex;flex-direction:column;gap:var(--spacing-md);margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid rgba(255,255,255,.08)}.btn-mobile{width:100%;padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-lg);font-weight:700;font-size:var(--text-base);border:none;cursor:pointer;transition:all var(--transition-base);text-align:center;text-decoration:none;display:block}.btn-primary-mobile{background:linear-gradient(135deg,var(--accent-gold) 0%,var(--accent-sunset) 100%);color:#fff;box-shadow:0 4px 12px #d9770633}.btn-primary-mobile:active{transform:scale(.98);box-shadow:0 2px 6px #d9770626}.btn-secondary-mobile{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.35)}.btn-secondary-mobile:hover{border-color:#2cc3dfb3;color:var(--accent-gold)}.hide-mobile{display:block}.hide-desktop{display:none}@media (max-width: 1024px){.header-container{grid-template-columns:140px 1fr 140px;gap:var(--spacing-md);min-height:300px}.header-balancer{width:140px}.header-center-group{gap:.45rem}.logo-img{width:270px;height:270px;transform:scale(1.38)}.nav{gap:var(--spacing-sm)}.nav-link{padding:var(--spacing-sm) var(--spacing-md);font-size:clamp(.75rem,.9vw,.85rem)}.header-cta-buttons{gap:22px;width:140px;min-width:140px}.header-cta-btn{padding:clamp(10px,1vw,14px) clamp(20px,1.8vw,28px);font-size:clamp(.8rem,1vw,.95rem);width:140px;height:44px}}@media (max-width: 1200px){.header-centered-text{font-size:clamp(.95rem,1.2vw,1.3rem)}}@media (max-width: 768px){.hide-mobile{display:none!important}.hide-desktop{display:block!important}.header-container{display:flex;padding:.75rem 1rem;gap:1rem;justify-content:space-between;min-height:150px}.logo-img{width:210px;height:210px;transform:scale(1.34)}.logo-text{display:none}.header-cta-buttons{display:none!important}}@media (max-width: 480px){.header-container{padding:.75rem;gap:.75rem;min-height:120px}.logo-img{width:176px;height:176px;transform:scale(1.32)}.header-cta-buttons{gap:4px}.header-cta-btn{width:110px;height:38px;padding:8px 16px;font-size:.75rem}.header-cta-btn+.header-cta-btn{margin-top:4px}}@media (max-width: 320px){.header-container{padding:.5rem}.logo-img{width:124px;height:124px;transform:scale(1.28)}.header-cta-btn{width:90px;height:34px;padding:6px 12px;font-size:.65rem}.header-cta-buttons{gap:2px}.header-cta-btn+.header-cta-btn{margin-top:2px}}.hero{position:relative;min-height:30vh;height:auto;background-image:linear-gradient(120deg,#fffffff5,#ffffffe0),url(data:image/jpeg;base64,PGJpbmFyeSBwbGFjZWhvbGRlcj4=);background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--ink-deep);overflow:hidden;padding:2rem;margin-top:0;z-index:1;color:var(--brand-highlight)}.hero-content{z-index:2;max-width:640px;padding:0;margin:0 auto;animation:slideUp .8s ease}.hero h1{font-size:clamp(2rem,3.5vw,2.8rem);margin-bottom:var(--spacing-md);font-weight:700;line-height:1.15;letter-spacing:-.5px;color:var(--primary-light)}.hero p:not(.hero-tagline){font-size:var(--text-lg);margin-bottom:var(--spacing-xl);opacity:.9;font-weight:400;color:#10263fd1}.hero-tagline{font-size:var(--text-xl);font-weight:600;margin-bottom:var(--spacing-lg);opacity:1;color:var(--ink-deep)!important;letter-spacing:.3px;text-shadow:0 2px 10px rgba(255,255,255,.35);line-height:1.45}.hero-cta{display:flex;gap:16px;margin-top:24px;flex-wrap:wrap;justify-content:center}.hero-btn{padding:14px 32px;font-size:1rem;font-weight:700;border-radius:8px;text-decoration:none;transition:all .3s ease;border:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.hero-btn.primary{background:linear-gradient(135deg,var(--brand-highlight) 0%,var(--brand-accent) 100%);color:var(--ink-deep);box-shadow:0 4px 15px #2cc3df66}.hero-btn.primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #2cc3df80}.hero-btn.secondary{background:#06162d0a;color:var(--ink-deep);border:2px solid rgba(6,22,45,.25);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.hero-btn.secondary:hover{background:#06162d14;border-color:#06162d66}.hero-buttons{display:flex;gap:var(--spacing-md);justify-content:center;flex-wrap:wrap}.hero-buttons .cta-btn{text-decoration:none;display:inline-block;line-height:1.5;text-align:center}.hero-buttons a.cta-btn:hover{text-decoration:none}.cta-btn{padding:14px 36px;font-size:var(--text-base);border-radius:var(--radius-lg);font-weight:700;transition:all var(--transition-base);border:none;cursor:pointer;letter-spacing:.2px}.cta-btn.primary{background:linear-gradient(135deg,var(--accent-gold) 0%,var(--accent-sunset) 100%);color:#0b0b0f;box-shadow:0 10px 24px #2cc3df59;border:none}.cta-btn.primary:hover{transform:translateY(-3px);box-shadow:0 14px 36px #2cc3df73}.cta-btn.secondary{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.5)}.cta-btn.secondary:hover{background:#ffffff14;transform:translateY(-3px)}.cta-btn.whatsapp{background:transparent;color:#25d366;border:1px solid rgba(37,211,102,.6);box-shadow:none}.cta-btn.whatsapp:hover{transform:translateY(-3px);background:#25d36614}.hero-background{position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 30%,rgba(44,195,223,.08),transparent 50%)}@media (max-width: 1200px){.hero{min-height:65vh;padding:clamp(2rem,3.5vw,3rem) clamp(1rem,3.5vw,2rem);margin-top:0}.hero h1{font-size:clamp(1.8rem,3.2vw,2.6rem)}.hero-tagline{font-size:clamp(1.1rem,2vw,1.3rem)}}@media (max-width: 768px){.hero{min-height:55vh;padding:clamp(1.5rem,3vw,2.5rem) clamp(.75rem,3vw,1.5rem);margin-top:0;text-align:center}.hero-content{padding:0;max-width:100%}.hero h1{font-size:clamp(1.5rem,5.5vw,2.2rem);margin-bottom:var(--spacing-sm);line-height:1.2}.hero-tagline{font-size:clamp(.9rem,1.8vw,1.1rem);margin-bottom:var(--spacing-md);line-height:1.4}.hero p{font-size:clamp(.75rem,1.2vw,.95rem);margin-bottom:var(--spacing-lg)}.hero-buttons{flex-direction:column;gap:var(--spacing-sm)}.cta-btn{width:100%;max-width:100%;padding:clamp(10px,2vw,12px) clamp(20px,3vw,28px);font-size:clamp(.7rem,1vw,.85rem)}}@media (max-width: 480px){.hero{min-height:50vh;padding:clamp(1.5rem,2.5vw,2rem) clamp(.75rem,2.5vw,1rem);margin-top:0}.hero-content{padding:0}.hero h1{font-size:clamp(1.3rem,5vw,1.8rem);margin-bottom:var(--spacing-sm)}.hero-tagline{font-size:clamp(.8rem,1.5vw,.95rem);margin-bottom:var(--spacing-md)}.hero p{font-size:clamp(.7rem,1vw,.85rem);margin-bottom:var(--spacing-md)}.cta-btn{padding:10px 20px;font-size:.75rem}}@media (max-width: 320px){.hero{min-height:45vh;padding:1.2rem .75rem;margin-top:0}.hero h1{font-size:1.2rem}.hero-tagline{font-size:.8rem}.hero p{font-size:.65rem}.cta-btn{padding:8px 16px;font-size:.65rem}}.carousel-container{width:100%;margin:0;overflow:hidden;position:relative;z-index:1}.carousel-container .carousel-wrapper{position:relative;width:100%;padding-bottom:42.34%;overflow:hidden}.carousel-container .carousel-slides{position:absolute;top:0;left:0;width:100%;height:100%}.carousel-container .carousel-slide{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;transition:opacity .8s ease-in-out;display:flex;align-items:center;justify-content:center}.carousel-container .carousel-slide.active{opacity:1;z-index:10}.carousel-container .carousel-image{width:100%;height:100%;object-fit:cover;display:block}.carousel-container .carousel-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(to bottom,#0000001a,#0000004d,#0009);z-index:5}.carousel-container .carousel-caption{position:absolute;top:0;bottom:0;left:0;right:0;padding:3rem;background:linear-gradient(to top,rgba(0,0,0,.9) 0%,rgba(0,0,0,.6) 70%,transparent 100%);color:#fff;z-index:6;text-align:center;display:flex;flex-direction:column;gap:1rem;align-items:center;justify-content:center}.carousel-container .carousel-caption h3{margin:0;font-size:clamp(1.17rem,1.56vw + .52rem,1.5rem);font-weight:700;text-shadow:0 1px 6px rgba(0,0,0,.6);line-height:1.6;color:#fffffff2;max-width:min(70%,760px)}.carousel-container .carousel-description{margin:0;font-size:clamp(1.17rem,1.56vw + .46rem,1.5rem);line-height:1.6;color:#fffffff2;text-shadow:0 1px 4px rgba(0,0,0,.8);max-width:min(70%,760px)}.carousel-container .carousel-book-btn{display:inline-block;padding:12px 32px;background:linear-gradient(135deg,var(--brand-highlight) 0%,var(--brand-accent) 100%);color:#fff;text-decoration:none;border-radius:6px;font-weight:700;font-size:1rem;transition:all .3s ease;box-shadow:0 4px 15px #2cc3df66;align-self:flex-start;text-transform:uppercase;letter-spacing:.5px}.carousel-container .carousel-book-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #2cc3df99;background:linear-gradient(135deg,var(--brand-accent) 0%,var(--brand-accent-dark) 100%)}.carousel-container .carousel-nav{position:absolute;top:50%;transform:translateY(-50%);background:#ffffff4d;color:#fff;border:none;width:clamp(36px,4vw,50px);height:clamp(36px,4vw,50px);border-radius:50%;font-size:clamp(1rem,2vw,1.5rem);cursor:pointer;z-index:20;transition:all .3s ease;display:flex;align-items:center;justify-content:center;line-height:1;padding:0}.carousel-container .carousel-nav:hover{background:#fff9;transform:translateY(-50%) scale(1.1)}.carousel-container .carousel-nav-prev{left:1rem}.carousel-container .carousel-nav-next{right:1rem}.carousel-indicators{position:absolute;bottom:1rem;left:50%;transform:translate(-50%);display:flex;gap:.5rem;z-index:20}.indicator{width:12px;height:12px;border-radius:50%;background:#fff6;border:none;cursor:pointer;transition:all .3s ease;padding:0}.indicator.active{background:#fff;width:14px;height:14px}.indicator:hover{background:#ffffffb3}.carousel-autoplay-btn{position:absolute;top:1rem;right:1rem;background:#00000080;color:#fff;border:1px solid rgba(255,255,255,.3);width:40px;height:40px;border-radius:50%;font-size:1rem;cursor:pointer;z-index:20;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.carousel-autoplay-btn:hover{background:#000c;border-color:#fff9}@media (max-width: 768px){.carousel-container{margin-top:0;width:100%}.carousel-wrapper{padding-bottom:100.8%;width:100%}.carousel-caption{padding:1.2rem 1rem;gap:.5rem;text-align:center;align-items:center;justify-content:center}.carousel-caption h3{font-size:clamp(1.04rem,2.86vw + .26rem,1.24rem);line-height:1.3}.carousel-description{font-size:clamp(1.04rem,2.86vw + .26rem,1.24rem);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.carousel-book-btn{display:none}.carousel-container .carousel-nav{width:40px;height:40px;font-size:1.2rem;background:#000000b3}.carousel-container .carousel-nav-prev{left:8px}.carousel-container .carousel-nav-next{right:8px}.carousel-indicators{bottom:8px;gap:6px}.carousel-indicator{width:8px;height:8px}.indicator{width:10px;height:10px}.indicator.active{width:12px;height:12px}}@media (max-width: 480px){.carousel-wrapper{padding-bottom:84%;width:100%}.carousel-caption{padding:1rem .8rem;gap:.4rem}.carousel-caption h3{font-size:1.43rem}.carousel-description{font-size:1.04rem;line-height:1.3}.carousel-book-btn{padding:7px 16px;font-size:.75rem}.carousel-container .carousel-nav{width:35px;height:35px;font-size:1rem}.carousel-autoplay-btn{width:35px;height:35px;font-size:.8rem}}.services{padding:3.5rem var(--spacing-xl);background:var(--bg-light)}.container{max-width:1200px;margin:0 auto;padding:0 20px}.services h2{font-size:clamp(1.75rem,3vw,2.25rem);text-align:center;margin-bottom:var(--spacing-2xl);color:var(--text-dark);font-weight:700;letter-spacing:-.5px}.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.75rem,1.6vw,var(--spacing-lg))}.service-card{background:var(--bg-white);padding:clamp(.9rem,2vw,var(--spacing-2xl));border-radius:var(--radius-xl);text-align:left;box-shadow:0 6px 20px #0000000f;transition:all var(--transition-base);border:1px solid var(--border-light)}.service-card:hover{transform:translateY(-8px);box-shadow:0 18px 40px #0000001f;border-color:var(--accent-gold)}.service-icon{font-size:clamp(1.4rem,2vw + .4rem,2.4rem);margin-bottom:clamp(.5rem,1.2vw,var(--spacing-lg));display:inline-flex;align-items:center;justify-content:center;width:clamp(40px,4vw,56px);height:clamp(40px,4vw,56px);background:#fff;border-radius:var(--radius-lg);border:1px solid var(--border-light);box-shadow:0 6px 16px #00000014;transition:all var(--transition-base)}.service-card:hover .service-icon{transform:translateY(-6px);border-color:var(--accent-gold);box-shadow:0 10px 22px #00000024}.service-card h3{color:var(--text-dark);margin-bottom:var(--spacing-sm);font-size:clamp(.9rem,1.6vw,var(--text-xl));font-weight:700}.service-card p{color:var(--text-muted);line-height:1.7;font-size:clamp(.75rem,1.2vw,var(--text-base))}@media (max-width: 1200px){.services-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.75rem,1.5vw,1.2rem)}}@media (max-width: 1024px){.services{padding:clamp(2.5rem,3.5vw,3.5rem) clamp(1rem,3vw,1.5rem)}.services h2{font-size:clamp(1.6rem,2.8vw,2.2rem);margin-bottom:var(--spacing-2xl)}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(.75rem,1.5vw,1.2rem)}}@media (max-width: 768px){.services{padding:clamp(2rem,3vw,2.5rem) clamp(.75rem,2.5vw,1.5rem)}.container{padding:0 clamp(.75rem,2vw,1rem)}.services h2{font-size:clamp(1.4rem,2.5vw,1.8rem);margin-bottom:var(--spacing-xl)}.services-grid{grid-template-columns:repeat(1,minmax(0,1fr));gap:clamp(.75rem,1.5vw,1rem)}.service-card{padding:clamp(1rem,2.5vw,1.5rem)}.service-card h3{font-size:clamp(.95rem,1.8vw,1.1rem)}.service-card p{font-size:clamp(.75rem,1.2vw,.85rem)}}@media (max-width: 480px){.services{padding:1.5rem clamp(.75rem,2vw,1rem)}.services h2{font-size:clamp(1.25rem,2vw,1.5rem);margin-bottom:var(--spacing-lg)}.services-grid{gap:clamp(.5rem,1vw,.75rem)}.service-card{padding:clamp(.9rem,2vw,1.2rem)}.service-icon{width:clamp(35px,3.5vw,45px);height:clamp(35px,3.5vw,45px);font-size:clamp(1.2rem,2vw,1.6rem)}}@media (max-width: 320px){.services{padding:1.5rem .75rem}.services h2{font-size:1.15rem}.service-card{padding:.9rem}.service-icon{width:35px;height:35px;font-size:1.2rem}}.western-cape-destinations{padding:80px 0;background:linear-gradient(135deg,var(--bg-light) 0%,#e9ecef 100%)}.destinations-header{text-align:center;margin-bottom:60px}.destinations-header h2{font-size:2.5rem;color:var(--ink-deep);margin-bottom:15px;font-weight:700}.destinations-header p{font-size:1.1rem;color:#666;margin-bottom:0}.destinations-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-bottom:60px;max-width:1200px;margin-left:auto;margin-right:auto}.destination-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 15px #00000014;transition:all .3s ease;display:flex;flex-direction:column}.destination-card:hover{transform:translateY(-8px);box-shadow:0 12px 30px #00000026}.card-image-wrapper{position:relative;width:100%;padding-bottom:75%;overflow:hidden;background:#f0f0f0}.card-image{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.destination-card:hover .card-image{transform:scale(1.08)}.card-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#0c254066;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}.destination-card:hover .card-overlay{opacity:1}.destination-icon{font-size:4rem;display:inline-block}.card-content{padding:25px;display:flex;flex-direction:column;flex-grow:1}.card-content h3{font-size:1.5rem;color:var(--ink-deep);margin:0 0 12px;font-weight:600}.card-content p{font-size:.95rem;color:#666;line-height:1.6;margin:0 0 20px;flex-grow:1}.destination-cta{background:linear-gradient(135deg,#06c,#0052a3);color:#fff;border:none;padding:12px 20px;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-align:center}.destination-cta:hover{transform:translateY(-2px);box-shadow:0 6px 15px #0066cc4d}.destinations-footer{margin-top:40px}.coverage-info{background:linear-gradient(135deg,#06c,#0052a3);color:#fff;padding:50px 40px;border-radius:12px;text-align:center;box-shadow:0 8px 25px #06c3}.coverage-info h3{font-size:1.8rem;margin:0 0 15px;font-weight:600}.coverage-info p{font-size:1.05rem;line-height:1.7;max-width:800px;margin:0 auto 25px;opacity:.95}.cta-button{background:#fff;color:#06c;border:none;padding:14px 40px;border-radius:8px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s ease;display:inline-block}.cta-button:hover{transform:translateY(-3px);box-shadow:0 8px 20px #ffffff4d}@media (max-width: 1024px){.destinations-grid{grid-template-columns:repeat(2,1fr);gap:25px}.destinations-header h2{font-size:2rem}}@media (max-width: 768px){.western-cape-destinations{padding:50px 0}.destinations-header{margin-bottom:40px}.destinations-header h2{font-size:1.8rem}.destinations-header p{font-size:1rem}.destinations-grid{grid-template-columns:repeat(2,1fr);gap:20px}.destination-card{border-radius:10px}.card-content{padding:20px}.card-content h3{font-size:1.3rem}.card-content p{font-size:.9rem;margin-bottom:15px}.coverage-info{padding:35px 25px}.coverage-info h3{font-size:1.5rem}.coverage-info p{font-size:.95rem}}@media (max-width: 480px){.western-cape-destinations{padding:40px 0}.destinations-header h2{font-size:1.5rem}.destinations-grid{grid-template-columns:1fr;gap:15px}.destination-card{border-radius:8px}.card-content{padding:15px}.card-content h3{font-size:1.2rem;margin-bottom:10px}.card-content p{font-size:.85rem;margin-bottom:12px}.destination-cta{padding:10px 15px;font-size:.9rem}.coverage-info{padding:25px 15px}.coverage-info h3{font-size:1.3rem;margin-bottom:12px}.coverage-info p{font-size:.9rem;margin-bottom:20px}.cta-button{padding:12px 30px;font-size:.95rem}}.booking{padding:clamp(3rem,5vw,5rem) clamp(1rem,3vw,1.5rem);background:var(--bg-dark);color:#f9fafb;min-height:80vh;display:flex;flex-direction:column;justify-content:center}.booking-intro{max-width:800px;margin:0 auto;text-align:center}.booking-intro h1{font-size:clamp(2rem,4vw,3rem);color:#f9fafb;margin-bottom:clamp(1rem,2vw,2rem)}.booking-intro .subtitle{font-size:clamp(1rem,2vw,1.5rem);color:#fff;margin-bottom:clamp(1.5rem,2vw,2rem);font-weight:500}.booking-intro .description{font-size:clamp(.85rem,1.2vw,1.1rem);line-height:1.6;color:#fff;margin-bottom:clamp(1rem,1.5vw,1.5rem)}.booking .tagline{font-size:clamp(1.3rem,2.5vw,1.8rem);font-style:normal;color:#fff;margin:clamp(2rem,3vw,2.5rem) 0 clamp(1rem,1.5vw,1.5rem);font-family:inherit;font-weight:700;text-align:center}.booking .cta-text{font-size:clamp(.9rem,1.5vw,1.2rem);font-weight:700;margin-bottom:clamp(2rem,3vw,2.5rem);color:#fff;text-align:center}.booking-actions{display:flex;justify-content:center;gap:clamp(1rem,3vw,2rem);flex-wrap:wrap}.action-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;width:clamp(250px,80vw,320px);padding:clamp(1.5rem,3vw,2rem);border-radius:var(--radius-xl);cursor:pointer;transition:all var(--transition-base);box-shadow:0 12px 28px #00000059;text-align:center;border:1px solid rgba(255,255,255,.12);font-weight:600;font-size:clamp(.95rem,1.2vw,1.1rem);position:relative;overflow:hidden}.action-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:#ffffff1a;transition:left var(--transition-base);z-index:0}.action-btn:hover:before{left:100%}.action-btn:hover{transform:translateY(-6px);box-shadow:0 18px 40px #00000073}.shuttle-btn{background:linear-gradient(135deg,var(--accent-gold) 0%,var(--accent-sunset) 100%);color:#0b0b0f}.shuttle-btn:hover{box-shadow:0 15px 40px #d977064d}.takemehome-btn{background:linear-gradient(135deg,#1f2937,#111827);color:#f9fafb}.takemehome-btn:hover{box-shadow:0 15px 40px #2e8b9e4d}.btn-icon{font-size:clamp(2rem,4vw,3rem);margin-bottom:clamp(.75rem,1.5vw,1rem);position:relative;z-index:1}.btn-text{font-size:clamp(1rem,1.5vw,1.3rem);font-weight:700;color:inherit;margin-bottom:clamp(.25rem,.5vw,.5rem);letter-spacing:.3px}.btn-sub{font-size:clamp(.7rem,.9vw,.9rem);color:#ffffffd9;font-weight:500}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .3s ease-out}.modal-content{background:#fff;padding:40px;border-radius:12px;max-width:600px;width:100%;position:relative;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px -12px #00000040;animation:slideUp .3s ease-out}.close-modal{position:absolute;top:20px;right:20px;background:none;border:none;font-size:2rem;cursor:pointer;color:#666;line-height:1}.modal-content h2{text-align:center;margin-bottom:30px;color:var(--ink-deep)}.services-overview{margin-top:80px;padding-top:60px;border-top:2px solid var(--border-light)}.services-overview .services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:25px;max-width:1200px;margin:0 auto}.services-overview .service-card{background:linear-gradient(135deg,var(--bg-light) 0%,#ffffff 100%);padding:30px 25px;border-radius:10px;border-left:5px solid var(--brand-highlight);transition:all .3s ease;box-shadow:0 4px 12px #0000000d;text-align:center}.services-overview .service-card:hover{transform:translateY(-5px);box-shadow:0 8px 20px #0000001a}.services-overview .service-icon{font-size:2.5rem;margin-bottom:15px;display:inline-flex;align-items:center;justify-content:center;width:80px;height:80px;background-color:var(--brand-highlight);border-radius:12px;margin-left:auto;margin-right:auto}.services-overview .service-card h4{font-size:1.2rem;color:var(--ink-deep);margin-bottom:12px;font-weight:600}.services-overview .service-card p{color:#666;font-size:.95rem;line-height:1.6}.booking-form-modal .form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:20px}.booking-form-modal .form-group{display:flex;flex-direction:column}.booking-form-modal .form-group.full-width{grid-column:1 / -1}.booking-form-modal label{margin-bottom:8px;font-weight:600;color:var(--ink-deep);font-size:.9rem}.booking-form-modal input,.booking-form-modal select{padding:12px;border:2px solid var(--border-light);border-radius:6px;font-size:1rem}.booking-form-modal textarea{padding:12px;border:2px solid var(--border-light);border-radius:6px;font-size:1rem;font-family:inherit;resize:vertical}.booking-form-modal input:focus,.booking-form-modal select:focus,.booking-form-modal textarea:focus{border-color:var(--brand-highlight);outline:none}.submit-btn{width:100%;padding:16px;background:linear-gradient(135deg,var(--brand-highlight) 0%,var(--brand-accent) 100%);color:#fff;font-size:1.1rem;font-weight:700;border-radius:6px;border:none;cursor:pointer;margin-top:10px;transition:all .3s}.submit-btn:hover{filter:brightness(1.1)}.submit-btn:disabled{opacity:.7;cursor:not-allowed;filter:grayscale(.1)}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@media (max-width: 1200px){.booking{padding:clamp(2.5rem,4vw,4rem) clamp(1rem,2.5vw,1.5rem)}.booking-intro h1{font-size:clamp(1.8rem,3.5vw,2.6rem)}.booking-intro .subtitle{font-size:clamp(.95rem,1.8vw,1.3rem)}.action-btn{width:clamp(240px,75vw,300px);padding:clamp(1.25rem,2.5vw,1.75rem)}}@media (max-width: 768px){.booking{padding:clamp(2rem,3.5vw,3rem) clamp(.75rem,2.5vw,1rem);min-height:70vh}.booking-intro h1{font-size:clamp(1.5rem,4vw,2.2rem)}.booking-intro .subtitle{font-size:clamp(.9rem,1.5vw,1.1rem)}.booking-intro .description{font-size:clamp(.8rem,1vw,.95rem)}.booking .tagline{font-size:clamp(1.1rem,2vw,1.4rem);margin:clamp(1.5rem,2.5vw,2rem) 0 clamp(.75rem,1.5vw,1rem)}.booking .cta-text{font-size:clamp(.8rem,1.2vw,1rem)}.booking-actions{gap:clamp(.75rem,2vw,1.5rem)}.action-btn{width:100%;max-width:100%;flex-direction:row;justify-content:flex-start;padding:clamp(1rem,2vw,1.5rem);gap:clamp(1rem,2vw,1.5rem);text-align:left}.action-btn .btn-icon{margin-bottom:0;font-size:clamp(1.8rem,3vw,2.4rem);flex-shrink:0}.action-btn>div{display:flex;flex-direction:column}.btn-text{font-size:clamp(.9rem,1.2vw,1.1rem)}.btn-sub{font-size:clamp(.7rem,.9vw,.8rem)}.modal-content{padding:clamp(1.5rem,3vw,2rem)}.services-overview .services-grid{grid-template-columns:1fr;gap:clamp(1rem,2vw,1.5rem)}.services-overview .service-card{padding:clamp(1.25rem,2vw,1.5rem)}.services-overview .service-icon{font-size:clamp(1.6rem,2.5vw,2rem);width:clamp(60px,10vw,80px);height:clamp(60px,10vw,80px)}.services-overview .service-card h4{font-size:clamp(.95rem,1.3vw,1.1rem)}.services-overview .service-card p{font-size:clamp(.8rem,1vw,.9rem)}}@media (max-width: 480px){.booking{padding:clamp(1.5rem,3vw,2rem) clamp(.75rem,2vw,1rem);min-height:60vh}.booking-intro h1{font-size:clamp(1.3rem,3.5vw,1.8rem)}.booking-actions{flex-direction:column;gap:clamp(1rem,2vw,1.2rem)}.action-btn{width:100%;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:.75rem;padding:clamp(1rem,2vw,1.25rem)}.action-btn .btn-icon{font-size:clamp(1.6rem,2.5vw,2rem);margin-bottom:clamp(.5rem,1vw,.75rem)}.modal-content{padding:clamp(1.25rem,2.5vw,1.75rem);max-height:95vh}.booking-form-modal .form-row{grid-template-columns:1fr;gap:clamp(1rem,1.5vw,1.25rem)}}@media (max-width: 320px){.booking{padding:1.5rem .75rem;min-height:55vh}.booking-intro h1{font-size:1.25rem}.booking-intro .subtitle{font-size:.9rem}.action-btn{padding:1rem;width:100%}.action-btn .btn-icon{font-size:1.5rem}.btn-text{font-size:.9rem}.btn-sub{font-size:.7rem}}.about{padding:3rem 20px;background:#fff}.about-content{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;max-width:1200px;margin:0 auto}.about-text h2{font-size:2rem;color:var(--ink-deep);margin-bottom:16px;font-weight:700;letter-spacing:-.5px}.about-text p{color:#666;margin-bottom:12px;line-height:1.65;font-size:1rem}.features{list-style:none;margin-top:25px}.features li{color:var(--ink-deep);margin-bottom:14px;font-size:1.1rem;font-weight:500;padding-left:30px;position:relative}.features li:before{content:"✓";position:absolute;left:0;color:var(--brand-highlight);font-weight:700;font-size:1.3rem}.about-image{display:flex;justify-content:center;align-items:center}.image-placeholder{width:350px;height:350px;background:linear-gradient(135deg,var(--brand-highlight) 0%,var(--brand-accent) 100%);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:6rem;box-shadow:0 15px 40px #2cc3df33}@media (max-width: 768px){.about{padding:40px 16px}.about-content{grid-template-columns:1fr;gap:24px}.about-text h2{font-size:1.75rem;margin-bottom:16px}.about-text p{font-size:1rem;line-height:1.6}.features li{font-size:1rem;margin-bottom:10px}.image-placeholder{width:200px;height:200px;font-size:3.5rem}}.pricing-calculator-section{padding:60px 20px;background:linear-gradient(180deg,#e0f4ff,#f0f9ff)}.pricing-calculator-section .container{max-width:900px;margin:0 auto}.calculator-wrapper{background:#fff;border-radius:20px;padding:40px;box-shadow:0 10px 40px #0624451f}.calculator-header{text-align:center;margin-bottom:32px}.calculator-header h2{font-size:2rem;color:#062445;margin:0 0 8px}.calculator-header p{color:#555;font-size:1rem;margin:0}.calculator-content{display:flex;flex-direction:column;gap:24px}.popular-routes{background:#f0f9ff;border-radius:12px;padding:16px 20px}.routes-label{font-size:.85rem;font-weight:600;color:#062445;margin:0 0 10px}.routes-chips{display:flex;flex-wrap:wrap;gap:8px}.route-chip{background:#fff;border:1px solid #00b4d8;color:#062445;border-radius:20px;padding:6px 14px;font-size:.82rem;cursor:pointer;transition:all .2s;white-space:nowrap}.route-chip:hover{background:#00b4d8;color:#fff;border-color:#00b4d8}.calculator-inputs{display:flex;flex-direction:column;gap:18px}.input-group{display:flex;flex-direction:column;gap:6px}.input-group label{font-size:.88rem;font-weight:600;color:#062445}.input-group input[type=text],.input-group input[type=number]{padding:12px 14px;border:2px solid #d0e8f7;border-radius:10px;font-size:.95rem;outline:none;transition:border-color .2s;color:#062445}.input-group input:focus{border-color:#00b4d8}.toggle-group label{display:flex;align-items:center;gap:8px;font-weight:500;font-size:.9rem;cursor:pointer}.vehicle-options{display:flex;flex-wrap:wrap;gap:10px}.vehicle-btn{padding:10px 18px;border:2px solid #d0e8f7;border-radius:10px;background:#fff;color:#062445;font-size:.88rem;font-weight:600;cursor:pointer;transition:all .2s}.vehicle-btn:hover{border-color:#00b4d8;color:#00b4d8}.vehicle-btn.active{background:#062445;border-color:#062445;color:#fff}.calc-btn{background:linear-gradient(135deg,#00b4d8,#0096c7);color:#fff;border:none;border-radius:12px;padding:14px 32px;font-size:1rem;font-weight:700;cursor:pointer;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 14px #0096c759}.calc-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #0096c773}.calc-btn:disabled{opacity:.6;cursor:not-allowed}.calc-error{color:#c0392b;font-size:.9rem;padding:10px 14px;background:#fdf0f0;border-radius:8px}.calculator-result{background:linear-gradient(135deg,#062445,#0a3d6b);border-radius:16px;padding:28px;color:#fff;text-align:center}.result-header h3{margin:0 0 4px;font-size:1.2rem;opacity:.85}.result-vehicle{margin:0 0 20px;font-size:.9rem;opacity:.7}.result-prices{display:flex;gap:16px;justify-content:center;margin-bottom:16px;flex-wrap:wrap}.price-card{background:#ffffff1f;border-radius:12px;padding:18px 28px;display:flex;flex-direction:column;align-items:center;gap:4px;min-width:150px}.price-card.return{background:#00b4d840}.price-label{font-size:.8rem;opacity:.75;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.price-value{font-size:2rem;font-weight:800;color:#48cae4}.price-km{font-size:.78rem;opacity:.6}.result-note{font-size:.82rem;opacity:.7;margin:0 0 18px}.book-via-wa{display:inline-block;background:#25d366;color:#fff;text-decoration:none;padding:12px 28px;border-radius:10px;font-weight:700;font-size:.95rem;transition:background .2s}.book-via-wa:hover{background:#1da851}@media (max-width: 600px){.calculator-wrapper{padding:24px 16px}.result-prices{flex-direction:column;align-items:center}.price-card{width:100%}}.activities{padding:80px 20px;background:linear-gradient(180deg,var(--bg-light) 0%,#ffffff 100%)}.activities-container{max-width:1200px;margin:0 auto;padding:0 20px}.activities-header{text-align:center;margin-bottom:60px}.activities-header h2{font-size:2.4rem;color:var(--ink-deep);margin-bottom:12px;font-weight:800;letter-spacing:.2px}.activities-header p{font-size:1.2rem;color:var(--text-muted);max-width:700px;margin:0 auto;line-height:1.8}.activities-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:24px;margin-bottom:40px}.activity-card{background:#fff;border-radius:12px;padding:16px;box-shadow:0 5px 20px #00000014;transition:all .3s ease;border:2px solid transparent;display:grid;grid-template-columns:1fr;grid-auto-rows:min-content;gap:16px;align-items:start;width:100%;min-width:0;overflow:hidden}@media (min-width: 768px){.activity-card{grid-template-columns:minmax(0,240px) minmax(0,1fr);align-items:center}}@media (min-width: 1024px){.activity-card{grid-template-columns:minmax(0,280px) minmax(0,1fr)}}.activity-card>*{min-width:0}.activity-card:hover{transform:translateY(-12px);box-shadow:0 15px 40px #0000001f;border-color:var(--brand-highlight)}.activity-icon{display:none}.activity-image{width:100%;height:150px;object-fit:cover;border-radius:10px;margin-bottom:0;grid-column:1;grid-row:auto}@media (min-width: 768px){.activity-image{height:200px;grid-row:1 / 4}}.category{display:inline-block;background:linear-gradient(135deg,var(--brand-highlight) 0%,var(--brand-accent) 100%);color:#fff;padding:3px 10px;border-radius:20px;font-size:.7rem;font-weight:600;margin-bottom:8px;width:fit-content;grid-column:1}@media (min-width: 768px){.category{grid-column:2}}.activity-card h3{font-size:1.2rem;color:var(--ink-deep);margin:6px 0;font-weight:700;line-height:1.3;grid-column:1;overflow-wrap:anywhere}@media (min-width: 768px){.activity-card h3{grid-column:2}}.description{color:var(--text-muted);font-size:.9rem;line-height:1.5;margin-bottom:12px;flex-grow:1;grid-column:1;overflow-wrap:anywhere}@media (min-width: 768px){.description{grid-column:2}}.highlights{list-style:none;padding:0;margin:12px 0 0;grid-column:1 / -1}.highlights li{color:var(--text-muted);padding:6px 0;border-bottom:1px solid var(--border-light);font-size:.85rem}.highlights li:last-child{border-bottom:none}.video-container{margin-top:20px;border-radius:8px;overflow:hidden;background:#000}.video-full{margin:32px 0;text-align:center}.video-thumb{display:inline-block;background:#111;color:#fff;padding:18px 24px;border-radius:8px;text-decoration:none}.cta-section{background:linear-gradient(135deg,var(--ink-deep) 0%,var(--ocean-mid) 100%);color:#fff;padding:60px 40px;border-radius:12px;text-align:center}.cta-section h3{font-size:2.2rem;margin-bottom:15px;font-weight:700;color:#fff}.cta-section p{font-size:1.1rem;margin-bottom:30px;opacity:.9;color:#fff}.book-btn{background:linear-gradient(135deg,var(--brand-highlight) 0%,var(--brand-accent) 100%);color:var(--ink-deep);padding:15px 40px;font-size:1.1rem;font-weight:700;border-radius:8px;border:none;cursor:pointer;transition:all .3s;box-shadow:0 4px 15px #2cc3df4d}.book-btn:hover{transform:translateY(-3px);box-shadow:0 8px 25px #2cc3df66}@media (max-width: 768px){.activities{padding:40px 16px}.activities-container{padding:0 16px}.activities-header{margin-bottom:24px}.activities-header h2{font-size:1.75rem}.activities-header p{font-size:1rem}.activity-card{padding:10px;grid-template-columns:1fr;gap:8px}.activity-card h3{font-size:1.05rem}.activity-image{height:110px}.description{font-size:.8rem;line-height:1.35;margin-bottom:6px}.highlights li{font-size:.75rem;padding:4px 0}.cta-section{padding:32px 20px}.cta-section h3{font-size:1.4rem;color:#fff}.cta-section p{font-size:1rem;color:#fff}.book-btn{padding:12px 32px;font-size:1rem}}.whale-video-section{background:linear-gradient(135deg,#0c25400d,#2cc3df0d);padding:60px 0;border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color)}.video-content{display:grid;grid-template-columns:1fr 1.3fr;gap:50px;align-items:center}.video-text h2{font-size:2.2rem;color:var(--primary-color);margin-bottom:20px;font-weight:700;line-height:1.3}.video-text p{font-size:1rem;color:var(--text-dark);line-height:1.8;margin-bottom:30px;opacity:.9}.whale-highlights{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:15px}.whale-highlights li{font-size:1rem;color:var(--text-dark);font-weight:500;display:flex;align-items:center;gap:10px}.video-wrapper{border-radius:16px;overflow:hidden;box-shadow:0 10px 40px #00000026;aspect-ratio:16 / 9;background:#000}.whale-video{width:100%;height:100%;border:none}@media (max-width: 1024px){.video-content{grid-template-columns:1fr;gap:40px}.video-text h2{font-size:1.8rem}.whale-highlights{grid-template-columns:1fr}}@media (max-width: 768px){.whale-video-section{padding:40px 0}.video-text h2{font-size:1.5rem}.video-text p{font-size:.95rem}.whale-highlights li{font-size:.9rem}.video-wrapper{border-radius:12px;aspect-ratio:16 / 10}}@media (max-width: 480px){.whale-video-section{padding:30px 0}.video-text h2{font-size:1.3rem;margin-bottom:15px}.video-text p{font-size:.9rem;margin-bottom:20px}.whale-highlights{gap:10px}.whale-highlights li{font-size:.85rem}}.contact{padding:80px 20px;background:linear-gradient(180deg,var(--bg-light) 0%,#ffffff 100%)}.contact-container{max-width:1200px;margin:0 auto}.contact h2{font-size:2.8rem;text-align:center;margin-bottom:50px;color:var(--ink-deep);font-weight:700;letter-spacing:-1px}.contact-content{display:grid;grid-template-columns:1fr 1fr;gap:50px}.map-wrapper{border-radius:10px;overflow:hidden;box-shadow:0 6px 20px #00000014;height:500px}.map-wrapper iframe{width:100%;height:100%;border:none}.contact-info{display:flex;flex-direction:column;gap:30px}.info-item h3{color:var(--ink-deep);margin-bottom:12px;font-size:1.3rem;font-weight:700}.info-item p{color:#666;line-height:1.8;font-size:1rem}.info-item p.business-name{font-size:1.2rem;font-weight:700;color:var(--ink-deep);margin-bottom:15px}.info-item p.address{color:#555;font-size:.95rem;line-height:1.6}.info-item a{color:#d4af37;text-decoration:none;font-weight:600;transition:all .3s}.info-item a:hover{color:#c9a961;transform:translate(3px)}.contact-form{background:#fff;padding:var(--spacing-3xl);border-radius:var(--radius-xl);box-shadow:0 20px 40px #00000014;border:1px solid rgba(46,139,158,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.contact-form .form-group{margin-bottom:var(--spacing-xl);position:relative}.contact-form label{display:block;margin-bottom:var(--spacing-md);font-weight:600;color:var(--text-dark);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.5px;color:var(--primary-dark)}.contact-form input,.contact-form textarea{width:100%;padding:var(--spacing-md) var(--spacing-lg);border:2px solid var(--border-light);border-radius:var(--radius-lg);font-size:var(--text-base);font-family:inherit;transition:all var(--transition-base);background:var(--bg-white);color:var(--text-dark)}.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--text-light)}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--primary-light);box-shadow:0 0 0 4px #2e8b9e1a;background:#2e8b9e03}.contact-form .submit-btn{width:100%;padding:var(--spacing-lg) var(--spacing-2xl);background:linear-gradient(135deg,var(--accent-gold) 0%,var(--accent-sunset) 100%);color:#fff;font-size:var(--text-lg);font-weight:700;border-radius:var(--radius-lg);border:none;cursor:pointer;transition:all var(--transition-base);box-shadow:0 8px 20px #d9770633;margin-top:var(--spacing-xl);text-transform:uppercase;letter-spacing:1px;position:relative;overflow:hidden}.contact-form .submit-btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:#fff3;border-radius:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s}.contact-form .submit-btn:hover:before{width:300px;height:300px}.contact-form .submit-btn:hover{transform:translateY(-2px);box-shadow:0 12px 30px #d9770659}.contact-form .submit-btn:disabled{opacity:.7;cursor:not-allowed;transform:none;box-shadow:none}@media (max-width: 768px){.contact{padding:40px 16px}.contact-container{padding:0 16px}.contact h1,.contact h2{font-size:1.75rem;margin-bottom:32px}.contact-content{grid-template-columns:1fr;gap:24px}.contact-form{padding:20px}.form-group input,.form-group textarea{font-size:1rem;padding:12px}.submit-btn{padding:12px;font-size:1rem}.map-wrapper{height:300px}.info-item h2,.info-item h3{font-size:1.1rem}.info-item p{font-size:.95rem}}.footer{background:linear-gradient(135deg,var(--whale-dark) 0%,var(--ocean-deep) 100%);color:#fff;padding:var(--spacing-4xl) var(--spacing-lg) var(--spacing-lg);position:relative;overflow:hidden}.footer:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--accent-gold),var(--accent-sunset),var(--primary-light));opacity:.8}.footer-content{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-3xl);margin-bottom:var(--spacing-3xl);position:relative;z-index:1}.footer-section h3,.footer-section h4{margin-bottom:var(--spacing-md);font-size:var(--text-lg);font-weight:700;background:linear-gradient(135deg,var(--accent-gold),var(--accent-sunset));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-transform:uppercase;letter-spacing:.5px;font-size:var(--text-xl)}.footer-section p{line-height:1.8;opacity:.95;color:#ffffffd9;margin-bottom:var(--spacing-sm)}.footer-section ul{list-style:none;padding:0}.footer-section ul li{margin-bottom:var(--spacing-md)}.footer-section a{color:#ffffffd9;transition:all var(--transition-base);text-decoration:none;font-weight:500;position:relative}.footer-section a:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background:linear-gradient(90deg,var(--accent-gold),var(--accent-sunset));transition:width var(--transition-base)}.footer-section a:hover{color:var(--accent-gold);transform:translate(4px)}.footer-section a:hover:after{width:100%}.social-links{display:flex;gap:var(--spacing-lg);flex-wrap:wrap;align-items:center}.social-icon-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 12px;background:#ffffff1a;border-radius:var(--radius-full);transition:all var(--transition-base);color:#fff;text-decoration:none;border:2px solid transparent;font-size:.9rem}.social-icon-link:hover{background:#fff3;transform:translateY(-2px);color:var(--accent-gold);box-shadow:0 4px 12px #2cc3df33}.footer-bottom{text-align:center;padding:var(--spacing-xl) var(--spacing-lg);border-top:1px solid rgba(44,195,223,.2);opacity:.85;font-size:var(--text-sm);max-width:1200px;margin:0 auto;color:#fffc}.analytics-status{margin-top:var(--spacing-md);font-size:var(--text-xs);color:var(--accent-gold);opacity:.8}@media (max-width: 768px){.footer{padding:40px 20px 15px}.footer-content{grid-template-columns:1fr;gap:30px}.footer-section{text-align:center}.social-links{justify-content:center}}.social-floating-buttons{position:fixed;right:25px;bottom:30px;display:flex;flex-direction:column;gap:15px;z-index:999}.floating-btn{width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;text-decoration:none;transition:all .3s ease;box-shadow:0 4px 12px #0003;color:#fff}.floating-btn svg{width:28px;height:28px;fill:currentColor}.floating-btn:hover{transform:scale(1.15);box-shadow:0 6px 20px #0000004d}.floating-btn.whatsapp{background:linear-gradient(135deg,#25d366,#20ba5a)}.floating-btn.whatsapp:hover{background:linear-gradient(135deg,#20ba5a,#1da851)}.floating-btn.facebook{background:linear-gradient(135deg,#1877f2,#0a66c2)}.floating-btn.facebook:hover{background:linear-gradient(135deg,#0a66c2,#053a8a)}.floating-btn.youtube{background:linear-gradient(135deg,red,#c00)}.floating-btn.youtube:hover{background:linear-gradient(135deg,#c00,#900)}@media (max-width: 1024px){.social-floating-buttons{right:20px;bottom:100px}.floating-btn{width:55px;height:55px}.floating-btn svg{width:24px;height:24px}}@media (max-width: 768px){.social-floating-buttons{right:15px;bottom:90px;gap:12px}.floating-btn{width:50px;height:50px}.floating-btn svg{width:22px;height:22px}}@media (max-width: 480px){.social-floating-buttons{right:12px;bottom:70px;gap:10px}.floating-btn{width:48px;height:48px}.floating-btn svg{width:20px;height:20px}.floating-btn:hover{transform:scale(1.12)}}@media (max-width: 320px){.social-floating-buttons{right:8px;bottom:60px;gap:8px}.floating-btn{width:45px;height:45px}.floating-btn svg{width:18px;height:18px}}.booking-confirmation-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .3s ease-out}.booking-confirmation-modal{background:#fff;border-radius:16px;padding:40px;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;position:relative;animation:slideUp .4s ease-out}@keyframes slideUp{0%{transform:translateY(40px);opacity:0}to{transform:translateY(0);opacity:1}}.close-btn{position:absolute;top:15px;right:15px;background:none;border:none;font-size:28px;cursor:pointer;color:#666;transition:color .2s}.close-btn:hover{color:#000}.confirmation-header{text-align:center;margin-bottom:30px}.checkmark-circle{width:80px;height:80px;background:linear-gradient(135deg,#4caf50,#45a049);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:48px;color:#fff;margin:0 auto 20px;animation:scaleIn .5s ease-out}@keyframes scaleIn{0%{transform:scale(0)}to{transform:scale(1)}}.confirmation-header h2{font-size:28px;color:var(--ink-deep);margin:0}.confirmation-number{color:#666;margin-top:10px;font-family:Courier New,monospace;font-weight:700}.status-timeline{display:flex;justify-content:space-between;margin:30px 0;position:relative}.status-timeline:before{content:"";position:absolute;top:20px;left:0;right:0;height:2px;background:#e0e0e0;z-index:-1}.timeline-item{flex:1;text-align:center}.timeline-item .timeline-circle{width:40px;height:40px;background:#f5f5f5;border:2px solid #e0e0e0;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 10px;font-size:20px;transition:all .3s ease}.timeline-item.active .timeline-circle{background:#06c;border-color:#06c;color:#fff;box-shadow:0 0 0 3px #0066cc1a}.timeline-item.completed .timeline-circle{background:#4caf50;border-color:#4caf50;color:#fff}.timeline-item p{font-size:12px;color:#666;margin:0}.timeline-item.active p{color:#06c;font-weight:600}.confirmation-details{background:#f9f9f9;border-radius:12px;padding:20px;margin:20px 0}.confirmation-details h3{font-size:16px;margin-top:0;margin-bottom:15px;color:var(--ink-deep)}.detail-row{display:flex;justify-content:space-between;margin:10px 0;font-size:14px}.detail-row .label{color:#666;font-weight:500}.detail-row .value{color:var(--ink-deep);font-weight:600;text-align:right}.eta-section{background:linear-gradient(135deg,#fff3cd,#ffe8a8);border-radius:12px;padding:20px;text-align:center;margin:20px 0;border-left:4px solid var(--brand-accent)}.eta-time{font-size:32px;font-weight:700;color:var(--brand-accent);margin:10px 0}.eta-note{color:#666;font-size:13px;margin:0}.driver-info{background:#f9f9f9;border-radius:12px;padding:20px;margin:20px 0}.driver-info h3{margin-top:0;color:var(--ink-deep)}.driver-card{display:flex;align-items:center;gap:15px}.driver-avatar{width:60px;height:60px;border-radius:50%;background:#06c;display:flex;align-items:center;justify-content:center;font-size:30px}.driver-details{flex:1}.driver-details h4{margin:0;color:var(--ink-deep)}.rating{font-size:12px;color:#666;margin:5px 0}.vehicle{font-size:12px;color:#666;margin:0}.call-driver-btn{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;border:none;padding:10px 15px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;transition:all .3s ease}.call-driver-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #4caf504d}.confirmation-actions{display:flex;gap:12px;margin-top:30px}.btn-secondary,.btn-primary{flex:1;padding:12px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;border:none;transition:all .3s ease}.btn-secondary{background:#f0f0f0;color:#333}.btn-secondary:hover{background:#e0e0e0}.btn-primary{background:linear-gradient(135deg,#06c,#0052a3);color:#fff}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0066cc4d}@media (max-width: 600px){.booking-confirmation-modal{padding:25px}.confirmation-header h2{font-size:24px}.status-timeline{margin:20px -10px}.timeline-item p{font-size:11px}}:root{--primary-dark: #06162d;--primary: #0d2d4f;--primary-light: #1d4f78;--primary-lighter: #2a6b98;--accent-sunset: #2cc3df;--accent-warm: #1ba4c8;--accent-wine: #0f4b7a;--accent-gold: #7bd9eb;--brand-highlight: #2cc3df;--brand-accent: #1ba4c8;--brand-accent-dark: #1283a3;--ink-deep: #10263f;--nature-forest: #1b4332;--nature-fynbos: #52b788;--nature-sage: #74c69d;--nature-cream: #f2f8fc;--whale-dark: #06162d;--ocean-deep: #0b213e;--ocean-mid: #12365c;--ocean-light: #2a6b98;--water-foam: #e9f7fb;--text-dark: #12263f;--text-dark-alt: #1a3553;--text-muted: #4f647b;--text-light: #7c8fa3;--bg-white: #ffffff;--bg-light: #f4f9fc;--bg-lighter: #edf5fa;--bg-dark: #06162d;--border-light: #d7e5ef;--border-mid: #bfd2df;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--spacing-4xl: 6rem;--font-sans: "Manrope", "Segoe UI", sans-serif;--font-serif: "Cormorant Garamond", Georgia, serif;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .35s ease;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--primary-color: var(--primary);--accent-color: var(--brand-highlight);--border-color: var(--border-light)}.text-primary{color:var(--primary)}.text-accent{color:var(--accent-sunset)}.text-muted{color:var(--text-muted)}.bg-primary{background:var(--primary)}.bg-light{background:var(--bg-light)}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:1.6;color:var(--text-dark);background:var(--bg-light);overflow-x:hidden}html,body,#root{width:100%;min-height:100%}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;color:var(--text-dark);letter-spacing:-.5px}h1{font-size:var(--text-5xl);margin-bottom:var(--spacing-lg)}h2{font-size:var(--text-4xl);margin-bottom:var(--spacing-lg)}h3{font-size:var(--text-3xl);margin-bottom:var(--spacing-md)}h4{font-size:var(--text-2xl);margin-bottom:var(--spacing-md)}h5{font-size:var(--text-xl);margin-bottom:var(--spacing-sm)}h6{font-size:var(--text-lg);margin-bottom:var(--spacing-sm)}p{margin-bottom:var(--spacing-md);color:var(--text-dark)}a{color:var(--primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--primary-light);text-decoration:underline}button{font-family:inherit;cursor:pointer;border:none;transition:all var(--transition-base)}input,textarea,select{font-family:inherit;font-size:inherit}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}::selection{background-color:var(--primary);color:#fff}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 var(--spacing-lg)}@media (max-width: 768px){.container{padding:0 var(--spacing-md)}h1{font-size:var(--text-3xl)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}}.hide-mobile{display:none}@media (min-width: 769px){.hide-mobile{display:block}.hide-desktop{display:none}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-fade{animation:fadeIn .6s ease-out}.animate-slide-up{animation:slideUp .6s ease-out}.animate-slide-left{animation:slideInLeft .6s ease-out}.animate-slide-right{animation:slideInRight .6s ease-out}.animate-scale{animation:scaleIn .6s ease-out}.animate-float{animation:float 3s ease-in-out infinite}.animate-pulse{animation:pulse 2s ease-in-out infinite}.app{min-height:100vh;display:flex;flex-direction:column}main{flex:1}.container-center{max-width:1200px;margin:0 auto;padding:0 20px}*{margin:0;padding:0;box-sizing:border-box}:root{--primary-color: #1a5f7a;--accent-color: #d97706;--accent-2: #ea580c;--text-dark: #1a1a1a;--text-muted: #636e72;--bg-light: #f8fafc;--border-color: #e2e8f0;--surface: #ffffff;--radius: 10px;--container-max: 1100px}html,body,#root{width:100%;min-height:100%;overflow-x:hidden}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6;color:var(--text-dark);background:linear-gradient(180deg,var(--bg-light) 0%,#ffffff 100%);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html{scroll-behavior:smooth}:focus{outline:3px solid var(--accent-color);outline-offset:3px}.container{max-width:var(--container-max);margin:0 auto;padding:0 16px}.btn{display:inline-block;padding:10px 14px;border-radius:8px;font-weight:600}.btn-primary{background:var(--primary-color);color:#fff}.btn-outline{background:transparent;border:2px solid var(--primary-color);color:var(--primary-color)}a{text-decoration:none;color:inherit}button{cursor:pointer;border:none;font-family:inherit}
