.aa-contact-page{--purple:#7627A4;--purple-deep:#5A1C82;--purple-soft:#F3ECF8;--gold:#F1C12E;--gold-deep:#D9A91A;--ink:#22252A;--slate:#5C5F6A;--bg-soft:#F6F4FA;--line:#ECE7F2;--shadow:0 18px 50px -22px rgba(90,28,130,.35);--disp:'Sora',system-ui,sans-serif;--body:'Inter',system-ui,sans-serif}
.aa-contact-page .aa-c *{box-sizing:border-box}
.aa-contact-page .aa-c{font-family:var(--body);color:var(--ink)}
.aa-contact-page .aa-c .wrap{max-width:1200px;margin:0 auto;padding:0 28px}
.aa-contact-page .aa-c h1,.aa-contact-page .aa-c h2,.aa-contact-page .aa-c h3{font-family:var(--disp);line-height:1.07;letter-spacing:-.02em;color:var(--ink)}
.aa-contact-page .aa-c .eyebrow{font-family:var(--disp);font-weight:700;font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--purple)}
.aa-contact-page .slot-tag{position:absolute;top:12px;left:12px;z-index:5;background:var(--ink);color:#fff;font-family:var(--disp);font-weight:600;font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;padding:5px 10px;border-radius:7px;opacity:.85}

/* HERO */
.aa-contact-page .aa-hero{position:relative;padding:46px 0 30px;overflow:hidden;text-align:center;background:radial-gradient(900px 500px at 85% -10%,rgba(118,39,164,.12),transparent 60%),radial-gradient(700px 500px at -5% 40%,rgba(241,193,46,.12),transparent 55%)}
.aa-contact-page .aa-hero .crumb{font-size:.82rem;color:var(--slate);padding:18px 0 0;text-align:left}
.aa-contact-page .aa-hero .crumb a{color:var(--purple);font-weight:600}
.aa-contact-page .aa-hero h1{font-size:clamp(2.6rem,6vw,4.4rem);font-weight:800;margin:12px auto 16px;max-width:14em}
.aa-contact-page .aa-hero h1 .grad{background:linear-gradient(100deg,var(--purple),var(--gold));-webkit-background-clip:text;background-clip:text;color:transparent}
.aa-contact-page .aa-hero p.lead{font-size:1.12rem;color:var(--slate);max-width:34em;margin:0 auto}

/* CONTACT GRID */
.aa-contact-page .contact-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:30px;align-items:start}
.aa-contact-page .form-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:38px;box-shadow:var(--shadow)}
.aa-contact-page .form-card h2{font-size:1.5rem;font-weight:800;margin-bottom:6px}
.aa-contact-page .form-card .sub{color:var(--slate);font-size:.95rem;margin-bottom:24px}

