*{box-sizing:border-box}html{scroll-behavior:smooth}
#servicios, #contacto, #immigration-catalog{scroll-margin-top:80px}
body{margin:0;background:#fff;color:#0E1C33;font:16px/1.55 Arial,Helvetica,sans-serif}
a{color:inherit}button,a{touch-action:manipulation}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #4BC77B;outline-offset:5px}
.wrap{width:min(1080px,90%);margin:auto}
.draft{background:#0E1C33;color:#fff;padding:9px 5%;font-size:12px;letter-spacing:.07em;text-align:center}
header{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid #e8ebef}
nav{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:20px 0}
.brand{font-weight:800;font-size:26px;letter-spacing:-1.4px;text-decoration:none}
.brand span{color:#0E1C33;background:#FFC107;padding:0 3px}
.brand small{font-size:10px;letter-spacing:.1em;margin-left:8px;font-weight:700;opacity:.7}
nav .links{display:flex;gap:22px;align-items:center;flex-wrap:wrap;font-size:12px;font-weight:700;letter-spacing:.04em;order:2;margin-left:auto}
nav a{text-decoration:none}
.language-switch{display:flex;align-items:center;gap:8px;order:3;font-size:13px;font-weight:700}
.language-switch a{padding:6px 2px;text-decoration:none}
.language-switch a[aria-current=page]{border-bottom:3px solid #FFC107}
.language-switch a:not([aria-current]){color:#41506a}
.language-switch span{color:#7b8594}
.eyebrow{font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:#4a5666}
h1{font-size:clamp(40px,6vw,72px);line-height:1.02;letter-spacing:-.055em;margin:18px 0 14px;font-weight:800}
h2{font-size:clamp(26px,3vw,36px);letter-spacing:-.04em;line-height:1.15;margin:10px 0 18px}
h3{font-size:18px;line-height:1.25;letter-spacing:-.02em;margin:6px 0}
p{max-width:54ch;margin:0 0 14px}
.lede{font-size:19px;color:#4a5666;max-width:40ch;line-height:1.45}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;background:#0E1C33;color:#fff;padding:18px 28px;border:0;text-decoration:none;font:700 15px/1 Arial;cursor:pointer;border-radius:2px}
.btn.yellow{background:#FFC107;color:#0E1C33}
.btn.line{border:1px solid #0E1C33;background:#fff;color:#0E1C33}
.btn.big{font-size:16px;padding:20px 36px;min-width:min(100%,280px)}
.price-hero{font-size:clamp(42px,5vw,56px);font-weight:800;letter-spacing:-.04em;margin:22px 0 8px;line-height:1}
.price-hero small{font-size:18px;font-weight:600;letter-spacing:0;color:#4a5666}
.price-note{font-size:14px;color:#4a5666;margin:0 0 28px}
.micro{font-size:13px;color:#4a5666}
/* Above-the-fold sell block */
.sell{padding:56px 0 28px;max-width:720px;display:flex;flex-direction:column}
.sell .hero-actions{margin:28px 0 36px}
.steps3{list-style:none;margin:0 0 40px;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.steps3 li{display:flex;gap:14px;align-items:flex-start;padding:18px 16px;border:1px solid #e4e8ec;border-radius:4px;background:#fafbfa}
.steps3 h3{font-size:16px;margin:0 0 4px}
.steps3 p{font-size:13px;color:#4a5666;margin:0;max-width:none}
.step-n{font-size:11px;letter-spacing:.12em;font-weight:700;color:#7b8594}
.step-icon{width:36px;height:36px;flex-shrink:0;color:#0E1C33}
.trust{list-style:none;margin:0 0 48px;padding:0;display:flex;flex-wrap:wrap;gap:18px 28px;font-size:13px;color:#4a5666}
.trust li{display:flex;gap:10px;align-items:flex-start;max-width:240px}
.trust a{font-weight:700;text-decoration:underline;text-underline-offset:3px}
.trust-mark{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#4BC77B;color:#0E1C33;font-size:12px;font-weight:800;flex-shrink:0}
/* Service cards — compact */
.section{padding:12px 0 56px}
.section-head{margin-bottom:22px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #cfd5dc;border-left:1px solid #cfd5dc}
.card{padding:24px;border-right:1px solid #cfd5dc;border-bottom:1px solid #cfd5dc;display:flex;flex-direction:column;min-height:240px;gap:6px}
.card .num{font-size:11px;display:flex;justify-content:space-between;color:#7b8594}
.pill{background:#f1f3f3;padding:3px 8px;font-size:10px;font-weight:bold;letter-spacing:.04em}
.card.proposed{background:#fffbee}
.card p{font-size:13px;color:#4a5666;margin:0}
.price{font-size:32px;letter-spacing:-.04em;font-weight:700;line-height:1.1;margin:10px 0 4px}
.price small{font-size:14px;letter-spacing:0;font-weight:600;color:#4a5666}
.card .meta{font-size:12px;margin:0 0 12px;color:#4a5666}
.card .cardlink{margin-top:auto;padding-top:12px;border-top:1px solid #dce0e4;text-decoration:none;font-size:13px;font-weight:700;display:flex;justify-content:space-between}
.notice{padding:16px 18px;border-left:4px solid #FFC107;background:#f7f8f7;font-size:14px;margin:20px 0}
.contact{background:#FFC107;padding:36px 40px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:40px}
.contact h2{margin:0;font-size:28px}
.contact p{margin:0}
/* Contact banner package picker */
.contact{flex-direction:column;align-items:stretch;gap:22px}
.contact-copy h2{margin:0;font-size:28px}
.contact-copy p{margin:0}
.contact-picker{display:flex;flex-direction:column;gap:12px;width:100%}
.pkg-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%}
.pkg-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:52px;padding:16px 14px;background:#0E1C33;color:#fff;text-decoration:none;font:700 14px/1.25 Arial,Helvetica,sans-serif;border-radius:2px;text-align:center}
.pkg-card:hover{opacity:.92}
.pkg-card:focus-visible{outline:3px solid #0E1C33;outline-offset:3px}
.pkg-btn-label{display:block}
.pkg-note{display:block;font-size:12px;font-weight:600;opacity:.9;letter-spacing:0;line-height:1.3}
.pkg-btn{display:flex;align-items:center;justify-content:center;min-height:52px;padding:16px 14px;background:#0E1C33;color:#fff;text-decoration:none;font:700 14px/1.25 Arial,Helvetica,sans-serif;border-radius:2px;text-align:center;gap:0}
.pkg-btn:hover{opacity:.92}
.pkg-btn:focus-visible{outline:3px solid #0E1C33;outline-offset:3px}
.contact-q{display:inline-block;font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:3px;color:#0E1C33;align-self:flex-start}
@media(max-width:760px){
.pkg-options{grid-template-columns:1fr}
.pkg-btn,.pkg-card{min-height:56px;font-size:15px;padding:18px 16px}
.pkg-note{font-size:12px}
}

footer{padding:40px 0 24px}
.foot-top{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:22px}
.legal{font-size:12px;border-top:1px solid #cfd5dc;padding-top:18px}
.legal p{max-width:none}
.footer-ad{font-size:11px;line-height:1.55;color:#0E1C33}
.bottom{font-size:11px;border-top:1px solid #cfd5dc;padding-top:14px;margin-top:18px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.content{max-width:720px;padding:48px 0 64px;margin:0}
.content h1{font-size:clamp(36px,5vw,56px)}
.breadcrumb{font-size:13px;color:#4a5666}
.details-block{margin:28px 0;border-top:1px solid #e4e8ec}
.details-block details{padding:14px 0;border-bottom:1px solid #e4e8ec}
.details-block summary{font-weight:700;cursor:pointer;font-size:15px}
.details-block details p,.details-block details li{font-size:14px;color:#4a5666}
.details-block ul{padding-left:18px;margin:8px 0}
.checkout-link{margin:24px 0;font-size:14px}
.checkout-link a{font-weight:700;text-decoration:underline;text-underline-offset:3px}
.demo-box{border:1px solid #bfc8d0;padding:24px;margin:22px 0;border-radius:4px}
.demo-box h3{margin-top:0}
.demo-box button:disabled{opacity:.5;cursor:not-allowed}
.tag{font-size:12px;letter-spacing:.07em;font-weight:bold}
.printform{font-size:12pt;border:1px solid #0E1C33;padding:28px}
.blank{margin:16px 0;border-bottom:1px solid #9ba6b5;padding-bottom:6px}
.faq details{padding:14px 0;border-bottom:1px solid #cfd5dc}
.faq summary{font-size:15px;cursor:pointer;font-weight:700}
.faq details p{font-size:14px;color:#4a5666}
.disclaimer{border-top:1px solid #0E1C33;border-bottom:1px solid #0E1C33;padding:18px 0;margin:28px 0;font-size:13px;font-weight:700;line-height:1.55}
@media(max-width:760px){
.wrap{width:90%}
nav{padding:12px 0;gap:6px}
.brand{order:1;font-size:22px}
.language-switch{order:2;margin-left:auto;font-size:12px}
.links{order:3;flex-basis:100%;margin-left:0;justify-content:space-between;gap:8px;padding-top:4px;font-size:11px}
.sell{padding:22px 0 12px}
.sell .eyebrow{order:1}
.sell h1{order:2;font-size:34px;margin:10px 0 8px}
.sell .lede{order:3;font-size:16px;margin-bottom:8px}
.sell .price-hero{order:4;font-size:40px;margin:12px 0 4px}
.sell .price-note{order:5;margin-bottom:14px;font-size:13px}
.sell .hero-actions{order:6;margin:0 0 18px}
.sell .steps3{order:7}
.sell .trust{order:8;margin-bottom:28px}
.content .eyebrow{order:1}
.content h1{order:2;font-size:34px;margin:10px 0 8px}
.content .lede{order:3;font-size:16px}
.content .price-hero{order:4;font-size:40px;margin:12px 0 4px}
.content .price-note{order:5;margin-bottom:14px}
.content .steps3{order:7}
.content .hero-actions{order:6;margin:0 0 18px}
.content .trust{order:8}
.content{display:flex;flex-direction:column;padding:24px 0 40px}
.content .breadcrumb{order:0}
.content .details-block{order:20}
.steps3{grid-template-columns:1fr;gap:8px}
.steps3 li{padding:10px 12px;gap:10px}
.steps3 h3{font-size:14px}
.steps3 p{font-size:12px}
.step-icon{width:28px;height:28px}
.trust{gap:10px 16px;font-size:12px}
.grid{grid-template-columns:1fr}
.card{min-height:0}
.contact{padding:24px 20px}
.btn.big{width:100%}
.foot-top{display:block}
}
@media print{nav,.draft,.btn{display:none}}

/* Data-driven service cards */
.grid.services{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;border:0}
.service-card{border:1px solid #e4e8ec;border-radius:4px;padding:22px;min-height:0;display:flex;flex-direction:column;gap:8px;background:#fff}
.service-card h3{font-size:18px;margin:0;letter-spacing:-.02em}
.service-card .price{margin:4px 0 0;font-size:28px}
.service-card .price.soon{font-size:20px;color:#4a5666;font-weight:700}
.service-card .price-from{font-size:14px;font-weight:600;color:#4a5666;letter-spacing:0}
.service-card .includes{font-size:13px;color:#4a5666;margin:0;max-width:none;flex:1}
.service-card .card-actions{display:flex;align-items:center;gap:14px;margin-top:12px;flex-wrap:wrap}
.service-card .card-start{padding:12px 18px;font-size:13px;gap:10px;min-width:0}
.service-card .card-detail{font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.see-all{display:inline-flex;margin:18px 0 8px;font-weight:700;font-size:14px}
@media(max-width:760px){.grid.services{grid-template-columns:1fr}}

.draft.draft-quiet{background:#f4f5f3;color:#4a5666;font-size:11px;letter-spacing:.04em;padding:7px 5%;border-bottom:1px solid #e4e8ec}

/* Family bundle add-on selector */
.addon-row{margin:10px 0 4px;padding:12px;background:#f7f8f7;border:1px solid #e4e8ec;border-radius:4px;display:grid;gap:8px}
.addon-label{font-size:13px;font-weight:700;color:#0E1C33;line-height:1.35}
.addon-select{width:100%;max-width:120px;font:600 14px Arial;padding:8px 10px;border:1px solid #0E1C33;border-radius:2px;background:#fff;color:#0E1C33}
.addon-total{margin:0;font-size:15px;font-weight:800;letter-spacing:-.02em;color:#0E1C33}
.order-summary{border:1px solid #e4e8ec;border-left:4px solid #FFC107;padding:16px 18px;margin:18px 0;background:#fafbfa;border-radius:2px}
.order-summary h2{font-size:16px;margin:0 0 8px;letter-spacing:0}
.order-summary p{margin:0;font-size:14px;color:#4a5666;max-width:none}
.order-summary .sum-total{font-size:20px;font-weight:800;color:#0E1C33;margin-top:8px}
@media(max-width:760px){.addon-select{max-width:100%}}

.service-card .free-note{margin:0;font-size:12px;font-weight:700;color:#4a5666}


.order-form[hidden],.notice[hidden],.price-note[hidden],.lede[hidden],.addon-total[hidden]{display:none!important}
.order-form{display:grid;gap:10px;max-width:480px;margin:22px 0 28px}
.order-form label{font-size:13px;font-weight:700}
.order-form input,.order-form select,.order-form textarea{font:16px/1.4 Arial;padding:12px 12px;border:1px solid #cfd5dc;border-radius:2px;width:100%;color:#0E1C33;background:#fff}
.order-form textarea{resize:vertical}
.order-form .btn{margin-top:8px;justify-content:center}
.field-hint{font-size:13px;color:#4a5666;margin:4px 0 2px;line-height:1.35}
.field-err{font-size:13px;color:#a12622;font-weight:700;margin:0}
.order-form .optional{font-weight:400;color:#4a5666}
.order-form input[aria-invalid="true"]{border-color:#a12622}
.sign-form input[readonly]{background:#f7f8f6;color:#0E1C33}

/* task-c P2 */
.eyebrow[hidden],h1[hidden]{display:none!important}
.content .order-summary{order:4}
.content .notice{order:5}
.content .order-form{order:10}
.content #order-fallback{order:11}
