:root{--rs-primary:#1e3a5f;--rs-primary-rgb:30 58 95;--rs-on-primary:#ffffff;--rs-primary-soft:rgb(30 58 95/.12);--rs-accent:#c9a227;--rs-bg:#ffffff;--rs-surface:#f4f6f9;--rs-text:#0f172a;--rs-muted:#5b6478;--rs-border:color-mix(in srgb,var(--rs-text) 12%,transparent);--rs-radius:4px;--rs-radius-lg:8px;--rs-font-heading:"Playfair Display",Georgia,serif;--rs-font-body:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:80px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{margin:0;font-family:var(--rs-font-body);font-size:1rem;line-height:1.6;color:var(--rs-text);background:var(--rs-bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,picture,svg,video{display:block;max-width:100%}img{height:auto}
a{color:var(--rs-primary)}
h1,h2,h3,h4{font-family:var(--rs-font-heading);line-height:1.15;letter-spacing:-.02em;margin:0 0 .6rem;text-wrap:balance}
.rs-h1{font-size:clamp(2rem,1.2rem + 3.4vw,3.6rem);font-weight:800;letter-spacing:-.03em}
.rs-h2{font-size:clamp(1.6rem,1.1rem + 2vw,2.5rem);font-weight:800}
.rs-h3{font-size:1.15rem;font-weight:700;margin:0 0 .35rem}
.rs-lead{font-size:clamp(1.05rem,1rem + .4vw,1.25rem);color:var(--rs-muted);margin:0;max-width:60ch;text-wrap:pretty}
.rs-eyebrow{display:inline-block;font-size:.8rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--rs-primary);margin:0 0 .75rem}
.rs-container{width:min(100% - 2.5rem,1120px);margin-inline:auto}
.rs-container--narrow{max-width:760px}
.rs-section{padding-top:clamp(3rem,7vw,5.5rem);padding-bottom:clamp(3rem,7vw,5.5rem)}
.rs-section-head{margin-bottom:clamp(2rem,4vw,3rem)}.rs-section-head--center{text-align:center}.rs-section-head--center .rs-lead{margin-inline:auto}
.rs-tone-surface{background:var(--rs-surface)}
.rs-tone-dark{background:#0b1020;color:#fff;--rs-text:#fff;--rs-muted:rgb(255 255 255/.72);--rs-border:rgb(255 255 255/.14);--rs-surface:rgb(255 255 255/.06);--rs-bg:#0b1020}
.rs-tone-primary{background:var(--rs-primary);color:var(--rs-on-primary);--rs-text:var(--rs-on-primary);--rs-muted:color-mix(in srgb,var(--rs-on-primary) 78%,transparent);--rs-border:color-mix(in srgb,var(--rs-on-primary) 20%,transparent);--rs-surface:color-mix(in srgb,var(--rs-on-primary) 8%,transparent)}
.rs-tone-primary .rs-eyebrow,.rs-tone-dark .rs-eyebrow{color:var(--rs-accent)}
.rs-tone-primary .rs-card__icon{background:color-mix(in srgb,var(--rs-on-primary) 15%,transparent);color:var(--rs-on-primary)}
.rs-tone-dark .rs-card,.rs-tone-primary .rs-card{background:var(--rs-surface);border-color:var(--rs-border)}
.rs-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font:inherit;font-weight:700;text-decoration:none;padding:.8rem 1.35rem;border-radius:var(--rs-radius);border:2px solid transparent;cursor:pointer;transition:transform .15s,filter .15s,background .15s,color .15s;line-height:1.2}
.rs-btn--lg{padding:1rem 1.75rem;font-size:1.05rem}
.rs-btn--primary{background:var(--rs-primary);color:var(--rs-on-primary);box-shadow:0 10px 24px -12px rgb(var(--rs-primary-rgb)/.7)}.rs-btn--primary:hover{filter:brightness(1.08);transform:translateY(-1px)}
.rs-btn--secondary{background:var(--rs-bg);color:var(--rs-text);border-color:var(--rs-border)}.rs-btn--secondary:hover{border-color:var(--rs-text)}
.rs-tone-primary .rs-btn--secondary,.rs-tone-dark .rs-btn--secondary{background:#fff;color:#0f172a;border-color:#fff}
.rs-btn--ghost{background:transparent;color:inherit;text-decoration:underline;text-underline-offset:4px;padding-inline:.5rem}
.rs-btn:focus-visible,a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--rs-accent);outline-offset:2px}
.rs-grid{list-style:none;margin:0;padding:0;display:grid;gap:1.25rem;grid-template-columns:1fr}
@media (min-width:640px){.rs-grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:960px){.rs-grid{grid-template-columns:repeat(var(--cols,3),1fr)}}
.rs-card{background:var(--rs-bg);border:1px solid var(--rs-border);border-radius:var(--rs-radius-lg);padding:1.5rem}
.rs-card__icon{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:var(--rs-radius);background:var(--rs-primary-soft);color:var(--rs-primary);margin-bottom:1rem}
.rs-card__text{margin:0;color:var(--rs-muted);font-size:.97rem}
.rs-checklist{list-style:none;padding:0;margin:1.5rem 0 0;display:flex;flex-wrap:wrap;gap:.6rem 1.25rem;color:var(--rs-muted);font-size:.95rem}
.rs-checklist li{display:inline-flex;align-items:center;gap:.4rem}
.rs-checklist .rs-icon{width:18px;height:18px;color:var(--rs-primary)}
.rs-tone-dark .rs-checklist .rs-icon,.rs-tone-primary .rs-checklist .rs-icon{color:var(--rs-accent)}
.rs-icon{width:22px;height:22px}
.rs-img{display:block}.rs-img img{width:100%;height:auto}
.rs-img--placeholder{display:grid;place-items:center;background:linear-gradient(135deg,var(--rs-primary-soft),color-mix(in srgb,var(--rs-accent) 25%,transparent));border-radius:var(--rs-radius-lg);color:var(--rs-muted);font-size:.85rem;min-height:120px;border:1px dashed var(--rs-border)}
.rs-reveal{opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .5s ease}.rs-reveal.is-visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rs-reveal{opacity:1;transform:none}}
.rs-hide-mobile{display:none}@media (min-width:768px){.rs-hide-mobile{display:block}.rs-hide-desktop{display:none}}
.rs-sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:55;padding:.75rem 1rem calc(.75rem + env(safe-area-inset-bottom));background:var(--rs-bg);border-top:1px solid var(--rs-border);box-shadow:0 -10px 30px -18px rgb(0 0 0/.4);transition:transform .25s}
.rs-sticky-cta .rs-btn{width:100%}.rs-sticky-cta.is-hidden{transform:translateY(110%)}
@media (min-width:768px){.rs-sticky-cta{display:none}}
body.rs-has-sticky{--rs-sticky-offset:64px;padding-bottom:var(--rs-sticky-offset)}
.rs-skip{position:absolute;left:-999px;top:0;background:var(--rs-primary);color:var(--rs-on-primary);padding:.5rem 1rem;z-index:100}.rs-skip:focus{left:1rem;top:1rem}
.rs-header{position:relative;z-index:50;background:var(--rs-bg);border-bottom:1px solid var(--rs-border);padding:0}
.rs-header--sticky{position:sticky;top:0}
.rs-header.is-scrolled,.rs-header [data-rs-header].is-scrolled{box-shadow:0 6px 24px -12px rgb(0 0 0/.25)}
.rs-header__inner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;min-height:68px}
.rs-header__home{display:inline-flex;align-items:center;text-decoration:none;color:inherit}
.rs-header__brand{font-family:var(--rs-font-heading);font-weight:800;font-size:1.25rem;letter-spacing:-.02em}
.rs-header__logo{height:40px;width:auto}.rs-header__logo img{height:40px;width:auto}
.rs-header__toggle{display:none;background:none;border:0;padding:.5rem;color:inherit;cursor:pointer}
.rs-header__nav ul{display:flex;gap:1.5rem;list-style:none;margin:0;padding:0;align-items:center}
.rs-header__nav a{text-decoration:none;color:var(--rs-text);font-weight:500;font-size:.95rem}
.rs-header__nav a:hover{color:var(--rs-primary)}
.rs-header__nav{display:flex;align-items:center;gap:1.5rem}
@media (max-width:860px){
.rs-header__toggle{display:inline-flex}
.rs-header__nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--rs-bg);border-bottom:1px solid var(--rs-border);padding:1rem 1.25rem 1.25rem;flex-direction:column;align-items:stretch;gap:1rem;box-shadow:0 20px 40px -20px rgb(0 0 0/.3)}
.rs-header__nav.is-open{display:flex}
.rs-header__nav ul{flex-direction:column;align-items:stretch;gap:.25rem}
.rs-header__nav ul a{display:block;padding:.75rem .25rem;font-size:1.05rem}
.rs-header__cta .rs-btn{width:100%}
}
.rs-hero{padding-top:clamp(2.5rem,7vw,5.5rem);padding-bottom:clamp(2.5rem,7vw,5.5rem);position:relative;overflow:hidden}
.rs-hero__inner{display:grid;gap:2.5rem;align-items:center}
.rs-hero--split .rs-hero__inner{grid-template-columns:1fr}
@media (min-width:900px){.rs-hero--split .rs-hero__inner{grid-template-columns:1.05fr .95fr}}
.rs-hero--centered .rs-hero__copy{text-align:center;max-width:760px;margin:0 auto}
.rs-hero--centered .rs-hero__actions,.rs-hero--centered .rs-checklist,.rs-hero--centered .rs-hero__proof{justify-content:center}
.rs-hero--cover{min-height:min(88vh,760px);display:flex;align-items:center}
.rs-hero--cover .rs-hero__copy{max-width:640px;position:relative}
.rs-hero__bg{position:absolute;inset:0;z-index:0}.rs-hero__bg .rs-img,.rs-hero__bg img{width:100%;height:100%;object-fit:cover}
.rs-hero__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgb(10 14 26/.82),rgb(10 14 26/.45))}
.rs-hero--cover .rs-hero__inner{position:relative;z-index:1}
.rs-hero__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.75rem}
.rs-hero__proof{display:inline-flex;align-items:center;gap:.5rem;margin:1.25rem 0 0;font-size:.9rem;font-weight:600;color:var(--rs-muted)}
.rs-hero__proof .rs-icon{width:16px;height:16px;color:var(--rs-accent);fill:var(--rs-accent)}
.rs-hero__media .rs-img{border-radius:var(--rs-radius-lg);overflow:hidden;box-shadow:0 30px 60px -30px rgb(0 0 0/.35)}
.rs-hero__media img{width:100%;height:auto;display:block}
.rs-gallery__grid{display:grid;gap:1rem;grid-template-columns:repeat(2,1fr)}@media (min-width:700px){.rs-gallery__grid{grid-template-columns:repeat(var(--cols),1fr)}}
.rs-gallery__item{margin:0}.rs-gallery__item .rs-img{border-radius:var(--rs-radius);overflow:hidden;aspect-ratio:4/3}.rs-gallery__item img{width:100%;height:100%;object-fit:cover}.rs-gallery__item figcaption{margin-top:.5rem;font-size:.9rem;color:var(--rs-muted)}
.rs-pricing__grid{align-items:stretch}.rs-price{position:relative;background:var(--rs-bg);border:1px solid var(--rs-border);border-radius:var(--rs-radius-lg);padding:1.75rem;display:flex;flex-direction:column;gap:.75rem}
.rs-price--featured{border-color:var(--rs-primary);box-shadow:0 24px 50px -30px rgb(0 0 0/.35);transform:translateY(-4px)}
.rs-price__badge{position:absolute;top:-12px;left:1.5rem;background:var(--rs-accent);color:#111;font-size:.75rem;font-weight:700;padding:.25rem .6rem;border-radius:999px;text-transform:uppercase;letter-spacing:.06em}
.rs-price__name{margin:0;font-size:1.1rem}.rs-price__value{margin:0;font-family:var(--rs-font-heading);font-size:2.2rem;font-weight:800;letter-spacing:-.03em}.rs-price__value small{font-size:.95rem;font-weight:500;color:var(--rs-muted);margin-left:.25rem}
.rs-price__desc{margin:0;color:var(--rs-muted)}.rs-price__list{list-style:none;margin:.25rem 0 .75rem;padding:0;display:grid;gap:.5rem;flex:1}.rs-price__list li{display:flex;gap:.5rem;align-items:flex-start;font-size:.95rem}.rs-price__list .rs-icon{width:18px;height:18px;color:var(--rs-primary);flex:none;margin-top:2px}
.rs-price .rs-btn{width:100%}
.rs-quote__text{margin:.75rem 0 1rem;font-size:1.02rem;line-height:1.65;color:var(--rs-text)}.rs-quote__text::before{content:"“";color:var(--rs-primary);font-family:var(--rs-font-heading);font-size:1.4em;line-height:0;margin-right:.1em}
.rs-quote__author{display:flex;align-items:center;gap:.75rem;font-size:.92rem}.rs-quote__author strong{display:block}.rs-quote__role{color:var(--rs-muted);font-size:.85rem}
.rs-quote__avatar,.rs-quote__photo{width:44px;height:44px;border-radius:999px;flex:none}.rs-quote__photo img{width:44px;height:44px;object-fit:cover;border-radius:999px}
.rs-quote__avatar{display:grid;place-items:center;background:var(--rs-primary-soft);color:var(--rs-primary);font-weight:700}
.rs-stars{display:flex;gap:2px;color:var(--rs-accent)}.rs-stars .rs-icon{width:16px;height:16px;fill:currentColor}
.rs-faq__list{display:grid;gap:.75rem}.rs-faq__item{border:1px solid var(--rs-border);border-radius:var(--rs-radius);background:var(--rs-bg);padding:0 1.25rem}
.rs-faq__item summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 0;font-weight:600;font-size:1.02rem}.rs-faq__item summary::-webkit-details-marker{display:none}
.rs-faq__chev .rs-icon{width:18px;height:18px;transform:rotate(90deg);transition:transform .2s;color:var(--rs-muted)}.rs-faq__item[open] .rs-faq__chev .rs-icon{transform:rotate(-90deg)}
.rs-faq__answer{padding:0 0 1.1rem;color:var(--rs-muted);line-height:1.65}
.rs-form-card{background:var(--rs-bg);border:1px solid var(--rs-border);border-radius:var(--rs-radius-lg);padding:clamp(1.25rem,3vw,2rem);box-shadow:0 30px 60px -40px rgb(0 0 0/.35);color:var(--rs-text)}
.rs-tone-dark .rs-form-card,.rs-tone-primary .rs-form-card{color:var(--rs-text)}
.rs-form-section__grid{display:grid;gap:2.5rem;align-items:center}@media (min-width:900px){.rs-form-section__grid{grid-template-columns:1fr 1fr}}
.rs-form__fields{display:grid;gap:1rem;grid-template-columns:1fr 1fr}.rs-field{grid-column:1/-1;display:grid;gap:.35rem}.rs-field--half{grid-column:span 1}@media (max-width:560px){.rs-field--half{grid-column:1/-1}}
.rs-field label,.rs-field legend{font-size:.9rem;font-weight:600}.rs-field input,.rs-field select,.rs-field textarea{width:100%;font:inherit;padding:.8rem .9rem;border:1px solid var(--rs-border);border-radius:var(--rs-radius);background:var(--rs-bg);color:var(--rs-text);min-height:46px}
.rs-field input:focus,.rs-field select:focus,.rs-field textarea:focus{outline:2px solid var(--rs-primary);outline-offset:1px;border-color:var(--rs-primary)}
.rs-field--choices{border:0;padding:0;margin:0;gap:.5rem}.rs-choice{display:flex;gap:.6rem;align-items:flex-start;font-size:.92rem;cursor:pointer}.rs-choice input{margin-top:.2rem;accent-color:var(--rs-primary);width:18px;height:18px;flex:none}
.rs-form__consent{margin-top:1rem;color:var(--rs-muted)}.rs-form__submit{width:100%;margin-top:1.25rem}
.rs-form__status{min-height:1.2em;margin:.6rem 0 0;font-size:.9rem;text-align:center}.rs-form__status.is-error{color:#b91c1c}
.rs-form__privacy{margin:.75rem 0 0;font-size:.8rem;color:var(--rs-muted);text-align:center}.rs-form__privacy a{color:inherit}
.rs-form__success{padding:2rem 1.5rem;text-align:center;font-size:1.1rem;font-weight:600;color:var(--rs-primary)}
.rs-form__missing{display:flex;gap:.75rem;align-items:flex-start;padding:1rem;border:1px dashed var(--rs-border);border-radius:var(--rs-radius);color:var(--rs-muted);grid-column:1/-1}.rs-form__missing .rs-icon{flex:none;width:20px;height:20px;color:var(--rs-primary)}.rs-form__missing p{margin:0}
.rs-hp{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.rs-map__frame{aspect-ratio:16/7;min-height:280px;border-radius:var(--rs-radius-lg);overflow:hidden;background:var(--rs-surface)}.rs-map__frame iframe{width:100%;height:100%;border:0;display:block}
.rs-footer{background:var(--rs-text);color:#fff;padding:3.5rem 0 2rem}
.rs-footer__grid{display:grid;gap:2rem;grid-template-columns:1fr}
@media (min-width:720px){.rs-footer__grid{grid-template-columns:2fr 1fr}}
.rs-footer__brand{font-family:var(--rs-font-heading);font-weight:800;font-size:1.25rem;margin:0 0 .5rem}
.rs-footer__desc{color:rgb(255 255 255/.7);max-width:44ch;margin:0}
.rs-footer__social{display:flex;gap:.75rem;margin-top:1.25rem}
.rs-footer__social a{display:inline-flex;padding:.5rem;border-radius:999px;background:rgb(255 255 255/.1);color:#fff}
.rs-footer__contact{list-style:none;margin:0;padding:0;display:grid;gap:.75rem;color:rgb(255 255 255/.8)}
.rs-footer__contact li{display:flex;gap:.6rem;align-items:flex-start}
.rs-footer__contact a{color:inherit;text-decoration:none}
.rs-footer .rs-icon{width:18px;height:18px;flex:none;margin-top:2px}
.rs-footer__bottom{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;justify-content:space-between;margin-top:2.5rem;padding-top:1.25rem;border-top:1px solid rgb(255 255 255/.15);font-size:.85rem;color:rgb(255 255 255/.6)}
.rs-footer__bottom a{color:inherit}
.rs-whatsapp{padding:0;position:fixed;right:1rem;bottom:1rem;z-index:60}
.rs-wa{display:inline-flex;align-items:center;gap:.5rem;background:#25d366;color:#fff;text-decoration:none;font-weight:600;padding:.8rem 1rem;border-radius:999px;box-shadow:0 12px 30px -10px rgb(0 0 0/.45)}
.rs-wa .rs-icon{width:22px;height:22px}
@media (max-width:640px){.rs-wa span{display:none}.rs-wa{padding:.9rem}.rs-whatsapp{bottom:calc(1rem + var(--rs-sticky-offset,0px))}}