:root{--c2-navy:#102943;--c2-gold:#b78b4d;--c2-ink:#142238;--c2-ivory:#f4f0e8}.alc-c2-open{overflow:hidden}.alc-c2[hidden]{display:none!important}.alc-c2{position:fixed;inset:0;z-index:999999;display:grid;place-items:center;padding:18px;opacity:0;transition:opacity .2s ease}.alc-c2.is-open{opacity:1}.alc-c2-backdrop{position:absolute;inset:0;background:rgba(5,18,31,.7);backdrop-filter:blur(9px)}.alc-c2-panel{position:relative;width:min(1080px,calc(100vw - 36px));max-height:calc(100vh - 36px);min-height:min(700px,calc(100vh - 36px));display:grid;grid-template-columns:minmax(300px,.78fr) minmax(0,1.2fr);background:#fff;overflow:hidden;box-shadow:0 40px 120px rgba(0,0,0,.3);transform:translateY(14px);transition:transform .22s ease}.is-open .alc-c2-panel{transform:none}.alc-c2-photo{background:var(--c2-ivory);min-height:100%;position:relative}.alc-c2-photo img{width:100%;height:100%;object-fit:cover;object-position:center top}.alc-c2-photo.is-empty{display:grid;place-items:end start;padding:34px;background:linear-gradient(145deg,#e8e1d5,#f8f6f1)}.alc-c2-photo.is-empty strong{display:block;font:400 32px/1 Georgia,serif;color:var(--c2-navy)}.alc-c2-photo.is-empty span{display:block;margin-top:8px;color:#657181}.alc-c2-content{padding:clamp(38px,5.5vw,76px);display:flex;flex-direction:column;justify-content:center;position:relative}.alc-c2-kicker{color:var(--c2-gold)!important;font:700 11px/1.2 system-ui,sans-serif!important;letter-spacing:.2em;margin:0 0 18px!important}.alc-c2 h2{font:400 clamp(40px,5vw,70px)/.98 Georgia,serif;color:var(--c2-navy);letter-spacing:-.035em;margin:0 0 20px}.alc-c2-step>p:not(.alc-c2-kicker){color:#617083;max-width:620px;font:400 16px/1.65 system-ui,sans-serif}.alc-c2-actions{display:grid;gap:9px;margin-top:26px}.alc-c2-actions a,.alc-c2-actions button,.alc-c2-services button{appearance:none;width:100%;border:1px solid #dce1e7;background:#fff;color:var(--c2-ink);text-decoration:none;display:flex;justify-content:space-between;align-items:center;min-height:58px;padding:0 18px;font:600 15px/1.2 system-ui,sans-serif;text-align:left;cursor:pointer;transition:.18s ease}.alc-c2-actions a:hover,.alc-c2-actions button:hover,.alc-c2-services button:hover{background:var(--c2-navy);border-color:var(--c2-navy);color:#fff;transform:translateX(3px)}.alc-c2-services{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:24px}.alc-c2-later,.alc-c2-back{border:0;background:none;padding:0;margin-top:18px;color:#687687;text-decoration:underline;text-underline-offset:4px;cursor:pointer}.alc-c2-back{margin:0 0 20px}.alc-c2-linkline{margin-top:20px!important}.alc-c2-linkline a{color:var(--c2-navy)}.alc-c2-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}.alc-c2-form label{display:grid;gap:6px;color:#3d4d60;font:600 12px/1.3 system-ui,sans-serif}.alc-c2-form label:nth-of-type(4),.alc-c2-form .check{grid-column:1/-1}.alc-c2-form input,.alc-c2-form textarea{width:100%;box-sizing:border-box;border:1px solid #d8dee5;padding:12px 13px;font:400 15px/1.4 system-ui,sans-serif;background:#fff}.alc-c2-form .check{display:flex;align-items:flex-start;font-weight:400}.alc-c2-form .check input{width:auto;margin-top:2px}.alc-c2-submit{grid-column:1/-1;border:0;background:var(--c2-navy);color:#fff!important;text-decoration:none;padding:16px 20px;font:700 14px/1 system-ui,sans-serif;cursor:pointer;text-align:center}.alc-c2-sign{margin-top:28px;display:flex;gap:8px;align-items:baseline;color:var(--c2-ink);font:500 13px/1.3 system-ui,sans-serif}.alc-c2-sign span{color:#7b8590}.alc-c2-close{position:absolute;right:16px;top:16px;z-index:5;width:42px;height:42px;border-radius:50%;border:1px solid rgba(16,41,67,.18);background:rgba(255,255,255,.9);color:var(--c2-navy);font:300 27px/1 sans-serif;cursor:pointer}.alc-c2-trigger{position:fixed;right:18px;bottom:18px;z-index:99990;border:0;border-radius:999px;padding:13px 18px;background:var(--c2-navy);color:#fff;box-shadow:0 10px 30px rgba(16,41,67,.25);font:700 13px/1 system-ui,sans-serif;cursor:pointer}@media(max-width:780px){.alc-c2{padding:8px}.alc-c2-panel{width:calc(100vw - 16px);max-height:calc(100vh - 16px);min-height:0;grid-template-columns:1fr;overflow:auto}.alc-c2-photo{height:28vh;min-height:180px;order:-1}.alc-c2-content{padding:28px 22px 34px}.alc-c2 h2{font-size:clamp(36px,11vw,52px)}.alc-c2-services,.alc-c2-form{grid-template-columns:1fr}.alc-c2-form label:nth-of-type(4),.alc-c2-form .check,.alc-c2-submit{grid-column:auto}}@media(prefers-reduced-motion:reduce){.alc-c2,.alc-c2-panel,.alc-c2-actions a,.alc-c2-actions button,.alc-c2-services button{transition:none!important;transform:none!important}}
/* 2.1 typeform-style transitions */
.alc-c2-progress{position:absolute;left:clamp(38px,5.5vw,76px);right:clamp(38px,5.5vw,76px);top:24px;display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.alc-c2-progress span{height:2px;background:#e5e8ec;transition:background .25s ease,transform .25s ease;transform-origin:left}.alc-c2-progress span.is-current{background:var(--c2-gold)}.alc-c2-step.is-active{animation:alcC2Step .28s ease both}@keyframes alcC2Step{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.alc-c2-trigger{display:inline-flex;align-items:center;gap:8px}.alc-c2-trigger:before{content:'✦';font-size:12px;color:#e6c590}@media(max-width:780px){.alc-c2-progress{left:22px;right:22px;top:16px}.alc-c2-content{padding-top:46px}}@media(prefers-reduced-motion:reduce){.alc-c2-step.is-active{animation:none!important}}
/* 2.2 modal hardening */
.alc-c2-panel{border-radius:18px}.alc-c2-actions a:focus-visible,.alc-c2-actions button:focus-visible,.alc-c2-services button:focus-visible,.alc-c2-close:focus-visible,.alc-c2-submit:focus-visible{outline:3px solid color-mix(in srgb,var(--c2-gold) 75%,#fff);outline-offset:3px}
@media(max-width:520px){.alc-c2{padding:0}.alc-c2-panel{width:100vw;max-height:100dvh;min-height:100dvh;border-radius:0}.alc-c2-photo{height:22dvh;min-height:140px}.alc-c2-content{padding:44px 20px calc(28px + env(safe-area-inset-bottom))}.alc-c2-trigger{right:14px;bottom:calc(14px + env(safe-area-inset-bottom))}.alc-c2 h2{font-size:clamp(34px,10vw,46px)}}
.alc-c2-explore{display:inline-flex;margin-top:.8rem;color:inherit;text-decoration:none;font-size:.88rem;font-weight:650;border-bottom:1px solid currentColor;padding-bottom:.15rem}.alc-c2-explore[hidden]{display:none!important}
