/* RA-CUSTOMER-JOURNEY-01: Template v3.1 dialog/drawer, fields and RA button tokens. */
[data-ra-enquiry], [data-ra-idc]{max-width:100%;min-width:0}
:is([data-ra-enquiry],[data-ra-idc]) .ra-cta-label{white-space:normal;overflow-wrap:normal;text-wrap:balance;line-height:1.5}
.ra-cj{--cj-pad:24px;box-sizing:border-box;padding:0;margin:0 0 0 auto;inset:0 0 0 auto;width:min(520px,100%);max-width:100%;height:100dvh;max-height:100dvh;border:1px solid var(--line);border-radius:0;color:var(--ink);background:var(--paper);font-family:'Open Sans',Arial,sans-serif;overflow:hidden}
.ra-cj:not([open]){display:none}.ra-cj[open]{display:flex;flex-direction:column}.ra-cj::backdrop{background:#281f2a99}
.ra-cj-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:var(--cj-pad);border-bottom:1px solid var(--line);flex:none}
.ra-cj-eyebrow{margin:0 0 8px;color:var(--red-ink);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.ra-cj h2{font-size:28px;line-height:1.22;letter-spacing:-.025em;color:var(--plum);margin:0;overflow-wrap:break-word}
.ra-cj-close{width:44px;height:44px;min-height:44px;flex:none;border:1px solid var(--line);border-radius:var(--button-radius);background:var(--paper);color:var(--plum);font:inherit;font-size:26px;cursor:pointer}
.ra-cj-content{overflow-y:auto;overscroll-behavior:contain;min-height:0;padding:var(--cj-pad);flex:1;scroll-padding-block:20px}
.ra-cj-panel{font-family:'Open Sans',Arial,sans-serif;color:var(--ink);min-width:0}.ra-cj-panel [hidden]{display:none!important}
.ra-cj-panel p{font-size:14px;line-height:1.7;color:var(--muted);margin:0 0 20px}.ra-cj-panel .ra-cj-context{font-size:12px;line-height:1.6;margin:0 0 16px;overflow-wrap:break-word}
.ra-cj-notice{padding:20px;border:1px solid var(--line);border-left:3px solid var(--red);border-radius:var(--button-radius);background:var(--soft);margin-bottom:24px}.ra-cj-notice p:last-child{margin-bottom:0}
.ra-cj-actions{display:flex;flex-direction:column;gap:12px}.ra-cj-actions .ra-button{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:48px;padding:12px 16px;border-radius:var(--button-radius);font:inherit;font-size:14px;line-height:1.5;font-weight:700;text-align:center;box-sizing:border-box;text-decoration:none;cursor:pointer}
.ra-cj-panel .ra-primary{color:white;background:var(--red-ink);border:1px solid var(--red-ink)}.ra-cj-panel .ra-secondary{color:var(--plum);background:var(--paper);border:1px solid var(--line)}
.ra-cj-panel .ra-cj-tertiary{display:inline-flex;align-self:flex-start;min-height:44px;align-items:center;font-size:13px;color:var(--plum);text-decoration:underline;text-underline-offset:4px}
.ra-cj-form{display:grid;gap:20px}.ra-cj-form fieldset{border:0;padding:0;margin:0;min-width:0;display:grid;gap:20px}
.ra-cj-field{min-width:0}.ra-cj-field label{display:block;font-size:14px;font-weight:600;line-height:1.5;color:var(--plum);margin-bottom:8px}.ra-cj-field input,.ra-cj-field textarea{box-sizing:border-box;width:100%;max-width:100%;min-height:48px;padding:12px;border:1px solid var(--line);border-radius:var(--button-radius);background:var(--paper);color:var(--ink);font:inherit;font-size:16px;line-height:1.5}
.ra-cj-field textarea{resize:vertical;min-height:100px}.ra-cj-form summary{min-height:44px;display:flex;align-items:center;color:var(--plum);font-size:14px;font-weight:600;cursor:pointer}.ra-cj-form details[open] summary{margin-bottom:12px}
.ra-cj-form .ra-cj-hint{font-size:12px;margin:6px 0 0}.ra-cj-form .ra-cj-error{font-size:13px;color:var(--red-ink);margin:6px 0 0}.ra-cj-error-summary{border-left:3px solid var(--red);padding:12px 16px;background:var(--soft);margin-bottom:20px;color:var(--plum);font-size:14px}
.ra-cj-consent{display:flex;gap:10px;align-items:flex-start;font-size:12px;line-height:1.7;color:var(--muted);cursor:pointer;padding-block:8px}.ra-cj-consent input{width:18px;height:18px;flex:none;margin:3px 0 0;accent-color:var(--red-ink)}.ra-cj-consent a{color:var(--plum);text-decoration:underline;text-underline-offset:3px}
.ra-cj-form button:disabled{opacity:.65;cursor:wait}.ra-cj-reference{font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.ra-cj-panel button:focus-visible,.ra-cj-panel a:focus-visible,.ra-cj-field :is(input,textarea):focus-visible,.ra-cj-close:focus-visible{outline:3px solid var(--plum);outline-offset:3px}
.ra-cj-embedded{padding:0}.ra-cj-embedded h2{font-size:26px;line-height:1.25;color:var(--plum);margin:0 0 20px}.ra-cj-copy{border:0;background:none;padding:0;color:var(--plum);font:inherit;font-size:12px;min-height:44px;cursor:pointer;text-decoration:underline}
.ra-cj-sticky{display:none}.ra-cj-sticky[hidden]{display:none!important}
@media(max-width:767px){.ra-cj{--cj-pad:20px;inset:0;margin:0;width:100%;max-width:100%;border:0;height:var(--ra-cj-viewport,100dvh);max-height:var(--ra-cj-viewport,100dvh)}.ra-cj-content{padding-bottom:calc(24px + env(safe-area-inset-bottom,0px))}.ra-cj-copy{display:none}.ra-cj-sticky{display:block;position:fixed;inset:auto 0 0;z-index:45;padding:12px 20px calc(12px + env(safe-area-inset-bottom,0px));background:var(--paper);border-top:1px solid var(--line)}.ra-cj-sticky .ra-button{width:100%;justify-content:center;min-height:48px;white-space:normal;text-align:center;font-size:14px;line-height:1.5}.ra-cj-sticky-space{padding-bottom:calc(var(--ra-cj-sticky-height,80px) + env(safe-area-inset-bottom,0px))}}
@media(prefers-reduced-motion:reduce){.ra-cj,.ra-cj-panel *{scroll-behavior:auto!important;transition:none!important}}

/* The legacy Contact grid must honour the unavailable-service gate. */
[data-contact-preview][hidden]{display:none!important}

.ra-cj-header>div{min-width:0}.ra-cj h2:focus{outline:none}
