/* NEO Consulting: owned design system and reusable components. */
:root{--green:#9ac31b;--lime:#c5d54f;--orange:#f60;--ink:#1e293b;--content-width:1350px}
*{box-sizing:border-box}html{font-size:18px;scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0;color:#000;background:white;font:400 1rem/1.4em Montserrat,sans-serif}
h1,h2,h3,h4,h5,h6{margin:0;font-family:Sora,sans-serif;font-weight:400;line-height:1.3;color:var(--ink)}
h1{font-size:2.6666666667rem;line-height:1.4}h2{font-size:2rem}h3{font-size:1.4444444444rem}h4{font-size:1.1111111111rem;line-height:1.2}h5{font-size:1rem;line-height:1.2}h6{font-size:.8333333333rem;line-height:1.2}
p{margin:0 0 1.3em}a{color:var(--green);text-decoration:none}a:hover{color:var(--ink)}
img{max-width:100%;height:auto;vertical-align:middle}svg{width:1em;height:1em;fill:currentColor;vertical-align:middle}
button,input,textarea,select{font:inherit}button,a,input,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}
:focus-visible{outline:3px solid #688b00;outline-offset:4px}ul,ol{padding-left:1.4em;margin:0 0 1.4em}[hidden]{display:none!important}
.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:15px;top:15px;background:white;padding:12px;z-index:1000}
.text-green{color:var(--green);font-weight:700}.text-orange{color:var(--orange);font-weight:700}

/* Header and navigation */
.site-header{position:absolute;inset:0 0 auto;z-index:100}
.header-top{max-width:var(--content-width);margin:auto;min-height:126.8125px;padding:16.40625px 0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:36px}
.brand img{width:170px;height:auto}.brand{display:block}.header-actions{display:flex;justify-content:flex-end;align-items:center;gap:20px}
.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:15px;padding:18px 25px;text-align:center;text-decoration:none;font:700 18px/1 Montserrat,sans-serif;color:#fff;background:linear-gradient(180deg,#c5d54f 0%,#9ac31b 66%);box-shadow:0 0 9px #000a;text-shadow:0 0 10px #0005;transition:background .3s,color .3s,transform .3s;max-width:100%}
.button:hover,.button:focus{color:var(--ink);background:linear-gradient(180deg,#fff 0%,#c5d54f 66%)}
.button-content{display:flex;align-items:center;justify-content:center;gap:10px}.button-icon{display:inline-flex}.button-icon svg{width:1em;height:1em}
.order-button{justify-self:start;white-space:nowrap;border:2px solid white;padding:12px;font-size:16px}
.whatsapp{gap:10px;padding:10px 15px;font-size:15px}.whatsapp img{width:30px;height:30px}.whatsapp span{line-height:1.1;text-align:left}
#main-navigation{background:#9ac31bcc}#main-navigation>ul{max-width:var(--content-width);margin:auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;min-height:50px;padding:0 10px;list-style:none}
#main-navigation li{position:relative;list-style:none;display:flex;align-items:center}#main-navigation a{color:white;font-family:Montserrat,sans-serif;font-weight:700;font-size:18px;letter-spacing:-1px;padding:4px 7px;display:block;white-space:nowrap}
#main-navigation li>ul{display:none;position:absolute;top:100%;left:0;margin:0;padding:0;min-width:400px;width:400px;background:#98c21bf0;border-radius:0 0 5px 5px;box-shadow:0 4px 4px #0000001a;z-index:101}
#main-navigation li>ul li{display:block}#main-navigation li>ul a{white-space:normal;font-size:18px;padding:16.2px 7px}
#main-navigation li:hover>ul,#main-navigation li:focus-within>ul,#main-navigation li.is-open>ul{display:block}
.submenu-toggle{background:none;border:0;box-shadow:none;color:white;padding:0 8px 0 0;font-size:18px;line-height:1}
.menu-toggle{display:none;background:var(--green);color:white;border:0;padding:10px 14px;box-shadow:0 0 8px #0006;font-size:22px}

/* Nested layouts reset their grid and flex controls. */
.layout{--layout:flex;--flow:column;--columns:repeat(2,minmax(0,1fr));--rows:auto;--row-gap:20px;--column-gap:20px;--align:stretch;--justify:normal;--justify-items:normal;--grid-flow:row;--shade:1;position:relative;display:var(--layout);flex-direction:var(--flow);grid-template-columns:var(--columns);grid-template-rows:var(--rows);gap:var(--row-gap) var(--column-gap);align-items:var(--align);justify-content:var(--justify);justify-items:var(--justify-items);grid-auto-flow:var(--grid-flow);width:100%;padding:10px;min-width:0;transition:transform .3s}
.layout.boxed{display:block}.container{position:relative;display:var(--layout);flex-direction:var(--flow);grid-template-columns:var(--columns);grid-template-rows:var(--rows);gap:var(--row-gap) var(--column-gap);align-items:var(--align);justify-content:var(--justify);justify-items:var(--justify-items);grid-auto-flow:var(--grid-flow);width:100%;max-width:var(--content-width);margin-inline:auto;min-width:0}
.page>.layout{isolation:isolate}
.page .button{width:100%;padding:20px 40px}
.layout::before{position:absolute;inset:0;pointer-events:none;opacity:var(--shade);z-index:1;border-radius:inherit}.layout>*{position:relative;z-index:2;min-width:0}
.content-block{position:relative;min-width:0;max-width:100%}.content-block img{display:inline-block}.content-block:has(>img){text-align:center}.heading{margin:0}p.heading{line-height:1}
.check-list{list-style:none;margin:0;padding:0}.check-item{display:flex;align-items:center;gap:8px;padding-bottom:5px}.check-item+.check-item{margin-top:5px}.check-item:last-child{padding-bottom:0}.check-item>a{display:flex;align-items:center;gap:8px;color:inherit}.check-icon{display:inline-flex;flex:none;color:var(--green);width:var(--check-size,18px);font-size:var(--check-size,18px);transform:translateY(var(--icon-offset,0))}.check-icon svg{width:1em;height:1em}.check-text{flex:1}
.icon-wrap{text-align:center}.icon{display:inline-flex;font-size:50px;line-height:1}.icon svg{height:1em;width:1em}.icon-filled{background:var(--green);color:white}.icon-framed{border:1px solid currentColor}
.anchor{position:relative;top:0}.spacer-inner{height:var(--spacer-height,50px)}.divider{display:flex}.divider-line{border-top:1px solid;width:100%}
.rotating-heading{font:400 1.4444444444rem/1.3 Sora,sans-serif;color:var(--ink)}.rotating-prefix,.rotating-words{font-size:32px;font-weight:700}.rotating-words{display:inline-block;color:var(--green)}.rotating-inner b{font-weight:700;display:none}.rotating-inner b:first-child{display:inline-block}.rotating-inner .is-visible{display:inline-block;animation:word-in .65s ease both}
.photo-carousel{overflow:hidden;border-radius:inherit}.photo-track{display:flex;gap:0;transition:transform .5s ease;will-change:transform}.photo-slide{flex:0 0 100%;min-width:0}.photo-frame{margin:0}.photo-image{width:100%;display:block}
.image-box{text-align:center}.image-box-photo{margin:0 0 15px}.image-box-title{margin:0 0 15px}
.section-hero[data-motion]{background-image:var(--hero-image);background-position:center;background-size:cover}
@media(max-width:767px){.section-hero[data-motion]{background-image:var(--hero-mobile,var(--hero-image))}}
.slideshow{position:absolute;inset:0;overflow:hidden;z-index:0;pointer-events:none}.slide{position:absolute;inset:0;background:center/cover no-repeat;opacity:0;transition:opacity .5s}.slide.is-active{opacity:1}.slide.is-active.zoom{animation:slow-zoom 5s linear both}
@keyframes slow-zoom{from{transform:scale(1)}to{transform:scale(1.08)}}@keyframes word-in{from{opacity:0;transform:rotateX(-70deg) translateY(5px)}to{opacity:1;transform:none}}
.reveal{animation-duration:1.25s;animation-fill-mode:both}.reveal-zoom{animation-name:reveal-zoom}.reveal-left{animation-name:reveal-left}.reveal-right{animation-name:reveal-right}.reveal-up{animation-name:reveal-up}
@keyframes reveal-zoom{from{opacity:0;transform:scale(.3)}to{opacity:1;transform:none}}@keyframes reveal-left{from{opacity:0;transform:translateX(-100%)}to{opacity:1;transform:none}}@keyframes reveal-right{from{opacity:0;transform:translateX(100%)}to{opacity:1;transform:none}}@keyframes reveal-up{from{opacity:0;transform:translateY(100%)}to{opacity:1;transform:none}}

/* Callback and feedback */
.callback-form{font-size:18px;margin-bottom:30px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:30px}.form-grid label{display:block;position:relative;padding-top:20px;font-size:16px;font-weight:400;line-height:20px}.form-grid label>span{position:absolute;top:30px;left:0;transition:top .2s,font-size .2s;pointer-events:none}.form-grid label:focus-within>span,.form-grid label:has(input:not(:placeholder-shown))>span{top:0;font-size:12px}.form-grid input{width:100%;padding:10px 0 9px;border:0;border-bottom:1px solid var(--green);border-radius:0;background:transparent;outline-offset:2px;font-size:16px;line-height:1.3;color:#475569}.callback-form .button{width:auto;font-size:14px;font-weight:500;line-height:1.45;border-radius:0;padding:10px;box-shadow:none;text-shadow:none;background:var(--green)}
.neo-form-status{margin-top:14px;font-size:15px;line-height:1.5;color:#406600}.neo-form-status:empty{display:none}.neo-form-status.is-error{color:#a62b24}.neo-honeypot,.neo-rating-honeypot{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
/* Footer and responsive rules */
.site-footer{background:#c5d54f;border-top:1px solid #9ac31b;color:#fff;font-size:1rem;line-height:1.4}.footer-inner{max-width:1350px;margin:auto;padding:20px 0;display:grid;grid-template-columns:1fr 1fr 2fr;gap:50px;align-items:center;text-align:center}.site-footer p{margin:0}.site-footer a{color:#fff}.social-links{display:flex;justify-content:center;gap:14px}.social-links svg{width:24px;height:24px;fill:currentColor}.footer-cities{line-height:1.4}
@media(max-width:1024px){:root{--content-width:1024px}.header-top{gap:20px}.order-button{font-size:14px}.header-actions{gap:12px}.header-actions .button{font-size:15px}}
@media(max-width:921px){html{font-size:16.416px}h1{font-size:1.7777777778rem}.header-top{display:flex;justify-content:space-between;min-height:126px;border-bottom:2px solid var(--green)}.header-top>.order-button,.header-actions{display:none}.menu-toggle{display:block}#main-navigation{display:none;background:var(--green)}.menu-open #main-navigation{display:block}#main-navigation>ul{display:block;padding:0}#main-navigation li{flex-wrap:wrap}#main-navigation li>a{flex:1;padding:0 10px;font-size:13.68px;line-height:41.04px;letter-spacing:0;text-transform:uppercase}#main-navigation li>ul{position:static;width:100%;box-shadow:none;background:#8cab18;padding:0 10px}#main-navigation li:hover>ul{display:none}#main-navigation li.is-open>ul{display:block}.submenu-toggle{padding:15px}.footer-inner{grid-template-columns:1fr;text-align:center;gap:24px}.social-links{justify-content:center}}
@media(max-width:767px){:root{--content-width:767px}.layout{--columns:1fr;--flow:column}.layout:not(.boxed){width:100%}.form-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

.mobile-actions{display:none}
@media(max-width:921px){.mobile-actions{display:flex;flex-direction:column;align-items:flex-start;gap:30px;padding:24px 20px 15px}.mobile-actions .order-button{background:none;border:0;box-shadow:none;text-shadow:none;white-space:normal;width:255px;font-size:14px;padding:16px 18px}.mobile-actions .button{color:white}.submenu-toggle{padding:0 12px;min-height:41px}.form-grid{gap:20px}}

@media(max-width:921px){#main-navigation .mobile-actions .button{font-family:Montserrat,sans-serif;letter-spacing:0;line-height:1;white-space:normal;padding:18px 25px}#main-navigation .mobile-actions .order-button{font-size:14px;padding:16px 18px;width:255px;text-align:left}#main-navigation .mobile-actions .whatsapp{padding:10px 15px;font-size:15px}}

.page p{margin-bottom:1.3em}.page p.heading{margin:0}
@media(max-width:921px){.header-top{padding-block:1rem}}

@media(max-width:921px){#main-navigation .mobile-actions .whatsapp{display:flex;font-size:15px}#main-navigation .mobile-actions .whatsapp span{text-align:left;line-height:1.1}.submenu-toggle{font-size:20px}}

@media(max-width:921px){.header-top{padding-inline:20px}#main-navigation li>ul{min-width:0;width:100%;padding:0 10px;background:#98c21bf0}#main-navigation li>ul a{font-size:13.68px;line-height:41.04px;padding:0 10px;letter-spacing:0}.footer-inner{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}}
@media(max-width:544px){.footer-inner{grid-template-columns:1fr;gap:20px}}
.neo-rating-ticker .neo-rating-carousel-button:hover,.neo-rating-ticker .neo-rating-carousel-button:focus-visible{color:white}
