*,body{font-family:'DM Sans',sans-serif}h1,h2,h3,.display{font-family:'Barlow Condensed',sans-serif}::-webkit-scrollbar{display:none}html,body{-ms-overflow-style:none;scrollbar-width:none;background:#f8f8f6;overflow-x:hidden}html{scroll-behavior:smooth}
.hero-clip::after{content:'';position:absolute;bottom:-2px;left:0;right:0;height:80px;background:#f8f8f6;clip-path:polygon(0 100%,100% 0,100% 100%)}
.stats-band{background:#DC143C;background-image:repeating-linear-gradient(-45deg,transparent,transparent 20px,rgba(0,0,0,.04) 20px,rgba(0,0,0,.04) 40px)}
.service-card{transition:transform .25s ease,box-shadow .25s ease}.service-card:hover{transform:translateY(-6px);box-shadow:0 24px 48px rgba(0,0,0,.12)}
nav a::after{content:'';display:block;height:2px;width:0;background:#DC143C;transition:width .2s ease}nav a:hover::after{width:100%}
@keyframes floatUp{0%{opacity:0;transform:translateY(20px)}100%{opacity:1;transform:translateY(0)}}.float-badge{animation:floatUp .8s ease .4s both}
.service-card:hover .icon-wrap{transform:scale(1.12)}.icon-wrap{transition:transform .25s ease}
input:focus,select:focus,textarea:focus{outline:none;box-shadow:0 0 0 2px #DC143C40;border-color:#DC143C}
a.phone-link{transition:color .15s ease}a.phone-link:hover{color:#DC143C}
select#service-select{background-color:rgba(255,255,255,.08);color:#9ca3af;border:1px solid rgba(255,255,255,.1);appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%239ca3af' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}
select#service-select option{background-color:#1e2d3d;color:#e5e7eb}select#service-select option:checked{background-color:#DC143C;color:#fff}select#service-select.has-value{color:#fff}
.lang-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:8px;font-size:12px;font-weight:600;border:1.5px solid #e5e7eb;color:#374151;background:white;cursor:pointer;transition:all .2s ease;letter-spacing:.03em;white-space:nowrap}.lang-btn:hover{border-color:#DC143C;color:#DC143C}.lang-active{color:#DC143C!important;font-weight:700}.lang-sep{color:#d1d5db}
.header-shell{min-height:80px}
.services-menu{opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .16s ease,transform .16s ease,visibility .16s ease;pointer-events:none}
.services-dropdown:hover .services-menu,.services-dropdown:focus-within .services-menu{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}
.services-menu-item{display:block;padding:10px 12px;border-radius:10px;font-size:13px;font-weight:600;color:#1f2937;transition:background-color .15s ease,color .15s ease}
.services-menu-item:hover{background:#f3f4f6;color:#DC143C}
.mobile-nav-toggle{transition:border-color .15s ease,box-shadow .15s ease}
.mobile-nav-toggle:hover{border-color:#DC143C}
.mobile-nav-link{display:block;padding:10px 12px;border-radius:10px;font-size:13px;font-weight:600;color:#1f2937;transition:background-color .15s ease,color .15s ease}
.mobile-nav-link:hover{background:#f3f4f6;color:#DC143C}
.whatsapp-cta{background:#25D366;box-shadow:0 14px 30px rgba(37,211,102,.38)}
.whatsapp-cta:hover{background:#1DA851;box-shadow:0 16px 34px rgba(29,168,81,.42)}
[data-i18n]{transition:opacity .15s ease}.lang-swapping [data-i18n]{opacity:0}
#gallery-track{will-change:transform}#gallery-track.is-dragging{cursor:grabbing!important}

@media (max-width:767px){
header .max-w-7xl{padding-left:12px;padding-right:12px}
.header-shell{height:auto;min-height:108px;padding:10px 0 14px;gap:10px;flex-wrap:wrap;align-items:center}
.header-brand{min-width:0;width:100%;display:flex;align-items:center;gap:10px}
.header-brand>div:last-child{min-width:0}
.header-brand .w-12.h-12{width:44px;height:44px;border-radius:12px;flex-shrink:0}
.brand-title{font-size:2rem;line-height:.92;letter-spacing:.01em}
.header-brand [data-i18n="header_sub"]{display:none}
.header-actions{width:100%;display:grid;grid-template-columns:auto 1fr;gap:8px;align-items:center}
.lang-btn{padding:6px 10px;font-size:11px;height:42px}
.lang-btn .lang-sep,.lang-btn #lang-label-other{display:none}
.header-cta{padding:10px 12px;font-size:12px;line-height:1.1;text-align:center;max-width:none;width:100%;display:flex;align-items:center;justify-content:center;min-height:42px}
.mobile-nav{width:100%}
}
