/* C2G Booking Widget (Plan B) — kahytvalg. Alt scoped under .c2g-bw + .c2g-bw-lb (lightbox). */
.c2g-bw{
	--bw-navy:#18345b; --bw-navy2:#22558c; --bw-ink:#16202e; --bw-muted:#5d6b7e;
	--bw-faint:#8b98a8; --bw-line:#e4e9f0; --bw-bg:#f6f8fb; --bw-card:#fff;
	--bw-green:#1a7c3e; --bw-yellow:#b8791b; --bw-red:#b32d2e; --bw-sel:#eef4fb;
	--bw-gold:#c58a3a;
	font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
	color:var(--bw-ink); max-width:820px; margin:0 auto;
}
.c2g-bw *{box-sizing:border-box}

/* Header */
.c2g-bw-head{display:flex;gap:16px;align-items:center;margin-bottom:18px}
.c2g-bw-hero{width:120px;height:80px;border-radius:10px;overflow:hidden;flex:0 0 auto;background:var(--bw-bg)}
.c2g-bw-hero img{width:100%;height:100%;object-fit:cover;display:block}
.c2g-bw-eyebrow{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--bw-gold);font-weight:700}
.c2g-bw-title{font-size:22px;line-height:1.2;margin:.2em 0 0;color:var(--bw-navy);font-weight:700}

/* Controls */
.c2g-bw-field{display:flex;flex-direction:column;gap:6px}
.c2g-bw-lbl{font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--bw-faint);font-weight:600}

