/* Use the live site's WordPress typography and colour presets. No duplicate font download. */
.rms-sessions{--rms-row-padding:.85rem;box-sizing:border-box;max-width:650px;margin:var(--wp--style--block-gap,1.2rem) 0;color:inherit;font-family:var(--wp--preset--font-family--manrope,inherit);font-size:var(--wp--preset--font-size--medium,1.125rem);font-weight:300;line-height:1.4;letter-spacing:inherit}
.rms-sessions h3{font-family:inherit;font-size:var(--wp--preset--font-size--large,1.375rem);font-weight:300;line-height:1.4;letter-spacing:inherit;margin:0 0 var(--wp--style--block-gap,1.2rem)}
.rms-sessions p{font:inherit;margin:var(--wp--style--block-gap,1.2rem) 0}
.rms-sessions fieldset{min-width:0;border:0;padding:0;margin:0 0 var(--wp--style--block-gap,1.2rem)}
.rms-sessions legend{font-family:inherit;font-size:var(--wp--preset--font-size--large,1.375rem);font-weight:inherit;line-height:1.4;margin-bottom:max(0px,calc(var(--wp--style--block-gap,1.2rem) - var(--rms-row-padding)));padding:0}
.rms-slots{display:flex;flex-direction:column;gap:0}
.rms-slot{display:flex;align-items:center;gap:.8rem;padding:var(--rms-row-padding) 0;border-bottom:1px solid color-mix(in srgb,currentColor 20%,transparent);cursor:pointer;font:inherit}
.rms-slot:has(input:checked) .rms-slot-copy>span{text-decoration:underline;text-underline-offset:.2em}
.rms-slot input{margin:0;flex-shrink:0;width:1rem;height:1rem;accent-color:var(--wp--preset--color--contrast,#111)}
.rms-slot span{overflow-wrap:anywhere;font:inherit}
.rms-details label{display:block;margin-bottom:.35rem;font:inherit}
.rms-details input[type=text],.rms-details input[type=email]{box-sizing:border-box;width:100%;padding:.75rem;font:inherit;color:inherit;background:transparent;border:1px solid color-mix(in srgb,currentColor 35%,transparent);border-radius:0}
.rms-sessions .wp-element-button{display:inline-block;background:var(--wp--preset--color--contrast,#111);color:var(--wp--preset--color--base,#fff);border:0;border-radius:0;padding:1rem 2.25rem;font:inherit;text-decoration:none;cursor:pointer}
.rms-sessions .wp-element-button:hover{background:color-mix(in srgb,var(--wp--preset--color--contrast,#111) 85%,transparent)}
.rms-sessions button:disabled{opacity:.6;cursor:wait}
.rms-sessions :focus-visible{outline:2px solid var(--wp--preset--color--accent-4,#686868);outline-offset:3px}
.rms-message:empty{display:none}
.rms-intro{padding-top:0;margin-top:calc(2 * var(--wp--style--block-gap,1.2rem) + var(--wp--preset--spacing--20,10px))}
.rms-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.rms-sessions [hidden]{display:none!important}
@media(max-width:480px){.rms-sessions{--rms-row-padding:.75rem}.rms-slot{padding:var(--rms-row-padding) 0}.rms-slot span{line-height:1.4}}

/* Introductory calls use a normal text link, rather than a filled button. */
.rms-sessions .rms-email{display:inline;padding:0;background:transparent;color:inherit;border:0;border-radius:0;box-shadow:none;font:inherit;text-decoration:underline;text-underline-offset:.2em}
.rms-sessions .rms-email:hover{background:transparent;color:inherit;text-decoration:none}

.rms-sessions .rms-slot-copy{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:.75rem;row-gap:.25rem;min-width:0}
.rms-sessions .rms-pending{font-family:inherit;font-size:var(--wp--preset--font-size--small,.875rem);font-weight:inherit;line-height:1.4}

/* Match the live information page's subtitle and spacer blocks. Keep these rules local to the booking form. */
.wp-block-post-content>.rms-sessions{width:100%;max-width:650px}
.wp-block-post-content>.rms-sessions:first-child{padding-block-start:var(--wp--preset--spacing--20,10px)}
.rms-sessions>.rms-title{font-size:clamp(1.5rem,1.5rem + ((1vw - .2rem)*.392),1.75rem);line-height:1.2;margin-bottom:calc(2 * var(--wp--style--block-gap,1.2rem) + var(--wp--preset--spacing--20,10px))}
.rms-sessions form{margin:0}
