*{margin:0;padding:0;box-sizing:border-box}:root{--primary-color:#4A90E2;--secondary-color:#000000;--accent-color:#F5F5F5;--text-dark:#000000;--text-light:#666666;--background-white:#FFFFFF;--background-light:#F5F5F5;--border-color:#E0E0E0;--success-color:#28a745;--warning-color:#ffc107;--danger-color:#dc3545;--shadow:none;--shadow-hover:none;--border-radius:8px;--transition:all 0.3s ease}html{scroll-behavior:smooth}body{font-family:'Source Sans Pro',sans-serif;line-height:1.6;color:var(--text-dark);background-color:var(--background-white);overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:Roboto,sans-serif;font-weight:500;color:var(--text-dark)}h1{font-weight:700}h2{font-weight:600}.container{max-width:1200px;margin:0 auto;padding:0 20px}.announcement-bar{background:var(--primary-color);color:#fff;padding:10px 0;text-align:center;font-weight:500;position:fixed;top:0;left:0;right:0;z-index:1001}.announcement-bar .container{display:flex;align-items:center;justify-content:center;gap:10px}.header{background:var(--background-white);position:fixed;top:40px;left:0;right:0;z-index:1000}.navbar{padding:15px 0}.navbar .container{display:flex;justify-content:space-between;align-items:center}.nav-brand{display:flex;align-items:center;gap:15px}.logo{height:50px;width:auto}.brand-name{font-size:24px;font-weight:700;color:var(--text-dark)}.nav-menu{display:flex;gap:30px}.nav-link{text-decoration:none;color:var(--text-dark);font-weight:500;padding:10px 0;position:relative;overflow:hidden}.nav-link::after{content:'';position:absolute;bottom:0;left:0;width:0;height:2px;background:#000;transition:width .8s ease}.nav-link.active::after,.nav-link:hover::after{width:100%}.nav-toggle{display:none;flex-direction:column;cursor:pointer;gap:4px}.nav-toggle span{width:25px;height:3px;background:var(--text-dark);transition:var(--transition)}.btn{display:inline-block;padding:12px 24px;text-decoration:none;border-radius:8px;font-weight:500;text-align:center;transition:all .3s cubic-bezier(.4, 0, .2, 1);border:none;cursor:pointer;font-size:16px;position:relative;overflow:hidden}.btn::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s;z-index:1}.btn:hover::before{left:100%}.btn-primary{background:linear-gradient(135deg,var(--primary-color) 0,#6ba3f5 100%);color:#fff;position:relative;z-index:0}.btn-primary:hover{background:linear-gradient(135deg,#3a7bd5 0,var(--primary-color) 100%)}.btn-secondary{background:0 0;color:var(--secondary-color);border:2px solid var(--secondary-color);position:relative;z-index:0}.btn-secondary::after{content:'';position:absolute;top:0;left:0;width:0;height:100%;background:var(--secondary-color);transition:width .3s ease;z-index:-1}.btn-secondary:hover::after{width:100%}.btn-secondary:hover{color:#fff}.btn-large{padding:15px 30px;font-size:18px}.btn-hero{padding:22px 44px;font-size:22px;font-weight:700;background:linear-gradient(135deg,var(--primary-color),#6ba3f5);display:inline-flex;align-items:center;gap:12px;border-radius:50px;box-shadow:0 8px 25px rgba(74,144,226,.3),0 4px 10px rgba(0,0,0,.1);transform:translateY(0);transition:all .4s cubic-bezier(.4, 0, .2, 1);position:relative;overflow:hidden}.btn-hero::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .6s}.btn-hero:hover{background:linear-gradient(135deg,#3a7bd5,var(--primary-color));transform:translateY(-3px);box-shadow:0 12px 35px rgba(74,144,226,.4),0 8px 15px rgba(0,0,0,.15)}.btn-hero:hover::before{left:100%}.btn-hero i{font-size:20px;transition:transform .3s ease}.btn-hero:hover i{transform:scale(1.1)}.hero{padding:250px 0 200px;background:linear-gradient(135deg,#f8faff 0,#e8f2ff 50%,#f0f8ff 100%);position:relative;overflow:hidden;min-height:100vh;display:flex;align-items:center}.hero::before{content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at 30% 20%,rgba(74,144,226,.15) 0,transparent 60%),radial-gradient(circle at 70% 80%,rgba(102,126,234,.12) 0,transparent 60%),radial-gradient(circle at 20% 70%,rgba(74,144,226,.08) 0,transparent 40%);animation:float-background 25s ease-in-out infinite;z-index:1}.hero::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(45deg,transparent 30%,rgba(74,144,226,.03) 50%,transparent 70%);z-index:1}@keyframes float-background{0%,100%{transform:translate(0,0) rotate(0) scale(1)}33%{transform:translate(-15px,-8px) rotate(.5deg) scale(1.02)}66%{transform:translate(8px,-12px) rotate(-.3deg) scale(.98)}}.hero .container{display:flex;justify-content:center;align-items:center;text-align:center;position:relative;z-index:2;width:100%}.hero-content{max-width:900px;animation:hero-fade-in 1.2s ease-out}@keyframes hero-fade-in{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.hero-content h1{font-size:64px;font-weight:800;background:linear-gradient(135deg,#2c3e50 0,#4a90e2 25%,#6ba3f5 50%,#3a7bd5 75%,#1e3a5f 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:25px;line-height:1.1;letter-spacing:-.02em;text-shadow:none}.hero-content p{font-size:28px;color:var(--text-light);margin-bottom:50px;font-weight:400;line-height:1.4;max-width:700px;margin-left:auto;margin-right:auto}.hero-buttons{display:flex;justify-content:center;gap:20px;margin-top:20px}section{padding:80px 0}section h2{font-size:36px;font-weight:700;text-align:center;margin-bottom:15px;color:var(--text-dark)}.section-subtitle{text-align:center;font-size:18px;color:var(--text-light);margin-bottom:50px}.services{background:var(--background-white)}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px}.service-card{background:linear-gradient(145deg,#fff 0,#f8f9ff 100%);padding:40px 30px;border-radius:16px;text-align:center;border:1px solid rgba(224,224,224,.3)}.service-card i{font-size:48px;background:linear-gradient(135deg,var(--primary-color) 0,#6ba3f5 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:20px;transition:transform .3s ease}.service-card i:hover{transform:scale(1.1)}.service-card h3{font-size:24px;font-weight:600;margin-bottom:15px;color:var(--text-dark)}.service-card p{color:var(--text-light)}.service-card ul{list-style:none;padding:0;margin:10px 0 0 0;text-align:left}.service-card li{color:var(--text-light);padding:4px 0;position:relative;padding-left:20px}.service-card li:before{content:"•";color:var(--primary-color);font-weight:700;position:absolute;left:0}.we-buy{background:var(--background-light)}.buy-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:30px;margin-bottom:50px}.buy-card{background:linear-gradient(145deg,#fff 0,#f8f9ff 100%);padding:30px 25px;border-radius:12px;text-align:center;border:1px solid rgba(224,224,224,.3)}.buy-card i{font-size:36px;color:var(--primary-color);margin-bottom:15px}.buy-card h3{font-size:20px;font-weight:600;margin-bottom:10px}.buy-card p{color:var(--text-light)}.buy-card ul{list-style:none;padding:0;margin:10px 0 0 0;text-align:left}.buy-card li{color:var(--text-light);padding:4px 0;position:relative;padding-left:20px}.buy-card li:before{content:"•";color:var(--primary-color);font-weight:700;position:absolute;left:0}.buy-cta{text-align:center;padding:40px;background:0 0}.buy-cta p{font-size:20px;margin-bottom:20px;color:var(--text-dark)}.buy-disclaimer{font-size:14px!important;color:var(--text-light)!important;font-style:italic;margin-bottom:15px!important}.business{background:var(--background-white)}.business-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:40px;margin-bottom:50px}.business-feature{text-align:center;padding:30px 20px}.business-feature i{font-size:48px;color:var(--primary-color);margin-bottom:20px}.business-feature h3{font-size:24px;font-weight:600;margin-bottom:15px}.business-cta{text-align:center;padding:50px 30px;background:0 0}.business-cta h3{font-size:28px;margin-bottom:15px}.business-cta p{font-size:18px;margin-bottom:25px;color:var(--text-light)}#book-repair h2{text-shadow:-30px -30px 50px rgba(255,255,255,.7),30px 30px 50px rgba(13,39,80,.16)}.book-repair{background:var(--background-light)}.booking-form{max-width:800px;margin:0 auto;background:var(--background-white);padding:40px;border-radius:var(--border-radius);box-shadow:0 4px 20px rgba(0,0,0,.08),0 1px 3px rgba(0,0,0,.1)}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:20px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--text-dark);font-family:Roboto,sans-serif}.form-group input,.form-group select,.form-group textarea{width:100%;padding:14px 16px;border:2px solid rgba(224,224,224,.5);border-radius:12px;font-size:16px;font-family:'Source Sans Pro',sans-serif;transition:all .3s cubic-bezier(.4, 0, .2, 1);background:linear-gradient(145deg,#fff 0,#f8f9ff 100%);resize:none}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:0;border-color:var(--primary-color);background:#fff}.form-group small{display:block;margin-top:5px;color:var(--text-light);font-size:14px;font-family:'Source Sans Pro',sans-serif}.form-group input::placeholder,.form-group select::placeholder,.form-group textarea::placeholder{color:var(--text-light);font-family:'Source Sans Pro',sans-serif;opacity:.8}.customer-details-section,.datetime-selection-section{background:var(--background-light);padding:25px;border-radius:var(--border-radius);margin-bottom:30px}.datetime-selection-section{width:70%;margin-left:auto;margin-right:auto;background:0 0}.customer-details-section h3,.datetime-selection-section h3{margin:0 0 20px 0;color:var(--text-dark);font-size:20px;font-weight:600;font-family:Roboto,sans-serif}.datetime-container{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:start}.calendar-container{background:var(--background-white);border-radius:var(--border-radius);padding:20px;border:2px solid var(--border-color)}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.calendar-header h4{margin:0;font-size:18px;font-weight:600;color:var(--text-dark);font-family:Roboto,sans-serif}.nav-btn{background:var(--primary-color);color:#fff;border:none;width:35px;height:35px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;transition:all .3s ease;font-family:Roboto,sans-serif}.nav-btn:hover{background:#357ab8;transform:scale(1.1)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:0;margin-bottom:10px;justify-items:center;align-items:center}.day-header{text-align:center;font-weight:600;padding:6px 0;color:#666;font-size:12px}.calendar-day{width:25px;height:25px;display:flex;align-items:center;justify-content:center;border-radius:50%;cursor:pointer;font-size:16px;font-family:'Source Sans Pro',sans-serif;font-weight:500;transition:all .2s linear;position:relative;margin:2px;border:2px solid transparent;background:#f0f0f0;color:#333}.calendar-day:hover{border-color:#666;background:#e0e0e0}.calendar-day.other-month{color:#ccc;cursor:not-allowed;opacity:.3}.calendar-day.past{color:#ccc;cursor:not-allowed;opacity:.3}.calendar-day.available{background:#f0f0f0;color:#333}.calendar-day.available:hover{border-color:#666;background:#e0e0e0}.calendar-day.selected{border-color:#28a745;background:#28a745;color:#fff;font-weight:600}.calendar-day.available::after{content:'';position:absolute;width:3px;height:3px;background-color:#28a745;border-radius:50%;bottom:-8px;left:50%;transform:translateX(-50%);opacity:0;transition:opacity .2s linear}.calendar-day.selected::after{opacity:1;background-color:#28a745}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;padding:0}.nav-button{background:#4a90e2;color:#fff;border:none;border-radius:50%;width:28px;height:28px;cursor:pointer;font-size:14px;transition:background .3s ease}.nav-button:hover{background:#357abd}.month-year{font-size:16px;font-weight:600;color:#333}.time-slots-row{grid-column:2/7;padding:8px;background:#f8f9fa;border-radius:4px;border:1px solid #333;margin:4px 0;opacity:0;max-height:0;overflow:hidden;transition:all .5s ease;width:70%;justify-self:center}.time-slots-row.active{opacity:1;max-height:80px}.time-slots-title{display:none}.time-slots-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.time-slot{padding:4px 6px;border:1px solid #e9ecef;border-radius:3px;text-align:center;cursor:pointer;font-weight:500;font-size:11px;transition:all .3s ease;background:#fff}.time-slot:hover{border-color:#4a90e2;background:#e3f2fd}.time-slot.selected{background:#28a745;color:#fff;border-color:#28a745}.time-slot.unavailable{background:#f8f9fa;color:#ccc;cursor:not-allowed;border-color:#e9ecef}.time-slot.disabled{background:#f8f9fa;color:#ccc;cursor:not-allowed;border-color:#e9ecef;opacity:.6}.timeslots-container{background:var(--background-white);border-radius:var(--border-radius);padding:20px;border:2px solid var(--border-color)}.timeslots-container h4{margin:0 0 15px 0;font-size:18px;font-weight:600;color:var(--text-dark);font-family:Roboto,sans-serif}.timeslots-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:10px}.timeslot{padding:12px 8px;text-align:center;border:2px solid var(--border-color);border-radius:var(--border-radius);cursor:pointer;transition:all .3s ease;font-size:14px;font-weight:500;background:var(--background-white);color:var(--text-dark);font-family:'Source Sans Pro',sans-serif}.timeslot:hover{border-color:var(--primary-color);background:var(--background-light)}.timeslot.selected{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.timeslot.unavailable{background:var(--background-light);color:var(--text-light);cursor:not-allowed;opacity:.5}.select-date-message{text-align:center;color:var(--text-light);font-style:italic;margin:20px 0;font-family:'Source Sans Pro',sans-serif}@media (max-width:768px){.datetime-container{grid-template-columns:1fr;gap:20px}.calendar-grid{gap:0}.calendar-day{width:22px;height:22px;font-size:14px;font-family:'Source Sans Pro',sans-serif;margin:1px}.timeslots-grid{grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:8px}.timeslot{padding:10px 6px;font-size:12px}}.info-section{background:var(--background-light);padding:25px;border-radius:var(--border-radius);margin:30px 0;border-left:4px solid var(--primary-color);box-shadow:0 2px 8px rgba(0,0,0,.04),inset 0 1px 0 rgba(255,255,255,.5)}.info-section h3{margin-bottom:15px;color:var(--text-dark);font-family:Roboto,sans-serif}.repair-info{font-size:16px;color:var(--text-dark);line-height:1.6;margin:0}.deposit-section{background:var(--background-white);border:1px solid var(--border-color);padding:25px;border-radius:var(--border-radius);margin:30px 0}.deposit-section h3{color:var(--text-dark);font-family:Roboto,sans-serif;margin-bottom:15px}.deposit-info p{margin-bottom:10px}.deposit-info ul{margin:15px 0;padding-left:20px}.deposit-info li{margin-bottom:8px}.deposit-warning{background:#ffe6e6;padding:15px;border-radius:var(--border-radius);border-left:4px solid var(--danger-color);margin-top:20px;font-size:14px;box-shadow:0 2px 6px rgba(220,53,69,.1),inset 0 1px 0 rgba(255,255,255,.4)}.payment-section{margin-top:25px;padding-top:20px;border-top:1px solid #e0e0e0}.payment-section h4{font-family:Roboto,sans-serif;margin-bottom:15px;color:var(--text-dark)}.square-payment-container{margin:20px 0;display:flex;justify-content:center}.square-payment-container a:hover{background-color:#0056d3!important}.payment-info{font-size:16px;margin-bottom:10px;color:var(--text-dark)}.payment-note{margin-top:15px;padding:15px;background:var(--background-light);border-radius:var(--border-radius);border-left:4px solid var(--primary-color)}.payment-note small{color:var(--text-light);line-height:1.5}.submit-section{margin-top:30px;text-align:center}#bookingSubmitBtn{display:inline-block}.submit-note{margin-top:10px;margin-bottom:0}.submit-note small{color:var(--text-light);font-style:italic;line-height:1.4}.checkbox-group{margin:30px 0}.checkbox-label{display:flex;align-items:flex-start;gap:10px;cursor:pointer;font-size:14px;line-height:1.5}.checkbox-label input[type=checkbox]{width:auto;margin:0}.privacy-link,.terms-link{color:var(--primary-color);text-decoration:none}.privacy-link:hover,.terms-link:hover{text-decoration:underline}.reviews{background:var(--background-white)}.reviews-content{display:flex;justify-content:center;align-items:center;gap:60px;flex-wrap:wrap}.review-qr{text-align:center}.review-qr img{width:150px;height:150px;border-radius:var(--border-radius)}.review-qr p{margin-top:15px;font-weight:500;color:var(--text-dark)}.review-buttons{display:flex;flex-direction:column;gap:15px}.review-buttons .btn{display:flex;align-items:center;gap:10px;min-width:200px}.contact{background:var(--background-light)}.contact-info-bar{display:grid;grid-template-columns:repeat(4,1fr);align-items:center;background:var(--background-white);padding:25px 30px;border-radius:var(--border-radius);margin-bottom:40px;gap:30px}.contact-item-inline{display:flex;flex-direction:column;align-items:center;gap:8px;justify-content:center;text-align:center;position:relative}.contact-item-inline:not(:last-child)::after{content:'';position:absolute;right:-15px;top:50%;transform:translateY(-50%);height:80%;width:2px;background-color:var(--primary-color);opacity:.3}.contact-item-inline i{font-size:20px;color:var(--primary-color);min-width:24px;flex-shrink:0}.contact-item-inline span{font-size:15px;color:var(--text-dark);line-height:1.4}.contact-item-inline a{color:var(--primary-color);text-decoration:none}.contact-item-inline a:hover{text-decoration:underline}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:stretch}.map-container{background:var(--background-white);padding:40px;border-radius:var(--border-radius);box-shadow:0 4px 20px rgba(0,0,0,.08),0 1px 3px rgba(0,0,0,.1);display:flex;flex-direction:column}.map-container iframe{border-radius:12px;flex:1;min-height:300px}.contact-info{display:flex;flex-direction:column;gap:30px}.contact-item{display:flex;align-items:flex-start;gap:20px;padding:25px;background:var(--background-white);border-radius:var(--border-radius)}.contact-item i{font-size:24px;color:var(--primary-color);margin-top:5px}.contact-item h3{font-size:18px;font-weight:600;margin-bottom:5px;color:var(--text-dark)}.contact-item p{color:var(--text-light);line-height:1.5}.contact-item a{color:var(--primary-color);text-decoration:none}.contact-item a:hover{text-decoration:underline}.contact-form{background:var(--background-white);padding:40px;border-radius:var(--border-radius);box-shadow:0 4px 20px rgba(0,0,0,.08),0 1px 3px rgba(0,0,0,.1);display:flex;flex-direction:column}.footer{background:var(--background-light);color:var(--text-dark);padding:40px 0;border-top:1px solid var(--border-color)}.footer-content{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px}.footer-links{display:flex;gap:30px;flex-wrap:wrap;justify-content:flex-end}.footer-links a{color:var(--text-light);text-decoration:none;font-weight:300;font-size:14px;transition:var(--transition)}.footer-links a:hover{color:var(--primary-color)}.footer-social{display:flex;justify-content:center;align-items:center;gap:16px}.facebook-icon,.google-review-icon{display:flex;flex-direction:column;align-items:center;gap:4px;text-decoration:none;padding:8px;border-radius:8px;transition:all .3s ease}.facebook-icon:hover{transform:translateY(-2px);background:rgba(24,119,242,.1)}.google-review-icon:hover{transform:translateY(-2px);background:rgba(66,133,244,.1)}.facebook-icon svg,.google-review-icon svg{transition:transform .3s ease}.facebook-icon:hover svg,.google-review-icon:hover svg{transform:scale(1.1)}.social-label{font-size:12px;color:#1877f2;font-weight:500;text-transform:uppercase;letter-spacing:.5px;line-height:1}.star-rating{font-size:12px;color:gold;letter-spacing:1px;text-shadow:0 1px 2px rgba(0,0,0,.1);line-height:1}.footer-copyright{text-align:left}.footer-copyright p{margin:0;color:var(--text-light);font-size:14px;font-weight:300}.modal{display:none;position:fixed;z-index:10000;left:0;top:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);overflow-y:auto}.modal-content{background-color:var(--background-white);margin:5% auto;padding:40px;border-radius:var(--border-radius);width:90%;max-width:800px;position:relative;max-height:80vh;overflow-y:auto}.close{color:#aaa;float:right;font-size:28px;font-weight:700;cursor:pointer;position:absolute;top:15px;right:20px}.close:hover{color:var(--text-dark)}.privacy-content h3,.terms-content h3{color:var(--primary-color);margin:25px 0 15px 0;font-size:20px}.privacy-content p,.terms-content p{margin-bottom:15px;line-height:1.6}.privacy-content ul,.terms-content ul{margin:15px 0;padding-left:20px}.privacy-content li,.terms-content li{margin-bottom:8px}@media (max-width:768px){.nav-menu{display:none;position:absolute;top:100%;left:0;right:0;background:var(--background-white);flex-direction:column;padding:20px}.nav-menu.active{display:flex}.nav-toggle{display:flex}.hero{padding:180px 0 120px;min-height:80vh}.hero-content h1{font-size:48px;line-height:1.2}.hero-content p{font-size:24px;margin-bottom:40px}.hero-buttons{flex-wrap:wrap}.btn-hero{padding:16px 32px;font-size:18px}.logo{height:40px}.contact-info-bar{grid-template-columns:1fr;gap:20px;padding:20px}.contact-item-inline{flex-direction:row;justify-content:flex-start;text-align:left;padding:10px 0;border-bottom:1px solid var(--border-color);gap:12px}.contact-item-inline:last-child{border-bottom:none}.contact-item-inline::after{display:none}.contact-grid{grid-template-columns:1fr 1fr;gap:30px}.reviews-content{gap:40px}.review-buttons{align-items:center}.business-features,.buy-grid,.services-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.booking-form,.contact-form{padding:30px 20px}section{padding:60px 0}section h2{font-size:28px}.modal-content{margin:10% auto;padding:30px 20px;width:95%}}@media (max-width:480px){.container{padding:0 15px}.hero{padding:140px 0 100px;min-height:70vh}.hero-content h1{font-size:36px;line-height:1.2}.hero-content p{font-size:20px;margin-bottom:35px}.btn{padding:10px 20px;font-size:14px}.btn-hero{padding:14px 28px;font-size:16px}.btn-hero i{font-size:16px}.logo{height:35px}.buy-card,.service-card{padding:25px 20px}.contact-item{padding:20px}.footer-content{grid-template-columns:1fr;text-align:center;gap:15px}.footer-copyright{text-align:center}.footer-links{gap:20px}}html{scroll-behavior:smooth}.booking-confirmation-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.8);display:flex;justify-content:center;align-items:center;z-index:10000;opacity:0;visibility:hidden;transition:all .3s ease}.booking-confirmation-modal.show{opacity:1;visibility:visible}.booking-confirmation-content{background:#fff;border-radius:16px;padding:30px 25px;max-width:400px;width:90%;text-align:center;box-shadow:0 20px 60px rgba(0,0,0,.3);transform:scale(.8) translateY(20px);transition:all .3s ease;position:relative}.booking-confirmation-modal.show .booking-confirmation-content{transform:scale(1) translateY(0)}.booking-confirmation-icon{width:80px;height:80px;background:var(--primary-color);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;font-size:40px;color:#fff}.booking-confirmation-title{font-size:24px;font-weight:600;color:var(--text-dark);margin-bottom:12px}.booking-confirmation-message{font-size:15px;color:var(--text-light);line-height:1.5;margin-bottom:20px}.booking-confirmation-reference{margin-bottom:25px}.booking-confirmation-reference strong{font-weight:700}.booking-confirmation-close{background:var(--primary-color);color:#fff;border:none;border-radius:8px;padding:12px 30px;font-size:16px;font-weight:500;cursor:pointer;transition:all .3s ease}.booking-confirmation-close:hover{background:#3a7bc8;transform:translateY(-2px)}.booking-confirmation-details{background:#f8f9fa;border-radius:8px;padding:20px;margin-bottom:20px;text-align:left}.booking-confirmation-details h4{margin-bottom:10px;color:var(--text-dark);font-size:16px}.booking-confirmation-details p{margin:5px 0;color:var(--text-light);font-size:14px}.booking-confirmation-next-steps{background:#e8f4fd;border-radius:8px;padding:15px;margin-bottom:20px;border-left:4px solid var(--primary-color)}.booking-confirmation-next-steps h4{color:var(--primary-color);margin-bottom:8px;font-size:16px}.booking-confirmation-next-steps p{color:#2c5aa0;font-size:14px;margin:0}.loading{display:inline-block;width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin 1s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:480px){.contact-grid{grid-template-columns:1fr;gap:30px}.contact-form,.map-container{padding:20px}}.form-group.error input,.form-group.error select,.form-group.error textarea{border-color:var(--danger-color)}.form-group .error-message{color:var(--danger-color);font-size:14px;margin-top:5px;display:none}.form-group.error .error-message{display:block}.success-message{background:var(--success-color);color:#fff;padding:15px;border-radius:var(--border-radius);margin:20px 0;text-align:center;display:none}.success-message.show{display:block}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.btn:focus,input:focus,select:focus,textarea:focus{outline:2px solid var(--primary-color);outline-offset:2px}.cookie-consent{position:fixed;bottom:0;left:0;right:0;background:var(--background-white);border-top:3px solid var(--primary-color);z-index:10000;padding:20px;display:none}.cookie-consent.show{display:block}.cookie-content{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:30px}.cookie-text h3{margin:0 0 8px 0;color:var(--text-dark);font-size:18px}.cookie-text p{margin:0;color:var(--text-light);font-size:14px;line-height:1.4}.cookie-buttons{display:flex;gap:15px;flex-shrink:0}.btn-link{background:0 0;color:var(--primary-color);text-decoration:underline;border:none;padding:12px 0}.btn-link:hover{color:var(--secondary-color);background:0 0}.cookie-modal .modal-content{max-width:600px}.cookie-settings{margin-top:20px}.cookie-category{border:1px solid var(--border-color);border-radius:var(--border-radius);padding:20px;margin-bottom:15px}.cookie-category-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.cookie-category h3{margin:0;font-size:16px;color:var(--text-dark)}.cookie-category p{margin:0;font-size:14px;color:var(--text-light);line-height:1.5}.cookie-toggle{position:relative;display:inline-block;width:50px;height:24px}.cookie-toggle input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;transition:.4s;border-radius:24px}.slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.4s;border-radius:50%}input:checked+.slider{background-color:var(--primary-color)}input:checked+.slider:before{transform:translateX(26px)}input:disabled+.slider{background-color:var(--primary-color);opacity:.6;cursor:not-allowed}.cookie-actions{margin-top:25px;text-align:center;display:flex;gap:15px;justify-content:center}.whatsapp-float{position:fixed;width:60px;height:60px;bottom:80px;right:30px;background:#25d366;color:#fff;border-radius:50%;text-align:center;font-size:30px;z-index:100;display:flex;align-items:center;justify-content:center;transition:var(--transition);text-decoration:none}.whatsapp-float:hover{background:#1da851;color:#fff}.whatsapp-float i{line-height:1}.social-links{margin-top:15px;display:flex;gap:15px}.social-links a{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--primary-color);color:#fff;border-radius:50%;text-decoration:none;font-size:18px;transition:var(--transition)}.social-links a:hover{background:var(--secondary-color)}.social-links a[href*=facebook]:hover{background:#1877f2}.social-links a[href*=whatsapp]:hover{background:#25d366}.contact-item a{color:var(--primary-color);text-decoration:none}.contact-item a:hover{text-decoration:underline}@media (max-width:768px){.cookie-content{flex-direction:column;align-items:stretch;gap:20px}.cookie-buttons{flex-direction:column;gap:10px}.cookie-buttons .btn{width:100%;text-align:center}.whatsapp-float{width:50px;height:50px;bottom:20px;right:20px;font-size:24px}.cookie-actions{flex-direction:column}.social-links{justify-content:center}}@media print{.announcement-bar,.btn,.cookie-consent,.header,.hero-buttons,.modal,.nav-toggle,.whatsapp-float{display:none!important}.hero{padding:40px 0}section{padding:30px 0}}.booking-steps{display:flex;align-items:center;justify-content:center;margin:0 auto 32px;max-width:420px}.booking-step{display:flex;flex-direction:column;align-items:center;gap:6px}.step-circle{width:36px;height:36px;border-radius:50%;background:#e0e0e0;color:#999;font-weight:700;font-size:.95rem;display:flex;align-items:center;justify-content:center;transition:background .3s,color .3s}.booking-step.active .step-circle,.booking-step.completed .step-circle{background:var(--primary-color,#4a90e2);color:#fff}.step-label{font-size:.75rem;color:#999;font-weight:500;white-space:nowrap;transition:color .3s}.booking-step.active .step-label,.booking-step.completed .step-label{color:var(--primary-color,#4a90e2)}.step-line{flex:1;height:2px;background:#e0e0e0;margin:0 8px 18px;transition:background .3s}.step-line.completed{background:var(--primary-color,#4a90e2)}