@font-face{font-family:Manrope;src:url(Manrope.ttf) format('truetype');font-display:swap;font-weight:200 800}
:root{--ink:#123e49;--muted:#46616a;--navy:#062d38;--lime:#c3db55;--line:#d4dedc;color-scheme:light;font-family:Manrope,Arial,sans-serif;color:var(--ink);background:#f7f8f6;font-size:16px}
*{box-sizing:border-box}body{margin:0}html{scroll-padding-top:24px}a{color:inherit;text-underline-offset:4px}button,input,select,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #7c9922;outline-offset:4px}button{cursor:pointer}img{max-width:100%;height:auto}p{line-height:1.75}h1,h2,h3,p{margin-top:0}[hidden]{display:none!important}.container{width:min(1120px,calc(100% - 64px));margin-inline:auto}.skip{position:absolute;left:16px;top:-90px;z-index:10;background:#fff;padding:16px}.skip:focus{top:12px}
.site-header{background:var(--navy);color:#fff}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:92px;gap:24px}.brand{display:block;width:122px;flex:none}.brand img{display:block;mix-blend-mode:lighten}.header-contact{font-size:14px;text-decoration:none}.header-contact:hover{text-decoration:underline}
.quote-section{padding:64px 0 72px}.quote-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.3fr);gap:72px;align-items:start}.quote-intro{padding-top:22px}.kicker{font-size:14px;font-weight:650;color:#466950;margin-bottom:20px}.quote-intro h1{font-size:clamp(36px,4vw,49px);line-height:1.13;font-weight:650;letter-spacing:-1.8px;margin-bottom:26px}.quote-intro>p:not(.kicker){font-size:16px;color:var(--muted);max-width:34ch}.quote-intro .intro-note{font-size:14px!important;margin-top:30px}.direct-contact{margin-top:36px;padding-top:24px;border-top:1px solid var(--line);display:grid;gap:9px;font-size:14px}.direct-contact span{color:var(--muted)}.direct-contact a{font-weight:650;overflow-wrap:anywhere}.form-panel{min-width:0;background:#fff;border:1px solid var(--line);border-radius:10px;padding:32px}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 22px;min-height:54px;border-radius:6px;background:var(--navy);color:#fff;border:1px solid transparent;text-decoration:none;font-size:16px;line-height:1.5;font-weight:650}.button:hover{background:#154955}.button:disabled{cursor:not-allowed;opacity:.6}.button span[aria-hidden]{font-size:23px;line-height:1}
.form-required{font-size:13px;color:var(--muted);margin:0 0 26px}fieldset{border:0;padding:0;margin:0 0 30px;min-width:0}legend{font-size:20px;font-weight:700;letter-spacing:-.4px;margin:0 0 20px;padding:0;line-height:1.4}legend small{font-size:13px;font-weight:500;color:var(--muted);margin-left:8px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 18px}.field-grid label{display:block;font-size:14px;font-weight:650;line-height:1.6;min-width:0}.field-grid label>small{font-size:12px;font-weight:400;color:var(--muted);display:inline}.wide{grid-column:1/-1}.field-grid input,.field-grid select,.field-grid textarea{margin-top:7px;display:block;width:100%;min-width:0;min-height:50px;background:#fff;border:1px solid #9eb9ba;border-radius:7px;padding:12px;color:var(--ink);font-size:16px;font-weight:400}.field-grid input::placeholder,.field-grid textarea::placeholder{color:#647b80;opacity:1}.field-grid textarea{resize:vertical;min-height:110px}.amount-field{position:relative}.amount-field>span{position:absolute;top:13px;left:15px;color:#45616d}.amount-field input{padding-left:34px}.attachment-section{padding-top:26px;border-top:1px solid var(--line)}.attachment-section>p{font-size:13px;color:var(--muted);margin:0 0 16px}.file-control{display:block;font-size:14px;font-weight:650;border:1px dashed #7e9c92;border-radius:8px;padding:18px;background:#f7faf8}.file-control input{display:block;max-width:100%;width:100%;font-size:13px;margin-top:12px;color:var(--muted)}.file-control input::file-selector-button{padding:10px 12px;background:#e7f0e0;border:1px solid #a5bea3;color:var(--ink);border-radius:5px;margin-right:10px;cursor:pointer;font:inherit;font-weight:600}.file-list{list-style:none;margin:12px 0 0;padding:0}.file-list li{display:flex;align-items:center;gap:12px;justify-content:space-between;font-size:13px;padding:10px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.file-list button{background:#fff;border:0;color:#315d48;text-decoration:underline;min-height:44px;padding:8px}.field-error{color:#a22d20!important;font-size:14px!important;margin-top:10px!important}.field-error:empty{display:none}.consent{display:flex;gap:12px;align-items:flex-start;font-size:13px;line-height:1.65;cursor:pointer}.consent input{width:20px;height:20px;flex:none;margin:3px 0 0;accent-color:#1a644d}.submit-button{width:100%;margin-top:25px;background:#0f514d;color:#fff;font-size:15px}.submit-button:hover{background:#0b403d}.form-note{font-size:12px;color:var(--muted);margin:14px 0 0;line-height:1.6}.form-status{padding:15px;border:1px solid #cda998;border-radius:7px;background:#fff4ef;font-size:14px;color:#793623;margin-top:20px;line-height:1.6}.form-status[data-kind=info]{border-color:#adc8c4;background:#eff7f5;color:var(--ink)}.trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.form-success{padding:28px 0}.success-mark{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--lime);color:var(--navy);font-size:34px;margin-bottom:26px}.form-success h2{font-size:36px}.form-success p{color:var(--muted)}#success-reference{font-weight:750;color:var(--ink)}
.file-control{border-style:solid;background:#f8faf8}.site-footer{border-top:1px solid var(--line);background:#fff}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-block:26px;font-size:12px;color:var(--muted)}.footer-inner p{margin:0}.footer-inner p span{margin-left:14px}.footer-inner a{min-height:44px;display:flex;align-items:center}.legal{max-width:760px;padding-block:60px}.legal h1{font-size:38px;line-height:1.2;letter-spacing:-1px}.legal h2{font-size:22px;margin-top:32px}.legal p{color:var(--muted)}
@media(max-width:980px){.quote-grid{gap:36px;grid-template-columns:minmax(0,.75fr) minmax(0,1.3fr)}.form-panel{padding:26px}.field-grid{grid-template-columns:1fr}.wide{grid-column:auto}}
@media(max-width:760px){.container{width:calc(100% - 36px)}.header-inner{min-height:82px;gap:16px}.brand{width:106px}.header-contact{font-size:12px;overflow-wrap:anywhere}.quote-section{padding:32px 0 40px}.quote-grid{grid-template-columns:1fr;gap:26px}.quote-intro{padding:0}.quote-intro h1{font-size:38px;letter-spacing:-1.4px;margin-bottom:16px}.quote-intro h1 br{display:none}.quote-intro>p:not(.kicker){max-width:none}.kicker{margin-bottom:12px}.quote-intro .intro-note{margin:16px 0 0}.direct-contact{display:none}.form-panel{padding:24px 20px}.field-grid{grid-template-columns:1fr 1fr}.wide{grid-column:1/-1}.footer-inner{align-items:flex-start;flex-direction:column;gap:8px;padding-block:20px}.footer-inner p span{display:block;margin:4px 0 0}}
@media(max-width:480px){.field-grid{grid-template-columns:1fr;gap:18px}.wide{grid-column:auto}.form-panel{padding:24px 16px}.submit-button{gap:12px;font-size:14px}legend{font-size:18px}legend small{display:block;margin:4px 0 0}.form-success h2{font-size:28px}}

/* Fondo solar integrado. El formulario conserva una superficie de lectura blanca. */
.site-header{background:#062d38}.header-inner{min-height:96px}.brand{width:136px}.header-contact{border:1px solid #ffffff40;border-radius:6px;padding:12px 18px;min-height:44px;color:#ecf3ef}
.quote-section{background:linear-gradient(100deg,rgba(5,35,44,.93) 0%,rgba(5,35,44,.80) 38%,rgba(5,35,44,.32) 100%),url('fondo-solar.webp') center center/cover no-repeat;padding:56px 0 64px}.quote-grid{width:min(1200px,calc(100% - 80px));grid-template-columns:minmax(0,1fr) minmax(0,1.18fr);gap:76px;align-items:start}.quote-intro{padding:48px 0 0;position:sticky;top:36px;color:#fff}.quote-intro h1{font-size:clamp(42px,4.5vw,62px);font-weight:650;line-height:1.08;letter-spacing:-2px;margin-bottom:28px}.quote-intro>p:not(.kicker){font-size:17px;color:#e2eae8;max-width:34ch}.quote-intro .intro-note{max-width:37ch;color:#cbdad7;font-size:14px!important;margin-top:32px}.direct-contact{border-color:#ffffff30;margin-top:38px;padding-top:24px;max-width:35ch}.direct-contact span{color:#cbdad7}.direct-contact a{color:#fff;font-size:16px}
.form-panel{border:1px solid #ffffff;border-radius:12px;padding:32px;box-shadow:0 18px 60px #031b2426}.form-heading{padding-bottom:22px;margin-bottom:20px;border-bottom:1px solid var(--line)}.form-heading h2{font-size:25px;line-height:1.25;letter-spacing:-.7px;margin:0 0 8px}.form-heading p{font-size:14px;color:var(--muted);margin:0}.form-required{font-size:12px;margin-bottom:20px}legend{font-size:16px;letter-spacing:-.2px;margin-bottom:14px}fieldset{margin-bottom:24px}.field-grid{gap:16px}.field-grid label{font-size:13px}.field-grid input,.field-grid select,.field-grid textarea{border-color:#b8cdcc;background:#fcfdfc;min-height:48px;padding:11px 12px}.field-grid input:focus,.field-grid select:focus,.field-grid textarea:focus{background:#fff}.amount-field input{padding-left:34px}
.project-details{border-top:1px solid var(--line);margin-top:4px;padding-top:4px}.project-details summary,.attachment-section summary{cursor:pointer;min-height:48px;padding:13px 0;line-height:1.6;font-size:13px;font-weight:650}.project-details summary span,.attachment-section summary span{font-size:11px;font-weight:400;margin-left:8px;color:var(--muted)}summary:focus-visible{outline:3px solid #7c9922;outline-offset:3px}.project-details[open]>.field-grid{padding-block:12px 4px}.attachment-section{border-top:1px solid var(--line);padding:0;margin:0 0 20px}.attachment-section>p{padding-top:8px}.attachment-section[open]{padding-bottom:14px}.file-control{font-size:13px}.consent{font-size:12px}.submit-button{background:#c3db55;color:#173d39;font-weight:750;margin-top:22px}.submit-button:hover{background:#d2e675}.submit-button:disabled{background:#e4e9db;color:#566655;opacity:1}.form-note{font-size:11px}.site-footer{background:#062d38;border-color:#ffffff18;color:#cbdad7}.footer-inner{color:inherit;padding-block:22px}.footer-inner p{color:#cbdad7}
@media(min-width:981px){.field-grid{grid-template-columns:1fr 1fr}.wide{grid-column:1/-1}}
@media(max-width:980px){.quote-grid{gap:32px;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);width:calc(100% - 48px)}.quote-intro h1{font-size:43px}.quote-intro{padding-top:32px}.form-panel{padding:26px}.field-grid{grid-template-columns:1fr}.wide{grid-column:auto}}
@media(max-width:760px){.header-inner{min-height:82px}.brand{width:112px}.header-contact{font-size:11px;padding:10px 12px}.quote-section{padding:32px 0 36px;background:linear-gradient(180deg,rgba(5,35,44,.88),rgba(5,35,44,.70)),url('fondo-solar.webp') 35% top/auto 100% no-repeat}.quote-grid{width:calc(100% - 32px);grid-template-columns:1fr;gap:28px}.quote-intro{position:static;padding:6px 6px 0}.quote-intro h1{font-size:42px;letter-spacing:-1.5px;max-width:15ch;margin-bottom:18px}.quote-intro h1 br{display:none}.quote-intro>p:not(.kicker){font-size:15px;max-width:44ch}.quote-intro .intro-note{font-size:13px!important;max-width:50ch;margin-top:18px}.form-panel{padding:26px 22px}.form-heading h2{font-size:23px}.field-grid{grid-template-columns:1fr 1fr}.wide{grid-column:1/-1}.footer-inner{padding-block:18px}}
@media(max-width:480px){.field-grid{grid-template-columns:1fr}.wide{grid-column:auto}.form-panel{padding:24px 18px}.quote-intro h1{font-size:38px}.header-contact{padding:10px 8px;font-size:10px}.project-details summary span,.attachment-section summary span{margin-left:4px}.form-heading h2{font-size:22px}}
