  *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
  :root {
    --ink:       #0A0A0F;
    --ink-60:    rgba(10,10,15,0.6);
    --ink-20:    rgba(10,10,15,0.10);
    --paper:     #F5F3EE;
    --paper-dk:  #ECEAE3;
    --accent:    #1A1AFF;
    --accent-lt: #EEEEFF;
    --teal:      #00B896;
    --teal-lt:   #E0FAF4;
    --font-d: 'Syne', sans-serif;
    --font-b: 'DM Sans', sans-serif;
    /* Form states */
    --focus-ring: rgba(26,26,255,0.18);
    --err:        #D9363E;
    --ok:         #00B896;
  }
  html { scroll-behavior: smooth; }
  body { font-family: var(--font-b); background: var(--paper); color: var(--ink); overflow-x: hidden; -webkit-font-smoothing: antialiased; }

  /* ── NAV ── */
  /* .site-header { position: fixed; top:0; left:0; right:0; z-index:200; background:#fff; border-bottom:1px solid var(--ink-20); } */
   .site-header{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;

    background: var(--paper);   /* #F5F3EE */
    transition: all .35s ease;

}

.site-header.scrolled{
    /* background: #ffffff; */
    /* background: #fff; */
    background-color: white;
    border-bottom: 1px solid rgba(0,0,0,.06);
    box-shadow: 0 10px 30px rgba(0,0,0,.08);
}
.nav-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:0 48px;
    height:72px;
    gap:32px;
}

.nav-logo{
    display:flex;
    align-items:center;
    text-decoration:none;
    flex-shrink:0;
}

