:root{--wine: #7A2948;--rose: #B96A7A;--rose-light: #E8C8CE;--cream: #F8F3EF;--coffee: #3A2927;--gold: #C5A46D;--gold-dark: #8F6F38;--white: #ffffff;--shadow: 0 8px 40px rgba(58,41,39,.1);--shadow-lg: 0 20px 60px rgba(58,41,39,.12);--radius: 24px;--radius-lg: 40px;--radius-xl: 60px}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px;font-size:16px}body{font-family:Mulish,sans-serif;background:var(--cream);color:var(--coffee);overflow-x:hidden;line-height:1.7}h1,h2,h3,h4{font-family:Cormorant Garamond,serif;font-weight:600;line-height:1.2}.script-font{font-family:Great Vibes,cursive}a{text-decoration:none;color:inherit;transition:.3s}img{max-width:100%;display:block}ul{list-style:none}.container{max-width:1200px;margin:0 auto;padding:0 24px}.curve-divider{width:100%;overflow:hidden;line-height:0}.curve-divider svg{display:block;width:100%;height:60px}.section-title{text-align:center;margin-bottom:60px}.section-title .label,.about-text .label,.reviews-box .label{font-family:Great Vibes,cursive;color:var(--gold-dark);font-size:1.5rem;display:block;margin-bottom:8px}.section-title h2{font-size:clamp(2rem,5vw,3.2rem);color:var(--coffee)}.section-title .ornament{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:16px}.section-title .ornament span{width:50px;height:1px;background:var(--gold)}.section-title .ornament svg{width:20px;height:20px;fill:var(--gold)}.btn{display:inline-flex;align-items:center;gap:8px;padding:16px 36px;border-radius:50px;font-family:Mulish,sans-serif;font-weight:600;font-size:.95rem;letter-spacing:.5px;transition:all .4s cubic-bezier(.4,0,.2,1);cursor:pointer;border:none;position:relative;overflow:hidden}.btn-primary{background:var(--wine);color:var(--white);box-shadow:0 6px 24px #7a29484d}.btn-primary:hover{background:#8c3058;transform:translateY(-2px);box-shadow:0 10px 32px #7a294866}.btn-outline{background:transparent;color:var(--wine);border:2px solid var(--wine)}.btn-outline:hover{background:var(--wine);color:var(--white)}.btn-gold{background:var(--gold);color:var(--coffee);box-shadow:0 6px 24px #c5a46d4d}.btn-gold:hover{background:#d4b57e;transform:translateY(-2px)}.navbar{position:fixed;top:0;left:0;width:100%;z-index:1000;padding:16px 0;transition:all .4s}.navbar.scrolled,.navbar.solid{background:#3a2927f5;backdrop-filter:blur(12px);box-shadow:0 2px 20px #3a292740;padding:10px 0}.navbar .container{display:flex;align-items:center;justify-content:space-between}.nav-logo img{height:52px;width:auto;transition:.3s}.navbar.scrolled .nav-logo img,.navbar.solid .nav-logo img{height:42px}.nav-links{display:flex;align-items:center;gap:32px}.nav-links a{font-size:.9rem;font-weight:500;color:var(--white);position:relative;letter-spacing:.3px}.nav-links a:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:2px;background:var(--gold);transition:width .3s}.nav-links a:hover:after{width:100%}.nav-cta{padding:10px 24px!important;background:var(--wine);color:var(--white)!important;border-radius:50px;font-weight:600!important}.nav-cta:after{display:none!important}.nav-cta:hover{background:#8c3058;transform:translateY(-1px)}.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;z-index:1001;background:none;border:none;padding:8px}.hamburger span{width:26px;height:2px;background:var(--white);transition:.3s;border-radius:2px}.hamburger.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden}.hero-bg{position:absolute;inset:0;z-index:0}.hero-bg img{width:100%;height:100%;object-fit:cover}.hero-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#3a2927b3,#7a294866,#3a292799)}.hero>.container{width:100%}.hero-content{position:relative;z-index:2;max-width:650px;padding:120px 0 80px}.hero-content .script-font{color:var(--gold);font-size:clamp(1.8rem,4vw,2.8rem);display:block;margin-bottom:8px}.hero-content h1{font-size:clamp(2.8rem,6vw,4.5rem);color:var(--white);margin-bottom:20px;line-height:1.1}.hero-content h1 .h1-sub{display:block;margin-top:12px;font-family:Mulish,sans-serif;font-size:clamp(.95rem,1.6vw,1.15rem);font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--rose-light)}.hero-content p{color:#ffffffd9;font-size:1.1rem;margin-bottom:36px;max-width:500px;line-height:1.8}.hero-buttons{display:flex;gap:16px;flex-wrap:wrap}.hero-buttons .btn-outline{border-color:var(--white);color:var(--white)}.hero-buttons .btn-outline:hover{background:var(--white);color:var(--wine)}.hero-curve{position:absolute;bottom:-2px;left:0;width:100%;z-index:3}.hero-curve svg{display:block;width:100%;height:100px}.hero-shape{position:absolute;border-radius:50%;opacity:.08;z-index:1}.hero-shape-1{width:400px;height:400px;background:var(--gold);top:-100px;right:-100px}.hero-shape-2{width:250px;height:250px;background:var(--rose);bottom:120px;right:10%}.services{padding:100px 0 80px;background:var(--cream)}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service-card{position:relative;border-radius:var(--radius);overflow:hidden;aspect-ratio:4/5;transition:transform .5s cubic-bezier(.4,0,.2,1),box-shadow .5s}.service-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg)}.service-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.service-card:hover img{transform:scale(1.05)}.service-card .overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(58,41,39,.85) 100%);display:flex;flex-direction:column;justify-content:flex-end;padding:32px 24px;transition:.4s}.service-card:hover .overlay{background:linear-gradient(180deg,transparent 10%,rgba(122,41,72,.85) 100%)}.service-card .service-icon{width:56px;height:56px;border-radius:50%;background:#ffffff26;backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.25);display:flex;align-items:center;justify-content:center;margin-bottom:16px}.service-card .service-icon svg{width:28px;height:28px;stroke:var(--white);fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.service-card h3{color:var(--white);font-size:1.5rem;margin-bottom:8px}.service-card .gold-line{width:40px;height:2px;background:var(--gold);margin-bottom:10px;transition:width .4s}.service-card:hover .gold-line{width:60px}.service-card .keywords{color:#fffc;font-size:.8rem;letter-spacing:1.5px;text-transform:uppercase;font-weight:500}.about{padding:90px 0 20px;background:var(--cream)}.about-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:56px;align-items:center}.about-text .label{font-size:1.5rem;display:block;margin-bottom:8px}.about-text h2{font-size:clamp(2rem,4.5vw,3rem);color:var(--coffee);margin-bottom:24px}.about-text p{color:#5d4c4a;margin-bottom:16px;font-size:1.02rem}.about-card{background:linear-gradient(135deg,var(--wine),#5c1f37);color:var(--white);border-radius:var(--radius-lg);padding:44px 36px;box-shadow:var(--shadow-lg)}.about-card .script-font{display:block;color:var(--gold);font-size:2.2rem;line-height:1.2;margin-bottom:12px}.about-card p{color:#ffffffe6;margin-bottom:20px}.about-card li{position:relative;padding:10px 0 10px 28px;border-top:1px solid rgba(255,255,255,.15);font-weight:500}.about-card li:before{content:"";position:absolute;left:4px;top:50%;width:8px;height:8px;margin-top:-4px;border-radius:50%;background:var(--gold)}.services-detail{margin-top:72px}.services-detail-title{text-align:center;font-size:clamp(1.6rem,3.5vw,2.2rem);color:var(--coffee);margin-bottom:36px}.services-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.detail-card{background:var(--white);border-radius:var(--radius);padding:32px 28px;box-shadow:var(--shadow)}.detail-card h4{font-size:1.35rem;color:var(--wine);margin-bottom:12px;padding-bottom:10px;border-bottom:2px solid var(--rose-light)}.detail-card ul+h4{margin-top:24px}.detail-card li{position:relative;padding:5px 0 5px 20px;font-size:.93rem;color:#5d4c4a;line-height:1.5}.detail-card li:before{content:"";position:absolute;left:2px;top:13px;width:6px;height:6px;border-radius:50%;background:var(--gold)}.reviews{padding:90px 0;background:var(--cream)}.reviews-box{max-width:760px;margin:0 auto;text-align:center;background:var(--white);border-radius:var(--radius-lg);padding:56px 40px;box-shadow:var(--shadow)}.reviews-box .label{font-size:1.5rem;display:block;margin-bottom:8px}.reviews-box h2{font-size:clamp(1.8rem,4vw,2.6rem);color:var(--coffee);margin-bottom:16px}.reviews-box p{color:#5d4c4a;margin-bottom:28px}.differentials{padding:100px 0;background:var(--cream);position:relative}.diff-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:20px}.diff-card{background:var(--white);border-radius:var(--radius);padding:36px 24px;text-align:center;transition:transform .4s,box-shadow .4s;position:relative;overflow:hidden}.diff-card:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:60px;height:3px;background:var(--gold);border-radius:0 0 4px 4px;transition:width .4s}.diff-card:hover:before{width:100%}.diff-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.diff-icon{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,var(--rose-light),rgba(185,106,122,.2));display:flex;align-items:center;justify-content:center;margin:0 auto 20px}.diff-icon svg{width:28px;height:28px;stroke:var(--wine);fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.diff-card h3{font-size:1.15rem;margin-bottom:10px;color:var(--coffee)}.diff-card p{font-size:.88rem;color:#6b5a58;line-height:1.7}.workflow{padding:100px 0;background:var(--white);position:relative}.workflow:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 0%,rgba(232,200,206,.2) 0%,transparent 50%);pointer-events:none}.workflow-grid{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:32px;position:relative;z-index:1}.workflow-step{text-align:center;padding:32px 20px;position:relative}.step-number{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--wine),var(--rose));color:var(--white);display:flex;align-items:center;justify-content:center;font-family:Cormorant Garamond,serif;font-size:1.4rem;font-weight:700;margin:0 auto 20px;box-shadow:0 4px 16px #7a294840}.workflow-step h3{font-size:1.2rem;margin-bottom:10px;color:var(--coffee)}.workflow-step p{font-size:.9rem;color:#6b5a58;line-height:1.7}.workflow-step:after{content:"";position:absolute;top:52px;right:-16px;width:32px;height:2px;background:var(--rose-light)}.workflow-step:nth-child(3n):after{display:none}.faq{padding:100px 0;background:var(--cream)}.faq-list{max-width:800px;margin:0 auto}.faq-item{background:var(--white);border-radius:var(--radius);margin-bottom:16px;overflow:hidden;transition:box-shadow .3s}.faq-item:hover{box-shadow:var(--shadow)}.faq-question{list-style:none;width:100%;display:flex;align-items:center;justify-content:space-between;padding:24px 32px;background:none;border:none;cursor:pointer;font-family:Cormorant Garamond,serif;font-size:1.15rem;font-weight:600;color:var(--coffee);text-align:left;gap:16px}.faq-question .icon{width:32px;height:32px;border-radius:50%;background:var(--rose-light);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .3s,background .3s}.faq-question::-webkit-details-marker{display:none}.faq-item[open] .faq-question .icon{transform:rotate(45deg);background:var(--wine)}.faq-item[open] .faq-question .icon svg{stroke:var(--white)}.faq-question .icon svg{width:16px;height:16px;stroke:var(--wine);stroke-width:2}.faq-answer-inner{padding:0 32px 24px;font-size:.95rem;color:#6b5a58;line-height:1.8}.contact{padding:100px 0;background:var(--white);position:relative}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.contact-info{display:flex;flex-direction:column;gap:28px}.contact-item{display:flex;align-items:flex-start;gap:16px}.contact-icon{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,var(--rose-light),rgba(185,106,122,.15));display:flex;align-items:center;justify-content:center;flex-shrink:0}.contact-icon svg{width:22px;height:22px;stroke:var(--wine);fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.contact-item h3{font-size:1.05rem;margin-bottom:4px}.contact-item p,.contact-item a{font-size:.92rem;color:#6b5a58;line-height:1.6}.contact-item a:hover{color:var(--wine)}.contact-item .link-underline{color:var(--wine);font-weight:600;text-decoration:underline}.contact-map{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow);aspect-ratio:4/3}.contact-map iframe{width:100%;height:100%;border:none}.contact-cta{text-align:center;margin-top:48px}.footer{background:var(--coffee);color:#ffffffb3;padding:60px 0 0;position:relative}.footer:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(ellipse at 50% 0%,rgba(122,41,72,.15) 0%,transparent 60%);pointer-events:none}.footer-grid{display:grid;grid-template-columns:1.8fr 1fr 1fr 1.3fr;gap:48px;padding-bottom:48px;border-bottom:1px solid rgba(255,255,255,.1);position:relative;z-index:1}.footer-brand img{height:48px;margin-bottom:16px;filter:brightness(0) invert(1) opacity(.8)}.footer-brand p{font-size:.9rem;line-height:1.7;max-width:320px}.footer h3{color:var(--white);font-size:1.1rem;margin-bottom:20px}.footer-links{font-style:normal}.footer-links a,.footer-links span{display:block;padding:4px 0;font-size:.9rem;transition:color .3s}.footer-links a:hover{color:var(--gold)}.footer-bottom{text-align:center;padding:24px 0;font-size:.82rem;position:relative;z-index:1}.footer-bottom p{color:#fff}.footer-bottom a{color:#ff0;text-decoration:underline}.footer-bottom a:hover{color:#fff;text-decoration:underline}.whatsapp-float{position:fixed;bottom:28px;right:28px;z-index:999;width:60px;height:60px;border-radius:50%;background:#25d366;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px #25d36666;transition:transform .3s,box-shadow .3s;animation:pulse-wp 2s infinite}.whatsapp-float:hover{transform:scale(1.1);box-shadow:0 6px 28px #25d36680}.whatsapp-float svg{width:30px;height:30px;fill:#fff}@keyframes pulse-wp{0%,to{box-shadow:0 4px 20px #25d36666}50%{box-shadow:0 4px 30px #25d36699}}.js .reveal{opacity:0;transform:translateY(30px);transition:opacity .7s cubic-bezier(.4,0,.2,1),transform .7s cubic-bezier(.4,0,.2,1)}.js .reveal.visible{opacity:1;transform:translateY(0)}@media(max-width:1024px){.diff-grid{grid-template-columns:repeat(3,1fr)}.services-detail-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.workflow-grid{grid-template-columns:repeat(2,1fr)}.workflow-step:after{display:none}}@media(max-width:768px){.hamburger{display:flex}.nav-links{position:fixed;top:0;right:-100%;width:80%;max-width:320px;height:100vh;background:var(--cream);flex-direction:column;justify-content:center;gap:24px;transition:right .4s;box-shadow:-4px 0 30px #0000001a}.nav-links.open{right:0}.nav-links a{color:var(--coffee)!important;font-size:1.1rem}.nav-links .nav-cta{color:var(--white)!important}.hamburger.active span{background:var(--coffee)}.about{padding-top:70px}.about-grid{grid-template-columns:1fr;gap:32px}.services-detail-grid{grid-template-columns:1fr}.reviews-box{padding:40px 24px}.services-grid{grid-template-columns:repeat(2,1fr)}.testimonials-grid{grid-template-columns:1fr}.diff-grid{grid-template-columns:repeat(2,1fr)}.workflow-grid,.contact-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr;gap:32px}.hero-content{padding:100px 0 60px}}@media(max-width:480px){.services-grid,.diff-grid{grid-template-columns:1fr}.hero-buttons{flex-direction:column}.hero-buttons .btn{width:100%;justify-content:center}}.cookie-banner{position:fixed;bottom:0;left:0;width:100%;background:#3a2927f2;backdrop-filter:blur(12px);color:var(--white);padding:20px 24px;z-index:9999;transform:translateY(100%);transition:transform .4s cubic-bezier(.4,0,.2,1);box-shadow:0 -4px 20px #0003}.cookie-banner.show{transform:translateY(0)}.cookie-content{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.cookie-content p{flex:1;font-size:.9rem;line-height:1.6;margin:0}.cookie-content a{color:var(--gold);text-decoration:underline}.cookie-buttons{display:flex;gap:12px;flex-shrink:0}.cookie-banner .btn-outline{color:var(--white);border-color:#ffffffb3}.cookie-banner .btn-outline:hover{background:var(--white);color:var(--wine)}.btn-sm{padding:10px 24px!important;font-size:.85rem!important}.breadcrumb{background:#f8f3efcc;padding:12px 0;border-bottom:1px solid rgba(232,200,206,.3)}.breadcrumb ol{display:flex;gap:8px;list-style:none;margin:0;padding:0;font-size:.85rem}.breadcrumb [aria-current]{color:#6b5a58}.breadcrumb li:not(:last-child):after{content:"/";margin-left:8px;color:var(--rose)}.breadcrumb a{color:var(--wine);font-weight:500}.breadcrumb a:hover{text-decoration:underline}.navbar.solid{position:sticky}.legal-page{padding:48px 0 60px;background:var(--cream)}.legal-page .container{max-width:800px}.legal-page h1{font-size:2.5rem;margin-bottom:32px;color:var(--coffee)}.legal-page h3{font-size:1.2rem;margin:24px 0 12px;color:var(--coffee)}.legal-page ul{list-style:disc}.legal-page h2{font-size:1.5rem;margin:32px 0 16px;color:var(--wine)}.legal-page p,.legal-page ul{margin-bottom:16px;line-height:1.8;color:#6b5a58}.legal-page ul{padding-left:24px}.legal-page ul li{margin-bottom:8px}.legal-page a{color:var(--wine);text-decoration:underline}.error-page{min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;background:var(--cream);padding:40px 24px}.error-page h1{font-size:6rem;color:var(--wine);margin-bottom:16px}.error-page h2{font-size:2rem;color:var(--coffee);margin-bottom:24px}.error-page p{font-size:1.1rem;color:#6b5a58;margin-bottom:32px}.skip-link{position:absolute;left:16px;top:-60px;z-index:10000;background:var(--wine);color:var(--white);padding:10px 18px;border-radius:0 0 12px 12px;font-weight:600}.skip-link:focus{top:0}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:3px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}}
