:root{
      --navy:#0a3d6f;
      --navy-deep:#062845;
      --blue:#0583c7;
      --blue-soft:#dff3ff;
      --blue-pale:#eef7fc;
      --periwinkle:#8f9cff;
      --periwinkle-soft:#eef0ff;
      --indigo-mist:#d7ddff;
      --red:#e63725;
      --red-soft:#f15a4a;
      --white:#ffffff;
      --ink:#1d252d;
      --text:#5b6872;
      --line:rgba(10,61,111,.12);
      --shadow-sm:0 10px 30px rgba(10,61,111,.08);
      --shadow-md:0 18px 40px rgba(10,61,111,.12);
      --max:1240px;
      --radius:18px;
      --hero-progress:0;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth;overflow-x:hidden;overflow-y:auto;background:linear-gradient(180deg,#ffffff 0%, #f8fcff 38%, #edf6fb 100%)}
    body{
      margin:0;
      min-height:100%;
      font-family:'Hanken Grotesk',system-ui,sans-serif;
      color:var(--ink);
      background:linear-gradient(180deg,#ffffff 0%, #f8fcff 38%, #edf6fb 100%);
    }
    h1,h2,h3,h4,h5{font-family:'Fraunces',serif;margin:0;line-height:1.04;letter-spacing:-.02em}
    p{margin:0}
    a{text-decoration:none;color:inherit}
    img{display:block;max-width:100%}
    iconify-icon,
    .abr-icon{
      display:inline-block;line-height:1;vertical-align:middle;
      transition:transform .34s cubic-bezier(.22,.61,.36,1), filter .34s ease, color .28s ease, opacity .3s ease;
      transform-origin:center;
      will-change:transform,filter;
    }
    .abr-icon svg{display:block;width:100%;height:100%}
    .abr-icon svg [stroke]{stroke-dasharray:88;stroke-dashoffset:0}
    .reveal-stage iconify-icon,
    .reveal-stage .abr-icon{opacity:0;transform:translateY(7px) scale(.9)}
    .reveal-stage.is-revealed iconify-icon,
    .reveal-stage.is-revealed .abr-icon{opacity:1;animation:iconReveal .72s cubic-bezier(.22,.61,.36,1) both}
    .site-header:not(.menu-ready) iconify-icon,
    .site-header:not(.menu-ready) .abr-icon{opacity:0;transform:translateY(-7px) scale(.9)}
    .reveal-stage.is-revealed .hero-mini-item .icon iconify-icon,
    .reveal-stage.is-revealed .hero-mini-item .icon .abr-icon,
    .reveal-stage.is-revealed .audience-card .card-icon iconify-icon,
    .reveal-stage.is-revealed .audience-card .card-icon .abr-icon,
    .reveal-stage.is-revealed .audience-card span iconify-icon,
    .reveal-stage.is-revealed .audience-card span .abr-icon,
    .reveal-stage.is-revealed .service-open-btn iconify-icon,
    .reveal-stage.is-revealed .service-open-btn .abr-icon,
    .reveal-stage.is-revealed .cta-points .tick iconify-icon,
    .reveal-stage.is-revealed .cta-points .tick .abr-icon,
    .reveal-stage.is-revealed .footer-col .info-item iconify-icon,
    .reveal-stage.is-revealed .footer-col .info-item .abr-icon,
    .reveal-stage.is-revealed .work-nav iconify-icon,
    .reveal-stage.is-revealed .work-nav .abr-icon,
    .site-header.menu-ready .nav-trigger iconify-icon,
    .site-header.menu-ready .nav-trigger .abr-icon{
      opacity:1;
      animation:iconReveal .72s cubic-bezier(.22,.61,.36,1) both;
    }
    .reveal-stage.is-revealed .hero-mini-item .icon .abr-icon svg [stroke],
    .reveal-stage.is-revealed .audience-card .card-icon .abr-icon svg [stroke],
    .reveal-stage.is-revealed .audience-card span .abr-icon svg [stroke],
    .reveal-stage.is-revealed .service-open-btn .abr-icon svg [stroke],
    .reveal-stage.is-revealed .cta-points .tick .abr-icon svg [stroke],
    .reveal-stage.is-revealed .footer-col .info-item .abr-icon svg [stroke],
    .reveal-stage.is-revealed .work-nav .abr-icon svg [stroke],
    .site-header.menu-ready .nav-trigger .abr-icon svg [stroke]{animation:iconStrokeDraw 4.9s cubic-bezier(.22,.9,.2,1) 1}
    .reveal-stage.is-revealed .hero-mini-item .icon .abr-icon svg circle,
    .reveal-stage.is-revealed .audience-card .card-icon .abr-icon svg circle,
    .reveal-stage.is-revealed .service-open-btn .abr-icon svg circle,
    .site-header.menu-ready .nav-trigger .abr-icon svg circle{animation:iconStrokeDraw 4.9s cubic-bezier(.22,.9,.2,1) 1, iconPulse 4.9s ease-in-out 1;transform-origin:center}
    a:hover iconify-icon,
    a:hover .abr-icon,
    a:focus-visible iconify-icon,
    a:focus-visible .abr-icon,
    button:hover iconify-icon,
    button:hover .abr-icon,
    button:focus-visible iconify-icon,
    button:focus-visible .abr-icon,
    .hero-mini-item:hover iconify-icon,
    .hero-mini-item:hover .abr-icon,
    .audience-card:hover iconify-icon,
    .audience-card:hover .abr-icon,
    .service-option:hover iconify-icon,
    .service-option:hover .abr-icon,
    .service-option:focus-visible iconify-icon,
    .service-option:focus-visible .abr-icon,
    .work-nav:hover iconify-icon,
    .work-nav:hover .abr-icon,
    .footer-col a:hover iconify-icon,
    .footer-col a:hover .abr-icon,
    .cta-points li:hover iconify-icon,
    .cta-points li:hover .abr-icon,
    .comment-card:hover .abr-icon,
    .comment-card:focus-within .abr-icon{
      transform:translateY(-2px) scale(1.08);
      filter:drop-shadow(0 6px 14px rgba(5,131,199,.18));
    }
    a:hover .abr-icon svg [stroke],
    a:focus-visible .abr-icon svg [stroke],
    button:hover .abr-icon svg [stroke],
    button:focus-visible .abr-icon svg [stroke],
    .hero-mini-item:hover .abr-icon svg [stroke],
    .audience-card:hover .abr-icon svg [stroke],
    .service-option:hover .abr-icon svg [stroke],
    .service-option:focus-visible .abr-icon svg [stroke],
    .work-nav:hover .abr-icon svg [stroke],
    .footer-col a:hover .abr-icon svg [stroke],
    .cta-points li:hover .abr-icon svg [stroke]{animation:iconStrokeDraw 5.8s cubic-bezier(.22,.9,.2,1) 1}
    a:hover .abr-icon svg circle,
    a:focus-visible .abr-icon svg circle,
    button:hover .abr-icon svg circle,
    button:focus-visible .abr-icon svg circle,
    .hero-mini-item:hover .abr-icon svg circle,
    .audience-card:hover .abr-icon svg circle,
    .service-option:hover .abr-icon svg circle,
    .service-option:focus-visible .abr-icon svg circle,
    .work-nav:hover .abr-icon svg circle,
    .footer-col a:hover .abr-icon svg circle,
    .cta-points li:hover .abr-icon svg circle{animation:iconStrokeDraw 5.8s cubic-bezier(.22,.9,.2,1) 1, iconPulse 5.8s ease-in-out 1;transform-origin:center}
    @keyframes iconReveal{
      0%{opacity:0;transform:translateY(8px) scale(.9)}
      58%{opacity:1;transform:translateY(-2px) scale(1.06)}
      100%{opacity:1;transform:translateY(0) scale(1) rotate(0deg)}
    }
    @keyframes iconStrokeDraw{0%{stroke-dashoffset:88;opacity:.5}42%,82%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:1}}
    @keyframes iconPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.08)}}
    button,input,select,textarea{font:inherit}
    .container{width:min(calc(100% - 2rem),var(--max));margin:0 auto}
    .section{padding:92px 0}
    .eyebrow{
      display:inline-flex;align-items:center;gap:.65rem;
      font-size:.78rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--navy);
    }
    .eyebrow::before{content:"";width:34px;height:2px;background:linear-gradient(90deg,var(--blue),var(--red-soft))}
    .section-head{max-width:760px;margin:0 auto 36px;text-align:center}
    .section-head .eyebrow{justify-content:center}
    .section-head .eyebrow::after,
    .audiences-copy .eyebrow::after{
      content:"";width:34px;height:2px;background:linear-gradient(90deg,var(--red-soft),var(--blue));
    }
    .section-head h2{font-size:clamp(2.2rem,4vw,3.35rem);color:var(--navy);margin-top:14px;white-space:nowrap}
    .section-head p{margin-top:14px;color:var(--text);font-size:1.02rem;line-height:1.72}
    .single-line-desktop{white-space:nowrap}

    .site-header .brand,
    .site-header .nav-links > *,
    .site-header .btn{
      opacity:0;transform:translateY(-10px);
      transition:opacity .58s cubic-bezier(.22,.61,.36,1), transform .58s cubic-bezier(.22,.61,.36,1);
    }
    .site-header.menu-ready .brand,
    .site-header.menu-ready .nav-links > *,
    .site-header.menu-ready .btn{opacity:1;transform:translateY(0)}
    .site-header.menu-ready .brand{transition-delay:.04s}
    .site-header.menu-ready .nav-links > *:nth-child(1){transition-delay:.1s}
    .site-header.menu-ready .nav-links > *:nth-child(2){transition-delay:.16s}
    .site-header.menu-ready .nav-links > *:nth-child(3){transition-delay:.22s}
    .site-header.menu-ready .nav-links > *:nth-child(4){transition-delay:.28s}
    .site-header.menu-ready .btn{transition-delay:.34s}

    .reveal-stage .hero-copy,
    .reveal-stage .section-head,
    .reveal-stage .hero-mini-item,
    .reveal-stage .audience-card,
    .reveal-stage .audiences-copy,
    .reveal-stage .why-abr-copy,
    .reveal-stage .why-abr-photo,
    .reveal-stage .filter-bar,
    .reveal-stage .inspiration-card,
    .reveal-stage .work-slide,
    .reveal-stage .comment-card,
    .reveal-stage .cta-copy,
    .reveal-stage .quote-panel,
    .reveal-stage .cta-points li,
    .reveal-stage .footer-grid > *{
      opacity:0;transform:translateY(22px);
      transition:opacity .72s cubic-bezier(.22,.61,.36,1), transform .72s cubic-bezier(.22,.61,.36,1);
    }
    .reveal-stage.is-revealed .hero-copy,
    .reveal-stage.is-revealed .section-head,
    .reveal-stage.is-revealed .hero-mini-item,
    .reveal-stage.is-revealed .audience-card,
    .reveal-stage.is-revealed .audiences-copy,
    .reveal-stage.is-revealed .why-abr-copy,
    .reveal-stage.is-revealed .why-abr-photo,
    .reveal-stage.is-revealed .filter-bar,
    .reveal-stage.is-revealed .inspiration-card,
    .reveal-stage.is-revealed .work-slide,
    .reveal-stage.is-revealed .comment-card,
    .reveal-stage.is-revealed .cta-copy,
    .reveal-stage.is-revealed .quote-panel,
    .reveal-stage.is-revealed .cta-points li,
    .reveal-stage.is-revealed .footer-grid > *{opacity:1;transform:translateY(0)}
    .reveal-stage.is-revealed .hero-mini-item:nth-child(1),
    .reveal-stage.is-revealed .inspiration-card:nth-child(1),
    .reveal-stage.is-revealed .work-slide:nth-child(1),
    .reveal-stage.is-revealed .cta-points li:nth-child(1){transition-delay:.06s}
    .reveal-stage.is-revealed .hero-mini-item:nth-child(2),
    .reveal-stage.is-revealed .inspiration-card:nth-child(2),
    .reveal-stage.is-revealed .work-slide:nth-child(2),
    .reveal-stage.is-revealed .cta-points li:nth-child(2){transition-delay:.12s}
    .reveal-stage.is-revealed .hero-mini-item:nth-child(3),
    .reveal-stage.is-revealed .inspiration-card:nth-child(3),
    .reveal-stage.is-revealed .work-slide:nth-child(3),
    .reveal-stage.is-revealed .cta-points li:nth-child(3){transition-delay:.18s}
    .reveal-stage.is-revealed .inspiration-card:nth-child(4),
    .reveal-stage.is-revealed .work-slide:nth-child(4),
    .reveal-stage.is-revealed .comment-card:nth-child(4),
    .reveal-stage.is-revealed .cta-points li:nth-child(4){transition-delay:.24s}

    .site-header{
      position:fixed;top:0;left:0;right:0;z-index:50;
      background:linear-gradient(180deg,rgba(255,255,255,.82),rgba(244,249,255,.68));
      backdrop-filter:blur(18px) saturate(1.28);
      border-bottom:1px solid rgba(10,61,111,.08);
      box-shadow:0 10px 30px rgba(10,61,111,.04);
      transition:background .32s ease, box-shadow .32s ease, border-color .32s ease;
    }
    .site-header.scrolled{
      background:linear-gradient(180deg,rgba(255,255,255,.97),rgba(240,246,255,.94));
      box-shadow:0 18px 40px rgba(10,61,111,.12);
      border-bottom-color:rgba(10,61,111,.12);
    }
    .nav{display:flex;align-items:center;justify-content:space-between;gap:1.2rem;padding:14px 0}
    .brand img{height:54px;width:auto}
    .nav-links{display:flex;align-items:center;gap:1.5rem;font-size:1.08rem;font-weight:600;color:var(--navy)}
    .nav-item{position:relative;display:flex;align-items:center;padding-bottom:18px;margin-bottom:-18px}
    .nav-links a,.nav-trigger{
      position:relative;padding:4px 0;background:none;border:0;color:inherit;font:inherit;cursor:pointer;
      transition:color .24s ease, transform .24s ease, opacity .24s ease;
    }
    .nav-links a::after,.nav-trigger::after{content:"";position:absolute;left:0;bottom:-2px;width:0;height:2px;background:linear-gradient(90deg,var(--red),var(--blue));transition:width .28s ease}
    .header-phone{display:inline-flex;align-items:center;gap:.5rem;color:var(--navy);transition:color .22s ease,transform .22s ease}
    .header-phone:hover,.header-phone:focus-visible{color:var(--red);transform:translateY(-1px)}
    .header-phone iconify-icon,.header-phone .abr-icon{font-size:1.35rem;width:1.35rem;height:1.35rem}
    .header-phone span{font-size:1.08rem;font-weight:700}
    .nav-links a:hover,.nav-links a:focus-visible,.nav-item:hover .nav-trigger,.nav-item:focus-within .nav-trigger,.nav-item.submenu-open .nav-trigger{color:var(--red);transform:translateY(-1px)}
    .nav-links a:hover::after,.nav-links a:focus-visible::after,.nav-item:hover .nav-trigger::after,.nav-item:focus-within .nav-trigger::after,.nav-item.submenu-open .nav-trigger::after{width:100%}
    .nav-trigger{display:inline-flex;align-items:center;gap:.45rem}
    .nav-trigger iconify-icon,.nav-trigger .abr-icon{font-size:14px;width:14px;height:14px;transition:transform .24s ease}
    .nav-item:hover .nav-trigger iconify-icon,.nav-item:hover .nav-trigger .abr-icon,.nav-item:focus-within .nav-trigger iconify-icon,.nav-item:focus-within .nav-trigger .abr-icon,.nav-item.submenu-open .nav-trigger iconify-icon,.nav-item.submenu-open .nav-trigger .abr-icon{transform:rotate(180deg)}
    .submenu{
      position:absolute;top:calc(100% + 10px);left:-18px;min-width:280px;padding:14px;
      display:grid;gap:8px;border-radius:20px;
      background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(239,243,255,.98));
      border:1px solid rgba(143,156,255,.18);
      box-shadow:0 28px 70px rgba(10,61,111,.2);
      opacity:0;visibility:hidden;transform:translateY(10px) scale(.985);pointer-events:none;
      transition:opacity .24s ease,transform .24s ease,visibility .24s ease;
      backdrop-filter:blur(16px) saturate(1.12);
    }
    .submenu::before{content:"";position:absolute;left:0;right:0;top:-18px;height:18px}
    .nav-item:hover .submenu,.nav-item:focus-within .submenu,.nav-item.submenu-open .submenu{opacity:1;visibility:visible;transform:translateY(0) scale(1);pointer-events:auto}
    .submenu a{
      display:flex;flex-direction:column;gap:3px;padding:13px 14px;border-radius:14px;
      background:rgba(255,255,255,.74);border:1px solid rgba(10,61,111,.06);
      transition:transform .24s ease, background .24s ease, border-color .24s ease, box-shadow .24s ease;
    }
    .submenu a:hover,.submenu a:focus-visible{background:rgba(255,255,255,.98);border-color:rgba(143,156,255,.28);transform:translateX(4px);box-shadow:0 14px 30px rgba(10,61,111,.1)}
    .submenu strong{font-size:.9rem;color:var(--navy)}
    .submenu span{font-size:.78rem;color:var(--text);line-height:1.45}

    .btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;padding:14px 24px;border-radius:999px;font-weight:700;transition:transform .24s ease, box-shadow .24s ease, background .24s ease, color .24s ease, border-color .24s ease;border:1px solid transparent;cursor:pointer}
    .btn:hover,.btn:focus-visible{transform:translateY(-3px);box-shadow:0 18px 38px rgba(10,61,111,.16)}
    .btn-primary{color:#fff;background:linear-gradient(135deg,var(--red),var(--red-soft));box-shadow:0 8px 16px rgba(140,30,22,.35)}
    .btn-secondary{color:var(--navy);background:rgba(255,255,255,.84);border-color:rgba(10,61,111,.16)}
    .btn-light{color:var(--navy);background:#fff;border-color:rgba(10,61,111,.12)}

    .hero-scroll{position:relative;min-height:150vh;background:linear-gradient(180deg,#f8fbff 0%,#eef4ff 100%);--hero-progress:0}
    .hero-sticky{
      position:sticky;top:0;min-height:100vh;overflow:hidden;display:flex;align-items:center;
      background:linear-gradient(180deg,#eef4ff 0%, #dbe6ff 38%, #cfd8ff 62%, #edf6fb 100%);
    }
    .hero-bg,.hero-overlay{position:absolute;inset:0}
    .hero-bg{
      transform:translate3d(0,calc(var(--hero-progress) * 42px),0) scale(calc(1.02 + (1 - var(--hero-progress)) * .03));
      transform-origin:center;transition:transform .12s linear;will-change:transform;
    }
    .hero-bg img{
      width:100%;height:100%;object-fit:cover;object-position:64% center;
      transform:scaleX(-1) scale(1.06);
      transition:filter .12s linear;
      filter:saturate(calc(.9 + var(--hero-progress) * .12)) contrast(calc(.98 + var(--hero-progress) * .05));
      animation:heroPhotoDrift 18s ease-in-out infinite alternate;
      will-change:transform,filter;
    }
    @keyframes heroPhotoDrift{from{transform:scaleX(-1) scale(1.06) translateX(-1.7%)}to{transform:scaleX(-1) scale(1.08) translateX(1.7%)}}
    .hero-overlay{
      background:
        linear-gradient(90deg,rgba(5,13,22,.72) 0%,rgba(5,13,22,.56) 28%,rgba(5,13,22,.26) 52%,rgba(5,13,22,.08) 72%,rgba(5,13,22,.02) 100%),
        radial-gradient(circle at 16% 24%, rgba(230,55,37,.12), transparent 30%),
        radial-gradient(circle at 28% 34%, rgba(5,131,199,.12), transparent 28%);
      opacity:calc(.92 - var(--hero-progress) * .24);
      transition:opacity .12s linear;
    }
    .hero-frame{position:relative;z-index:2;width:100%;padding:124px 0 84px;transform:translate3d(0,calc(var(--hero-progress) * -16px),0);transition:transform .12s linear}
    .hero-copy{
      width:min(1200px,100%);
      padding-inline-start:clamp(160px,21vw,320px);
      transform:translate3d(0,calc(var(--hero-progress) * -42px),0);
      transition:transform .12s linear, opacity .12s linear;
    }
    .hero-copy h1{
      font-size:clamp(3.2rem,5.75vw,5.5rem);
      color:#fff;
      margin:0 0 18px;
      max-width:none;
      text-shadow:0 8px 18px rgba(0,0,0,.2);
    }
    .hero-copy h1 .accent{color:var(--red)}
    .hero-kicker-row{margin:0 0 18px}
    .hero-kicker-row .eyebrow{color:#edf5ff}
    .hero-kicker-row .eyebrow::before{background:linear-gradient(90deg,rgba(255,255,255,.78),rgba(230,55,37,.9))}
    .hero-copy > p{
      max-width:60ch;
      font-size:1.08rem;line-height:1.8;color:rgba(255,255,255,.94);margin-bottom:28px;
      text-shadow:0 6px 16px rgba(0,0,0,.18);
    }
    .hero-actions{display:flex;flex-wrap:wrap;gap:14px}
    .hero-scroll-cue{
      position:absolute;left:50%;bottom:34px;transform:translateX(-50%);z-index:2;
      display:flex;align-items:center;gap:.8rem;color:rgba(255,255,255,.78);font-size:.82rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;
      opacity:calc(1 - var(--hero-progress) * 1.8);transition:opacity .2s linear;
    }
    .hero-scroll-cue span{width:42px;height:1px;background:linear-gradient(90deg,rgba(5,131,199,.6),rgba(230,55,37,.6))}

    .hero-mini-band{
      background:linear-gradient(90deg,#f8fbff 0%,#eef0ff 42%,#d7ddff 100%);
      border-top:1px solid rgba(255,255,255,.6);border-bottom:1px solid rgba(10,61,111,.08)
    }
    .hero-mini-grid{display:grid;grid-template-columns:repeat(3,1fr)}
    .hero-mini-item{display:flex;align-items:center;gap:14px;padding:22px 20px;border-right:1px solid rgba(10,61,111,.08)}
    .hero-mini-item:last-child{border-right:0}
    .hero-mini-item .icon{width:42px;height:42px;border-radius:12px;background:rgba(255,255,255,.82);display:grid;place-items:center;color:var(--navy);box-shadow:0 10px 20px rgba(10,61,111,.08)}
    .hero-mini-item .icon iconify-icon,.hero-mini-item .icon .abr-icon{font-size:22px;width:22px;height:22px;color:var(--blue)}
    .hero-mini-item span{font-size:.8rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--navy);line-height:1.35}

    .audiences{background:#fff;padding:40px 0 18px}
    /* Temporarily hidden on Home; keep the full section available for reactivation. */
    .audiences.is-hidden{display:none !important}
    .audiences-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.78fr) minmax(0,1fr);gap:22px;align-items:center}
    .audience-card{
      position:relative;display:grid;gap:12px;padding:24px;border-radius:24px;
      background:
        linear-gradient(180deg,#ffffff 0%,#f4f8ff 100%) padding-box,
        linear-gradient(135deg,rgba(5,131,199,.92),rgba(230,55,37,.86)) border-box;
      border:1.5px solid transparent;box-shadow:0 12px 28px rgba(6,40,69,.08);cursor:pointer;
      transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease, background .24s ease;
    }
    .audience-card--left{grid-column:1}
    .audience-card--right{grid-column:3}
    .audience-card:hover,.audience-card:focus-visible{transform:translateY(-8px) scale(1.018);box-shadow:0 22px 46px rgba(6,40,69,.14);border-color:rgba(230,55,37,.22)}
    .audience-card .card-icon{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,#eef7ff,#dff1ff);border:1px solid rgba(10,61,111,.08);box-shadow:0 12px 22px rgba(10,61,111,.08);transition:transform .24s ease, box-shadow .24s ease}
    .audience-card:hover .card-icon,.audience-card:focus-visible .card-icon{transform:scale(1.08) translateY(-2px);box-shadow:0 18px 28px rgba(10,61,111,.12)}
    .audience-card .card-icon iconify-icon,.audience-card .card-icon .abr-icon{font-size:24px;width:24px;height:24px;color:var(--navy)}
    .audience-card small{font-size:.78rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#6b78d8}
    .audience-card h3{font-size:1.55rem;color:var(--navy)}
    .audience-card p{color:var(--text);line-height:1.72}
    .audience-card span{display:inline-flex;align-items:center;gap:.55rem;font-size:.82rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--red);transition:transform .24s ease, letter-spacing .24s ease}
    .audience-card:hover span,.audience-card:focus-visible span{transform:translateX(4px);letter-spacing:.14em}
    .audience-card span iconify-icon,.audience-card span .abr-icon{font-size:16px;width:16px;height:16px}
    .audiences-copy{
      grid-column:2;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:24px 26px;border-radius:30px;
      background:
        linear-gradient(135deg,#fbfdff 0%,#eff5ff 55%,#edf8ff 100%) padding-box,
        linear-gradient(135deg,rgba(5,131,199,.9),rgba(230,55,37,.78)) border-box;
      border:1.5px solid transparent;box-shadow:0 12px 28px rgba(6,40,69,.08);
    }
    .audiences-copy .eyebrow{margin-bottom:14px;justify-content:center}
    .audiences-copy h2{font-size:clamp(1.68rem,2.7vw,2.28rem);color:var(--navy);max-width:13ch}
    .audiences-copy p{margin-top:14px;color:var(--text);line-height:1.78;max-width:31ch}

    .services{background:#fff;position:relative}
    .services-selector{
      display:flex;align-items:stretch;gap:12px;min-height:470px;
      padding-top:8px;padding-bottom:28px;
      overflow:visible;
    }
    .service-option{
      position:relative;flex:1 1 0%;min-width:82px;padding:2px;border-radius:26px;overflow:hidden;cursor:pointer;
      border:0;box-shadow:0 12px 24px rgba(6,40,69,.12);
      background:linear-gradient(135deg,rgba(5,131,199,.96),rgba(230,55,37,.9));isolation:isolate;
      transition:flex .72s cubic-bezier(.2,.8,.2,1), transform .32s ease, border-color .32s ease, box-shadow .32s ease, opacity .5s ease;
      opacity:0;transform:translateX(-46px);
    }
    .service-option.is-visible{opacity:1;transform:translateX(0)}
    .service-option:hover,.service-option:focus-visible{transform:translateY(-8px) scale(1.015);box-shadow:0 24px 42px rgba(6,40,69,.24)}
    .service-option.active{
      flex:5.15 1 0%;
      box-shadow:0 18px 32px rgba(6,40,69,.2);
      z-index:2;
    }
    .service-option img{
      position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:24px;
      transform:scale(1.06);transition:transform .72s cubic-bezier(.2,.8,.2,1), filter .42s ease;
      filter:saturate(.96) contrast(.96) brightness(.9);
    }
    .service-option.active img{transform:scale(1.03);filter:saturate(1) contrast(1) brightness(.97)}
    .service-option:hover img,.service-option:focus-visible img{transform:scale(1.09);filter:saturate(1.04) contrast(1.02) brightness(.98)}
    .service-option::before,
    .service-option::after{content:none}
    .service-rail,
    .service-active-copy{position:absolute;z-index:2}
    .service-rail{
      left:14px;top:16px;bottom:16px;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;
      pointer-events:none;
    }
    .service-number,
    .service-active-copy .service-kicker{
      display:inline-flex;align-items:center;justify-content:center;min-width:48px;height:48px;padding:0 14px;border-radius:999px;
      background:linear-gradient(135deg,rgba(230,55,37,.28),rgba(5,131,199,.2));border:1px solid rgba(255,255,255,.22);
      backdrop-filter:blur(10px);
      box-shadow:0 10px 22px rgba(6,40,69,.18);
      color:#fff;font-size:.8rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
    }
    .service-vertical-title{
      writing-mode:vertical-rl;transform:rotate(180deg);
      color:#fff;font-size:.86rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
      text-shadow:0 4px 16px rgba(0,0,0,.35);
      opacity:.96;transition:opacity .24s ease;
      background:rgba(0,0,0,.4);padding:8px 6px;border-radius:6px;
    }
    .service-active-copy{
      left:14px;right:14px;bottom:14px;display:flex;flex-direction:column;align-items:flex-start;gap:12px;
      padding:18px;border-radius:22px;background:transparent;backdrop-filter:none;border:0;
      opacity:0;transform:translateY(22px);pointer-events:none;
      transition:opacity .34s ease, transform .34s ease, background .28s ease, box-shadow .28s ease;
    }
    .service-option.active .service-active-copy{opacity:1;transform:translateY(0);pointer-events:auto}
    .service-option:hover .service-active-copy,.service-option:focus-visible .service-active-copy{box-shadow:0 18px 36px rgba(6,40,69,.16)}
    .service-option.active .service-vertical-title{opacity:0}
    .service-active-copy h3{font-size:clamp(1.34rem,2vw,2rem);color:#fff;text-shadow:0 4px 12px rgba(0,0,0,.85), 0 2px 4px rgba(0,0,0,.6)}
    .service-active-copy p{max-width:32ch;color:#fff;line-height:1.68;font-size:.97rem;text-shadow:0 3px 10px rgba(0,0,0,.85), 0 2px 4px rgba(0,0,0,.6)}
    .service-open-btn{
      display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:12px 18px;border-radius:999px;
      border:1px solid rgba(255,255,255,.24);background:rgba(0,0,0,.25);color:#fff;
      font-size:.82rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;
      backdrop-filter:blur(8px);transition:transform .24s ease, background .24s ease, border-color .24s ease;
    }
    .service-open-btn iconify-icon,.service-open-btn .abr-icon{font-size:15px;width:15px;height:15px}
    .service-open-btn:hover,.service-open-btn:focus-visible{transform:translateY(-2px);background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.34)}
    .services-hint{margin-top:18px;text-align:center;color:var(--text);font-size:.92rem;line-height:1.65}

    .why-abr{background:linear-gradient(180deg,#edf7fb 0%,#eff1ff 48%,#f7fcff 100%)}
    .why-abr-inner{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.06fr) minmax(300px,.78fr);gap:34px;align-items:center;text-align:left}
    .why-abr-copy h2{font-size:clamp(2rem,3.7vw,3rem);color:var(--navy);margin:18px 0 16px}
    .why-abr-kicker{font-size:1.02rem;font-weight:800;color:var(--navy);margin-bottom:18px}
    .why-abr-copy p{color:var(--text);line-height:1.82;font-size:1.04rem;max-width:60ch}
    .why-abr-copy p + p{margin-top:16px}
    .why-abr-gallery{width:min(100%,390px);max-width:390px;justify-self:end;display:grid;grid-template-columns:1fr;gap:16px}
    .why-abr-photo{width:100%;padding:2px;background:linear-gradient(135deg,var(--blue),var(--red));box-shadow:0 16px 30px rgba(6,40,69,.14)}
    .why-abr-photo,.why-abr-photo-frame{border-radius:30px 24px 34px 22px}
    .why-abr-photo:nth-child(2),.why-abr-photo:nth-child(2) .why-abr-photo-frame{border-radius:24px 32px 22px 34px}
    .why-abr-photo-frame{position:relative;width:100%;min-height:220px;overflow:hidden;background:#fff}
    .why-abr-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
    .why-abr-photo-frame::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,61,111,.05) 0%,rgba(10,61,111,.68) 100%)}
    .why-abr-photo span{position:absolute;left:18px;bottom:18px;z-index:1;color:#fff;font-size:.9rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}

    .inspiration{background:linear-gradient(180deg,#fafdff 0%,#f2f4ff 54%,#eff7fb 100%)}
    #inspiration .section-head,
    #portfolio .section-head{max-width:980px}
    #inspiration .section-head h2,
          #portfolio .section-head h2{max-width:none;margin-inline:auto;text-wrap:balance}
    #inspiration .section-head p,
    #portfolio .section-head p{max-width:58ch;margin-inline:auto}
    .filter-bar{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-bottom:26px}
    .filter{padding:11px 18px;border-radius:999px;border:1px solid rgba(10,61,111,.12);background:#fff;color:var(--navy);font-weight:700;font-size:.88rem;cursor:pointer;transition:.24s ease}
    .filter.active,.filter:hover,.filter:focus-visible{border-color:rgba(230,55,37,.24);color:var(--red);transform:translateY(-2px)}
    .inspiration-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
    .inspiration-card{position:relative;border-radius:22px;overflow:hidden;min-height:340px;box-shadow:var(--shadow-sm);cursor:pointer}
    .inspiration-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
    .inspiration-card:hover img{transform:scale(1.05)}
    .inspiration-overlay{position:absolute;inset:auto 0 0 0;padding:20px;background:linear-gradient(180deg,transparent,rgba(10,61,111,.86));color:#fff}
    .inspiration-overlay small{display:block;letter-spacing:.14em;text-transform:uppercase;color:#b8d8eb;font-weight:700;margin-bottom:8px}
    .inspiration-overlay h4{font-size:1.08rem;margin-bottom:6px}
    .inspiration-overlay p{font-size:.9rem;color:#dceaf3;line-height:1.55}

    .work{background:linear-gradient(180deg,#fbfdff 0%,#f2f6ff 52%,#eef6fb 100%)}
    #portfolio .container{width:min(calc(100% - .25rem),1720px)}
    .work-shell{position:relative;width:min(100vw,1760px);left:50%;transform:translateX(-50%);padding-inline:clamp(8px,1.8vw,28px)}
    .work-carousel-frame{position:relative;border-radius:0;padding:8px 0 12px;background:transparent;border:0;box-shadow:none;overflow:visible}
    .work-carousel-frame::before,
    .work-carousel-frame::after{content:"";position:absolute;top:0;bottom:0;width:150px;z-index:2;pointer-events:none}
    .work-carousel-frame::before{left:0;background:linear-gradient(90deg,#fbfdff 0%,rgba(251,253,255,0.8) 20%,rgba(251,253,255,0) 100%)}
    .work-carousel-frame::after{right:0;background:linear-gradient(270deg,#eef6fb 0%,rgba(238,246,251,0.8) 20%,rgba(238,246,251,0) 100%)}
    .work-carousel-viewport{overflow:hidden}
    .work-carousel-track{display:flex;gap:18px;will-change:transform;width:max-content;overflow:visible;padding:4px 0 10px}
    .work-carousel-track::-webkit-scrollbar{display:none}
    .work-slide{position:relative;flex:0 0 clamp(360px,24vw,430px);min-height:430px;border-radius:24px;overflow:hidden;background:#dfe9f7;box-shadow:0 12px 24px rgba(6,40,69,.14);cursor:pointer}
    .work-slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
    .work-slide::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,61,111,.04) 0%,rgba(10,61,111,.76) 100%)}
    .work-slide-caption{position:absolute;left:18px;right:18px;bottom:18px;z-index:1;color:#fff}
    .work-slide-caption h3{margin:0;color:#fff;font-size:1.14rem;text-shadow:0 2px 12px rgba(0,0,0,.9),0 1px 3px rgba(0,0,0,.95)}
    .work-nav{
      position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border-radius:50%;border:1px solid rgba(10,61,111,.12);
      background:rgba(255,255,255,.94);display:grid;place-items:center;color:var(--navy);font-size:1.18rem;box-shadow:var(--shadow-sm);cursor:pointer;z-index:3;
    }
    .work-nav iconify-icon,.work-nav .abr-icon{font-size:20px;width:20px;height:20px}
    .work-nav:hover,.work-nav:focus-visible{transform:translateY(-50%) scale(1.05)}
    .work-nav.prev{left:8px}
    .work-nav.next{right:8px}

    .comments{position:relative;overflow:hidden;background:linear-gradient(180deg,#f4f8ff 0%,#ffffff 46%,#eef6fb 100%)}
    .comments::before{content:"";position:absolute;inset:auto auto 24px -60px;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,rgba(5,131,199,.16),transparent 68%);pointer-events:none}
    .comments::after{content:"";position:absolute;top:40px;right:-70px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(230,55,37,.12),transparent 70%);pointer-events:none}
    .comments .container{position:relative;z-index:1}
    .comments .section-head{max-width:700px}
    .comments-marquee{
      display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start;max-height:500px;overflow:hidden;
      -webkit-mask-image:linear-gradient(to bottom,transparent,black 8%,black 92%,transparent);
      mask-image:linear-gradient(to bottom,transparent,black 8%,black 92%,transparent);
    }
    .comments-column{overflow:hidden}
    .comments-track{display:grid;gap:18px;will-change:transform;animation:commentsMarquee 18s linear infinite}
    .comments-column:nth-child(2) .comments-track{animation-duration:22s}
    .comments-column:nth-child(3) .comments-track{animation-duration:20s}
    .comments-column:hover .comments-track,.comments-column:focus-within .comments-track{animation-play-state:paused}
    .comment-card{
      position:relative;padding:30px;border-radius:30px;
      background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(238,246,255,.96));
      border:1px solid rgba(10,61,111,.09);box-shadow:0 20px 48px rgba(10,61,111,.09);
      min-height:0;display:flex;flex-direction:column;gap:16px;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;
    }
    .comment-card:hover,.comment-card:focus-within{transform:translateY(-8px) scale(1.02);box-shadow:0 28px 56px rgba(10,61,111,.14);border-color:rgba(10,61,111,.16)}
    .comment-card::before{content:"“";position:absolute;right:22px;top:18px;font-family:'Fraunces',serif;font-size:4rem;line-height:1;color:rgba(10,61,111,.08)}
    .comment-stars{display:inline-flex;gap:4px;color:var(--red);font-size:.92rem;letter-spacing:.08em}
    .comment-card p{color:#4f6171;line-height:1.78;font-size:1rem;position:relative;z-index:1}
    .comment-meta{margin-top:auto;display:flex;align-items:center;gap:14px}
    .comment-avatar{
      width:52px;height:52px;border-radius:50%;flex-shrink:0;display:block;overflow:hidden;
      background:linear-gradient(135deg,var(--navy),var(--blue));
      box-shadow:0 14px 28px rgba(10,61,111,.18)
    }
    .comment-avatar img{width:100%;height:100%;object-fit:cover;display:block}
    .comment-meta strong{display:block;font-size:.98rem;color:var(--navy)}
    .comment-meta span{display:block;margin-top:4px;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:#6d80a1;font-weight:800}
    @keyframes commentsMarquee{from{transform:translateY(0)}to{transform:translateY(-50%)}}

    .abr-chat{position:fixed;right:22px;bottom:22px;z-index:1400;font-family:'Hanken Grotesk',system-ui,sans-serif}
    .abr-chat-teaser{
      position:absolute;right:0;bottom:66px;width:286px;display:flex;gap:12px;align-items:center;
      padding:14px 16px 14px 14px;border-radius:18px 18px 6px 18px;background:rgba(255,255,255,.98);
      border:1px solid rgba(10,61,111,.08);box-shadow:0 24px 52px rgba(6,40,69,.2);
      opacity:0;transform:translateY(10px) scale(.965);transform-origin:bottom right;transition:.32s ease;pointer-events:none;
      backdrop-filter:blur(14px) saturate(1.15);color:var(--ink)
    }
    .abr-chat-teaser.show{opacity:1;transform:none;pointer-events:auto;cursor:pointer}
    .abr-chat.open .abr-chat-teaser{opacity:0;pointer-events:none}
    .abr-chat-teaser-close{position:absolute;top:8px;right:10px;border:0;background:none;color:#8aa0b6;font-size:1.1rem;line-height:1;cursor:pointer}
    .abr-chat-teaser-mark{position:relative;flex-shrink:0}
    .abr-chat-teaser-mark img{
      width:52px;height:52px;border-radius:50%;display:block;object-fit:cover;
      border:2px solid rgba(255,255,255,.92);box-shadow:0 12px 26px rgba(10,61,111,.2)
    }
    .abr-chat-teaser-mark .dot{position:absolute;right:1px;bottom:1px;width:12px;height:12px;border-radius:50%;background:#22c55e;border:2px solid #fff}
    .abr-chat-teaser-copy{font-size:.9rem;line-height:1.5;color:#526575}
    .abr-chat-teaser-copy b{display:block;margin-bottom:2px;color:#12273b;font-size:.93rem}
    .abr-chat-launch{
      display:flex;align-items:center;gap:10px;padding:12px 22px 12px 14px;border:0;border-radius:999px;cursor:pointer;
      background:linear-gradient(120deg,var(--red) 0%,var(--red-soft) 24%,var(--blue) 100%);color:#fff;font-weight:800;font-size:.97rem;
      box-shadow:0 10px 20px rgba(140,30,22,.35);transition:transform .24s ease,box-shadow .24s ease,opacity .24s ease
    }
    .abr-chat-launch:hover,.abr-chat-launch:focus-visible{transform:translateY(-2px);box-shadow:0 22px 46px rgba(5,131,199,.26)}
    .abr-chat-launch svg{width:20px;height:20px;flex-shrink:0}
    .abr-chat.open .abr-chat-launch{opacity:0;pointer-events:none}
    .abr-chat-panel{
      position:absolute;right:0;bottom:68px;width:360px;max-width:calc(100vw - 28px);overflow:hidden;
      border-radius:22px;background:linear-gradient(180deg,#ffffff 0%,#f5f9ff 100%);border:1px solid rgba(10,61,111,.1);
      box-shadow:0 28px 70px rgba(10,61,111,.22);opacity:0;visibility:hidden;transform:translateY(16px) scale(.97);transform-origin:bottom right;
      transition:.3s ease
    }
    .abr-chat.open .abr-chat-panel{opacity:1;visibility:visible;transform:none}
    .abr-chat-head{display:flex;align-items:center;gap:12px;padding:16px 16px 15px;background:linear-gradient(135deg,var(--navy-deep),var(--navy),var(--blue));color:#fff}
    .abr-chat-avatar{
      width:42px;height:42px;border-radius:50%;display:block;flex-shrink:0;overflow:hidden;
      background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.22);box-shadow:0 8px 18px rgba(7,25,45,.18)
    }
    .abr-chat-avatar img{width:100%;height:100%;object-fit:cover;display:block}
    .abr-chat-head b{display:block;font-size:1rem}
    .abr-chat-head span{display:block;margin-top:3px;font-size:.76rem;color:rgba(255,255,255,.86)}
    .abr-chat-close{margin-left:auto;border:0;background:none;color:rgba(255,255,255,.9);font-size:1.55rem;line-height:1;cursor:pointer}
    .abr-chat-body{padding:18px 16px 6px;max-height:220px;overflow-y:auto;background:linear-gradient(180deg,#edf5ff 0%,#f8fbff 100%)}
    .abr-chat-msg{
      max-width:92%;padding:12px 14px;border-radius:16px 16px 16px 6px;
      background:#fff;color:#23384c;border:1px solid rgba(10,61,111,.08);font-size:.92rem;line-height:1.5;box-shadow:0 12px 26px rgba(10,61,111,.06)
    }
    .abr-chat-msg.me{margin-left:auto;margin-top:10px;border-radius:16px 16px 6px 16px;background:linear-gradient(135deg,var(--navy),var(--blue));border:0;color:#fff}
    .abr-chat-form{padding:12px 16px 16px;display:grid;gap:10px}
    .abr-chat-form input,.abr-chat-form textarea,.abr-chat-form select{
      width:100%;border-radius:12px;border:1px solid rgba(10,61,111,.12);background:#fff;color:var(--navy);padding:12px 13px;font-size:.92rem
    }
    .abr-chat-form textarea{min-height:84px;resize:vertical}
    .abr-chat-form input::placeholder,.abr-chat-form textarea::placeholder{color:#7b8ea1}
    .abr-chat-send{
      display:flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:12px;padding:13px 14px;cursor:pointer;
      background:linear-gradient(135deg,var(--red),var(--red-soft),var(--blue));color:#fff;font-weight:800
    }
    .abr-chat-send svg{width:16px;height:16px;flex-shrink:0}
    .abr-chat-legal{text-align:center;font-size:.72rem;line-height:1.5;color:#74879c;margin:0}

    .cta{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--navy-deep),var(--navy));color:#fff}
    .cta::before,.cta::after{content:"";position:absolute;border-radius:50%;filter:blur(30px);opacity:.55}
    .cta::before{width:280px;height:280px;background:rgba(5,131,199,.35);top:-60px;left:-80px}
    .cta::after{width:240px;height:240px;background:rgba(241,90,74,.2);right:-60px;bottom:-80px}
    .cta-inner{position:relative;z-index:2;display:grid;grid-template-columns:1fr minmax(320px,520px) 1fr;gap:24px;align-items:start}
    .cta-copy h2{font-size:clamp(2.3rem,4vw,3.7rem);margin-bottom:16px}
    .cta-copy p,.cta-points li{color:#d9ebf6;line-height:1.7}
    .quote-panel{background:rgba(255,255,255,.12);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.18);padding:22px;border-radius:24px;box-shadow:0 28px 60px rgba(0,0,0,.22)}
    .quote-panel h3{font-size:1.35rem;margin-bottom:8px}
    .quote-panel p{font-size:.95rem;color:#d9ebf6;margin-bottom:16px}
    .quote-form{display:grid;gap:12px}
    .field input,.field select,.field textarea{
      width:100%;border-radius:14px;border:1px solid rgba(255,255,255,.18);padding:14px 15px;background:#fff;color:var(--navy);
      font-family:inherit;font-size:.95rem;
    }
    .field input::placeholder,.field textarea::placeholder{color:#5f748c}
    .field select{color:var(--navy)}
    .field select option{color:var(--navy)}
    .field textarea{min-height:118px;resize:vertical}
    .cta-points{list-style:none;padding:10px 0 0;margin:0;display:grid;gap:12px}
    .cta-points li{display:flex;gap:10px;align-items:flex-start;font-weight:600}
    .cta-points .tick{display:inline-flex;align-items:center;justify-content:center;color:#8fe2ff}
    .cta-points .tick iconify-icon,.cta-points .tick .abr-icon{font-size:16px;width:16px;height:16px}

    .footer{background:linear-gradient(135deg,#ffffff 0%,#f4f7ff 38%,#dde4ff 100%);color:var(--navy);padding:42px 0 26px}
    .footer-grid{display:grid;grid-template-columns:1.2fr .85fr .85fr;gap:12px;margin-bottom:12px}
    .footer-contact-social{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 0;border-top:1px solid rgba(10,61,111,.08);border-bottom:1px solid rgba(10,61,111,.08);margin-bottom:18px}
    .footer-contact-row{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:22px}
    .footer-contact-row li{color:#47627c;font-size:.94rem}
    .footer-contact-row .info-item{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
    .footer-contact-row .info-item iconify-icon,.footer-contact-row .info-item .abr-icon{flex-shrink:0;font-size:18px;width:18px;height:18px;color:var(--blue)}
    .footer-social-row{display:flex;align-items:center;gap:14px}
    .social-circle{width:40px;height:40px;border-radius:50%;background:rgba(5,131,199,.1);display:grid;place-items:center;color:var(--blue);font-size:1.3rem;transition:background .22s,color .22s,transform .22s}
    .social-circle:hover{background:var(--blue);color:#fff;transform:translateY(-2px)}
    .footer-brand img{height:58px;width:auto;margin-bottom:12px}
    .footer-brand p{color:#59718a;line-height:1.7;max-width:40ch}
    .footer-col h4{font-size:.82rem;letter-spacing:.18em;text-transform:uppercase;color:#6b78d8;margin-bottom:12px;font-family:'Hanken Grotesk',sans-serif;}
    .footer-col{ text-align:left; }
    .footer-col ul{list-style:none;padding:0;margin:0;display:grid;gap:6px;justify-items:start;}
    .footer-col ul{list-style:none;padding:0;margin:0;display:grid;gap:4px;justify-items:start;}
    .footer-col li{margin:0;padding:0;}
    .footer-col .info-item span{margin:0;padding:0;line-height:1.2;}
    .footer-col .info-item{gap:2px;}

    .footer-col ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}
    .footer-col a,.footer-col li{color:#47627c;font-size:.94rem}
    .footer-col a{display:inline-flex;align-items:center;transition:color .22s ease,transform .22s ease}
    .footer-col a:hover,.footer-col a:focus-visible{color:var(--red);transform:translateX(4px)}
    .footer-col .info-item{
      display:flex;
      align-items:center;
      gap:10px;
      position:relative;
    }
    .footer-col .info-item iconify-icon,.footer-col .info-item .abr-icon{
      flex-shrink:0;
      font-size:18px;width:18px;height:18px;color:var(--blue);
    }
    .footer-bottom{padding-top:18px;border-top:1px solid rgba(10,61,111,.08);display:flex;justify-content:space-between;gap:10px;color:#7187a0;font-size:.84rem}

    .modal{position:fixed;inset:0;display:grid;place-items:center;padding:24px;background:rgba(7,19,34,.56);backdrop-filter:blur(8px);opacity:0;pointer-events:none;transition:opacity .24s ease;z-index:1200}
    .modal.open{opacity:1;pointer-events:auto}
    .modal-dialog{position:relative;width:min(1040px,100%);max-height:min(88vh,920px);overflow:auto;padding:28px;border-radius:30px;background:linear-gradient(180deg,#ffffff 0%,#f4f8ff 100%);box-shadow:0 28px 70px rgba(10,61,111,.28)}
    .modal-close{position:absolute;right:18px;top:18px;width:46px;height:46px;border-radius:50%;border:1px solid rgba(10,61,111,.1);background:#fff;color:var(--navy);font-size:1.3rem;font-weight:700;cursor:pointer}
    .modal-head{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;align-items:end;margin-bottom:22px;padding-right:58px}
    .modal-head small{display:block;font-size:.76rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#6b78d8}
    .modal-head h3{font-size:clamp(1.8rem,3vw,2.5rem);color:var(--navy)}
    .modal-head p{color:var(--text);line-height:1.7;max-width:58ch}
    .service-modal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
    .service-modal-card{position:relative;min-height:280px;border-radius:24px;overflow:hidden;background:#dce8f3;box-shadow:var(--shadow-sm)}
    .service-modal-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
    .service-modal-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,61,111,.03) 0%,rgba(10,61,111,.82) 100%)}
    .service-modal-card .content{position:absolute;left:16px;right:16px;bottom:16px;z-index:1;color:#fff}
    .service-modal-card .content span{display:inline-flex;margin-bottom:10px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.18);font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
    .service-modal-card .content h4{font-size:1.08rem;margin-bottom:6px}
    .service-modal-card .content p{font-size:.9rem;line-height:1.55;color:#e4edf7}
    .service-modal-card .content strong{display:inline-flex;align-items:center;gap:.4rem;margin-top:10px;font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;color:#fff}
    .service-modal-card .content strong iconify-icon,.service-modal-card .content strong .abr-icon{font-size:14px;width:14px;height:14px}
    .image-modal .modal-dialog{padding:12px;width:min(1180px,100%);background:transparent;box-shadow:none;overflow:visible}
    .image-modal-figure{position:relative;margin:0;border-radius:28px;overflow:hidden;box-shadow:0 28px 70px rgba(0,0,0,.35)}
    .image-modal-figure img{width:100%;height:auto;max-height:84vh;object-fit:contain;background:#0b1522}
    .image-modal-figure figcaption{position:absolute;left:0;right:0;bottom:0;padding:18px 22px;background:linear-gradient(180deg,transparent,rgba(10,21,34,.85));color:#fff}
    .image-modal-figure h4{font-size:1.12rem;margin-bottom:6px}
    .image-modal-figure p{font-size:.92rem;line-height:1.55;color:#d9ebf6}
    .abr-toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%) translateY(14px);padding:14px 18px;border-radius:999px;background:rgba(10,61,111,.96);color:#fff;box-shadow:var(--shadow-md);font-size:.9rem;font-weight:700;opacity:0;pointer-events:none;transition:.24s ease;z-index:1500}
    .abr-toast.visible{opacity:1;transform:translateX(-50%) translateY(0)}

    .cta-ref{background:#0a3f6b;color:#1c2733;position:relative;overflow:hidden;padding:104px 0}
    .cta-ref::before{content:'';position:absolute;inset:-18%;background:radial-gradient(circle at 18% 20%,hsla(205,91%,64%,.72),transparent 32%),radial-gradient(circle at 82% 12%,hsla(243,68%,36%,.52),transparent 36%),radial-gradient(circle at 50% 88%,hsla(211,61%,57%,.74),transparent 40%),linear-gradient(135deg,hsl(216,90%,27%),hsl(205,91%,64%));filter:saturate(1.25)}
    .cta-ref::after{content:'';position:absolute;inset:0;background:linear-gradient(120deg,rgba(255,255,255,.3),rgba(255,255,255,.04));pointer-events:none}
    .cta-ref .cta-inner{position:relative;z-index:2;display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}
    .cta-ref .cta-copy{background:rgba(255,255,255,.86);border:1px solid rgba(255,255,255,.52);border-radius:24px;padding:34px;box-shadow:0 28px 70px rgba(9,19,34,.18);backdrop-filter:blur(14px)}
    .cta-ref .cta-copy .eyebrow{color:var(--blue-deep)}
    .cta-ref .cta-copy h2{font-size:clamp(2.1rem,4vw,3.2rem);margin-bottom:18px;color:#0E1116}
    .cta-ref .cta-copy h2 .accent{color:var(--blue)}
    .cta-ref .cta-copy p{color:#1c2733;font-size:1.08rem;max-width:46ch}
    .cta-ref .cta-proof{display:flex;align-items:flex-start;gap:16px;margin-top:24px}
    .cta-ref .cta-proof-icon{display:grid;place-items:center;flex:0 0 48px;height:48px;border-radius:15px;background:linear-gradient(135deg,var(--red),var(--blue));color:#fff;font-size:.75rem;font-weight:900;letter-spacing:.08em;box-shadow:0 12px 22px rgba(10,61,111,.18)}
    .cta-ref .cta-points{padding:0;gap:10px}
    .cta-ref .cta-points li{color:#1c2733}
    .cta-ref .quote-panel{background:linear-gradient(180deg,#ffffff 0%,#f5f8ff 100%);border:1px solid rgba(10,61,111,.08);padding:24px;border-radius:24px;box-shadow:var(--shadow-md)}
    .cta-ref .quote-panel h3{color:var(--navy)}
    .cta-ref .quote-panel p{color:var(--text)}
    .cta-ref .field input,.cta-ref .field select,.cta-ref .field textarea{border:1px solid rgba(10,61,111,.12);background:#fff;color:var(--ink)}
    .cta-ref .field input::placeholder,.cta-ref .field textarea::placeholder{color:#7f90a0}
    .cta-ref .field select{color:var(--ink)}

    .modal{z-index:3600;overscroll-behavior:contain}
    .image-modal{z-index:3700}
    .modal-dialog{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
    .modal-close{z-index:10}
    body.abr-modal-open{overscroll-behavior:none}

    .ba-handle{width:44px!important;padding:0!important;background:transparent!important;box-shadow:none!important;touch-action:none!important}
    .ba-handle::before{content:"";position:absolute;top:0;bottom:0;left:50%;width:4px;transform:translateX(-50%);background:#fff;box-shadow:0 0 22px rgba(255,255,255,.8);pointer-events:none}
    .ba-handle > span{position:relative;z-index:1}

    @media (max-width:1200px){
      .services-selector{gap:10px;min-height:430px}
      .service-option.active{flex:4.3 1 0%}
      .inspiration-grid{grid-template-columns:repeat(2,1fr)}
      .service-modal-grid{grid-template-columns:1fr 1fr}
      .comments-marquee{grid-template-columns:repeat(2,minmax(0,1fr))}
      .comments-column:nth-child(3){display:none}
    }
    @media (max-width:1100px){
      .hero-mini-grid{grid-template-columns:1fr}
      .hero-mini-item{border-right:0;border-bottom:1px solid rgba(10,61,111,.08)}
      .hero-mini-item:last-child{border-bottom:0}
      .audiences-shell,.cta-inner,.footer-grid,.why-abr-inner{grid-template-columns:1fr}
      .audience-card--left,.audiences-copy,.audience-card--right{grid-column:auto}
      .why-abr-gallery{max-width:none;justify-self:stretch}
      .services-selector{min-height:390px}
      .service-option.active{flex:3.7 1 0%}
      .service-modal-grid{grid-template-columns:1fr}
    }
    @media (max-width:760px){
      .single-line-desktop{white-space:nowrap}
      .nav{flex-direction:column;align-items:flex-start}
      .nav-links{flex-wrap:wrap}
      .hero-scroll{min-height:180vh}
      .hero-frame{padding:148px 0 78px}
      .hero-copy{padding-inline-start:clamp(14px,5vw,24px)}
      .hero-copy h1{font-size:clamp(2.9rem,14vw,4.8rem)}
      .hero-copy > p{font-size:1rem}
      .audiences{padding-top:24px}
      .services-selector{display:grid;grid-template-columns:1fr;min-height:auto}
      .service-option,.service-option.active{min-height:330px;flex:auto}
      .service-rail{left:18px;top:18px;bottom:auto}
      .service-vertical-title{display:none}
      .service-option.active .service-vertical-title,.service-option .service-vertical-title{opacity:1}
      .service-active-copy{opacity:1;transform:none;pointer-events:auto}
      .inspiration-grid{grid-template-columns:1fr}
      .comments-marquee{grid-template-columns:1fr;max-height:none;mask-image:none;-webkit-mask-image:none}
      .comments-column:nth-child(2),.comments-column:nth-child(3){display:none}
      .comments-track{animation:none}
      .work-shell{width:100%;left:auto;transform:none;padding-inline:0}
      .work-carousel-frame{padding:16px 0 20px}
      .work-carousel-frame::before,.work-carousel-frame::after{width:40px}
      .work-slide{flex-basis:84vw;min-height:360px}
      .work-nav{display:none}
      .footer-bottom{flex-direction:column}
      .footer-contact-social{flex-direction:column;align-items:flex-start;gap:14px}
      .footer-contact-row{flex-direction:column;align-items:flex-start;gap:12px}
      .brand img{height:48px}
      .submenu{position:static;opacity:1;visibility:visible;transform:none;pointer-events:auto;min-width:0;width:100%;margin-top:8px}
      .modal{align-items:flex-start;padding:calc(86px + env(safe-area-inset-top)) 12px 18px}
      .modal-dialog{max-height:calc(100vh - 104px);margin:0;overflow:auto}
      .image-modal .modal-dialog{max-height:calc(100vh - 104px);overflow:visible;padding:12px}
      .image-modal-figure img{max-height:calc(100vh - 170px)}
      .modal-close{top:14px;right:14px;z-index:5}
      .cta-ref{padding:72px 0}
      .cta-ref .cta-inner{grid-template-columns:1fr;gap:28px}
      .cta-ref .cta-copy{padding:26px 22px}
      .cta-ref .cta-proof{gap:12px}
      .abr-chat{right:14px;bottom:14px}
      .abr-chat-panel{width:min(360px,calc(100vw - 18px));max-width:calc(100vw - 18px)}
      .abr-chat-teaser{width:min(286px,calc(100vw - 28px))}
    }
