@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url("assets/brand/inter-400.ttf") format("truetype");}
@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url("assets/brand/inter-600.ttf") format("truetype");}
:root{
 --dossier-green:#303030;--dossier-green-dark:#141414;--dossier-green-soft:#f1f1f1;
 --dossier-ink:#222;--dossier-copy:#535353;--dossier-muted:#737373;
 --dossier-line:#d8d8d8;--dossier-line-dark:#999;
 --dossier-paper:#fff;--dossier-field:#f7f7f7;--dossier-field-deep:#ebebeb;
 --home-paper:#fff;--home-white:#fff;--home-ink:#222;--home-ink-soft:#393939;
 --home-copy:#535353;--home-muted:#737373;--home-line:#dedede;--home-line-dark:#777;
 --home-accent:#303030;--home-accent-dark:#141414;--home-accent-soft:#f1f1f1;
 --home-surface:#f7f7f7;--home-on-dark:#c0c0c0;--home-on-dark-accent:#e0e0e0;
}
body.operating-dossier :is(.site-nav .brand,.mi-wordmark){
 display:inline-flex!important;align-items:center!important;gap:7px!important;
 font-family:Inter,Arial,sans-serif!important;font-size:21px!important;
 letter-spacing:-1.1px!important;line-height:1!important;font-weight:600!important;
 text-transform:lowercase;white-space:nowrap;
}
body.operating-dossier :is(.site-nav .brand,.mi-wordmark)::before{content:none!important;}
body.operating-dossier :is(.site-nav .brand,.mi-wordmark) .wm-measured{margin:0!important;font-size:inherit!important;font-weight:600!important;}
body.operating-dossier :is(.site-nav .brand,.mi-wordmark) .wm-intuition{
 margin:0!important;font-size:inherit!important;font-weight:400!important;
 position:relative;padding-top:5px;padding-bottom:5px;
}
body.operating-dossier :is(.site-nav .brand,.mi-wordmark) .wm-intuition::before{
 content:"";position:absolute;left:0;right:0;top:-2px;height:3px;
 background:linear-gradient(to right,#222 0 1px,transparent 1px calc(50% - .5px),#222 calc(50% - .5px) calc(50% + .5px),transparent calc(50% + .5px) calc(100% - 1px),#222 calc(100% - 1px));
 border-top:1px solid #222;
}
@media(max-width:820px){body.operating-dossier :is(.site-nav .brand,.mi-wordmark){font-size:18px!important;gap:5px!important;letter-spacing:-.8px!important;}}
@media(max-width:430px){body.operating-dossier :is(.site-nav .brand,.mi-wordmark){font-size:16px!important;gap:4px!important;}body.operating-dossier :is(.site-nav .brand,.mi-wordmark) span{font-size:inherit!important;}}
/* Color refinement: white surfaces, charcoal copy, three deliberate accents. */
:root{
 --dossier-green:#d44224;--dossier-green-dark:#b83218;--dossier-green-soft:#fff2ed;
 --home-accent:#d44224;--home-accent-dark:#b83218;--home-accent-soft:#fff2ed;
 --home-on-dark-accent:#ffffff;
}
body.operating-dossier .hero h1 span{color:#d44224!important;}
body.operating-dossier :is(.eyebrow,.document-kicker,.section-label){color:#666666!important;}
body.operating-dossier :is(.site-nav .brand,.mi-wordmark) .wm-intuition{color:#d44224!important;}
body.operating-dossier :is(.site-nav .brand,.mi-wordmark) .wm-intuition::before{
 background:linear-gradient(to right,#d44224 0 1px,transparent 1px calc(50% - .5px),#d44224 calc(50% - .5px) calc(50% + .5px),transparent calc(50% + .5px) calc(100% - 1px),#d44224 calc(100% - 1px));
 border-top-color:#d44224;
}
body.operating-dossier .brief-before>span{color:#d44224!important;}
body.operating-dossier .brief-change>span{color:#d44224!important;}
body.operating-dossier .brief-after>span{color:#666666!important;}
body.operating-dossier .measurement-strip{background:#252525!important;}
body.operating-dossier .measurement-strip>span{color:#ffffff!important;}

/* One signature accent across the mark, headline and actions. */
body.operating-dossier :is(.site-nav .brand,.mi-wordmark) .wm-intuition{color:#222!important;}
body.operating-dossier :is(.eyebrow,.document-kicker,.section-label){color:#666!important;}
body.operating-dossier .brief-before>span,body.operating-dossier .brief-after>span{color:#666!important;}
body.operating-dossier .brief-change>span{color:#d44224!important;}

/* Sitewide semantic color aliases and legacy inline paint overrides. */
:root{--mi-green:#d44224;--mi-green-dark:#b83218;--mi-ink:#222;--mi-copy:#535353;--mi-paper:#fff;--mi-line:#d8d8d8;--oxide:#d44224;--oxide-deep:#b83218;--focus:#d44224;}
body.operating-dossier .mi-wordmark{color:#fff!important;}
body.operating-dossier .mi-wordmark :is(.wm-measured,.wm-intuition){color:inherit!important;}
body.operating-dossier [style*="color:#1f7458"],body.operating-dossier [style*="color: #1f7458"],body.operating-dossier [style*="color:#14543f"],body.operating-dossier [style*="color: #14543f"]{color:#d44224!important;}
body.operating-dossier [style*="color:#8fd0b5"],body.operating-dossier [style*="color: #8fd0b5"]{color:#fff!important;}
body.operating-dossier.voice-page .hero-note small{color:#666!important;}
body.operating-dossier.voice-page .mi-button{border-color:#d44224!important;color:#d44224!important;}
body.operating-dossier.voice-page .mi-button.primary{background:#d44224!important;color:#fff!important;}
body.operating-dossier :is(.field input,.field select,.scorecard-results):focus{outline-color:rgba(212,66,36,.25)!important;}
/* Dark footers inherit a white wordmark while retaining the red measurement rule. */
body.operating-dossier footer a.mi-wordmark[href="index.html"]{font-family:Inter,Arial,sans-serif!important;color:#fff!important;}
body.operating-dossier footer a.mi-wordmark[href="index.html"] :is(.wm-measured,.wm-intuition){font-family:inherit!important;color:#fff!important;}

/* Booking stays on the current page, with the clicked offer beside the calendar. */
body.modal-open { overflow: hidden; }
.booking-dialog { width: min(1180px, calc(100vw - 40px)); max-width: none; max-height: calc(100dvh - 40px); margin: auto; padding: 0; border: 1px solid #dedbd5; border-radius: 12px; background: #fff; color: #242321; box-shadow: 0 24px 100px #0003; overflow: auto; }
.booking-dialog::backdrop { background: rgb(25 23 20 / 55%); }
.booking-dialog .booking-modal { display: block; background: #fff; }
.booking-dialog .booking-modal-head { position: sticky; top: 0; z-index: 2; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 24px; border-bottom: 1px solid #e9e6e1; background: #fff; font: 500 13px/1.4 Inter, sans-serif; color: #6d6963; }
.booking-dialog .booking-modal-close { display: inline-flex; align-items: center; gap: 12px; flex-shrink: 0; margin: 0; padding: 8px 12px; border: 1px solid #d8d4cd; border-radius: 5px; background: #fff; color: #242321; font: 500 14px/1.3 Inter, sans-serif; cursor: pointer; }
.booking-dialog .booking-modal-close:focus-visible, .booking-dialog a:focus-visible { outline: 3px solid #d44224; outline-offset: 3px; }
.booking-dialog .booking-modal-body { display: grid; grid-template-columns: minmax(230px, .8fr) minmax(0, 1.65fr); }
.booking-dialog .booking-context { padding: 38px 28px; border-right: 1px solid #e9e6e1; }
.booking-dialog .booking-context h2 { margin: 0 0 22px; color: #242321; font-size: clamp(25px, 3vw, 34px) !important; line-height: 1.13; letter-spacing: -.035em; }
.booking-dialog .booking-context p { margin: 0 0 20px; color: #5b5752; font-size: 15px; line-height: 1.65; }
.booking-dialog .booking-context .booking-context-note { font-size: 13px; }
.booking-dialog .booking-fallback { color: #bb351b; font-size: 13px; text-decoration: underline; text-underline-offset: 3px; }
.booking-dialog .booking-calendar { min-width: 0; padding: 14px; }
.booking-dialog .booking-loading { margin: 16px; color: #6d6963; font-size: 14px; }
.booking-dialog .cal-embed { min-height: 570px; }
.booking-dialog iframe { width: 100%; min-height: 570px; height: 620px; border: 0; }
@media (max-width: 760px) {
  .booking-dialog { width: calc(100vw - 16px); max-height: calc(100dvh - 16px); border-radius: 8px; }
  .booking-dialog .booking-modal-head { padding: 10px 14px; font-size: 11px; }
  .booking-dialog .booking-modal-body { display: block; }
  .booking-dialog .booking-context { padding: 22px 20px 16px; border-right: 0; border-bottom: 1px solid #e9e6e1; }
  .booking-dialog .booking-context h2 { margin-bottom: 12px; font-size: 25px !important; }
  .booking-dialog .booking-context p { margin-bottom: 12px; font-size: 14px; line-height: 1.5; }
  .booking-dialog .booking-context .booking-context-note { display: none; }
  .booking-dialog .booking-calendar { padding: 4px; }
  .booking-dialog .cal-embed, .booking-dialog iframe { min-height: 560px; }
}

/* Short enquiry: retain the site's typography, colours and dialog treatment. */
.enquiry-dialog { width:min(620px,calc(100vw - 40px)); }
.enquiry-dialog .booking-context { border:0; padding:24px 28px; }
.enquiry-dialog .booking-context h2 { margin-bottom:12px; }
.enquiry-dialog .booking-context p { margin:10px 0; }
.enquiry-dialog .mi-button { cursor:pointer; }
.enquiry-dialog .mi-button:disabled { opacity:.65; }
[data-mi-enquiry] details summary { cursor:pointer;font-size:14px; }
[data-mi-enquiry] .enquiry-secondary { margin-top:18px;border-top:1px solid #e9e6e1;padding-top:14px; }
[data-mi-enquiry] .enquiry-secondary .cal-embed { margin-top:16px;min-height:560px; }
@media(max-width:820px) { .enquiry-dialog { width:calc(100vw - 16px); } .enquiry-dialog .booking-context { padding:20px; } }
