.contact-page{background:#f6f9f6}.contact-intro{padding:clamp(34px,5vw,64px) 0 34px;background:linear-gradient(140deg,#f9fcfa,#e6f3e9)}.contact-intro h1{font-size:clamp(2.3rem,4.5vw,4.5rem);letter-spacing:-.045em;color:#10384d;margin:8px 0}.contact-intro p{max-width:680px}.contact-methods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;max-width:900px;margin-top:24px}.contact-methods a{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:0;min-height:50px;background:#fff;border:1px solid #cee3d8;border-radius:14px;padding:12px 16px;color:#0d594f;font-weight:700;text-align:center;text-decoration:none;box-shadow:0 5px 16px #1a5c4110;transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease}.contact-methods strong{color:inherit}.contact-methods a:hover{border-color:#9fc9ba;color:#084d43;box-shadow:0 7px 19px #1a5c4118;transform:translateY(-1px)}.contact-methods a:focus-visible{outline:3px solid #10384d;outline-offset:3px}.contact-methods .contact-email{background:#a51170;border-color:#a51170;color:#fff}.contact-methods .contact-email:hover{background:#8d0e60;border-color:#8d0e60;color:#fff}.contact-email svg{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.contact-section{padding:28px 0 70px}.contact-frame{background:#0a3145;border-radius:26px;padding:clamp(14px,2.4vw,28px);color:#fff;box-shadow:0 24px 55px #0a314530;overflow:hidden}.contact-frame-head{position:relative;isolation:isolate;padding:clamp(15px,2.5vw,30px) clamp(12px,2vw,25px) 32px;min-height:190px}.contact-frame-head:before{content:"";position:absolute;z-index:-1;inset:-30px -30px 0 auto;width:min(62%,750px);background:linear-gradient(90deg,#0a3145 0%,#0a3145aa 25%,transparent 70%),linear-gradient(0deg,#0a3145,transparent 42%),url('/assets/estimate-interior.webp') center right/cover no-repeat;opacity:.82;mask-image:linear-gradient(90deg,transparent,#000 28%);pointer-events:none}.contact-frame-head .eyebrow{color:#9be5cf;position:relative}.contact-frame-head h2{color:#fff;font-size:clamp(2rem,3.5vw,3.5rem);line-height:1.1;letter-spacing:-.04em;margin:7px 0 10px;position:relative}.contact-frame-head>p:last-child{color:#e3f1ee;max-width:640px;position:relative}.contact-inner{background:#fffdfa;color:#163c4a;border-radius:19px;padding:clamp(19px,3vw,38px)}.contact-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 24px}.contact-inner label,.contact-extras legend{font-weight:700;color:#1a4151}.contact-inner input:not([type=checkbox]),.contact-inner select,.contact-inner textarea{display:block;width:100%;min-width:0;margin-top:7px;padding:13px 14px;background:#fff;border:1px solid #b9d4ce;border-radius:10px;color:#183e4a;font:inherit}.contact-inner input:focus-visible,.contact-inner select:focus-visible,.contact-inner textarea:focus-visible,.contact-inner button:focus-visible{outline:3px solid #0b8a6b;outline-offset:2px}.contact-message-label{display:block;margin-top:23px}.contact-inner textarea{resize:vertical;min-height:130px}.contact-extras{border:1px solid #d6e7dd;border-radius:14px;margin:22px 0 0;padding:15px 20px;background:#f4faf5}.contact-extras legend{padding:0 5px}.contact-extras legend small{font-weight:500}.contact-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.contact-checks label{font-weight:500;display:flex;align-items:flex-start;gap:8px}.contact-checks input{accent-color:#0b8064;margin-top:5px}.contact-submit-row{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:24px}.contact-submit-row button{background:#c40080;border:0;color:#fff;display:inline-flex;align-items:center;gap:10px;min-width:205px;justify-content:center}.contact-submit-row button:disabled{opacity:.58;cursor:not-allowed}.contact-submit-row svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.contact-submit-row p{margin:0;color:#526b6b}.contact-submit-row p.error{color:#a3154a;font-weight:700}.contact-success{display:flex;gap:16px;align-items:flex-start;padding:22px;border:2px solid #eea6cc;background:#fff0f8;border-radius:15px;margin-bottom:20px}.contact-success>span{background:#c40080;color:#fff;border-radius:50%;font-size:22px;width:34px;height:34px;text-align:center;flex:none}.contact-success strong{color:#bd007a;font-size:clamp(1.25rem,2.4vw,1.85rem)}.contact-success p{margin:5px 0 0}.contact-privacy{font-size:.85rem;color:#556c73}.contact-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}@media(max-width:700px){.contact-intro{padding:32px 0 23px}.contact-methods{grid-template-columns:1fr}.contact-methods a{width:100%;min-height:52px}.contact-frame{padding:13px;border-radius:20px}.contact-frame-head{min-height:0;padding:18px 9px 25px}.contact-frame-head:before{display:none}.contact-fields,.contact-checks{grid-template-columns:1fr}.contact-inner{padding:18px}.contact-section{padding:20px 0 40px}}

/* FLOORPRO_CONTACT_BANNER_MOBILE_V1 */
/* Narrowly scoped spacing adjustment: does not affect the form or other pages. */
@media (max-width: 700px) {
  .contact-page .contact-frame-head {
    min-height: 0;
    padding: 12px 9px 14px;
  }
  .contact-page .contact-frame-head h2 {
    font-size: clamp(1.65rem, 5.5vw, 1.95rem);
    line-height: 1.16;
    margin: 4px 0 7px;
  }
  .contact-page .contact-frame-head > p:last-child {
    margin: 0;
    max-width: 45ch;
  }
}
