:root {
    --ink: #282b2e;
    --ink-2: #35383c;
    --ink-3: #52565c;
    --orange: #f37121;
    --orange-dark: #b94710;
    --orange-soft: #fff0e7;
    --blue: #0b3f70;
    --blue-soft: #eaf1f7;
    --brand-red: #c80d32;
    --brand-yellow: #d4d323;
    --paper: #ffffff;
    --surface: #f9f9f9;
    --surface-2: #ebebeb;
    --muted: #6d6e70;
    --line: #e1e1e1;
    --footer: #3d566b;
    --footer-2: #49667d;
    --tech-950: #3b5368;
    --tech-900: #456178;
    --tech-850: #4f6e86;
    --tech-800: #5a7992;
    --tech-line: rgba(105, 165, 216, .34);
    --radius-tech: 20px 6px 20px 6px;
    --tech-pattern-image: url("/img/backgrounds/tech-circuit-pattern-v1.jpg");
    --brand-ribbon: linear-gradient(90deg, var(--brand-red) 0 23%, var(--brand-yellow) 23% 42%, var(--blue) 42% 68%, #165b91 68% 82%, var(--orange) 82% 100%);
    --pattern-light: linear-gradient(135deg, rgba(40, 43, 46, .025) 25%, transparent 25%, transparent 75%, rgba(40, 43, 46, .025) 75%), linear-gradient(135deg, rgba(243, 113, 33, .018) 25%, transparent 25%, transparent 75%, rgba(243, 113, 33, .018) 75%);
    --pattern-dark: linear-gradient(135deg, rgba(255, 255, 255, .025) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, .025) 75%), linear-gradient(135deg, rgba(243, 113, 33, .035) 25%, transparent 25%, transparent 75%, rgba(243, 113, 33, .035) 75%);
    --shadow-sm: 0 12px 30px rgba(40, 43, 46, .08);
    --shadow-lg: 0 24px 58px rgba(40, 43, 46, .14);
    --radius: 18px;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    overflow-x: hidden;
    color: var(--ink);
    background-color: #e7ecf0;
    background-image: linear-gradient(rgba(247, 249, 251, .84), rgba(231, 236, 240, .92)), var(--pattern-light);
    background-position: center, 0 0, 16px 16px;
    background-size: auto, 32px 32px, 32px 32px;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    -webkit-font-smoothing: antialiased;
}
img { max-width: 100%; }
a { color: inherit; text-decoration: none; }
p { line-height: 1.7; }

:focus-visible {
    outline: 3px solid rgba(243, 113, 33, .46);
    outline-offset: 3px;
}

.skip-link {
    position: fixed;
    left: 1rem;
    top: -5rem;
    z-index: 1200;
    padding: .8rem 1rem;
    color: #fff;
    background: var(--ink);
    border-radius: .45rem;
}
.skip-link:focus { top: 1rem; }

