/* Hallmark · macrostructure: Conversational FAQ with native scheduling · tone: technical editorial · anchor hue: Outlook green
   Theme: existing Outlook UAS brand; font, gradient headings, navigation and footer preserved by user request.
   Genre: editorial. Pre-emit critique: P4 H4 E4 S4 R4 V3.
   Inherited brand exceptions and bounded QA are recorded in design-review.md; no blanket conformance claim. */
@import url("tokens.css");
html,body{overflow-x:clip}
.rc-main,.rc-dialog{font-family:var(--font-body);color:var(--color-ink);font-size:var(--text-body);line-height:1.65}
.rc-main [hidden],.rc-dialog [hidden]{display:none!important}
.rc-wrap{max-width:1180px;margin-inline:auto;min-width:0}
.rc-main h1,.rc-main h2,.rc-main h3,.rc-dialog h2{font-family:var(--font-display);font-style:normal;min-width:0;overflow-wrap:anywhere;font-weight:700;letter-spacing:-.03em}
.rc-main h1{font-size:var(--text-display);line-height:1.08;margin:0}
.rc-main h2{font-size:var(--text-heading);line-height:1.15;margin:0}
.rc-main h3{font-size:var(--text-title);line-height:1.35;margin:0 0 var(--space-md)}
.rc-accent{background:linear-gradient(90deg,var(--color-accent),var(--color-accent-warm));color:var(--color-clear);background-clip:text;-webkit-background-clip:text}
.rc-main p{color:var(--color-ink-soft)}
.rc-main .rc-hero{padding-block:var(--space-3xl) var(--space-2xl);min-height:0}
.rc-hero-copy{max-width:780px}
.rc-main .rc-intro{font-size:clamp(18px,1.7vw,21px);max-width:660px;margin:var(--space-lg) 0}
body .backdrop-top{background-image:linear-gradient(90deg,var(--color-overlay),var(--color-overlay-light)),url("Digital%20Assets/Banners/field-ops-tower.webp");background-position:center 40%}
body .backdrop-final{background-image:url("Digital%20Assets/Backgrounds/optimized/page-bg-ridge-dark-desktop.webp");height:800px;opacity:.65}
.rc-facts{list-style:none;display:flex;flex-wrap:wrap;gap:var(--space-xs) var(--space-lg);padding:0;margin:var(--space-lg) 0;color:var(--color-ink);font-size:var(--text-small)}
.rc-facts li+li{border-left:var(--rule-width) solid var(--color-rule-strong);padding-left:var(--space-lg)}
.rc-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-lg);margin-top:var(--space-xl)}
.rc-main .btn,.rc-dialog .btn{min-height:48px;height:auto;padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-control);font-size:var(--text-small);line-height:1.5;white-space:nowrap;gap:var(--space-md);background:var(--color-accent);color:var(--color-accent-ink);border:var(--rule-width) solid var(--color-accent);font-family:var(--font-body);box-shadow:none!important;transition:transform var(--dur-micro) var(--ease-out)}
.rc-main .btn:disabled{color:var(--color-muted);background:var(--color-clear);border-color:var(--color-rule);cursor:not-allowed}
.rc-link{display:inline-flex;align-items:center;gap:var(--space-xs);min-height:44px;font-size:var(--text-small);line-height:1.5;font-weight:600;text-decoration:none;color:var(--color-accent);background:var(--color-clear);white-space:nowrap;cursor:pointer}
.rc-main :focus-visible,.rc-dialog :focus-visible{outline:2px solid var(--color-focus);outline-offset:4px}
.rc-main button:active:not(:disabled),.rc-dialog button:active:not(:disabled),.rc-main .btn:active{transform:translateY(1px)}
.rc-hero-foot{font-size:var(--text-small);margin:var(--space-2xl) 0 0;padding-top:var(--space-lg);border-top:var(--rule-width) solid var(--color-rule);max-width:780px}
.rc-main .rc-section{padding-block:var(--space-2xl);border-top:var(--rule-width) solid var(--color-rule)}
.rc-section-intro p,.rc-book-intro>p{font-size:var(--text-body);line-height:1.75;max-width:65ch;margin:var(--space-lg) 0}
.rc-lead{font-size:var(--text-lead);line-height:1.7;max-width:760px;margin:var(--space-lg) 0}
.rc-book-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-xl)}
.rc-call-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md) var(--space-lg);margin:var(--space-xl) 0}
.rc-call-details div{min-width:0}
.rc-call-details dt{font-size:var(--text-small);color:var(--color-muted)}
.rc-call-details dd{font-size:var(--text-body);margin:var(--space-2xs) 0 0;color:var(--color-ink)}
.rc-preview-note{border-top:var(--rule-width) solid var(--color-accent);padding-block:var(--space-md);margin-bottom:var(--space-md);font-size:var(--text-small)}
.rc-preview-note strong{font-weight:600;color:var(--color-accent)}
.rc-preview-note p{font-size:var(--text-small);margin:var(--space-2xs) 0 0;max-width:65ch}
.rc-scheduler{min-width:0}
.cal-zone-row{display:flex;flex-direction:column;gap:var(--space-xs);padding-bottom:var(--space-lg);margin-bottom:var(--space-lg);border-bottom:var(--rule-width) solid var(--color-rule)}
.cal-zone-row label{font-size:var(--text-small);font-weight:600;color:var(--color-ink)}
.cal-zone-row select{height:48px;max-width:100%;width:100%;min-width:0;padding:var(--space-xs) var(--space-sm);border:var(--rule-width) solid var(--color-rule-strong);border-radius:var(--radius-control);background:var(--color-paper-raised);color:var(--color-ink);font:400 var(--text-small) var(--font-body);color-scheme:dark}
.cal-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-xl)}
.cal-month-nav{display:flex;align-items:center;justify-content:space-between;gap:var(--space-xs);margin-bottom:var(--space-md)}
.rc-main .cal-month-nav h3{font-size:var(--text-lead);margin:0;letter-spacing:-.02em}
.cal-arrows{display:flex;gap:var(--space-xs);flex:none}
.cal-icon-button{width:44px;height:44px;display:grid;place-items:center;border:var(--rule-width) solid var(--color-rule-strong);border-radius:var(--radius-control);color:var(--color-ink);background:var(--color-clear);cursor:pointer;flex:none}
.cal-icon-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.cal-icon-button:disabled{opacity:.45;cursor:not-allowed}
#calendar-grid{width:100%;table-layout:fixed;border-collapse:collapse;border:none;font-variant-numeric:tabular-nums}
#calendar-grid th{height:32px;color:var(--color-muted);font-size:12px;font-weight:500;text-align:center}
#calendar-grid abbr{text-decoration:none}
#calendar-grid td{padding:2px 0;text-align:center;border:0}
.cal-day{width:100%;height:46px;position:relative;display:flex;align-items:center;justify-content:center;font:500 var(--text-body) var(--font-body);font-variant-numeric:tabular-nums;border:var(--rule-width) solid var(--color-clear);border-radius:var(--radius-control);color:var(--color-ink);background:var(--color-clear);cursor:pointer}
.cal-day[aria-disabled="true"]{color:var(--color-muted);opacity:.45;cursor:not-allowed}
.cal-day.is-today{border-color:var(--color-rule-strong)}
#calendar-grid td[aria-selected="true"] .cal-day,.cal-day[aria-pressed="true"]{background:var(--color-accent);color:var(--color-accent-ink);font-weight:700}
.cal-day-dot{display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--color-accent);flex:none}
.cal-day .cal-day-dot{position:absolute;bottom:4px;left:calc(50% - 2px)}
#calendar-grid td[aria-selected="true"] .cal-day-dot{background:var(--color-accent-ink)}
.cal-legend{display:flex;align-items:center;gap:var(--space-xs);font-size:12px;margin:var(--space-sm) 0 0}
.cal-times-pane{border-top:var(--rule-width) solid var(--color-rule);padding-top:var(--space-lg);min-width:0}
.rc-main .cal-times-pane h3{font-size:var(--text-lead);margin:0 0 var(--space-2xs)}
.cal-times-note{font-size:var(--text-small);margin:0 0 var(--space-md)}
#calendar-slots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-xs);min-height:48px}
.cal-time{min-height:48px;padding:var(--space-xs);border:var(--rule-width) solid var(--color-rule-strong);border-radius:var(--radius-control);text-align:center;font:500 var(--text-small) var(--font-body);font-variant-numeric:tabular-nums;color:var(--color-ink);background:var(--color-clear);cursor:pointer;white-space:nowrap}
.cal-time[aria-pressed="true"]{color:var(--color-accent);border-color:var(--color-accent);box-shadow:inset 0 0 0 1px var(--color-accent);background:var(--color-paper-raised);font-weight:700}
.cal-time[aria-pressed="true"]::after{content:" ✓"}
.cal-empty{grid-column:1/-1;font-size:var(--text-small)}
#calendar-review{min-height:76px;margin-top:var(--space-lg);font-size:var(--text-small);line-height:1.7}
#calendar-review p{margin:0}
#review-time{width:100%;margin-top:var(--space-md);justify-content:center}
.cal-status{font-size:12px;line-height:1.6;margin:var(--space-lg) 0 0;min-height:1.6em;color:var(--color-muted)!important}
.cal-error{color:var(--color-error);padding-block:var(--space-md)}
.cal-error p{color:var(--color-error)}
.cal-live-fallback{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-xs) var(--space-md);padding-top:var(--space-md);border-top:var(--rule-width) solid var(--color-rule);margin-top:var(--space-lg)}
.cal-live-fallback p{font-size:var(--text-small);margin:0}
.rc-split{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-xl)}
.rc-answers details{border-top:var(--rule-width) solid var(--color-rule);scroll-margin-top:112px}
.rc-answers details:last-child{border-bottom:var(--rule-width) solid var(--color-rule)}
.rc-answers summary{display:flex;justify-content:space-between;align-items:center;gap:var(--space-lg);padding-block:var(--space-lg);list-style:none;cursor:pointer}
.rc-answers summary::-webkit-details-marker{display:none}
.rc-answers summary strong{font-size:var(--text-body);font-weight:600;color:var(--color-ink);line-height:1.5;display:block}
.rc-answer-preview{display:block;color:var(--color-muted);font-size:var(--text-small);line-height:1.6;margin-top:var(--space-xs)}
.rc-plus{position:relative;width:16px;height:16px;flex:none;color:var(--color-accent)}
.rc-plus::before,.rc-plus::after{content:"";position:absolute;inset:7px 0 auto;height:1px;background:currentColor}
.rc-plus::after{transform:rotate(90deg)}
.rc-answers details[open] .rc-plus::after{transform:none}
.rc-answer-body{padding:0 var(--space-xl) var(--space-lg) 0}
.rc-answer-body p{margin:0 0 var(--space-md);font-size:var(--text-body);line-height:1.75}
.rc-answer-body p:last-child{margin-bottom:0}
.rc-outcomes{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-lg);margin:var(--space-xl) 0 var(--space-lg);max-width:1000px}
.rc-outcomes>div{padding-top:var(--space-lg);border-top:var(--rule-width) solid var(--color-rule)}
.rc-main .rc-outcomes h3{font-size:var(--text-title);margin:0 0 var(--space-sm)}
.rc-outcomes p{font-size:var(--text-body);line-height:1.75;margin:0;max-width:55ch}
.rc-main .rc-close{padding-block:var(--space-3xl) var(--space-4xl)}
.rc-main [id]{scroll-margin-top:110px}
.rc-alias{display:block;height:0}
.rc-dialog{position:fixed;inset:0;margin:auto;width:calc(100% - 32px);max-width:540px;height:fit-content;max-height:calc(100dvh - 48px);padding:var(--space-lg);overflow-y:auto;border:var(--rule-width) solid var(--color-rule-strong);border-radius:var(--radius-dialog);background:var(--color-paper-raised);box-shadow:none}
.rc-dialog::backdrop{background:var(--color-backdrop)}
.rc-dialog-top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-lg);margin-bottom:var(--space-lg)}
.rc-dialog h2{font-size:var(--text-title);line-height:1.3;margin:0}
.rc-dialog p{font-size:var(--text-small);color:var(--color-ink-soft)}
#dialog-selection{border-block:var(--rule-width) solid var(--color-rule);padding-block:var(--space-md);font-size:var(--text-lead);line-height:1.65}
#dialog-selection p{margin:var(--space-2xs) 0;font-size:var(--text-body)}
#dialog-selection strong{color:var(--color-ink)}
#main-content:focus{outline:none}
#ou-skip{position:fixed;top:8px;left:8px;transform:translateY(-200%);z-index:200;padding:var(--space-sm) var(--space-lg);background:var(--color-accent);color:var(--color-accent-ink);text-decoration:none}
#ou-skip:focus{transform:none;outline:2px solid var(--color-ink)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(hover:hover){.rc-link:hover{text-decoration:underline;text-underline-offset:4px}.cal-day:not([aria-disabled="true"]):hover{border-color:var(--color-accent)}.cal-time:hover,.cal-icon-button:not(:disabled):hover{border-color:var(--color-accent)}}
@media(min-width:48rem){.rc-main .rc-section{padding-block:var(--space-3xl)}.cal-zone-row{flex-direction:row;align-items:center;justify-content:space-between}.cal-zone-row select{max-width:310px}.cal-layout{grid-template-columns:minmax(308px,1.2fr) minmax(0,1fr);gap:var(--space-xl)}.cal-times-pane{border-top:0;border-left:var(--rule-width) solid var(--color-rule);padding-top:0;padding-left:var(--space-xl)}.rc-outcomes{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:var(--space-2xl)}.rc-main .rc-hero{padding-block:var(--space-4xl) var(--space-3xl)}}
@media(min-width:64rem){.rc-split{grid-template-columns:minmax(0,.82fr) minmax(0,1.2fr);gap:var(--space-3xl)}}
@media(min-width:84rem){.rc-book-layout{grid-template-columns:minmax(0,.68fr) minmax(0,1.6fr);gap:var(--space-2xl)}.rc-call-details{grid-template-columns:minmax(0,1fr);gap:var(--space-md)}.rc-book-intro>p{max-width:30ch}.rc-main .rc-hero{padding-top:var(--space-4xl)}}
@media(max-width:47.99rem){body .backdrop-top{background-image:linear-gradient(var(--color-overlay),var(--color-overlay)),url("Digital%20Assets/Banners/field-ops-tower.webp")}.rc-main .pad-section{padding-inline:var(--space-lg)!important}.rc-main .rc-hero{padding-top:var(--space-2xl)!important}.rc-link{font-size:13px}.rc-hero-foot{margin-top:var(--space-xl)}.rc-facts{gap:var(--space-xs) var(--space-md)}.rc-facts li+li{padding-left:var(--space-md)}}
@media(max-width:22.49rem){#calendar-workspace{margin-inline:-22px}.cal-zone-row,.cal-times-pane,.cal-status,.cal-error{margin-inline:22px}.cal-month-nav{padding-inline:6px}.cal-legend{padding-inline:6px}.rc-main h1{font-size:34px}.rc-dialog{padding:var(--space-md)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.rc-main *,.rc-dialog *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(forced-colors:active){.rc-accent{background:none;color:CanvasText}.cal-day-dot{background:CanvasText}.cal-day[aria-pressed="true"],#calendar-grid td[aria-selected="true"] .cal-day,.cal-time[aria-pressed="true"]{outline:2px solid Highlight}.cal-day[aria-disabled="true"]{opacity:1;color:GrayText}}
body.rc-booking-visible .ou-fab{display:none!important}

.cal-zone-row select{outline:2px solid var(--color-clear);outline-offset:1px}
.rc-main .cal-zone-row select:focus-visible{outline-color:var(--color-focus);outline-offset:1px}
.cal-zone-row select:disabled{opacity:.55;cursor:not-allowed}
@media(hover:hover){.cal-zone-row select:not(:disabled):hover{border-color:var(--color-accent)}}

/* SENDING STATE (2026-09-30). The review dialog stays open while the request
   files and shows progress; before this the dialog closed and the page sat
   still for the seconds a cold function takes, which read as a freeze. */
.rc-sending{display:flex;align-items:center;gap:10px;margin-top:var(--space-lg);font-size:var(--text-small);color:var(--color-muted)}
.rc-sending[hidden]{display:none}
.rc-sending.is-idle .ou-spin{display:none}
.ou-spin{width:16px;height:16px;border-radius:50%;border:2px solid rgba(255,255,255,.18);border-top-color:var(--color-accent);animation:ou-spin .8s linear infinite;flex:none}
@keyframes ou-spin{to{transform:rotate(360deg)}}
.rc-dialog button[disabled]{opacity:.55;cursor:wait}
.btn.is-sending{position:relative;padding-left:2.4em}
.btn.is-sending::before{content:"";position:absolute;left:1em;top:50%;width:14px;height:14px;margin-top:-7px;border-radius:50%;border:2px solid rgba(0,0,0,.25);border-top-color:currentColor;animation:ou-spin .8s linear infinite}
@media(prefers-reduced-motion:reduce){.ou-spin,.btn.is-sending::before{animation-duration:2s}}