/* Afgangs-vælger: måneds-tabs + priste pills */
.c2g-bw-picker{display:flex;flex-direction:column;gap:10px;padding:14px 16px;background:var(--bw-card);border:1px solid var(--bw-line);border-radius:12px;margin-bottom:18px}
.c2g-bw-months{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.c2g-bw-month{flex:0 0 auto;padding:7px 15px;border:1px solid var(--bw-line);border-radius:20px;background:var(--bw-card);color:var(--bw-muted);font-size:13.5px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .12s,border-color .12s,color .12s}
.c2g-bw-month:hover{border-color:var(--bw-navy2);color:var(--bw-navy)}
.c2g-bw-month.is-on{background:var(--bw-navy);border-color:var(--bw-navy);color:#fff}
.c2g-bw-deplist{display:flex;flex-direction:column;gap:8px}
.c2g-bw-pill{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:54px;padding:12px 16px;border:1.5px solid var(--bw-line);border-radius:12px;background:var(--bw-card);cursor:pointer;transition:border-color .12s,box-shadow .12s,background .12s}
.c2g-bw-pill:not(.sold):hover{border-color:var(--bw-navy2);box-shadow:0 4px 14px rgba(18,35,59,.08)}
.c2g-bw-pill.is-sel{border-color:var(--bw-navy);background:var(--bw-sel);box-shadow:0 0 0 1px var(--bw-navy)}
.c2g-bw-pill.sold{opacity:.6;cursor:default}
.c2g-bw-pill:focus-visible{outline:none;border-color:var(--bw-navy2);box-shadow:0 0 0 3px rgba(34,85,140,.2)}
.c2g-bw-pill__date{font-size:15px;font-weight:700;color:var(--bw-ink)}
.c2g-bw-pill__right{display:flex;align-items:center;gap:12px}
.c2g-bw-pill__price{font-size:16px;font-weight:800;color:var(--bw-navy);font-variant-numeric:tabular-nums;white-space:nowrap}
.c2g-bw-pill__from{font-size:11px;font-weight:600;color:var(--bw-faint);text-transform:uppercase;letter-spacing:.04em}
.c2g-bw-pill__sold{font-size:13.5px;font-weight:700;color:var(--bw-red)}
.c2g-bw-dot{width:10px;height:10px;flex:0 0 auto;border-radius:50%;box-shadow:0 0 0 3px rgba(18,35,59,.05)}
.c2g-bw-dot--ok{background:var(--bw-green)}
.c2g-bw-dot--low{background:var(--bw-yellow)}
.c2g-bw-dot--sold{background:var(--bw-red)}
.c2g-bw-stepper{display:inline-flex;align-items:center;gap:6px;height:42px}
.c2g-bw-step{width:40px;height:40px;flex:0 0 auto;border:1.5px solid var(--bw-navy);border-radius:50%;background:var(--bw-card);font-size:22px;font-weight:600;color:var(--bw-navy);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;line-height:1;padding:0;transition:background .12s,border-color .12s,color .12s;-webkit-tap-highlight-color:transparent}
.c2g-bw-step:hover:not(:disabled){background:var(--bw-navy);color:#fff}
.c2g-bw-step:active:not(:disabled){transform:scale(.94)}
.c2g-bw-step:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(34,85,140,.2)}
.c2g-bw-step:disabled{color:var(--bw-faint);border-color:var(--bw-line);background:#fafbfc;cursor:not-allowed}
.c2g-bw-occ{min-width:34px;text-align:center;font-size:18px;font-weight:700;color:var(--bw-ink);font-variant-numeric:tabular-nums}

/* Kahyt-blokke (multi-kahyt) */
.c2g-bw-blocks{display:flex;flex-direction:column;gap:16px;margin-bottom:14px}
.c2g-bw-block{border:1px solid var(--bw-line);border-radius:14px;padding:14px 16px;background:rgba(255,255,255,.55)}
.c2g-bw-block__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid var(--bw-line)}
.c2g-bw-block__title{font-size:13px;font-weight:800;color:var(--bw-navy);text-transform:uppercase;letter-spacing:.05em}
.c2g-bw-block__remove{border:none;background:none;color:var(--bw-red);font-size:13px;font-weight:600;cursor:pointer;padding:4px 8px;border-radius:6px}
.c2g-bw-block__remove:hover{background:rgba(179,45,46,.08)}
.c2g-bw-field--occ{margin-bottom:14px}
.c2g-bw-add{display:inline-flex;align-items:center;gap:6px;margin:0 0 4px;padding:12px 20px;border:1.5px dashed var(--bw-navy);border-radius:10px;background:var(--bw-card);color:var(--bw-navy);font-size:14px;font-weight:700;cursor:pointer;transition:background .15s}
.c2g-bw-add:hover{background:var(--bw-sel)}

/* Deck heading */
.c2g-bw-deck{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--bw-navy);font-weight:700;margin:20px 0 10px;padding-bottom:6px;border-bottom:1px solid var(--bw-line)}

/* Cabin card */
.c2g-bw-cabins{display:flex;flex-direction:column;gap:12px}
.c2g-bw-card{display:grid;grid-template-columns:240px 1fr;gap:16px;padding:12px;border:1px solid var(--bw-line);border-radius:14px;background:var(--bw-card);transition:border-color .15s,box-shadow .15s;box-shadow:0 1px 2px rgba(18,35,59,.03)}
.c2g-bw-card:hover{box-shadow:0 6px 20px rgba(18,35,59,.08)}
.c2g-bw-card.is-sel{border-color:var(--bw-navy);box-shadow:0 0 0 2px var(--bw-navy)}
.c2g-bw-card.sold{opacity:.62}
.c2g-bw-card.sold .c2g-bw-gal{filter:grayscale(.5)}

/* Galleri (karrusel) */
.c2g-bw-gal{position:relative;aspect-ratio:4/3;border-radius:10px;overflow:hidden;background:var(--bw-bg);flex:0 0 auto}
.c2g-bw-gal img{width:100%;height:100%;object-fit:cover;display:block}
.c2g-bw-gal.has-zoom img{cursor:zoom-in}
.c2g-bw-gal.noimg{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#e8eef5,#dbe4ee)}
.c2g-bw-gal__ph{color:#9db0c6;display:flex}
.c2g-bw-gal__nav{position:absolute;top:50%;transform:translateY(-50%);width:32px !important;height:32px !important;padding:0 !important;min-width:0 !important;-webkit-appearance:none;appearance:none;border:none !important;border-radius:50% !important;background:rgba(255,255,255,.85);color:var(--bw-navy);display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .15s,background .15s;box-shadow:0 1px 4px rgba(12,22,38,.2)}
.c2g-bw-gal__nav:hover{background:#fff}
.c2g-bw-gal__prev{left:6px}.c2g-bw-gal__next{right:6px}
.c2g-bw-gal:hover .c2g-bw-gal__nav{opacity:1}
.c2g-bw-gal__dots{position:absolute;left:0;right:0;bottom:7px;display:flex;gap:5px;justify-content:center;pointer-events:none}
.c2g-bw-gal__dot{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.55);box-shadow:0 0 2px rgba(0,0,0,.3);pointer-events:auto;cursor:pointer;transition:background .15s,transform .15s}
.c2g-bw-gal__dot.is-on{background:#fff;transform:scale(1.25)}
.c2g-bw-gal__count{position:absolute;top:7px;right:7px;display:flex;align-items:center;gap:4px;padding:3px 7px;border-radius:20px;background:rgba(12,22,38,.6);color:#fff;font-size:11px;font-weight:600;font-variant-numeric:tabular-nums}
.c2g-bw-gal__cam{display:flex}

/* Kort-body */
.c2g-bw-cbody{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;min-width:0}
.c2g-bw-cinfo{min-width:0;display:flex;flex-direction:column;gap:4px}
.c2g-bw-cname{font-size:17px;font-weight:700;color:var(--bw-navy);line-height:1.25}
.c2g-bw-cmeta{font-size:12.5px;color:var(--bw-faint)}
.c2g-bw-cdesc{font-size:13px;color:var(--bw-muted);margin-top:2px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.c2g-bw-cprice{flex:0 0 auto;width:150px;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:2px;text-align:right}
.c2g-bw-amt{font-size:22px;font-weight:800;color:var(--bw-navy);font-variant-numeric:tabular-nums;white-space:nowrap;letter-spacing:-.01em}
.c2g-bw-per{font-size:11px;color:var(--bw-faint)}
.c2g-bw-rem{font-size:11.5px;color:var(--bw-green);font-weight:600;margin-top:3px}
.c2g-bw-rem.low{color:var(--bw-yellow)}
.c2g-bw-soldout{font-size:15px;font-weight:700;color:var(--bw-red)}
.c2g-bw-select{margin-top:9px;padding:9px 18px;border:1px solid var(--bw-navy);border-radius:9px;background:var(--bw-navy);color:#fff;font-size:13.5px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s}
.c2g-bw-select:hover{background:var(--bw-navy2)}
.c2g-bw-card.is-sel .c2g-bw-select{background:var(--bw-green);border-color:var(--bw-green)}
.c2g-bw-empty{padding:28px;text-align:center;color:var(--bw-faint)}

/* Book-bar */
.c2g-bw-foot{position:sticky;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;padding:14px 18px;background:var(--bw-card);border:1px solid var(--bw-line);border-radius:14px;box-shadow:0 -2px 16px rgba(18,35,59,.07)}
.c2g-bw-sum{min-width:0}
.c2g-bw-sumcabin{font-size:12.5px;color:var(--bw-muted)}
.c2g-bw-sumtot{font-size:19px;font-weight:800;color:var(--bw-navy);font-variant-numeric:tabular-nums}
.c2g-bw-sumtot__lbl{font-size:12px;font-weight:600;color:var(--bw-faint);text-transform:uppercase;letter-spacing:.04em}
.c2g-bw-sumhint{font-size:14px;color:var(--bw-faint)}
.c2g-bw-book{padding:13px 30px;border:none;border-radius:10px;background:var(--bw-gold);color:#fff;font-size:15px;font-weight:700;cursor:pointer;white-space:nowrap;transition:filter .15s}
.c2g-bw-book:hover:not(:disabled){filter:brightness(.95)}
.c2g-bw-book:disabled{background:var(--bw-line);color:var(--bw-faint);cursor:default}

/* ── Responsivt ──────────────────────────────────────────────────────── */
@media (max-width:640px){
	.c2g-bw-card{grid-template-columns:1fr;gap:12px}
	.c2g-bw-gal{aspect-ratio:16/10}
	.c2g-bw-gal__nav{opacity:1;background:rgba(255,255,255,.9)}
	.c2g-bw-cbody{grid-template-columns:1fr;gap:12px}
	.c2g-bw-cprice{width:100%;flex-direction:row;flex-wrap:wrap;align-items:baseline;justify-content:flex-start;gap:6px 12px;text-align:left;border-top:1px dashed var(--bw-line);padding-top:12px}
	.c2g-bw-select{margin-top:0;margin-left:auto;align-self:center}
	.c2g-bw-title{font-size:20px}
}
@media (max-width:420px){
	.c2g-bw-field{flex:1 1 100%}
	.c2g-bw-picker{padding:12px 13px}
	.c2g-bw-pill{padding:11px 13px}
	.c2g-bw-pill__date{font-size:14px}
	.c2g-bw-pill__price{font-size:15px}
	.c2g-bw-book{padding:13px 22px}
}

/* ── Overlay (CTA-udløst) ────────────────────────────────────────────── */
.c2g-bw-overlay{position:fixed;inset:0;z-index:100000;display:flex;align-items:flex-start;justify-content:center;padding:40px 16px;overflow-y:auto;-webkit-overflow-scrolling:touch}
.c2g-bw-overlay[hidden]{display:none}
.c2g-bw-overlay__backdrop{position:fixed;inset:0;background:rgba(12,22,38,.55);backdrop-filter:blur(2px)}
.c2g-bw-overlay__panel{position:relative;z-index:1;width:100%;max-width:880px;background:var(--bw-bg,#f6f8fb);border-radius:16px;box-shadow:0 24px 60px rgba(12,22,38,.35);padding:26px 26px 22px;animation:c2gbwIn .18s ease-out}
@keyframes c2gbwIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.c2g-bw-overlay__panel .c2g-bw{max-width:none;margin:0}
/* Luk-knap: krydset tegnes med to roterede streger (ikke &times;-glyffen, der er
   tynd, font-afhængig og aldrig helt centreret) → skarpt, centreret og ens overalt. */
.c2g-bw-overlay__close{position:absolute;top:12px;right:14px;z-index:2;width:36px;height:36px;padding:0;border:none;border-radius:50%;background:rgba(255,255,255,.92);cursor:pointer;font-size:0;box-shadow:0 1px 4px rgba(12,22,38,.18);transition:background .15s ease,box-shadow .15s ease}
.c2g-bw-overlay__close::before,.c2g-bw-overlay__close::after{content:"";position:absolute;top:50%;left:50%;width:16px;height:2px;margin:-1px 0 0 -8px;border-radius:2px;background:#16202e;transition:background .15s ease}
.c2g-bw-overlay__close::before{transform:rotate(45deg)}
.c2g-bw-overlay__close::after{transform:rotate(-45deg)}
.c2g-bw-overlay__close:hover{background:#fff;box-shadow:0 2px 8px rgba(12,22,38,.24)}
.c2g-bw-overlay__close:hover::before,.c2g-bw-overlay__close:hover::after{background:#c58a3a}
.c2g-bw-overlay__close:focus-visible{outline:2px solid #c58a3a;outline-offset:2px}
/* Book-bar må ikke være sticky mod viewport inde i overlayet */
.c2g-bw-overlay .c2g-bw-foot{position:sticky;bottom:-22px;box-shadow:0 -2px 16px rgba(18,35,59,.07)}
body.c2g-bw-lock{overflow:hidden}
@media (max-width:640px){
	.c2g-bw-overlay{padding:0}
	.c2g-bw-overlay__panel{max-width:none;min-height:100%;border-radius:0;padding:18px 14px 16px}
}

/* ── Lightbox (fuldskærms-galleri) ───────────────────────────────────── */
.c2g-bw-lb{position:fixed;inset:0;z-index:100010;display:flex;align-items:center;justify-content:center;padding:40px}
.c2g-bw-lb[hidden]{display:none}
.c2g-bw-lb [hidden]{display:none !important} /* respektér hidden på nav/count (ét billede) */
.c2g-bw-lb__backdrop{position:absolute;inset:0;background:rgba(8,15,26,.9)}
.c2g-bw-lb__img{position:relative;z-index:1;max-width:100%;max-height:100%;object-fit:contain;border-radius:6px;box-shadow:0 12px 48px rgba(0,0,0,.5)}
/* Reset mod temaets globale button-styling — lightboxen ligger uden for .c2g-bw scope,
   så temaets padding/min-width/width ellers siver ind og gør knapperne til brede piller. */
.c2g-bw-lb__nav,.c2g-bw-lb__close{-webkit-appearance:none;appearance:none;box-sizing:border-box;margin:0;padding:0 !important;min-width:0 !important;border:none !important;font-family:inherit;display:flex;align-items:center;justify-content:center;line-height:1;background:rgba(255,255,255,.14);color:#fff;cursor:pointer;transition:background .15s}
.c2g-bw-lb__nav:hover,.c2g-bw-lb__close:hover{background:rgba(255,255,255,.28)}
.c2g-bw-lb__nav{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:48px !important;height:48px !important;border-radius:50% !important}
.c2g-bw-lb__prev{left:20px}.c2g-bw-lb__next{right:20px}
.c2g-bw-lb__close{position:absolute;top:18px;right:20px;z-index:2;width:44px !important;height:44px !important;border-radius:50% !important;font-size:24px}
.c2g-bw-lb__count{position:absolute;bottom:22px;left:0;right:0;z-index:2;text-align:center;color:#fff;font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;text-shadow:0 1px 3px rgba(0,0,0,.5)}
@media (max-width:640px){
	.c2g-bw-lb{padding:12px}
	.c2g-bw-lb__nav{width:40px !important;height:40px !important}
	.c2g-bw-lb__prev{left:8px}.c2g-bw-lb__next{right:8px}
}
