/* MPG9 only. Shared header/footer, form validation and FAQ behavior remain native. */
.ef-registration-city .svc-hero .lead{max-width:850px}
.ef-reg-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:32px;align-items:start;padding-top:40px;padding-bottom:48px}
.ef-reg-layout>aside{grid-column:2;grid-row:1;position:sticky;top:100px;min-width:0}
.ef-reg-content{grid-column:1;grid-row:1;min-width:0}
.ef-reg-content>section{margin-bottom:48px}
.ef-reg-content h2{font-size:clamp(1.4rem,2.7vw,2rem);line-height:1.2;margin:16px 0 24px;overflow-wrap:break-word}
.ef-reg-content p{margin:0 0 18px;line-height:1.75}
.ef-reg-content ul{padding-left:22px;line-height:1.75}
.ef-reg-content li+li{margin-top:10px}
.ef-reg-content a,.ef-reg-links a{text-decoration:underline;text-underline-offset:4px}
.ef-reg-case{background:linear-gradient(135deg,#efff9c,#d8f3df);border-radius:28px;padding:32px}
.ef-reg-case small{display:block;line-height:1.5;color:var(--muted);font-size:.8rem}
.ef-reg-form{background:#fff;border:1px solid var(--line);border-radius:28px;padding:26px;box-shadow:0 12px 36px #0d16100d}
.ef-reg-form h2{font-size:1.4rem;line-height:1.25;margin:0 0 16px}
.ef-reg-form>p{font-size:.9rem;line-height:1.6;margin:0 0 20px;color:var(--muted)}
.ef-reg-form .field{margin:0 0 16px}
.ef-reg-form .field label{display:block;margin:0 0 8px}
.ef-reg-form input:not([type=checkbox]):not([type=hidden]){width:100%;min-width:0}
.ef-reg-form .consent{display:grid!important;grid-template-columns:16px minmax(0,1fr);align-items:start;gap:10px;margin:20px 0;font-size:12px;line-height:18px}
.ef-reg-form .consent>span,.ef-reg-form .consent .wpcf7-list-item{margin:0}
.ef-reg-form .consent input{width:16px;height:16px;margin:1px 0 0}
.ef-reg-form .btn{width:100%;white-space:normal}
.ef-reg-form .ef-reg-private{margin-top:16px;font-size:.76rem;line-height:1.5}
.ef-reg-links{display:flex;flex-direction:column;gap:16px}
.ef-reg-cities{padding:48px 0;background:#f6f8f2}
.ef-reg-cities h2{font-size:clamp(1.6rem,3vw,2.3rem);line-height:1.25;margin-bottom:28px}
.ef-reg-city-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.ef-reg-city-link{background:white;border:1px solid var(--line);border-radius:18px;padding:18px;font-weight:650;overflow-wrap:break-word}
.ef-reg-final{padding:40px 0 56px}
.ef-reg-final .wrap>div{padding:32px;border-radius:28px;background:linear-gradient(120deg,#dfff65,#8fdfce)}
.ef-reg-final h2{font-size:clamp(1.6rem,3.4vw,2.5rem);line-height:1.2;margin:0 0 24px}
.ef-reg-final p{line-height:1.7;margin-bottom:28px}
@media(max-width:1000px){.ef-reg-layout{grid-template-columns:minmax(0,1fr) 310px;gap:24px}.ef-reg-form{padding:22px}.ef-reg-city-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:767px){.ef-reg-layout{display:flex;flex-direction:column;gap:40px;padding-top:28px}.ef-reg-layout>aside{position:static;width:100%}.ef-reg-content{width:100%}.ef-reg-case{padding:22px}.ef-reg-content>section{margin-bottom:40px}.ef-reg-city-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ef-reg-final .wrap>div{padding:24px}.ef-reg-final .btn{width:100%;white-space:normal;text-align:center}}
@media(max-width:359px){.ef-reg-city-grid{grid-template-columns:1fr}}

.ef-city-dock{position:fixed;z-index:96;inset-inline:0;bottom:0;background:#fff;border-block-start:1px solid var(--line,#e7eae5);box-shadow:0 -8px 28px rgba(15,21,18,.12);padding-block:12px calc(12px + env(safe-area-inset-bottom,0px));opacity:0;visibility:hidden;transform:translateY(calc(100% + 32px));pointer-events:none;transition:opacity .22s ease,transform .28s ease,visibility 0s linear .28s}
.ef-city-dock[hidden]{display:none}
.ef-city-dock.is-visible{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto;transition-delay:0s}
.ef-city-dock .wrap{padding-inline:max(var(--page-pad-x,16px),16px)}
.ef-city-dock .btn{width:100%;min-height:48px;padding:12px 20px;text-align:center;white-space:normal;font-size:15px;line-height:1.4}
@media(min-width:768px){.ef-city-dock{display:none!important}}
@media(prefers-reduced-motion:reduce){.ef-city-dock{transition:none;transform:none}}

/* Fixed header clearance and native CF7 local form controls. */
.ef-registration-city .svc-hero{padding-top:clamp(100px,10vw,128px)}
.ef-reg-form input:not([type=checkbox]):not([type=hidden]):not([type=submit]){box-sizing:border-box;min-height:52px;padding:14px 16px;border:1px solid var(--line);border-radius:18px;background:#f6f8f2;color:var(--text,#101712);font:inherit;font-size:16px}
.ef-reg-form .consent{display:block!important}
.ef-reg-form .consent>span{display:block}
.ef-reg-form .consent .wpcf7-list-item>label{display:grid;grid-template-columns:16px minmax(0,1fr);gap:10px;align-items:start}
