/* Presentation layer. Original content, links, images and brand colors retained. */
:root{--border-radius:16px;--box-shadow:0 8px 30px rgba(38,67,102,.055);--transition:color .18s ease,background-color .18s ease,box-shadow .18s ease,transform .18s ease;--reading-ink:#28394b;--line:#e5edf5}
html{scroll-padding-top:160px}
body{background:#f4f7fb;color:var(--reading-ink);font-family:Tahoma,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}
.container{max-width:1240px;padding-inline:28px}
.header-logo{padding:22px 0;background:#fff;box-shadow:none;border-bottom:1px solid var(--line)}
.logo-link{display:inline-flex;align-items:center;max-width:100%}
.header-logo .logo{display:block;width:420px;max-width:100%;height:auto;object-fit:contain}
.navbar{border-bottom:1px solid var(--line);box-shadow:0 4px 18px rgba(38,67,102,.035)}
.nav-container{padding-block:12px}
.nav-menu{gap:2px 4px;align-items:center}
.nav-item{margin:0;min-width:0}
.nav-link{font-size:13px;font-weight:600;padding:11px 12px;border-radius:8px;line-height:1.7}
.nav-link:hover,.nav-link:focus-visible{background:#eff6fd;color:#286bae}
.dropdown-menu{border:1px solid var(--line);border-radius:12px;padding:8px;min-width:260px;box-shadow:0 16px 40px rgba(26,55,90,.13);max-height:min(65vh,560px);overflow-y:auto}
.dropdown-item{padding:11px 13px;border-radius:7px;font-size:14px;line-height:1.8;white-space:normal}
.dropdown-item:hover{background:#eff6fd}
header{margin-top:28px;margin-bottom:24px;padding:52px 28px;border-radius:20px;background:linear-gradient(125deg,#4a90e2,#63b3ed);box-shadow:0 12px 32px rgba(74,144,226,.16)}
header h1{max-width:980px;margin:0 auto 18px;font-size:clamp(1.65rem,2.6vw,2.5rem);line-height:1.65;font-weight:700;text-shadow:none;text-wrap:balance}
.header-subtitle{max-width:850px;margin-inline:auto;line-height:1.9;font-size:1.05rem;color:#fff}
.header-cta{margin-top:24px}
.breadcrumb{padding:14px 20px;margin-bottom:24px;background:#fff;border:1px solid var(--line);box-shadow:none;border-radius:12px;line-height:1.8}
.content-wrapper{grid-template-columns:minmax(0,1fr) 280px;gap:26px;align-items:start}
.main-content,.sidebar{min-width:0;border:1px solid var(--line);box-shadow:var(--box-shadow)}
.main-content{padding:36px}
.sidebar{padding:24px;top:144px;position:static}
.main-content p{font-size:1rem;line-height:2.05;margin-bottom:22px;overflow-wrap:anywhere}
.main-content li{line-height:1.95;overflow-wrap:anywhere}
.main-content h2,.section-title{font-size:clamp(1.3rem,2vw,1.65rem);line-height:1.8;margin-top:32px;margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.main-content h3{line-height:1.8}
.main-content>h2:first-child{margin-top:0}
.main-content img{max-width:100%!important;height:auto}
.featured-image{border-radius:12px;box-shadow:none}
.sidebar h3{font-size:1.1rem;line-height:1.8;margin-top:24px;margin-bottom:12px;padding-bottom:12px;color:#286bae}
.sidebar h3:first-child{margin-top:0}
.sidebar li{padding-block:10px;line-height:1.9}
.sidebar li:hover{transform:none}
.sidebar p{font-size:.875rem;line-height:1.9;overflow-wrap:anywhere}
.services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.service-card{border:1px solid var(--line);border-top:3px solid var(--primary-color);padding:24px 18px;box-shadow:none;cursor:default}
.service-card i{font-size:1.9rem;margin-bottom:14px}
.service-card h3,.service-card h4{font-size:1rem}
.service-card p{font-size:.9rem;margin:10px 0 0;line-height:1.9}
.highlight-box{border-radius:12px;box-shadow:none}
.cta-button{min-height:48px;padding:13px 25px;line-height:1.65;font-size:.95rem;box-shadow:0 4px 12px rgba(74,144,226,.14)}
.cta-button::before{display:none}
.cta-button.whatsapp{background:linear-gradient(100deg,#20be69,#128c7e);box-shadow:0 5px 15px rgba(18,140,126,.16)}
.cta-button:hover{transform:translateY(-2px)}
.sidebar .cta-button{display:flex;padding-inline:15px}
.contact-info{padding:28px 24px;border-radius:16px;box-shadow:none}
.contact-info p{color:inherit;overflow-wrap:anywhere}
.contact-methods{flex-wrap:wrap;gap:22px}
.testimonials{gap:14px}
.testimonial{min-width:0;box-shadow:none;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.testimonial img{display:block;width:100%;height:auto}
footer{padding:30px 24px;border-radius:16px 16px 0 0;margin-top:32px}
footer p{font-size:.875rem;line-height:1.95}
.back-to-top{width:44px;height:44px;left:20px;bottom:20px;border:1px solid rgba(255,255,255,.5);box-shadow:0 5px 18px rgba(30,60,100,.15)}
.cursor-effect{display:none}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #245d9d;outline-offset:4px;border-radius:5px}
.mobile-menu-btn{min-width:46px;min-height:46px;border-radius:9px;color:#286bae}
input,textarea,select{max-width:100%;font:inherit}
@media(min-width:993px){.nav-item:focus-within>.dropdown-menu{opacity:1;visibility:visible;transform:none}.nav-link{white-space:nowrap}}
@media(max-width:1100px) and (min-width:993px){.nav-link{padding:9px 8px;font-size:12px}.container{padding-inline:22px}}
@media(max-width:992px){
 html{scroll-padding-top:90px}
 .container{padding-inline:22px}
 .header-logo{padding:20px 0}
 .header-logo .logo{width:360px;max-width:100%;height:auto}
 .nav-container{justify-content:flex-start;position:relative;padding-block:8px}
 .nav-menu{display:none;position:absolute;top:100%;right:0;left:0;width:auto;height:auto;max-height:calc(100dvh - 90px);padding:12px 16px 20px;background:#fff;box-shadow:0 18px 30px rgba(30,60,100,.13);border:1px solid var(--line);border-radius:0 0 14px 14px;overflow-y:auto;overscroll-behavior:contain;transition:none;align-items:stretch}
 .nav-menu.active{display:flex;right:0}
 .nav-item{margin:0;width:100%}
 .nav-link{display:block;width:100%;font-size:14px;padding:12px 16px;white-space:normal;line-height:1.9}
 .dropdown-menu{max-height:none;margin:4px 12px 10px 0;padding:4px 8px;border:0;border-right:2px solid #d9eafd;border-radius:0;box-shadow:none;min-width:0}
 .dropdown-item{font-size:14px}
 .content-wrapper{grid-template-columns:minmax(0,1fr);gap:22px}
 .sidebar{position:static}
 header{padding:38px 24px}
 .main-content{padding:28px}
}
@media(max-width:600px){
 .container{padding-inline:16px}
 .header-logo .logo{width:300px;height:auto;max-width:100%}
 .header-logo{padding:20px 12px}
 header{padding:30px 20px;margin-top:18px;border-radius:16px;margin-bottom:18px}
 header h1{font-size:1.55rem;line-height:1.75;margin-bottom:14px}
 .header-subtitle{font-size:.94rem;line-height:2}
 .header-cta{margin-top:18px}
 .main-content,.sidebar{padding:22px 18px;border-radius:14px}
 .main-content p{font-size:15px;line-height:2.1}
 .main-content h2,.section-title{font-size:1.25rem;margin-top:28px}
 .services-grid,.reasons-grid,.contact-methods-grid{grid-template-columns:minmax(0,1fr)}
 .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .stat-item{min-width:0;padding:12px 8px;overflow-wrap:anywhere}
 .stat-number{font-size:clamp(1.2rem,5vw,1.75rem)}
 .stat-label{font-size:13px;line-height:1.8}
 .service-card{padding:22px 18px}
 .testimonials,.testimonial-grid{grid-template-columns:minmax(0,1fr)}
 .contact-info{padding:24px 18px}
 .contact-methods{gap:18px}
 .breadcrumb{padding:12px 16px;font-size:13px}
 footer{padding:26px 18px}
 .back-to-top{left:12px;bottom:12px}
 .main-content table{display:block;max-width:100%;overflow-x:auto}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
