/* Förfrågan "Berätta vad du behöver" – fristående (produktsidan + kundservice). Prefix bkr-. */
.bkr-modal, .bkr-card { --bkr-k:#232323; --bkr-line:#b8bca8; --bkr-muted:#666; --bkr-green:#0f9d58; --bkr-beige:#F2F1EC; color:var(--bkr-k); box-sizing:border-box; }
.bkr-modal *, .bkr-card * { box-sizing:border-box; }

/* Kort på Kontakta oss – samma höjd/padding som .service-card, men vit med svart ram */
.bkr-card { display:flex; gap:20px; align-items:center; background:#fff; border:2px solid var(--bkr-k); border-radius:12px; padding:30px 25px; height:100%; }
.bkr-card__icon { flex:0 0 96px; width:96px; height:96px; border-radius:50%; background:var(--bkr-k); color:#fff; display:flex; align-items:center; justify-content:center; }
.bkr-card__kicker { font-size:14px; font-weight:700; letter-spacing:1px; text-transform:uppercase; margin:0 0 6px; color:var(--bkr-k); }
.bkr-card__title { font-size:1.55rem; line-height:1.2; font-weight:700; margin:0 0 14px; color:var(--bkr-k); }
.bkr-card__btn { display:inline-flex; align-items:center; gap:8px; border:1.5px solid var(--bkr-k); background:#fff; color:var(--bkr-k); border-radius:30px; padding:11px 22px; font:inherit; font-weight:700; font-size:16px; cursor:pointer; }
.bkr-card__btn:hover { background:var(--bkr-k); color:#fff; }

/* Kontakta oss-raden med tre kort: lika höga, mindre e-postrubrik så den får plats i en tredjedel */
.bkr-contact-row .service-card { height:100%; }
.bkr-contact-row .service-card .content h2.orange { font-size:1.5rem; word-break:break-word; overflow-wrap:anywhere; }
.bkr-contact-row .service-card .content h4.black { font-size:1rem; letter-spacing:.5px; }
@media (min-width:768px) and (max-width:1199px) { .bkr-contact-row .service-card .content h2.orange { font-size:1.2rem; } .bkr-card__title { font-size:1.25rem; } }

/* Modal */
.bkr-modal { position:fixed; inset:0; z-index:100000; background:rgba(0,0,0,.45); display:flex; align-items:center; justify-content:center; padding:16px; }
.bkr-modal[hidden] { display:none; }
.bkr-modal__box { position:relative; background:#fff; border-radius:16px; border:2px solid #e3e3e3; padding:30px 32px 26px; max-width:900px; width:100%; max-height:calc(100vh - 32px); max-height:calc(100dvh - 32px); overflow-y:auto; -webkit-overflow-scrolling:touch; }
.bkr-modal__close { position:absolute; top:8px; right:12px; border:0; background:transparent; font-size:26px; line-height:1; cursor:pointer; color:#666; font-family:inherit; }
.bkr-title { font-family:Georgia, "Times New Roman", serif; font-size:32px; font-weight:700; margin:0 0 8px; line-height:1.15; text-transform:none; color:var(--bkr-k); }
.bkr-lead { font-size:16px; color:#333; margin:0 0 18px; line-height:1.5; }
.bkr-lbl { font-size:14px; color:var(--bkr-muted); margin:0 0 8px; }
.bkr-pills { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:18px; }
.bkr-pill { position:relative; display:inline-flex; align-items:center; border:1.5px solid var(--bkr-line); border-radius:30px; padding:9px 18px; font-size:15px; cursor:pointer; background:#fff; margin:0; font-weight:400; }
.bkr-pill input { position:absolute; opacity:0; pointer-events:none; }
.bkr-pill.on { border:2px solid var(--bkr-k); font-weight:700; }
.bkr-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-bottom:14px; }
.bkr-field { display:block; border:1.5px solid var(--bkr-line); border-radius:10px; padding:10px 14px 8px; background:#fff; margin:0; font-weight:400; }
.bkr-field:focus-within { border-color:var(--bkr-k); box-shadow:0 0 0 2px rgba(35,35,35,.08); }
.bkr-field span { display:block; font-size:14px; color:var(--bkr-muted); margin-bottom:2px; }
.bkr-field input, .bkr-field textarea { width:100%; border:0; padding:0; margin:0; background:transparent; font:inherit; font-size:17px; color:var(--bkr-k); outline:0; resize:vertical; box-shadow:none; border-radius:0; }
.bkr-field input::placeholder, .bkr-field textarea::placeholder { color:#444; opacity:.8; }
.bkr-field--area { margin-bottom:18px; } .bkr-field--area textarea { min-height:120px; }
.bkr-err { color:#b91c1c; font-size:14px; margin:0 0 10px; font-weight:700; } .bkr-err[hidden] { display:none; }
.bkr-actions { display:flex; justify-content:flex-end; }
.bkr-submit { display:inline-flex; align-items:center; justify-content:center; background:var(--bkr-green); color:#fff; border:2px solid var(--bkr-green); border-radius:10px; padding:14px 26px; font:inherit; font-weight:700; font-size:16px; cursor:pointer; }
.bkr-submit:hover { background:#0c7d46; border-color:#0c7d46; color:#fff; }
.bkr-submit[disabled] { opacity:.6; cursor:wait; }
.bkr-submit .m { display:none; }
.bkr-done .bkr-title--done { display:flex; gap:10px; align-items:center; font-family:inherit; font-size:22px; }
.bkr-done .ok { display:inline-flex; width:32px; height:32px; border-radius:50%; background:var(--bkr-green); color:#fff; align-items:center; justify-content:center; font-size:18px; flex:0 0 32px; }
.bkr-done p { font-size:15px; margin:0 0 14px; }
.bkr-ghost { display:inline-flex; align-items:center; justify-content:center; background:#fff; color:var(--bkr-k); border:2px solid var(--bkr-k); border-radius:10px; padding:11px 18px; font:inherit; font-weight:700; font-size:16px; cursor:pointer; width:100%; }
.bkr-ghost:hover { background:var(--bkr-k); color:#fff; }
.bkr-form[hidden], .bkr-done[hidden] { display:none; }

@media (max-width:767px) {
  .bkr-card { gap:14px; padding:22px 18px; margin-bottom:25px; }
  .bkr-card__icon { flex-basis:64px; width:64px; height:64px; } .bkr-card__icon svg { width:24px; height:24px; }
  .bkr-card__title { font-size:1.25rem; }
  /* bottenark: egen scroll, hela bredden */
  .bkr-modal { padding:0; align-items:flex-end; }
  .bkr-modal__box { max-width:none; max-height:94vh; max-height:94dvh; border:0; border-radius:18px 18px 0 0; padding:18px 16px calc(18px + env(safe-area-inset-bottom)); box-shadow:0 -8px 30px rgba(0,0,0,.2); }
  .bkr-title { font-size:24px; padding-right:34px; margin-bottom:6px; }
  .bkr-modal__close { top:10px; right:10px; width:36px; height:36px; border-radius:50%; background:var(--bkr-beige); font-size:22px; }
  .bkr-lead { font-size:15px; margin-bottom:12px; }
  .bkr-lbl { margin-bottom:6px; }
  .bkr-pills { gap:8px; margin-bottom:12px; } .bkr-pill { padding:8px 13px; font-size:14px; }
  .bkr-row { grid-template-columns:1fr; gap:10px; margin-bottom:10px; }
  .bkr-field { padding:8px 12px 7px; } .bkr-field span { font-size:13px; } .bkr-field input, .bkr-field textarea { font-size:16px; }
  .bkr-field--area { margin-bottom:12px; } .bkr-field--area textarea { min-height:88px; }
  .bkr-submit { width:100%; padding:14px 18px; }
  .bkr-submit .m { display:inline; } .bkr-submit .d { display:none; }
}
