body{margin:0;background:#143E46}
.kd{font-family:'DM Sans',system-ui,sans-serif;color:#F7F5EE;background:#143E46;-webkit-font-smoothing:antialiased}
.kd *{box-sizing:border-box}
.kd h1,.kd h2,.kd h3,.kd .num,.kd .bar,.kd .eti,.kd .btn,.kd .crumb{font-family:'Barlow',system-ui,sans-serif}
.wrap{max-width:1280px;margin:0 auto;padding-left:clamp(16px,5vw,80px);padding-right:clamp(16px,5vw,80px)}
.sec{padding-top:clamp(88px,11vw,160px);padding-bottom:clamp(88px,11vw,160px)}
.stack{display:flex;flex-direction:column;gap:48px}
.intro{max-width:780px;display:flex;flex-direction:column;gap:20px}
.skip{position:absolute;left:16px;top:-60px;background:#E8B348;color:#143E46;padding:10px 16px;border-radius:999px;font-weight:600;z-index:100}
.skip:focus{top:16px}
.kd a:focus-visible,.kd button:focus-visible,.kd summary:focus-visible{outline:3px solid #90CAE7;outline-offset:3px;border-radius:6px}
.eti{font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;margin:0}
.h1{margin:0;font-size:clamp(42px,6vw,84px);line-height:1.03;font-weight:800;letter-spacing:-.015em}
.h2{margin:0;font-size:clamp(32px,4.2vw,56px);line-height:1.06;font-weight:700}
.h3{margin:0;font-size:22px;font-weight:600;line-height:1.25}
.lead{margin:0;font-size:clamp(18px,1.5vw,20px);line-height:1.6}
.p{margin:0;font-size:16px;line-height:1.6}
.on-dark .lead,.on-dark .p{color:#D9DCD6}
.on-light .lead,.on-light .p{color:#55666A}
.on-dark .eti{color:#90CAE7}.on-light .eti{color:#1C5A63}
.on-dark .h1,.on-dark .h2,.on-dark .h3{color:#F7F5EE}.on-light .h1,.on-light .h2,.on-light .h3{color:#0F2F35}
.cream{background:#F7F5EE;color:#0F2F35}
.cream2{background:#EFEBE0;color:#0F2F35}
.deep{background:#0F2F35}
.btn{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 26px;border-radius:999px;font-weight:600;font-size:16px;text-decoration:none;transition:transform .2s ease,background .2s ease}
.btn .ar{transition:transform .2s ease}.btn:hover .ar{transform:translateX(4px)}.btn:active{transform:scale(.98)}
.btn-gold{background:#E8B348;color:#143E46}.btn-gold:hover{background:#F0C463;color:#143E46}
.btn-cream{background:#F7F5EE;color:#143E46}.btn-cream:hover{background:#FFFFFF;color:#143E46}
.btn-teal{border:1.5px solid #1C5A63;color:#1C5A63}.btn-teal:hover{background:#1C5A63;color:#F7F5EE}
.btn-line{border:1.5px solid rgba(247,245,238,.5);color:#F7F5EE}.btn-line:hover{border-color:#F7F5EE;color:#F7F5EE}
.row{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px}
.lk{color:#F7F5EE;text-decoration:underline;text-underline-offset:4px;text-decoration-color:rgba(247,245,238,.45)}
.lk:hover{color:#F7F5EE;text-decoration-color:#F7F5EE}
.lkt{color:#1C5A63;font-weight:500;text-underline-offset:4px}.lkt:hover{color:#0F2F35}
.crumb{font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#C0BEB6;display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.crumb a{color:#C0BEB6;text-decoration:none}.crumb a:hover{color:#F7F5EE}
.hero{position:relative;overflow:hidden;min-height:640px;display:flex;align-items:flex-end}
.topo-s{position:absolute;inset:0;width:100%;height:100%}
.ct path{fill:none;stroke-width:1.1;vector-effect:non-scaling-stroke}
.ct .c{stroke:#1C5A63}.ct .b{stroke:#3E7F88}.ct .a{stroke:#90CAE7;stroke-opacity:.75}
.veil{position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,62,70,.95) 0%,rgba(20,62,70,.8) 50%,rgba(20,62,70,.25) 100%)}
.g2{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:24px}
.g3{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:24px}
.g4{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:24px}
.card{background:#FFFFFF;border:1px solid #DAD6CB;border-radius:12px;padding:28px;display:flex;flex-direction:column;gap:14px}
.card-d{background:#0F2F35;border:1px solid rgba(144,202,231,.2);border-radius:12px;padding:28px;display:flex;flex-direction:column;gap:14px}
.num{font-size:clamp(46px,5.4vw,72px);font-weight:800;line-height:1;color:#1C5A63;margin:0;letter-spacing:-.01em}
.cota{width:100%;height:16px;display:block}.cota line{stroke:#1C5A63;stroke-width:1.2}
.base{margin:0;color:#55666A;font-size:16px;line-height:1.55}
.hacer{background:#EFEBE0;border-radius:8px;padding:14px 16px}
.hacer p{margin:4px 0 0;font-size:15px;line-height:1.5;color:#0F2F35}
.steps{list-style:none;margin:0;padding:0}
.step{display:flex;flex-direction:column;gap:10px;position:relative;padding-top:28px;border-top:1.5px solid #1C5A63}
.step .n{font-family:'Barlow',sans-serif;font-weight:800;font-size:15px;color:#1C5A63;position:absolute;top:-12px;left:0;padding-right:10px;background:inherit}
.cream .step .n{background:#F7F5EE}.cream2 .step .n{background:#EFEBE0}
.list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px}
.list li{display:flex;gap:12px;font-size:16px;line-height:1.55}
.list li::before{content:"";flex:none;width:7px;height:7px;border-radius:50%;margin-top:9px;background:#1C5A63}
.on-dark .list li{color:#D9DCD6}.on-dark .list li::before{background:#90CAE7}
.note{background:#EFEBE0;border:1px solid #C0BEB6;border-radius:12px;padding:24px 28px}
.tbl{width:100%;border-collapse:collapse;font-size:15px}
.tbl th{font-family:'Barlow',sans-serif;font-weight:600;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#55666A;text-align:left;padding:12px 14px;border-bottom:1.5px solid #1C5A63}
.tbl td{padding:14px;border-bottom:1px solid #DAD6CB;color:#0F2F35;vertical-align:top}
.tbl td:first-child{font-family:'Barlow',sans-serif;font-weight:700;color:#1C5A63;white-space:nowrap}
.tbox{overflow-x:auto;background:#FFFFFF;border:1px solid #DAD6CB;border-radius:12px}
.chat{display:flex;flex-direction:column;gap:14px;max-width:560px}
.msg{border-radius:14px;padding:14px 18px;font-size:16px;line-height:1.5;max-width:88%}
.msg small{display:block;font-size:12px;color:#55666A;margin-bottom:4px;font-family:'Barlow',sans-serif;font-weight:600;letter-spacing:.06em;text-transform:uppercase}
.msg-out{align-self:flex-end;background:#1C5A63;color:#F7F5EE}.msg-out small{color:#C9DCE0}
.msg-in{align-self:flex-start;background:#FFFFFF;border:1px solid #DAD6CB;color:#0F2F35}
.read{font-size:14px;color:#1C5A63;font-weight:500;padding-left:4px}
.doc{margin:0;display:flex;flex-direction:column;gap:12px}
.doc img{width:100%;height:auto;display:block;border-radius:6px;box-shadow:0 18px 40px -18px rgba(15,47,53,.45),0 2px 6px rgba(15,47,53,.12);background:#fff;transform:rotate(-2deg);transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.doc:hover img{transform:rotate(0) translateY(-6px)}
.doc figcaption{font-size:14px;color:#55666A;line-height:1.45}
.doc figcaption b{display:block;color:#0F2F35;font-weight:500;font-size:16px}
.ev{position:relative;display:block;border-radius:10px;overflow:hidden;cursor:zoom-in}
.ev img{display:block;width:100%;height:auto}
.ev .ver{position:absolute;right:16px;bottom:16px;background:#143E46;color:#F7F5EE;font-family:'Barlow',sans-serif;font-weight:600;font-size:14px;padding:10px 16px;border-radius:999px;opacity:0;transform:translateY(8px);transition:opacity .25s ease,transform .25s ease}
.ev:hover .ver,.ev:focus-visible .ver{opacity:1;transform:none}
.faq details{border-bottom:1px solid #C0BEB6;padding:4px 0}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:64px;font-family:'Barlow',sans-serif;font-weight:600;font-size:20px;color:#0F2F35}
.faq summary::-webkit-details-marker{display:none}
.faq summary .pl{flex:none;width:28px;height:28px;border-radius:50%;border:1.5px solid #1C5A63;display:grid;place-items:center;color:#1C5A63;transition:transform .25s ease}
.faq details[open] summary .pl{transform:rotate(45deg)}
.faq details p{margin:0 0 22px;max-width:68ch;color:#55666A;font-size:17px;line-height:1.6}
.sub{position:sticky;top:0;z-index:40;background:rgba(15,47,53,.94);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid rgba(144,202,231,.18)}
.sub nav{display:flex;gap:4px;overflow-x:auto;padding-top:10px;padding-bottom:10px}
.sub a{flex:none;color:#F7F5EE;text-decoration:none;font-family:'Barlow',sans-serif;font-weight:600;font-size:15px;padding:10px 14px;border-radius:10px;min-height:44px;display:inline-flex;align-items:center}
.sub a:hover{background:rgba(144,202,231,.12);color:#F7F5EE}
.sun{width:18px;height:18px;border-radius:50%;background:#E8B348;box-shadow:0 0 0 10px rgba(232,179,72,.12),0 0 0 22px rgba(232,179,72,.06)}
.foot{background:#0F2F35;color:#C0BEB6}
.foot a{color:#F7F5EE;text-decoration:none}.foot a:hover{color:#90CAE7}
.dock{position:sticky;bottom:16px;z-index:60;display:flex;justify-content:center;padding:0 16px;pointer-events:none}
.bar{pointer-events:auto;display:flex;align-items:center;gap:6px;padding:8px 8px 8px 14px;border-radius:16px;background:rgba(20,62,70,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(144,202,231,.22);box-shadow:0 18px 40px -12px rgba(0,0,0,.45);max-width:100%}
.bar .bl{display:flex;align-items:center;gap:2px}
.bar .bl a{color:#F7F5EE;text-decoration:none;font-weight:600;font-size:15px;padding:12px 14px;border-radius:10px;min-height:44px;display:inline-flex;align-items:center}
.bar .bl a:hover{background:rgba(144,202,231,.12);color:#F7F5EE}
.bar .bl a[aria-current="page"]{background:rgba(144,202,231,.16)}
.bar .btn{min-height:44px;padding:0 20px;font-size:15px}
.ico{width:44px;height:44px;border-radius:12px;display:inline-grid;place-items:center;color:#F7F5EE;border:1px solid rgba(247,245,238,.25);text-decoration:none}
.ico:hover{background:rgba(144,202,231,.12);color:#F7F5EE}
.sym{height:30px;width:auto;display:block}
@media (max-width:900px){.bar .bl{display:none}.hero{min-height:560px}.veil{background:linear-gradient(180deg,rgba(20,62,70,.55) 0%,rgba(20,62,70,.94) 65%)}}
@media (max-width:480px){.bar .btn .ar{display:none}}
@keyframes draw{to{stroke-dashoffset:0}}
@keyframes rise{from{opacity:0;transform:translateY(48px);filter:blur(6px)}to{opacity:1;transform:none;filter:none}}
@keyframes lit{to{background-position:0 0}}
@keyframes numin{from{opacity:0;filter:blur(12px);letter-spacing:.06em;transform:translateY(16px)}to{opacity:1;filter:none;letter-spacing:-.01em;transform:none}}
@keyframes fade{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes cota{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes line{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes descend{from{transform:scale(1)}to{transform:scale(1.3) translateY(6%)}}
@keyframes msgin{from{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:none}}

