/* =========================================================================
   Alrasly — Audit-request modal (service pages)
   The same Fluent form (styled by form.css) inside an overlay panel. Square,
   navy scrim, 3px blue top accent, full-screen sheet < 600px. Sitewide reveal
   motion (fade + 12px, 250ms); reduced-motion instant. Brand law supreme.
   ========================================================================= */

.aud-modal{ position:fixed; inset:0; z-index:1000; display:none; }
/* is-active toggles display; is-open drives the fade/translate one frame later */
.aud-modal.is-active{
	display:flex; align-items:flex-start; justify-content:center;
	overflow-y:auto; padding:var(--space-7) var(--space-5);
}

/* navy scrim — click to close */
.aud-modal__overlay{
	position:fixed; inset:0; background:rgba(41,37,97,.6);
	opacity:0; transition:opacity .25s ease;
}
.aud-modal.is-open .aud-modal__overlay{ opacity:1; }

/* panel — white card, 3px blue top accent */
.aud-modal__panel{
	position:relative; z-index:1; width:100%; max-width:640px; margin:auto;
	background:var(--white); border-top:3px solid var(--blue);
	padding:var(--space-7) var(--space-6) var(--space-6);
	opacity:0; transform:translateY(12px); transition:opacity .25s ease, transform .25s ease;
}
.aud-modal.is-open .aud-modal__panel{ opacity:1; transform:none; }

/* close — square 44px target */
.aud-modal__close{
	position:absolute; top:0; inset-inline-end:0; width:44px; height:44px;
	display:inline-flex; align-items:center; justify-content:center;
	background:transparent; border:0; cursor:pointer;
	font-size:28px; line-height:1; color:var(--navy);
	transition:background-color .15s ease, color .15s ease;
}
.aud-modal__close:hover{ background:var(--offwhite); color:var(--blue); }
.aud-modal__close:focus-visible{ outline:2px solid var(--blue); outline-offset:-2px; }

/* heading */
.aud-modal__title{
	font-size:var(--fs-h3); line-height:var(--lh-h3); font-weight:var(--fw-bold);
	color:var(--navy); margin:0 var(--space-7) var(--space-1) 0; letter-spacing:-.4px;
}
.aud-modal__lead{ font-size:var(--fs-body); color:var(--ink); margin:0 0 var(--space-5); }
.aud-modal__form{ margin:0; }

/* body scroll lock while open */
body.aud-noscroll{ overflow:hidden; }

/* full-screen sheet on small screens */
@media (max-width:599.98px){
	.aud-modal.is-active{ padding:0; align-items:stretch; }
	.aud-modal__panel{ max-width:none; min-height:100%; margin:0; padding:var(--space-7) var(--space-5) var(--space-6); }
}

@media (prefers-reduced-motion:reduce){
	.aud-modal__overlay,
	.aud-modal__panel{ transition:none !important; }
	.aud-modal__panel{ transform:none !important; }
}
