:root {
  --avcl-navy: #07111f;
  --avcl-navy-2: #0c1a2d;
  --avcl-blue: #2563eb;
  --avcl-aqua: #06b6d4;
  --avcl-white: #fff;
  --avcl-bg: #f4f7fb;
  --avcl-text: #233147;
  --avcl-muted: #64748b;
  --avcl-line: #dbe3ee;
}

.avcl-template-main,
.avcl-template-main .entry-content,
.avcl-template-main .wp-block-post-content {
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.avcl-app,
.avcl-app * { box-sizing: border-box; }
.avcl-app { width: 100%; margin: 0; overflow: hidden; color: var(--avcl-text); background: #fff; font-family: Arial, Helvetica, sans-serif; -webkit-font-smoothing: antialiased; }
.avcl-app img { display: block; max-width: 100%; }
.avcl-app a { color: inherit; text-decoration: none; }
.avcl-container { width: min(1180px, calc(100% - 48px)); margin-inline: auto; }
.avcl-section { padding: 112px 0; }
.avcl-eyebrow { display: flex; align-items: center; gap: 10px; margin: 0 0 21px !important; color: #83eaff; font-size: 11px !important; line-height: 1.3 !important; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.avcl-eyebrow i { width: 26px; height: 1px; background: var(--avcl-aqua); box-shadow: 8px 0 14px rgba(6,182,212,.7); }
.avcl-eyebrow.avcl-dark { color: var(--avcl-blue); }
.avcl-heading h2,
.avcl-why h2,
.avcl-area-copy h2,
.avcl-contact-copy h2 { margin: 0 !important; color: var(--avcl-navy); font-size: clamp(39px, 5vw, 62px) !important; line-height: 1.03 !important; font-weight: 750 !important; letter-spacing: -.047em !important; }
.avcl-app h1 em,
.avcl-app h2 em { color: var(--avcl-blue); font-style: normal; }
.avcl-heading > p:last-child { max-width: 620px; margin: 24px 0 0 !important; color: var(--avcl-muted); font-size: 16px !important; line-height: 1.75 !important; }
.avcl-centered { max-width: 790px; margin: 0 auto 60px; text-align: center; }
.avcl-centered .avcl-eyebrow { justify-content: center; }
.avcl-centered > p:last-child { margin-inline: auto !important; }
.avcl-button { min-height: 54px; padding: 0 23px; display: inline-flex; align-items: center; justify-content: center; gap: 11px; border: 0; border-radius: 10px; font-size: 13px; font-weight: 800; cursor: pointer; transition: transform .25s, box-shadow .25s, background .25s; }
.avcl-button:hover { transform: translateY(-2px); }
.avcl-primary { color: #fff !important; background: linear-gradient(135deg, var(--avcl-blue), #2479f4); box-shadow: 0 15px 34px rgba(37,99,235,.25); }
.avcl-primary:hover { box-shadow: 0 18px 40px rgba(37,99,235,.4); }
.avcl-secondary { color: #e9f0fa !important; border: 1px solid rgba(255,255,255,.2); background: rgba(255,255,255,.05); }
.avcl-app .avcl-button.avcl-primary,
.avcl-app .avcl-button.avcl-primary:hover,
.avcl-app .avcl-button.avcl-primary:focus,
.avcl-app .avcl-button.avcl-primary:focus-visible,
.avcl-app .avcl-button.avcl-primary:active { color: #fff !important; border-color: transparent !important; background: linear-gradient(135deg, var(--avcl-blue), #2479f4) !important; }
.avcl-app .avcl-button.avcl-secondary,
.avcl-app .avcl-button.avcl-secondary:hover,
.avcl-app .avcl-button.avcl-secondary:focus,
.avcl-app .avcl-button.avcl-secondary:focus-visible,
.avcl-app .avcl-button.avcl-secondary:active { color: #e9f0fa !important; border-color: rgba(255,255,255,.2) !important; background: rgba(255,255,255,.05) !important; }

/* Hero */
.avcl-hero { position: relative; min-height: 825px; padding: 86px 0 92px; color: #fff; background: var(--avcl-navy); }
.avcl-grid { position: absolute; inset: 0; opacity: .13; background-image: linear-gradient(rgba(88,135,193,.34) 1px, transparent 1px), linear-gradient(90deg, rgba(88,135,193,.34) 1px, transparent 1px); background-size: 80px 80px; mask-image: linear-gradient(90deg, #000, transparent 88%); }
.avcl-orb { position: absolute; left: -180px; top: 150px; width: 520px; height: 520px; border-radius: 50%; background: radial-gradient(circle, rgba(37,99,235,.23), transparent 70%); }
.avcl-breadcrumb { position: relative; z-index: 2; display: flex; gap: 10px; align-items: center; margin-bottom: 46px; color: #71819a; font-size: 10px; letter-spacing: .09em; text-transform: uppercase; }
.avcl-breadcrumb strong { color: #bec9d9; }
.avcl-hero-layout { position: relative; z-index: 2; display: grid; grid-template-columns: 1.04fr .96fr; gap: 74px; align-items: center; }
.avcl-hero h1 { max-width: 690px; margin: 0 !important; color: #fff !important; font-size: clamp(49px, 5.7vw, 78px) !important; line-height: .99 !important; font-weight: 760 !important; letter-spacing: -.057em !important; }
.avcl-hero h1 em { display: block; margin-top: 8px; background: linear-gradient(90deg, #75e2f8, #3a7dff); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.avcl-lead { max-width: 650px; margin: 28px 0 0 !important; color: #aebbd0; font-size: 17px !important; line-height: 1.72 !important; }
.avcl-actions { display: flex; flex-wrap: wrap; gap: 13px; margin-top: 35px; }
.avcl-proof { display: flex; gap: 40px; margin-top: 45px; padding-top: 25px; border-top: 1px solid rgba(255,255,255,.1); }
.avcl-proof > div { display: flex; align-items: center; gap: 11px; }
.avcl-proof span { display: block; }
.avcl-proof strong { display: block; color: #dfe8f5; font-size: 11px; }
.avcl-proof small { display: block; margin-top: 4px; color: #71819a; font-size: 9px; }
.avcl-proof b { width: 27px; height: 27px; display: grid; place-items: center; color: var(--avcl-aqua); border-radius: 50%; background: rgba(6,182,212,.12); }
.avcl-status { width: 10px; height: 10px; border-radius: 50%; background: #22d3a4; box-shadow: 0 0 0 6px rgba(34,211,164,.11), 0 0 22px rgba(34,211,164,.5); }
.avcl-hero-media { position: relative; min-height: 590px; overflow: hidden; border: 1px solid rgba(255,255,255,.15); border-radius: 185px 185px 24px 24px; background: #10223a; box-shadow: 0 45px 90px rgba(0,0,0,.38); }
.avcl-hero-media::before { content: ""; position: absolute; z-index: 3; inset: 12px; border: 1px solid rgba(255,255,255,.16); border-radius: 175px 175px 16px 16px; pointer-events: none; }
.avcl-hero-media img { width: 100%; height: 590px; object-fit: cover; }
.avcl-photo-shade { position: absolute; inset: 0; background: linear-gradient(180deg, transparent 25%, rgba(7,17,31,.85)), linear-gradient(90deg, rgba(13,41,86,.2), transparent); }
.avcl-location-chip { position: absolute; z-index: 4; left: 29px; bottom: 35px; display: flex; align-items: center; gap: 12px; padding: 14px 17px; border: 1px solid rgba(255,255,255,.18); border-radius: 12px; background: rgba(7,17,31,.78); backdrop-filter: blur(15px); }
.avcl-location-chip > span { width: 32px; height: 32px; display: grid; place-items: center; color: var(--avcl-aqua); border-radius: 50%; background: rgba(6,182,212,.12); }
.avcl-location-chip small { display: block; color: #71819a; font-size: 7px; letter-spacing: .16em; }
.avcl-location-chip strong { display: block; margin-top: 4px; color: #fff; font-size: 11px; }

/* Trust */
.avcl-trust { position: relative; z-index: 8; margin-top: -34px; }
.avcl-trust-grid { min-height: 80px; display: grid; grid-template-columns: repeat(6,1fr); color: #d6dfed; border: 1px solid rgba(255,255,255,.11); border-radius: 14px; background: #0d1a2d; box-shadow: 0 24px 70px rgba(7,17,31,.25); }
.avcl-trust-grid > div { display: flex; align-items: center; justify-content: center; gap: 8px; padding: 17px 9px; border-right: 1px solid rgba(255,255,255,.08); font-size: 10px; font-weight: 700; text-align: center; }
.avcl-trust-grid > div:last-child { border-right: 0; }
.avcl-trust-grid span { color: var(--avcl-aqua); font-size: 8px; }

/* Hub cities */
.avcl-cities { padding-top: 145px; background: #fff; }
.avcl-city-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 17px; }
.avcl-city-grid a { position: relative; min-height: 325px; overflow: hidden; border-radius: 17px; background: var(--avcl-navy); box-shadow: 0 18px 45px rgba(20,42,70,.14); }
.avcl-city-grid img { width: 100%; height: 325px; object-fit: cover; transition: transform .55s; }
.avcl-city-grid a::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 25%, rgba(7,17,31,.92)); }
.avcl-city-grid a:hover img { transform: scale(1.05); }
.avcl-city-grid a > div { position: absolute; z-index: 2; left: 23px; right: 23px; bottom: 22px; }
.avcl-city-grid small { color: #6bdff4; font-size: 8px; letter-spacing: .15em; }
.avcl-city-grid h3 { margin: 8px 0 12px !important; color: #fff !important; font-size: 25px !important; letter-spacing: -.035em; }
.avcl-city-grid span { color: #b8c5d7; font-size: 10px; font-weight: 700; }
.avcl-city-directory { margin-top: 42px; padding: 30px; border: 1px solid var(--avcl-line); border-radius: 16px; background: var(--avcl-bg); }
.avcl-city-directory h3 { margin: 0 0 20px !important; color: var(--avcl-navy) !important; font-size: 22px !important; }
.avcl-city-directory > div { display: grid; grid-template-columns: repeat(4,1fr); gap: 10px 18px; }
.avcl-city-directory a { padding: 7px 0; color: var(--avcl-blue) !important; border-bottom: 1px solid rgba(37,99,235,.12); font-size: 11px; font-weight: 700; }
.avcl-city-directory a:hover,
.avcl-city-directory a:focus { color: var(--avcl-aqua) !important; }

/* Connected location network */
.avcl-location-network { padding-top: 145px; background: #fff; }
.avcl-location-controls { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; }
.avcl-location-controls a { min-height: 176px; padding: 26px; display: flex; flex-direction: column; border: 1px solid var(--avcl-line); border-top: 3px solid var(--avcl-blue); border-radius: 15px; background: #fbfcfe; transition: transform .3s, border-color .3s, box-shadow .3s; }
.avcl-location-controls a:hover,
.avcl-location-controls a:focus { transform: translateY(-5px); border-color: #a9c6f9; box-shadow: 0 20px 45px rgba(38,70,112,.1); }
.avcl-location-controls small { color: var(--avcl-blue); font-size: 8px; font-weight: 800; letter-spacing: .14em; }
.avcl-location-controls strong { margin-top: 26px; color: var(--avcl-navy); font-size: 20px; letter-spacing: -.03em; }
.avcl-location-controls span { margin-top: auto; color: var(--avcl-muted); font-size: 10px; font-weight: 700; }
.avcl-related-locations { display: grid; grid-template-columns: repeat(5,1fr); gap: 10px; margin-top: 24px; }
.avcl-related-locations a { min-height: 88px; padding: 17px; display: grid; grid-template-columns: 1fr auto; align-content: center; border: 1px solid var(--avcl-line); border-radius: 12px; background: var(--avcl-bg); transition: border-color .25s, background .25s; }
.avcl-related-locations a:hover,
.avcl-related-locations a:focus { border-color: #a9c6f9; background: #fff; }
.avcl-related-locations span { grid-column: 1/-1; margin-bottom: 5px; color: #8a98aa; font-size: 7px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.avcl-related-locations strong { color: var(--avcl-navy); font-size: 12px; }
.avcl-related-locations i { color: var(--avcl-blue); font-style: normal; }

/* Local content */
.avcl-local { padding-top: 145px; background: #fff; }
.avcl-two-col { display: grid; grid-template-columns: .82fr 1.18fr; gap: 92px; align-items: start; }
.avcl-big-copy { margin: 0 0 35px !important; color: #3e4e65; font-size: 21px !important; line-height: 1.72 !important; letter-spacing: -.012em; }
.avcl-context-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 15px; }
.avcl-context-grid article { min-height: 225px; padding: 27px; border: 1px solid var(--avcl-line); border-radius: 16px; background: #fbfcfe; transition: transform .3s, border-color .3s, box-shadow .3s; }
.avcl-context-grid article:hover { transform: translateY(-5px); border-color: #bcd0f4; box-shadow: 0 20px 45px rgba(38,70,112,.08); }
.avcl-context-grid span { color: var(--avcl-blue); font-size: 9px; font-weight: 800; }
.avcl-context-grid h3 { margin: 45px 0 11px !important; color: var(--avcl-navy) !important; font-size: 18px !important; }
.avcl-context-grid p { margin: 0 !important; color: var(--avcl-muted); font-size: 12px !important; line-height: 1.7 !important; }

/* Services */
.avcl-services { color: #fff; background: var(--avcl-navy); }
.avcl-topline { display: grid; grid-template-columns: 1.25fr .75fr; gap: 85px; align-items: end; margin-bottom: 57px; }
.avcl-light h2 { color: #fff !important; }
.avcl-topline > p { margin: 0 0 5px !important; color: #8493a8; font-size: 14px !important; line-height: 1.75 !important; }
.avcl-services-grid { display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid rgba(255,255,255,.1); border-left: 1px solid rgba(255,255,255,.1); }
.avcl-service-card { position: relative; min-height: 345px; padding: 27px 24px; border-right: 1px solid rgba(255,255,255,.1); border-bottom: 1px solid rgba(255,255,255,.1); transition: background .3s; }
.avcl-service-card:hover { color: inherit; background: #0b1b31; }
.avcl-service-card > span { color: #52627a; font-size: 9px; letter-spacing: .14em; }
.avcl-service-mark { position: relative; display: block; width: 38px; height: 38px; margin-top: 38px; border: 1px solid #3d77dc; transform: rotate(45deg); }
.avcl-service-mark::after { content: ""; position: absolute; top: 13px; left: 13px; width: 10px; height: 10px; background: var(--avcl-aqua); box-shadow: 0 0 16px rgba(6,182,212,.65); }
.avcl-service-card h3 { margin: 27px 0 11px !important; color: #fff !important; font-size: 17px !important; }
.avcl-service-card p { margin: 0 !important; color: #7f8fa7; font-size: 11px !important; line-height: 1.75 !important; }
.avcl-service-card b { position: absolute; left: 24px; bottom: 25px; color: #73dff5; font-size: 9px; text-transform: uppercase; letter-spacing: .08em; }

/* Why */
.avcl-why { background: var(--avcl-bg); }
.avcl-why-grid { display: grid; grid-template-columns: .95fr 1.05fr; gap: 88px; align-items: start; }
.avcl-why h2 { color: var(--avcl-navy); }
.avcl-why-grid > div:first-child > p:not(.avcl-eyebrow) { margin: 24px 0 32px !important; color: var(--avcl-muted); font-size: 15px !important; line-height: 1.8 !important; }
.avcl-why img { width: 100%; height: 275px; object-fit: cover; border-radius: 17px; box-shadow: 0 22px 55px rgba(28,55,88,.14); }
.avcl-reasons { border-top: 1px solid var(--avcl-line); }
.avcl-reasons article { display: grid; grid-template-columns: 50px 1fr 34px; gap: 15px; padding: 29px 0; border-bottom: 1px solid var(--avcl-line); }
.avcl-reasons article > span { color: var(--avcl-blue); font-size: 9px; font-weight: 800; }
.avcl-reasons h3 { margin: -4px 0 8px !important; color: var(--avcl-navy) !important; font-size: 19px !important; }
.avcl-reasons p { margin: 0 !important; color: var(--avcl-muted); font-size: 12px !important; line-height: 1.7 !important; }
.avcl-reasons b { width: 32px; height: 32px; display: grid; place-items: center; color: var(--avcl-blue); border: 1px solid var(--avcl-line); border-radius: 50%; }

/* Industries and area */
.avcl-industry-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 13px; }
.avcl-industry-grid article { min-height: 160px; padding: 22px; display: flex; flex-direction: column; justify-content: space-between; border: 1px solid var(--avcl-line); border-radius: 14px; background: #fff; transition: .3s; }
.avcl-industry-grid article:hover { transform: translateY(-5px); border-color: #a9c6f9; box-shadow: 0 20px 45px rgba(38,70,112,.08); }
.avcl-industry-grid span { color: #9aa7b8; font-size: 9px; }
.avcl-industry-grid h3 { margin: auto 0 7px !important; color: var(--avcl-navy) !important; font-size: 16px !important; }
.avcl-industry-grid p { margin: 0 !important; color: var(--avcl-muted); font-size: 10px !important; line-height: 1.5 !important; }
.avcl-area { min-height: 675px; display: grid; grid-template-columns: 1.05fr .95fr; color: #fff; background: var(--avcl-navy); }
.avcl-area-image { position: relative; min-height: 675px; overflow: hidden; }
.avcl-area-image img { width: 100%; height: 100%; min-height: 675px; object-fit: cover; }
.avcl-area-image > div { position: absolute; inset: 0; background: linear-gradient(90deg, transparent, rgba(7,17,31,.78)), linear-gradient(180deg, transparent 45%, rgba(7,17,31,.65)); }
.avcl-area-copy { padding: 95px clamp(38px,7vw,105px); display: flex; flex-direction: column; justify-content: center; }
.avcl-area-copy h2 { color: #fff; }
.avcl-area-copy > p:not(.avcl-eyebrow) { max-width: 520px; margin: 26px 0 29px !important; color: #8d9db3; font-size: 13px !important; line-height: 1.8 !important; }
.avcl-area-list { display: grid; grid-template-columns: repeat(2,1fr); gap: 13px 18px; margin-bottom: 34px; }
.avcl-area-list span { color: #d7e1ee; font-size: 11px; }
.avcl-area-list span::first-letter { color: var(--avcl-aqua); }
.avcl-area-copy .avcl-button { align-self: flex-start; }

/* Projects */
.avcl-work { background: #fff; }
.avcl-projects { border-top: 1px solid var(--avcl-line); }
.avcl-projects > article { display: grid; grid-template-columns: 1.15fr .85fr; gap: 58px; align-items: center; padding: 62px 0; border-bottom: 1px solid var(--avcl-line); }
.avcl-projects > article:nth-child(even) .avcl-project-visual { order: 2; }
.avcl-project-visual { min-height: 375px; padding: 30px 30px 0; overflow: hidden; border-radius: 19px; }
.avcl-project-visual.avcl-beauty { background: radial-gradient(circle at 72% 25%, rgba(37,99,235,.48), transparent 35%), #071a38; }
.avcl-project-visual.avcl-service { background: radial-gradient(circle at 30% 25%, rgba(47,160,232,.4), transparent 38%), #0c2639; }
.avcl-project-visual.avcl-dental { background: radial-gradient(circle at 70% 22%, rgba(67,193,170,.4), transparent 35%), #0d302d; }
.avcl-project-visual.avcl-finance { background: radial-gradient(circle at 74% 22%, rgba(37,99,235,.38), transparent 36%), #101e34; }
.avcl-project-visual.avcl-saas { background: radial-gradient(circle at 28% 25%, rgba(6,182,212,.34), transparent 37%), #071927; }
.avcl-project-visual.avcl-training { background: radial-gradient(circle at 70% 20%, rgba(58,125,255,.42), transparent 35%), #0b1530; }
.avcl-browser { height: 33px; padding: 0 12px; display: flex; align-items: center; gap: 5px; border-radius: 10px 10px 0 0; background: #eff3f8; }
.avcl-browser i { width: 6px; height: 6px; border-radius: 50%; background: #c4cedb; }
.avcl-project-screen { position: relative; height: 310px; padding: 55px 35px; overflow: hidden; background: #fff; }
.avcl-project-screen::after { content: ""; position: absolute; right: -45px; bottom: -55px; width: 210px; height: 210px; border: 34px solid rgba(37,99,235,.08); border-radius: 50%; }
.avcl-project-screen small { display: block; color: var(--avcl-blue); font-size: 7px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.avcl-project-screen strong { position: relative; z-index: 2; display: block; max-width: 320px; margin-top: 15px; color: var(--avcl-navy); font-size: 30px; line-height: 1.05; letter-spacing: -.045em; }
.avcl-project-screen span { position: relative; z-index: 2; display: block; width: 72%; height: 6px; margin-top: 28px; border-radius: 6px; background: #e4eaf2; }
.avcl-project-screen span + span { width: 58%; margin-top: 9px; }
.avcl-project-screen span:last-child { width: 72px; height: 22px; margin-top: 27px; background: var(--avcl-blue); }
.avcl-project-copy { position: relative; }
.avcl-project-copy > span { position: absolute; top: -15px; right: 0; color: #e3e8ef; font-size: 65px; font-weight: 800; letter-spacing: -.06em; }
.avcl-project-copy small { color: var(--avcl-blue); font-size: 8px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.avcl-project-copy h3 { position: relative; margin: 18px 0 17px !important; color: var(--avcl-navy) !important; font-size: 38px !important; letter-spacing: -.045em !important; }
.avcl-project-copy p { margin: 0 !important; color: var(--avcl-muted); font-size: 13px !important; line-height: 1.75 !important; }
.avcl-project-links { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 24px; }
.avcl-project-copy .avcl-project-links a { display: inline-flex; min-height: 38px; padding: 0 13px; align-items: center; color: #fff; border: 1px solid var(--avcl-blue); border-radius: 8px; background: var(--avcl-blue); font-size: 9px; font-weight: 800; text-transform: uppercase; letter-spacing: .07em; }
.avcl-project-copy .avcl-project-links a + a { color: var(--avcl-blue); background: #fff; }
.avcl-project-copy .avcl-project-links a:hover,
.avcl-project-copy .avcl-project-links a:focus { color: #fff; border-color: #1d4ed8; background: #1d4ed8; }
.avcl-work-all { margin-top: 42px; text-align: center; }

/* Process */
.avcl-process { background: var(--avcl-bg); }
.avcl-process-grid { display: grid; grid-template-columns: repeat(6,1fr); gap: 17px; }
.avcl-process-grid article { min-height: 235px; padding: 23px 19px; border: 1px solid var(--avcl-line); border-radius: 14px; background: #fff; }
.avcl-process-grid span { width: 38px; height: 38px; display: grid; place-items: center; color: #fff; border-radius: 50%; background: var(--avcl-blue); font-size: 8px; box-shadow: 0 9px 20px rgba(37,99,235,.25); }
.avcl-process-grid h3 { margin: 50px 0 11px !important; color: var(--avcl-navy) !important; font-size: 15px !important; }
.avcl-process-grid p { margin: 0 !important; color: var(--avcl-muted); font-size: 10px !important; line-height: 1.7 !important; }

/* Contact form */
.avcl-contact { position: relative; padding: 112px 0; color: #fff; background: var(--avcl-navy); }
.avcl-contact::before { content: ""; position: absolute; inset: 0; opacity: .1; background-image: linear-gradient(rgba(88,135,193,.4) 1px,transparent 1px),linear-gradient(90deg,rgba(88,135,193,.4) 1px,transparent 1px); background-size: 80px 80px; mask-image: linear-gradient(90deg,#000,transparent 80%); }
.avcl-contact-grid { position: relative; z-index: 2; display: grid; grid-template-columns: .86fr 1.14fr; gap: 78px; align-items: start; }
.avcl-contact-copy h2 { color: #fff; }
.avcl-contact-copy h2 em { display: block; color: #73e0f7; }
.avcl-contact-copy > p:not(.avcl-eyebrow) { margin: 27px 0 34px !important; color: #8f9eb2; font-size: 15px !important; line-height: 1.8 !important; }
.avcl-form-benefits { border-top: 1px solid rgba(255,255,255,.12); }
.avcl-form-benefits > div { display: grid; grid-template-columns: 40px 1fr; gap: 12px; padding: 18px 0; border-bottom: 1px solid rgba(255,255,255,.12); }
.avcl-form-benefits b { color: var(--avcl-aqua); font-size: 8px; }
.avcl-form-benefits strong { display: block; color: #e2eaf5; font-size: 12px; }
.avcl-form-benefits small { display: block; margin-top: 5px; color: #718096; font-size: 9px; }
.avcl-form { padding: 31px; border: 1px solid rgba(255,255,255,.13); border-radius: 18px; background: rgba(15,31,52,.93); box-shadow: 0 30px 70px rgba(0,0,0,.24); }
.avcl-field-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 16px; }
.avcl-form label { display: block; }
.avcl-form label > span { display: block; margin: 0 0 7px; color: #c8d3e1; font-size: 10px; font-weight: 700; }
.avcl-form input,
.avcl-form select,
.avcl-form textarea { width: 100%; margin: 0 !important; color: #eef4fb !important; border: 1px solid rgba(255,255,255,.13) !important; border-radius: 9px !important; outline: 0; background: rgba(4,13,23,.48) !important; font-family: inherit; font-size: 12px !important; box-shadow: none !important; transition: border-color .2s, box-shadow .2s; }
.avcl-form input,
.avcl-form select { height: 47px; padding: 0 13px !important; }
.avcl-form textarea { min-height: 132px; padding: 13px !important; resize: vertical; }
.avcl-form select { color-scheme: dark; }
.avcl-form input:focus,
.avcl-form select:focus,
.avcl-form textarea:focus { border-color: var(--avcl-aqua) !important; box-shadow: 0 0 0 3px rgba(6,182,212,.12) !important; }
.avcl-form input::placeholder,
.avcl-form textarea::placeholder { color: #63738a; }
.avcl-full { margin-top: 16px; }
.avcl-form .avcl-button { width: 100%; margin-top: 18px; }
.avcl-form .avcl-button:disabled { opacity: .65; cursor: wait; transform: none; }
.avcl-form-note { margin: 13px 0 0 !important; color: #65758b; font-size: 9px !important; text-align: center; }
.avcl-honeypot { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); clip-path: inset(50%); }
.avcl-form-status { display: none; margin-top: 16px; padding: 12px 14px; border-radius: 8px; font-size: 11px; line-height: 1.55; }
.avcl-form-status.is-success { display: block; color: #b9f4df; border: 1px solid rgba(34,211,164,.3); background: rgba(34,211,164,.1); }
.avcl-form-status.is-error { display: block; color: #bfdbfe; border: 1px solid rgba(37,99,235,.45); background: rgba(37,99,235,.14); }

/* FAQ */
.avcl-faq { background: #fff; }
.avcl-faq-grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: 88px; align-items: start; }
.avcl-faq-list { border-top: 1px solid var(--avcl-line); }
.avcl-faq-list article { border-bottom: 1px solid var(--avcl-line); }
.avcl-app .avcl-faq-list button,
.avcl-app .avcl-faq-list button:focus { width: 100%; min-height: 85px; padding: 0 18px; display: grid; grid-template-columns: 42px 1fr 30px; gap: 15px; align-items: center; border: 0 !important; border-radius: 10px !important; outline: 0 !important; color: var(--avcl-navy) !important; background: transparent !important; box-shadow: none !important; text-align: left; cursor: pointer; transform: none !important; transition: color .25s, background .25s; }
.avcl-app .avcl-faq-list button:hover,
.avcl-app .avcl-faq-list button:active,
.avcl-app .avcl-faq-list button:focus-visible,
.avcl-app .avcl-faq-list article.is-open button { color: #fff !important; background: var(--avcl-blue) !important; box-shadow: 0 12px 28px rgba(37,99,235,.2) !important; }
.avcl-faq-list button > span { color: var(--avcl-blue); font-size: 8px; font-weight: 800; }
.avcl-faq-list button strong { color: var(--avcl-navy); font-size: 14px; line-height: 1.4; }
.avcl-faq-list button i { position: relative; width: 28px; height: 28px; border: 1px solid #cfd9e5; border-radius: 50%; }
.avcl-faq-list button i::before,
.avcl-faq-list button i::after { content: ""; position: absolute; top: 13px; left: 8px; width: 10px; height: 1px; background: var(--avcl-blue); transition: transform .25s; }
.avcl-faq-list button i::after { transform: rotate(90deg); }
.avcl-app .avcl-faq-list button:hover > span,
.avcl-app .avcl-faq-list button:active > span,
.avcl-app .avcl-faq-list button:focus-visible > span,
.avcl-app .avcl-faq-list article.is-open button > span,
.avcl-app .avcl-faq-list button:hover strong,
.avcl-app .avcl-faq-list button:active strong,
.avcl-app .avcl-faq-list button:focus-visible strong,
.avcl-app .avcl-faq-list article.is-open button strong { color: #fff !important; }
.avcl-app .avcl-faq-list button:hover i,
.avcl-app .avcl-faq-list button:active i,
.avcl-app .avcl-faq-list button:focus-visible i,
.avcl-app .avcl-faq-list article.is-open button i { border-color: rgba(255,255,255,.7) !important; }
.avcl-app .avcl-faq-list button:hover i::before,
.avcl-app .avcl-faq-list button:hover i::after,
.avcl-app .avcl-faq-list button:active i::before,
.avcl-app .avcl-faq-list button:active i::after,
.avcl-app .avcl-faq-list button:focus-visible i::before,
.avcl-app .avcl-faq-list button:focus-visible i::after,
.avcl-app .avcl-faq-list article.is-open button i::before,
.avcl-app .avcl-faq-list article.is-open button i::after { background: #fff !important; }
.avcl-faq-list article.is-open button i::after { transform: rotate(0); }
.avcl-faq-list article > div { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .34s; }
.avcl-faq-list article > div p { min-height: 0; overflow: hidden; margin: 0 !important; color: var(--avcl-muted); font-size: 12px !important; line-height: 1.75 !important; }
.avcl-faq-list article.is-open > div { grid-template-rows: 1fr; }
.avcl-faq-list article.is-open > div p { padding: 0 40px 25px 57px; }

/* Main-site internal links */
.avcl-main-links { padding: 105px 0; color: #fff; background: var(--avcl-navy); }
.avcl-main-links-intro { display: grid; grid-template-columns: 1fr .72fr; gap: 72px; align-items: end; margin-bottom: 48px; }
.avcl-main-links-intro h2 { max-width: 720px; margin: 0 !important; color: #fff !important; font-size: clamp(39px,5vw,62px) !important; line-height: 1.03 !important; letter-spacing: -.047em !important; }
.avcl-main-links-intro h2 em { color: #73e0f7; }
.avcl-main-links-intro > p:last-child { margin: 0 0 5px !important; color: #8493a8; font-size: 14px !important; line-height: 1.75 !important; }
.avcl-main-links-grid { display: grid; grid-template-columns: repeat(2,1fr); border-top: 1px solid rgba(255,255,255,.1); border-left: 1px solid rgba(255,255,255,.1); }
.avcl-main-links-grid a { min-height: 124px; padding: 22px; display: grid; grid-template-columns: 34px 1fr 24px; gap: 14px; align-items: center; border-right: 1px solid rgba(255,255,255,.1); border-bottom: 1px solid rgba(255,255,255,.1); transition: background .25s; }
.avcl-main-links-grid a:hover,
.avcl-main-links-grid a:focus { background: #0b1b31; }
.avcl-main-links-grid > a:last-child { grid-column: 1/-1; }
.avcl-main-links-grid > a > span { color: var(--avcl-aqua); font-size: 8px; font-weight: 800; }
.avcl-main-links-grid strong { display: block; color: #fff; font-size: 15px; }
.avcl-main-links-grid small { display: block; max-width: 450px; margin-top: 7px; color: #7f8fa7; font-size: 10px; line-height: 1.55; }
.avcl-main-links-grid i { color: #73dff5; font-style: normal; }

@media (max-width: 1100px) {
  .avcl-hero-layout { gap: 42px; }
  .avcl-hero-media,
  .avcl-hero-media img { min-height: 540px; height: 540px; }
  .avcl-services-grid { grid-template-columns: repeat(2,1fr); }
  .avcl-process-grid { grid-template-columns: repeat(3,1fr); }
}

@media (max-width: 900px) {
  .avcl-section { padding: 88px 0; }
  .avcl-hero { padding-top: 70px; }
  .avcl-hero-layout,
  .avcl-two-col,
  .avcl-why-grid,
  .avcl-contact-grid,
  .avcl-faq-grid { grid-template-columns: 1fr; gap: 58px; }
  .avcl-hero-copy { text-align: center; }
  .avcl-hero-copy .avcl-eyebrow,
  .avcl-actions,
  .avcl-proof { justify-content: center; }
  .avcl-hero h1,
  .avcl-lead { margin-inline: auto !important; }
  .avcl-hero-media { width: min(620px,100%); margin-inline: auto; }
  .avcl-trust-grid { grid-template-columns: repeat(3,1fr); }
  .avcl-trust-grid > div:nth-child(3) { border-right: 0; }
  .avcl-trust-grid > div:nth-child(-n+3) { border-bottom: 1px solid rgba(255,255,255,.08); }
  .avcl-topline { grid-template-columns: 1fr; gap: 26px; }
  .avcl-city-grid,
  .avcl-industry-grid { grid-template-columns: repeat(2,1fr); }
	.avcl-related-locations { grid-template-columns: repeat(3,1fr); }
	.avcl-main-links-intro { grid-template-columns: 1fr; gap: 24px; }
  .avcl-city-directory > div { grid-template-columns: repeat(3,1fr); }
  .avcl-area { grid-template-columns: 1fr; }
  .avcl-area-image,
  .avcl-area-image img { min-height: 500px; }
  .avcl-area-copy { padding: 78px 48px; }
  .avcl-projects > article { grid-template-columns: 1fr; gap: 38px; }
  .avcl-projects > article:nth-child(even) .avcl-project-visual { order: 0; }
}

@media (max-width: 640px) {
  .avcl-container { width: min(100% - 32px,1180px); }
  .avcl-section { padding: 70px 0; }
  .avcl-heading h2,
  .avcl-why h2,
  .avcl-area-copy h2,
  .avcl-contact-copy h2 { font-size: 39px !important; }
  .avcl-hero { min-height: auto; padding: 54px 0 70px; }
  .avcl-breadcrumb { margin-bottom: 34px; }
  .avcl-hero h1 { font-size: 45px !important; }
  .avcl-lead { font-size: 15px !important; }
  .avcl-actions { flex-direction: column; }
  .avcl-actions .avcl-button { width: 100%; }
  .avcl-proof { justify-content: flex-start; gap: 17px; text-align: left; }
  .avcl-proof > div { flex: 1; align-items: flex-start; }
  .avcl-hero-media,
  .avcl-hero-media img { min-height: 455px; height: 455px; }
  .avcl-hero-media { border-radius: 108px 108px 18px 18px; }
  .avcl-hero-media::before { border-radius: 100px 100px 12px 12px; }
  .avcl-location-chip { left: 18px; bottom: 20px; }
  .avcl-trust { margin-top: -22px; }
  .avcl-trust-grid { grid-template-columns: repeat(2,1fr); }
  .avcl-trust-grid > div { min-height: 65px; border-bottom: 1px solid rgba(255,255,255,.08); }
  .avcl-trust-grid > div:nth-child(3) { border-right: 1px solid rgba(255,255,255,.08); }
  .avcl-trust-grid > div:nth-child(even) { border-right: 0; }
  .avcl-trust-grid > div:nth-child(n+5) { border-bottom: 0; }
  .avcl-cities,
  .avcl-local { padding-top: 102px; }
  .avcl-city-grid,
  .avcl-context-grid,
  .avcl-services-grid,
  .avcl-industry-grid { grid-template-columns: 1fr; }
	.avcl-location-controls,
	.avcl-main-links-grid { grid-template-columns: 1fr; }
	.avcl-related-locations { grid-template-columns: repeat(2,1fr); }
	.avcl-main-links-grid > a:last-child { grid-column: auto; }
  .avcl-city-directory { padding: 23px 18px; }
  .avcl-city-directory > div { grid-template-columns: repeat(2,1fr); }
  .avcl-big-copy { font-size: 18px !important; }
  .avcl-context-grid article { min-height: 195px; }
  .avcl-service-card { min-height: 315px; }
  .avcl-area-image,
  .avcl-area-image img { min-height: 420px; }
  .avcl-area-copy { padding: 67px 24px; }
  .avcl-area-list { grid-template-columns: 1fr; }
  .avcl-area-copy .avcl-button { width: 100%; }
  .avcl-project-visual { min-height: 285px; padding: 18px 18px 0; }
  .avcl-project-screen { height: 250px; padding: 42px 24px; }
  .avcl-project-screen strong { font-size: 24px; }
  .avcl-project-copy h3 { font-size: 34px !important; }
  .avcl-process-grid { grid-template-columns: repeat(2,1fr); }
  .avcl-process-grid article { min-height: 215px; }
  .avcl-contact { padding: 82px 0; }
  .avcl-form { padding: 24px 18px; }
  .avcl-field-grid { grid-template-columns: 1fr; }
  .avcl-app .avcl-faq-list button { grid-template-columns: 31px 1fr 28px; min-height: 95px; padding-inline: 12px; }
  .avcl-faq-list article.is-open > div p { padding: 0 7px 24px 46px; }
}

@media (prefers-reduced-motion: reduce) {
  .avcl-app *, .avcl-app *::before, .avcl-app *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}