/* Elementor form restyle to match HTML */
.aa-contact-page .form-card .elementor-field-group{margin-bottom:4px}
.aa-contact-page .form-card .elementor-field-label{font-family:var(--disp);font-weight:600;font-size:.84rem;margin-bottom:7px;color:var(--ink)}
.aa-contact-page .form-card input[type=text],.aa-contact-page .form-card input[type=email],.aa-contact-page .form-card input[type=tel],.aa-contact-page .form-card input[type=url],.aa-contact-page .form-card textarea,.aa-contact-page .form-card select{width:100%;font-family:var(--body);font-size:.98rem;padding:13px 15px;border:1.5px solid var(--line);border-radius:12px;background:var(--bg-soft);transition:border-color .2s,background .2s;color:var(--ink)}
.aa-contact-page .form-card input:focus,.aa-contact-page .form-card textarea:focus,.aa-contact-page .form-card select:focus{outline:none;border-color:var(--purple);background:#fff}
.aa-contact-page .form-card textarea{resize:vertical;min-height:120px}
/* service checkboxes as chips */


.aa-contact-page .form-card .elementor-field-subgroup input[type=checkbox]{position:absolute;opacity:0;width:0;height:0}
.aa-contact-page .form-card .elementor-field-subgroup label{display:inline-flex;align-items:center;gap:7px;font-family:var(--disp);font-weight:600;font-size:.88rem;padding:9px 16px;border-radius:999px;border:1.5px solid var(--line);background:#fff;transition:.2s;cursor:pointer;margin:0}
.aa-contact-page .form-card .elementor-field-subgroup input[type=checkbox]:checked + label{background:var(--purple);color:#fff;border-color:var(--purple);box-shadow:0 8px 18px -8px rgba(118,39,164,.7)}
.aa-contact-page .form-card .elementor-field-subgroup label:hover{border-color:var(--purple)}
/* submit button */
.aa-contact-page .form-card .elementor-button{background:var(--purple);color:#fff;font-family:var(--disp);font-weight:600;font-size:1.02rem;padding:1em;border-radius:999px;width:100%;justify-content:center;box-shadow:0 10px 24px -10px rgba(118,39,164,.7);transition:transform .25s,background .25s;border:0}
.aa-contact-page .form-card .elementor-button:hover{background:var(--purple-deep);transform:translateY(-2px)}
.aa-contact-page .form-note{font-size:.78rem;color:var(--slate);margin-top:6px}

/* SIDE DETAILS */
.aa-contact-page .side-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:30px;box-shadow:var(--shadow);margin-bottom:22px}
.aa-contact-page .side-card h3{font-size:1.15rem;font-weight:800;margin-bottom:18px}
.aa-contact-page .info{display:flex;gap:14px;align-items:flex-start;margin-bottom:18px}
.aa-contact-page .info:last-child{margin-bottom:0}
.aa-contact-page .info .ic{width:44px;height:44px;border-radius:12px;background:var(--purple-soft);display:grid;place-items:center;font-size:1.2rem;flex:0 0 44px}
.aa-contact-page .info .lab{font-family:var(--disp);font-weight:700;font-size:.82rem;color:var(--slate)}
.aa-contact-page .info .val{font-weight:600;font-size:.98rem;color:var(--ink)}
.aa-contact-page .info .val a{color:var(--ink)}
.aa-contact-page .info .val a:hover{color:var(--purple)}
.aa-contact-page .resp{display:flex;align-items:center;gap:10px;background:linear-gradient(120deg,var(--purple-deep),var(--purple));color:#fff;border-radius:16px;padding:16px 20px;font-family:var(--disp);font-weight:600;font-size:.95rem}
.aa-contact-page .resp .dot{width:10px;height:10px;border-radius:50%;background:#4ade80;box-shadow:0 0 0 0 rgba(74,222,128,.7);animation:aac-live 2s infinite;flex:0 0 10px}
@keyframes aac-live{0%{box-shadow:0 0 0 0 rgba(74,222,128,.6)}70%{box-shadow:0 0 0 10px rgba(74,222,128,0)}100%{box-shadow:0 0 0 0 rgba(74,222,128,0)}}

/* MAP */
.aa-contact-page .map-card{border-radius:24px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);position:relative;margin-top:22px}
.aa-contact-page .map-slot{aspect-ratio:4/3;background:repeating-linear-gradient(45deg,#efe9f6,#efe9f6 16px,#f6f1fb 16px,#f6f1fb 32px);display:grid;place-items:center;position:relative}
.aa-contact-page .map-slot .pin{font-size:2.6rem;animation:aac-bob 2.4s ease-in-out infinite}
@keyframes aac-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.aa-contact-page .map-slot .ph{position:absolute;bottom:18px;left:0;right:0;text-align:center;font-family:var(--disp);font-weight:700;color:#8a72a0;font-size:.85rem;padding:0 16px}

@media(max-width:900px){
  .aa-contact-page .contact-grid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.aa-contact-page .aa-c *{animation:none!important;transition:none!important}}

/* ===== SERVICE PICKER HORIZONTAL (forceful) ===== */
.aa-contact-page .form-card .elementor-field-subgroup{display:flex!important;flex-wrap:wrap;gap:10px;flex-direction:row!important}
.aa-contact-page .form-card .elementor-field-subgroup .elementor-field-option{display:inline-flex!important;width:auto!important;flex:0 0 auto;margin:0}
