/* Digitalhjälp Hemma — premium booking confirmation V9.
   Scoped to the successful booking state; no homepage or booking logic changes. */
.booking-layout.booking-layout-received { display:block; width:100%; max-width:790px; margin:0 auto; }
.booking-layout-received > .booking-panel { padding:clamp(28px,5vw,58px) clamp(22px,6vw,70px); border:1px solid #dfebf1; border-radius:26px; background:#fff; box-shadow:0 20px 58px rgba(20,60,88,.055); }
.booking-layout-received .booking-received,
.booking-layout-received .booking-received:focus,
.booking-layout-received .booking-received:focus-visible { box-sizing:border-box; width:100%; max-width:650px; margin:0 auto; padding:8px 0 4px; border:0!important; outline:0!important; box-shadow:none!important; text-align:center; color:#143c58; }
.booking-layout-received .booking-received-icon { width:76px; height:76px; margin:0 auto 24px; display:grid; place-items:center; border-radius:50%; background:#eaf4f8; color:#17618b; font-size:36px; font-weight:600; line-height:1; }
.booking-layout-received .booking-received::before { content:'BOKNINGSFÖRFRÅGAN'; display:block; margin:0 auto 13px; font-size:11px; font-weight:800; letter-spacing:.17em; color:#648da5; }
.booking-layout-received .booking-received h2 { max-width:600px; margin:0 auto 16px; font-size:clamp(26px,3vw,36px); font-weight:750; line-height:1.2; letter-spacing:-.025em; color:#143c58; }
.booking-layout-received .booking-received p { max-width:520px; margin:12px auto; font-size:15px; line-height:1.75; color:#59758a; }
.booking-layout-received .booking-received .booking-received-lead { margin-top:4px; font-size:17px; color:#385c73; }
.booking-layout-received .booking-received p strong { color:#143c58; font-weight:750; }
.booking-layout-received .booking-received-meta { box-sizing:border-box; width:100%; max-width:535px; margin:32px auto 16px; padding:9px 24px; background:#f1f7fa; border:1px solid #e3edf3; border-radius:16px; }
.booking-layout-received .booking-received-meta div { display:flex; justify-content:space-between; align-items:center; gap:14px; padding:15px 0; border-bottom:1px solid #dce8ee; text-align:left; }
.booking-layout-received .booking-received-meta div:last-child { border-bottom:0; }
.booking-layout-received .booking-received-meta span { font-size:13px; color:#5c788a; }
.booking-layout-received .booking-received-meta strong { font-size:13px; color:#143c58; font-weight:750; overflow-wrap:anywhere; word-break:break-word; text-align:right; }
.booking-layout-received .booking-received .booking-small { font-size:13px; color:#6a8394; }
.booking-layout-received .booking-received-home { box-sizing:border-box; display:inline-flex; justify-content:center; align-items:center; min-height:52px; margin:26px auto 0; padding:14px 25px; border-radius:12px; text-decoration:none; font-size:14px; font-weight:750; color:#fff; background:linear-gradient(180deg,#277da8,#145477); box-shadow:0 8px 20px rgba(20,60,88,.12); }
.booking-layout-received .booking-received-home:hover { background:#143c58; }
.booking-layout-received .booking-received-home:focus-visible { outline:3px solid #76b9df!important; outline-offset:4px; }
@media(max-width:600px){
 .booking-main:has(.booking-layout-received) { padding-left:16px; padding-right:16px; }
 .booking-layout-received > .booking-panel { padding:30px 20px; border-radius:20px; }
 .booking-layout-received .booking-received-meta { padding:7px 15px; }
 .booking-layout-received .booking-received-meta div { align-items:flex-start; flex-direction:column; gap:5px; }
 .booking-layout-received .booking-received-meta strong { text-align:left; }
 .booking-layout-received .booking-received-home { width:100%; }
}
