:root{--ink:#153533;--ink-soft:#536963;--muted:#71857F;--teal:#0B6A56;--teal-hover:#085540;--teal-light:#E9F9F0;--mint:#2BD98E;--line:#DEEBE4;--off:#F5FEF8;--white:#fff;--deep:#103B38;--red:#B53C3D;--radius:16px;--shadow:0 24px 70px rgba(14,68,48,.12);--brand-coral:#FF7364;--brand-blue:#005A87;--focus-ring:rgba(43,217,142,.24)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:95px}
body{margin:0;background:var(--white);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit}
button,a,select{ -webkit-tap-highlight-color:transparent}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
svg{display:block}
.icon{width:20px;height:20px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;fill:none;flex:none}
.icons{position:absolute;width:0;height:0;overflow:hidden}
.container{width:min(1200px,calc(100% - 72px));margin-inline:auto}
[hidden]{display:none!important}
:focus-visible{outline:3px solid #16AB75;outline-offset:3px}
.site-header{position:relative;z-index:10;background:#fff;border-bottom:1px solid #edf1ef}
.nav-inner{height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:inline-flex;align-items:center;gap:10px;flex-shrink:0}
.brand-mark{width:40px;height:40px;display:block;border-radius:12px;background:var(--teal);position:relative;overflow:hidden;flex:none}
.brand-mark span{position:absolute;width:24px;height:22px;border:5px solid #fff;border-radius:13px;transform:rotate(-44deg);top:8px;left:6px}
.brand-mark span+span{border-color:#2BD98E;top:12px;left:12px}
.brand-text{font-weight:850;letter-spacing:-.055em;font-size:17px;line-height:1.03;display:block}
.brand-text>span{color:var(--teal)}
.brand-text small{display:block;font-size:9px;font-weight:550;letter-spacing:.045em;color:#82918e;margin-top:5px}
.desktop-nav{display:flex;gap:31px;align-items:center;color:#516168;font-size:12px;font-weight:670}
.desktop-nav a{transition:color .18s}
.desktop-nav a:hover{color:var(--teal)}
.nav-actions{display:flex;gap:15px;align-items:center}
.language-control{display:flex;align-items:center;gap:4px;border:1px solid #e3e9e7;border-radius:9px;padding:9px 10px;background:#fff;cursor:pointer}
.language-control svg{width:15px;height:15px;stroke:#617475;stroke-width:1.7;fill:none}
.language-control select{border:0;appearance:none;background:transparent;outline:0;color:#29454e;font-size:16px;font-weight:800;cursor:pointer}
.language-control .chevron{width:12px}
.nav-status{display:inline-flex;align-items:center;gap:10px;background:#EAF9F0;padding:11px 15px;border-radius:9px;font-size:12px;color:#276057;font-weight:740}
.arrow-small{width:15px;height:15px}
.hero{position:relative;overflow:hidden;background:linear-gradient(115deg,#F5FEF8 0%,#F1FBF6 50%,#E5F9EE 100%);padding:78px 0 26px}
.hero-halo{width:660px;height:660px;border:1px solid rgba(45,116,92,.06);border-radius:50%;position:absolute;right:-285px;top:-270px;box-shadow:0 0 0 80px rgba(110,180,144,.025),0 0 0 160px rgba(110,180,144,.02)}
.hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(430px,506px);align-items:center;gap:clamp(55px,7vw,115px)}
.hero-copy{padding:0 0 22px 4px}
.eyebrow{display:inline-flex;align-items:center;gap:9px;color:#0B6A56;font-size:11px;font-weight:850;letter-spacing:.12em}
.eyebrow-icon{width:27px;height:27px;border:1px solid #cae4d9;background:#E7FAEF;border-radius:8px;display:flex;align-items:center;justify-content:center}
.eyebrow-icon .icon{width:15px;height:15px}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(44px,5vw,65px);line-height:1.095;letter-spacing:-.058em;margin:25px 0 23px;font-weight:820;max-width:680px}
.headline-accent{color:#0B7357}
.hero-description{max-width:510px;color:#52666b;line-height:1.8;font-size:16px;margin-bottom:34px}
.hero-highlights{display:grid;gap:17px;margin-bottom:43px;font-size:13px;font-weight:690;color:#284b4d}
.hero-highlights>div{display:flex;gap:13px;align-items:center}
.round-icon{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid #cee9dd;background:#E2FAEE;color:#0B775D;border-radius:50%}
.round-icon .icon{width:15px;height:15px;stroke-width:2.6}
.hero-small-link{margin-top:19px;font-size:12px;font-weight:750;color:#0B6A56}
.hero-small-link a{display:inline-flex;align-items:center;gap:8px;text-decoration:underline;text-underline-offset:3px}
.form-shell{background:#fff;border:1px solid #e6eeea;border-radius:22px;box-shadow:0 24px 74px rgba(29,75,60,.12);padding:32px 32px 26px;align-self:start;scroll-margin-top:30px}
.form-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:28px}
.form-kicker{color:#0B785A;font-size:10px;font-weight:830;letter-spacing:.13em;margin-bottom:7px}
.form-heading h2{font-size:24px;line-height:1.3;letter-spacing:-.035em;margin:0 0 5px;font-weight:790}
.form-heading p{font-size:12px;color:#879194;margin:0}
.form-icon{width:45px;height:45px;display:flex;align-items:center;justify-content:center;color:#0B785A;background:#E9FAF1;border-radius:13px}
.form-icon .icon{width:23px;height:23px}
.step-heading{display:flex;justify-content:space-between;color:#235848;font-size:11px;font-weight:740;margin-bottom:10px}
.step-heading span+span{color:#8b9c98;font-weight:620}
.progress-track{height:5px;background:#e8f0ec;border-radius:8px;overflow:hidden}
.progress-track>span{display:block;height:100%;background:#2BD98E;border-radius:8px;transition:width .25s ease}
.progress-track>span[data-progress="0"]{width:25%}
.progress-track>span[data-progress="1"]{width:50%}
.progress-track>span[data-progress="2"]{width:75%}
.progress-track>span[data-progress="3"]{width:100%}
.step-panel{padding-top:26px;min-height:400px}
.step-title{margin-bottom:21px}
.step-title h3{font-size:20px;letter-spacing:-.03em;margin:0 0 5px;line-height:1.3}
.step-title p{font-size:12px;color:#8a9798;margin:0}
.field-grid{display:grid;gap:14px}
.two-cols{grid-template-columns:repeat(2,minmax(0,1fr))}
.amount-cols{grid-template-columns:minmax(0,1fr) 112px}
.field{display:flex;flex-direction:column;gap:7px;margin-bottom:15px;min-width:0}
.field>span{font-weight:700;font-size:11.5px;color:#31474e;line-height:1.5}
.field b,.check-line b{color:#0B6A56}
.field input,.field select,.field textarea{width:100%;height:46px;border:1px solid #dce5e2;background:#fff;border-radius:9px;color:#213f45;padding:0 13px;font-size:16px;outline:none;transition:border-color .15s,box-shadow .15s}
.field textarea{height:auto;min-height:98px;padding:13px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{border-color:#16A46B;box-shadow:0 0 0 3px #E2FAEE}
.field input::placeholder,.field textarea::placeholder{color:#a5b1ae}
.field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23869a94' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 11px center;background-repeat:no-repeat;padding-right:33px;cursor:pointer}
.field small{font-size:10px;line-height:1.5;color:#8a9a97}
.field input.invalid,.field select.invalid,.field textarea.invalid{border-color:var(--red);box-shadow:0 0 0 2px #fcf0ee}
.inline-help{display:flex;align-items:flex-start;gap:10px;background:#F0FBF5;border-radius:9px;padding:10px 12px;color:#607873;font-size:11px;line-height:1.55;margin-top:3px}
.inline-help .icon{width:16px;height:16px;flex:none;color:#538a7b}
.honeypot{position:absolute;left:-9999px;top:-9999px;opacity:0;pointer-events:none}
.form-alert{background:#fff0ee;color:#9e3431;border:1px solid #f1d4d0;padding:11px;border-radius:9px;font-size:12px;margin:6px 0 12px}
.form-footer{display:flex;gap:12px;align-items:center;margin-top:13px}
.primary-button{min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:16px;background:#0B6A56;color:#fff;border:1px solid #0B6A56;padding:13px 22px;border-radius:10px;font-weight:760;font-size:13px;line-height:1.2;box-shadow:0 8px 18px rgba(8,117,104,.11);transition:background .16s,transform .16s,box-shadow .16s;text-align:center}
.primary-button:hover:not(:disabled){background:#084D40;transform:translateY(-1px);box-shadow:0 12px 24px rgba(8,117,104,.18)}
.primary-button:disabled{opacity:.55;cursor:not-allowed;transform:none}
.primary-button .icon{width:17px;height:17px}
.form-footer>.primary-button{flex:1}
.back-button{min-height:50px;display:flex;align-items:center;justify-content:center;gap:9px;border:1px solid #dde6e1;background:#fff;color:#526e68;padding:12px 17px;border-radius:10px;font-weight:700;font-size:12px}
.back-button .icon{transform:rotate(180deg);width:16px;height:16px}
.form-footnote{display:flex;justify-content:center;align-items:center;gap:8px;font-size:10px;color:#91a09b;margin:14px 0 0;text-align:center}
.form-footnote .icon{width:13px;height:13px}
.upload-area{border:1.5px dashed #a8cec1;background:#F5FEF9;border-radius:14px;min-height:265px;padding:30px 22px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;gap:11px;transition:background .15s,border-color .15s}
.upload-area.dragover{background:#E2FAEE;border-color:#15AB75}
.upload-icon{display:flex;width:48px;height:48px;background:#E1F8EB;color:#0B745A;border-radius:15px;align-items:center;justify-content:center}
.upload-icon .icon{width:25px;height:25px}
.upload-area strong{font-size:13px;line-height:1.55;max-width:280px}
.upload-area>span:not(.upload-icon){font-size:11px;color:#7a9288}
.upload-button{background:#fff;color:#0B6A56;border:1px solid #bcdcd0;cursor:pointer;border-radius:9px;padding:10px 16px;font-size:12px;font-weight:750}
.upload-area small{font-size:10px;color:#8b9d95}
.file-list{display:grid;gap:7px;margin:13px 0}
.file-item{display:flex;align-items:center;gap:9px;background:#F8FCF9;border:1px solid #e3ece7;padding:9px 10px;border-radius:9px}
.file-item .icon{width:17px;color:#408e76}
.file-meta{flex:1;min-width:0}
.file-meta b{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.file-meta small{display:block;color:#8ba19a;font-size:10px}
.file-remove{border:0;background:transparent;color:#8b5553;font-size:19px;padding:4px 7px;line-height:1}
.review-card{border:1px solid #e4ece8;border-radius:12px;overflow:hidden;background:#fff}
.review-header{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#F8FCF9;padding:13px 14px;font-size:12px;font-weight:790}
.review-bank{font-size:10px;color:#0B7359;background:#E8FAF0;padding:5px 9px;border-radius:6px}
.review-card dl{padding:10px 14px 2px;margin:0;display:grid;gap:9px}
.review-card dl>div{display:flex;justify-content:space-between;gap:10px;font-size:11px}
.review-card dt{color:#82938e}
.review-card dd{margin:0;text-align:right;font-weight:750;color:#375450;max-width:60%;word-break:break-word}
.text-button{border:0;background:none;color:#0B6A56;font-weight:750;font-size:11px;padding:9px 14px;text-decoration:underline;text-underline-offset:3px}
.payment-card{display:flex;justify-content:space-between;gap:10px;align-items:center;border-radius:11px;background:#E8FAF0;margin:14px 0 11px;padding:14px 15px}
.payment-card span{display:block;font-size:12px;font-weight:750;color:#285B4D}
.payment-card small{display:block;font-size:10px;color:#76928a;margin-top:4px}
.payment-card strong{font-size:21px;letter-spacing:-.03em;white-space:nowrap;color:#0A6049}
.contract-text{font-size:10.5px;color:#7f8c8c;line-height:1.65}
.check-line{display:flex;gap:10px;align-items:flex-start;font-size:11px;line-height:1.55;color:#4e6665;margin:10px 0;cursor:pointer}
.check-line input{appearance:none;flex:none;margin:2px 0 0;width:17px;height:17px;border-radius:5px;border:1.5px solid #aac5ba;background:#fff;display:grid;place-items:center;cursor:pointer}
.check-line input:checked{background:#0B6A56;border-color:#0B6A56}
.check-line input:checked:after{content:'✓';color:#fff;font-size:12px;font-weight:850;line-height:1}
.hero-bottom{position:relative;display:flex;align-items:center;justify-content:center;gap:9px;margin-top:47px;color:#8ca69b;font-size:10.5px;font-weight:650}
.hero-bottom .icon{width:16px;height:16px}
.hero-bottom-line{position:absolute;height:1px;background:#e1ebe4;width:100%;top:-23px}
.section{padding:106px 0}
.section-header.center{text-align:center;margin:0 auto 43px;max-width:610px}
.section-eyebrow{color:#0C765A;font-size:10px;letter-spacing:.155em;font-weight:850;margin-bottom:16px}
.section h2,.bottom-cta h2{font-size:clamp(30px,3.3vw,44px);line-height:1.18;letter-spacing:-.045em;font-weight:800;margin:0 0 15px}
.section-header p,.faq-intro p,.bottom-cta p{color:#798b8b;font-size:14px;line-height:1.75;margin-bottom:0}
.section-how{background:#fff}
.how-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}
.how-card{border:1px solid #e8eeea;background:#fff;padding:30px 30px 32px;border-radius:16px;min-height:259px;position:relative;box-shadow:0 4px 16px rgba(21,66,50,.025)}
.how-card:before{content:'';position:absolute;top:0;left:27px;right:27px;height:3px;background:#e2f1e9;border-radius:0 0 10px 10px}
.card-number{float:right;font-size:26px;color:#e4eee8;font-weight:820;letter-spacing:-.06em}
.card-icon{width:47px;height:47px;background:#E8FAF0;border-radius:13px;display:grid;place-items:center;color:#0C765A;margin-bottom:24px}
.card-icon .icon{width:23px;height:23px}
.how-card h3{font-size:16px;margin:0 0 11px;font-weight:800;letter-spacing:-.025em}
.how-card p{font-size:12.5px;line-height:1.75;color:#7a8988;margin:0}
.section-services{background:#F5FEF8}
.services-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(70px,11vw,170px);align-items:center}
.services-copy h2{max-width:460px}
.services-copy>p{color:#738783;font-size:14px;line-height:1.85;max-width:465px;margin:0 0 27px}
.outline-cta{border:1px solid #8bbfb1;color:#0B6A56;display:inline-flex;gap:20px;align-items:center;padding:11px 17px;border-radius:9px;font-size:12px;font-weight:750}
.outline-cta .icon{width:17px;height:17px}
.service-list{display:grid;gap:13px}
.service-item{display:flex;gap:17px;padding:20px 21px;background:#fff;border:1px solid #e6edeb;border-radius:13px;align-items:flex-start}
.service-item>span{flex:none;width:40px;height:40px;display:grid;place-items:center;background:#EDF9F2;color:#0C765A;border-radius:11px}
.service-item>span .icon{width:20px;height:20px}
.service-item h3{font-size:14px;font-weight:800;margin:0 0 5px;letter-spacing:-.02em}
.service-item p{font-size:12px;line-height:1.7;color:#84918c;margin:0}
.section-faq{background:#fff}
.faq-layout{display:grid;grid-template-columns:1fr 1.3fr;gap:clamp(65px,10vw,160px)}
.faq-intro h2{max-width:330px}
.faq-list{border-top:1px solid #e1eae6}
.faq-list details{border-bottom:1px solid #e1eae6}
.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:21px 0;list-style:none;cursor:pointer;font-size:13px;font-weight:760;line-height:1.5}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary .icon{width:16px;height:16px;color:#6a8a7f;transition:transform .2s}
.faq-list details[open] summary .icon{transform:rotate(180deg)}
.faq-list details p{font-size:12px;line-height:1.85;color:#7c8f8c;margin:0;padding:0 40px 20px 0}
.section-status{background:#fff;padding:0 0 95px}
.status-panel{display:grid;grid-template-columns:1fr 1fr;background:#103B38;border-radius:22px;overflow:hidden;min-height:345px;position:relative}
.status-panel:before{content:'';position:absolute;right:44%;bottom:-180px;width:400px;height:400px;border:1px solid rgba(255,255,255,.09);border-radius:50%;pointer-events:none}
.status-intro{position:relative;padding:58px 58px;color:#fff}
.section-eyebrow.light{color:#86d9bd}
.status-intro h2{color:#fff;margin-bottom:15px;max-width:350px}
.status-intro>p{font-size:13px;color:#b9d1c9;line-height:1.85;max-width:430px;margin-bottom:27px}
.status-lock{display:flex;align-items:center;gap:9px;font-size:11px;color:#a0c4b9}
.status-lock .icon{width:15px;height:15px}
.status-form-panel{padding:44px 54px;background:#fff;margin:19px;border-radius:13px;align-self:stretch;position:relative;display:flex;flex-direction:column;justify-content:center}
.status-form-panel .field{margin-bottom:18px}
.status-button{width:100%;margin-top:4px}
.otp-instruction{font-size:13px;color:#657a74;line-height:1.7;margin-bottom:19px}
.resend{margin-top:10px;width:100%;text-align:center}
#status-message{margin-top:15px;border-radius:10px;padding:11px 13px;font-size:12px;line-height:1.65;background:#E7F9EF;color:#186b56}
#status-message.error{background:#fff0ee;color:#9d3c33}
.bottom-cta{padding:68px 0;background:#EAF8F0;border-top:1px solid #e4eee8}
.bottom-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:35px}
.bottom-cta h2{margin-bottom:11px}
.bottom-cta p{max-width:550px}
.bottom-cta .primary-button{white-space:nowrap}
.site-footer{background:#0A302F;color:#daebe5;padding:65px 0 22px}
.footer-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:30px;border-bottom:1px solid rgba(255,255,255,.12)}
.footer-brand .brand-text{color:#fff}
.footer-brand .brand-text>span{color:#79EDB8}
.footer-brand .brand-text small{color:#83aea5}
.footer-brand .brand-mark{background:#0A7359;border:1px solid rgba(255,255,255,.1)}
.footer-top>p{max-width:480px;font-size:11.5px;line-height:1.8;color:#9fbcb5;margin:0}
.footer-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:25px 0 37px}
.footer-details details{position:relative}
.footer-details summary{display:flex;gap:5px;align-items:center;justify-content:space-between;font-size:12px;font-weight:740;cursor:pointer;list-style:none}
.footer-details summary::-webkit-details-marker{display:none}
.footer-details summary .icon{width:14px;height:14px;color:#9bc3b6}
.footer-details details[open] summary .icon{transform:rotate(180deg)}
.footer-details details p,.provider-contact{font-size:10.5px;line-height:1.8;color:#a7c2ba;margin:15px 0 0;overflow-wrap:anywhere}
.footer-bottom{display:flex;justify-content:space-between;gap:12px;border-top:1px solid rgba(255,255,255,.11);padding-top:21px;font-size:10px;color:#8faea5}
.footer-bottom a{text-decoration:underline;text-underline-offset:3px}
.feedback-dialog{border:1px solid #e3eee9;border-radius:20px;padding:32px;max-width:420px;width:calc(100% - 32px);box-shadow:0 36px 100px rgba(0,25,22,.25);color:var(--ink);text-align:center}
.feedback-dialog::backdrop{background:rgba(9,35,35,.63);backdrop-filter:blur(3px)}
.dialog-illustration{width:62px;height:62px;background:#E5F9EE;color:#0C7859;display:grid;place-items:center;border-radius:18px;margin:0 auto 22px}
.dialog-illustration .icon{width:31px;height:31px;stroke-width:2.4}
.feedback-dialog h2{font-size:24px;line-height:1.3;letter-spacing:-.035em;margin:0 0 13px}
.feedback-dialog p{font-size:13px;line-height:1.75;color:#728680;margin-bottom:22px}
.reference-display{background:#E8FAF0;border-radius:12px;padding:14px;margin-bottom:18px;display:flex;flex-direction:column;gap:5px}
.reference-display>span{font-size:11px;color:#527a6d}
.reference-display strong{font-size:24px;letter-spacing:.065em;color:#0B654F}
.copy-button{font-size:11px;font-weight:800;background:none;border:0;color:#0B6A56;text-decoration:underline}
.dialog-actions{display:flex;flex-direction:column;gap:6px}
.dialog-actions .primary-button{width:100%}
.noscript{position:fixed;z-index:99;bottom:0;width:100%;background:#B53C3D;color:#fff;padding:12px;text-align:center}
@media(max-width:1100px){.container{width:min(100% - 50px,1200px)}.hero-grid{gap:34px;grid-template-columns:minmax(0,1fr) minmax(400px,480px)}h1{font-size:52px}.nav-inner{gap:13px}.desktop-nav{gap:17px}.nav-status{padding:10px 12px}}
@media(max-width:920px){.desktop-nav{display:none}.hero{padding-top:48px}.hero-grid{grid-template-columns:1fr;max-width:720px;gap:37px}.hero-copy{padding:0}.hero-copy h1{font-size:clamp(43px,7.5vw,63px);max-width:680px}.hero-description{max-width:660px}.hero-highlights{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:25px}.hero-highlights>div{align-items:flex-start;gap:8px;font-size:11px}.round-icon{flex:none;width:27px;height:27px}.form-shell{max-width:640px;width:100%;margin:auto}.step-panel{min-height:360px}.hero-bottom{margin-top:54px}.services-grid,.faq-layout{gap:48px}.status-intro{padding:40px 30px}.status-form-panel{padding:32px 27px}}
@media(max-width:700px){html{scroll-padding-top:20px}.container{width:calc(100% - 36px)}.nav-inner{height:68px}.brand-mark{width:35px;height:35px}.brand-text{font-size:15px}.brand-text small{font-size:8px}.nav-status{font-size:0;padding:10px 12px}.nav-status .icon{width:18px;height:18px}.language-control{padding:8px}.hero{padding:44px 0 20px}.hero-copy h1{font-size:clamp(40px,10vw,53px);margin:21px 0 18px}.hero-description{font-size:14px;line-height:1.75;margin-bottom:24px}.hero-highlights{display:grid;grid-template-columns:1fr;gap:11px}.hero-highlights>div{align-items:center;font-size:12px}.hero-small-link{margin-top:13px}.form-shell{padding:24px 18px 22px;border-radius:18px}.form-heading h2{font-size:22px}.form-icon{width:42px;height:42px}.step-panel{min-height:auto;padding-top:23px}.step-title h3{font-size:19px}.two-cols{grid-template-columns:1fr;gap:0}.field{margin-bottom:14px}.field input,.field select{height:48px}.form-footer{margin-top:16px}.hero-bottom{font-size:10px;margin-top:45px}.section{padding:72px 0}.section-header.center{margin-bottom:31px}.section h2,.bottom-cta h2{font-size:32px}.how-grid{grid-template-columns:1fr;gap:14px}.how-card{min-height:0;padding:24px}.how-card h3{font-size:16px}.how-card .card-icon{margin-bottom:16px}.services-grid,.faq-layout{grid-template-columns:1fr;gap:34px}.service-item{padding:17px}.section-status{padding:0 0 65px}.status-panel{grid-template-columns:1fr;border-radius:18px;gap:0}.status-intro{padding:35px 24px 19px}.status-intro h2{font-size:31px}.status-intro>p{margin-bottom:15px}.status-form-panel{margin:16px;padding:25px 20px}.bottom-cta{padding:55px 0}.bottom-cta-inner{align-items:flex-start;flex-direction:column;gap:25px}.bottom-cta-inner .primary-button{width:100%}.site-footer{padding:45px 0 20px}.footer-top{flex-direction:column}.footer-details{grid-template-columns:1fr;gap:20px}.footer-bottom{flex-wrap:wrap}}
@media(max-width:370px){.container{width:calc(100% - 28px)}.form-shell{padding:21px 15px}.hero-copy h1{font-size:38px}.nav-inner{gap:7px}.nav-actions{gap:7px}.brand-text{font-size:13px}.brand-text small{font-size:7px}.brand-mark{width:32px;height:32px}.back-button{padding:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* ============================================================
   Refinamiento visual v1.1: inspiración cromática ueno (no oficial)
   Base de colores: verde menta #2BD98E, coral #FF7364,
   azul #005A87. La identidad de esta plataforma es independiente.
   ============================================================ */
html{color-scheme:light}
body{min-width:0}
.site-header{border-bottom-color:#E1F0E7}
.brand-mark{background:#0B584B;box-shadow:0 5px 14px rgba(11,88,75,.13)}
.brand-mark span+span{border-color:var(--mint)}
.brand-text>span{color:#087659}
.desktop-nav a:hover,.footer-bottom a:hover{color:var(--teal)}
.language-control{min-height:46px;border-color:#D7E9DF;transition:border-color .2s,box-shadow .2s}
.language-control:focus-within{border-color:#19A974;box-shadow:0 0 0 3px var(--focus-ring)}
.language-control select{min-height:26px;color:#1B5044;line-height:1.2}
.nav-status{min-height:46px;background:#E9F8F0;color:#125840;transition:background .2s}
.nav-status:hover{background:#D6F6E5}
.hero{background:radial-gradient(ellipse 54% 70% at 88% 12%,rgba(43,217,142,.15),transparent 80%),linear-gradient(113deg,#F9FEFB 0%,#F2FCF6 56%,#E7FAF0 100%)}
.hero-halo{border-color:rgba(12,117,83,.07);box-shadow:0 0 0 80px rgba(43,217,142,.03),0 0 0 160px rgba(43,217,142,.018)}
.eyebrow-icon,.round-icon{border-color:#B8EED2;background:#E3FAEC;color:#096D4F}
.headline-accent{color:#0A7759}
.hero-description{color:#526E64}
.hero-small-link a{color:#005A87;text-decoration-color:rgba(0,90,135,.4)}
.hero-small-link a:hover{text-decoration-color:currentColor}
.form-shell{border:1px solid #CEE8DC;box-shadow:0 28px 70px rgba(17,77,51,.12),0 4px 15px rgba(17,77,51,.035);background:var(--white)}
.form-kicker,.section-eyebrow{color:#0B7656}
.form-kicker{display:flex;align-items:center;gap:8px}
.form-kicker::before{content:"";width:6px;height:6px;border-radius:50%;background:#FF7364;flex:none}
.form-icon{background:#E5FAEF;color:#0C7755}
.progress-track{background:#DDF4E6;height:6px}
.progress-track>span{background:linear-gradient(90deg,#12AF75,var(--mint))}
.field>span{color:#274940}
.field input,.field select,.field textarea{min-height:48px;border-color:#D3E5D9;background:#FFFEFF;color:#173A32;font-size:16px;line-height:1.35;box-shadow:0 1px 1px rgba(16,55,40,.018)}
.field input:focus,.field select:focus,.field textarea:focus{border-color:#12A46B;box-shadow:0 0 0 3px var(--focus-ring)}
.field input:hover:not(:focus),.field select:hover:not(:focus),.field textarea:hover:not(:focus){border-color:#A6CEB7}
.field input::placeholder,.field textarea::placeholder{color:#879A91;opacity:1}
.field input.invalid,.field select.invalid,.field textarea.invalid{border-color:#B53C3D;box-shadow:0 0 0 3px rgba(181,60,61,.11)}
.inline-help{background:#EAF9F2;color:#3D6858}
.primary-button{background:#0A6A52;border-color:#0A6A52;box-shadow:0 9px 21px rgba(10,106,82,.16);min-height:52px;font-size:14px}
.primary-button:hover:not(:disabled){background:#07523F;border-color:#07523F;box-shadow:0 12px 26px rgba(10,106,82,.2)}
.primary-button:focus-visible,.back-button:focus-visible,.upload-button:focus-visible{outline:3px solid #2BD98E;outline-offset:3px}
.back-button{min-height:52px;border-color:#D4E5DC;color:#235B4C}
.back-button:hover{background:#F0FBF5;border-color:#A9D5BB}
.upload-area{border-color:#92D9B6;background:#F5FFF9}
.upload-area.dragover{background:#E4F9EE;border-color:#0A9769}
.upload-button{background:#fff;color:#0A7153;border-color:#B0DEC5;min-height:44px}
.file-item{border-color:#E1EEE5}
.payment-card{background:#E9FBEF;border:1px solid #CBEBD8}
.payment-card strong{color:#0B6249}
.check-line input:checked{background:#0B7955;border-color:#0B7955}
.how-card{transition:transform .2s,box-shadow .2s,border-color .2s}
.how-card::before{background:linear-gradient(90deg,#2BD98E,#B8F0D3)}
@media(hover:hover){.how-card:hover{transform:translateY(-3px);border-color:#BFE8D0;box-shadow:0 12px 35px rgba(12,83,53,.08)}}
.service-item{border-color:#DEECE3}
.card-icon,.service-item>span{background:#E6F9ED;color:#0B7955}
.status-panel,.site-footer{background:#103B38}
.status-panel{box-shadow:0 20px 50px rgba(8,65,47,.09)}
.status-form-panel{box-shadow:0 8px 32px rgba(3,32,28,.09)}
.section-eyebrow.light{color:#A0F4C8}
.bottom-cta{background:#EAF9F0;border-top-color:#D6EDE0}
.dialog-illustration{background:#E5F9ED;color:#0C7955}
:focus-visible{outline-color:#169E6E}
/* iOS Safari: cualquier campo editable con texto <16px provoca zoom al enfocarlo.
   No se usa user-scalable=no ni maximum-scale=1: se conserva accesibilidad. */
input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px}
@media(max-width:700px){
  
  .nav-inner{min-height:68px;height:auto;padding-block:8px}
  .language-control{min-height:44px;padding:6px 8px}
  .language-control select{font-size:16px}
  .nav-status{min-height:44px;min-width:44px;justify-content:center}
  .hero{padding-top:30px}
  .hero-grid{gap:28px}
  .hero-copy h1{font-size:clamp(34px,9vw,45px);line-height:1.08;letter-spacing:-.052em;margin:16px 0}
  .hero-description{font-size:15px;line-height:1.65;margin-bottom:17px}
  .hero-highlights{gap:8px;margin-bottom:16px}
  .hero-highlights>div{font-size:12px;gap:9px}
  
  
  .hero-small-link{margin-top:12px}
  .form-shell{padding:23px 18px 22px;border-radius:20px}
  .form-heading{margin-bottom:22px}
  .form-heading h2{font-size:23px}
  .form-heading p,.step-title p{font-size:13px}
  .step-panel{padding-top:22px}
  .step-title h3{font-size:20px}
  .field{gap:7px}
  .field>span{font-size:13px}
  .field input,.field select,.field textarea{font-size:16px;min-height:52px;border-radius:11px;padding-inline:14px}
  .field textarea{padding-block:14px}
  .field small{font-size:12px}
  .inline-help{font-size:12px;padding:11px 12px}
  .primary-button,.back-button{min-height:52px;font-size:14px}
  .upload-area{min-height:220px;padding:25px 17px}
  .upload-area strong{font-size:14px}
  .upload-area>span:not(.upload-icon){font-size:12px}
  .upload-area small{font-size:11px}
  .check-line,.contract-text{font-size:12px}
  .form-footnote{font-size:11px}
  .section{padding:70px 0}
  .faq-list summary{font-size:14px;padding-block:19px}
  .faq-list details p{font-size:13px}
  .how-card p,.service-item p{font-size:13px}
  .status-form-panel .field input{font-size:16px}
  .feedback-dialog{padding:27px 22px}
}
@media(max-width:370px){
  .hero-copy h1{font-size:34px}
  .form-shell{padding:20px 14px}
  .amount-cols{grid-template-columns:minmax(0,1fr) 100px}
  .payment-card strong{font-size:19px}
}

/* Corrección puntual: nombres de archivos largos sin desbordamiento horizontal. */
.form-shell,.step-panel{min-width:0}
.file-list{width:100%;max-width:100%;min-width:0;grid-template-columns:minmax(0,1fr)}
.file-item{min-width:0;max-width:100%}
.file-meta{flex:1 1 0%;min-width:0;overflow:hidden}
.file-meta b{display:block;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.file-remove{flex:0 0 auto}