.topbar {
    padding: .48rem 0;
    color: #e8e8e8;
    border-bottom: 1px solid rgba(255, 255, 255, .08);
    background: var(--footer);
    font-size: .78rem;
}
.topbar-inner { display: flex; justify-content: space-between; align-items: center; gap: 1rem 2rem; }
.topbar-contact { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: .4rem 1.25rem; }
.topbar a { display: inline-flex; align-items: center; gap: .45rem; }
.topbar a { color: #e8e8e8; }
.topbar a:hover { color: var(--orange); }
.topbar i { color: var(--orange); }
.topbar-actions { display: flex; flex: 0 0 auto; align-items: center; gap: .85rem; }
.topbar-social { display: flex; align-items: center; gap: .2rem; padding-right: .75rem; border-right: 1px solid rgba(255, 255, 255, .18); }
.topbar-social a, .topbar-social-icon { display: grid; width: 28px; height: 28px; place-items: center; border-radius: 50%; }
.topbar-social a:hover { color: #fff; background: rgba(243, 113, 33, .22); }
.topbar-social-icon.is-disabled { color: #a8b8c6; opacity: .78; }
.topbar-languages { display: flex; align-items: center; gap: .42rem; font-size: .75rem; font-weight: 820; letter-spacing: .05em; }
.topbar-languages span { color: rgba(255, 255, 255, .3); }
.topbar-languages a { padding: .24rem .35rem; color: #bfc3c6; }
.topbar-languages a.is-active { color: #fff; box-shadow: inset 0 -2px var(--orange); }

.site-nav {
    min-height: 84px;
    border-bottom: 1px solid rgba(73, 105, 129, .2);
    background: rgba(239, 245, 248, .97);
    box-shadow: 0 10px 30px rgba(36, 67, 91, .14);
    backdrop-filter: blur(12px);
}
.brand-wrap { display: flex; align-items: center; margin-right: 1rem; padding: 0; }
.company-logo-crop {
    position: relative;
    display: flex;
    width: 178px;
    height: 75px;
    align-items: center;
    justify-content: center;
    padding: 0;
    background: transparent;
    box-shadow: none;
}
.company-logo-crop img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.navbar .nav-link, .navbar .dropdown-toggle {
    margin: 0 .05rem;
    padding: .82rem .62rem !important;
    color: #314656 !important;
    font-size: .86rem;
    font-weight: 720;
}
.navbar .nav-link:hover, .navbar .nav-link:focus, .navbar .dropdown-toggle.show { color: var(--orange-dark) !important; }
.navbar-toggler { border: 1px solid rgba(49, 70, 86, .32); box-shadow: none; }
.navbar-toggler-icon { filter: none; opacity: .72; }
.navbar-toggler:focus-visible { box-shadow: 0 0 0 .22rem rgba(243, 113, 33, .24); }
.dropdown-menu {
    margin-top: .55rem !important;
    padding: .7rem;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: #fff;
    box-shadow: var(--shadow-lg);
}
.dropdown-item { padding: .7rem .8rem; border-radius: 8px; color: var(--ink-2); font-size: .88rem; font-weight: 650; }
.dropdown-item:hover, .dropdown-item:focus { color: var(--orange-dark); background: var(--orange-soft); }
.dropdown-menu-products { min-width: 310px; }
.dropdown-product-link { display: grid; grid-template-columns: 48px 1fr; align-items: center; gap: .8rem; white-space: normal; }
.dropdown-product-link img { width: 48px; height: 42px; object-fit: contain; }
.dropdown-product-link strong, .dropdown-module-link strong { display: block; font-size: .9rem; }
.dropdown-product-link small, .dropdown-module-link small { display: block; margin-top: .15rem; color: var(--muted); font-size: .72rem; font-weight: 500; }
.dropdown-menu-modules { left: 50% !important; width: min(720px, calc(100vw - 2rem)); transform: translateX(-50%); }
.module-menu-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .2rem; }
.dropdown-module-link { display: grid; grid-template-columns: 34px 1fr; align-items: center; gap: .65rem; white-space: normal; }
.dropdown-module-link i { display: grid; width: 34px; height: 34px; place-items: center; color: var(--orange-dark); border: 1px solid #f4cab6; border-radius: 8px; background: var(--orange-soft); }
.dropdown-menu-footer { margin-top: .5rem; padding-top: .55rem; border-top: 1px solid var(--line); }
.site-nav .dropdown-menu { border-color: rgba(73, 105, 129, .22); background: rgba(248, 251, 253, .99); box-shadow: 0 24px 58px rgba(36, 67, 91, .2); }
.site-nav .dropdown-item { color: #314656; }
.site-nav .dropdown-item small { color: #647785; }
.site-nav .dropdown-item:hover, .site-nav .dropdown-item:focus { color: var(--orange-dark); background: var(--orange-soft); }
.site-nav .dropdown-module-link i { color: var(--orange-dark); border-color: rgba(76, 143, 202, .28); background: rgba(220, 235, 245, .78); }
.site-nav .dropdown-menu-footer { border-top-color: rgba(73, 105, 129, .18); }
.btn {
    position: relative;
    overflow: hidden;
    border-radius: 10px 3px 10px 3px;
    padding: .7rem 1.08rem;
    font-weight: 760;
    letter-spacing: -.01em;
    transition: transform .22s ease, box-shadow .22s ease, background-color .22s ease, border-color .22s ease, color .22s ease;
}
.btn:hover { transform: translateY(-2px); }
.btn:active { transform: translateY(0); }
.btn i { display: inline-block; margin-left: .16rem; transition: transform .22s ease; }
.btn:hover i, .btn:focus i { transform: translateX(2px); }
.btn-lg { padding: .84rem 1.25rem; font-size: 1rem; }
.btn-orange { color: #fff; border-color: transparent; background: linear-gradient(135deg, #dc5d17, #a9380b); box-shadow: 0 12px 28px rgba(211, 79, 16, .28), inset 0 1px rgba(255, 255, 255, .2); }
.btn-orange:hover, .btn-orange:focus { color: #fff; border-color: transparent; background: linear-gradient(135deg, #ef7226, #b8430f); box-shadow: 0 16px 34px rgba(211, 79, 16, .36), inset 0 1px rgba(255, 255, 255, .22); }
.btn-outline-dark { color: var(--tech-850); border-color: rgba(11, 63, 112, .3); background: rgba(255, 255, 255, .7); box-shadow: 0 8px 20px rgba(13, 20, 30, .07); }
.btn-outline-dark:hover, .btn-outline-dark:focus { color: #fff; border-color: var(--tech-800); background: var(--tech-800); box-shadow: 0 12px 28px rgba(13, 20, 30, .18); }
.nav-demo { padding: .36rem .62rem; border-radius: 7px 2px 7px 2px; font-size: .68rem; letter-spacing: .01em; }
.text-orange { color: var(--orange-dark) !important; }

.loop-hero {
    position: relative;
    overflow: hidden;
    color: #fff;
    background-color: var(--tech-950);
    background-image: linear-gradient(105deg, rgba(22, 35, 48, .86) 0%, rgba(25, 47, 66, .78) 46%, rgba(24, 57, 82, .65) 70%, rgba(22, 35, 48, .78) 100%), var(--tech-pattern-image);
    background-position: center;
    background-size: cover;
}
.loop-hero::before {
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: radial-gradient(circle at 78% 40%, rgba(26, 105, 169, .22), transparent 34%), linear-gradient(90deg, rgba(243, 113, 33, .065), transparent 36%);
    content: "";
}
.loop-hero .carousel { position: relative; z-index: 1; }
.loop-hero .carousel-item { position: relative; min-height: clamp(670px, calc(100svh - 118px), 820px); isolation: isolate; }
.loop-hero .carousel-fade .carousel-item { transition: opacity .82s ease-in-out; }
.loop-hero .hero-slide { display: flex; width: calc(100% - clamp(24px, 5vw, 96px)); max-width: 1600px; min-height: inherit; align-items: center; padding: 82px 0 112px; }
.loop-hero .hero-slide > .row { width: 100%; margin-right: 0; margin-left: 0; }
.hero-product-logo { display: block; width: auto; max-width: 268px; height: 70px; margin-bottom: 1.45rem; padding: .45rem .6rem; border: 1px solid rgba(255, 255, 255, .22); border-radius: 10px 3px 10px 3px; background: rgba(255, 255, 255, .96); box-shadow: 0 16px 36px rgba(0, 0, 0, .2); object-fit: contain; object-position: left center; }
.loop-hero h1 {
    max-width: 720px;
    margin: 0 0 1.2rem;
    color: #fff;
    font-size: clamp(2.75rem, 5vw, 5rem);
    font-weight: 820;
    letter-spacing: -.052em;
    line-height: 1.03;
}
.hero-lead { max-width: 660px; margin: 0; color: #b9c6d3; font-size: clamp(1.04rem, 1.4vw, 1.22rem); }
.loop-hero .btn-outline-dark { color: #e7edf3; border-color: rgba(177, 204, 228, .42); background: rgba(13, 28, 43, .46); backdrop-filter: blur(8px); }
.loop-hero .btn-outline-dark:hover, .loop-hero .btn-outline-dark:focus { color: #fff; border-color: rgba(243, 113, 33, .72); background: rgba(243, 113, 33, .16); }
.hero-media {
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    margin: 0;
    border: 0;
    border-radius: 0;
    background: var(--tech-900);
    box-shadow: none;
}
.hero-media::before { position: absolute; inset: 0; z-index: 2; pointer-events: none; background-image: var(--tech-pattern-image); background-position: center; background-size: 720px 720px; mix-blend-mode: screen; opacity: .18; content: ""; }
.hero-media::after { position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(90deg, rgba(18, 29, 41, .9) 0%, rgba(22, 38, 53, .82) 34%, rgba(23, 46, 65, .64) 55%, rgba(20, 44, 63, .2) 80%, rgba(19, 31, 44, .44) 100%); content: ""; }
.hero-media img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 68% center; filter: saturate(.86) contrast(1.04); }
.hero-media figcaption {
    position: absolute;
    right: max(2rem, calc((100vw - 1540px) / 2));
    bottom: 88px;
    left: auto;
    z-index: 4;
    width: min(360px, calc(100vw - 4rem));
    display: flex;
    flex-direction: column;
    gap: .2rem;
    padding: 1rem 1.1rem;
    border: 1px solid rgba(133, 177, 215, .2);
    border-radius: 12px 4px 12px 4px;
    background: rgba(7, 15, 24, .86);
    box-shadow: 0 18px 44px rgba(0, 0, 0, .28);
    backdrop-filter: blur(12px);
}
.hero-media figcaption strong { color: #fff; font-size: .92rem; }
.hero-media figcaption span { color: #aebdca; font-size: .78rem; }
.loop-hero .carousel-indicators { right: auto; bottom: 24px; left: 50%; gap: .35rem; margin: 0; transform: translateX(-50%); }
.loop-hero .carousel-indicators [data-bs-target] { width: 34px; height: 4px; margin: 0; border: 0; border-radius: 4px; background: #6f8192; }
.loop-hero .carousel-indicators .active { background: var(--orange); }
.hero-carousel-control { top: auto; bottom: 26px; width: 44px; height: 44px; color: #fff; border: 1px solid rgba(177, 204, 228, .28); border-radius: 12px 4px 12px 4px; background: rgba(11, 23, 36, .78); opacity: 1; backdrop-filter: blur(10px); }
.hero-carousel-control:hover, .hero-carousel-control:focus { color: #fff; border-color: var(--orange); background: rgba(243, 113, 33, .82); }
.hero-carousel-control.carousel-control-prev { left: max(1rem, calc((100vw - 1320px) / 2)); }
.hero-carousel-control.carousel-control-next { right: max(1rem, calc((100vw - 1320px) / 2)); }

.hero-event-slide .hero-slide { position: relative; width: 100%; max-width: none; padding: 0; }
.hero-event-slide .hero-event-row { width: 100%; min-height: inherit; margin: 0; }
.hero-event-slide .hero-event-copy { position: absolute; bottom: 82px; left: max(1.5rem, calc((100vw - 1320px) / 2)); z-index: 5; width: auto; padding: 0; }
.hero-event-slide .hero-event-visual { position: static; padding: 0; }
.hero-event-slide .hero-media { background-color: #030715; background-image: url("/img/ads/gitex-ai-turkiye-2026-slider.png"); background-position: center; background-size: cover; }
.hero-event-slide .hero-media::before { z-index: 1; background: rgba(3, 7, 21, .38); opacity: 1; mix-blend-mode: normal; backdrop-filter: blur(12px); }
.hero-event-slide .hero-media::after { z-index: 3; background: linear-gradient(180deg, rgba(3, 7, 21, .08) 52%, rgba(3, 7, 21, .74) 100%); }
.hero-event-slide .hero-media img { position: relative; z-index: 2; object-fit: contain; object-position: center; filter: none; }
.hero-event-cta { min-width: 154px; justify-content: center; box-shadow: 0 18px 44px rgba(0, 0, 0, .36); }

@media (min-width: 992px) {
    .loop-hero .hero-slide .col-lg-6:first-child { position: relative; z-index: 4; flex: 0 0 58%; width: 58%; max-width: 760px; padding-left: 0; }
    .loop-hero .hero-slide .col-lg-6:last-child { position: static; flex: 0 0 0; width: 0; max-width: 0; padding: 0; }
}

.product-spotlight { padding: 78px 0 20px; background: #edf1f4; }
.product-flow-zone { position: relative; }
.product-static-ad { display: none; }
.product-spotlight-panel { position: relative; display: grid; grid-template-columns: minmax(250px, .7fr) 1.3fr; align-items: center; gap: clamp(2rem, 5vw, 5rem); overflow: hidden; padding: clamp(2rem, 4.5vw, 4rem); border: 1px solid rgba(11, 63, 112, .13); border-radius: var(--radius-tech); background: rgba(255, 255, 255, .96); box-shadow: 0 24px 65px rgba(19, 31, 44, .1); }
.product-spotlight-panel::before { position: absolute; inset: 0 0 auto; height: 5px; background: var(--brand-ribbon); content: ""; }
.product-spotlight-logo { display: grid; min-height: 180px; place-items: center; padding: 1.4rem; border: 1px solid rgba(11, 63, 112, .12); border-radius: 16px 4px 16px 4px; background: linear-gradient(145deg, #fff, #edf2f5); }
.product-spotlight-logo img { width: 100%; max-width: 390px; height: 135px; object-fit: contain; }
.product-spotlight h2 { margin: .65rem 0 1rem; font-size: clamp(2rem, 3.2vw, 3.05rem); font-weight: 800; letter-spacing: -.04em; }
.product-spotlight p { max-width: 760px; margin: 0; color: var(--muted); font-size: 1.02rem; }

.section-label { display: inline-flex; align-items: center; gap: .5rem; padding: .42rem .68rem .4rem; color: #20577f; border: 1px solid rgba(44, 112, 166, .24); border-left: 3px solid #3e8dc4; border-radius: 8px 2px 8px 2px; background: rgba(225, 240, 250, .9); box-shadow: inset 0 1px rgba(255, 255, 255, .82); font-size: .7rem; font-weight: 850; letter-spacing: .13em; line-height: 1; text-transform: uppercase; }
.value-flow { padding: 88px 0; background: #f7f9fa; }
.section-intro { max-width: 740px; margin-bottom: 2.4rem; }
.section-intro h2, .section-title { margin: .65rem 0 1rem; color: var(--ink); font-size: clamp(2rem, 3.5vw, 3.2rem); font-weight: 805; letter-spacing: -.044em; line-height: 1.09; }
.section-copy { max-width: 730px; color: var(--muted); font-size: 1.03rem; }
.flow-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; border: 0; background: transparent; box-shadow: none; }
.flow-step { position: relative; min-height: 245px; padding: 2rem 1.55rem; border: 1px solid rgba(11, 63, 112, .13); border-radius: var(--radius-tech); background: #fff; box-shadow: var(--shadow-sm); transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease; }
.flow-step:hover { transform: translateY(-4px); border-color: rgba(243, 113, 33, .52); box-shadow: var(--shadow-lg); }
.flow-step + .flow-step { border-left: 1px solid rgba(11, 63, 112, .13); }
.flow-step > span { position: absolute; top: 1.1rem; right: 1.2rem; color: #9a938a; font-size: .72rem; font-weight: 800; }
.flow-step > i { display: grid; width: 48px; height: 48px; margin-bottom: 1.35rem; place-items: center; color: var(--orange-dark); border: 1px solid #f2c9b6; border-radius: 10px 3px 10px 3px; background: var(--orange-soft); font-size: 1.25rem; }
.flow-step h3 { margin-bottom: .65rem; font-size: 1.08rem; font-weight: 800; }
.flow-step p { margin: 0; color: var(--muted); font-size: .9rem; }

.overview-section { padding: 108px 0; color: #f1f6fa; border-top: 1px solid var(--tech-line); background-color: var(--tech-950); background-image: linear-gradient(105deg, rgba(59, 83, 104, .84), rgba(70, 106, 132, .74)), var(--tech-pattern-image); background-position: center; background-size: cover; }
.overview-section .section-title, .overview-section h3 { color: #fff; }
.overview-section .section-copy { color: #e0e8ee; }
.overview-section .section-label { color: #d9edff; border-color: rgba(127, 185, 231, .34); border-left-color: #ff9a59; background: rgba(48, 113, 166, .2); box-shadow: inset 0 1px rgba(255, 255, 255, .08); }
.metric-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; }
.metric-card { display: flex; min-height: 145px; gap: 1rem; padding: 1.35rem; border: 1px solid rgba(193, 216, 233, .36); border-radius: var(--radius-tech); background: rgba(73, 102, 125, .9); box-shadow: 0 18px 42px rgba(31, 53, 70, .16); transition: transform .22s ease, border-color .22s ease; backdrop-filter: blur(7px); }
.metric-card:hover { transform: translateY(-3px); border-color: rgba(243, 113, 33, .55); }
.metric-card > i { display: grid; flex: 0 0 48px; width: 48px; height: 48px; place-items: center; color: #ff9a59; border: 1px solid rgba(69, 138, 197, .35); border-radius: 10px 3px 10px 3px; background: rgba(11, 63, 112, .28); font-size: 1.25rem; }
.metric-card strong { display: block; margin: .15rem 0 .35rem; font-size: 1rem; }
.metric-card p { margin: 0; color: #e0e8ee; font-size: .86rem; line-height: 1.55; }
.text-link { display: inline-flex; align-items: center; gap: .45rem; color: var(--orange-dark); font-weight: 780; }
.text-link:hover { color: var(--ink); }
.overview-section .text-link, .module-section .text-link, .service-section .text-link { color: #ff9a59; }
.overview-section .text-link:hover, .module-section .text-link:hover, .service-section .text-link:hover { color: #fff; }

.module-section { padding: 108px 0; color: #f1f6fa; border-top: 1px solid rgba(255, 255, 255, .12); border-bottom: 1px solid var(--tech-line); background: linear-gradient(135deg, #526f86, #3f5a70 72%); }
.module-section .section-title { color: #fff; }
.module-section .section-copy { color: #e0e8ee; }
.module-section .section-label { color: #d9edff; border-color: rgba(127, 185, 231, .34); border-left-color: #ff9a59; background: rgba(48, 113, 166, .2); box-shadow: inset 0 1px rgba(255, 255, 255, .08); }
.module-section .btn-outline-dark, .service-section .btn-outline-dark { color: #dce5ec; border-color: rgba(127, 174, 214, .34); background: rgba(14, 28, 42, .58); box-shadow: none; }
.module-section .btn-outline-dark:hover, .service-section .btn-outline-dark:hover { color: #fff; border-color: rgba(243, 113, 33, .7); background: rgba(243, 113, 33, .16); }
.section-heading { display: flex; justify-content: space-between; align-items: end; gap: 2rem; margin-bottom: 2.5rem; }
.module-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; }
.module-card { overflow: hidden; border: 1px solid rgba(205, 222, 235, .34); border-radius: var(--radius-tech); background: #5b778d; box-shadow: 0 18px 44px rgba(29, 50, 67, .17); transition: transform .24s ease, border-color .24s ease, box-shadow .24s ease; }
.module-card:hover, .module-card:focus-within { transform: translateY(-5px); border-color: rgba(243, 113, 33, .6); box-shadow: 0 24px 56px rgba(0, 0, 0, .32), 0 0 0 1px rgba(243, 113, 33, .08); }
.module-card-image { display: block; overflow: hidden; aspect-ratio: 16 / 9; background: var(--surface-2); }
.module-section .module-card-image { background: var(--tech-800); }
.module-card-image img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.module-card:hover .module-card-image img { transform: scale(1.02); }
.module-card-body { padding: 1.45rem; }
.module-card h3 { margin-bottom: .65rem; color: #fff; font-size: 1.15rem; font-weight: 800; }
.module-card p { min-height: 68px; margin-bottom: 1rem; color: #e4ebf0; font-size: .88rem; }
.module-card .text-link { font-size: .88rem; }

.field-section { overflow: hidden; padding: 112px 0; background-color: #f4f7f9; background-image: linear-gradient(rgba(244, 247, 249, .93), rgba(244, 247, 249, .93)), var(--pattern-light); background-size: auto, 36px 36px, 36px 36px; }
.field-media-stack { position: relative; min-height: 520px; }
.field-media-main { width: 88%; height: 465px; object-fit: cover; border: 1px solid rgba(11, 63, 112, .18); border-radius: var(--radius-tech); box-shadow: var(--shadow-lg); }
.field-media-small { position: absolute; right: 0; bottom: 0; width: 47%; height: 220px; object-fit: cover; border: 7px solid #f4f7f9; border-radius: 16px 4px 16px 4px; box-shadow: var(--shadow-sm); }
.check-list { display: grid; gap: .75rem; padding: 0; margin: 1.5rem 0 0; list-style: none; }
.check-list li { display: flex; gap: .75rem; align-items: flex-start; color: var(--ink-3); font-weight: 650; }
.check-list i { display: grid; flex: 0 0 24px; width: 24px; height: 24px; place-items: center; color: #fff; border-radius: 7px 2px 7px 2px; background: var(--blue); }

.service-section { padding: 108px 0; color: #f1f6fa; border-top: 1px solid var(--tech-line); background-color: var(--tech-950); background-image: linear-gradient(112deg, rgba(59, 83, 104, .85), rgba(69, 105, 131, .74)), var(--tech-pattern-image); background-position: center; background-size: cover; }
.service-section .section-title { color: #fff; }
.service-section .section-copy { color: #e0e8ee; }
.service-section .section-label { color: #d9edff; border-color: rgba(127, 185, 231, .34); border-left-color: #ff9a59; background: rgba(48, 113, 166, .2); box-shadow: inset 0 1px rgba(255, 255, 255, .08); }
.service-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.service-tile { display: grid; grid-template-columns: 52px 1fr auto; align-items: start; gap: 1rem; padding: 1.4rem; border: 1px solid rgba(205, 222, 235, .34); border-radius: var(--radius-tech); background: rgba(73, 102, 125, .9); box-shadow: 0 16px 38px rgba(29, 50, 67, .14); transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; backdrop-filter: blur(6px); }
.service-tile:hover, .service-tile:focus-visible { transform: translateY(-4px); border-color: rgba(243, 113, 33, .62); box-shadow: 0 22px 48px rgba(0, 0, 0, .28); }
.service-tile > i:first-child { display: grid; width: 52px; height: 52px; place-items: center; color: #ff9a59; border: 1px solid rgba(76, 143, 202, .32); border-radius: 10px 3px 10px 3px; background: rgba(11, 63, 112, .28); font-size: 1.25rem; }
.service-tile > i:last-child { color: #8fa3b5; }
.service-tile h3 { margin: 0 0 .35rem; color: #fff; font-size: 1.02rem; font-weight: 800; }
.service-tile p { margin: 0; color: #e0e8ee; font-size: .86rem; line-height: 1.55; }

.closing-cta { padding: 92px 0; background: #e8edf1; }
.cta-panel { position: relative; display: flex; justify-content: space-between; align-items: center; gap: 2rem; overflow: hidden; padding: clamp(2rem, 5vw, 4rem); color: #fff; border: 1px solid var(--tech-line); border-radius: var(--radius-tech); background-color: var(--tech-900); background-image: linear-gradient(105deg, rgba(69, 97, 120, .88), rgba(69, 109, 137, .76)), var(--tech-pattern-image); background-position: center; background-size: cover; box-shadow: 0 28px 70px rgba(40, 66, 86, .18); }
.cta-panel::before { position: absolute; inset: 0 0 auto; height: 5px; background: var(--brand-ribbon); content: ""; }
.cta-panel span { color: #ffb27f; font-size: .74rem; font-weight: 850; letter-spacing: .14em; }
.cta-panel h2 { max-width: 780px; margin: .6rem 0 .75rem; color: #fff; font-size: clamp(2rem, 3vw, 3rem); font-weight: 805; letter-spacing: -.04em; }
.cta-panel p { max-width: 720px; margin: 0; color: #d7dade; }
.cta-panel .btn { flex: 0 0 auto; }

.page-header { position: relative; overflow: hidden; padding: 88px 0; color: #fff; border-bottom: 1px solid var(--tech-line); background-color: var(--tech-950); background-image: linear-gradient(105deg, rgba(59, 83, 104, .86), rgba(69, 107, 134, .76)), var(--tech-pattern-image); background-position: center; background-size: cover; }
.page-header::after { position: absolute; right: -100px; bottom: -170px; width: 420px; height: 420px; border: 1px solid rgba(90, 155, 210, .28); border-radius: 50%; box-shadow: 0 0 70px rgba(11, 63, 112, .2); content: ""; }
.page-header .eyebrow { color: #ff9a59; font-size: .74rem; font-weight: 850; letter-spacing: .13em; }
.page-header h1 { position: relative; z-index: 1; max-width: 900px; color: #fff; font-size: clamp(2.35rem, 4vw, 4.1rem); font-weight: 815; letter-spacing: -.05em; }
.page-header p { position: relative; z-index: 1; max-width: 760px; margin: 1rem 0 0; color: #b9c6d3; font-size: 1.06rem; }

.soft-card, .product-card, .contact-card { overflow: hidden; border: 1px solid rgba(11, 63, 112, .14); border-radius: var(--radius-tech); background: #fff; box-shadow: var(--shadow-sm); }
.soft-card, .product-card { transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease; }
.soft-card:hover, .product-card:hover { transform: translateY(-4px); border-color: #e6a17f; box-shadow: var(--shadow-lg); }
.service-card i { display: grid; width: 58px; height: 58px; place-items: center; color: var(--orange-dark); border: 1px solid #f2c9b6; background: var(--orange-soft); font-size: 1.35rem !important; }
.service-card h4, .service-card h5 { font-weight: 800; }
.service-card p, .product-card p { color: var(--muted); }
.product-image-wrap { overflow: hidden; display: flex; height: 235px; align-items: center; justify-content: center; background: var(--surface-2); }
.product-image-wrap img { width: 100%; height: 100%; object-fit: cover; }
.content-body { color: var(--ink-3); font-size: 1.03rem; line-height: 1.8; }
.content-body h2, .content-body h3 { margin: 2rem 0 .8rem; color: var(--ink); font-weight: 800; letter-spacing: -.025em; }
.content-body li { margin: .45rem 0; }
.contact-card { padding: 1.6rem; }
.contact-list { display: grid; gap: 1rem; margin-top: 1.5rem; }
.contact-list-item { display: grid; grid-template-columns: 38px 1fr; gap: .8rem; align-items: start; }
.contact-list-item > i { display: grid; width: 38px; height: 38px; place-items: center; color: var(--orange-dark); border: 1px solid #f2c9b6; background: var(--orange-soft); }
.contact-list-item strong { display: block; margin-bottom: .15rem; }
.contact-list-item span, .contact-list-item a { color: var(--muted); }
.contact-card .form-control, .contact-card .form-select { min-height: 48px; border-color: var(--line); border-radius: 7px; }
.contact-card textarea.form-control { min-height: 150px; }
.contact-card .form-control:focus, .contact-card .form-select:focus { border-color: var(--orange); box-shadow: 0 0 0 .2rem rgba(243, 113, 33, .13); }

.ad-section { padding-top: 26px; padding-bottom: 26px; }
.ad-section-header { padding-top: 18px; padding-bottom: 18px; }
.page-content-with-ad:not(:has(.ad-zone)) .page-content-main { width: 100%; }
.page-content-ad:not(:has(.ad-zone)), .footer-ad-wrap:not(:has(.ad-zone)), .side-ad:not(:has(.ad-zone)) { display: none; }
.ad-section-header { width: 100%; max-width: none; padding-right: clamp(12px, 3vw, 48px); padding-left: clamp(12px, 3vw, 48px); border-bottom: 1px solid rgba(73, 105, 129, .18); background: #e6eef3; }
.ad-section-header > .ad-zone { max-width: 1320px; margin: 0 auto; }
.ad-section-header .ad-placeholder { color: #9fb0bf; border-color: rgba(91, 151, 205, .3); background-color: rgba(17, 27, 39, .94); background-image: var(--pattern-dark); }
.ad-section-header .ad-placeholder strong { color: #e1e8ee; }
.ad-section:empty, .ad-section:not(:has(.ad-zone)) { display: none; }
.ad-zone { position: relative; width: 100%; }
.ad-link { position: relative; display: none; overflow: hidden; border: 1px solid var(--line); border-radius: 8px; background: #fff; box-shadow: var(--shadow-sm); }
.ad-link.is-active, .ad-link:first-of-type { display: block; }
.ad-zone[data-enhanced="true"] .ad-link { display: none; }
.ad-zone[data-enhanced="true"] .ad-link.is-active { display: block; }
.ad-link img { display: block; width: 100%; height: 100%; object-fit: contain; }
.ad-zone-wide .ad-link { aspect-ratio: 6 / 1; max-height: 220px; }
.ad-zone-header .ad-link { width: 100%; max-width: 728px; aspect-ratio: 728 / 90; max-height: 90px; margin: 0 auto; background: #070b1c; }
.ad-zone-header .ad-placeholder { min-height: 68px; }
.ad-zone-sidebar .ad-link { width: 100%; max-width: 250px; aspect-ratio: 1 / 1; margin: 0 auto; background: #070b1c; }
.ad-zone-sidebar .ad-placeholder { min-height: 360px; flex-direction: column; }
.ad-zone-footer .ad-link { width: 100%; max-width: 300px; aspect-ratio: 3 / 1; margin: 0 auto; background: #070b1c; }
.ad-zone-footer .ad-placeholder { min-height: 100px; }
.ad-section-content-middle { padding-top: 34px; padding-bottom: 34px; }
.ad-zone-content-middle .ad-link { width: 100%; max-width: 500px; aspect-ratio: 500 / 154; margin: 0 auto; border-color: rgba(82, 141, 191, .3); background: #0a111a; box-shadow: 0 18px 42px rgba(17, 34, 50, .2); }
.ad-placeholder { display: flex; min-height: 92px; align-items: center; justify-content: center; gap: 1rem; padding: 1.2rem; color: var(--muted); border: 1px dashed #bfc1c3; border-radius: 8px; background-color: rgba(255, 255, 255, .92); background-image: var(--pattern-light); background-position: 0 0, 16px 16px; background-size: 32px 32px; text-align: center; }
.ad-placeholder i { color: var(--orange-dark); font-size: 1.35rem; }
.ad-placeholder strong { display: block; color: var(--ink-2); font-size: .86rem; }
.ad-placeholder span { display: block; margin-top: .1rem; font-size: .74rem; }
.site-content-shell { position: relative; display: block; width: 100%; }
.site-content-shell > main { width: 100%; min-width: 0; }
.side-ad { display: none; }
@media (min-width: 1680px) {
    .side-ad { position: fixed; top: 148px; z-index: 30; display: block; width: clamp(120px, calc((100vw - 1360px) / 2), 160px); }
    .side-ad-left { left: 12px; }
    .side-ad-right { right: 12px; }
    .side-ad .ad-link { width: 120px; max-width: 120px; aspect-ratio: 1 / 5; max-height: min(600px, calc(100vh - 176px)); margin: 0 auto; background: #070b1c; }
    .side-ad .ad-placeholder { min-height: min(520px, calc(100vh - 176px)); flex-direction: column; padding: 1rem .65rem; background-color: rgba(12, 20, 30, .96); color: #9fb0bf; border-color: rgba(91, 151, 205, .3); }
    .side-ad .ad-placeholder strong { color: #e1e8ee; }
}

@media (min-width: 1200px) {
    .product-flow-zone { display: grid; width: calc(100% - 24px); grid-template-columns: clamp(140px, 12.8vw, 205px) minmax(0, 1320px) clamp(140px, 12.8vw, 205px); justify-content: center; column-gap: clamp(10px, 1vw, 18px); margin: 0 auto; background: linear-gradient(to bottom, #edf1f4 0 43%, #f7f9fa 43% 100%); }
    .product-static-ad { position: static; z-index: 8; display: block; grid-row: 1 / span 2; align-self: start; padding-top: 78px; }
    .product-static-ad-left { grid-column: 1; justify-self: end; width: min(120px, 100%); }
    .product-static-ad-right { grid-column: 3; justify-self: start; width: 100%; max-width: 205px; }
    .product-static-ad:not(:has(.ad-zone)) { display: none; }
    .product-flow-zone > .product-spotlight { grid-row: 1; grid-column: 2; }
    .product-flow-zone > .value-flow { grid-row: 2; grid-column: 2; }
    .product-flow-zone > .product-spotlight .container, .product-flow-zone > .value-flow .container { width: 100%; max-width: none; }
    .product-static-ad .ad-link { width: 100%; margin: 0; border-color: rgba(94, 153, 203, .3); border-radius: 12px 3px 12px 3px; background: #07111d; box-shadow: 0 24px 58px rgba(15, 30, 44, .24); }
    .product-static-ad-left .ad-link { aspect-ratio: 1 / 5; }
    .product-static-ad-right .ad-link { aspect-ratio: 733 / 2146; }
    .product-static-ad .ad-link img { object-fit: contain; }
    .product-flow-zone:not(:has(.product-static-ad-left .ad-zone)):not(:has(.product-static-ad-right .ad-zone)) { display: block; width: 100%; }
}

.footer { position: relative; margin-top: 0; color: #3d4e5b; border-top: 0; background-color: #e3ebf1; background-image: linear-gradient(110deg, rgba(238, 244, 247, .94), rgba(216, 228, 236, .92)), var(--tech-pattern-image); background-position: center; background-size: cover; }
.footer::before { position: absolute; inset: 0 0 auto; height: 5px; background: var(--brand-ribbon); content: ""; }
.footer-ad-wrap { padding-top: 30px; }
.footer-main { padding: 64px 0 44px; }
.footer-logo-crop { display: flex; width: 220px; height: 93px; align-items: center; justify-content: center; margin-bottom: 1.2rem; padding: 0; background: transparent; box-shadow: none; }
.footer-logo-crop img { display: block; width: 100%; height: 100%; object-fit: contain; }
.footer p { max-width: 580px; color: #4f606d; font-size: .9rem; }
.footer h2 { margin-bottom: 1rem; color: #263b4b; font-size: .8rem; font-weight: 820; letter-spacing: .08em; text-transform: uppercase; }
.footer a { display: block; margin: .55rem 0; color: #3d4e5b; font-size: .9rem; }
.footer a:hover { color: var(--orange-dark); }
.footer-mail { color: var(--orange-dark) !important; font-weight: 750; }
.footer-contact { display: flex; gap: .65rem; align-items: flex-start; }
.footer-contact i { margin-top: .25rem; color: var(--orange); }
.footer-bottom { display: flex; justify-content: space-between; gap: 1rem; margin-top: 0; padding: .68rem 0 .78rem; color: #263b4b; background: #cbd9e3; box-shadow: 0 0 0 100vmax #cbd9e3; clip-path: inset(0 -100vmax); font-size: .76rem; }
.footer-legal { display: flex; gap: 1rem; }
.footer-legal a { display: inline; margin: 0; font-size: inherit; }
.footer .ad-placeholder { color: #526675; border-color: rgba(73, 105, 129, .28); background-color: rgba(246, 249, 251, .86); background-image: var(--pattern-light); }
.footer .ad-placeholder strong { color: #263b4b; }

.reveal { opacity: 1; transform: none; }
.js .reveal { opacity: 0; transform: translateY(16px); transition: opacity .55s ease, transform .55s ease; }
.js .reveal.is-visible { opacity: 1; transform: none; }

@media (max-width: 1399.98px) {
    .navbar .nav-link, .navbar .dropdown-toggle { padding-right: .5rem !important; padding-left: .5rem !important; font-size: .82rem; }
    .company-logo-crop { width: 164px; height: 69px; }
}

@media (max-width: 1199.98px) {
    .site-nav { min-height: 74px; }
    .navbar-collapse { max-height: calc(100vh - 120px); overflow-y: auto; padding: 1rem 0 1.25rem; }
    .navbar .nav-link, .navbar .dropdown-toggle { padding: .62rem .1rem !important; }
    .dropdown-menu { margin: 0 0 .5rem !important; box-shadow: none; }
    .dropdown-menu-modules { left: auto !important; width: 100%; transform: none; }
    .nav-demo { margin-top: .55rem; }
}

@media (max-width: 991.98px) {
    .topbar-inner { flex-wrap: wrap; gap: .35rem .8rem; }
    .topbar-contact { flex: 1 1 520px; justify-content: flex-start; }
    .topbar-actions { margin-left: auto; }
    .loop-hero .carousel-item { min-height: 650px; }
    .loop-hero .hero-slide { min-height: inherit; padding-top: 70px; padding-bottom: 100px; }
    .loop-hero .hero-slide > .row { margin: 0; }
    .loop-hero .hero-slide .col-lg-6:first-child { position: relative; z-index: 4; width: 100%; max-width: 720px; padding: 0; }
    .loop-hero .hero-slide .col-lg-6:last-child { position: static; padding: 0; }
    .hero-media::after { background: linear-gradient(90deg, rgba(14, 22, 32, .95) 0%, rgba(16, 28, 42, .87) 66%, rgba(15, 27, 39, .66) 100%); }
    .hero-media img { height: 100%; object-position: 62% center; }
    .hero-media figcaption { display: none; }
    .product-spotlight-panel { grid-template-columns: 1fr; }
    .product-spotlight-logo { min-height: 140px; }
    .flow-grid { grid-template-columns: repeat(2, 1fr); }
    .flow-step + .flow-step, .flow-step:nth-child(even), .flow-step:nth-child(n+3) { border: 1px solid rgba(11, 63, 112, .13); }
    .module-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .field-media-stack { max-width: 720px; margin: 0 auto 2rem; }
    .cta-panel { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 767.98px) {
    .company-logo-crop { width: 145px; height: 61px; }
    .topbar { font-size: .76rem; }
    .module-menu-grid { grid-template-columns: 1fr; }
    .loop-hero h1 { font-size: clamp(2.35rem, 11vw, 3.35rem); }
    .hero-product-logo { max-width: 230px; height: 62px; }
    .hero-media img { height: 100%; }
    .product-spotlight, .value-flow, .overview-section, .module-section, .field-section, .service-section, .closing-cta { padding-top: 70px; padding-bottom: 70px; }
    .metric-grid, .module-grid, .service-grid { grid-template-columns: 1fr; }
    .section-heading { align-items: flex-start; flex-direction: column; }
    .module-card p { min-height: 0; }
    .field-media-stack { min-height: 420px; }
    .field-media-main { width: 94%; height: 370px; }
    .field-media-small { width: 48%; height: 170px; border-width: 5px; }
    .footer-bottom { flex-direction: column; }
    .ad-zone-wide .ad-link { aspect-ratio: 3 / 1; }
}

@media (max-width: 575.98px) {
    .topbar-contact { flex-basis: 100%; gap: .35rem .9rem; }
    .topbar-actions { width: 100%; justify-content: space-between; margin-left: 0; }
    .topbar-social { padding-right: .55rem; }
    .loop-hero .carousel-item { min-height: 610px; }
    .loop-hero .hero-slide { padding-top: 58px; padding-bottom: 88px; }
    .hero-media img { height: 100%; object-position: 60% center; }
    .hero-carousel-control { display: none; }
    .product-spotlight-panel { padding: 1.5rem; }
    .flow-grid { grid-template-columns: 1fr; }
    .flow-step { min-height: auto; }
    .flow-step:nth-child(even), .flow-step + .flow-step { border: 1px solid rgba(11, 63, 112, .13); }
    .field-media-stack { min-height: 350px; }
    .field-media-main { height: 310px; }
    .field-media-small { height: 135px; }
    .service-tile { grid-template-columns: 46px 1fr; }
    .service-tile > i:last-child { display: none; }
    .page-header { padding: 60px 0; }
    .ad-zone-wide .ad-link { aspect-ratio: 2.2 / 1; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
    .reveal, .js .reveal { opacity: 1; transform: none; }
}
