body.ocnmaster-theme .ocn-shared-roof-form .fp-offer{font-size:33px!important;font-weight:900;line-height:33.5px;text-align:center;height:67px}body.ocnmaster-theme .ocn-shared-roof-form .fp-form{margin-top:34px;background:white;color:#333;box-shadow:0 5px 25px #0004}body.ocnmaster-theme .ocn-shared-roof-form .fp-form-title{height:70px;display:flex;flex-direction:column;justify-content:center;text-align:center;background:var(--fp-red);color:white;font-size:18px!important;line-height:23px;font-weight:700}body.ocnmaster-theme .ocn-shared-roof-form .fp-form-title u{display:contents}body.ocnmaster-theme .ocn-shared-roof-form .fp-step{border:0;margin:0;padding:25px 36px 26px;min-width:0}body.ocnmaster-theme .ocn-shared-roof-form .fp-step>label{display:block;font-size:17px;font-weight:600;line-height:21px}body.ocnmaster-theme .ocn-shared-roof-form .fp-step select{display:block;width:100%;height:40px;border:1px solid #ccc4c4;background:#fcfcfc;border-radius:5px;margin-top:14px;padding:0 12px;color:#7a7979;font-size:16px;font-weight:600}body.ocnmaster-theme .ocn-shared-roof-form .fp-financing{border:0;padding:0;margin:20px 0 18px;min-width:0}body.ocnmaster-theme .ocn-shared-roof-form .fp-financing legend{padding:0;margin:0 0 8px;font-size:17px;font-weight:600;line-height:21px}body.ocnmaster-theme .ocn-shared-roof-form .fp-financing label{display:flex;align-items:center;gap:11px;min-height:45px;cursor:pointer}body.ocnmaster-theme .ocn-shared-roof-form .fp-financing input{appearance:auto;width:18px;height:18px;accent-color:#ff4f63;margin:0}body.ocnmaster-theme .ocn-shared-roof-form .fp-financing span{font-size:16px;font-weight:600;line-height:20px}body.ocnmaster-theme .ocn-shared-roof-form .fp-financing small{display:block;font-size:14px;color:#b2b0b2;line-height:18px}body.ocnmaster-theme .ocn-shared-roof-form .fp-button{display:block;width:100%;height:44px;border:1px solid #333;border-radius:5px;background:var(--fp-gold);color:#333;font-size:20px;font-weight:900;line-height:24px;cursor:pointer;padding:0}body.ocnmaster-theme .ocn-shared-roof-form .fp-step[data-fp-step='2'] input{display:block;width:100%;padding:8px;border:1px solid #ccc;border-radius:5px;font-size:16px;margin:5px 0 12px}body.ocnmaster-theme .ocn-shared-roof-form .fp-step[data-fp-step='2'] button[data-fp-back]{background:transparent;color:#333;border:0;text-decoration:underline;padding:0;margin-bottom:16px;cursor:pointer}body.ocnmaster-theme .ocn-shared-roof-form .fp-honeypot{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}body.ocnmaster-theme .ocn-shared-roof-form .fp-hero :focus-visible{outline:3px solid #e3c08c;outline-offset:4px}body.ocnmaster-theme .ocn-shared-roof-form .fp-form :focus-visible{outline-color:#9b6430}
body.ocnmaster-theme .ocn-shared-roof-form{--fp-red:linear-gradient(88.473deg,#ec4f42,#e22c58);--fp-gold:linear-gradient(79.171deg,#f8d7a7,#e3c08c 51%,#cfaa73);width:100%;max-width:355px;margin-inline:auto;color:#333;font:500 16px/1.4 'FP Gilroy',sans-serif}
body.ocnmaster-theme .ocn-shared-roof-form *{box-sizing:border-box}
body.ocnmaster-theme .ocn-shared-roof-form .fp-form{display:block!important;position:relative;height:auto!important;min-height:0!important;width:100%;padding:0;border:0;border-radius:0}
body.ocnmaster-theme .ocn-shared-roof-form .fp-offer{color:white!important;margin:0;line-height:1.05!important;font-size:33px!important;font-weight:900;height:auto;min-height:67px}
body.ocnmaster-theme .ocn-shared-roof-form .fp-form-title{margin:0;color:white!important;padding:0 12px;font-size:18px!important}
body.ocnmaster-theme .ocn-shared-roof-form .fp-step[hidden]{display:none!important}
body.ocnmaster-theme .ocn-shared-roof-form .fp-step{display:block;position:static;width:auto;height:auto;color:#333}
body.ocnmaster-theme .ocn-shared-roof-form .fp-form label,body.ocnmaster-theme .ocn-shared-roof-form .fp-form legend,body.ocnmaster-theme .ocn-shared-roof-form .fp-financing span{color:#333!important}
body.ocnmaster-theme .ocn-shared-roof-form .fp-form input,body.ocnmaster-theme .ocn-shared-roof-form .fp-form select{color:#333!important;position:static}
body.ocnmaster-theme .ocn-shared-roof-form .fp-button{margin:0;min-height:44px;text-transform:none;letter-spacing:0}
body.ocnmaster-theme .residential-hero__form-slot:has(.ocn-shared-roof-form){height:auto!important;min-height:0!important}
body.ocnmaster-theme .contact-form-card:has(.ocn-shared-roof-form){background:#343c50;padding:32px;border-radius:12px}
body.ocnmaster-theme .contact-form-card:has(.ocn-shared-roof-form)>h2,body.ocnmaster-theme .contact-form-card:has(.ocn-shared-roof-form)>.contact-form-card__required{display:none}
@media(max-width:800px){body.ocnmaster-theme .ocn-shared-roof-form .fp-offer{font-size:30px!important}body.ocnmaster-theme .ocn-shared-roof-form .fp-form{margin-top:24px}body.ocnmaster-theme .ocn-shared-roof-form .fp-step{padding-inline:26px}}
body.ocnmaster-theme :is(h1,h2,h3) mark,body.ocnmaster-theme [class*="title-highlight"],body.ocnmaster-theme .fp-hero h1>span,body.ocnmaster-theme .fp-section-heading h2>span{background:linear-gradient(88.473deg,#ec4f42,#e22c58)!important;color:#fff!important;box-decoration-break:clone;-webkit-box-decoration-break:clone}
@media(max-width:800px){body.ocnmaster-theme .residential-hero__form-slot:has(.ocn-shared-roof-form){display:block!important;position:static!important;width:100%!important;max-width:355px!important;margin:40px auto 0!important;transform:none!important;visibility:visible!important}}

/* Preserve the approved first-step composition with or without financing. */
/* Both hero steps share one grid cell: reserve their natural maximum height,
   including wrapped text, rather than moving the page on Next or Back. */
body.ocnmaster-theme .ocn-shared-roof-form.is-reference-hero .fp-step-stage{display:grid}
body.ocnmaster-theme .ocn-shared-roof-form.is-reference-hero .fp-step{grid-area:1/1;align-self:start;width:100%}
body.ocnmaster-theme .ocn-shared-roof-form.is-reference-hero .fp-step[hidden]{display:block!important;visibility:hidden;pointer-events:none}
body.ocnmaster-theme .is-reference-hero .fp-step[data-fp-step='2'] .fp-contact-heading{margin:0 0 14px 5px;font-size:17px;font-weight:600;line-height:21px}
body.ocnmaster-theme .is-reference-hero .fp-contact-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:11px}
body.ocnmaster-theme .is-reference-hero .fp-contact-pair label{min-width:0;margin:0}
body.ocnmaster-theme .is-reference-hero .fp-step[data-fp-step='2'] input{height:40px;margin:0;padding:8px 16px;border:1px solid #ccc4c4;background:#fcfcfc;font:500 16px/21px 'FP Gilroy',sans-serif}
body.ocnmaster-theme .is-reference-hero .fp-step[data-fp-step='2']>.fp-contact-email{margin:14px 0 0}
body.ocnmaster-theme .is-reference-hero .fp-step[data-fp-step='2']>.fp-contact-message{margin:14px 0 0;font-size:17px;font-weight:600;line-height:21px}
body.ocnmaster-theme .is-reference-hero .fp-contact-message textarea{display:block;position:static;width:100%;height:64px;min-height:64px;margin:14px 0 0;padding:5px 14px;border:1px solid #ccc4c4;border-radius:5px;background:#fcfcfc;color:#333;font:500 16px/21px 'FP Gilroy',sans-serif;resize:vertical}
body.ocnmaster-theme .is-reference-hero .fp-step[data-fp-step='2'] input::placeholder,body.ocnmaster-theme .is-reference-hero .fp-contact-message textarea::placeholder{color:#a5a5a5;opacity:1}
body.ocnmaster-theme .is-reference-hero .fp-contact-actions{display:grid;grid-template-columns:24px minmax(0,1fr);gap:11px;align-items:center;margin-top:25px}
body.ocnmaster-theme .is-reference-hero .fp-step[data-fp-step='2'] .fp-contact-actions button[data-fp-back]{display:flex;align-items:center;justify-content:center;width:24px;min-height:44px;padding:0;margin:0;text-decoration:none;color:#333}
body.ocnmaster-theme .is-reference-hero .fp-contact-actions .fp-button{height:42px;min-height:42px}
body.ocnmaster-theme .ocn-shared-roof-form .fp-step[data-fp-step='1']>label:first-of-type{margin-top:0!important}
body.ocnmaster-theme .ocn-shared-roof-form.without-financing .fp-step[data-fp-step='1']>.fp-button{margin-top:18px!important}
