/*V 1.9 Depurado y Ordenado*/
/* Reset and Base Styles */
* {margin:0; padding:0; box-sizing:border-box; font-family:"Montserrat", Arial, sans-serif;}
body {background-color:var(--primary-white); color:#000000; line-height:1.6; overflow-x:hidden; display:flex; flex-direction:column; min-height:100vh;}
a {text-decoration:none; color:inherit; transition:all 0.3s ease;}
ul {list-style:none;}
img {max-width:100%; height:auto;}
.container {width:100%; max-width:1200px; margin:0 auto; padding:0 20px;}

/* Color Variables */
:root {--primary-green:#38ed24; --primary-black:#000000; --primary-white:#ffffff; --light-gray:#f8f9fa; --dark-gray:#343a40; --border-color:#e0e0e0; --accent-green:#28a745;}

/* Header */
.main-header {position:sticky; top:0; z-index:1000; box-shadow:0 2px 10px rgba(0, 0, 0, 0.1); width:100%;}
.top-header {display:flex; align-items:center; justify-content:space-between; padding:0; background-color:var(--primary-black); min-height:60px;}
.logo-container {padding:10px 15px; background-color:var(--primary-black); display:flex; justify-content:flex-start; align-items:center; flex-shrink:0;}
.logo {max-width:clamp(100px, 15vw, 200px); height:auto;}
.header-right {display:flex; align-items:center; gap:15px; padding:0 15px; flex-shrink:0; justify-content:flex-end;}
.find-us {display:flex; align-items:center; gap:8px;}
.map-icon {background-color:#4285f4; color:white; width:35px; height:35px; border-radius:6px; display:flex; align-items:center; justify-content:center; font-size:16px;}
.rating-badge {background-color:#209b41; color:white; padding:6px 10px; border-radius:4px; font-weight:bold; font-size:12px;}
.google-reviews {display:flex; align-items:center; gap:8px; color:var(--primary-white);}
.google-reviews i {font-size:20px; color:#4285f4;}
.review-info {display:flex; flex-direction:column; align-items:flex-start;}
.rating {font-size:12px; font-weight:600; color:#ffc107;}
.phone-button {background:transparent; border:2px solid var(--primary-green); color:var(--primary-white); padding:8px 16px; border-radius:20px; font-size:14px; font-weight:600; cursor:pointer; transition:all 0.3s ease; text-transform:uppercase; white-space:nowrap;}
.phone-button:hover {background-color:var(--primary-green); color:var(--primary-white);}
.mobile-menu-phone-container {display:none; align-items:center; gap:10px; margin-left:auto; padding:0 15px;}
.mobile-phone-button {background:transparent; border:2px solid var(--primary-green); color:var(--primary-white); padding:6px 12px; border-radius:15px; font-size:12px; font-weight:600; text-transform:uppercase; white-space:nowrap;}
.mobile-phone-button:hover {background-color:var(--primary-green); color:var(--primary-white);}

/* Thank You Section */
main {flex:1; display:flex;}
.thank-you-hero {width:100%; min-height:80vh; position:relative; display:flex; align-items:center; justify-content:center; padding:40px 20px; background:url("/public/img/thank-you/thank-you-banner.webp") no-repeat center center/cover; text-align:center; overflow:hidden;}
.thank-you-card {background:rgba(255, 255, 255, 0.95); backdrop-filter:blur(10px); padding:clamp(40px, 5vw, 60px); border-radius:20px; max-width:750px; width:100%; margin: 0 auto; box-shadow:0 20px 50px rgba(0, 0, 0, 0.3); border-top:6px solid var(--primary-green); transform:translateY(30px); opacity:0; animation:slideUpFade 0.8s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;}
.icon-wrapper {margin-bottom:25px; display:inline-block; position:relative;}
.icon-wrapper i {font-size:clamp(60px, 8vw, 80px); color:var(--primary-green); background:#fff; border-radius:50%; padding:0; animation:successPulse 2s infinite;}
.thank-you-card h1 {font-size:clamp(36px, 5vw, 52px); color:var(--primary-black); margin-bottom:10px; text-transform:uppercase; line-height:1.1;}
.thank-you-card h2 {font-size:clamp(18px, 3vw, 24px); color:#555; margin-bottom:20px; font-weight:600;}
.thank-you-card p {font-size:clamp(15px, 2vw, 19px); color:#444; margin-bottom:15px; max-width:600px; margin-left:auto; margin-right:auto;}
.thank-you-card .sub-text {font-size:16px; color:#777; margin-top:10px; margin-bottom:40px; font-style:italic;}
.button-group {display:flex; gap:20px; justify-content:center; flex-wrap:wrap;}
.cta-button {display:inline-flex; align-items:center; justify-content:center; padding:14px 35px; border-radius:50px; font-weight:700; font-size:14px; text-transform:uppercase; transition:all 0.3s ease; min-width:180px; text-decoration:none;}
.cta-button.primary-btn {background:linear-gradient(135deg, var(--primary-green), var(--accent-green)); color:#000; border:none; box-shadow:0 5px 15px rgba(40, 167, 69, 0.4);}
.cta-button.primary-btn:hover {transform:translateY(-3px); box-shadow:0 8px 25px rgba(40, 167, 69, 0.6);}
.cta-button.secondary-btn {background:transparent; border:2px solid var(--primary-black); color:var(--primary-black);}
.cta-button.secondary-btn:hover {background:var(--primary-black); color:var(--primary-white); transform:translateY(-3px); box-shadow:0 5px 15px rgba(0, 0, 0, 0.2);}

@keyframes slideUpFade {to {opacity:1; transform:translateY(0);}}

@keyframes successPulse {0% {transform:scale(1); box-shadow:0 0 0 0 rgba(56, 237, 36, 0.7);}
 70% {transform:scale(1.05); box-shadow:0 0 0 20px rgba(56, 237, 36, 0);}
 100% {transform:scale(1); box-shadow:0 0 0 0 rgba(56, 237, 36, 0);}
}

/* Footer */
footer {background-color:var(--primary-black); color:var(--primary-white); padding:clamp(40px, 8vw, 60px) 0 20px; width:100%;}
.footer-logo-section {text-align:center; margin-bottom:clamp(30px, 6vw, 40px); padding:0 20px;}
.footer-logo {max-width:clamp(250px, 30vw, 400px); height:auto;}
.footer-content {display:grid; grid-template-columns:repeat(auto-fit, minmax(250px, 1fr)); gap:clamp(20px, 4vw, 40px); max-width:1200px; margin:0 auto; padding:0 20px; width:100%;}
.map-container {height:clamp(150px, 25vw, 200px); border-radius:8px; overflow:hidden; margin-bottom:20px; margin-top:20px;}
.map-container iframe {width:100%; height:100%; border:0;}
.footer-section h2 {font-size:clamp(16px, 2.5vw, 18px); margin-bottom:20px; color:var(--primary-white);}
.footer-section ul li {margin-bottom:8px;}
.column ul {display:flex; flex-wrap:wrap;}
.column ul li {width:48%; margin:0 1% 8px;}
.footer-section a {color:#ccc; transition:color 0.3s ease; font-size:clamp(12px, 2vw, 14px); line-height:1.5;}
.footer-section a:hover {color:var(--primary-green);}
.licenses {margin-bottom:20px;}
.license-row {display:flex; flex-wrap:wrap; gap:15px; margin-bottom:10px;}
.license-row span {font-size:clamp(12px, 2vw, 14px); color:#ccc;}
.social-media {display:flex; gap:10px; margin-top:15px; margin-bottom:30px; flex-wrap:wrap;}
.social-icon {display:flex; justify-content:center; align-items:center; width:clamp(35px, 6vw, 40px); height:clamp(35px, 6vw, 40px); background-color:rgba(255, 255, 255, 0.1); border-radius:50%; transition:all 0.3s ease; font-size:clamp(14px, 2.5vw, 16px);}
.social-icon:hover {background-color:var(--primary-green); transform:translateY(-3px);}
.visually-hidden {position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;}
.footer-copyright {width: 100%; padding: 25px 0 15px 0; margin-top: 30px; border-top: 1px solid #333; text-align: center; font-size: 14px; color: #999;}
.footer-copyright p {margin: 0; padding: 0; line-height: 1.5;}

/* Responsive y Breakpoints */
@media (max-width:1200px) {.header-right {gap:10px;} .find-us, .google-reviews, .phone-button {padding:6px 12px; font-size:13px;}}
@media (max-width:1150px) {.header-right {display:none;}
 .mobile-menu-phone-container {display:block;}
 .mobile-menu-phone-container {display:flex;}
 .top-header {flex-wrap:wrap; min-height:0;}
 .thank-you-hero {padding:80px 15px 40px;}
}
@media (max-width:576px) {.thank-you-card {padding:30px 20px;}
 .button-group {flex-direction:column; gap:15px;}
 .cta-button {width:100%;}
 .footer-content {grid-template-columns:1fr;}
}