/* MDRK Travels — hero, booking card placement and information blocks.
   Loaded on the front end wherever MDRK blocks are used, and in the block editor.
   Colours are the brand defaults; hero texts and backgrounds are block settings you can change in the editor. */
.mdrk-hero, .mdrk-section, .mdrk-block { font-family: "Poppins", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; }

/* Hero (a core Cover block with the class "mdrk-hero") */
.wp-block-cover.mdrk-hero { box-sizing: border-box; }
.wp-block-cover.mdrk-hero.mdrk-hero.mdrk-hero.mdrk-hero .wp-block-cover__inner-container { width: 100%; max-width: 1160px; margin-left: auto; margin-right: auto; }
.wp-block-cover.mdrk-hero :is(h1, h2) { margin: 0 0 10px; font-weight: 700; letter-spacing: -.01em; line-height: 1.2; text-wrap: balance; }
.wp-block-cover.mdrk-hero p { margin: 0 0 8px; max-width: 62ch; }
.wp-block-cover.mdrk-hero .mdrk-hero__eyebrow { display: inline-block; font-size: 13px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; border: 1px solid rgba(253,126,20,.6); border-radius: 999px; padding: 4px 12px; margin-bottom: 14px; }
.wp-block-cover.mdrk-hero .mdrk-hero__points { margin-top: 10px; }
.wp-block-cover.mdrk-hero::after { content: ""; position: absolute; left: 0; right: 0; bottom: 18px; height: 2px; background: repeating-linear-gradient(90deg, rgba(253,126,20,.55) 0 26px, transparent 26px 44px); pointer-events: none; z-index: 1; }

/* Booking card pulled up over the hero */
.mdrk-booking-block { box-sizing: border-box; padding-left: 16px; padding-right: 16px; }
.mdrk-booking-block.mdrk-booking-block.alignwide, .mdrk-booking-block.mdrk-booking-block.alignfull { max-width: 1192px; margin-left: auto; margin-right: auto; width: 100%; }
.mdrk-booking-block.mdrk-overlap { position: relative; z-index: 3; margin-top: -72px !important; }
@media (max-width: 600px) { .mdrk-booking-block.mdrk-overlap { margin-top: -56px !important; } }

/* Information sections (core Group blocks with class "mdrk-section") */
.mdrk-section { box-sizing: border-box; }
.mdrk-section > * { max-width: 1160px; margin-left: auto !important; margin-right: auto !important; }
.mdrk-section :is(h2.wp-block-heading) { color: #062749; font-size: clamp(22px, 3vw, 28px); font-weight: 700; line-height: 1.25; margin-top: 0; margin-bottom: 8px; text-wrap: balance; }
.mdrk-section > p { color: #5B6B80; max-width: 65ch; margin-bottom: 16px; }

/* Cards: used by the info blocks and by Group blocks with class "mdrk-card" */
.mdrk-cards, .mdrk-section .wp-block-columns.mdrk-cards { display: grid; gap: 12px; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); margin: 12px 0 0; }
.mdrk-section .wp-block-columns.mdrk-cards > .wp-block-column { margin: 0; flex-basis: auto !important; }
.mdrk-card, .wp-block-group.mdrk-card { background: #fff; border: 1px solid #DCE3EC; border-radius: 10px; padding: 16px; box-sizing: border-box; height: 100%; }
.mdrk-block .mdrk-card h3, .mdrk-section .mdrk-card h3 { margin: 0 0 8px; font-size: 17px; font-weight: 700; color: #062749; line-height: 1.3; }
.mdrk-block .mdrk-card p, .mdrk-section .mdrk-card p { margin: 0 0 6px; color: #5B6B80; font-size: 15px; }
.mdrk-block .mdrk-card dl { margin: 0; display: grid; grid-template-columns: max-content 1fr; gap: 4px 14px; font-size: 14.5px; }
.mdrk-block .mdrk-card dt { color: #5B6B80; font-weight: 400; margin: 0; }
.mdrk-block .mdrk-card dd { margin: 0; font-weight: 500; min-width: 0; overflow-wrap: anywhere; color: #14243A; }
.mdrk-block .mdrk-card ul, .mdrk-block.mdrk-info--cancel ul { margin: 0 0 8px; padding-left: 18px; font-size: 14.5px; }
.mdrk-block .mdrk-card li { margin: 2px 0; }
.mdrk-block .mdrk-card__k { font-size: 12px !important; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: #062749 !important; margin: 8px 0 4px !important; }
.mdrk-block .mdrk-legal { font-size: 14px; }
.mdrk-block a { color: #B4530B; font-weight: 600; }
.mdrk-tbc { display: inline-block; color: #8A5A00; background: #FFF6DB; border-radius: 4px; padding: 0 6px; font-size: 12.5px; font-weight: 600; }

/* FAQs (core Details blocks inside a Group with class "mdrk-faq") */
.mdrk-faq { display: grid; gap: 8px; }
.mdrk-faq .wp-block-details { background: #fff; border: 1px solid #DCE3EC; border-radius: 10px; padding: 0 16px; margin: 0 !important; }
.mdrk-faq .wp-block-details summary { cursor: pointer; padding: 14px 0; font-weight: 600; color: #062749; }
.mdrk-faq .wp-block-details > :not(summary) { margin: 0 0 14px; color: #5B6B80; }

/* Editor-only previews */
.mdrk-editor-mock { pointer-events: none; }
.mdrk-editor-mock .mdrk-mockpill { display: inline-block; padding: 8px 14px; border-radius: 999px; font-weight: 600; font-size: 14px; color: #5B6B80; }
.mdrk-editor-mock .mdrk-mockpill.is-on { background: #062749; color: #fff; }
.mdrk-editor-mock .mdrk-mockrow { display: flex; flex-wrap: wrap; gap: 10px; }
.mdrk-editor-mock .mdrk-mockfield { flex: 1 1 160px; border: 1px solid #DCE3EC; border-radius: 6px; padding: 12px; color: #5B6B80; font-size: 14px; }
.mdrk-editor-mock .mdrk-mockbtn { background: #FD7E14; color: #062749; font-weight: 600; border-radius: 6px; padding: 12px 20px; }
.mdrk-editor-note { font-size: 13px; color: #5B6B80; margin: 10px 0 0; }
.mdrk-editor-placeholder { border: 2px dashed #FD7E14; border-radius: 8px; padding: 18px; font-family: "Poppins", sans-serif; }

/* Phones: keep the booking form on the first screen */
@media (max-width: 600px) {
  .wp-block-cover.mdrk-hero { min-height: 0 !important; padding-top: 26px !important; padding-bottom: 80px !important; }
  .wp-block-cover.mdrk-hero .mdrk-hero__eyebrow { font-size: 11px; margin-bottom: 10px; }
  .wp-block-cover.mdrk-hero p { font-size: 15px !important; }
  .wp-block-cover.mdrk-hero .mdrk-hero__points { display: none; }
}
