/* Villar 2.0. The existing content, routes and carousel behavior remain the base. */
:root{--navy:#193d78;--ink:#142a48;--sky:#2478a5;--pale:#edf4f9;--paper:#f5f7fa;--line:#d8e2ec;--radius:12px}
html{scroll-padding-top:98px}body{font-size:16px}h1,h2,h3{text-wrap:balance}h1,h2{letter-spacing:-.045em}h2{font-size:clamp(32px,3.7vw,48px);line-height:1.15}.wrap{max-width:1200px;width:calc(100% - 80px)}
.topbar{background:#f0f5fa;color:#31516f;font-size:12px}.topbar .wrap{min-height:32px}.topbar a{font-size:12px}.header{background:#fff}.nav-wrap{min-height:82px}.header nav{gap:24px;font-size:13px}.brand-name{font-size:24px}.brand-name small{font-size:10px}.eyebrow{font-size:12px;letter-spacing:.08em;margin-bottom:18px;color:#46617d}.button{border-radius:7px;min-height:48px;font-size:14px;padding:13px 21px;transition:background .2s,transform .2s,border-color .2s}.button-small{font-size:13px}.text-link{min-height:44px;font-size:14px}.menu-toggle{width:48px;height:48px}
.hero{padding:62px 0;background:#f5f8fc;position:relative}.hero-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:76px;align-items:center}.hero .eyebrow{font-size:12px;letter-spacing:.02em;margin-bottom:22px}.tiny-line{background:#2478a5;width:28px}h1{font-size:clamp(48px,5.2vw,69px);line-height:1.08}.hero h1 em{color:#2478a5}.hero-description{font-size:17px;line-height:1.75;max-width:480px;margin-top:24px}.hero-actions{gap:12px;margin-top:28px}.hero-actions .button{font-size:14px;min-height:50px;padding:13px 20px}.hero-notes{font-size:12px;gap:14px;flex-wrap:wrap;margin-top:22px}.hero-notes i{color:#2478a5}.hero-start-link{display:inline-flex;gap:12px;align-items:center;font-size:13px;color:#31516f;min-height:44px;margin-top:7px;text-decoration:underline;text-underline-offset:4px}.hero-start-link:hover{color:var(--navy)}
.hero .company-start{position:relative;overflow:hidden;background:var(--navy);color:white;border:0;border-radius:16px;padding:34px;box-shadow:none;gap:26px}.hero .company-start:before{content:'';position:absolute;right:-64px;top:-80px;width:220px;height:220px;border:1px solid #ffffff1a;border-radius:50%;pointer-events:none}.hero .company-start:after{content:'';position:absolute;right:-36px;top:-50px;width:160px;height:160px;border:1px solid #ffffff1a;border-radius:50%;pointer-events:none}.hero .company-start .eyebrow{color:#c2d8ed;font-size:12px;letter-spacing:.09em;margin-bottom:18px}.hero .company-start h2{font-size:29px;line-height:1.25;letter-spacing:-.025em;margin-bottom:20px}.hero .company-start-bonus{background:#ffffff13;color:#fff;border-radius:4px;padding:9px 11px;font-size:13px;font-weight:500}.hero .company-start-action{border-color:#ffffff35;padding-top:24px}.hero .company-start-price{color:#fff;font-size:45px;letter-spacing:-.035em;margin-bottom:16px}.hero .company-start-price span{color:#d3e2f0;font-size:13px;margin-top:5px}.hero .company-start-payment,.hero .company-start-payment strong{color:#fff;font-size:14px}.hero .company-start .button{background:#fff;border-color:#fff;color:var(--navy);min-height:50px;font-size:14px}.hero .company-start .button:hover{background:#e9f3f9}
.proof-strip{background:#fff;border-top:0;border-bottom:1px solid var(--line);padding:26px 0}.proof-strip .wrap{grid-template-columns:155px 1fr;gap:38px}.proof-label{font-size:11px;letter-spacing:.06em;color:#46617d}.proof-strip blockquote{font-size:18px;font-weight:500;line-height:1.55}.proof-strip figcaption{font-size:12px}.proof-strip figcaption a{padding:7px 0}
.section{padding:78px 0}.section-head{margin-bottom:36px;gap:48px}.section-head>p{font-size:16px;line-height:1.7;max-width:380px}.services-grid{gap:0;border:0}.service{padding:30px;border:0;border-bottom:1px solid var(--line)}.service:nth-child(3n+2){border-inline:1px solid var(--line)}.service-number{display:none}.service-icon{width:32px;height:32px;stroke:var(--sky);margin-bottom:18px}.service h3{font-size:20px;margin-bottom:12px}.service p{font-size:15px;line-height:1.75;min-height:80px;margin-bottom:16px}.service>a{font-size:13px;min-height:44px}.service:hover{background:#f5f8fc}.community-banner{background:#edf4f9;border:0;padding:40px 0}.community-banner h2{font-size:30px;max-width:650px}.community-banner p:not(.eyebrow){font-size:15px;max-width:730px}.community-banner .eyebrow{font-size:12px}
.plans-section{background:#f5f7fa}.plan-toolbar{margin-bottom:20px}.plan-filters{border:0;padding:4px;background:#e6edf4;border-radius:8px}.plan-filters button{font-size:13px;padding:10px 16px}.plan-filters button[aria-pressed=true]{background:white;color:var(--navy);box-shadow:0 1px 3px #193d7818}.compare-trigger{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:46px;padding:9px 16px;border:1px solid #9fb5ca;border-radius:7px;background:transparent;color:var(--navy);font-weight:700;font-size:13px}.compare-trigger:hover{background:#e6edf4}.compare-trigger[hidden]{display:none}.plans-navigation>p{font-size:13px}.plans-arrows .plan-autoplay{font-size:13px}.plans-carousel .plans-grid{gap:20px;grid-auto-columns:calc((100% - 40px)/3);padding:4px 0 18px}.plans-carousel .plans-grid[data-plan-count="2"]{grid-auto-columns:calc((100% - 20px)/2)}.plans-carousel .plan-card{padding:28px;border:1px solid var(--line);border-radius:12px;box-shadow:none}.plans-carousel .plan-card.featured{border-top:3px solid #2478a5;padding-top:26px}.plan-audience{font-size:11px;letter-spacing:.04em;color:#46617d;margin-bottom:16px}.plans-carousel .plan-card h3{font-size:26px;margin-bottom:14px}.plans-carousel .plan-price{font-size:38px}.plan-price span{font-size:13px}.plans-carousel .plan-description{font-size:14px;line-height:1.7;min-height:70px}.plan-card ul{font-size:14px;line-height:1.65}.plan-card .button{font-size:14px;min-height:48px}.plans-carousel .plan-details{font-size:13px;min-height:44px}.plans-note,.plans-scroll-help{font-size:12px;line-height:1.7}.plan-help{background:#e9f0f7;border-radius:10px}.plan-help h3{font-size:18px}.plan-help p{font-size:14px}.plan-help .text-link{font-size:14px}.help-symbol{display:none}
.client-section{padding:44px 0;border-bottom:1px solid var(--line)}.carousel-heading h2{font-size:32px}.carousel-heading .eyebrow{font-size:12px}.carousel-arrow{min-width:44px;min-height:44px}.carousel-toggle{min-height:44px;font-size:13px}.carousel-count{font-size:12px}.client-logo-tile{border:0;background:#f5f7fa;border-radius:6px}.dark-logo-tile{background:var(--navy)}.testimonials-section{background:white;padding:52px 0}.testimonial-card{padding:26px;border-radius:12px;background:#f5f8fc;border:0}.testimonial-quote{font-size:15px;line-height:1.8}.testimonial-quote p{-webkit-line-clamp:5}.review-read-more{font-size:13px;min-height:44px;margin-bottom:12px}.testimonial-person{font-size:13px}.testimonial-person small{font-size:12px}.testimonial-company{font-size:17px}.person-initials{width:38px;height:38px;font-size:12px}
.about-grid{gap:80px}.about-lead{font-size:16px;line-height:1.8}.about-values p{font-size:15px;line-height:1.75}.about-values article>span{font-size:13px}.about-values h3{font-size:21px}.brand-purpose summary{font-size:15px;min-height:52px}.mission-vision h3{font-size:15px}.mission-vision p{font-size:14px}.process-section{padding:48px 0}.process-grid p{font-size:14px;line-height:1.7}.process-grid h3{font-size:20px}.step{height:30px;width:30px;font-size:14px;line-height:28px}.faq-grid{gap:64px}.faq-grid>div>p:not(.eyebrow){font-size:15px}.faq-list summary{font-size:16px;min-height:64px;line-height:1.5}.faq-list details p{font-size:15px;line-height:1.75}.contact-section{background:#edf4f9;padding:70px 0}.contact-grid{gap:70px}.contact-copy>p:not(.eyebrow){font-size:16px}.contact-details span{font-size:11px}.contact-details strong{font-size:15px}.contact-form{border-radius:12px;padding:32px;border:1px solid var(--line);box-shadow:none}.contact-form h3{font-size:25px}.contact-form>p{font-size:14px}.contact-form label{font-size:14px;margin-top:18px}.optional{font-size:12px}.contact-form input,.contact-form select,.contact-form textarea{font-size:16px;min-height:48px;border-radius:6px;border-color:#9fb2c5}.contact-form .button{font-size:14px;min-height:50px}.contact-form small{font-size:12px;line-height:1.6;text-align:left}.contact-form .form-status{font-size:14px}footer{padding-top:40px}.footer-main>p{font-size:14px}.footer-main>div{font-size:13px}.footer-main>div a{padding:10px 0}.footer-bottom{font-size:12px;padding-bottom:42px}.floating-whatsapp{min-height:52px}
dialog{border-radius:14px}body:has(dialog[open]){overflow:hidden}.dialog-close{width:44px;height:44px;right:10px;top:10px}.dialog-content{padding:38px 30px}.dialog-content>p:not(.eyebrow):not(.dialog-price),.dialog-content ul{font-size:15px}.dialog-content .button{font-size:14px;min-height:48px}.dialog-content h2{padding-right:24px}.review-dialog blockquote{font-size:16px}.review-dialog-author{font-size:15px!important}
#comparison-dialog{width:min(980px,calc(100% - 32px));max-height:88dvh}.comparison-content{padding:36px}.comparison-content>h2{font-size:34px;max-width:680px;margin-bottom:16px;padding-right:20px}.comparison-content>p:not(.eyebrow){font-size:15px;color:var(--muted);max-width:720px}.comparison-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:24px 0}.comparison-item{border:1px solid var(--line);border-radius:8px;padding:20px;display:grid;grid-template-columns:1fr auto;gap:8px 16px;align-content:start}.comparison-item h3{font-size:19px}.comparison-item .comparison-price{font-weight:700;font-size:18px;color:var(--navy)}.comparison-item .comparison-audience{grid-column:1/-1;font-size:12px;color:var(--muted)}.comparison-item p:last-of-type{grid-column:1/-1;font-size:13px;color:var(--muted);line-height:1.6}.comparison-item button{background:transparent;border:0;padding:8px 0;min-height:44px;font-size:13px;font-weight:700;color:var(--navy);text-align:left;text-decoration:underline;text-underline-offset:4px}.comparison-note{font-size:13px!important}
/* Shared service pages retain their content and SEO, with the same visual rhythm. */
.service-intro{background:#f5f8fc;padding:28px 0 60px}.breadcrumbs{font-size:13px;margin-bottom:36px}.service-intro-grid{grid-template-columns:1.25fr 1fr;gap:64px}.service-page h1{font-size:clamp(40px,4.4vw,59px);letter-spacing:-.04em;line-height:1.12}.service-lead{font-size:17px;line-height:1.75}.service-location{font-size:13px}.service-offer{padding:30px;border:1px solid var(--line);border-top:4px solid var(--navy);border-radius:12px;box-shadow:none}.service-offer-note{font-size:13px}.service-offer>p:not([class]){font-size:15px}.service-offer>.text-link{font-size:14px}.service-scope{gap:70px}.service-includes dd{font-size:15px}.service-includes dt>span{font-size:12px}.service-process li p,.service-faq-intro{font-size:15px}.service-contact p:not(.eyebrow){font-size:15px}.service-related a{min-height:44px;display:inline-flex;align-items:center}.community-request-grid{gap:60px}.community-request small{font-size:12px}.community-boundary{font-size:15px}
@media(min-width:851px) and (max-width:1100px){.header nav{gap:14px;font-size:12px}.hero-grid{gap:40px}.hero-actions .button{padding-inline:15px}.brand-name{font-size:22px}}
@media(max-width:1000px){.plans-carousel .plans-grid{grid-auto-columns:calc((100% - 20px)/2)}}
@media(max-width:850px){.wrap{width:calc(100% - 48px)}.nav-wrap{min-height:72px}.header nav{top:72px;gap:4px;font-size:16px;padding:18px 24px;max-height:calc(100dvh - 72px);overflow-y:auto}.header nav>a:not(.button){min-height:44px;padding:11px 0}.hero{padding:44px 0}.hero-grid{gap:30px;grid-template-columns:1.1fr 1fr}h1{font-size:48px}.hero-description{font-size:16px}.hero .company-start{padding:26px}.hero .company-start h2{font-size:25px}.hero-actions{display:flex}.hero-actions .button{width:100%}.hero-notes{flex-direction:column;gap:6px}.services-grid{grid-template-columns:repeat(2,1fr)}.service:nth-child(3n+2){border-inline:0}.service:nth-child(odd){border-right:1px solid var(--line)}.section{padding:58px 0}.section-head>p{font-size:15px}.about-grid,.contact-grid,.faq-grid,.service-scope,.community-request-grid{gap:36px}.carousel-heading h2{font-size:29px}.service-intro-grid{gap:32px}.service-page h1{font-size:43px}.service-offer{padding:24px}.service-intro-grid,.service-scope{grid-template-columns:1fr 1fr}}
@media(max-width:600px){
 html{scroll-padding-top:84px}.wrap{width:calc(100% - 40px)}.topbar{display:none}.nav-wrap{min-height:68px}.brand-name{font-size:21px}.brand-name small{font-size:9px}.header nav{top:68px}.hero{padding:34px 0 36px}.hero-grid{grid-template-columns:1fr;gap:28px}.hero .eyebrow{font-size:12px;margin-bottom:18px;line-height:1.5;max-width:300px}.tiny-line{width:20px;flex-shrink:0}h1{font-size:clamp(40px,11.2vw,48px);line-height:1.1;letter-spacing:-.04em}.hero-description{font-size:16px;line-height:1.7;margin-top:20px}.hero-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:22px}.hero-actions .button{font-size:15px;min-height:50px}.hero-notes{font-size:12px;line-height:1.55;margin-top:18px;gap:5px}.hero-start-link{font-size:13px;margin-top:4px}.hero .company-start{padding:26px 24px;border-radius:12px;gap:20px;box-shadow:none}.hero .company-start h2{font-size:26px;line-height:1.25}.hero .company-start .eyebrow{margin-bottom:16px}.hero .company-start-bonus{font-size:13px;padding:8px 10px}.hero .company-start-price{font-size:40px}.hero .company-start-payment{font-size:14px}.hero .company-start-action{padding-top:20px}.hero .company-start .button{font-size:14px}.proof-strip{padding:26px 0}.proof-strip .wrap{display:block}.proof-label{font-size:11px;margin-bottom:10px}.proof-strip blockquote{font-size:17px}.proof-strip figcaption{font-size:12px;line-height:1.6}.proof-strip figcaption a{display:block;min-height:44px;margin:5px 0 0;padding:10px 0}.section{padding:48px 0}.section-head{margin-bottom:26px}.section-head h2,h2{font-size:32px;line-height:1.18}.eyebrow{font-size:12px;margin-bottom:16px}.section-head>p{font-size:15px;line-height:1.75}.services-grid{display:none}.mobile-services{border-top:0}.mobile-service{background:#f5f8fc;border:0;border-radius:8px;margin-bottom:10px;padding:0 16px}.mobile-service summary{font-size:16px;min-height:70px;line-height:1.45}.mobile-service>div{padding:0 0 20px}.mobile-service>div p{font-size:15px;line-height:1.7}.mobile-service>div a{font-size:14px;min-height:44px}.community-banner{padding:34px 0}.community-banner h2{font-size:28px}.community-banner .button{font-size:15px}.plan-toolbar{gap:14px}.plan-filters{gap:3px;display:grid;grid-template-columns:1fr 1fr;border-radius:9px}.plan-filters button{font-size:13px;min-height:44px;padding:9px 7px}.compare-trigger{width:100%;font-size:14px;justify-content:space-between}.plans-carousel .plans-grid,.plans-carousel .plans-grid[data-plan-count="2"]{grid-auto-columns:92%;gap:14px}.plans-carousel .plan-card{padding:24px 22px}.plans-carousel .plan-card.featured{padding-top:22px}.plans-carousel .plan-card h3{font-size:25px}.plans-carousel .plan-price{font-size:36px}.plan-audience{font-size:11px}.plans-carousel .plan-description{font-size:14px;min-height:0;margin:14px 0 18px}.plans-carousel .plan-card ul{display:block;font-size:14px;padding-top:18px;margin-bottom:20px}.plan-card .button{font-size:14px}.plans-carousel .plan-details{font-size:13px}.plans-navigation>p{font-size:12px}.plans-arrows{gap:6px}.plans-arrows .plan-autoplay{font-size:12px;padding:8px}.plans-scroll-help,.plans-note{font-size:12px}.plan-help{padding:24px;display:block}.plan-help p{margin-top:9px}.plan-help .text-link{margin:12px 0 0}.client-section,.testimonials-section{padding:36px 0}.carousel-heading{gap:16px}.carousel-heading h2{font-size:28px}.carousel-heading .eyebrow{font-size:12px}.carousel-controls{align-self:flex-start}.carousel-arrow{width:44px;height:44px}.carousel-toggle{height:44px;font-size:13px}.testimonial-card{flex-basis:94%;padding:24px}.testimonial-quote{font-size:15px;line-height:1.75;min-height:140px}.testimonial-person{font-size:13px}.testimonial-person small{font-size:12px}.review-read-more{font-size:13px}.about-grid{gap:28px}.about-lead{font-size:16px}.about-values article{gap:18px}.about-values h3{font-size:20px}.about-values p{font-size:15px}.process-section{padding:40px 0}.process-grid{gap:28px}.process-grid h3{font-size:19px}.process-grid p{font-size:14px}.faq-list summary{font-size:15px;min-height:64px}.faq-list details p{font-size:15px;padding-right:0}.contact-section{padding:44px 0}.contact-copy h2{font-size:34px}.contact-details strong{font-size:14px}.contact-details span{font-size:11px}.contact-form{padding:26px 20px}.contact-form h3{font-size:23px}.contact-form label{font-size:14px}.contact-form input,.contact-form textarea,.contact-form select{font-size:16px}.contact-form>p{font-size:14px}.contact-form small{font-size:12px}.contact-form-disclosure>summary{font-size:15px;min-height:52px}.footer-main>p{font-size:13px}.footer-main>div{gap:12px 22px;font-size:13px}.footer-bottom{font-size:11px;padding-bottom:90px;flex-wrap:wrap}.floating-whatsapp{min-width:0;min-height:48px;padding:10px 13px;right:14px;bottom:calc(14px + env(safe-area-inset-bottom,0px))}.floating-whatsapp>span{font-size:13px}body:has(.header nav.is-open) .floating-whatsapp{display:none}.dialog-content{padding:36px 24px}.dialog-content h2{font-size:28px}#comparison-dialog{width:calc(100% - 20px);max-height:90dvh}.comparison-content{padding:28px 20px}.comparison-content>h2{font-size:28px}.comparison-list{grid-template-columns:1fr}.comparison-item{padding:18px}.comparison-item .comparison-price{font-size:17px}.comparison-item p:last-of-type{font-size:14px}.comparison-item button{font-size:14px}.service-intro{padding:24px 0 40px}.breadcrumbs{font-size:12px;margin-bottom:26px}.service-intro-grid,.service-scope{grid-template-columns:1fr;gap:30px}.service-page h1{font-size:clamp(35px,10vw,42px)}.service-lead{font-size:16px}.service-location{font-size:13px}.service-offer{padding:26px 22px;box-shadow:none}.service-includes dd{font-size:15px}.community-request-grid{gap:30px}.community-request h2{font-size:32px}
}
@media(prefers-reduced-motion:no-preference){.hero-copy,.hero .company-start{animation:arrive .5s ease-out both}.hero .company-start{animation-delay:.08s}dialog[open]{animation:arrive .18s ease-out}@keyframes arrive{from{opacity:.4;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* On phones the recognizable icon keeps the shortcut without covering long lines. */
@media(max-width:600px){.floating-whatsapp{width:52px;height:52px;min-width:52px;padding:12px;justify-content:center}.floating-whatsapp>span{display:none}.plans-navigation{position:sticky;top:68px;z-index:4;background:var(--paper);padding:8px 0}}

.optional{color:var(--muted)}
