/* OneFix 2.1: extend client-approved Sand Tours design without changing existing blocks. */
.stfo21-finder{background:#f7f3eb;padding:52px clamp(18px,4vw,55px);border-top:1px solid #e8ddc9;border-bottom:1px solid #e8ddc9}
.stfo21-inner{max-width:1180px;margin-inline:auto;width:100%}
.stfo21-heading{text-align:center;max-width:740px;margin:0 auto 25px}
.stfo21-eyebrow{display:block;font-family:Inter,Arial,sans-serif;font-size:11px;color:#a67b38;letter-spacing:1.7px;font-weight:800;margin-bottom:8px}
.stfo21-heading h2{font-family:'Playfair Display',Georgia,serif;font-size:clamp(30px,3.1vw,43px);color:#203c31;font-weight:700;line-height:1.15;letter-spacing:-.03em;margin:0 0 11px!important}
.stfo21-heading p{font-family:Inter,Arial,sans-serif;color:#708079;font-size:14px;line-height:1.7;margin:0}
.stfo21-form{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;background:#fff;padding:15px;border-radius:13px;box-shadow:0 12px 30px #1d2d2310;align-items:end;border:1px solid #e7dfd0}
.stfo21-form label{display:block;font-size:11px;color:#46594e;font-weight:800;text-transform:uppercase;letter-spacing:.4px}
.stfo21-form select{display:block;margin-top:6px!important;width:100%;min-width:0;min-height:45px;padding:10px 12px;border:1px solid #ddd9d0;border-radius:7px;background:#fff;color:#263c31;font:600 13px Inter,Arial,sans-serif}
.stfo21-form button,.stfo21-map-btn{display:inline-flex;justify-content:center;align-items:center;min-height:45px;border:0;border-radius:7px;padding:11px 24px;background:#bc8b43;color:#fff!important;font:800 13px Inter,Arial,sans-serif;text-decoration:none!important;cursor:pointer}
.stfo21-form button:hover,.stfo21-map-btn:hover{background:#a47431}
.stfo21-cities{display:flex;gap:9px;align-items:center;justify-content:center;flex-wrap:wrap;margin-top:19px;font-size:12px}
.stfo21-cities strong{color:#354f41;letter-spacing:.1px}
.stfo21-cities a{color:#806339!important;background:#fff;border:1px solid #e6d9c5;border-radius:24px;padding:7px 12px;text-decoration:none!important;font-weight:750;font-size:12px}
.stfo21-cities a:hover{border-color:#c7954d}
.stfo21-cities .stfo21-all{color:#fff!important;background:#2a4639;border-color:#2a4639}
.stfo21-contact-map{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(290px,1.2fr);align-items:stretch;gap:25px;background:#f8f4eb;border:1px solid #e7decf;border-radius:17px;padding:26px;margin:36px 0 45px}
.stfo21-contact-copy{padding:18px 6px 18px 14px}.stfo21-contact-copy span{font:800 11px Inter,Arial,sans-serif;letter-spacing:1.5px;color:#ac813f}.stfo21-contact-copy h2{font:700 clamp(24px,2.4vw,34px) 'Playfair Display',Georgia,serif;color:#253f34;line-height:1.2;margin:16px 0 12px}.stfo21-contact-copy address{font-style:normal;font-size:15px;font-weight:650;color:#354c40;margin-bottom:24px}.stfo21-contact-copy p{font-size:12px;color:#7c877d;line-height:1.65;margin-top:18px}
.stfo21-contact-map iframe{width:100%;height:335px;border:0;border-radius:13px;background:#e5e5e2}
.st-quote .st-quote-fields input,.st-quote .st-quote-fields select{min-width:0}
/* Floating WhatsApp button comes from the approved theme. Improve usability; never create a duplicate. */
body.st-theme .st-wa-floating{z-index:95!important;box-shadow:0 7px 24px #0003;font-size:13px}
body.st-theme .st-wa-floating:focus-visible,body.st-theme .st-mobile-fixed a:focus-visible{outline:3px solid #dba95c;outline-offset:3px}
@media(max-width:760px){.stfo21-form{grid-template-columns:1fr;gap:13px}.stfo21-form button{width:100%}.stfo21-contact-map{grid-template-columns:1fr;padding:17px}.stfo21-contact-map iframe{height:275px}.stfo21-contact-copy{padding:13px 8px}.stfo21-finder{padding:43px 18px}}
@media(max-width:440px){.stfo21-cities{justify-content:flex-start}.stfo21-heading{text-align:left}.stfo21-contact-copy h2{font-size:28px}html,body{max-width:100%;overflow-x:clip}}
