/* Ahmed Kadry – Consultation Form — frontend */
.akcf {
  --akcf-primary: var(--theme-primary, #0F2A53);
  --akcf-secondary: var(--theme-secondary, #A29386);
  --akcf-bg: var(--theme-bg, #F5F2EE);
  --akcf-card-bg: var(--theme-card_bg, #FFFFFF);
  --akcf-text: var(--theme-text, #313236);
  --akcf-text-muted: var(--theme-text_muted, #7B7C80);
  --akcf-border: var(--theme-border, #C3C3C7);
  --akcf-error: var(--theme-error, #8A3B3B);
  --akcf-success: var(--theme-success, #2E7D32);
  --akcf-font: var(--theme-font_family, 'Cairo', 'IBM Plex Sans', sans-serif);
  --akcf-heading-size: var(--theme-heading_size, clamp(2rem, 4.4vw, 3.4rem));
  --akcf-body-size: var(--theme-body_size, clamp(1rem, 1.5vw, 1.12rem));
  --akcf-label-size: var(--theme-label_size, 1rem);
  --akcf-input-size: var(--theme-input_size, 1rem);
  --akcf-radius: var(--theme-radius, 999px);
  --akcf-card-radius: var(--theme-card_radius, clamp(28px, 4vw, 48px));
  --akcf-btn-bg: var(--theme-primary_bg, #0F2A53);
  --akcf-btn-text: var(--theme-primary_text, #EDE7E0);
  --akcf-btn-hover: var(--theme-primary_hover, #1a3a6e);
  --akcf-btn-radius: var(--theme-radius, 999px);
  --akcf-btn-shadow: var(--theme-shadow, 0 16px 34px rgba(15,42,83,.3));
  --akcf-input-border: var(--theme-border, #C3C3C7);
  --akcf-input-focus: var(--theme-focus_ring, rgba(162,147,134,.28));
  --akcf-input-placeholder: var(--theme-placeholder, #9A9BA0);
  --akcf-input-bg: var(--theme-bg, #FFFFFF);
  --akcf-section-padding: var(--theme-section_padding, clamp(56px, 9vw, 110px));
  --akcf-field-gap: var(--theme-field_gap, 26px 22px);
  --akcf-input-padding: var(--theme-input_padding, 14px 24px);
  --akcf-input-height: var(--theme-input_height, 58px);
  --akcf-textarea-height: var(--theme-textarea_height, 160px);
  --akcf-select-height: var(--theme-select_height, 58px);
  --akcf-chip-height: var(--theme-chip_height, 48px);
  --akcf-chip-font-size: var(--theme-chip_font_size, 1rem);
  --akcf-checkbox-size: var(--theme-checkbox_size, 26px);
  --akcf-radio-size: var(--theme-radio_size, 26px);
  --akcf-submit-width: var(--theme-submit_width, auto);
  --akcf-submit-height: var(--theme-submit_height, 58px);
  --akcf-submit-font-size: var(--theme-submit_font_size, 1.1rem);
  --akcf-submit-padding: var(--theme-submit_padding, 18px 40px);
  --akcf-wa-btn-width: var(--theme-wa_btn_width, auto);
  --akcf-wa-btn-height: var(--theme-wa_btn_height, 58px);
  --akcf-wa-btn-font-size: var(--theme-wa_btn_font_size, 1rem);
  --akcf-wa-btn-padding: var(--theme-wa_btn_padding, 16px 28px);

  font-family: var(--akcf-font);
  color: var(--akcf-text);
  background: var(--akcf-bg);
  overflow: hidden;
}
.akcf--beige{background:var(--akcf-secondary)}
html[lang^="en"] .ak-cf-ar{display:none!important}
html:not([lang^="en"]) .ak-cf-en{display:none!important}
.akcf *{box-sizing:border-box}
.akcf__in{max-width:1280px;margin:auto;padding:var(--akcf-section-padding) 24px;display:grid;grid-template-columns:.8fr 1.2fr;gap:var(--akcf-field-gap);align-items:start}

/* info side */
.akcf__info{position:sticky;top:110px}
.akcf__eb{display:flex;align-items:center;gap:14px;color:var(--akcf-secondary);font:500 .8rem 'IBM Plex Sans',monospace;letter-spacing:.22em;margin-bottom:18px}
.akcf__eb::after{content:"";width:56px;height:1.5px;background:var(--akcf-secondary)}
.akcf__h{margin:0;font-weight:800;font-size:var(--akcf-heading-size);line-height:1.3;color:var(--akcf-primary)}
.akcf__p{margin:18px 0 0;line-height:2;font-size:var(--akcf-body-size);opacity:.78}
.akcf__list{list-style:none;margin:26px 0 0;padding:0;display:grid;gap:14px}
.akcf__list li{display:flex;align-items:center;gap:14px;font-size:1.05rem;opacity:0;animation:akcf-in .6s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:calc(var(--i)*.12s + .2s)}
@keyframes akcf-in{from{opacity:0;translate:0 14px}to{opacity:1;translate:0 0}}
.akcf-ck{flex:none;width:34px;height:34px;border-radius:50%;border:1.5px solid var(--akcf-secondary);color:var(--akcf-secondary);display:grid;place-items:center}
.akcf-ck svg{width:16px;height:16px}
.akcf__wa{display:inline-flex;align-items:center;gap:12px;margin-top:30px;width:var(--akcf-wa-btn-width);height:var(--akcf-wa-btn-height);padding:var(--akcf-wa-btn-padding);border-radius:999px;border:1.5px solid rgba(195,195,199,.95);background:rgba(255,255,255,.5);color:var(--akcf-primary);font-weight:800;font-size:var(--akcf-wa-btn-font-size);text-decoration:none;transition:transform .25s,background .25s,border-color .25s}
.akcf__wa svg{width:24px;height:24px}
.akcf__wa:hover{transform:translateY(-3px);background:#fff;border-color:var(--akcf-secondary)}

/* card + fields */
.akcf__card{position:relative;padding:clamp(22px,4vw,52px);border-radius:var(--akcf-card-radius);background:var(--akcf-card-bg);border:1px solid rgba(195,195,199,.6);box-shadow:0 30px 70px rgba(15,42,83,.1)}
.akcf__grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--akcf-field-gap)}
.akcf-f{display:flex;flex-direction:column;gap:10px;opacity:0;animation:akcf-in .6s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:calc(var(--i)*.05s + .1s)}
.akcf-f--full{grid-column:1/-1}
.akcf-lb{display:block;font-weight:800;color:var(--akcf-primary);font-size:var(--akcf-label-size);line-height:1.5}
.akcf-req{color:var(--akcf-secondary);margin-inline-start:6px}
.akcf-opt{margin-inline-start:6px;font-weight:400;color:var(--akcf-text-muted);font-size:.92rem}
.akcf-in{width:100%;min-height:var(--akcf-input-height);padding:var(--akcf-input-padding);border:1.5px solid var(--akcf-input-border);border-radius:var(--akcf-radius);background:var(--akcf-input-bg);color:var(--akcf-text);font:400 var(--akcf-input-size) var(--akcf-font);transition:border-color .25s,box-shadow .25s;appearance:none;-webkit-appearance:none}
.akcf-in::placeholder{color:var(--akcf-input-placeholder)}
.akcf-in:hover{border-color:var(--akcf-secondary)}
.akcf-in:focus{outline:none;border-color:var(--akcf-primary);box-shadow:0 0 0 4px var(--akcf-input-focus)}
.akcf-ta{min-height:var(--akcf-textarea-height);border-radius:30px;resize:vertical;line-height:1.9}
.akcf-sel{position:relative}
.akcf-sel select{padding-inline-end:52px;cursor:pointer;min-height:var(--akcf-select-height)}
.akcf-sel::after{content:"";position:absolute;inset-inline-end:22px;top:50%;width:9px;height:9px;margin-top:-6px;border-inline-end:2px solid var(--akcf-primary);border-bottom:2px solid var(--akcf-primary);transform:rotate(45deg);pointer-events:none}
.akcf-f[aria-invalid="true"] .akcf-in,.akcf-f.has-err .akcf-in{border-color:var(--akcf-error);box-shadow:0 0 0 3px rgba(138,59,59,.14)}
.akcf-err{min-height:0;color:var(--akcf-error);font-size:.88rem;line-height:1.6}
.akcf-err:empty{display:none}

/* chips */
.akcf-chips{display:flex;flex-wrap:wrap;gap:12px}
.akcf-chip{position:relative;cursor:pointer}
.akcf-chip input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.akcf-chip span{display:inline-flex;align-items:center;gap:8px;min-height:var(--akcf-chip-height);padding:0 26px;border-radius:999px;border:1.5px solid var(--akcf-input-border);background:var(--akcf-input-bg);color:var(--akcf-text);font:400 var(--akcf-chip-font-size) var(--akcf-font);transition:background .25s,color .25s,border-color .25s,transform .25s;user-select:none}
.akcf-chip:hover span{border-color:var(--akcf-secondary);transform:translateY(-2px)}
.akcf-chip input:checked+span{background:var(--akcf-primary);color:var(--akcf-card-bg);border-color:var(--akcf-primary);box-shadow:0 10px 22px rgba(15,42,83,.25)}
.akcf-chip input:focus-visible+span{outline:3px solid rgba(162,147,134,.6);outline-offset:2px}
.akcf-chip input:checked+span::before{content:"";width:14px;height:14px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23EDE7E0' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/contain no-repeat;animation:akcf-pop .3s}
@keyframes akcf-pop{from{transform:scale(0)}to{transform:scale(1)}}

/* checkbox */
.akcf-agree{display:flex;align-items:flex-start;gap:12px;cursor:pointer;line-height:1.8}
.akcf-agree input{position:absolute;opacity:0;width:0;height:0}
.akcf-box{flex:none;width:var(--akcf-checkbox-size);height:var(--akcf-checkbox-size);border-radius:8px;border:1.5px solid var(--akcf-input-border);display:grid;place-items:center;color:transparent;transition:background .25s,border-color .25s,color .25s}
.akcf-box svg{width:16px;height:16px}
.akcf-agree input:checked+.akcf-box{background:var(--akcf-primary);border-color:var(--akcf-primary);color:var(--akcf-card-bg)}
.akcf-agree input:focus-visible+.akcf-box{outline:3px solid rgba(162,147,134,.6);outline-offset:2px}

/* submit */
.akcf__foot{margin-top:30px}
.akcf__submit{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:14px;width:var(--akcf-submit-width);min-width:240px;height:var(--akcf-submit-height);padding:var(--akcf-submit-padding);border:0;border-radius:var(--akcf-btn-radius);background:var(--akcf-btn-bg);color:var(--akcf-btn-text);font:800 var(--akcf-submit-font-size) var(--akcf-font);cursor:pointer;box-shadow:var(--akcf-btn-shadow);overflow:hidden;transition:transform .25s,box-shadow .25s,opacity .25s}
.akcf__submit::before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(237,231,224,.25) 50%,transparent 70%);transform:translateX(-120%);animation:akcf-shine 4s ease-in-out infinite}
@keyframes akcf-shine{0%,60%{transform:translateX(-120%)}100%{transform:translateX(120%)}}
.akcf__submit:hover{transform:translateY(-3px);box-shadow:0 22px 40px rgba(15,42,83,.38)}
.akcf__submit:focus-visible{outline:3px solid var(--akcf-secondary);outline-offset:3px}
.akcf__arr{width:20px;height:20px;transition:translate .25s}
[dir=ltr] .akcf__arr{transform:scaleX(-1)}
.akcf__submit:hover .akcf__arr{translate:-4px 0}
.akcf__spin{display:none;width:20px;height:20px;border-radius:50%;border:2.5px solid rgba(237,231,224,.35);border-top-color:var(--akcf-btn-text);animation:akcf-spin .7s linear infinite}
@keyframes akcf-spin{to{transform:rotate(360deg)}}
.akcf__form.is-sending .akcf__submit{opacity:.85;pointer-events:none}
.akcf__form.is-sending .akcf__spin{display:block}
.akcf__form.is-sending .akcf__arr{display:none}
.akcf__note{margin:14px 0 0;color:var(--akcf-text-muted);font-size:.9rem}
.akcf__msg{margin:14px 0 0;padding:12px 18px;border-radius:16px;background:rgba(138,59,59,.1);color:#7a2f2f;line-height:1.8}
.akcf-hp{position:absolute!important;inset-inline-start:-9999px;width:1px;height:1px;overflow:hidden}

/* success */
.akcf__ok{text-align:center;padding:clamp(30px,6vw,70px) 10px}
.akcf__ok[hidden]{display:none}
.akcf__okc{display:inline-grid;place-items:center;width:84px;height:84px;border-radius:50%;background:var(--akcf-primary);color:var(--akcf-card-bg);animation:akcf-pop .5s cubic-bezier(.2,.8,.2,1)}
.akcf__okc svg{width:40px;height:40px;stroke-dasharray:30;stroke-dashoffset:30;animation:akcf-draw .6s .3s ease forwards}
@keyframes akcf-draw{to{stroke-dashoffset:0}}
.akcf__ok h3{margin:22px 0 10px;font-weight:800;font-size:clamp(1.5rem,3vw,2.1rem);color:var(--akcf-primary)}
.akcf__ok p{margin:0 auto;max-width:460px;line-height:2;opacity:.8}

@media (max-width:991px){
  .akcf__in{grid-template-columns:1fr;padding-inline:18px}
  .akcf__info{position:static}
}
@media (max-width:640px){
  .akcf__grid{grid-template-columns:1fr;gap:22px}
  .akcf-f--half{grid-column:1/-1}
  .akcf__card{padding:22px 18px}
  .akcf-chips{gap:10px}
  .akcf-chip span{padding:12px 20px;font-size:.95rem}
  .akcf__submit{width:100%}
  .akcf__wa{width:100%;justify-content:center}
}
@media (prefers-reduced-motion:reduce){.akcf *{animation:none!important;transition:none!important}.akcf-f,.akcf__list li{opacity:1}.akcf__okc svg{stroke-dashoffset:0}}
