:root{--accent:#0ea5a4;--accent-2:#6366f1;--muted:#64748b;--font-serif:"Merriweather", Georgia, "Times New Roman", serif;--font-sans: "Open Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial}*{box-sizing:border-box}body{font-family:var(--font-sans);margin:0;color:#0f172a;line-height:1.875;font-size:16px;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-serif);line-height:1.3;font-weight:700}h4,h5,h6{font-family:var(--font-sans)}.app{min-height:100vh;display:flex;flex-direction:column}main{flex:1}.site-header{position:fixed;top:0;left:0;right:0;z-index:100;padding:0 48px;height:80px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:transparent;transition:background .35s ease,box-shadow .35s ease}.site-header.scrolled{background:#fff;box-shadow:0 2px 20px #0f172a1a}.logo{display:flex;align-items:center;gap:12px;font-weight:700;font-size:1.2rem;color:#fff;transition:color .35s ease}.site-header.scrolled .logo{color:#0f172a}.logo img{border-radius:50%;object-fit:cover;object-position:center 35%;flex-shrink:0;width:64px;height:64px}.hamburger{display:flex;flex-direction:column;justify-content:space-between;width:28px;height:20px;background:none;border:none;cursor:pointer;padding:0;flex-shrink:0}.hamburger span{display:block;height:2.5px;border-radius:2px;background:#ffffffe6;transition:transform .3s ease,opacity .3s ease,background .35s ease;transform-origin:center}.site-header.scrolled .hamburger span{background:#0f172a}.hamburger.open span:nth-child(1){transform:translateY(8.75px) rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0;transform:scaleX(0)}.hamburger.open span:nth-child(3){transform:translateY(-8.75px) rotate(-45deg)}.nav-dropdown{position:fixed;top:80px;right:48px;z-index:99;min-width:180px;background:#fff;border-radius:10px;box-shadow:0 8px 32px #0f172a26;padding:8px 0;transform:translateY(-8px);opacity:0;pointer-events:none;transition:transform .22s ease,opacity .22s ease}.nav-dropdown.visible{transform:translateY(0);opacity:1;pointer-events:auto}.nav-breadcrumb{display:flex;flex-direction:column}.bc-item{display:flex}.bc-link{width:100%;background:none;border:none;cursor:pointer;text-align:left;font-size:.95rem;font-weight:500;padding:11px 20px;color:#334155;border-left:3px solid transparent;transition:background .15s,color .15s,border-color .15s}.bc-link:hover{background:#f1f5f9;color:#0f172a;border-left-color:var(--accent)}.bc-link.active{color:var(--accent);font-weight:700;border-left-color:var(--accent);background:#f0fafa}.hero{position:relative;color:#fff;overflow:hidden;display:block;background:#0f172a;height:62vw;min-height:280px}.hero-bg-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;object-position:center;opacity:0;transition:opacity 1.2s ease}.hero-bg-img.active{opacity:1}.hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000002e;z-index:1}.hero-dots{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 0;background:#0f172a}.hero-dot{width:10px;height:10px;border-radius:50%;background:#ffffff59;border:none;cursor:pointer;padding:0;transition:background .3s ease,transform .3s ease;flex-shrink:0}.hero-dot:hover{background:#ffffffa6}.hero-dot.active{background:#fff;transform:scale(1.3)}.hero-cards-panel{background:#f8fafc;padding:32px 0;width:100%;overflow:hidden}.hero-cards-container{overflow:hidden;width:100%}.hero-cards-track{display:flex;width:max-content;padding:8px 0;animation:marquee 32s linear infinite}.hero-cards-panel:hover .hero-cards-track{animation-play-state:paused}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.hero-card{flex:0 0 400px;margin-right:20px;background:#fff;border:none;border-radius:16px;box-shadow:0 4px 20px #0f172a12;transition:transform .3s ease,box-shadow .3s ease;display:flex;flex-direction:column;align-items:center;text-align:center;padding:24px 16px}.hero-card:hover{transform:translateY(-6px);box-shadow:0 12px 32px #0f172a1f}.hero-card-icon-wrap{width:64px;height:64px;border-radius:50%;background:#0ea5a41a;display:flex;align-items:center;justify-content:center;margin-bottom:14px;flex-shrink:0}.hero-card-icon{width:32px;height:32px;color:var(--accent)}.hero-card-copy{display:flex;flex-direction:column;align-items:center}.hero-card-copy h3{margin:0 0 8px;font-size:.95rem;color:#0f172a;font-weight:700;letter-spacing:.01em}.hero-card-copy p{margin:0;color:#64748b;font-size:.82rem;line-height:1.6;font-style:italic}.about-section{padding:72px 32px;background:#fff;border-bottom:1px solid #e6eef7}.about-container{max-width:820px;margin:0 auto;text-align:center}.about-container p:first-of-type{font-size:1.05rem;font-weight:600;color:#334155;margin:0 0 28px;letter-spacing:.01em}.about-container p{font-size:1rem;line-height:1.85;color:#475569;margin:0 0 18px}.gallery-section{padding:72px 32px;background:#f8fafc}.gallery-container{max-width:1200px;margin:0 auto}.gallery-container h2{font-size:1.25rem;margin:0 0 28px;text-align:center;letter-spacing:.02em}.gallery-filters{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 40px;justify-content:center}.filter-btn{background:#fff;border:2px solid #e6eef7;color:#475569;padding:10px 16px;border-radius:20px;cursor:pointer;font-size:.95rem;font-weight:500;transition:all .3s ease}.filter-btn:hover{border-color:var(--accent);color:var(--accent)}.filter-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.gallery-item{position:relative;overflow:hidden;border-radius:12px;aspect-ratio:1;cursor:pointer}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.gallery-item:hover img{transform:scale(1.1)}.gallery-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#0006;display:flex;align-items:flex-end;padding:16px;opacity:0;transition:opacity .3s ease}.gallery-item:hover .gallery-overlay{opacity:1}.gallery-overlay h3{color:#fff;margin:0;font-size:1.125rem}.services-section{padding:72px 32px;background:#fff}.services-container{max-width:1200px;margin:0 auto}.services-container h2{font-size:1.25rem;margin:0 0 10px;text-align:center;letter-spacing:.02em}.services-subtitle{text-align:center;color:var(--muted);margin:0 0 40px;font-size:1rem;letter-spacing:.01em}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}.service-card{background:#f8fafc;padding:28px;border-radius:12px;border-left:4px solid var(--accent)}.service-card h3{margin:0 0 18px;color:#0f172a;font-size:1.2rem;letter-spacing:.01em}.service-list{list-style:none;padding:0;margin:0}.service-list li{padding:9px 0;color:#475569;font-size:.95rem;border-bottom:1px solid #f1f5f9}.service-list li:last-child{border-bottom:none}.contact-section{max-width:900px;margin:60px auto;padding:40px 16px;background:#fff;width:100%}.contact-section h2{font-size:1.25rem;margin:0 0 40px;text-align:center;word-wrap:break-word;letter-spacing:.02em}.contact-details{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;width:100%}.contact-item{padding:24px;background:#f8fafc;border-radius:12px;border-left:4px solid var(--accent)}.contact-item h3{margin:0 0 14px;color:#0f172a;font-size:1.1rem;font-family:var(--font-sans);font-weight:600}.contact-item p{margin:8px 0;color:#475569;font-size:.95rem}.contact-item a{color:var(--accent);text-decoration:none;font-weight:600;transition:opacity .3s ease}.contact-item a:hover{opacity:.8}.testimonials-section{padding:72px 32px;background:#f8fafc;border-top:1px solid #e6eef7}.testimonials-container{max-width:1200px;margin:0 auto}.testimonials-container h2{font-size:1.25rem;margin:0 0 40px;text-align:center;letter-spacing:.02em}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}.testimonial-card{background:#fff;padding:28px;border-radius:12px;border-top:4px solid var(--accent-2);box-shadow:0 4px 12px #0f172a0f}.review-text{font-family:var(--font-serif);font-style:italic;color:#1e293b;margin:0 0 16px;font-size:1rem;line-height:1.75}.review-author{font-family:var(--font-sans);color:var(--accent-2);font-weight:600;margin:0;font-size:.85rem;letter-spacing:.04em;text-transform:uppercase}.partners-section{padding:72px 32px;background:#fff;border-top:1px solid #e6eef7}.partners-container{max-width:820px;margin:0 auto;text-align:center}.partners-container h2{font-size:1.25rem;margin:0 0 20px;letter-spacing:.02em}.partners-body{font-size:1rem;line-height:1.85;color:#475569;margin:0}.video-fab{position:fixed;bottom:96px;right:28px;z-index:999;width:56px;height:56px;border-radius:50%;background:var(--accent);color:#fff;border:none;display:flex;align-items:center;justify-content:center;font-size:1.2rem;cursor:pointer;box-shadow:0 4px 16px #0ea5a473;transition:transform .2s ease,box-shadow .2s ease}.video-fab:hover{transform:scale(1.12);box-shadow:0 6px 24px #0ea5a499}.video-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#000000d9;display:flex;align-items:center;justify-content:center;padding:20px}.video-modal{position:relative;width:100%;max-width:860px;border-radius:12px;overflow:hidden;box-shadow:0 24px 64px #0009}.video-modal-player{width:100%;display:block;max-height:80vh}.video-modal-close{position:absolute;top:10px;right:12px;z-index:10;background:#0009;color:#fff;border:none;width:32px;height:32px;border-radius:50%;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.video-modal-close:hover{background:#000000e6}.whatsapp-fab{position:fixed;bottom:28px;right:28px;z-index:999;width:56px;height:56px;border-radius:50%;background:#25d366;color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.75rem;box-shadow:0 4px 16px #25d36673;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}.whatsapp-fab:hover{transform:scale(1.12);box-shadow:0 6px 24px #25d36699}.footer{padding:28px 32px;border-top:1px solid #e6eef7;text-align:center;color:var(--muted)}@media (min-width:768px){.hero{height:60vh;min-height:420px}.gallery-container h2,.services-container h2,.testimonials-container h2,.partners-container h2,.contact-section h2{font-size:1.35rem}.site-header{padding:0 64px}}@media (max-width:767px){.hero{height:70vw}.site-header{padding:0 20px}.nav-dropdown{right:20px}.contact-details{grid-template-columns:1fr}}
