:root{--ink:#142744;--muted:#52627a;--green:#244ba0;--lime:#ffbb80;--line:#dce3ee;--paper:#f8faff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Arial,Helvetica,sans-serif}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #927000;outline-offset:5px}.wrap{width:min(1200px,calc(100% - 80px));margin-inline:auto}.preview{background:var(--ink);color:#e1ecd9;padding:7px 30px;text-align:center;font-size:10px;letter-spacing:1.5px}.preview span{letter-spacing:.3px;margin-left:16px;color:#c9d4cc}header{display:flex;justify-content:space-between;align-items:center;min-height:108px;gap:30px}.brand{font-size:25px;font-weight:800;letter-spacing:-1.2px;display:flex;align-items:center;position:relative;white-space:nowrap}.brand span{font-weight:400}.brand svg{width:31px;height:37px;margin-right:10px}.brand small{position:absolute;left:42px;top:36px;font-size:8px;letter-spacing:2px;font-weight:400}nav{display:flex;align-items:center;gap:27px;font-size:13px;font-weight:600}nav>a{padding-block:13px}.button{border:1px solid var(--ink);background:var(--ink);color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:25px;min-height:52px;padding:14px 22px;border-radius:6px;font-size:13px;font-weight:700;line-height:1.4;text-align:center;transition:transform .15s,background .15s}.button:hover{background:#315dc0;transform:translateY(-2px)}.button.small{font-size:12px;min-height:43px;padding:12px 17px}.button.outline{background:transparent;color:var(--ink);border-color:#aebdb2}.button.outline:hover{background:#e9effb}.button.lime{background:var(--lime);border-color:var(--lime);color:var(--ink)}.button.lime:hover{background:#ffd5ae}.menu{display:none}.hero{display:grid;grid-template-columns:1.12fr 1fr;gap:60px;align-items:center;padding-block:62px 90px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;line-height:1.6;margin:0 0 22px}.dot{display:inline-block;width:6px;height:6px;border-radius:100%;background:#6aab38;margin-right:7px}h1{font-size:clamp(48px,5.7vw,78px);line-height:1.06;font-weight:500;letter-spacing:-4px;margin:0 0 25px}h1 em{font-family:Georgia,serif;font-weight:400;color:#315dc0}p{margin:0 0 20px}.lead{max-width:470px;color:var(--muted);font-size:16px;line-height:1.8}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.micro{font-size:11px;color:var(--muted);margin-top:19px}.hero-art{height:470px;position:relative;background:radial-gradient(ellipse at 50% 50%,#d1e1bf 0%,#e9eee0 43%,#f1f3e9 70%);border:1px solid #e0e7d8;border-radius:50% 50% 14px 14px;overflow:hidden}.orbit{position:absolute;border:1px solid #c7d3bc;border-radius:50%;width:330px;height:330px;left:50%;top:48%;transform:translate(-50%,-50%)}.orbit-two{width:440px;height:440px;border-style:dashed}.shield{width:180px;position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);filter:drop-shadow(0 22px 20px #1d43262b)}.shield svg{display:block;width:100%}.art-label{position:absolute;display:flex;align-items:center;gap:12px;padding:14px 18px;background:#ffffffed;border:1px solid #dbe2d4;border-radius:8px;box-shadow:0 8px 28px #1637230a;font-size:12px;font-weight:700}.art-label small{display:block;font-size:10px;font-weight:400;color:var(--muted);margin-top:3px}.top{top:58px;left:20px}.bottom{bottom:70px;right:16px}.mini-icon{font-size:23px;color:#4b6d36}.art-caption{position:absolute;bottom:19px;width:100%;text-align:center;font-size:10px;color:#4b6248}.cross{position:absolute;color:#7e9873;font-size:24px}.c1{right:45px;top:140px}.c2{left:56px;bottom:120px}.capabilities{border-block:1px solid var(--line)}.capabilities .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:24px}.capabilities p{margin:0;font-size:14px;font-weight:600}.capabilities span{font-size:9px;letter-spacing:1.5px;color:var(--muted)}.capabilities b{color:#9ba991;font-weight:400}.section{padding-block:100px}h2{font-size:clamp(30px,3.1vw,43px);line-height:1.2;font-weight:500;letter-spacing:-1.6px;margin:0 0 23px}.section-head{display:grid;grid-template-columns:1.2fr 1fr;align-items:end;gap:90px;margin-bottom:42px}.section-head>p{color:var(--muted);font-size:14px;max-width:390px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:10px;overflow:hidden}.service-grid article{padding:28px 24px;display:flex;flex-direction:column}.service-grid article+article{border-left:1px solid var(--line)}.service-icon{font:11px monospace;color:#315dc0;letter-spacing:2px;margin-bottom:31px}h3{font-size:19px;font-weight:600;line-height:1.3;letter-spacing:-.4px;margin:0 0 16px}.service-grid p{font-size:13px;color:var(--muted);line-height:1.85}.text-button{background:none;border:0;padding:12px 0 0;margin-top:auto;text-align:left;font-size:12px;color:var(--green);font-weight:700;line-height:1.7}.text-button:hover{text-decoration:underline}.emergency{background:var(--ink);color:#fff}.emergency-inner{padding-block:55px;display:flex;align-items:center;justify-content:space-between;gap:60px}.emergency h2{font-size:31px;letter-spacing:-.8px}.emergency p:not(.eyebrow){font-size:13px;color:#d1ded7;max-width:570px;margin:0}.emergency .eyebrow{color:var(--lime);margin-bottom:16px}.emergency .button{flex-shrink:0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:45px}.steps article{border-top:1px solid var(--line);padding-top:22px}.steps span{font:12px monospace;color:#647b57;display:block;margin-bottom:24px}.steps p{color:var(--muted);font-size:14px}.plans{background:#edf2fb}.center{text-align:center;max-width:650px;margin:0 auto 45px}.center>p:last-child{color:var(--muted);font-size:14px}.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.plan{padding:32px;background:var(--paper);border:1px solid #dce3ee;border-radius:9px;display:flex;flex-direction:column}.plan.featured{border:2px solid #426b40;background:#fff}.plan-tag{font-size:9px;letter-spacing:1.5px;color:#49663b;font-weight:700}.plan h3{font-size:24px}.plan>p:not(.plan-tag){font-size:13px;color:var(--muted);min-height:45px}.plan strong{font-size:28px;font-weight:500;letter-spacing:-1px}.billing{font-size:10px;color:var(--muted);margin:4px 0 22px}.plan ul{list-style:none;padding:22px 0 0;border-top:1px solid var(--line);font-size:12px;margin:0 0 26px}.plan li{padding:7px 0 7px 22px;position:relative}.plan li:before{content:'✓';position:absolute;left:0;color:#3c6a29}.plan .button{margin-top:auto}.plan-note{font-size:11px;color:var(--muted);max-width:850px;text-align:center;margin:25px auto 0}.faq{display:grid;grid-template-columns:1fr 1.3fr;gap:100px}.faq>div>p:not(.eyebrow){font-size:14px;color:var(--muted)}details{border-bottom:1px solid var(--line)}summary{cursor:pointer;font-size:14px;font-weight:600;min-height:65px;padding:20px 25px 20px 0}details p{font-size:13px;color:var(--muted);padding-right:20px}.closing{padding:65px 30px;text-align:center;background:var(--ink);border-radius:14px;color:#fff;margin-bottom:65px}.closing .eyebrow{color:var(--lime)}.closing h2{font-size:42px}.closing>p:last-child{font-size:11px;color:#c7d8ce;margin:20px 0 0}footer{padding-block:0 35px;display:flex;align-items:center;flex-wrap:wrap;gap:16px 30px}footer .brand{font-size:22px}footer p{font-size:12px;margin:0}footer small{width:100%;font-size:10px;color:var(--muted);order:4}footer>a:last-child{margin-left:auto;font-size:11px}.skip{position:fixed;top:-100px;left:10px;background:white;padding:12px;z-index:9}.skip:focus{top:10px}dialog{color:var(--ink);background:var(--paper);width:min(540px,calc(100% - 32px));max-height:90vh;border:1px solid var(--line);border-radius:12px;padding:35px}dialog::backdrop{background:#071e1acc;backdrop-filter:blur(4px)}dialog h2{font-size:28px;letter-spacing:-.7px}dialog>p{font-size:13px;color:var(--muted)}.close{position:absolute;right:10px;top:10px;border:0;background:none;font-size:28px;width:44px;height:44px}label{display:block;font-size:12px;font-weight:700;margin:16px 0 7px}input,textarea{width:100%;border:1px solid #a5b6aa;border-radius:5px;padding:12px;background:white;color:var(--ink);font-size:16px}textarea{resize:vertical}#brief>.button{margin-top:20px;width:100%}#result p{font-size:13px}body.modal-open{overflow:hidden}
@media(min-width:1500px){.hero{padding-top:80px}}@media(max-width:1000px){.wrap{width:calc(100% - 48px)}nav{gap:15px}.hero{gap:25px}.hero-art{height:410px}h1{font-size:60px}.service-grid{grid-template-columns:repeat(2,1fr)}.service-grid article:nth-child(3){border-left:0}.service-grid article:nth-child(n+3){border-top:1px solid var(--line)}.plan{padding:24px}.faq{gap:40px}.actions .button{font-size:12px}.capabilities span{max-width:100px}}
@media(max-width:720px){.wrap{width:calc(100% - 40px)}.preview{font-size:8px;padding:7px 12px}.preview span{display:block;margin:2px 0 0;font-size:9px}header{min-height:90px;flex-wrap:wrap;gap:15px;padding-block:19px}.brand{font-size:23px}.menu{display:block;background:none;border:1px solid var(--line);border-radius:5px;padding:10px;font-size:12px;color:var(--ink);min-height:44px}nav{display:none;flex-basis:100%;flex-direction:column;align-items:stretch;gap:0;padding:12px 0}nav.open{display:flex}nav>a{min-height:44px}.hero{grid-template-columns:1fr;padding-block:28px 45px;gap:30px}h1{font-size:53px;letter-spacing:-2.6px}.eyebrow{font-size:9px;letter-spacing:1.4px}.lead{font-size:15px}.actions{flex-direction:column;gap:10px;margin-top:24px}.actions .button{font-size:13px;min-height:52px}.hero-art{height:330px;border-radius:150px 150px 12px 12px;max-width:460px;width:100%;margin:auto}.shield{width:140px}.top{top:36px;left:8px}.bottom{bottom:52px;right:8px}.art-label{padding:10px 12px;font-size:11px}.art-label small{font-size:9px}.orbit-one{width:250px;height:250px}.orbit-two{width:310px;height:310px}.capabilities .wrap{flex-wrap:wrap;justify-content:center;gap:12px 20px;padding-block:20px}.capabilities span{width:100%;max-width:none;text-align:center}.capabilities p{font-size:11px}.capabilities b{display:none}.section{padding-block:60px}h2{font-size:31px;letter-spacing:-1px}.section-head{grid-template-columns:1fr;gap:0;margin-bottom:25px}.service-grid{grid-template-columns:1fr}.service-grid article+article{border-left:0;border-top:1px solid var(--line)}.service-grid article{padding:26px}.service-icon{margin-bottom:18px}.emergency-inner{flex-direction:column;align-items:stretch;gap:25px;padding-block:40px}.emergency h2{font-size:27px}.steps{grid-template-columns:1fr;gap:17px;margin-top:28px}.steps span{margin-bottom:14px}.plan-grid{grid-template-columns:1fr}.plan{padding:28px}.plan>p:not(.plan-tag){min-height:0}.faq{grid-template-columns:1fr;gap:15px}.closing{padding:42px 22px;margin-bottom:40px}.closing h2{font-size:31px}.closing .button{width:100%}footer{gap:13px}footer p{width:100%}footer>a:last-child{margin-left:0}dialog{padding:28px 23px}dialog .eyebrow{padding-right:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
/* Keep informational labels within the rounded illustration. */
.hero-art .top{left:45px;top:85px}
@media(max-width:720px){.hero-art .top{left:32px;top:48px}}
.contact{display:grid;grid-template-columns:1.3fr 1fr;gap:50px;padding:0 0 65px}.contact>div:last-child{display:flex;flex-direction:column;align-items:flex-start}.contact p{font-size:14px;color:var(--muted)}.contact-phone{font-size:29px;letter-spacing:-1px;font-weight:600;margin-bottom:16px}.whatsapp-float{position:fixed;z-index:20;bottom:max(22px,env(safe-area-inset-bottom));right:22px;display:flex;align-items:center;gap:9px;background:#173d35;color:white;border:1px solid #b7e486;box-shadow:0 5px 20px #14274435;border-radius:40px;padding:13px 18px;font-size:13px;font-weight:700;min-height:56px}.whatsapp-float svg{width:27px;height:27px}.whatsapp-float:hover{background:#315dc0}footer{padding-bottom:100px}
@media(max-width:720px){.contact{grid-template-columns:1fr;gap:15px;padding-bottom:45px}.whatsapp-float{right:16px;bottom:max(16px,env(safe-area-inset-bottom));padding:13px}.whatsapp-float span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}footer{padding-bottom:100px}}
/* Readability revision: darker secondary copy and larger supporting labels. */
:root{--muted:#43536c}
.eyebrow{font-size:11px}.micro,.plan-note,footer small,.billing{font-size:12px}.plan-tag{font-size:11px;color:#35542d}.service-icon{color:#405d32;font-size:12px}.capabilities span{font-size:11px;color:#43536c}.art-label small{font-size:11px;color:#43536c}.art-caption{font-size:11px;color:#354c32}.preview{font-size:11px}.preview span{color:#e1ecd9}.brand small{font-size:9px;letter-spacing:1.1px;color:#43536c}.cross{color:#4d6c40}.steps span{color:#405d32}.contact .micro{font-size:12px}.closing>p:last-child{font-size:12px;color:#e0e9e3}
@media(max-width:720px){.eyebrow{font-size:10px}.preview,.preview span{font-size:10px}.art-label small{font-size:10px}.capabilities span{font-size:10px}.brand small{font-size:8px}.plan-tag{font-size:10px}}
/* Reflow, touch targets and predictable focus at small widths / high zoom. */
.hero{grid-template-columns:minmax(0,1.12fr) minmax(0,1fr)}
.hero h1{font-size:clamp(44px,5vw,70px);overflow-wrap:normal}.hero h1 em{font-size:.85em}
.hero-copy,.section-head>*,.plan,.faq>*{min-width:0}
.text-button{display:inline-flex;align-items:center;min-height:44px}.privacy-trigger{border:1px solid #aebdb2;background:none;color:var(--ink);border-radius:5px;padding:10px 14px;min-height:44px;font-size:12px;cursor:pointer}
#privacy p{font-size:14px;color:var(--muted)}#privacy h3{margin-top:24px}#privacy a{text-decoration:underline}#privacy h2{padding-right:20px}
@media(max-width:1100px){header{flex-wrap:wrap;padding-block:22px}nav{flex-wrap:wrap;gap:18px}header .brand{margin-bottom:5px}.hero{gap:30px}}
@media(max-width:720px){.hero{grid-template-columns:minmax(0,1fr)}.hero h1{font-size:clamp(40px,12vw,53px)}.brand{font-size:22px}.brand svg{width:27px;margin-right:8px}.brand small{left:35px}.hero h1 em{font-size:.85em}.art-label{max-width:calc(100% - 40px)}.plan h3{overflow-wrap:anywhere}.service-grid h3{overflow-wrap:anywhere}summary{font-size:15px}.faq{gap:24px}.preview{padding-inline:8px}footer{gap:15px}.contact-phone{font-size:27px}}
@media(max-width:350px){.wrap{width:calc(100% - 32px)}header{gap:8px}.brand{font-size:20px}.brand small{font-size:7px}.menu{font-size:11px;padding-inline:8px}.hero h1{letter-spacing:-2px}.hero-art{height:305px}.hero-art .top{left:24px;top:45px}.art-label.bottom{right:8px}.closing{padding-inline:18px}}

/* Optional recovery add-on and readable mobile plan copy. */
.plan-addon{background:#e5edfc;border:1px solid #91aa78;border-left:4px solid #426b40;border-radius:8px;padding:18px;margin:0 0 24px;color:#142744}
.plan-addon .addon-label{font-size:11px;font-weight:700;letter-spacing:1px;margin:0 0 8px}
.plan-addon h4{font-size:18px;line-height:1.35;margin:0 0 10px}
.plan-addon .addon-price{font-size:26px;font-weight:700;line-height:1.3;margin:0 0 10px}
.plan-addon p{font-size:14px;line-height:1.6;margin:0 0 12px}
.plan-addon .addon-total{padding-top:12px;border-top:1px solid #b5c7a4;margin:0}
.addon-total b{display:block}
@media(max-width:720px){.plan{padding:24px}.plan>p:not(.plan-tag),.plan ul,.plan .billing,.plan-addon p,.plan-note{font-size:16px;line-height:1.65}.plan .plan-tag,.plan-addon .addon-label{font-size:12px;line-height:1.5}.plan .button{font-size:16px;min-height:52px}.plan>strong{font-size:32px}.plan-addon h4{font-size:20px}.plan-addon .addon-price{font-size:28px}.plans .center>p:last-child{font-size:16px}}

/* Mobile reading: body copy 16px; supporting labels at least 14px. */
@media(max-width:720px){
 .lead,.section-head>p,.service-grid p,.emergency p:not(.eyebrow),.steps p,.faq>div>p,.faq details p,.contact p,.closing>p:last-child,#privacy p,dialog>p,footer p{font-size:16px;line-height:1.7}
 .micro,.contact .micro,footer small,.eyebrow,.service-icon,.capabilities span,.capabilities p,.art-label,.art-label small,.art-caption{font-size:14px;line-height:1.6}
 .eyebrow,.capabilities span{letter-spacing:1px}
 .button,.button.small,.actions .button,.text-button,.privacy-trigger,.menu,nav{font-size:16px;line-height:1.5}
 .button,.button.small,.text-button,.privacy-trigger,.menu{min-height:48px}
 summary{font-size:18px;line-height:1.5;padding-block:18px}
 .service-grid h3,.steps h3{font-size:22px;line-height:1.35}
 footer small{overflow-wrap:anywhere}footer>a{font-size:16px}
 .hero-art{height:400px}.hero-art .art-label{max-width:calc(100% - 32px);padding:12px;gap:10px}
 .hero-art .top{left:16px;top:24px}.hero-art .bottom{right:16px;bottom:60px}
 .art-caption{padding-inline:12px;bottom:14px}.brand small{font-size:10px;letter-spacing:.5px}
 .section-head>p,.service-grid p,.steps p,.contact p,#privacy p{color:#43536c}
 .emergency p:not(.eyebrow),.closing>p:last-child{color:#e0e9e3}
}

/* RecuperaWebsite: blue / apricot identity */
.brand{font-size:23px;letter-spacing:-1px}.brand small{letter-spacing:1px}.hero{grid-template-columns:1.1fr 1fr;gap:48px}.hero h1{font-size:clamp(48px,5.4vw,74px)}.hero-art.recovery-visual{height:auto;border-radius:26px;background:#e8effc;border-color:#dce3ee;padding:12px}.recovery-visual img{display:block;width:100%;height:auto}.visual-caption{text-align:center;font:700 10px/1.5 Arial;letter-spacing:2px;color:#244ba0;margin:0 0 12px}.whatsapp-float{background:#244ba0}.brand svg{color:#244ba0}.plans{background:#edf2fb}.plan-addon{background:#fff1e6}.plan.featured{background:#142744}.reading a:not(.button){color:#244ba0}.button.lime{color:#142744}.button:hover{background:#315dc0}.button.lime:hover{background:#ffd5ae}.dot{background:#ef8d43}h1 em{color:#315dc0}.section-head>p,.service-grid p,.steps p,.reading p,.reading li{color:#43536c}@media(max-width:1100px){header{flex-wrap:wrap;padding-block:22px}nav{gap:18px}}@media(max-width:720px){.hero{grid-template-columns:1fr}.brand{font-size:23px}.hero h1{font-size:48px}.hero-art.recovery-visual{height:auto}.visual-caption{font-size:12px}}

/* Featured plan: explicit readable foreground on the dark card. */
.plan.featured{color:#ffffff;background:#142744;border-color:#244ba0}
.plan.featured h3,.plan.featured strong,.plan.featured li{color:#ffffff}
.plan.featured p,.plan.featured .billing{color:#e2eafb}
.plan.featured .plan-tag,.plan.featured li::before{color:#ffbb80}
.plan.featured ul{border-color:#61728c}
.plan.featured .button{background:#ffbb80;color:#142744;border-color:#ffbb80}
.plan.featured .button:hover{background:#ffd5ae;border-color:#ffd5ae}
