/* v9.8: white PVC window hero / color palette / sketch submission / map */
.hero .hero-visual{background-position:center 45%;background-size:cover}
.hero:before{background:linear-gradient(90deg,#f9fbfd 0%,rgba(249,251,253,.96) 27%,rgba(249,251,253,.76) 46%,rgba(249,251,253,.14) 77%)}
.rop-palette-section{background:#f5f7fa}.rop-palette{display:grid;grid-template-columns:minmax(265px,.85fr) minmax(0,1.35fr);gap:36px;align-items:start}
.rop-palette-copy h2{font-size:clamp(30px,3vw,43px);line-height:calc(1em + 8px);font-weight:600}.rop-palette-copy p{font-size:16px;line-height:24px}
.rop-palette-note{color:#586a78!important;font-size:14px!important;line-height:22px!important;margin:16px 0 25px}.rop-palette-demo{background:#fff;border:1px solid #dfe5ef;border-radius:10px;padding:20px;min-width:0}
.rop-window-drawing{max-width:580px;margin:0 auto 16px;background:linear-gradient(135deg,#edf3f7,#fff);border-radius:10px;overflow:hidden}.rop-window-drawing svg{display:block;width:100%;height:auto}
.rop-palette-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-bottom:18px}.rop-palette-tab{border:1px solid #dce4ec;background:#f7f9fb;border-radius:10px;padding:11px 8px;font-size:14px;font-weight:600;color:#344252;cursor:pointer}.rop-palette-tab.is-active{background:#e8f2ff;border-color:#086bd5;color:#086bd5}
.rop-palette-panel[hidden]{display:none}.rop-palette-swatches{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.rop-color-option{min-width:0;border:1px solid #dbe2e9;background:#fff;border-radius:10px;padding:8px 5px;font-size:12px;display:grid;justify-items:center;gap:5px;cursor:pointer;text-align:center;color:#333;font-weight:500;line-height:18px}.rop-color-option.is-active{outline:2px solid #086bd5;outline-offset:-2px}.rop-color-swatch{display:block;width:34px;height:34px;border-radius:50%;border:1px solid #bbc6cc}.rop-palette-selection{font-size:13px!important;line-height:21px!important;color:#526779!important;margin:18px 0 0}
.rop-palette-cta-icon.ui-icon{width:18px;height:18px}
.rop-sketch-section{background-image:linear-gradient(90deg,rgba(8,25,44,.93),rgba(8,25,44,.76)),var(--rop-sketch-photo);background-size:cover;background-position:center;padding:65px 0}.rop-sketch-inner{max-width:1050px;margin:auto;color:#fff}.rop-sketch-heading{text-align:center;max-width:740px;margin:0 auto 25px}.rop-sketch-heading h2{font-size:clamp(30px,3vw,42px);color:#fff;font-weight:600}.rop-sketch-heading p{color:#e6edf6!important;font-size:16px;line-height:24px}.rop-sketch-heading .eyebrow{color:#fff}
.rop-sketch-form{display:grid;grid-template-columns:1.15fr 1fr auto;gap:14px;align-items:stretch}.rop-sketch-file,.rop-sketch-phone{min-width:0;min-height:58px;display:flex;align-items:center;background:#fff;color:#333;border:1px solid #d9e4ef;border-radius:10px;padding:10px 18px;font-weight:500;cursor:pointer}.rop-sketch-file{position:relative}.rop-sketch-file input{position:absolute;inset:0;width:100%;opacity:0;cursor:pointer}.rop-sketch-file>span{display:flex;align-items:center;min-width:0;gap:11px}.rop-sketch-file [data-sketch-file-label]{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:290px}.rop-sketch-file:focus-within{outline:2px solid #7ab5ff}.rop-sketch-phone{padding:0}.rop-sketch-phone input{width:100%;height:100%;min-height:56px;border:0;background:transparent;padding:12px 16px;color:#333;outline:none}.rop-sketch-phone input:focus{outline:2px solid #7ab5ff;border-radius:10px}.rop-sketch-icon.ui-icon{width:20px;height:20px;flex:none;color:#0568c8}.rop-sketch-form .button{white-space:nowrap;min-width:205px}.rop-sketch-form .button .ui-icon{color:inherit}
.rop-sketch-agree{grid-column:1/-1;display:flex;gap:10px;align-items:flex-start;color:#fff;line-height:20px;font-size:12px}.rop-sketch-agree input{margin-top:4px;accent-color:#ffa500}.rop-sketch-agree span,.rop-sketch-agree a{color:#fff}.rop-sketch-agree a{text-decoration:underline;text-underline-offset:3px}.rop-sketch-caption{font-size:12px!important;line-height:20px!important;color:#c6d8e4!important;margin:8px 0 0}.rop-sketch-status{color:#fff!important;border:1px solid rgba(255,255,255,.4);border-radius:10px;padding:11px 14px;background:rgba(0,0,0,.15);margin-top:14px}
.rop-map-frame{width:100%;height:390px;border:0;border-radius:10px;display:block;background:#eef3fa}.contact-map-visual{min-height:390px;padding:0;background:none}.contact-map-visual:before{display:none}.rop-map-fallback{display:flex;align-items:center;justify-content:center;min-height:340px;background:#e9eef6;padding:20px;text-align:center}.rop-map-fallback a{text-decoration:underline;color:#0568c8}
@media(max-width:980px){.rop-palette{grid-template-columns:1fr}.rop-palette-copy{max-width:720px}.rop-sketch-form{grid-template-columns:1fr 1fr}.rop-sketch-form .button{grid-column:1/-1}}
@media(max-width:620px){.rop-palette-demo{padding:12px}.rop-palette-tabs{grid-template-columns:repeat(2,1fr)}.rop-palette-swatches{grid-template-columns:repeat(3,minmax(0,1fr))}.rop-sketch-form{grid-template-columns:1fr}.rop-sketch-form .button{grid-column:1}.rop-sketch-section{padding:50px 0}.rop-sketch-file [data-sketch-file-label]{max-width:225px}.rop-map-frame,.contact-map-visual{height:340px;min-height:340px}}
@media(prefers-reduced-motion:reduce){.rop-palette-tab,.rop-color-option{transition:none}}
/* Hide accessible label visually, retaining it for screen readers. */
.rop-sketch-phone{position:relative}
.rop-sketch-phone .screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
