:root { color-scheme: light; }
* { box-sizing: border-box; }
html { background: #eef6f8; scroll-behavior: smooth; }
body { margin: 0; min-width: 320px; font-family: Arial, Helvetica, sans-serif; color: #003b70; }
button, input, textarea { font: inherit; }
button { cursor: pointer; }
.cover { position: relative; width: 100%; line-height: 0; }
.cover > img { display: block; width: 100%; height: auto; }
.cover-mobile { display: none; }
.hero-hit, .equipment-hit, .ficha-action { position: absolute; border: 0; background: transparent; padding: 0; }
.hero-hit:focus-visible, .equipment-hit:focus-visible, .ficha-action:focus-visible { outline: 4px solid #007dc5; outline-offset: 2px; background: rgb(255 255 255 / .15); }
.hero-hit { left: 50%; top: 19.5%; width: 14.5%; height: 7%; border-radius: 99px; }
.equipment-map { position: absolute; inset: 0; }
.equipment-hit { width: 30.8%; height: 15.2%; border-radius: 1.4%; }
.r1c1, .r2c1, .r3c1 { left: 2.1%; }
.r1c2, .r2c2, .r3c2 { left: 34.6%; }
.r1c3, .r2c3, .r3c3 { left: 67.1%; }
.r1c1, .r1c2, .r1c3 { top: 42.8%; }
.r2c1, .r2c2, .r2c3 { top: 60.4%; }
.r3c1, .r3c2, .r3c3 { top: 77.9%; }
.sheet-dialog { width: min(94vw, 860px); max-height: 96dvh; padding: 0; border: 0; background: transparent; overflow: visible; }
.sheet-dialog::backdrop { background: rgb(0 32 63 / .76); backdrop-filter: blur(3px); }
.dialog-panel { position: relative; background: #fff; border-radius: 8px; box-shadow: 0 18px 60px rgb(0 20 45 / .35); }
.ficha-panel { width: min(100%, 580px); margin: auto; }
.ficha { position: relative; line-height: 0; }
.ficha > img { width: 100%; height: auto; display: block; }
.dialog-close { position: absolute; z-index: 4; top: 10px; right: 10px; width: 38px; height: 38px; border: 0; border-radius: 50%; background: #fff; color: #005c9c; font-size: 29px; line-height: 1; box-shadow: 0 2px 9px rgb(0 0 0 / .2); }
.ficha-action { top: 92.3%; height: 3.1%; border-radius: 999px; }
.quote-action { left: 18.3%; width: 27.2%; }
.info-action { left: 57.4%; width: 28.5%; }
.fxtq-correction { display: none; position: absolute; right: 6.7%; top: 12%; padding: .25% 1.3%; background: #fff; color: #0080c8; font-size: clamp(9px, 1.2vw, 17px); font-weight: 700; line-height: 1.1; }
.fxtq-correction.visible { display: block; }
.quote-panel { width: min(94vw, 520px); padding: 38px 30px 28px; color: #063d6d; }
.quote-panel h1 { margin: 0 0 6px; font-size: clamp(1.65rem, 5vw, 2.25rem); color: #006fb9; }
.quote-panel label { display: block; margin-top: 13px; font-size: .9rem; font-weight: 700; line-height: 1.4; }
.quote-panel input, .quote-panel textarea { display: block; width: 100%; margin-top: 5px; padding: 11px; border: 1px solid #9bc4dd; border-radius: 4px; color: #173a57; background: #fff; }
.quote-panel textarea { resize: vertical; }
.kicker { margin: 0 0 3px; font-size: .82rem; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: #007cc2; }
.product-label { margin: 0 0 11px; font-weight: 700; }
.submit-quote { width: 100%; margin-top: 20px; border: 0; border-radius: 4px; padding: 13px 16px; background: #007dc5; color: #fff; font-weight: 700; }
.privacy-note { margin: 13px 0 0; font-size: .77rem; line-height: 1.4; color: #4e6679; }
.privacy-note a, .response a { color: #006fb9; font-weight: 700; }
.quote-brand { position: absolute; top: 17px; right: 58px; width: 132px; height: auto; }
.whatsapp-button { position: fixed; z-index: 20; right: clamp(16px, 3vw, 32px); bottom: clamp(16px, 3vw, 32px); display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 12px 19px; border-radius: 999px; background: #25d366; box-shadow: 0 7px 20px rgb(0 58 30 / .28); color: #07351c; font-size: .9rem; font-weight: 700; line-height: 1; text-decoration: none; }
.whatsapp-button:hover, .whatsapp-button:focus-visible { background: #1ebe5d; color: #fff; }
.whatsapp-button:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; }
.response { width: min(92vw, 720px); margin: 9vh auto; padding: 36px; border-radius: 8px; background: #fff; box-shadow: 0 12px 40px rgb(0 50 90 / .14); line-height: 1.55; color: #214860; }
.response h1 { margin: 0 0 12px; color: #006fb9; font-size: clamp(2rem, 6vw, 3.4rem); line-height: 1; }
.response > img { width: 110px; height: auto; float: right; }
.response > img.response-brand { width: 175px; }
.privacy { margin-top: 5vh; }
@media (max-width: 700px) {
  .cover-desktop { display: none; }
  .cover-mobile { display: block; }
  .hero-hit { left: 15%; top: 31%; width: 70%; height: 4%; }
  .equipment-hit { width: 44.5%; height: 9.9%; border-radius: 1.5%; }
  .m1c1, .m2c1, .m3c1, .m4c1 { left: 4%; }
  .m1c2, .m2c2, .m3c2, .m4c2 { left: 51.5%; }
  .m1c1, .m1c2 { top: 41.5%; }
  .m2c1, .m2c2 { top: 52.6%; }
  .m3c1, .m3c2 { top: 63.7%; }
  .m4c1, .m4c2 { top: 74.7%; }
  .m5 { left: 27%; top: 85.7%; width: 46%; height: 9.9%; }
  .sheet-dialog { width: 98vw; }
  .quote-panel { padding: 38px 22px 24px; }
  .quote-brand { top: 15px; right: 55px; width: 112px; }
  .whatsapp-button { min-height: 45px; padding-inline: 17px; }
}
