.quote-page { background:var(--em-ivory); }
.quote-page > .em-container > article > .entry-content { max-width:800px; margin-bottom:36px; }
.qr-layout { display:grid; grid-template-columns:minmax(250px,.8fr) minmax(0,1.7fr); gap:32px; align-items:start; }
.qr-panel { padding:30px; background:var(--em-navy); color:var(--em-soft-blue); border-radius:18px; }
.qr-panel h2 { color:var(--em-white); font-size:1.85rem; margin-top:26px; }
.qr-panel p { color:var(--em-soft-blue); }
.qr-logo { background:var(--em-ivory); padding:14px; border-radius:12px; width:fit-content; }
.qr-benefits { list-style:none; padding:0; margin:26px 0; display:grid; gap:12px; }
.qr-benefits li { display:flex; align-items:center; gap:10px; }
.qr-benefits .em-icon { color:var(--em-sky); width:20px; }
.qr-contact { border-top:1px solid var(--em-sky); padding-top:22px; display:grid; gap:16px; }
.qr-contact a { color:var(--em-white); display:flex; align-items:center; gap:10px; overflow-wrap:anywhere; font-size:.9rem; text-decoration:none; }
.qr-contact .em-icon { color:var(--em-sky); }
.qr-card { background:var(--em-white); padding:36px; border:1px solid var(--em-border); border-radius:18px; box-shadow:0 15px 40px rgb(16 36 63 / 6%); min-width:0; }
.qr-card h2 { font-size:clamp(1.6rem,2.5vw,2.2rem); }
.qr-required-note,.qr-privacy { color:var(--em-muted); font-size:.82rem; }
#qr-form fieldset { border:0; border-top:1px solid var(--em-border); margin:28px 0 0; padding:24px 0 0; min-width:0; }
#qr-form legend { padding:0 12px 0 0; font-size:1.08rem; font-weight:700; color:var(--em-navy); }
#qr-form legend > span { color:var(--em-maroon); margin-right:8px; font-size:.83rem; }
.qr-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.qr-field { display:flex; flex-direction:column; gap:8px; min-width:0; }
.qr-field label { color:var(--em-navy); font-size:.88rem; font-weight:650; }
.qr-field input,.qr-field select,.qr-field textarea { width:100%; min-width:0; max-width:100%; min-height:48px; padding:12px; border:1px solid var(--em-border); border-radius:8px; background:var(--em-white); color:var(--em-text); font:inherit; font-size:16px; box-sizing:border-box; }
.qr-field textarea { resize:vertical; }
#qr-form input:focus-visible,#qr-form select:focus-visible,#qr-form textarea:focus-visible { outline:2px solid var(--em-maroon); outline-offset:2px; }
.qr-tiles { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.qr-service-tiles { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.qr-tile { display:flex; align-items:center; gap:9px; padding:13px 11px; border:1px solid var(--em-border); border-radius:9px; min-height:48px; cursor:pointer; font-size:.86rem; color:var(--em-navy); background:var(--em-ivory); }
.qr-tile input { width:17px; height:17px; flex-shrink:0; accent-color:var(--em-maroon); }
.qr-tile:has(input:checked) { border-color:var(--em-maroon); background:var(--em-soft-blue); box-shadow:inset 0 0 0 1px var(--em-maroon); }
.qr-storage { background:var(--em-soft-blue); border-radius:10px; padding:18px; margin-top:20px; }
.qr-storage[hidden] { display:none; }
.qr-upload { padding:20px; margin-top:22px; border:1px dashed var(--em-sky); border-radius:10px; background:var(--em-ivory); }
.qr-upload p { font-size:.82rem; margin:0; }
.qr-upload input { padding:8px; font-size:.84rem; }
.qr-upload input::file-selector-button { border:1px solid var(--em-border); background:var(--em-white); color:var(--em-navy); padding:10px; margin-right:8px; border-radius:5px; }
.qr-submit { margin-top:28px; width:100%; cursor:pointer; }
.qr-submit:disabled { opacity:.7; cursor:wait; }
.qr-privacy { margin:14px 0 0; text-align:center; }
.qr-errors { padding:20px; border:1px solid var(--em-maroon); border-left:4px solid var(--em-maroon); border-radius:10px; background:var(--em-ivory); }
.qr-errors h3 { font-size:1.05rem; }
.qr-errors a,.qr-field-error { color:var(--em-maroon); }
.qr-field-error { font-size:.83rem; margin:0; }
.qr-honey { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
#qr-selection { color:var(--em-navy); font-size:.83rem; margin-bottom:0; }
#qr-form :is(input,select,textarea,button,fieldset) { scroll-margin-block:170px 110px; }
.qr-contact a[href*="wa.me"] .em-icon { color:var(--em-whatsapp); }
@media(max-width:900px) { .qr-layout { grid-template-columns:1fr; } .qr-panel { padding:26px; } .qr-benefits { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .qr-card { padding:24px 18px; } .qr-fields,.qr-service-tiles { grid-template-columns:1fr; } .qr-tiles { grid-template-columns:repeat(2,minmax(0,1fr)); } .qr-layout { gap:24px; } .qr-panel { padding:24px; } .quote-page { padding-bottom:110px; } }
@media(max-width:767px) { body:has(#qr-form:focus-within) .mobile-actions { visibility:hidden; pointer-events:none; } }
