/* Booking process V6 — route-inspired editorial timeline, not generic feature cards. */
.sm-how#how{background:linear-gradient(180deg,#f1f6fc 0,#f9fbfd 100%);padding:100px 0 115px;position:relative;overflow:hidden}
.sm-how#how:before{content:"";position:absolute;inset:0;background:url('../../assets/dotted-world-routes.svg') center 38% / min(1180px,110vw) auto no-repeat;opacity:.055;pointer-events:none}
.sm-how#how>.container{position:relative;z-index:1;max-width:1360px}
.sm-how#how .sm-section-header{margin-bottom:72px}.sm-how#how .sm-section-header h2{font:800 clamp(37px,4.2vw,58px)/1.17 'Manrope',sans-serif;letter-spacing:-.06em}.sm-how#how .sm-section-header p{max-width:580px;font-size:14px;color:#62788e}
.sm-how#how .sm-steps-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;position:relative}
.sm-how#how .sm-steps-grid:before{content:"";position:absolute;left:9%;right:9%;top:27px;border-top:2px dashed rgba(244,123,32,.45);z-index:0}
.sm-how#how .sm-step{position:relative;z-index:1;padding:63px 24px 25px;min-height:245px;border:1px solid #e1eaf4;border-radius:16px;background:#fff;box-shadow:0 15px 40px rgba(17,47,80,.035);text-align:left;transition:transform .24s,box-shadow .24s}
.sm-how#how .sm-step:hover{transform:translateY(-5px);box-shadow:0 20px 45px rgba(17,47,80,.09)}
.sm-how#how .sm-step-number{position:absolute;left:23px;top:-29px;display:grid;place-items:center;border-radius:100%;height:58px;width:58px;background:#0d2146;color:#fff;font:800 17px 'Manrope',sans-serif;border:4px solid #f47b20;box-shadow:0 0 0 7px #f7fafc;margin:0}
.sm-how#how .sm-step h3{font:800 17px/1.4 'Manrope',sans-serif;letter-spacing:-.045em;color:#102c4d;margin:3px 0 13px}
.sm-how#how .sm-step p{font-size:13px;line-height:1.9;color:#688097;max-width:265px;margin:0}
.sm-how#how .sm-step:nth-child(1){border-top:3px solid #f47b20}
@media(max-width:900px){.sm-how#how .sm-steps-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:47px 17px}.sm-how#how .sm-steps-grid:before{display:none}.sm-how#how .sm-section-header{margin-bottom:70px}}
@media(max-width:540px){.sm-how#how{padding:74px 0 70px}.sm-how#how .sm-steps-grid{grid-template-columns:1fr;gap:45px}.sm-how#how .sm-step{min-height:170px;padding:43px 23px 20px}.sm-how#how .sm-section-header h2{font-size:37px}.sm-how#how .sm-step-number{width:51px;height:51px;top:-25px}}
