:root {
    --nistek-blue: #2d98f9;
    --nistek-blue-strong: #0e6fca;
    --nistek-blue-deep: #0758a6;
    --nistek-cyan: #69d7ff;
    --nistek-ink: #0b1530;
    --nistek-text: #35415f;
    --nistek-muted: #71809e;
    --nistek-line: rgba(45, 152, 249, .17);
    --nistek-glass: rgba(255, 255, 255, .72);
    --nistek-glass-strong: rgba(255, 255, 255, .9);
    --nistek-surface: #f7fbff;
    --nistek-white: #fff;
    --nistek-shadow: 0 24px 70px rgba(20, 78, 137, .12);
    --nistek-shadow-soft: 0 14px 40px rgba(20, 78, 137, .09);
    --nistek-radius: 28px;
    --nistek-radius-sm: 18px;
    --nistek-transition: 220ms cubic-bezier(.2, .8, .2, 1);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; overflow-x: hidden; }
body.nistek-site {
    margin: 0;
    overflow-x: hidden;
    color: var(--nistek-text);
    background:
        radial-gradient(circle at 72% 0%, rgba(105, 215, 255, .14), transparent 24rem),
        linear-gradient(180deg, #fbfdff 0%, #f7fbff 48%, #fff 100%);
    font-family: Inter, "Segoe UI", Arial, sans-serif;
    font-size: 16px;
    line-height: 1.7;
    -webkit-font-smoothing: antialiased;
}

body.nistek-site h1,
body.nistek-site h2,
body.nistek-site h3,
body.nistek-site h4,
body.nistek-site h5,
body.nistek-site h6 {
    margin: 0;
    color: var(--nistek-ink);
    font-family: "Segoe UI", Inter, Arial, sans-serif;
    font-weight: 750;
    letter-spacing: -.035em;
    line-height: 1.08;
}
body.nistek-site p { margin: 0; }
body.nistek-site a { color: inherit; text-decoration: none; transition: var(--nistek-transition); }
body.nistek-site img { max-width: 100%; height: auto; }
::selection { color: #fff; background: var(--nistek-blue); }

.skip-link {
    position: fixed;
    left: 16px;
    top: -80px;
    z-index: 9999;
    padding: 10px 16px;
    border-radius: 10px;
    color: #fff !important;
    background: var(--nistek-ink);
}
.skip-link:focus { top: 16px; }

.future-container {
    position: relative;
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.future-ambient { position: fixed; inset: 0; z-index: -1; overflow: hidden; pointer-events: none; }
.future-orb { position: absolute; border-radius: 50%; filter: blur(2px); opacity: .5; }
.future-orb-one {
    width: 460px;
    height: 460px;
    top: 64px;
    right: -220px;
    background: radial-gradient(circle at 35% 35%, rgba(105, 215, 255, .42), rgba(45, 152, 249, .04) 68%, transparent 70%);
}
.future-orb-two {
    width: 350px;
    height: 350px;
    left: -190px;
    top: 620px;
    background: radial-gradient(circle, rgba(45, 152, 249, .15), transparent 68%);
}
.future-grid {
    position: absolute;
    inset: 0;
    opacity: .15;
    background-image:
        linear-gradient(rgba(45, 152, 249, .16) 1px, transparent 1px),
        linear-gradient(90deg, rgba(45, 152, 249, .16) 1px, transparent 1px);
    background-size: 72px 72px;
    mask-image: linear-gradient(to bottom, #000, transparent 78%);
}

.future-ribbon {
    color: #dceeff;
    background: var(--nistek-ink);
    font-size: 12px;
    font-weight: 650;
    letter-spacing: .07em;
}
.ribbon-inner {
    min-height: 34px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}
.ribbon-inner i { margin-right: 7px; color: var(--nistek-cyan); }
.ribbon-inner a { color: #fff !important; opacity: .8; }
.ribbon-inner a:hover { opacity: 1; }

.site-header {
    position: relative;
    z-index: 1000;
    border-bottom: 1px solid rgba(45, 152, 249, .1);
    background: rgba(255, 255, 255, .78);
    backdrop-filter: blur(20px) saturate(160%);
    -webkit-backdrop-filter: blur(20px) saturate(160%);
}
.site-header.is-sticky {
    position: fixed;
    inset: 0 0 auto;
    box-shadow: 0 12px 38px rgba(15, 61, 108, .1);
}
.site-header.is-sticky .future-ribbon { display: none; }
.future-nav { min-height: 86px; padding: 0; }
.nav-shell { display: flex; align-items: center; }
.future-brand { width: 154px; flex: 0 0 auto; }
.future-brand img { display: block; max-height: 54px; width: auto; }
#nistekNavigation { align-items: center; justify-content: flex-end; gap: 30px; }
.future-menu-wrap { display: flex; align-items: center; }
.future-menu-wrap .navbar-nav { display: flex; align-items: center; gap: 4px; margin: 0 !important; padding: 0; list-style: none; }
.future-menu-wrap .navbar-nav > li { position: relative; padding: 0; }
.future-menu-wrap .navbar-nav > li > a {
    display: inline-flex;
    align-items: center;
    min-height: 86px;
    padding: 0 13px;
    color: var(--nistek-ink);
    font-size: 14px;
    font-weight: 700;
}
.future-menu-wrap .navbar-nav > li > a::after {
    content: "";
    position: absolute;
    left: 13px;
    right: 13px;
    bottom: 22px;
    height: 2px;
    border-radius: 10px;
    background: linear-gradient(90deg, var(--nistek-blue), var(--nistek-cyan));
    transform: scaleX(0);
    transform-origin: right;
    transition: transform var(--nistek-transition);
}
.future-menu-wrap .navbar-nav > li:hover > a,
.future-menu-wrap .navbar-nav > li.current-menu-item > a { color: var(--nistek-blue-strong); }
.future-menu-wrap .navbar-nav > li:hover > a::after,
.future-menu-wrap .navbar-nav > li.current-menu-item > a::after { transform: scaleX(1); transform-origin: left; }
.pq-submenu-icon { margin-left: -8px; color: var(--nistek-blue); font-size: 10px; pointer-events: none; }
.future-menu-wrap .sub-menu {
    position: absolute;
    left: 0;
    top: calc(100% - 8px);
    min-width: 250px;
    margin: 0;
    padding: 12px;
    visibility: hidden;
    opacity: 0;
    list-style: none;
    border: 1px solid var(--nistek-line);
    border-radius: 18px;
    background: rgba(255, 255, 255, .96);
    box-shadow: var(--nistek-shadow);
    transform: translateY(10px);
    transition: var(--nistek-transition);
}
.future-menu-wrap li:hover > .sub-menu { visibility: visible; opacity: 1; transform: translateY(0); }
.future-menu-wrap .sub-menu a {
    display: block;
    padding: 10px 12px;
    border-radius: 10px;
    color: var(--nistek-text);
    font-size: 14px;
    font-weight: 650;
}
.future-menu-wrap .sub-menu a:hover { color: var(--nistek-blue-strong); background: #edf7ff; }

.future-menu-button {
    width: 46px;
    height: 42px;
    padding: 9px;
    border: 1px solid var(--nistek-line);
    border-radius: 13px;
    background: rgba(255, 255, 255, .85);
}
.future-menu-button span {
    display: block;
    width: 24px;
    height: 2px;
    margin: 5px auto;
    border-radius: 4px;
    background: var(--nistek-ink);
}

.future-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 52px;
    padding: 0 22px;
    border: 1px solid transparent;
    border-radius: 15px;
    font-size: 14px;
    font-weight: 750;
    line-height: 1;
    transition: var(--nistek-transition);
}
.future-button i { font-size: 12px; transition: transform var(--nistek-transition); }
.future-button:hover i { transform: translateX(3px); }
.future-button-primary {
    color: #fff !important;
    border-color: var(--nistek-blue);
    background: linear-gradient(135deg, var(--nistek-blue), var(--nistek-blue-strong));
    box-shadow: 0 15px 32px rgba(45, 152, 249, .26);
}
.future-button-primary:hover { transform: translateY(-2px); box-shadow: 0 20px 42px rgba(45, 152, 249, .34); }
.future-button-ghost {
    color: var(--nistek-ink) !important;
    border-color: var(--nistek-line);
    background: rgba(255, 255, 255, .63);
    backdrop-filter: blur(12px);
}
.future-button-ghost:hover { border-color: rgba(45, 152, 249, .45); background: #fff; transform: translateY(-2px); }
.future-button-light { color: var(--nistek-blue-deep) !important; background: #fff; box-shadow: var(--nistek-shadow-soft); }
.nav-cta { min-height: 46px; padding-inline: 18px; white-space: nowrap; }

.future-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: var(--nistek-blue-strong);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}
.future-eyebrow .fa-circle { font-size: 7px; color: var(--nistek-blue); box-shadow: 0 0 0 5px rgba(45, 152, 249, .1); border-radius: 50%; }

.future-hero { position: relative; padding: 82px 0 0; }
.hero-grid {
    min-height: 650px;
    display: grid;
    grid-template-columns: minmax(0, .92fr) minmax(500px, 1.08fr);
    gap: 62px;
    align-items: center;
}
.hero-copy { position: relative; z-index: 2; padding: 30px 0 58px; }
.hero-copy h1 {
    max-width: 720px;
    margin-top: 22px !important;
    font-size: clamp(48px, 5.45vw, 78px);
}
.hero-copy h1 span {
    color: transparent;
    background: linear-gradient(100deg, var(--nistek-blue-strong), var(--nistek-blue), #63cfff);
    -webkit-background-clip: text;
    background-clip: text;
}
.hero-copy > p { max-width: 620px; margin-top: 26px; color: var(--nistek-muted); font-size: 18px; line-height: 1.75; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 34px; }
.hero-trust {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    max-width: 630px;
    margin-top: 50px;
    padding-top: 26px;
    border-top: 1px solid var(--nistek-line);
}
.hero-trust div {
    display: grid;
    grid-template-columns: 36px minmax(0, 1fr);
    grid-template-rows: auto auto;
    column-gap: 11px;
    align-items: center;
}
.hero-trust div > i {
    width: 36px;
    height: 36px;
    grid-row: 1 / span 2;
    display: grid;
    place-items: center;
    border: 1px solid rgba(45,152,249,.16);
    border-radius: 11px;
    color: var(--nistek-blue-strong);
    background: rgba(234,246,255,.86);
    font-size: 14px;
}
.hero-trust strong { color: var(--nistek-ink); font-size: 14px; }
.hero-trust span { color: var(--nistek-muted); font-size: 12px; }

.hero-visual { position: relative; min-height: 570px; perspective: 1100px; }
.product-stage {
    position: absolute;
    inset: 80px 4px 58px 32px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .9);
    border-radius: 30px;
    background: linear-gradient(145deg, rgba(255, 255, 255, .9), rgba(230, 246, 255, .68));
    box-shadow: 0 45px 90px rgba(20, 88, 156, .2), inset 0 1px 0 #fff;
    transform: rotateY(-6deg) rotateX(3deg);
    backdrop-filter: blur(24px);
}
.product-stage::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 82% 5%, rgba(45, 152, 249, .25), transparent 26%),
        linear-gradient(120deg, transparent 35%, rgba(255,255,255,.7) 50%, transparent 65%);
    pointer-events: none;
}
.stage-top {
    position: relative;
    z-index: 1;
    height: 58px;
    padding: 0 22px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid var(--nistek-line);
    color: var(--nistek-muted);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .12em;
}
.stage-status { display: flex; align-items: center; gap: 7px; }
.stage-status i { width: 7px; height: 7px; border-radius: 50%; background: #1cc98a; box-shadow: 0 0 0 5px rgba(28,201,138,.1); }
.stage-body { position: relative; z-index: 1; height: calc(100% - 58px); display: grid; grid-template-columns: 66px 1fr; }
.stage-sidebar { display: flex; flex-direction: column; align-items: center; gap: 18px; padding-top: 28px; border-right: 1px solid var(--nistek-line); }
.stage-sidebar span { width: 26px; height: 26px; border-radius: 9px; background: rgba(45, 152, 249, .09); }
.stage-sidebar span.active { background: linear-gradient(135deg, var(--nistek-blue), var(--nistek-blue-strong)); box-shadow: 0 8px 18px rgba(45,152,249,.26); }
.stage-content { padding: 32px; }
.stage-heading { display: flex; justify-content: space-between; align-items: center; }
.stage-heading span:first-child { width: 42%; height: 16px; border-radius: 8px; background: var(--nistek-ink); opacity: .88; }
.stage-heading span:last-child { width: 78px; height: 26px; border-radius: 9px; background: rgba(45, 152, 249, .13); }
.stage-chart {
    height: 180px;
    margin-top: 34px;
    padding: 22px 24px 0;
    display: flex;
    align-items: flex-end;
    gap: 15px;
    border: 1px solid rgba(45,152,249,.12);
    border-radius: 18px;
    background: rgba(255, 255, 255, .58);
}
.stage-chart i {
    flex: 1;
    height: var(--h);
    min-width: 12px;
    border-radius: 7px 7px 3px 3px;
    background: linear-gradient(180deg, var(--nistek-cyan), var(--nistek-blue));
    box-shadow: 0 8px 18px rgba(45,152,249,.13);
}
.stage-panels { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-top: 18px; }
.stage-panels span { height: 68px; border: 1px solid rgba(45,152,249,.1); border-radius: 14px; background: rgba(255,255,255,.62); }
.orbit { position: absolute; border: 1px solid rgba(45,152,249,.2); border-radius: 50%; pointer-events: none; }
.orbit-one { width: 430px; height: 430px; right: -90px; top: 58px; }
.orbit-two { width: 330px; height: 330px; left: 10px; bottom: 3px; border-style: dashed; animation: futureRotate 24s linear infinite; }
.floating-card {
    position: absolute;
    z-index: 3;
    min-width: 192px;
    padding: 16px 18px;
    display: grid;
    grid-template-columns: 36px 1fr;
    gap: 2px 12px;
    border: 1px solid rgba(255,255,255,.9);
    border-radius: 17px;
    background: rgba(255,255,255,.8);
    box-shadow: var(--nistek-shadow);
    backdrop-filter: blur(18px);
    animation: futureFloat 7s ease-in-out infinite;
}
.floating-card i { grid-row: span 2; align-self: center; color: var(--nistek-blue-strong); font-size: 22px; }
.floating-card span { color: var(--nistek-muted); font-size: 10px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
.floating-card strong { color: var(--nistek-ink); font-size: 13px; }
.card-design { left: -22px; top: 88px; }
.card-code { right: -18px; top: 242px; animation-delay: -2s; }
.card-growth { left: 54px; bottom: 20px; animation-delay: -4s; }

.client-strip {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 30px;
    min-height: 96px;
    margin-top: 26px;
    padding: 0 28px;
    border: 1px solid var(--nistek-line);
    border-radius: 22px;
    background: rgba(255,255,255,.64);
    box-shadow: var(--nistek-shadow-soft);
    backdrop-filter: blur(16px);
}
.client-strip > span { color: var(--nistek-muted); font-size: 12px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.client-strip div { display: flex; align-items: center; justify-content: space-between; gap: 22px; }
.client-strip b { display: inline-flex; align-items: center; gap: 9px; color: var(--nistek-ink); font-size: 13px; font-weight: 750; white-space: nowrap; }
.client-strip b i { width: 28px; height: 28px; display: grid; place-items: center; border-radius: 9px; color: var(--nistek-blue-strong); background: #eaf6ff; font-size: 12px; }

.future-section { position: relative; padding: 120px 0; }
.section-heading { margin-bottom: 54px; }
.section-heading h2 { margin-top: 16px !important; font-size: clamp(38px, 4.3vw, 58px); }
.split-heading { display: grid; grid-template-columns: 1.1fr .9fr; gap: 80px; align-items: end; }
.split-heading p { max-width: 500px; padding-bottom: 8px; color: var(--nistek-muted); font-size: 17px; }
.centered-heading { max-width: 760px; margin-inline: auto; text-align: center; }

.services-section { overflow: hidden; background: linear-gradient(180deg, rgba(237,247,255,.55), rgba(255,255,255,.15)); }
.future-service-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
}
.future-service-grid .item { min-width: 0; }
.future-service-card,
.future-service-grid .pq-service-slider-2 {
    position: relative;
    min-height: 240px;
    height: 100%;
    padding: 30px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    overflow: hidden;
    border: 1px solid var(--nistek-line);
    border-radius: 24px;
    background: rgba(255,255,255,.74);
    box-shadow: var(--nistek-shadow-soft);
    backdrop-filter: blur(15px);
    transition: var(--nistek-transition);
}
.future-service-card::before,
.future-service-grid .pq-service-slider-2::before {
    content: "";
    position: absolute;
    width: 170px;
    height: 170px;
    right: -90px;
    top: -100px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(45,152,249,.2), transparent 68%);
    transition: var(--nistek-transition);
}
.future-service-card:hover,
.future-service-grid .pq-service-slider-2:hover {
    transform: translateY(-7px);
    border-color: rgba(45,152,249,.38);
    background: rgba(255,255,255,.96);
    box-shadow: 0 28px 65px rgba(20,78,137,.14);
}
.future-service-card:hover::before { transform: scale(1.35); }
.service-card-number {
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    border-radius: 17px;
    color: #fff;
    background: linear-gradient(135deg, var(--nistek-blue), var(--nistek-blue-strong));
    box-shadow: 0 13px 28px rgba(45,152,249,.23);
    font-size: 17px;
    font-weight: 800;
}
.future-service-card h3,
.future-service-grid .pq-service-title {
    margin-top: 34px !important;
    color: var(--nistek-ink);
    font-size: 22px;
    line-height: 1.2;
}
.future-service-card .service-card-link { margin-top: auto; padding-top: 28px; color: var(--nistek-blue-strong); font-size: 13px; font-weight: 800; }
.future-service-card .service-card-link i { margin-left: 7px; }
.future-service-grid .pq-service-media {
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    border-radius: 17px;
    color: #fff;
    background: linear-gradient(135deg, var(--nistek-blue), var(--nistek-blue-strong));
}
.future-service-grid .pq-service-media i { color: #fff; font-size: 22px; }
.future-service-grid br { display: none; }

.creative-section { background: #fff; }
.creative-grid {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    gap: 80px;
    align-items: center;
}
.creative-copy h2 { max-width: 530px; margin-top: 16px !important; font-size: clamp(38px, 4.25vw, 58px); }
.creative-copy p { max-width: 560px; margin-top: 24px; color: var(--nistek-muted); font-size: 17px; }
.future-text-link { display: inline-flex; align-items: center; gap: 10px; margin-top: 30px; color: var(--nistek-blue-strong) !important; font-size: 14px; font-weight: 800; }
.future-text-link:hover { gap: 15px; }
.capability-cloud {
    position: relative;
    min-height: 470px;
    padding: 34px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
    border: 1px solid var(--nistek-line);
    border-radius: 32px;
    background:
        radial-gradient(circle at 80% 5%, rgba(105,215,255,.2), transparent 34%),
        rgba(245, 251, 255, .82);
    box-shadow: var(--nistek-shadow);
}
.capability-cloud::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background-image: radial-gradient(rgba(45,152,249,.18) 1px, transparent 1px);
    background-size: 20px 20px;
    mask-image: linear-gradient(135deg, transparent, #000 60%, transparent);
    pointer-events: none;
}
.capability-cloud a {
    position: relative;
    z-index: 1;
    min-height: 118px;
    padding: 20px;
    display: flex;
    align-items: center;
    gap: 16px;
    border: 1px solid rgba(45,152,249,.12);
    border-radius: 20px;
    background: rgba(255,255,255,.78);
    box-shadow: 0 10px 30px rgba(20,78,137,.07);
}
.capability-cloud a:nth-child(2),
.capability-cloud a:nth-child(5) { transform: translateY(18px); }
.capability-cloud a:hover { border-color: rgba(45,152,249,.42); transform: translateY(-3px); background: #fff; }
.capability-cloud a:nth-child(2):hover,
.capability-cloud a:nth-child(5):hover { transform: translateY(15px); }
.capability-cloud i { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 14px; color: var(--nistek-blue-strong); background: #eaf6ff; font-size: 18px; }
.capability-cloud span { color: var(--nistek-ink); font-size: 15px; font-weight: 750; }

.process-section { background: linear-gradient(160deg, #f6fbff, #eef8ff); }
.process-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.process-grid article {
    position: relative;
    min-height: 300px;
    padding: 28px;
    overflow: hidden;
    border: 1px solid var(--nistek-line);
    border-radius: 23px;
    background: rgba(255,255,255,.78);
}
.process-grid article::after {
    content: "";
    position: absolute;
    left: 28px;
    right: 28px;
    bottom: 0;
    height: 3px;
    border-radius: 5px 5px 0 0;
    background: linear-gradient(90deg, var(--nistek-blue), var(--nistek-cyan));
    transform: scaleX(0);
    transform-origin: left;
    transition: var(--nistek-transition);
}
.process-grid article:hover::after { transform: scaleX(1); }
.process-grid article > span { position: absolute; top: 22px; right: 24px; color: rgba(45,152,249,.25); font-size: 34px; font-weight: 800; }
.process-grid article > i { width: 52px; height: 52px; display: grid; place-items: center; border-radius: 16px; color: var(--nistek-blue-strong); background: #eaf6ff; font-size: 20px; }
.process-grid h3 { margin-top: 42px !important; font-size: 23px; }
.process-grid p { margin-top: 14px; color: var(--nistek-muted); font-size: 14px; }

.trust-section { background: #fff; }
.trust-grid { display: grid; grid-template-columns: .92fr 1.08fr; gap: 86px; align-items: center; }
.trust-visual { position: relative; min-height: 500px; }
.trust-card { position: absolute; border: 1px solid var(--nistek-line); background: rgba(255,255,255,.8); box-shadow: var(--nistek-shadow); backdrop-filter: blur(18px); }
.trust-main {
    inset: 20px 36px 48px 0;
    padding: 54px;
    overflow: hidden;
    border-radius: 34px;
    background:
        radial-gradient(circle at 90% 0%, rgba(105,215,255,.3), transparent 35%),
        linear-gradient(145deg, rgba(255,255,255,.96), rgba(234,247,255,.8));
}
.trust-main::before {
    content: "";
    position: absolute;
    width: 240px;
    height: 240px;
    right: -74px;
    bottom: -70px;
    border: 1px solid rgba(45,152,249,.25);
    border-radius: 50%;
    box-shadow: 0 0 0 30px rgba(45,152,249,.04), 0 0 0 60px rgba(45,152,249,.035);
}
.trust-main h3 { margin-top: 42px !important; font-size: clamp(38px, 4.2vw, 58px); }
.trust-lines { display: flex; flex-direction: column; gap: 10px; margin-top: 64px; }
.trust-lines span { height: 10px; border-radius: 8px; background: linear-gradient(90deg, rgba(45,152,249,.3), rgba(45,152,249,.04)); }
.trust-lines span:nth-child(1) { width: 76%; }
.trust-lines span:nth-child(2) { width: 57%; }
.trust-lines span:nth-child(3) { width: 39%; }
.trust-mini {
    right: 0;
    bottom: 0;
    min-width: 260px;
    padding: 22px;
    display: grid;
    grid-template-columns: 46px 1fr;
    gap: 1px 13px;
    border-radius: 20px;
}
.trust-mini i { grid-row: span 2; width: 46px; height: 46px; display: grid; place-items: center; color: #fff; border-radius: 14px; background: linear-gradient(135deg, var(--nistek-blue), var(--nistek-blue-strong)); }
.trust-mini strong { color: var(--nistek-ink); font-size: 14px; }
.trust-mini span { color: var(--nistek-muted); font-size: 12px; }
.trust-copy h2 { max-width: 620px; margin-top: 16px !important; font-size: clamp(38px, 4.2vw, 58px); }
.trust-copy > p { max-width: 600px; margin-top: 24px; color: var(--nistek-muted); font-size: 17px; }
.future-check-list { margin: 30px 0 34px; padding: 0; display: grid; gap: 13px; list-style: none; }
.future-check-list li { display: flex; gap: 12px; align-items: center; color: var(--nistek-text); font-weight: 650; }
.future-check-list i { width: 25px; height: 25px; display: grid; place-items: center; border-radius: 50%; color: var(--nistek-blue-strong); background: #e8f5ff; font-size: 10px; }

.future-contact-strip { position: relative; padding: 0 0 70px; background: #fff; }
.future-contact-strip .future-container {
    min-height: 230px;
    padding: 44px 50px;
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    gap: 44px;
    align-items: center;
    overflow: hidden;
    border-radius: 30px;
    color: #fff;
    background:
        radial-gradient(circle at 88% 12%, rgba(105,215,255,.32), transparent 26%),
        linear-gradient(130deg, var(--nistek-blue-deep), var(--nistek-blue) 70%, #54caff);
    box-shadow: 0 28px 65px rgba(45,152,249,.24);
}
.future-contact-strip .future-container::after {
    content: "";
    position: absolute;
    width: 280px;
    height: 280px;
    right: -100px;
    bottom: -170px;
    border: 1px solid rgba(255,255,255,.28);
    border-radius: 50%;
    box-shadow: 0 0 0 35px rgba(255,255,255,.05), 0 0 0 70px rgba(255,255,255,.04);
}
.future-contact-strip .future-eyebrow { color: rgba(255,255,255,.75); }
.future-contact-strip h2 { margin-top: 12px !important; color: #fff !important; font-size: clamp(34px, 4vw, 50px); }
.contact-strip-actions { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: flex-start; gap: 13px; }
.contact-strip-actions > a:not(.future-button) { color: #fff; font-size: 14px; font-weight: 650; }
.contact-strip-actions > a i { margin-right: 7px; }
.contact-strip-actions .future-button { margin-top: 8px; }

.future-footer { color: rgba(255,255,255,.72); background: var(--nistek-ink); }
.footer-grid { padding: 72px 0 58px; display: grid; grid-template-columns: 1.45fr .8fr .8fr 1fr; gap: 54px; }
.footer-brand img { width: 118px; max-width: 100%; max-height: 46px; object-fit: contain; filter: brightness(0) invert(1); }
.footer-brand p { max-width: 360px; margin-top: 22px; color: rgba(255,255,255,.6); font-size: 14px; }
.footer-location { display: flex; gap: 10px; margin-top: 20px; color: rgba(255,255,255,.74); font-size: 13px; }
.footer-location i { margin-top: 5px; color: var(--nistek-cyan); }
.footer-column h3 { margin-bottom: 22px !important; color: #fff !important; font-size: 15px; letter-spacing: 0; }
.footer-column ul { margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; list-style: none; }
.footer-column a { color: rgba(255,255,255,.63); font-size: 13px; }
.footer-column a:hover { color: #fff; transform: translateX(3px); }
.footer-connect { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; }
.footer-project-link { margin-top: 12px; color: var(--nistek-cyan) !important; font-weight: 750; }
.footer-project-link i { margin-left: 7px; }
.footer-bottom {
    min-height: 74px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    border-top: 1px solid rgba(255,255,255,.09);
    color: rgba(255,255,255,.45);
    font-size: 12px;
}
.footer-bottom ul { margin: 0; padding: 0; display: flex; gap: 18px; list-style: none; }
.footer-bottom a:hover { color: #fff; }

.future-back-to-top {
    position: fixed;
    z-index: 900;
    right: 22px;
    bottom: 22px;
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    visibility: hidden;
    opacity: 0;
    border: 0;
    border-radius: 14px;
    color: #fff;
    background: linear-gradient(135deg, var(--nistek-blue), var(--nistek-blue-strong));
    box-shadow: 0 14px 30px rgba(45,152,249,.3);
    transform: translateY(12px);
    transition: var(--nistek-transition);
}
.future-back-to-top.is-visible { visibility: visible; opacity: 1; transform: translateY(0); }

/* Dynamic page layout */
.future-page-hero {
    padding: 96px 0 68px;
    text-align: center;
    background:
        radial-gradient(circle at 50% 0%, rgba(105,215,255,.2), transparent 34%),
        linear-gradient(180deg, #f7fbff, rgba(255,255,255,.95));
}
.future-page-hero h1 { max-width: 850px; margin: 18px auto 0 !important; font-size: clamp(44px, 5vw, 68px); }
.future-breadcrumb { margin-top: 20px; color: var(--nistek-muted); font-size: 13px; font-weight: 650; }
.future-breadcrumb a { color: var(--nistek-blue-strong) !important; }
.future-breadcrumb i { margin-inline: 10px; font-size: 9px; }
.future-content-section { padding: 90px 0 120px; background: #fff; }
.future-content-card {
    max-width: 1000px;
    margin-inline: auto;
    padding: clamp(28px, 5vw, 68px);
    border: 1px solid var(--nistek-line);
    border-radius: var(--nistek-radius);
    background: rgba(255,255,255,.9);
    box-shadow: var(--nistek-shadow-soft);
}
.future-content-card h2,
.future-content-card h3,
.future-content-card h4 { margin: 1.5em 0 .55em !important; }
.future-content-card h2 { font-size: clamp(30px, 3vw, 42px); }
.future-content-card h3 { font-size: 27px; }
.future-content-card p { margin: 0 0 18px; }
.future-content-card ul,
.future-content-card ol { margin: 20px 0; padding-left: 22px; }
.future-content-card li { margin: 8px 0; }
.future-content-card a { color: var(--nistek-blue-strong) !important; font-weight: 650; }
.future-content-card img { border-radius: 20px; box-shadow: var(--nistek-shadow-soft); }

/* Legacy contact template compatibility */
.pq-contact-form,
.pq-contact-box,
.contact-form-wrap,
form.pq-applyform {
    border: 1px solid var(--nistek-line);
    border-radius: 24px;
    background: rgba(255,255,255,.88);
    box-shadow: var(--nistek-shadow-soft);
}
.pq-contact-form,
.contact-form-wrap { padding: clamp(24px, 4vw, 46px); }
body.nistek-site input,
body.nistek-site textarea,
body.nistek-site select,
body.nistek-site .form-control {
    width: 100%;
    min-height: 52px;
    padding: 13px 15px;
    border: 1px solid rgba(45,152,249,.18);
    border-radius: 13px;
    color: var(--nistek-ink);
    background: #f8fcff;
    outline: none;
    transition: var(--nistek-transition);
}
body.nistek-site textarea { min-height: 150px; resize: vertical; }
body.nistek-site input:focus,
body.nistek-site textarea:focus,
body.nistek-site select:focus,
body.nistek-site .form-control:focus {
    border-color: var(--nistek-blue);
    background: #fff;
    box-shadow: 0 0 0 4px rgba(45,152,249,.1);
}
body.nistek-site label { margin-bottom: 7px; color: var(--nistek-ink); font-size: 13px; font-weight: 750; }
body.nistek-site button[type="submit"],
body.nistek-site input[type="submit"],
body.nistek-site .pq-button {
    min-height: 52px;
    padding: 0 24px;
    border: 0;
    border-radius: 14px;
    color: #fff;
    background: linear-gradient(135deg, var(--nistek-blue), var(--nistek-blue-strong));
    box-shadow: 0 14px 30px rgba(45,152,249,.22);
    font-weight: 750;
}
.pq-breadcrumb { display: none; }
.all-posts { padding: 0; }
.pq-section-sub-title { color: var(--nistek-blue-strong); }
.pq-section-title { color: var(--nistek-ink); }

[data-reveal] {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity 700ms ease, transform 700ms ease;
}
[data-reveal].is-revealed { opacity: 1; transform: translateY(0); }

@keyframes futureFloat {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-10px); }
}
@keyframes futureRotate { to { transform: rotate(360deg); } }

@media (max-width: 1199px) {
    .hero-grid { grid-template-columns: .95fr 1.05fr; gap: 32px; }
    .hero-copy h1 { font-size: 58px; }
    .card-code { right: -5px; }
    .footer-grid { gap: 34px; }
}

@media (max-width: 991px) {
    .future-container { width: min(100% - 32px, 760px); }
    .future-ribbon { display: none; }
    .future-nav { min-height: 76px; }
    .future-brand { width: 142px; }
    #nistekNavigation {
        position: absolute;
        left: 16px;
        right: 16px;
        top: calc(100% + 8px);
        padding: 18px;
        border: 1px solid var(--nistek-line);
        border-radius: 20px;
        background: rgba(255,255,255,.98);
        box-shadow: var(--nistek-shadow);
    }
    .future-menu-wrap,
    .future-menu-wrap .navbar-nav { width: 100%; display: block; }
    .future-menu-wrap .navbar-nav > li > a { min-height: 48px; width: 100%; padding: 0 12px; }
    .future-menu-wrap .navbar-nav > li > a::after { display: none; }
    .pq-submenu-icon { position: absolute; right: 12px; top: 18px; }
    .future-menu-wrap .sub-menu {
        position: static;
        display: block;
        min-width: 0;
        margin: 0 0 8px 12px;
        padding: 5px;
        visibility: visible;
        opacity: 1;
        border: 0;
        box-shadow: none;
        background: #f4faff;
        transform: none;
    }
    .nav-cta { width: 100%; margin-top: 12px; }
    .hero-grid { min-height: 0; grid-template-columns: 1fr; }
    .hero-copy { padding-top: 18px; text-align: center; }
    .hero-copy > p { margin-inline: auto; }
    .hero-actions { justify-content: center; }
    .hero-trust { margin-inline: auto; text-align: left; }
    .hero-visual { min-height: 550px; width: min(100%, 650px); margin-inline: auto; }
    .client-strip { grid-template-columns: 1fr; padding-block: 24px; text-align: center; }
    .client-strip div { flex-wrap: wrap; justify-content: center; }
    .split-heading,
    .creative-grid,
    .trust-grid,
    .future-contact-strip .future-container { grid-template-columns: 1fr; gap: 36px; }
    .future-service-grid { grid-template-columns: repeat(2, 1fr); }
    .creative-copy { text-align: center; }
    .creative-copy p { margin-inline: auto; }
    .capability-cloud { min-height: auto; }
    .process-grid { grid-template-columns: repeat(2, 1fr); }
    .trust-visual { width: min(100%, 650px); margin-inline: auto; }
    .future-contact-strip .future-container { padding: 42px; }
    .footer-grid { grid-template-columns: 1.3fr 1fr 1fr; }
    .footer-connect { grid-column: 2 / 4; }
}

@media (max-width: 767px) {
    .future-hero { padding-top: 56px; }
    .hero-copy h1 { font-size: clamp(42px, 12vw, 58px); }
    .hero-trust { grid-template-columns: 1fr; gap: 12px; }
    .hero-trust div { padding: 12px 14px; border: 1px solid var(--nistek-line); border-radius: 13px; background: rgba(255,255,255,.6); }
    .hero-visual { min-height: 480px; }
    .product-stage { inset: 60px 0 48px; transform: none; }
    .floating-card { min-width: 160px; padding: 12px; }
    .card-design { left: -8px; top: 34px; }
    .card-code { right: -8px; top: auto; bottom: 18px; }
    .card-growth { display: none; }
    .stage-content { padding: 22px; }
    .stage-chart { gap: 8px; padding-inline: 14px; }
    .client-strip div { display: grid; grid-template-columns: repeat(2, 1fr); }
    .future-section { padding: 90px 0; }
    .section-heading { margin-bottom: 38px; }
    .split-heading { gap: 24px; }
    .future-service-grid { grid-template-columns: 1fr; }
    .capability-cloud { padding: 20px; }
    .capability-cloud a { min-height: 98px; padding: 15px; }
    .process-grid { grid-template-columns: 1fr; }
    .process-grid article { min-height: 250px; }
    .trust-visual { min-height: 430px; }
    .trust-main { inset: 0 20px 50px 0; padding: 38px 30px; }
    .trust-mini { min-width: 220px; }
    .footer-grid { grid-template-columns: repeat(2, 1fr); }
    .footer-brand { grid-column: 1 / -1; }
    .footer-connect { grid-column: 1 / -1; }
    .footer-bottom { padding-block: 20px; flex-direction: column; align-items: flex-start; }
}

@media (max-width: 575px) {
    .future-container { width: calc(100% - 24px); }
    .future-nav { min-height: 70px; }
    .future-brand { width: 132px; }
    #nistekNavigation { left: 12px; right: 12px; }
    .hero-copy h1 { font-size: 40px; }
    .hero-copy > p { font-size: 16px; }
    .hero-actions { flex-direction: column; }
    .hero-actions .future-button { width: 100%; }
    .hero-visual { min-height: 420px; }
    .product-stage { inset: 50px 0 36px; }
    .stage-body { grid-template-columns: 48px 1fr; }
    .stage-sidebar { gap: 12px; }
    .stage-sidebar span { width: 20px; height: 20px; }
    .stage-chart { height: 150px; }
    .floating-card { min-width: 146px; }
    .floating-card span { font-size: 8px; }
    .floating-card strong { font-size: 11px; }
    .client-strip div { grid-template-columns: 1fr; }
    .capability-cloud { grid-template-columns: 1fr; }
    .capability-cloud a:nth-child(2),
    .capability-cloud a:nth-child(5),
    .capability-cloud a:nth-child(2):hover,
    .capability-cloud a:nth-child(5):hover { transform: none; }
    .trust-main h3 { font-size: 36px; }
    .future-contact-strip .future-container { padding: 34px 24px; }
    .footer-grid { grid-template-columns: 1fr; }
    .footer-brand,
    .footer-connect { grid-column: auto; }
}

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

/* Contact page */
.future-contact-page { padding: 88px 0 120px; background: #fff; }
.contact-page-grid { display: grid; grid-template-columns: .82fr 1.18fr; gap: 22px; align-items: stretch; }
.contact-info-panel,
.contact-form-panel {
    border: 1px solid var(--nistek-line);
    border-radius: 28px;
    box-shadow: var(--nistek-shadow-soft);
}
.contact-info-panel {
    position: relative;
    padding: 46px;
    overflow: hidden;
    color: rgba(255,255,255,.74);
    background:
        radial-gradient(circle at 90% 4%, rgba(105,215,255,.28), transparent 28%),
        linear-gradient(145deg, var(--nistek-ink), #0e3157);
}
.contact-info-panel::after {
    content: "";
    position: absolute;
    width: 250px;
    height: 250px;
    right: -130px;
    bottom: -130px;
    border: 1px solid rgba(105,215,255,.2);
    border-radius: 50%;
    box-shadow: 0 0 0 34px rgba(105,215,255,.04), 0 0 0 68px rgba(105,215,255,.03);
}
.contact-info-panel .future-eyebrow { color: var(--nistek-cyan); }
.contact-info-panel h2 { margin-top: 18px !important; color: #fff !important; font-size: clamp(36px, 4vw, 50px); }
.contact-info-panel > p { margin-top: 20px; color: rgba(255,255,255,.62); }
.contact-methods { display: grid; gap: 14px; margin-top: 42px; }
.contact-methods > a,
.contact-methods > div {
    position: relative;
    z-index: 1;
    min-height: 76px;
    padding: 14px;
    display: grid;
    grid-template-columns: 46px 1fr;
    gap: 13px;
    align-items: center;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 16px;
    background: rgba(255,255,255,.06);
}
.contact-methods > a:hover { border-color: rgba(105,215,255,.38); background: rgba(255,255,255,.1); transform: translateX(3px); }
.contact-methods > * > i {
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    border-radius: 13px;
    color: var(--nistek-cyan);
    background: rgba(105,215,255,.1);
}
.contact-methods span { display: flex; min-width: 0; flex-direction: column; }
.contact-methods small { color: rgba(255,255,255,.48); font-size: 10px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.contact-methods strong { overflow-wrap: anywhere; color: #fff; font-size: 13px; font-weight: 650; }
.contact-response { position: relative; z-index: 1; margin-top: 36px; display: flex; gap: 12px; align-items: flex-start; }
.contact-response > i { margin-top: 5px; color: var(--nistek-cyan); }
.contact-response span { display: flex; flex-direction: column; }
.contact-response strong { color: #fff; font-size: 13px; }
.contact-response small { max-width: 300px; color: rgba(255,255,255,.5); line-height: 1.5; }
.contact-form-panel { padding: 46px; background: rgba(248,252,255,.86); }
.contact-form-panel h2 { margin-top: 13px !important; font-size: clamp(34px, 3.6vw, 48px); }
.form-status { margin-top: 12px !important; color: var(--nistek-muted); }
.contact-form-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; margin-top: 34px; }
.form-field { min-width: 0; }
.form-field-wide { grid-column: 1 / -1; }
.form-field > span,
.form-field > div:not(.captcha-row) { display: block; margin-top: 6px; color: #c03e3e; font-size: 12px; }
.captcha-field { grid-column: 1 / -1; max-width: 390px; }
.captcha-row { display: grid; grid-template-columns: 1fr 120px; gap: 10px; align-items: stretch; }
.captcha-row img {
    width: 120px;
    height: 52px;
    object-fit: contain;
    border: 1px solid var(--nistek-line);
    border-radius: 12px;
    background: #fff;
}
.contact-submit { min-width: 220px; border: 0 !important; }

@media (max-width: 991px) {
    .contact-page-grid { grid-template-columns: 1fr; }
}
@media (max-width: 575px) {
    .contact-info-panel,
    .contact-form-panel { padding: 30px 22px; }
    .contact-form-grid { grid-template-columns: 1fr; }
    .form-field-wide,
    .captcha-field { grid-column: auto; }
    .captcha-row { grid-template-columns: 1fr 105px; }
    .captcha-row img { width: 105px; }
    .contact-submit { width: 100%; }
}

.home-managed-copy { max-width: 600px; margin-top: 24px; color: var(--nistek-muted); font-size: 17px; }
.home-managed-copy p { margin: 0 0 15px; }
.home-managed-copy p:last-child { margin-bottom: 0; }
.home-managed-copy a { color: var(--nistek-blue-strong) !important; font-weight: 700; }
/* Vision, mission and portfolio */
.vision-mission-section {
    background: radial-gradient(circle at 10% 15%, rgba(45,152,249,.12), transparent 30%), linear-gradient(180deg,#f8fcff,#eef7ff);
}
.vision-mission-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:22px; }
.purpose-card {
    position:relative; min-height:410px; padding:42px; overflow:hidden;
    border:1px solid rgba(45,152,249,.18); border-radius:30px; box-shadow:var(--nistek-shadow-soft);
}
.purpose-card::after {
    content:""; position:absolute; width:240px; height:240px; right:-90px; bottom:-110px;
    border-radius:50%; border:1px solid rgba(105,215,255,.25);
    box-shadow:0 0 0 32px rgba(105,215,255,.06),0 0 0 64px rgba(105,215,255,.035);
}
.vision-card { color:#fff; background:linear-gradient(145deg,#071d35,#0f4f83); }
.mission-card { background:rgba(255,255,255,.82); backdrop-filter:blur(18px); }
.purpose-index { color:var(--nistek-cyan); font-size:11px; font-weight:850; letter-spacing:.14em; text-transform:uppercase; }
.mission-card .purpose-index { color:var(--nistek-blue-strong); }
.purpose-card > i { width:64px; height:64px; margin-top:54px; display:grid; place-items:center; border-radius:20px; font-size:23px; }
.vision-card > i { color:var(--nistek-cyan); background:rgba(105,215,255,.12); border:1px solid rgba(105,215,255,.2); }
.mission-card > i { color:var(--nistek-blue-strong); background:rgba(45,152,249,.1); border:1px solid rgba(45,152,249,.14); }
.purpose-card h3 { position:relative; z-index:1; margin-top:28px!important; max-width:650px; font-size:clamp(26px,3vw,38px); line-height:1.16; }
.vision-card h3 { color:#fff!important; }
.purpose-card p { position:relative; z-index:1; max-width:610px; margin-top:20px; }
.vision-card p { color:rgba(255,255,255,.66); }

.portfolio-section { background:#fff; }
.portfolio-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.portfolio-card {
    min-height:520px; padding:22px; display:flex; flex-direction:column;
    border:1px solid var(--nistek-line); border-radius:28px; color:var(--nistek-ink)!important;
    background:rgba(248,252,255,.82); box-shadow:var(--nistek-shadow-soft);
}
.portfolio-card:hover { transform:translateY(-8px); border-color:rgba(45,152,249,.35); box-shadow:var(--nistek-shadow); }
.portfolio-card > span { padding:6px 4px 16px; color:var(--nistek-blue-strong); font-size:10px; font-weight:850; letter-spacing:.13em; text-transform:uppercase; }
.portfolio-visual {
    position:relative; height:220px; overflow:hidden; border-radius:21px;
    background:radial-gradient(circle at 75% 15%,rgba(105,215,255,.36),transparent 31%),linear-gradient(145deg,#071b31,#126eb1);
}
.product-visual::before { content:""; position:absolute; inset:28px; border:1px solid rgba(255,255,255,.2); border-radius:16px; background:rgba(255,255,255,.09); }
.product-visual i { position:absolute; bottom:48px; width:24px; border-radius:7px 7px 2px 2px; background:linear-gradient(180deg,var(--nistek-cyan),var(--nistek-blue)); }
.product-visual i:nth-child(1) { left:62px; height:58px; }
.product-visual i:nth-child(2) { left:102px; height:91px; }
.product-visual i:nth-child(3) { left:142px; height:120px; }
.mobile-visual i { position:absolute; top:24px; bottom:24px; width:92px; border:1px solid rgba(255,255,255,.25); border-radius:22px; background:rgba(255,255,255,.11); }
.mobile-visual i:nth-child(1) { left:20px; transform:rotate(-8deg) translateY(20px); }
.mobile-visual i:nth-child(2) { left:calc(50% - 46px); z-index:2; }
.mobile-visual i:nth-child(3) { right:20px; transform:rotate(8deg) translateY(20px); }
.creative-visual i { position:absolute; width:116px; height:116px; border-radius:34px; }
.creative-visual i:nth-child(1) { left:32px; top:34px; transform:rotate(18deg); background:linear-gradient(145deg,#69d7ff,#2d98f9); }
.creative-visual i:nth-child(2) { right:35px; top:52px; transform:rotate(-15deg); border:1px solid rgba(255,255,255,.35); background:rgba(255,255,255,.1); }
.creative-visual i:nth-child(3) { left:104px; bottom:-56px; border-radius:50%; border:1px solid rgba(105,215,255,.4); box-shadow:0 0 0 28px rgba(105,215,255,.08); }
.portfolio-card h3 { margin-top:25px!important; font-size:23px; line-height:1.25; }
.portfolio-card p { margin-top:14px; color:var(--nistek-muted); font-size:15px; }
.portfolio-card strong { margin-top:auto; padding-top:22px; color:var(--nistek-blue-strong); font-size:13px; }
.portfolio-card strong i { margin-left:6px; transition:transform .25s ease; }
.portfolio-card:hover strong i { transform:translateX(4px); }

.future-content-card .content-lead { font-size:22px; line-height:1.7; color:var(--nistek-ink); }
.future-content-card .content-feature-grid,
.future-content-card .content-case-grid,
.future-content-card .content-purpose-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; margin:34px 0; }
.future-content-card .content-feature-grid > div,
.future-content-card .content-case-grid > article,
.future-content-card .content-purpose-grid > article { padding:28px; border:1px solid var(--nistek-line); border-radius:20px; background:#f8fcff; }
.future-content-card .content-kicker { color:var(--nistek-blue-strong); font-size:11px; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.future-content-card .content-cta { margin-top:42px; padding:34px; border-radius:22px; color:#fff; background:linear-gradient(135deg,#071d35,#0e6fca); }
.future-content-card .content-cta h2 { color:#fff!important; }
.future-content-card .content-cta p { color:rgba(255,255,255,.7); }

@media (max-width:991px) {
    .portfolio-grid { grid-template-columns:1fr; }
    .portfolio-card { min-height:460px; }
}
@media (max-width:767px) {
    .vision-mission-grid,
    .future-content-card .content-feature-grid,
    .future-content-card .content-case-grid,
    .future-content-card .content-purpose-grid { grid-template-columns:1fr; }
    .purpose-card { min-height:380px; padding:32px 26px; }
}


/* Clients + guided quote workflow */
.client-logo-grid{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:18px;align-items:stretch;margin-top:34px}
.client-logo-grid a,.client-logo-grid span{min-height:110px;display:flex;align-items:center;justify-content:center;padding:22px;border:1px solid rgba(45,152,249,.16);border-radius:20px;background:rgba(255,255,255,.62);box-shadow:0 18px 45px rgba(14,111,202,.08);transition:.25s ease}
.client-logo-grid a:hover{transform:translateY(-4px);border-color:rgba(45,152,249,.42)}
.client-logo-grid img{max-width:150px;max-height:58px;object-fit:contain;filter:grayscale(1);opacity:.72;transition:.25s ease}
.client-logo-grid a:hover img{filter:none;opacity:1}.clients-empty{grid-column:1/-1;text-align:center}
.quote-page{padding-top:150px}.quote-page h1{font-size:clamp(2.7rem,6vw,5.6rem);line-height:.98}.quote-form{max-width:1050px;margin:45px auto 0;padding:clamp(22px,4vw,48px);border:1px solid rgba(45,152,249,.22);border-radius:32px;background:rgba(255,255,255,.68);box-shadow:0 35px 90px rgba(14,111,202,.12);backdrop-filter:blur(24px)}
.quote-step{display:flex;gap:18px;align-items:flex-start;margin:12px 0 22px}.quote-step>span{width:44px;height:44px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,#2d98f9,#0e6fca);color:#fff;font-weight:800}.quote-step h2{margin:0 0 5px;font-size:1.5rem}.quote-step p{margin:0;color:#61738c}
.quote-choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:38px}.quote-choice{display:flex;align-items:center;gap:13px;padding:20px;border:1px solid rgba(45,152,249,.18);border-radius:18px;background:rgba(255,255,255,.74);color:#102944;font-weight:750;text-align:left;cursor:pointer;transition:.2s}.quote-choice i{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#eaf5ff;color:#0e6fca}.quote-choice:hover,.quote-choice.active{transform:translateY(-2px);border-color:#2d98f9;box-shadow:0 14px 32px rgba(45,152,249,.13)}.quote-choice.active{background:#f2f9ff}
.quote-substep,.quote-details{display:none}.quote-substep.visible,.quote-details.visible{display:flex}.quote-field.quote-substep.visible{display:block}.quote-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.quote-field{display:flex;flex-direction:column;gap:8px}.quote-field label{font-weight:750;color:#183552}.quote-field input,.quote-field select,.quote-field textarea{width:100%;border:1px solid rgba(45,152,249,.22);border-radius:14px;background:rgba(255,255,255,.9);padding:14px 16px;color:#102944;outline:none}.quote-field input:focus,.quote-field select:focus,.quote-field textarea:focus{border-color:#2d98f9;box-shadow:0 0 0 4px rgba(45,152,249,.1)}.quote-wide{grid-column:1/-1}.quote-details.visible{display:block;margin-top:38px}.quote-submit{margin-top:24px}.quote-alert{padding:15px 18px;border-radius:14px;margin-bottom:24px}.quote-success{background:#e8fbf3;color:#126443}.quote-error{background:#fff0f0;color:#a52b2b}
@media(max-width:900px){.client-logo-grid{grid-template-columns:repeat(3,1fr)}.quote-choice-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.client-logo-grid{grid-template-columns:repeat(2,1fr)}.quote-choice-grid,.quote-fields{grid-template-columns:1fr}.quote-wide{grid-column:auto}}

/* 2026 visual consistency pass */
.future-container {
    width: min(1360px, calc(100% - 64px));
}
.future-brand {
    width: auto;
    min-width: 164px;
    height: auto;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}
.future-brand img {
    width: 148px;
    max-height: 54px;
    object-fit: contain;
}
.footer-brand img { filter: none; }
.future-section { padding: clamp(82px, 8vw, 112px) 0; }
.section-heading { margin-bottom: clamp(36px, 4vw, 52px); }
.section-heading > p,
.centered-heading > p { color: var(--nistek-muted); font-size: 17px; }
.centered-heading > p { margin-top: 18px; }
.future-hero { padding-top: 64px; }
.hero-grid { min-height: 610px; gap: clamp(38px, 5vw, 76px); }
.hero-copy { padding: 24px 0 46px; }
.hero-copy h1 { font-size: clamp(52px, 5.2vw, 76px); }
.home-managed-copy {
    max-width: 680px;
    font-size: 16px;
    line-height: 1.78;
}
.home-managed-copy h1,
.home-managed-copy h2,
.home-managed-copy h3 { margin: 24px 0 12px !important; font-size: 25px; }
.home-managed-copy br + br { display: none; }
.trust-grid { grid-template-columns: minmax(390px,.86fr) minmax(0,1.14fr); gap: clamp(50px,6vw,92px); }
.trust-copy { min-width: 0; }
.clients-section { background: linear-gradient(180deg, #f8fcff, #eef8ff); }
.future-contact-strip {
    padding: clamp(70px, 7vw, 96px) 0;
    background: #fff;
}
.future-contact-strip .future-container { min-height: 250px; }
.future-footer { margin: 0; }
.footer-grid { padding-top: 66px; }
.future-content-section { padding: clamp(72px, 8vw, 110px) 0; }
.future-content-card {
    max-width: 1180px;
    padding: clamp(34px, 5vw, 72px);
}
.future-page-hero { padding: clamp(72px, 8vw, 108px) 0 clamp(54px, 6vw, 78px); }

/* Creative service detail pages */
.service-detail-hero {
    position: relative;
    padding: clamp(72px, 8vw, 116px) 0 clamp(82px, 9vw, 128px);
    overflow: hidden;
    background:
        radial-gradient(circle at 82% 18%, rgba(105,215,255,.22), transparent 28%),
        radial-gradient(circle at 12% 76%, rgba(45,152,249,.1), transparent 26%),
        linear-gradient(180deg, #f9fdff, #eef8ff);
}
.service-detail-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: .32;
    background-image: radial-gradient(rgba(45,152,249,.25) 1px, transparent 1px);
    background-size: 26px 26px;
    mask-image: linear-gradient(90deg, transparent, #000 70%, transparent);
}
.service-detail-grid {
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0,1.02fr) minmax(440px,.98fr);
    gap: clamp(54px,7vw,106px);
    align-items: center;
}
.service-detail-copy { position: relative; z-index: 2; }
.service-detail-copy h1 {
    max-width: 780px;
    margin-top: 22px !important;
    font-size: clamp(48px,5.3vw,78px);
}
.service-detail-copy > p {
    max-width: 680px;
    margin-top: 26px;
    color: var(--nistek-muted);
    font-size: clamp(17px,1.6vw,21px);
    line-height: 1.75;
}
.service-proof-row {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 22px;
    margin-top: 34px;
    color: var(--nistek-text);
    font-size: 13px;
    font-weight: 750;
}
.service-proof-row i { margin-right: 7px; color: var(--nistek-blue); }
.service-detail-visual {
    position: relative;
    min-height: 520px;
    display: grid;
    place-items: center;
}
.service-core {
    position: relative;
    z-index: 2;
    width: min(360px,78%);
    aspect-ratio: 1;
    padding: 42px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255,255,255,.9);
    border-radius: 38px;
    background:
        radial-gradient(circle at 75% 15%, rgba(105,215,255,.24), transparent 27%),
        rgba(255,255,255,.78);
    box-shadow: 0 42px 90px rgba(14,111,202,.18), inset 0 1px 0 #fff;
    backdrop-filter: blur(22px);
    transform: rotate(-3deg);
}
.service-core > span {
    color: var(--nistek-blue-strong);
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .14em;
}
.service-core > i {
    width: 92px;
    height: 92px;
    margin-top: 34px;
    display: grid;
    place-items: center;
    border-radius: 28px;
    color: #fff;
    font-size: 36px;
    background: linear-gradient(135deg,var(--nistek-blue),var(--nistek-blue-deep));
    box-shadow: 0 20px 42px rgba(45,152,249,.28);
}
.service-core strong {
    margin-top: 28px;
    color: var(--nistek-ink);
    font-size: clamp(22px,2.4vw,32px);
    text-align: center;
}
.service-core small { margin-top: 9px; color: var(--nistek-muted); font-weight: 650; }
.service-orbit {
    position: absolute;
    border: 1px solid rgba(45,152,249,.22);
    border-radius: 50%;
}
.service-orbit-one { width: 450px; height: 450px; }
.service-orbit-two { width: 520px; height: 520px; border-style: dashed; animation: futureRotate 30s linear infinite; }
.service-chip {
    position: absolute;
    z-index: 3;
    min-width: 132px;
    padding: 14px 17px;
    border: 1px solid rgba(255,255,255,.92);
    border-radius: 16px;
    color: var(--nistek-ink);
    background: rgba(255,255,255,.84);
    box-shadow: var(--nistek-shadow-soft);
    backdrop-filter: blur(16px);
    font-size: 13px;
    font-weight: 800;
}
.service-chip i { margin-right: 8px; color: var(--nistek-blue-strong); }
.service-chip-one { left: 0; top: 78px; }
.service-chip-two { right: 0; top: 210px; }
.service-chip-three { left: 46px; bottom: 42px; }
.service-detail-body { padding: clamp(82px,8vw,118px) 0; background: #fff; }
.service-body-grid {
    display: grid;
    grid-template-columns: minmax(0,1.3fr) minmax(330px,.7fr);
    gap: clamp(50px,7vw,100px);
    align-items: start;
}
.service-managed-copy {
    min-width: 0;
    color: var(--nistek-text);
    font-size: 17px;
    line-height: 1.8;
}
.service-managed-copy > .future-eyebrow { margin-bottom: 24px; }
.service-managed-copy h1,
.service-managed-copy h2,
.service-managed-copy h3,
.service-managed-copy h4 { margin: 1.45em 0 .55em !important; }
.service-managed-copy h1,
.service-managed-copy h2 { font-size: clamp(32px,3.5vw,50px); }
.service-managed-copy h3 { font-size: 27px; }
.service-managed-copy p { margin-bottom: 20px; }
.service-managed-copy ul,
.service-managed-copy ol { margin: 24px 0; padding-left: 22px; }
.service-managed-copy li { margin: 9px 0; }
.service-managed-copy img { margin: 24px 0; border-radius: 24px; box-shadow: var(--nistek-shadow); }
.service-scope-card {
    position: sticky;
    top: 110px;
    padding: 36px;
    overflow: hidden;
    border: 1px solid var(--nistek-line);
    border-radius: 28px;
    background:
        radial-gradient(circle at 100% 0, rgba(105,215,255,.22), transparent 28%),
        linear-gradient(145deg,#f9fdff,#eef8ff);
    box-shadow: var(--nistek-shadow-soft);
}
.service-scope-card h2 { margin-top: 16px !important; font-size: 32px; }
.service-scope-card ul { margin: 28px 0 0; padding: 0; display: grid; gap: 14px; list-style: none; }
.service-scope-card li { display: flex; gap: 11px; color: var(--nistek-text); font-size: 14px; font-weight: 650; }
.service-scope-card li i {
    width: 24px;
    height: 24px;
    flex: 0 0 24px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    color: var(--nistek-blue-strong);
    background: rgba(45,152,249,.12);
    font-size: 10px;
}
.service-scope-card > a {
    margin-top: 30px;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: var(--nistek-blue-strong) !important;
    font-size: 14px;
    font-weight: 850;
}
.service-process-band { background: linear-gradient(155deg,#07192e,#0c3154); }
.service-process-band .future-eyebrow { color: var(--nistek-cyan); }
.service-process-band .section-heading h2 { color: #fff !important; }
.service-process-band .section-heading p { color: rgba(255,255,255,.58); }
.service-stage-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; }
.service-stage-grid article {
    position: relative;
    min-height: 280px;
    padding: 28px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 24px;
    background: rgba(255,255,255,.055);
}
.service-stage-grid article > span { position: absolute; right: 24px; top: 18px; color: rgba(105,215,255,.28); font-size: 30px; font-weight: 850; }
.service-stage-grid article > i {
    width: 52px;
    height: 52px;
    display: grid;
    place-items: center;
    border-radius: 17px;
    color: var(--nistek-cyan);
    background: rgba(105,215,255,.1);
}
.service-stage-grid h3 { margin-top: 42px !important; color: #fff !important; font-size: 24px; }
.service-stage-grid p { margin-top: 14px; color: rgba(255,255,255,.55); font-size: 14px; }
.related-service-section { background: #fff; }
.service-related-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; }
.service-related-card {
    min-height: 150px;
    padding: 24px;
    display: grid;
    grid-template-columns: 48px 1fr auto;
    gap: 15px;
    align-items: center;
    border: 1px solid var(--nistek-line);
    border-radius: 22px;
    background: #f8fcff;
    box-shadow: var(--nistek-shadow-soft);
}
.service-related-card > span {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border-radius: 15px;
    color: #fff;
    background: linear-gradient(135deg,var(--nistek-blue),var(--nistek-blue-strong));
    font-weight: 850;
}
.service-related-card strong { color: var(--nistek-ink); font-size: 17px; }
.service-related-card > i { color: var(--nistek-blue-strong); }
.service-related-card:hover { transform: translateY(-5px); border-color: rgba(45,152,249,.4); }

/* Portfolio detail page */
.portfolio-detail-hero {
    position: relative;
    padding: clamp(82px,9vw,132px) 0;
    overflow: hidden;
    background:
        radial-gradient(circle at 82% 5%, rgba(105,215,255,.24), transparent 27%),
        linear-gradient(165deg,#f9fdff,#edf8ff);
}
.portfolio-detail-grid {
    display: grid;
    grid-template-columns: minmax(0,1fr) minmax(480px,1fr);
    gap: clamp(60px,7vw,112px);
    align-items: center;
}
.portfolio-detail-copy h1 {
    max-width: 820px;
    margin-top: 20px !important;
    font-size: clamp(50px,5.5vw,82px);
}
.portfolio-detail-copy > p {
    max-width: 690px;
    margin-top: 26px;
    color: var(--nistek-muted);
    font-size: 19px;
}
.portfolio-showcase { position: relative; min-height: 520px; perspective: 1100px; }
.portfolio-showcase-card {
    position: absolute;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.9);
    border-radius: 30px;
    box-shadow: 0 35px 80px rgba(14,111,202,.18);
}
.showcase-back {
    width: 310px;
    height: 350px;
    left: 20px;
    top: 32px;
    padding: 30px;
    color: #fff;
    background: linear-gradient(145deg,#0b1530,#0e6fca);
    transform: rotate(-11deg);
}
.showcase-back i { margin: auto; color: var(--nistek-cyan); font-size: 76px; }
.showcase-middle {
    width: 280px;
    height: 390px;
    right: 18px;
    top: 76px;
    padding: 30px;
    color: var(--nistek-blue-deep);
    background: linear-gradient(145deg,#fff,#dff3ff);
    transform: rotate(9deg);
}
.showcase-middle i { margin: auto; font-size: 82px; }
.showcase-front {
    z-index: 3;
    width: 390px;
    height: 310px;
    left: calc(50% - 195px);
    top: 130px;
    padding: 28px;
    color: #fff;
    background:
        radial-gradient(circle at 80% 0,rgba(105,215,255,.34),transparent 28%),
        linear-gradient(145deg,#0b2845,#117bd7);
}
.showcase-window {
    height: 135px;
    padding: 24px;
    display: flex;
    align-items: flex-end;
    gap: 13px;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 18px;
    background: rgba(255,255,255,.08);
}
.showcase-window i { width: 28px; border-radius: 8px 8px 3px 3px; background: linear-gradient(var(--nistek-cyan),var(--nistek-blue)); }
.showcase-window i:nth-child(1) { height: 42px; }
.showcase-window i:nth-child(2) { height: 75px; }
.showcase-window i:nth-child(3) { height: 105px; }
.showcase-front > span,
.showcase-back > span,
.showcase-middle > span { font-size: 10px; font-weight: 850; letter-spacing: .14em; }
.showcase-front > span { margin-top: 24px; color: rgba(255,255,255,.62); }
.showcase-front > strong { margin-top: 5px; font-size: 24px; }
.portfolio-capability-section { padding: clamp(88px,9vw,126px) 0; background: #fff; }
.portfolio-detail-grid-cards { display: grid; grid-template-columns: repeat(3,1fr); gap: 20px; }
.portfolio-detail-card {
    min-height: 480px;
    padding: 32px;
    display: flex;
    flex-direction: column;
    border: 1px solid var(--nistek-line);
    border-radius: 28px;
    background: linear-gradient(160deg,#fff,#f3faff);
    box-shadow: var(--nistek-shadow-soft);
}
.portfolio-detail-card:nth-child(2) { transform: translateY(24px); }
.portfolio-detail-card:hover { transform: translateY(-6px); border-color: rgba(45,152,249,.4); box-shadow: var(--nistek-shadow); }
.portfolio-detail-card:nth-child(2):hover { transform: translateY(18px); }
.portfolio-detail-icon {
    height: 190px;
    display: grid;
    place-items: center;
    overflow: hidden;
    border-radius: 22px;
    color: #fff;
    background:
        radial-gradient(circle at 76% 12%,rgba(105,215,255,.35),transparent 30%),
        linear-gradient(145deg,#091d34,#126eb1);
}
.portfolio-detail-icon i { font-size: 56px; }
.portfolio-detail-card > span { margin-top: 27px; color: var(--nistek-blue-strong); font-size: 10px; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.portfolio-detail-card h3 { margin-top: 13px !important; font-size: 25px; line-height: 1.22; }
.portfolio-detail-card p { margin-top: 15px; color: var(--nistek-muted); font-size: 14px; }
.portfolio-detail-card ul { margin: auto 0 0; padding: 24px 0 0; display: flex; flex-wrap: wrap; gap: 8px; list-style: none; }
.portfolio-detail-card li { padding: 6px 10px; border-radius: 10px; color: var(--nistek-blue-deep); background: #e7f4ff; font-size: 11px; font-weight: 750; }
.portfolio-managed-section { padding: clamp(78px,8vw,112px) 0; background: linear-gradient(180deg,#f5fbff,#fff); }
.portfolio-managed-copy {
    max-width: 1100px;
    margin-inline: auto;
    color: var(--nistek-text);
    font-size: 17px;
    line-height: 1.8;
}
.portfolio-managed-copy > .future-eyebrow { margin-bottom: 24px; }
.portfolio-managed-copy h1,
.portfolio-managed-copy h2,
.portfolio-managed-copy h3 { margin: 1.35em 0 .55em !important; }
.portfolio-managed-copy h2 { font-size: clamp(32px,3.5vw,50px); }
.portfolio-managed-copy p { margin-bottom: 18px; }
.portfolio-managed-copy img { margin: 24px 0; border-radius: 24px; box-shadow: var(--nistek-shadow); }
.portfolio-confidentiality {
    max-width: 1100px;
    min-height: 130px;
    margin: 54px auto 0;
    padding: 26px 30px;
    display: grid;
    grid-template-columns: 56px 1fr auto;
    gap: 20px;
    align-items: center;
    border: 1px solid var(--nistek-line);
    border-radius: 24px;
    background: #fff;
    box-shadow: var(--nistek-shadow-soft);
}
.portfolio-confidentiality > i {
    width: 56px;
    height: 56px;
    display: grid;
    place-items: center;
    border-radius: 18px;
    color: #fff;
    background: linear-gradient(135deg,var(--nistek-blue),var(--nistek-blue-deep));
}
.portfolio-confidentiality strong { color: var(--nistek-ink); font-size: 17px; }
.portfolio-confidentiality p { margin-top: 4px; color: var(--nistek-muted); font-size: 13px; }
.portfolio-confidentiality > a { color: var(--nistek-blue-strong) !important; font-weight: 850; white-space: nowrap; }

@media (max-width: 1199px) {
    .future-container { width: min(1160px, calc(100% - 48px)); }
    .service-detail-grid,
    .portfolio-detail-grid { gap: 42px; }
}
@media (max-width: 991px) {
    .future-container { width: min(760px, calc(100% - 32px)); }
    .future-brand { min-width: 146px; height: auto; padding: 0; }
    .future-brand img { width: 132px; }
    .service-detail-grid,
    .portfolio-detail-grid,
    .service-body-grid { grid-template-columns: 1fr; }
    .service-detail-copy,
    .portfolio-detail-copy { text-align: center; }
    .service-detail-copy > p,
    .portfolio-detail-copy > p { margin-inline: auto; }
    .service-detail-copy .hero-actions,
    .portfolio-detail-copy .hero-actions,
    .service-proof-row { justify-content: center; }
    .service-detail-visual,
    .portfolio-showcase { width: min(100%,620px); margin-inline: auto; }
    .service-scope-card { position: static; }
    .service-stage-grid { grid-template-columns: repeat(2,1fr); }
    .service-related-grid,
    .portfolio-detail-grid-cards { grid-template-columns: 1fr; }
    .portfolio-detail-card { min-height: 410px; }
    .portfolio-detail-card:nth-child(2),
    .portfolio-detail-card:nth-child(2):hover { transform: none; }
}
@media (max-width: 767px) {
    .future-container { width: calc(100% - 28px); }
    .future-section { padding: 76px 0; }
    .service-detail-hero,
    .portfolio-detail-hero { padding: 68px 0 82px; }
    .service-detail-copy h1,
    .portfolio-detail-copy h1 { font-size: clamp(40px,11vw,58px); }
    .service-detail-visual { min-height: 430px; }
    .service-orbit-one { width: 360px; height: 360px; }
    .service-orbit-two { width: 420px; height: 420px; }
    .service-chip-one { left: 0; top: 48px; }
    .service-chip-two { right: 0; top: 180px; }
    .service-chip-three { left: 12px; bottom: 30px; }
    .service-stage-grid { grid-template-columns: 1fr; }
    .portfolio-showcase { min-height: 450px; transform: scale(.88); transform-origin: center; }
    .portfolio-confidentiality { grid-template-columns: 48px 1fr; }
    .portfolio-confidentiality > a { grid-column: 2; }
}
@media (max-width: 575px) {
    .future-container { width: calc(100% - 24px); }
    .future-brand { min-width: 124px; height: auto; border-radius: 0; }
    .future-brand img { width: 116px; }
    .service-detail-visual { min-height: 370px; }
    .service-core { width: 74%; padding: 26px; }
    .service-core > i { width: 72px; height: 72px; margin-top: 22px; font-size: 28px; }
    .service-chip { min-width: 112px; padding: 11px 13px; font-size: 11px; }
    .service-orbit-one { width: 300px; height: 300px; }
    .service-orbit-two { width: 340px; height: 340px; }
    .portfolio-showcase { width: 500px; left: 50%; margin-left: -250px; transform: scale(.68); }
    .portfolio-detail-card { min-height: 0; padding: 24px; }
    .portfolio-detail-icon { height: 160px; }
    .portfolio-confidentiality { padding: 22px; grid-template-columns: 1fr; }
    .portfolio-confidentiality > a { grid-column: auto; }
}
