*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body,html{overflow-x:hidden;width:100%}body{font-family:Roboto,Helvetica,Arial,sans-serif;line-height:1.6;color:#333;background-color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-size-adjust:100%;-webkit-overflow-scrolling:touch;position:relative}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2}h1,h2,h3,h4,h5,h6,p{margin-bottom:1rem}a{color:#1a1840;text-decoration:none;transition:color .3s ease}a:hover{color:#cea257;text-decoration:underline}.btn-primary{background:#1a1840;border:none;border-radius:8px;padding:12px 24px;color:#fff;font-weight:600;text-transform:uppercase;letter-spacing:.5px;transition:all .3s ease;box-shadow:0 4px 15px rgba(26,24,64,.3);min-height:44px;cursor:pointer;-webkit-tap-highlight-color:transparent}.btn-primary:hover{background:#0f0e28;transform:translateY(-2px);box-shadow:0 6px 20px rgba(26,24,64,.4)}.btn-primary:active{transform:translateY(0);box-shadow:0 2px 10px rgba(26,24,64,.3)}.card-enhanced{border-radius:12px;box-shadow:0 4px 20px rgba(0,0,0,.08);transition:all .3s ease;border:1px solid rgba(0,0,0,.05)}.card-enhanced:hover{transform:translateY(-4px);box-shadow:0 8px 30px rgba(0,0,0,.12)}:root{--primary-navy:#1a1840;--primary-navy-dark:#0f0e28;--primary-navy-light:#2d2660;--secondary-gold:#cea257;--secondary-gold-light:#d9b576;--secondary-gold-dark:#b8903d;--white:#fff;--text-primary:#1a1840;--text-secondary:#666;--success-green:#4caf50;--error-red:#f44336}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.p-1{padding:.5rem}.p-2{padding:1rem}.p-3{padding:1.5rem}.p-4{padding:2rem}@media (max-width:768px){.container{padding:0 1rem}h1{font-size:2rem}h2{font-size:1.5rem}a,button{min-height:44px;min-width:44px}body{font-size:16px}}@media (max-width:480px){h1{font-size:1.75rem}h2{font-size:1.35rem}h3{font-size:1.15rem}}.fade-in{animation:fadeIn .6s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.slide-up{animation:slideUp .6s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.legal-section{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);padding:4rem 0;margin:2rem 0}.legal-card{background:#fff;border-left:4px solid var(--primary-navy);padding:2rem;margin:1rem 0;border-radius:8px;box-shadow:0 2px 10px rgba(0,0,0,.1)}.loading{opacity:.6;pointer-events:none}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:loading 1.5s infinite}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.navbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid hsla(0,0%,100%,.1)}.navbar-brand{font-weight:700;font-size:1.5rem;color:#fff!important;text-decoration:none}.navbar-brand:hover{color:#e3f2fd!important}.navbar-nav{display:flex;gap:1rem;align-items:center}.nav-link{color:#fff!important;font-weight:500;padding:.5rem 1rem;border-radius:6px;transition:all .3s ease;text-decoration:none}.nav-link:hover{background-color:hsla(0,0%,100%,.1);color:#e3f2fd!important}.nav-link.active{background-color:hsla(0,0%,100%,.2);font-weight:600}.logo{height:40px;width:auto;transition:all .3s ease;filter:brightness(0) invert(1)}.logo.scrolled{height:32px}@media (max-width:768px){.navbar-nav{flex-direction:column;gap:.5rem;width:100%;padding:1rem 0}.nav-link{width:100%;text-align:center}.logo{height:32px}}.footer{background:#1a1840;color:#fff;padding:3rem 0 1rem;margin-top:4rem}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:2rem;gap:2rem;margin-bottom:2rem}.footer-section h3{margin-bottom:1rem;font-weight:600}.footer-section a,.footer-section p{color:hsla(0,0%,100%,.8);text-decoration:none;line-height:1.6}.footer-section a:hover{color:#fff;text-decoration:underline}.footer-bottom{border-top:1px solid hsla(0,0%,100%,.2);padding-top:1rem;text-align:center;color:hsla(0,0%,100%,.7)}.main-content{min-height:calc(100vh - 200px);padding:2rem 0}.breadcrumb{background:transparent;padding:1rem 0;margin-bottom:2rem}.breadcrumb-item{color:var(--text-secondary)}.breadcrumb-item.active{color:var(--text-primary);font-weight:500}.breadcrumb-item+.breadcrumb-item:before{content:"›";margin:0 .5rem;color:var(--text-secondary)}.page-header{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);padding:4rem 0 2rem;margin-bottom:3rem;text-align:center}.page-header h1{font-size:3rem;font-weight:700;color:var(--text-primary);margin-bottom:1rem}.page-header p{font-size:1.2rem;color:var(--text-secondary);max-width:600px;margin:0 auto}@media (max-width:768px){.page-header h1{font-size:2rem}.page-header p{font-size:1rem}}.hero-section{background:linear-gradient(135deg,#1a1840,#2d2660);color:#fff;text-align:center;position:relative;overflow:hidden;padding:calc(10rem + 70px) 0 8rem;width:100vw;margin:0 0 0 calc(-50vw + 50%);max-width:100vw}.hero-section:before{top:0;background:radial-gradient(circle at 20% 50%,rgba(206,162,87,.15) 0,transparent 50%),radial-gradient(circle at 80% 80%,rgba(45,38,96,.3) 0,transparent 50%);opacity:.6}.hero-section:after,.hero-section:before{content:"";position:absolute;left:0;right:0;bottom:0}.hero-section:after{height:100px;background:linear-gradient(180deg,transparent,hsla(0,0%,98%,.1))}.hero-content{position:relative;z-index:1;max-width:900px;margin:0 auto}.hero-title{font-size:4rem;font-weight:800;margin-bottom:1.5rem;letter-spacing:-1px;line-height:1.1}.hero-subtitle{font-size:1.75rem;font-weight:400;margin-bottom:1.5rem;opacity:.95;letter-spacing:-.5px}.hero-cta{margin-top:3rem}.hero-cta .btn{background:#cea257;color:#1a1840;padding:1.2rem 3rem;font-size:1.1rem;font-weight:700;border-radius:50px;box-shadow:0 8px 25px rgba(206,162,87,.35);transition:all .3s cubic-bezier(.4,0,.2,1);text-transform:uppercase;letter-spacing:1px}.hero-cta .btn:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 12px 35px rgba(206,162,87,.5);background:#d9b576}.services-section{padding:3rem 0;background:#fff}.section-title{text-align:center;font-size:2.25rem;font-weight:700;color:#1a1a1a;margin-bottom:.75rem;position:relative;letter-spacing:-1px}.section-title:after{content:"";position:absolute;bottom:-15px;left:50%;transform:translateX(-50%);width:80px;height:5px;background:#cea257;border-radius:3px}.service-card{background:#fff;border-radius:20px;padding:2rem 1.5rem;text-align:center;box-shadow:0 10px 40px rgba(0,0,0,.06);transition:all .4s cubic-bezier(.4,0,.2,1);border:1px solid rgba(0,0,0,.04);height:100%;position:relative;overflow:hidden;-webkit-tap-highlight-color:transparent;cursor:pointer}.service-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:#cea257;transform:scaleX(0);transition:transform .4s cubic-bezier(.4,0,.2,1)}.service-card:hover:before{transform:scaleX(1)}.service-card:hover{transform:translateY(-12px);box-shadow:0 20px 60px rgba(26,24,64,.15);border-color:rgba(26,24,64,.1)}.service-icon{width:70px;height:70px;background:#1a1840;border-radius:16px;display:flex;align-items:center;justify-content:center;margin:0 auto 1.25rem;color:#fff;font-size:2rem;transition:all .4s cubic-bezier(.4,0,.2,1)}.service-card:hover .service-icon{transform:scale(1.1) rotate(5deg);background:#cea257}.service-title{font-size:1.25rem;font-weight:700;color:#1a1a1a;margin-bottom:.75rem;letter-spacing:-.5px}.service-description{color:#666;line-height:1.7;margin-bottom:2rem;font-size:.95rem}.service-link{color:#1a1840;font-weight:600;text-decoration:none;transition:all .3s ease;display:inline-flex;align-items:center;gap:.5rem}.service-link:hover{color:#cea257;gap:.75rem}.packages-section{padding:3rem 0;background:#fff}.package-card{background:#fff;border-radius:12px;padding:1.75rem;box-shadow:0 4px 20px rgba(0,0,0,.08);transition:all .3s ease;border:1px solid rgba(0,0,0,.05);position:relative;height:100%}.package-card.featured{border:2px solid #cea257;transform:scale(1.05)}.package-card.featured:before{content:"Más Popular";position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:#cea257;color:#1a1840;padding:.5rem 1.5rem;border-radius:20px;font-size:.875rem;font-weight:600}.package-card:hover{transform:translateY(-8px);box-shadow:0 12px 40px rgba(0,0,0,.15)}.package-card.featured:hover{transform:scale(1.05) translateY(-8px)}.package-title{font-size:1.35rem;font-weight:600;color:#212121;margin-bottom:.75rem;text-align:center}.package-price{font-size:2.25rem;font-weight:700;color:#1a1840;text-align:center;margin-bottom:1rem}.package-price .currency{font-size:1.5rem;vertical-align:top}.package-description{color:#757575;line-height:1.6;margin-bottom:2rem;text-align:center}.package-features{list-style:none;padding:0;margin-bottom:2rem}.package-features li{color:#212121;position:relative;padding:.5rem 0 .5rem 2rem}.package-features li:before{content:"✓";position:absolute;left:0;color:#4caf50;font-weight:700}.package-cta{text-align:center;margin-top:auto}@media (max-width:768px){.hero-section{padding:calc(6rem + 60px) 0 4rem}.hero-content{padding:0 1rem}.hero-title{font-size:2rem;margin-bottom:1rem;line-height:1.2}.hero-subtitle{font-size:1.1rem;margin-bottom:1rem;line-height:1.4}.hero-cta{margin-top:2rem}.hero-cta .btn{padding:.9rem 2rem;font-size:.9rem;width:100%;max-width:280px}.section-title{font-size:1.75rem;margin-bottom:1rem}.section-title:after{bottom:-10px;width:60px;height:4px}.services-section{padding:2.5rem 0}.service-card{margin-bottom:1.5rem;padding:1.75rem 1.25rem}.service-card:hover{transform:none;box-shadow:0 10px 40px rgba(0,0,0,.06)}.service-card:active{transform:scale(.98)}.service-icon{width:60px;height:60px;font-size:1.75rem;margin-bottom:1rem}.service-card:hover .service-icon{transform:none}.service-title{font-size:1.15rem;margin-bottom:.5rem}.service-description{font-size:.9rem;margin-bottom:1.5rem}.package-card{margin-bottom:1.5rem;padding:1.5rem}.package-card.featured{transform:none;margin-top:1.5rem}.package-card:hover{transform:none}.package-card:active{transform:scale(.98)}.package-card.featured:hover{transform:none}.package-title{font-size:1.2rem}.package-price{font-size:2rem}.package-price .currency{font-size:1.25rem}}@media (max-width:480px){.hero-title{font-size:1.75rem}.hero-subtitle{font-size:1rem}.hero-cta .btn{padding:.85rem 1.75rem;font-size:.85rem}.section-title{font-size:1.5rem}.service-card{padding:1.5rem 1rem}.service-icon{width:55px;height:55px;font-size:1.5rem}}