.nav-logo-image{
    display:block;
    width:auto;
    height:50px;
    max-width:180px;
    object-fit:contain;
}
  /* .nav-logo { font-family:var(--font-d); font-weight:800; font-size:22px; letter-spacing:-0.5px; color:var(--ink); text-decoration:none; flex-shrink:0; display:flex; align-items:center; gap:6px; } */
  /* .nav-logo-icon { width:32px; height:32px; border-radius:8px; background:var(--accent); display:flex; align-items:center; justify-content:center; flex-shrink:0; } */
  /* .nav-logo-text span { color:var(--accent); } */
  .nav-center { display:flex; align-items:center; list-style:none; flex:1; justify-content:center; }
  .nav-item { position:relative; }
  .nav-item > a, .nav-item > button { display:flex; align-items:center; gap:4px; font-family:var(--font-b); font-size:14px; font-weight:400; color:#333; background:none; border:none; padding:0 16px; text-decoration:none; cursor:pointer; transition:color 0.15s; white-space:nowrap; line-height:68px; height:68px; border-bottom:2px solid transparent; }
  .nav-item > a:hover, .nav-item > button:hover { color:var(--accent); }
  .nav-item.open > button { color:var(--accent); border-bottom-color:var(--accent); }
  .nav-item > button svg { transition:transform 0.2s; }
  .nav-item.open > button svg { transform:rotate(180deg); }
  .nav-chev { width:12px; height:12px; color:#888; flex-shrink:0; }
  .nav-item > a.active { color:var(--accent); border-bottom-color:var(--accent); }
  .nav-right { display:flex; align-items:center; gap:8px; flex-shrink:0; }
  .nav-btn-demo { display:inline-flex; align-items:center; font-family:var(--font-b); font-size:14px; font-weight:600; color:#fff; border:2px solid var(--accent); padding:8px 22px; border-radius:6px; text-decoration:none; background:var(--accent); cursor:pointer; transition:background 0.18s; white-space:nowrap; }
  .nav-btn-demo:hover { background:#0000CC; border-color:#0000CC; }
  .nav-hamburger { display:none; background:none; border:none; cursor:pointer; padding:8px; color:var(--ink); }

  /* mega menu */
  .mega-wrap { display:none; position:absolute; top:100%; left:50%; transform:translateX(-50%); z-index:400; padding-top:6px; }
  .mega-wrap.wide { left:0; transform:none; }
  .mega-wrap.open { display:block; }
  .mega-panel { background:#fff; border:1px solid var(--ink-20); border-radius:14px; box-shadow:0 8px 48px rgba(10,10,15,0.12); padding:10px; display:flex; animation:menuFade 0.15s ease; }
  @keyframes menuFade { from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)} }
  .mega-col { flex:1; padding:6px; min-width:190px; }
  .mega-col-title { font-size:10px; font-weight:700; letter-spacing:0.1em; text-transform:uppercase; color:#aaa; padding:6px 10px 8px; }
  .mega-item { display:flex; align-items:flex-start; gap:11px; padding:10px; border-radius:9px; text-decoration:none; transition:background 0.13s; margin-bottom:1px; }
  .mega-item:hover { background:var(--paper); }
  .mega-item:hover .mega-item-title { color:var(--accent); }
  .mega-icon { width:36px; height:36px; flex-shrink:0; border-radius:9px; display:flex; align-items:center; justify-content:center; font-size:17px; }
  .mega-item-title { font-size:13px; font-weight:500; color:var(--ink); margin-bottom:2px; transition:color 0.13s; }
  .mega-item-desc { font-size:11px; color:#888; line-height:1.45; }
  .mega-divider { width:1px; background:var(--ink-20); margin:6px 2px; flex-shrink:0; }
  .mob-overlay { display:none; position:fixed; inset:0; z-index:300; background:rgba(10,10,15,0.45); backdrop-filter:blur(2px); }
  .mob-overlay.open { display:block; }
  .mob-drawer { position:fixed; top:0; right:0; bottom:0; z-index:400; width:88vw; max-width:360px; background:#fff; display:flex; flex-direction:column; transform:translateX(100%); transition:transform 0.3s cubic-bezier(0.4,0,0.2,1); overflow-y:auto; }
  .mob-drawer.open { transform:translateX(0); }
  .mob-drawer-head { display:flex; align-items:center; justify-content:space-between; padding:0 20px; height:64px; flex-shrink:0; border-bottom:1px solid var(--ink-20); }
  .mob-drawer-logo { font-family:var(--font-d); font-weight:800; font-size:20px; color:var(--ink); text-decoration:none; display:flex; align-items:center; gap:6px; }
  .mob-drawer-logo .logo-icon { width:28px; height:28px; border-radius:7px; background:var(--accent); display:flex; align-items:center; justify-content:center; }
  .mob-close { background:none; border:none; cursor:pointer; color:var(--ink); padding:8px; border-radius:8px; }
  .mob-nav { flex:1; padding:12px 12px 0; }
  .mob-section-label { font-size:10px; font-weight:700; letter-spacing:0.1em; text-transform:uppercase; color:#bbb; padding:16px 10px 8px; }
  .mob-nav-link { display:flex; align-items:center; justify-content:space-between; padding:11px 12px; border-radius:9px; font-size:15px; font-weight:500; color:var(--ink); text-decoration:none; cursor:pointer; background:none; border:none; width:100%; text-align:left; transition:background 0.13s; }
  .mob-nav-link:hover { background:var(--paper); }
  .mob-nav-link.open { color:var(--accent); background:var(--accent-lt); }
  .mob-nav-link.open svg { transform:rotate(180deg); color:var(--accent); }
  .mob-sub { display:none; padding:4px 0 4px 12px; }
  .mob-sub.open { display:block; }
  .mob-sub-item { display:flex; align-items:center; gap:10px; padding:9px 10px; border-radius:8px; font-size:13px; color:#444; text-decoration:none; transition:background 0.13s; }
  .mob-sub-item:hover { background:var(--paper); color:var(--accent); }
  .mob-sub-icon { width:30px; height:30px; border-radius:7px; flex-shrink:0; display:flex; align-items:center; justify-content:center; font-size:14px; }
  .mob-sub-text { font-size:13px; font-weight:500; }
  .mob-divider { height:1px; background:var(--ink-20); margin:10px 8px; }
  .mob-footer { padding:16px 12px 28px; flex-shrink:0; border-top:1px solid var(--ink-20); display:flex; flex-direction:column; gap:10px; }
  .mob-btn-cta { display:block; text-align:center; font-size:15px; font-weight:600; color:#fff; padding:13px; border-radius:9px; background:var(--accent); text-decoration:none; }

  /* ── BREADCRUMB ── */
  .breadcrumb { padding:88px 48px 0; display:flex; align-items:center; gap:8px; font-size:12px; color:var(--ink-60); }
  .breadcrumb a { color:var(--ink-60); text-decoration:none; }
  .breadcrumb a:hover { color:var(--accent); }
  .breadcrumb span { color:var(--accent); font-weight:500; }
  .breadcrumb svg { width:12px; height:12px; color:var(--ink-20); }

  /* ════════════════════════════════════════
     MAIN CONTACT LAYOUT
     Left: trust panel | Right: form (sticky)
  ════════════════════════════════════════ */
  .contact-wrap {
    display: grid;
    grid-template-columns: 1fr 460px;
    gap: 0;
    min-height: calc(100vh - 68px);
    align-items: start;
    padding: 40px 48px 80px;
    max-width: 1100px;
    margin: 0 auto;
  }

  /* ── LEFT: Trust panel ── */
  .trust-panel { padding-right: 56px; padding-top: 8px; }
  .trust-eyebrow { font-size:11px; font-weight:600; letter-spacing:0.12em; text-transform:uppercase; color:var(--accent); margin-bottom:16px; }
  .trust-headline { font-family:var(--font-d); font-size:clamp(32px,3.2vw,46px); font-weight:800; line-height:1.08; letter-spacing:-1.5px; color:var(--ink); margin-bottom:18px; }
  .trust-headline em { font-style:normal; color:var(--accent); }
  .trust-sub { font-size:15px; font-weight:300; color:var(--ink-60); line-height:1.7; margin-bottom:32px; max-width:340px; }

  /* Response guarantee badge */
  .response-badge { display:inline-flex; align-items:center; gap:10px; background:#fff; border:1px solid var(--ink-20); border-radius:12px; padding:12px 16px; margin-bottom:36px; box-shadow:0 2px 12px rgba(10,10,15,0.06); }
  .response-dot { width:8px; height:8px; background:var(--teal); border-radius:50%; flex-shrink:0; animation:pulse 2s infinite; }
  @keyframes pulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:0.5;transform:scale(1.35)} }
  .response-text { font-size:13px; font-weight:500; color:var(--ink); }
  .response-text span { color:var(--teal); font-weight:600; }

  /* Trust list */
  .trust-list { display:flex; flex-direction:column; gap:0; margin-bottom:36px; }
  .trust-item { display:flex; align-items:flex-start; gap:14px; padding:14px 0; border-bottom:1px solid var(--ink-20); }
  .trust-item:first-child { border-top:1px solid var(--ink-20); }
  .trust-item-icon { width:36px; height:36px; border-radius:10px; display:flex; align-items:center; justify-content:center; font-size:16px; flex-shrink:0; margin-top:1px; }
  .trust-item-title { font-size:13px; font-weight:600; color:var(--ink); margin-bottom:2px; }
  .trust-item-desc { font-size:12px; color:var(--ink-60); line-height:1.55; }

  /* Social proof row */
  .social-proof { display:flex; align-items:center; gap:14px; margin-bottom:36px; }
  .sp-avatars { display:flex; }
  .sp-avatar { width:32px; height:32px; border-radius:50%; border:2px solid #fff; margin-right:-8px; background:var(--paper-dk); display:flex; align-items:center; justify-content:center; font-size:11px; font-weight:700; font-family:var(--font-d); }
  .sp-text { font-size:13px; color:var(--ink-60); font-weight:300; }
  .sp-text strong { color:var(--ink); font-weight:600; }

  /* Contact details */
  .contact-details { display:flex; flex-direction:column; gap:12px; }
  .contact-detail-item { display:flex; align-items:center; gap:12px; text-decoration:none; padding:10px 14px; background:#fff; border-radius:10px; border:1px solid var(--ink-20); transition:border-color 0.2s, box-shadow 0.2s; }
  .contact-detail-item:hover { border-color:var(--accent); box-shadow:0 2px 12px rgba(26,26,255,0.06); }
  .contact-detail-icon { width:32px; height:32px; border-radius:8px; display:flex; align-items:center; justify-content:center; font-size:14px; flex-shrink:0; }
  .contact-detail-label { font-size:10px; font-weight:600; text-transform:uppercase; letter-spacing:0.08em; color:var(--ink-60); }
  .contact-detail-val { font-size:13px; font-weight:500; color:var(--ink); }

  /* ── RIGHT: Form card ── */
  .form-card {
    background: #fff;
    border-radius: 20px;
    border: 1px solid var(--ink-20);
    box-shadow: 0 8px 48px rgba(10,10,15,0.07);
    overflow: hidden;
    position: sticky;
    top: 88px;
  }

  /* Progress bar at top of card */
  .form-progress { height:3px; background:var(--ink-20); position:relative; }
  .form-progress-fill { height:100%; background:var(--accent); border-radius:0 2px 2px 0; transition:width 0.4s cubic-bezier(0.4,0,0.2,1); width:0%; }

  .form-inner { padding:24px 28px 28px; }

  .form-head { margin-bottom:18px; }
  .form-title { font-family:var(--font-d); font-size:18px; font-weight:800; color:var(--ink); letter-spacing:-0.5px; margin-bottom:4px; }
  .form-sub { font-size:12px; color:var(--ink-60); font-weight:300; line-height:1.55; }

  /* Field groups */
  .field-row { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
  .field-group { display:flex; flex-direction:column; gap:4px; margin-bottom:12px; position:relative; }
  .field-label { font-size:11px; font-weight:600; color:var(--ink); letter-spacing:0.02em; }
  .field-label .req { color:var(--accent); margin-left:2px; }

  /* Inputs */
  .field-input, .field-select, .field-textarea {
    font-family: var(--font-b);
    font-size: 13px;
    font-weight: 400;
    color: var(--ink);
    background: var(--paper);
    border: 1.5px solid var(--ink-20);
    border-radius: 8px;
    padding: 8px 11px;
    outline: none;
    transition: border-color 0.18s, box-shadow 0.18s, background 0.18s;
    width: 100%;
    appearance: none;
    -webkit-appearance: none;
  }
  .field-input::placeholder, .field-textarea::placeholder { color: #bbb; font-weight:300; }
  .field-input:focus, .field-select:focus, .field-textarea:focus {
    border-color: var(--accent);
    background: #fff;
    box-shadow: 0 0 0 3px var(--focus-ring);
  }
  .field-input.error, .field-select.error, .field-textarea.error {
    border-color: var(--err);
    box-shadow: 0 0 0 3px rgba(217,54,62,0.12);
  }
  .field-input.valid, .field-select.valid, .field-textarea.valid {
    border-color: var(--ok);
  }
  .field-textarea { resize: vertical; min-height: 68px; line-height:1.5; }
  .field-select { cursor: pointer; background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23999' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 11px center; padding-right: 30px; }

  /* Field icons */
  .field-icon-wrap { position:relative; }
  .field-icon-wrap .field-input { padding-left: 32px; }
  .field-icon-wrap .fi { position:absolute; left:10px; top:50%; transform:translateY(-50%); font-size:12px; pointer-events:none; }
  .field-tick { position:absolute; right:7px; top:50%; transform:translateY(-50%); font-size:12px; opacity:0; transition:opacity 0.2s; }
  .field-tick.show { opacity:1; }

  /* Error message */
  .field-error { font-size:11px; color:var(--err); display:none; align-items:center; gap:4px; margin-top:-8px; }
  .field-error.show { display:flex; }
  /* ================= OTP ================= */

/* ================= OTP ================= 

/* Send OTP Button */
.otp-btn{
    position:absolute;
    top:50%;
    right:5px;
    min-width: 90px;
    transform:translateY(-50%);
    padding:8px 14px;
    border:none;
    border-radius:6px;
    background:var(--accent);
    color:#fff;
    font-size:11px;
    font-weight:600;
    cursor:pointer;
    transition:.25s;
}

.otp-btn:hover{
    background:#0000cc;
}

.field-icon-wrap .field-input{
    padding-right:135px;
}


/* OTP Container */
.otp-box{
    display:none;
    animation:fadeOTP .25s ease;
    margin:14px 0 18px;

}


/* OTP Row */
.otp-row{
    display:flex;
    align-items:center;
    gap:10px;
}


/* OTP Input */
.otp-input{
    flex:1;
    height:44px;
    margin: 0px 0px 7px 0px;
    padding:0 14px;
    border:1.5px solid var(--ink-20);
    border-radius:8px;
    outline:none;
    font-size:15px;
    font-weight:500;
    letter-spacing:2px;
    transition:.25s;
    font-family:monospace;
}

.otp-input:focus{
    border-color:var(--accent);
    box-shadow:0 0 0 3px rgba(26,26,255,.12);
}
.otp-btn:hover{
    transform:translateY(calc(-50% - 1px));
    background:#0000cc;
}

.verify-btn:hover{
    transform:translateY(-1px);
    background:#0000cc;
}

/* Verify Button */

.verify-btn{
    width:90px;
    height:40px;
    flex-shrink:0;
    border:none;
    border-radius:8px;
    background:var(--accent);
    color:#fff;
    font-size:12px;
    font-weight:600;
    cursor:pointer;
    transition:.25s;
}


.verify-btn:disabled{
    background:#22c55e;
    color:#fff;
    opacity:.9;
    cursor:default;
}



/* Timer + Resend */
.otp-footer{
    display:flex;
    align-items:center;
    gap:12px;
    margin-top:8px;
}

#otpTimer{
    font-size:12px;
    font-weight:600;
    color:var(--accent);
}

.resend-btn{
    background:none;
    border:none;
    color:var(--accent);
    font-size:12px;
    font-weight:600;
    cursor:pointer;
}


.resend-btn:hover{
    text-decoration:underline;
}


/* Success */

.otp-success{
    display:none;
    margin-top:12px;
    padding:10px 12px;
    border-radius:8px;
    background:#ecfdf3;
    border:1px solid #bbf7d0;
    color:#15803d;
    font-size:13px;
    font-weight:600;
}


/* Animation */
@keyframes fadeOTP{
    
    from{
        opacity:0;
        transform:translateY(-6px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}
  /* Service chips */
  .chips-label { font-size:11px; font-weight:600; color:var(--ink); margin-bottom:8px; }
  .chips-label .req { color:var(--accent); margin-left:2px; }
  .chips-wrap { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:12px; }
  .chip-btn {
    display: inline-flex; align-items:center; gap:5px;
    font-family: var(--font-b); font-size:11px; font-weight:500;
    color: var(--ink-60); background: var(--paper);
    border: 1.5px solid var(--ink-20); border-radius:100px;
    padding: 5px 11px; cursor:pointer;
    transition: border-color 0.15s, background 0.15s, color 0.15s;
    user-select: none;
  }
  .chip-btn:hover { border-color:var(--accent); color:var(--accent); background:#f8f8ff; }
  .chip-btn.selected { border-color:var(--accent); color:var(--accent); background:var(--accent-lt); }
  .chip-btn.selected .chip-check { opacity:1; }
  .chip-check { font-size:9px; opacity:0; transition:opacity 0.15s; }
  .chips-error { font-size:10px; color:var(--err); display:none; margin-top:-4px; margin-bottom:10px; }
  .chips-error.show { display:block; }

  /* Budget slider */
  .budget-wrap { margin-bottom:12px; }
  .budget-row { display:flex; justify-content:space-between; align-items:center; margin-bottom:8px; }
  .budget-label { font-size:11px; font-weight:600; color:var(--ink); }
  .budget-val { font-family:var(--font-d); font-size:12px; font-weight:700; color:var(--accent); }
  .slider-track { position:relative; height:3px; background:var(--ink-20); border-radius:2px; }
  .slider-fill { position:absolute; left:0; top:0; height:100%; background:var(--accent); border-radius:2px; transition:width 0.1s; }
  input[type=range] { position:absolute; top:50%; left:0; width:100%; height:18px; margin:-9px 0 0; opacity:0; cursor:pointer; z-index:2; }
  .slider-thumb-vis { position:absolute; top:50%; width:14px; height:14px; background:var(--accent); border-radius:50%; border:2px solid #fff; box-shadow:0 1px 5px rgba(26,26,255,0.3); transform:translate(-50%,-50%); transition:left 0.1s; pointer-events:none; z-index:1; }
  .budget-opts { display:flex; justify-content:space-between; margin-top:6px; }
  .budget-opts span { font-size:9px; color:var(--ink-60); }

  /* Submit */
  .submit-wrap { margin-top:6px; }
  .btn-submit {
    width:100%; padding:12px 24px;
    font-family: var(--font-b); font-size:14px; font-weight:600;
    color:#fff; background:var(--ink);
    border:none; border-radius:8px; cursor:pointer;
    transition: background 0.2s, transform 0.15s, box-shadow 0.2s;
    display:flex; align-items:center; justify-content:center; gap:10px;
    position:relative; overflow:hidden;
  }
  .btn-submit:hover { background:var(--accent); transform:translateY(-1px); box-shadow:0 6px 24px rgba(26,26,255,0.22); }
  .btn-submit:active { transform:translateY(0); }
  .btn-submit.loading { pointer-events:none; }
  .btn-submit.loading .btn-text { opacity:0; }
  .btn-submit.loading::after { content:''; position:absolute; width:18px; height:18px; border:2px solid rgba(255,255,255,0.3); border-top-color:#fff; border-radius:50%; animation:spin 0.7s linear infinite; }
  @keyframes spin { to { transform:rotate(360deg); } }
  .btn-note { font-size:11px; color:var(--ink-60); text-align:center; margin-top:10px; display:flex; align-items:center; justify-content:center; gap:5px; }

  /* Success state */
  .form-success { display:none; flex-direction:column; align-items:center; justify-content:center; text-align:center; padding:60px 40px; gap:16px; }
  .form-success.show { display:flex; }
  .form-inner.hidden { display:none; }
  .success-icon { width:64px; height:64px; border-radius:50%; background:var(--teal-lt); display:flex; align-items:center; justify-content:center; font-size:28px; margin-bottom:4px; }
  .success-title { font-family:var(--font-d); font-size:22px; font-weight:800; color:var(--ink); letter-spacing:-0.5px; }
  .success-sub { font-size:14px; color:var(--ink-60); font-weight:300; line-height:1.65; max-width:300px; }
  .success-detail { background:var(--teal-lt); border-radius:10px; padding:12px 18px; font-size:12px; font-weight:500; color:var(--teal); display:flex; align-items:center; gap:8px; }

  /* ── OFFICES (below form on mobile, below trust on desktop) ── */
  .offices-section { padding:60px 48px 80px; border-top:1px solid var(--ink-20); }
  .offices-eyebrow { font-size:11px; font-weight:600; letter-spacing:0.12em; text-transform:uppercase; color:var(--accent); margin-bottom:12px; }
  .offices-title { font-family:var(--font-d); font-size:28px; font-weight:800; letter-spacing:-0.8px; color:var(--ink); margin-bottom:32px; }
  .offices-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
  .office-card { background:#fff; border:1px solid var(--ink-20); border-radius:16px; padding:24px; transition:border-color 0.2s, box-shadow 0.2s; }
  .office-card:hover { border-color:var(--accent); box-shadow:0 4px 20px rgba(26,26,255,0.06); }
  .office-city { font-family:var(--font-d); font-size:16px; font-weight:700; color:var(--ink); margin-bottom:6px; display:flex; align-items:center; gap:8px; }
  .office-city-dot { width:6px; height:6px; background:var(--teal); border-radius:50%; }
  .office-address { font-size:13px; color:var(--ink-60); line-height:1.65; margin-bottom:14px; font-weight:300; }
  .office-link { font-size:12px; font-weight:500; color:var(--accent); text-decoration:none; display:inline-flex; align-items:center; gap:4px; }
  .office-link:hover { text-decoration:underline; }

  /* ── FOOTER ── */
footer { background:var(--ink); color:var(--paper); padding:64px 48px 40px; }
  
  .footer-top { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:48px; margin-bottom:48px; padding-bottom:48px; border-bottom:1px solid rgba(255,255,255,0.08); }
  .footer-brand-name { font-family:var(--font-d); font-size:22px; font-weight:800; letter-spacing:-0.5px; margin-bottom:12px; }
  .footer-brand-name span { color:var(--accent); }
  .footer-tagline { font-size:13px; opacity:0.45; line-height:1.6; max-width:260px; font-weight:300; }

  .footer-col-title { font-size:11px; font-weight:600; letter-spacing:0.1em; text-transform:uppercase; opacity:0.5; margin-bottom:16px; }
  .footer-links { list-style:none; display:flex; flex-direction:column; gap:10px; }
  .footer-links a { font-size:13px; color:rgba(245,243,238,0.6); text-decoration:none; transition:color 0.2s; font-weight:300; }
  .footer-links a:hover { color:var(--paper); }
  .footer-bottom { display:flex; align-items:center; justify-content:space-between; font-size:12px; opacity:0.35; }
  /* .footer-social { display:flex; gap:14px; margin-top:20px; }
  .footer-social a { color:rgba(255,255,255,0.4); text-decoration:none; font-size:12px; transition:color 0.2s; }
  .footer-social a:hover { color:#fff; } */
  /* Footer Social Icons */
  /* Footer Logo */
.footer-logo-box{
    display:inline-flex;
    align-items:center;
    margin-bottom:20px;
}

.footer-logo{
    height:60px;   /* Increase from current size */
    width:auto;
    display:block;
    object-fit:contain;
}
.footer-social{
  display:flex;
  gap:12px;
  margin-top:20px; /* keep this if you want spacing below the tagline */
}

.footer-social a{
  width:40px;
  height:40px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,0.06);
  color:var(--paper);
  text-decoration:none;
  transition:all .3s ease;
}

.footer-social a:hover{
  background:var(--accent);
  color:#fff;
  transform:translateY(-3px);
}

.footer-social i{
  font-size:16px;
}


  /* ── RESPONSIVE ── */
  @media (max-width:1020px) {
    .contact-wrap { grid-template-columns:1fr; padding:24px 20px 60px; }
    .trust-panel { padding-right:0; margin-bottom:36px; }
    .form-card { position:static; }
    .offices-section { padding:48px 20px 64px; }
    .offices-grid { grid-template-columns:1fr 1fr; gap:14px; }
    footer { padding:48px 20px 32px; }
    .footer-top { grid-template-columns:1fr 1fr; gap:28px; }
    .footer-bottom { flex-direction:column; gap:6px; text-align:center; }
  }
  @media (max-width:700px) {
    .nav-top { padding:0 20px; }
    .nav-center,.nav-btn-demo { display:none; }
    .nav-hamburger { display:flex; }
    .breadcrumb { padding:84px 20px 0; }
    .field-row { grid-template-columns:1fr; }
    .offices-grid { grid-template-columns:1fr; }
    .footer-top { grid-template-columns:1fr; }
    .form-inner { padding:20px 18px 22px; }
    .trust-headline { font-size:28px; }
  }
  