:root{
    --ss-brand-blue:#3157f6;
    --ss-brand-blue-deep:#1737b7;
    --ss-brand-violet:#7554ff;
    --ss-brand-cyan:#27a9ff;
    --ss-ink:#111a2f;
    --ss-ink-soft:#39445a;
    --ss-muted:#6c7588;
    --ss-line:rgba(17,26,47,.09);
    --ss-surface:#ffffff;
    --ss-surface-soft:#f6f8fc;
    --ss-surface-blue:#eef3ff;
    --ss-header-height:84px;
    --ss-container:1440px;
    --ss-shadow:0 18px 55px rgba(20,31,63,.12);
    --ss-shadow-soft:0 8px 30px rgba(20,31,63,.08);
  }

  html,
  body{
    margin:0;
    padding:0;
    overflow-x:hidden;
  }

  body.ss-mobile-open{
    overflow:hidden;
  }

  .ss-agency-header,
  .ss-agency-header *{
    box-sizing:border-box;
  }

  .ss-agency-header{
    position:relative;
    z-index:9999;
    height:var(--ss-header-height);
    font-family:"Plus Jakarta Sans","Inter","Segoe UI",Arial,sans-serif;
  }

  .ss-agency-header a{
    -webkit-tap-highlight-color:transparent;
  }

  .ss-agency-header__bar{
    position:fixed;
    inset:0 0 auto 0;
    z-index:9998;
    height:var(--ss-header-height);
    background:rgba(255,255,255,.88);
    border-top:3px solid transparent;
    border-image:linear-gradient(90deg,var(--ss-brand-blue),var(--ss-brand-cyan),var(--ss-brand-violet)) 1;
    border-bottom:1px solid rgba(17,26,47,.07);
    -webkit-backdrop-filter:blur(18px) saturate(170%);
    backdrop-filter:blur(18px) saturate(170%);
    transition:height .28s ease, background .28s ease, box-shadow .28s ease;
    overflow:visible;
  }

  .ss-agency-header__bar.ss-is-scrolled{
    height:74px;
    background:rgba(255,255,255,.96);
    box-shadow:0 12px 35px rgba(20,31,63,.09);
  }

  .ss-agency-header__inner{
    width:min(var(--ss-container), calc(100% - 40px));
    height:100%;
    margin:0 auto;
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:34px;
    position:relative;
    overflow:visible;
  }

  .ss-agency-logo{
    display:inline-flex;
    align-items:center;
    text-decoration:none;
    flex:0 0 auto;
  }

  .ss-agency-logo img{
    display:block;
    width:154px;
    height:auto;
  }

  .ss-agency-nav{
    min-width:0;
    display:flex;
    justify-content:center;
    align-self:stretch;
  }

  .ss-agency-nav > ul{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    list-style:none;
    margin:0;
    padding:0;
  }

  .ss-agency-nav > ul > li{
    position:relative;
    display:flex;
    align-items:center;
    height:100%;
  }

  .ss-agency-nav > ul > li.ss-has-mega{
    position:static;
  }

  .ss-agency-nav__link{
    min-height:42px;
    padding:0 13px;
    border-radius:12px;
    display:inline-flex;
    align-items:center;
    gap:7px;
    color:var(--ss-ink);
    text-decoration:none;
    font-size:14px;
    line-height:1;
    font-weight:700;
    letter-spacing:-.01em;
    transition:color .2s ease, background .2s ease, transform .2s ease;
    white-space:nowrap;
  }

  .ss-agency-nav__link i{
    font-size:14px;
    transition:transform .22s ease;
  }

  .ss-agency-nav__link:hover,
  .ss-agency-nav__link.is-active,
  .ss-has-mega.ss-open > .ss-agency-nav__link{
    color:var(--ss-brand-blue);
    background:var(--ss-surface-blue);
  }

  .ss-has-mega.ss-open > .ss-agency-nav__link i{
    transform:rotate(180deg);
  }

  .ss-agency-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:10px;
    min-width:max-content;
  }

  .ss-agency-call{
    min-height:48px;
    padding:0 14px 0 8px;
    border-radius:15px;
    display:flex;
    align-items:center;
    gap:10px;
    text-decoration:none;
    color:var(--ss-ink);
    border:1px solid var(--ss-line);
    background:rgba(255,255,255,.72);
    transition:transform .2s ease, border-color .2s ease, box-shadow .2s ease;
  }

  .ss-agency-call:hover{
    transform:translateY(-1px);
    border-color:rgba(49,87,246,.25);
    box-shadow:0 10px 24px rgba(49,87,246,.09);
  }

  .ss-agency-call__icon{
    width:34px;
    height:34px;
    border-radius:11px;
    display:grid;
    place-items:center;
    background:linear-gradient(135deg,var(--ss-brand-blue),var(--ss-brand-violet));
    color:#fff;
    font-size:16px;
    box-shadow:0 8px 18px rgba(49,87,246,.22);
  }

  .ss-agency-call__text{
    display:grid;
    gap:1px;
  }

  .ss-agency-call__text small{
    color:var(--ss-muted);
    font-size:10px;
    line-height:1.2;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.08em;
  }

  .ss-agency-call__text strong{
    font-size:13px;
    line-height:1.25;
    font-weight:800;
    white-space:nowrap;
  }

  .ss-agency-ask,
  .ss-agency-proposal{
    min-height:48px;
    padding:0 16px;
    border-radius:15px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    text-decoration:none;
    font-size:13px;
    line-height:1;
    font-weight:800;
    white-space:nowrap;
    transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
  }

  .ss-agency-ask{
    color:var(--ss-brand-blue);
    background:#fff;
    border:1px solid rgba(49,87,246,.18);
  }

  .ss-agency-ask:hover{
    transform:translateY(-1px);
    border-color:rgba(49,87,246,.34);
    box-shadow:0 10px 24px rgba(49,87,246,.08);
  }

  .ss-agency-proposal{
    position:relative;
    overflow:hidden;
    color:#fff !important;
    border:1px solid transparent;
    background:linear-gradient(135deg,var(--ss-brand-blue-deep) 0%,var(--ss-brand-blue) 46%,var(--ss-brand-violet) 100%);
    box-shadow:0 12px 26px rgba(49,87,246,.24);
  }

  .ss-agency-proposal::before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(115deg,transparent 25%,rgba(255,255,255,.22) 48%,transparent 72%);
    transform:translateX(-130%);
    transition:transform .55s ease;
  }

  .ss-agency-proposal:hover{
    transform:translateY(-2px);
    box-shadow:0 16px 32px rgba(49,87,246,.30);
  }

  .ss-agency-proposal:hover::before{
    transform:translateX(130%);
  }

  .ss-agency-proposal span,
  .ss-agency-proposal i{
    position:relative;
    z-index:1;
  }

  .ss-agency-menu-toggle{
    width:48px;
    height:48px;
    border-radius:15px;
    border:1px solid var(--ss-line);
    background:#fff;
    color:var(--ss-ink);
    display:none;
    align-items:center;
    justify-content:center;
    font-size:23px;
    cursor:pointer;
    box-shadow:var(--ss-shadow-soft);
  }

  /* =======================
     Premium mega menu
  ======================== */
  .ss-agency-mega{
    position:absolute;
    top:calc(100% - 4px);
    left:50%;
    width:min(1280px, calc(100vw - 36px));
    transform:translate(-50%, 14px);
    padding-top:14px;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .2s ease, visibility .2s ease, transform .2s ease;
  }

  .ss-has-mega:hover .ss-agency-mega,
  .ss-has-mega:focus-within .ss-agency-mega,
  .ss-has-mega.ss-open .ss-agency-mega{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translate(-50%, 0);
  }

  .ss-agency-mega__shell{
    border-radius:26px;
    background:rgba(255,255,255,.985);
    border:1px solid rgba(17,26,47,.08);
    box-shadow:0 28px 80px rgba(17,30,68,.17);
    overflow:hidden;
  }

  .ss-agency-mega__body{
    display:grid;
    grid-template-columns:280px repeat(3,minmax(0,1fr));
    gap:0;
    min-height:410px;
  }

  .ss-agency-mega__intro{
    position:relative;
    overflow:hidden;
    padding:30px 26px;
    color:#fff;
    background:
      radial-gradient(circle at 85% 12%,rgba(39,169,255,.38),transparent 30%),
      radial-gradient(circle at 10% 90%,rgba(117,84,255,.50),transparent 36%),
      linear-gradient(155deg,#0e1a43 0%,#1737b7 55%,#3157f6 100%);
    display:flex;
    flex-direction:column;
  }

  .ss-agency-mega__intro::after{
    content:"";
    position:absolute;
    width:180px;
    height:180px;
    right:-88px;
    bottom:-88px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.18);
    box-shadow:0 0 0 28px rgba(255,255,255,.04),0 0 0 56px rgba(255,255,255,.03);
  }

  .ss-agency-mega__eyebrow{
    position:relative;
    z-index:1;
    width:max-content;
    max-width:100%;
    padding:7px 10px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    gap:7px;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.16);
    font-size:10px;
    line-height:1;
    font-weight:800;
    letter-spacing:.09em;
    text-transform:uppercase;
  }

  .ss-agency-mega__intro h3{
    position:relative;
    z-index:1;
    margin:22px 0 12px;
    font-size:30px;
    line-height:1.12;
    letter-spacing:-.045em;
    font-weight:800;
  }

  .ss-agency-mega__intro p{
    position:relative;
    z-index:1;
    margin:0;
    color:rgba(255,255,255,.78);
    font-size:13px;
    line-height:1.75;
    font-weight:500;
  }

  .ss-agency-mega__intro-list{
    position:relative;
    z-index:1;
    margin:20px 0 0;
    display:grid;
    gap:10px;
  }

  .ss-agency-mega__intro-list span{
    display:flex;
    align-items:center;
    gap:8px;
    color:rgba(255,255,255,.90);
    font-size:12px;
    line-height:1.4;
    font-weight:700;
  }

  .ss-agency-mega__intro-list i{
    color:#87d7ff;
    font-size:15px;
  }

  .ss-agency-mega__intro-cta{
    position:relative;
    z-index:1;
    margin-top:auto;
    min-height:46px;
    padding:0 16px;
    border-radius:13px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    color:var(--ss-brand-blue-deep);
    background:#fff;
    text-decoration:none;
    font-size:13px;
    font-weight:800;
    box-shadow:0 12px 28px rgba(5,15,55,.22);
    transition:transform .2s ease;
  }

  .ss-agency-mega__intro-cta:hover{
    transform:translateY(-2px);
  }

  .ss-agency-mega__column{
    padding:28px 20px 24px;
    border-left:1px solid rgba(17,26,47,.07);
    background:#fff;
  }

  .ss-agency-mega__column:nth-child(3){
    background:#fbfcff;
  }

  .ss-agency-mega__column-head{
    display:flex;
    align-items:center;
    gap:10px;
    margin:0 8px 16px;
  }

  .ss-agency-mega__column-icon{
    width:34px;
    height:34px;
    border-radius:11px;
    display:grid;
    place-items:center;
    color:var(--ss-brand-blue);
    background:var(--ss-surface-blue);
    font-size:17px;
  }

  .ss-agency-mega__column h4{
    margin:0;
    color:var(--ss-ink);
    font-size:14px;
    line-height:1.2;
    font-weight:800;
    letter-spacing:-.015em;
  }

  .ss-agency-mega__column small{
    display:block;
    margin-top:3px;
    color:var(--ss-muted);
    font-size:10px;
    line-height:1.35;
    font-weight:600;
  }

  .ss-agency-mega__links{
    display:grid;
    gap:5px;
  }

  .ss-agency-service-link{
    min-height:52px;
    padding:8px 9px;
    border-radius:13px;
    display:grid;
    grid-template-columns:34px minmax(0,1fr) auto;
    align-items:center;
    gap:10px;
    color:var(--ss-ink);
    text-decoration:none;
    border:1px solid transparent;
    transition:background .18s ease, border-color .18s ease, transform .18s ease, color .18s ease;
  }

  .ss-agency-service-link:hover{
    color:var(--ss-brand-blue);
    background:var(--ss-surface-blue);
    border-color:rgba(49,87,246,.10);
    transform:translateX(2px);
  }

  .ss-agency-service-link__icon{
    width:34px;
    height:34px;
    border-radius:10px;
    display:grid;
    place-items:center;
    color:var(--ss-brand-blue);
    background:#f3f6ff;
    font-size:16px;
  }

  .ss-agency-service-link__text{
    min-width:0;
    display:grid;
    gap:2px;
  }

  .ss-agency-service-link__text strong{
    color:inherit;
    font-size:12px;
    line-height:1.3;
    font-weight:800;
  }

  .ss-agency-service-link__text span{
    color:var(--ss-muted);
    font-size:9.5px;
    line-height:1.25;
    font-weight:600;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }

  .ss-agency-service-link > i{
    color:#a5aec0;
    font-size:13px;
    transition:transform .18s ease, color .18s ease;
  }

  .ss-agency-service-link:hover > i{
    color:var(--ss-brand-blue);
    transform:translateX(2px);
  }

  .ss-agency-mega__footer{
    min-height:64px;
    padding:12px 20px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    background:#f8faff;
    border-top:1px solid rgba(17,26,47,.07);
  }

  .ss-agency-mega__footer-copy{
    display:flex;
    align-items:center;
    gap:12px;
    min-width:0;
    color:var(--ss-ink-soft);
    font-size:12px;
    line-height:1.5;
    font-weight:700;
  }

  .ss-agency-mega__footer-copy i{
    width:34px;
    height:34px;
    border-radius:11px;
    display:grid;
    place-items:center;
    flex:0 0 auto;
    color:var(--ss-brand-blue);
    background:#eaf0ff;
    font-size:16px;
  }

  .ss-agency-mega__footer-actions{
    display:flex;
    align-items:center;
    gap:8px;
    flex:0 0 auto;
  }

  .ss-agency-mega__footer-actions a{
    min-height:38px;
    padding:0 12px;
    border-radius:11px;
    display:inline-flex;
    align-items:center;
    gap:7px;
    color:var(--ss-ink);
    text-decoration:none;
    background:#fff;
    border:1px solid rgba(17,26,47,.08);
    font-size:11px;
    font-weight:800;
    transition:color .18s ease, border-color .18s ease, transform .18s ease;
  }

  .ss-agency-mega__footer-actions a:hover{
    color:var(--ss-brand-blue);
    border-color:rgba(49,87,246,.24);
    transform:translateY(-1px);
  }

  /* =======================
     Mobile drawer
  ======================== */
  .ss-agency-mobile{
    position:fixed;
    inset:0;
    z-index:100000;
    visibility:hidden;
    pointer-events:none;
  }

  .ss-agency-mobile.is-open{
    visibility:visible;
    pointer-events:auto;
  }

  .ss-agency-mobile__overlay{
    position:absolute;
    inset:0;
    background:rgba(10,18,38,.58);
    opacity:0;
    -webkit-backdrop-filter:blur(5px);
    backdrop-filter:blur(5px);
    transition:opacity .26s ease;
  }

  .ss-agency-mobile.is-open .ss-agency-mobile__overlay{
    opacity:1;
  }

  .ss-agency-mobile__panel{
    position:absolute;
    inset:0 0 0 auto;
    width:min(420px,92vw);
    height:100vh;
    height:100dvh;
    background:#fff;
    box-shadow:-24px 0 70px rgba(8,18,42,.22);
    transform:translateX(102%);
    transition:transform .3s cubic-bezier(.22,.8,.24,1);
    overflow-x:hidden;
    overflow-y:auto;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
  }

  .ss-agency-mobile.is-open .ss-agency-mobile__panel{
    transform:translateX(0);
  }

  .ss-agency-mobile__head{
    position:sticky;
    top:0;
    z-index:4;
    min-height:76px;
    padding:14px 18px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    background:rgba(255,255,255,.96);
    border-bottom:1px solid var(--ss-line);
    -webkit-backdrop-filter:blur(16px);
    backdrop-filter:blur(16px);
  }

  .ss-agency-mobile__head img{
    width:142px;
    height:auto;
    display:block;
  }

  .ss-agency-mobile__close{
    width:42px;
    height:42px;
    border:0;
    border-radius:13px;
    display:grid;
    place-items:center;
    background:var(--ss-surface-soft);
    color:var(--ss-ink);
    font-size:21px;
    cursor:pointer;
  }

  .ss-agency-mobile__content{
    padding:16px 16px 28px;
  }

  .ss-agency-mobile__nav{
    list-style:none;
    margin:0;
    padding:0;
    display:grid;
    gap:6px;
  }

  .ss-agency-mobile__link,
  .ss-agency-mobile__toggle{
    width:100%;
    min-height:52px;
    padding:0 14px;
    border-radius:13px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    color:var(--ss-ink);
    background:#fff;
    border:1px solid transparent;
    text-decoration:none;
    font-size:14px;
    font-weight:800;
    text-align:left;
    cursor:pointer;
  }

  .ss-agency-mobile__link:hover,
  .ss-agency-mobile__toggle:hover,
  .ss-agency-mobile__link.is-active,
  .ss-agency-mobile__toggle.is-active{
    color:var(--ss-brand-blue);
    background:var(--ss-surface-blue);
    border-color:rgba(49,87,246,.10);
  }

  .ss-agency-mobile__submenu{
    display:none;
    margin:7px 0 8px;
    padding:8px;
    border-radius:15px;
    background:var(--ss-surface-soft);
  }

  .ss-agency-mobile__item.is-open .ss-agency-mobile__submenu{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:6px;
  }

  .ss-agency-mobile__item.is-open .ss-agency-mobile__toggle > i{
    transform:rotate(180deg);
  }

  .ss-agency-mobile__submenu a{
    min-height:44px;
    padding:9px 10px;
    border-radius:11px;
    display:flex;
    align-items:center;
    gap:8px;
    color:var(--ss-ink-soft);
    background:#fff;
    text-decoration:none;
    font-size:11px;
    line-height:1.3;
    font-weight:750;
    border:1px solid rgba(17,26,47,.06);
  }

  .ss-agency-mobile__submenu a i{
    color:var(--ss-brand-blue);
    font-size:14px;
  }

  .ss-agency-mobile__submenu a.is-active{
    color:var(--ss-brand-blue);
    background:var(--ss-surface-blue);
    border-color:rgba(49,87,246,.16);
    box-shadow:inset 3px 0 0 var(--ss-brand-blue);
  }

  .ss-agency-mobile__card{
    margin-top:18px;
    padding:18px;
    border-radius:20px;
    color:#fff;
    background:
      radial-gradient(circle at 100% 0,rgba(39,169,255,.35),transparent 34%),
      linear-gradient(145deg,#112254,#3157f6 65%,#7554ff);
  }

  .ss-agency-mobile__card small{
    display:block;
    margin-bottom:7px;
    color:rgba(255,255,255,.72);
    font-size:10px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
  }

  .ss-agency-mobile__card h4{
    margin:0 0 8px;
    font-size:21px;
    line-height:1.2;
    font-weight:800;
    letter-spacing:-.03em;
  }

  .ss-agency-mobile__card p{
    margin:0;
    color:rgba(255,255,255,.78);
    font-size:12px;
    line-height:1.65;
    font-weight:500;
  }

  .ss-agency-mobile__card-actions{
    margin-top:16px;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
  }

  .ss-agency-mobile__card-actions a{
    min-height:44px;
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    text-decoration:none;
    font-size:11px;
    font-weight:800;
  }

  .ss-agency-mobile__card-actions a:first-child{
    color:var(--ss-brand-blue-deep);
    background:#fff;
  }

  .ss-agency-mobile__card-actions a:last-child{
    color:#fff;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.20);
  }

  @media (max-width:1380px){
    .ss-agency-header__inner{
      width:min(1320px, calc(100% - 28px));
      gap:22px;
    }

    .ss-agency-logo img{
      width:142px;
    }

    .ss-agency-nav__link{
      padding:0 10px;
      font-size:13px;
    }

    .ss-agency-mega__body{
      grid-template-columns:250px repeat(3,minmax(0,1fr));
    }
  }

  @media (max-width:1240px){
    .ss-agency-call__text{
      display:none;
    }

    .ss-agency-call{
      width:48px;
      padding:0;
      justify-content:center;
    }

    .ss-agency-call__icon{
      width:34px;
      height:34px;
    }

    .ss-agency-mega{
      width:calc(100vw - 24px);
    }

    .ss-agency-mega__intro{
      padding:26px 22px;
    }

    .ss-agency-mega__body{
      grid-template-columns:230px repeat(3,minmax(0,1fr));
    }

    .ss-agency-mega__column{
      padding:24px 14px 20px;
    }
  }

  @media (max-width:1080px){
    .ss-agency-ask{
      display:none;
    }

    .ss-agency-header__inner{
      gap:16px;
    }

    .ss-agency-nav > ul{
      gap:3px;
    }

    .ss-agency-nav__link{
      padding:0 8px;
      font-size:12.5px;
    }
  }

  @media (max-width:991.98px){
    :root{
      --ss-header-height:76px;
    }

    .ss-agency-header__bar,
    .ss-agency-header__bar.ss-is-scrolled{
      height:var(--ss-header-height);
    }

    .ss-agency-header__inner{
      width:calc(100% - 28px);
      grid-template-columns:auto 1fr auto;
    }

    .ss-agency-nav,
    .ss-agency-call,
    .ss-agency-ask{
      display:none;
    }

    .ss-agency-actions{
      gap:8px;
    }

    .ss-agency-menu-toggle{
      display:flex;
    }

    .ss-agency-proposal{
      min-height:46px;
      padding:0 14px;
      border-radius:14px;
    }

    .ss-agency-mega{
      display:none !important;
    }
  }

  @media (max-width:767.98px){
    .ss-agency-mobile__overlay{
      display:none;
    }

    .ss-agency-mobile__panel{
      width:100%;
      max-width:none;
      box-shadow:none;
    }

    .ss-agency-mobile__head{
      min-height:70px;
      padding:12px 16px;
      padding-top:max(12px, env(safe-area-inset-top));
    }

    .ss-agency-mobile__head img{
      width:132px;
    }

    .ss-agency-mobile__content{
      padding:12px 14px calc(24px + env(safe-area-inset-bottom));
    }

    .ss-agency-mobile__nav{
      gap:4px;
    }

    .ss-agency-mobile__link,
    .ss-agency-mobile__toggle{
      min-height:50px;
      padding:0 13px;
      border-radius:12px;
    }

    .ss-agency-mobile__item.is-open .ss-agency-mobile__submenu{
      grid-template-columns:1fr;
    }

    .ss-agency-mobile__card{
      margin-top:14px;
    }
  }

  @media (max-width:620px){
    .ss-agency-logo img{
      width:126px;
    }

    .ss-agency-proposal{
      display:none;
    }
  }

  @media (max-width:380px){
    .ss-agency-header__inner{
      width:calc(100% - 22px);
    }

    .ss-agency-mobile__head img{
      width:124px;
    }

    .ss-agency-mobile__card-actions{
      grid-template-columns:1fr;
    }
  }

:root{
    --ssf2-blue:#2f5cff;
    --ssf2-blue-dark:#1737bd;
    --ssf2-violet:#6847ff;
    --ssf2-coral:#ff5964;
    --ssf2-navy:#07132e;
    --ssf2-navy-2:#0c1d43;
    --ssf2-white:#ffffff;
    --ssf2-text:#f7f9ff;
    --ssf2-muted:rgba(240,244,255,.68);
    --ssf2-soft:rgba(255,255,255,.055);
    --ssf2-line:rgba(255,255,255,.10);
    --ssf2-container:1240px;
    --ssf2-radius:24px;
    --ssf2-font:"Plus Jakarta Sans","Inter","Segoe UI",Arial,sans-serif;
  }

  .ssf2-footer,
  .ssf2-footer *{
    box-sizing:border-box;
  }

  .ssf2-footer{
    position:relative;
    overflow:hidden;
    margin:0;
    color:var(--ssf2-text);
    font-family:var(--ssf2-font);
    background:
      radial-gradient(circle at 10% 0%, rgba(47,92,255,.22), transparent 30%),
      radial-gradient(circle at 92% 12%, rgba(104,71,255,.18), transparent 30%),
      linear-gradient(150deg,var(--ssf2-navy) 0%,#091837 52%,var(--ssf2-navy-2) 100%);
  }

  .ssf2-footer::before{
    content:"";
    position:absolute;
    width:460px;
    height:460px;
    right:-250px;
    bottom:-260px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:50%;
    box-shadow:
      0 0 0 65px rgba(255,255,255,.018),
      0 0 0 130px rgba(255,255,255,.012);
    pointer-events:none;
  }

  .ssf2-container{
    width:min(var(--ssf2-container), calc(100% - 40px));
    margin-inline:auto;
  }

  .ssf2-footer a{
    text-decoration:none;
  }

  /* ===================== PRE-FOOTER CTA ===================== */

  .ssf2-cta-wrap{
    position:relative;
    z-index:2;
    padding:72px 0 0;
  }

  .ssf2-cta{
    position:relative;
    overflow:hidden;
    display:grid;
    grid-template-columns:minmax(0,1.25fr) auto;
    gap:44px;
    align-items:center;
    padding:42px 46px;
    border:1px solid rgba(255,255,255,.13);
    border-radius:30px;
    background:
      radial-gradient(circle at 88% 15%, rgba(255,255,255,.18), transparent 25%),
      linear-gradient(135deg,#1738bb 0%,var(--ssf2-blue) 56%,var(--ssf2-violet) 100%);
    box-shadow:0 28px 70px rgba(0,0,0,.28);
  }

  .ssf2-cta::after{
    content:"";
    position:absolute;
    width:290px;
    height:290px;
    right:-155px;
    bottom:-185px;
    border:1px solid rgba(255,255,255,.17);
    border-radius:50%;
    box-shadow:
      0 0 0 42px rgba(255,255,255,.04),
      0 0 0 84px rgba(255,255,255,.025);
    pointer-events:none;
  }

  .ssf2-cta-copy,
  .ssf2-cta-actions{
    position:relative;
    z-index:2;
  }

  .ssf2-cta-kicker{
    display:flex;
    align-items:center;
    gap:9px;
    margin-bottom:10px;
    color:#dbe2ff;
    font-size:11px;
    font-weight:800;
    letter-spacing:.13em;
    text-transform:uppercase;
  }

  .ssf2-cta-kicker::before{
    content:"";
    width:24px;
    height:2px;
    border-radius:99px;
    background:var(--ssf2-coral);
  }

  .ssf2-cta h2{
    margin:0;
    max-width:760px;
    color:#fff;
    font-size:clamp(30px,3.5vw,46px);
    line-height:1.12;
    letter-spacing:-1.35px;
    font-weight:800;
  }

  .ssf2-cta p{
    margin:13px 0 0;
    max-width:700px;
    color:rgba(255,255,255,.72);
    font-size:14px;
    line-height:1.7;
  }

  .ssf2-cta-actions{
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:10px;
  }

  .ssf2-btn{
    min-height:50px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    padding:0 19px;
    border:1px solid transparent;
    border-radius:14px;
    color:#fff;
    font-size:13px;
    line-height:1;
    font-weight:800;
    transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease;
  }

  .ssf2-btn:hover{
    transform:translateY(-2px);
  }

  .ssf2-btn svg{
    width:17px;
    height:17px;
  }

  .ssf2-btn--white{
    color:var(--ssf2-blue-dark);
    background:#fff;
    box-shadow:0 15px 34px rgba(7,19,46,.18);
  }

  .ssf2-btn--white:hover{
    color:var(--ssf2-blue);
    box-shadow:0 20px 40px rgba(7,19,46,.24);
  }

  .ssf2-btn--ghost{
    color:#fff;
    border-color:rgba(255,255,255,.28);
    background:rgba(255,255,255,.08);
  }

  .ssf2-btn--ghost:hover{
    color:#fff;
    background:rgba(255,255,255,.14);
  }

  /* ===================== MAIN FOOTER ===================== */

  .ssf2-main{
    position:relative;
    z-index:2;
    padding:72px 0 38px;
  }

  .ssf2-grid{
    display:grid;
    grid-template-columns:minmax(260px,1.28fr) repeat(3,minmax(150px,.72fr)) minmax(250px,1fr);
    gap:44px;
    align-items:start;
  }

  .ssf2-brand-logo{
    display:inline-flex;
    align-items:center;
    margin-bottom:21px;
  }

  .ssf2-brand-logo img{
    width:196px;
    max-width:100%;
    height:auto;
    display:block;
  }

  .ssf2-brand-copy{
    margin:0;
    max-width:340px;
    color:var(--ssf2-muted);
    font-size:13.5px;
    line-height:1.78;
  }

  .ssf2-brand-pills{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:21px;
  }

  .ssf2-brand-pill{
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:8px 10px;
    border:1px solid var(--ssf2-line);
    border-radius:999px;
    color:rgba(255,255,255,.76);
    background:rgba(255,255,255,.045);
    font-size:10px;
    line-height:1;
    font-weight:750;
  }

  .ssf2-brand-pill i{
    width:6px;
    height:6px;
    border-radius:50%;
    background:#4ade80;
  }

  .ssf2-socials{
    display:flex;
    flex-wrap:wrap;
    gap:9px;
    margin-top:24px;
  }

  .ssf2-social{
    width:40px;
    height:40px;
    display:grid;
    place-items:center;
    border:1px solid var(--ssf2-line);
    border-radius:12px;
    color:#fff;
    background:rgba(255,255,255,.045);
    transition:transform .2s ease,background .2s ease,border-color .2s ease;
  }

  .ssf2-social:hover{
    color:#fff;
    transform:translateY(-2px);
    border-color:transparent;
    background:linear-gradient(145deg,var(--ssf2-blue),var(--ssf2-violet));
  }

  .ssf2-social svg{
    width:17px;
    height:17px;
  }

  .ssf2-col-title,
  .ssf2-accordion-button{
    margin:0 0 19px;
    color:#fff;
    font-size:12px;
    line-height:1.3;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
  }

  .ssf2-accordion-button{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:0;
    border:0;
    background:transparent;
    text-align:left;
    cursor:default;
  }

  .ssf2-accordion-icon{
    display:none;
    width:28px;
    height:28px;
    place-items:center;
    border:1px solid var(--ssf2-line);
    border-radius:9px;
    color:#fff;
    background:rgba(255,255,255,.04);
  }

  .ssf2-accordion-icon svg{
    width:14px;
    height:14px;
    transition:transform .22s ease;
  }

  .ssf2-links{
    display:grid;
    gap:12px;
    margin:0;
    padding:0;
    list-style:none;
  }

  .ssf2-links a{
    display:inline-flex;
    align-items:flex-start;
    gap:8px;
    color:var(--ssf2-muted);
    font-size:12.5px;
    line-height:1.55;
    font-weight:600;
    transition:color .2s ease,transform .2s ease;
  }

  .ssf2-links a::before{
    content:"";
    width:5px;
    height:5px;
    flex:0 0 5px;
    margin-top:7px;
    border-radius:50%;
    background:rgba(255,255,255,.27);
    transition:background .2s ease,transform .2s ease;
  }

  .ssf2-links a:hover{
    color:#fff;
    transform:translateX(3px);
  }

  .ssf2-links a:hover::before{
    background:var(--ssf2-coral);
    transform:scale(1.25);
  }

  /* Contact card */

  .ssf2-contact-card{
    position:relative;
    overflow:hidden;
    padding:23px;
    border:1px solid var(--ssf2-line);
    border-radius:20px;
    background:rgba(255,255,255,.055);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
  }

  .ssf2-contact-card::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:3px;
    background:linear-gradient(90deg,var(--ssf2-blue),var(--ssf2-violet),var(--ssf2-coral));
  }

  .ssf2-contact-card h3{
    margin:0 0 7px;
    color:#fff;
    font-size:18px;
    line-height:1.35;
    font-weight:800;
  }

  .ssf2-contact-card > p{
    margin:0 0 17px;
    color:var(--ssf2-muted);
    font-size:12px;
    line-height:1.65;
  }

  .ssf2-contact-list{
    display:grid;
    gap:10px;
    margin:0;
    padding:0;
    list-style:none;
  }

  .ssf2-contact-list li{
    display:grid;
    grid-template-columns:34px minmax(0,1fr);
    gap:10px;
    align-items:center;
  }

  .ssf2-contact-icon{
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    border:1px solid var(--ssf2-line);
    border-radius:10px;
    color:#fff;
    background:rgba(255,255,255,.05);
  }

  .ssf2-contact-icon svg{
    width:15px;
    height:15px;
  }

  .ssf2-contact-list small{
    display:block;
    margin-bottom:2px;
    color:rgba(255,255,255,.45);
    font-size:8.5px;
    line-height:1.2;
    font-weight:800;
    letter-spacing:.09em;
    text-transform:uppercase;
  }

  .ssf2-contact-list a,
  .ssf2-contact-list strong{
    display:block;
    color:rgba(255,255,255,.82);
    font-size:11px;
    line-height:1.5;
    font-weight:650;
    word-break:break-word;
  }

  .ssf2-contact-list a:hover{
    color:#fff;
  }

  .ssf2-contact-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    margin-top:17px;
  }

  .ssf2-contact-action{
    min-height:40px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    padding:0 9px;
    border:1px solid var(--ssf2-line);
    border-radius:11px;
    color:#fff;
    background:rgba(255,255,255,.055);
    font-size:10px;
    line-height:1;
    font-weight:800;
    transition:background .2s ease,transform .2s ease;
  }

  .ssf2-contact-action:hover{
    color:#fff;
    transform:translateY(-1px);
    background:rgba(255,255,255,.10);
  }

  .ssf2-contact-action svg{
    width:14px;
    height:14px;
  }

  .ssf2-contact-action--wa{
    color:#dfffea;
    border-color:rgba(74,222,128,.18);
    background:rgba(34,197,94,.08);
  }

  /* ===================== BOTTOM ===================== */

  .ssf2-bottom{
    position:relative;
    z-index:2;
    border-top:1px solid var(--ssf2-line);
  }

  .ssf2-bottom-inner{
    min-height:76px;
    display:grid;
    grid-template-columns:1fr auto 1fr;
    gap:20px;
    align-items:center;
  }

  .ssf2-copyright{
    color:rgba(255,255,255,.52);
    font-size:11.5px;
    line-height:1.5;
  }

  .ssf2-copyright strong{
    color:rgba(255,255,255,.83);
  }

  .ssf2-legal{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:8px 14px;
  }

  .ssf2-legal a{
    color:rgba(255,255,255,.58);
    font-size:10.5px;
    line-height:1.4;
    font-weight:650;
  }

  .ssf2-legal a:hover{
    color:#fff;
  }

  .ssf2-signature{
    justify-self:end;
    color:rgba(255,255,255,.58);
    font-size:10.5px;
    line-height:1.45;
    font-weight:650;
    text-align:right;
  }

  .ssf2-signature strong{
    color:#fff;
  }

  /* ===================== DESKTOP WHATSAPP ===================== */

  .ssf2-wa{
    position:fixed;
    right:20px;
    bottom:20px;
    z-index:99990;
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    gap:9px;
    font-family:var(--ssf2-font);
  }

  .ssf2-wa-menu{
    display:grid;
    gap:7px;
    opacity:0;
    pointer-events:none;
    transform:translateY(9px);
    transition:opacity .22s ease,transform .22s ease;
  }

  .ssf2-wa.is-open .ssf2-wa-menu{
    opacity:1;
    pointer-events:auto;
    transform:none;
  }

  .ssf2-wa-chip{
    display:flex;
    align-items:center;
    gap:8px;
    padding:9px 12px;
    border:1px solid rgba(255,255,255,.09);
    border-radius:999px;
    color:#fff !important;
    background:rgba(7,19,46,.96);
    box-shadow:0 12px 30px rgba(0,0,0,.22);
    font-size:11px;
    line-height:1;
    font-weight:750;
    white-space:nowrap;
  }

  .ssf2-wa-chip:hover{
    transform:translateX(-2px);
    background:#0c1d43;
  }

  .ssf2-wa-chip span{
    width:7px;
    height:7px;
    border-radius:50%;
    background:#4ade80;
  }

  .ssf2-wa-toggle{
    width:58px;
    height:58px;
    display:grid;
    place-items:center;
    padding:0;
    border:0;
    border-radius:50%;
    color:#fff;
    background:linear-gradient(145deg,#35df78,#16a862);
    box-shadow:0 16px 34px rgba(0,0,0,.25);
    cursor:pointer;
    animation:ssf2WaPulse 2.2s infinite;
  }

  .ssf2-wa-toggle svg{
    width:27px;
    height:27px;
  }

  @keyframes ssf2WaPulse{
    0%{box-shadow:0 0 0 0 rgba(53,223,120,.38),0 16px 34px rgba(0,0,0,.25)}
    70%{box-shadow:0 0 0 16px rgba(53,223,120,0),0 16px 34px rgba(0,0,0,.25)}
    100%{box-shadow:0 0 0 0 rgba(53,223,120,0),0 16px 34px rgba(0,0,0,.25)}
  }

  /* ===================== MOBILE ACTION BAR ===================== */

  .ssf2-mobile-bar{
    display:none;
  }

  /* ===================== RESPONSIVE ===================== */

  @media (max-width:1199.98px){
    .ssf2-grid{
      grid-template-columns:minmax(260px,1.2fr) repeat(2,minmax(170px,.7fr)) minmax(245px,1fr);
      gap:34px;
    }

    .ssf2-grid > .ssf2-col:nth-child(4){
      display:none;
    }
  }

  @media (max-width:991.98px){
    .ssf2-cta{
      grid-template-columns:1fr;
      gap:26px;
    }

    .ssf2-cta-actions{
      justify-content:flex-start;
    }

    .ssf2-grid{
      grid-template-columns:1.2fr 1fr 1fr;
      gap:34px 28px;
    }

    .ssf2-contact-card{
      grid-column:1 / -1;
    }

    .ssf2-contact-list{
      grid-template-columns:repeat(3,1fr);
    }

    .ssf2-contact-list li{
      align-items:start;
    }

    .ssf2-contact-actions{
      max-width:340px;
    }
  }

  @media (max-width:767.98px){
    body{
      padding-bottom:66px;
    }

    .ssf2-container{
      width:min(var(--ssf2-container), calc(100% - 28px));
    }

    .ssf2-cta-wrap{
      padding-top:48px;
    }

    .ssf2-cta{
      padding:30px 23px;
      border-radius:23px;
    }

    .ssf2-cta h2{
      font-size:31px;
      letter-spacing:-.9px;
    }

    .ssf2-cta p{
      font-size:13px;
    }

    .ssf2-cta-actions{
      display:grid;
      grid-template-columns:1fr;
      width:100%;
    }

    .ssf2-cta-actions .ssf2-btn{
      width:100%;
    }

    .ssf2-main{
      padding:54px 0 27px;
    }

    .ssf2-grid{
      display:block;
    }

    .ssf2-brand{
      padding-bottom:28px;
    }

    .ssf2-brand-logo img{
      width:170px;
    }

    .ssf2-brand-copy{
      max-width:none;
      font-size:13px;
    }

    .ssf2-socials{
      margin-top:20px;
    }

    .ssf2-social{
      width:39px;
      height:39px;
    }

    .ssf2-col{
      display:block !important;
      border-top:1px solid var(--ssf2-line);
    }

    .ssf2-col-title{
      display:none;
    }

    .ssf2-accordion-button{
      min-height:58px;
      margin:0;
      cursor:pointer;
    }

    .ssf2-accordion-icon{
      display:grid;
    }

    .ssf2-col.is-open .ssf2-accordion-icon svg{
      transform:rotate(45deg);
    }

    .ssf2-accordion-content{
      display:grid;
      grid-template-rows:0fr;
      opacity:.65;
      transition:grid-template-rows .25s ease,opacity .25s ease;
    }

    .ssf2-accordion-content > div{
      min-height:0;
      overflow:hidden;
    }

    .ssf2-col.is-open .ssf2-accordion-content{
      grid-template-rows:1fr;
      opacity:1;
    }

    .ssf2-links{
      gap:0;
      padding-bottom:12px;
    }

    .ssf2-links li{
      border-top:1px solid rgba(255,255,255,.055);
    }

    .ssf2-links a{
      width:100%;
      min-height:46px;
      align-items:center;
      padding:10px 2px;
      font-size:12px;
    }

    .ssf2-contact-card{
      margin-top:28px;
      padding:21px;
    }

    .ssf2-contact-list{
      grid-template-columns:1fr;
    }

    .ssf2-contact-actions{
      max-width:none;
    }

    .ssf2-bottom-inner{
      min-height:auto;
      grid-template-columns:1fr;
      gap:13px;
      padding:22px 0 24px;
      text-align:center;
    }

    .ssf2-legal{
      order:1;
    }

    .ssf2-copyright{
      order:2;
    }

    .ssf2-signature{
      order:3;
      justify-self:center;
      text-align:center;
    }

    .ssf2-wa{
      display:none;
    }

    .ssf2-mobile-bar{
      position:fixed;
      left:0;
      right:0;
      bottom:0;
      z-index:99999;
      height:66px;
      display:grid;
      grid-template-columns:1fr 1fr 1.15fr;
      padding:7px 9px max(7px,env(safe-area-inset-bottom));
      border-top:1px solid rgba(15,23,42,.10);
      background:rgba(255,255,255,.96);
      -webkit-backdrop-filter:blur(14px);
      backdrop-filter:blur(14px);
      box-shadow:0 -10px 30px rgba(15,23,42,.10);
    }

    .ssf2-mobile-action{
      display:flex;
      flex-direction:column;
      align-items:center;
      justify-content:center;
      gap:3px;
      min-width:0;
      border-radius:11px;
      color:#25324c;
      font-size:9.5px;
      line-height:1;
      font-weight:800;
    }

    .ssf2-mobile-action svg{
      width:19px;
      height:19px;
    }

    .ssf2-mobile-action--wa{
      color:#087a48;
    }

    .ssf2-mobile-action--proposal{
      color:#fff;
      background:linear-gradient(135deg,var(--ssf2-blue-dark),var(--ssf2-blue),var(--ssf2-violet));
      box-shadow:0 8px 20px rgba(47,92,255,.22);
    }
  }

  @media (max-width:420px){
    .ssf2-cta{
      padding:27px 19px;
    }

    .ssf2-cta h2{
      font-size:28px;
    }

    .ssf2-brand-pills{
      display:grid;
      grid-template-columns:1fr;
    }

    .ssf2-brand-pill{
      width:max-content;
    }

    .ssf2-contact-actions{
      grid-template-columns:1fr;
    }
  }

  @media (prefers-reduced-motion:reduce){
    .ssf2-btn,
    .ssf2-social,
    .ssf2-links a,
    .ssf2-accordion-content,
    .ssf2-accordion-icon svg,
    .ssf2-wa-menu,
    .ssf2-wa-chip{
      transition:none !important;
    }

    .ssf2-wa-toggle{
      animation:none !important;
    }
  }

/* WordPress compatibility bridge */
body.admin-bar .ss-agency-header__bar{top:32px}
body.sss-shared-layout-active{overflow-x:hidden}
#sssSharedHeaderFallback{display:contents}
.sss-shared-layout-header,.sss-shared-layout-footer{width:100%}
@media(max-width:782px){body.admin-bar .ss-agency-header__bar{top:46px}}
