/* Pretendard loaded centrally by font-unified-v50.css */
:root{--black:#111214;--ink:#1d1d1f;--muted:#6e6e73;--blue:#0071e3;--blue2:#2997ff;--gray:#f5f5f7;--line:#d6d6dc;--navheight:48px;--max:1200px;--radius:30px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--navheight)}body{margin:0;font-family:Pretendard,-apple-system,BlinkMacSystemFont,"Segoe UI","Malgun Gothic",Arial,sans-serif;color:var(--ink);background:#fff;word-break:keep-all;-webkit-font-smoothing:antialiased}button,input{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #79b7ff;outline-offset:3px}img,svg{max-width:100%;display:block}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:2000;top:-80px;left:12px;background:white;color:black;padding:10px 18px;border-radius:10px}.skip-link:focus{top:10px}
.site-header{position:sticky;top:0;z-index:1000;background:rgba(17,18,20,.94);color:rgba(255,255,255,.89);backdrop-filter:saturate(180%) blur(24px);-webkit-backdrop-filter:saturate(180%) blur(24px)}.nav-shell{height:var(--navheight);max-width:1100px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:0 22px}.brand{display:flex;align-items:center;gap:6px;color:white;flex-shrink:0}.brand-glyph{height:25px;width:25px}.brand-type{font-size:13px;font-weight:780;letter-spacing:-.55px}.desktop-nav{display:flex;align-items:center;justify-content:space-between;gap:25px;flex:1;max-width:655px}.desktop-nav a{font-size:11.6px;white-space:nowrap;opacity:.82;transition:opacity .2s}.desktop-nav a:hover{opacity:1}.nav-tools{display:flex;align-items:center;gap:4px}.icon-button{width:34px;height:36px;border:0;background:none;color:#ebebf0;display:grid;place-items:center;padding:7px}.icon-button svg{width:20px;height:20px}.icon-button:hover{color:#80baff}.mobile-menu-toggle{display:none;flex-direction:column;align-items:center;justify-content:center;gap:5px}.menu-bar{height:1.6px;width:17px;background:currentColor;transition:transform .2s}.menu-open .menu-bar:first-child{transform:translateY(3.3px) rotate(45deg)}.menu-open .menu-bar:last-child{transform:translateY(-3.3px) rotate(-45deg)}
.intro-strip{min-height:56px;display:flex;align-items:center;justify-content:center;gap:5px;flex-wrap:wrap;text-align:center;padding:10px 16px;background:#fafafa;color:#505057;font-size:13px;line-height:1.8}.intro-strip strong{font-weight:750;color:#333}.intro-strip a{color:var(--blue);white-space:nowrap;margin-left:8px}.intro-strip a:hover,.text-link:hover{text-decoration:underline;text-underline-offset:4px}.intro-strip a span,.text-link span{font-size:20px;vertical-align:-1px;margin-left:3px}
.search-panel{position:absolute;z-index:150;top:100%;left:0;right:0;background:#161617;box-shadow:0 22px 35px #0005;padding:20px 22px 38px}.search-panel-inner{max-width:760px;margin:auto}.search-panel label{font-size:12px;color:#b2b2bd}.search-input-wrap{display:flex;align-items:center;gap:14px;border-bottom:1px solid #74747c;padding:15px 0}.search-input-wrap svg{width:25px;height:25px;opacity:.65}.search-input-wrap input{background:transparent;border:0;outline:0;color:white;min-width:0;flex:1;font-size:28px;font-weight:650}.search-input-wrap input::placeholder{color:#77777f}.search-input-wrap button{background:none;border:none;color:#ddd;font-size:19px}.search-panel-inner>p{color:#86868b;font-size:12px;margin:25px 0 10px}.search-results{display:flex;flex-direction:column;gap:7px}.search-results a,.search-empty{color:#f5f5f7;padding:9px 5px;font-size:14px}.search-results a:hover{color:#80bdff}.search-results a::before{content:'↗';color:#888;margin-right:14px}.mobile-menu{position:absolute;top:100%;left:0;right:0;background:#161617;padding:18px 30px 34px;box-shadow:0 30px 50px #0003}.mobile-menu nav{display:flex;flex-direction:column}.mobile-menu a{font-size:24px;font-weight:690;padding:13px 0;border-bottom:1px solid #ffffff20;display:flex;justify-content:space-between;align-items:center}.mobile-menu a span{font-weight:300;font-size:20px;color:#888}
.feature-hero{padding:64px 24px 32px}.dark-section{background:radial-gradient(circle at 50% 0%,#173355 0%,#0f1724 32%,#06080f 100%);color:#fff}.light-section{background:#f5f5f7;color:#1d1d1f}.alt-section{background:radial-gradient(circle at 50% 0%,#1d416a 0%,#0f2038 32%,#08111d 100%)}.feature-copy{max-width:980px;text-align:center;margin:0 auto}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:700;margin:0 0 16px;color:#666c76}.blue-eyebrow{color:#8abfff}.feature-hero h1,.feature-hero h2{font-weight:780;letter-spacing:-3px;line-height:1.12;margin:0;font-size:clamp(40px,5vw,76px)}.feature-hero h1 span{background:linear-gradient(100deg,#f1f6ff 18%,#92beff 65%,#d7e8ff 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.muted-gradient{color:#6d727a}.hero-description{font-size:clamp(17px,1.5vw,21px);line-height:1.6;letter-spacing:-.4px;font-weight:390;margin:20px auto 24px;max-width:780px}.dark-section .hero-description{color:#c7ceda}.light-section .hero-description{color:#5d626a}.cta-group{display:flex;align-items:center;justify-content:center;gap:26px;flex-wrap:wrap}.pill{min-height:44px;padding:12px 22px;border-radius:50px;font-size:15px;line-height:20px;font-weight:500;display:inline-flex;align-items:center;justify-content:center;transition:background .2s,transform .2s}.pill:hover{transform:translateY(-2px)}.pill-blue{background:var(--blue);color:#fff}.pill-blue:hover{background:#1683f2}.text-link{font-size:16px;font-weight:480;color:var(--blue);display:inline-flex;align-items:center;gap:2px}.light-link{color:#9bc7ff}.feature-visual{max-width:1120px;margin:30px auto 0}
.photo-frame{position:relative;border-radius:36px;overflow:hidden;background:#0d1017;box-shadow:0 16px 45px rgba(0,0,0,.23);border:1px solid rgba(255,255,255,.08)}.photo-frame img{width:100%;height:auto;display:block;transition:transform .9s ease,filter .6s ease}.photo-frame::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,8,13,.08) 0%,rgba(5,8,13,.02) 35%,rgba(5,8,13,.3) 100%);pointer-events:none}.hero-photo::before,.field-photo::before{content:"";position:absolute;inset:auto 0 0 0;height:40%;background:linear-gradient(180deg,transparent 0%,rgba(6,7,10,.52) 100%);pointer-events:none}.light-photo::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.04) 0%,rgba(28,31,38,.08) 100%);pointer-events:none}
.banner-hover{transition:transform .42s ease,box-shadow .42s ease,filter .42s ease}.banner-hover:hover{transform:translateY(-6px);box-shadow:0 26px 60px rgba(0,0,0,.24)}.banner-hover:hover img{transform:scale(1.04)}
.solutions{background:#fff;padding:100px 12px 12px}.section-heading{text-align:center;margin:0 auto 56px;padding:0 20px}.section-heading h2{margin:0;font-size:clamp(32px,3.7vw,52px);line-height:1.22;letter-spacing:-2.4px;font-weight:750}.section-heading h2 span{color:#77777e}.section-heading>p:last-child{font-size:17px;color:#74747b;margin:22px 0 0;line-height:1.7}.tile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.service-tile{position:relative;min-height:590px;overflow:hidden;border-radius:28px;isolation:isolate;transition:transform .35s ease,box-shadow .35s ease}.service-tile:hover{transform:translateY(-7px);box-shadow:0 28px 58px rgba(16,27,44,.16)}.service-tile::after{content:"";position:absolute;left:0;right:0;bottom:0;height:56%;background:linear-gradient(180deg,rgba(255,255,255,0) 0%,rgba(11,14,19,.14) 100%)}.tile-light{background:linear-gradient(165deg,#f8fafc,#edf2f7)}.tile-dark{background:linear-gradient(160deg,#0d1526,#111a2f 92%);color:#fff}.tile-content{position:relative;z-index:3;padding:48px 24px 0;text-align:center}.tile-eyebrow{font-size:11px;letter-spacing:2px;font-weight:760;margin:0 0 10px;color:#5e6675}.tile-dark .tile-eyebrow{color:#9ebdf8}.tile-content h3{font-size:clamp(28px,3vw,42px);letter-spacing:-1.8px;line-height:1.14;margin:0 0 12px;font-weight:760}.tile-content>p:not(.tile-eyebrow){font-size:16px;line-height:1.6;margin:0 auto;color:#505862}.tile-dark .tile-content>p:not(.tile-eyebrow){color:#c9d4e7}.round-arrow{display:grid;place-items:center;width:36px;height:36px;margin:19px auto 0;background:#0071e3;color:#fff;border-radius:50%;font-size:17px;transition:transform .25s,background .2s}.round-arrow:hover{transform:scale(1.1);background:#1589ff}.tile-dark .round-arrow{background:#f4f7fb;color:#0071e3}.tile-photo{position:absolute;left:0;right:0;bottom:0;height:58%;overflow:hidden}.tile-photo img{width:100%;height:100%;object-fit:cover;transition:transform .9s ease,filter .6s ease}.service-tile:hover .tile-photo img{transform:scale(1.06)}
.wide-container{max-width:1180px;margin:0 auto}.service-access{padding:88px 26px;background:#fbfbfd}.access-intro{text-align:center;margin-bottom:34px}.access-intro h2{font-size:clamp(32px,3.9vw,52px);line-height:1.2;letter-spacing:-2px;margin:0}.access-intro h2 span{color:#7b7f87}.access-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.access-item{position:relative;display:flex;flex-direction:column;min-height:182px;padding:22px 18px;border-radius:16px;background:#fff;border:1px solid #ebedf1;box-shadow:0 2px 10px rgba(20,24,32,.04)}.access-icon{font-size:26px;color:#0071e3;margin-bottom:22px}.access-item strong{font-size:18px;letter-spacing:-.4px;margin-bottom:6px}.access-item small{font-size:12px;color:#70757d}.access-arrow{position:absolute;right:18px;bottom:17px;font-size:16px;color:#7d8796}
.approach{padding:105px 26px;background:#fff}.approach-heading{text-align:center;max-width:780px;margin:0 auto}.approach-heading h2{font-size:clamp(32px,4vw,51px);letter-spacing:-2.4px;line-height:1.18;margin:0}.approach-heading>p:last-child{font-size:17px;color:#74747b;line-height:1.7;margin:22px 0 0}.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;list-style:none;padding:0;margin:60px 0 0;counter-reset:none}.steps li{padding-top:12px;border-top:1px solid #cfd5de}.step-num{display:block;font-size:13px;font-weight:700;letter-spacing:2px;color:#8d95a2}.step-icon{display:block;font-size:38px;color:#0071e3;margin:22px 0 18px}.steps h3{margin:0 0 10px;font-size:20px;letter-spacing:-.6px}.steps p{margin:0;color:#6f7680;line-height:1.7;font-size:14px}
.support-section{padding:12px 12px 72px;background:#fff}.support-box{position:relative;overflow:hidden;max-width:1180px;margin:0 auto;border-radius:32px;background:radial-gradient(circle at 30% 20%,rgba(72,139,255,.22),transparent 28%),linear-gradient(135deg,#07182e,#09131f 58%,#102746 100%);color:#fff;display:grid;grid-template-columns:1.25fr .95fr;gap:30px;padding:70px 62px}.support-copy h2{font-size:clamp(34px,4vw,54px);line-height:1.17;letter-spacing:-2.2px;margin:0 0 18px}.support-copy>p:not(.eyebrow){font-size:17px;line-height:1.7;color:#c5d1e5;margin:0 0 28px}.support-facts{display:grid;gap:18px;align-content:center;border-left:1px solid rgba(153,180,217,.25);padding-left:34px}.support-facts>div{padding-bottom:18px;border-bottom:1px solid rgba(153,180,217,.18)}.support-facts>div:last-child{padding-bottom:0;border-bottom:0}.support-facts span{display:block;font-size:12px;color:#94b4db;letter-spacing:1.4px;margin-bottom:8px}.support-facts strong{display:block;font-size:22px;letter-spacing:-.8px}.support-facts small{display:block;margin-top:7px;font-size:12px;color:#b7c8de}.support-quicklinks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:18px 12px 0}.support-quicklinks a{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid #d6dbe5;color:#3e4a5f;font-size:13px}.support-quicklinks a span{color:#0071e3}
.footer{padding:40px 24px 55px;background:#f5f5f7;color:#6e6e73;font-size:12px}.footer-route{margin:0 0 24px;color:#444}.footer-route span{margin:0 7px;color:#888}.footer-columns{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;padding:20px 0 26px;border-top:1px solid #d0d0d7;border-bottom:1px solid #d0d0d7}.footer-columns h3{margin:0 0 12px;color:#1d1d1f;font-size:12px}.footer-columns a,.footer-columns p{display:block;margin:8px 0;color:#6e6e73;line-height:1.6}.footer-columns a:hover{color:#1d1d1f;text-decoration:underline;text-underline-offset:3px}.footer-bottom{display:flex;gap:20px;justify-content:space-between;padding-top:20px;flex-wrap:wrap}.footer-bottom p{margin:0}.preview-disclaimer{font-size:10px;line-height:1.8;color:#898a91;max-width:920px;margin:25px 0 0}.back-to-top{border:1px solid #d8dce4;background:#fff;color:#444c5c;width:42px;height:42px;position:fixed;bottom:25px;right:25px;z-index:900;border-radius:50%;font-size:19px;box-shadow:0 3px 14px #0002;opacity:0;visibility:hidden;transform:translateY(15px);transition:all .2s}.back-to-top.visible{opacity:1;visibility:visible;transform:translateY(0)}.back-to-top:hover{background:#e9f3ff;color:#0071e3}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:translateY(0)}
@media(max-width:1050px){.nav-shell{gap:19px;padding:0 17px}.desktop-nav{gap:14px}.desktop-nav a{font-size:11px}.brand-type{font-size:12px}.service-tile{min-height:560px}.support-box{padding:58px 44px;grid-template-columns:1fr}.support-facts{border-left:0;border-top:1px solid rgba(153,180,217,.25);padding:24px 0 0}}
@media(max-width:800px){:root{--navheight:49px}.desktop-nav{display:none}.mobile-menu-toggle{display:flex}.nav-shell{padding:0 18px}.nav-tools{gap:7px}.brand-type{font-size:13px}.feature-hero{padding:58px 18px 28px}.feature-hero h1,.feature-hero h2{letter-spacing:-2.2px}.tile-grid{grid-template-columns:1fr}.access-grid,.support-quicklinks{grid-template-columns:repeat(2,minmax(0,1fr))}.steps{grid-template-columns:repeat(2,1fr)}.footer-columns{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.intro-strip{font-size:11px;gap:4px;padding:9px 12px}.feature-hero h1,.feature-hero h2{font-size:clamp(36px,9vw,52px);letter-spacing:-2px;line-height:1.16}.hero-description{font-size:16px;line-height:1.56;margin:18px 0 22px}.desktop-break{display:none}.pill{font-size:13px;min-height:40px;padding:10px 17px}.text-link{font-size:14px}.cta-group{gap:15px}.photo-frame{border-radius:26px}.feature-visual{margin-top:26px}.solutions{padding:78px 8px 8px}.section-heading{margin-bottom:35px}.section-heading h2{font-size:clamp(30px,7vw,40px);letter-spacing:-1.5px}.section-heading>p:last-child{font-size:14px;margin-top:17px}.service-tile{min-height:510px}.tile-content{padding:40px 18px 0}.tile-content h3{font-size:34px}.tile-content>p:not(.tile-eyebrow){font-size:15px}.tile-photo{height:54%}.service-access{padding:72px 15px}.access-intro h2{font-size:34px;letter-spacing:-1.5px}.access-grid{grid-template-columns:1fr;gap:9px}.access-item{min-height:165px;padding:17px 14px;border-radius:12px}.access-icon{font-size:22px;margin-bottom:20px}.access-item strong{font-size:15px}.access-item small{font-size:11px}.access-arrow{right:14px;bottom:13px;font-size:15px}.approach{padding:85px 20px}.approach-heading h2{font-size:39px;letter-spacing:-1.9px}.approach-heading>p:last-child{font-size:15px}.steps{margin-top:45px;column-gap:22px;row-gap:33px}.steps h3{font-size:17px}.steps p{font-size:12px}.step-icon{margin:22px 0 17px;font-size:35px}.support-section{padding:8px 8px 65px}.support-box{padding:54px 24px 40px;min-height:auto;gap:34px;border-radius:26px}.support-copy h2{font-size:38px;letter-spacing:-1.8px}.support-copy>p:not(.eyebrow){font-size:15px}.support-facts{display:block}.support-facts>div{border-bottom:1px solid #9bb4d02b}.support-facts>div:last-child{border:0}.support-quicklinks{column-gap:15px;row-gap:0;padding:0 9px;grid-template-columns:1fr}.support-quicklinks a{font-size:12px}.footer{padding:35px 19px}.footer-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 22px}.footer-bottom{gap:9px;line-height:1.6}.search-input-wrap input{font-size:20px}}
@media(max-width:360px){.brand-type{font-size:11.5px}.brand-glyph{height:21px;width:21px}.nav-shell{padding:0 10px}.intro-strip{font-size:10px}.feature-hero h1,.feature-hero h2{font-size:35px}.cta-group{gap:10px}.pill{padding:9px 12px}.text-link{font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}

/* v3: official CSinnovation identity + Korean photos + bulletin board */
.site-header{background:rgba(250,250,252,.95);color:#232326;border-bottom:1px solid rgba(11,18,27,.07)}
.nav-shell{max-width:1250px;gap:17px;padding:0 21px}
.brand{color:#1d1d1f;gap:0}
.brand img{display:block;width:182px;height:auto;max-height:37px;object-fit:contain}
.desktop-nav{max-width:800px;gap:clamp(11px,1.4vw,24px)}
.desktop-nav a{font-size:12px;opacity:.88;font-weight:500}
.desktop-nav a:hover{color:#d65e20}
.icon-button{color:#363b43}
.icon-button:hover{color:#d65e20}
.mobile-menu,.search-panel{color:#f1f3f7}
.mobile-menu .menu-bar{background:white}
.menu-bar{background:#23252a}
.board-ribbon{background:#fff;border-bottom:1px solid #ebebee}
.board-ribbon-inner{max-width:1160px;margin:0 auto;padding:0 24px;min-height:48px;display:flex;align-items:center;gap:23px}
.board-ribbon-tag{display:inline-flex;align-items:center;gap:9px;font-size:12px;font-weight:780;color:#3d454f;letter-spacing:-.2px;white-space:nowrap}
.board-ribbon-dot{width:6px;height:6px;border-radius:50%;background:#f2722f;box-shadow:0 0 0 3px rgba(242,114,47,.12)}
.board-ribbon-feature{min-width:0;flex:1;display:flex;align-items:center;gap:11px;font-size:13px;color:#4d5560;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.board-ribbon-feature strong{font-size:11px;color:#0071e3;font-weight:700}
.board-ribbon-feature:hover{text-decoration:underline;text-underline-offset:3px}
.board-ribbon-date{margin-left:auto;font-size:11px;color:#9b9fa7}
.board-ribbon-more{font-size:12px;color:#0071e3;white-space:nowrap}
.board-ribbon-more:hover{text-decoration:underline}
/* Keep the original 3D-hover behavior and ensure reveal animations do not override it. */
.photo-frame.banner-hover{--tilt-x:0deg;--tilt-y:0deg;transform:perspective(1400px) translate3d(0,0,0) rotateX(0deg) rotateY(0deg);transition:transform .36s cubic-bezier(.2,.8,.2,1),box-shadow .4s ease}
.photo-frame.banner-hover:is(:hover,.is-active){transform:perspective(1400px) translate3d(0,-6px,0) rotateX(var(--tilt-x)) rotateY(var(--tilt-y));box-shadow:0 26px 60px rgba(0,0,0,.23)}
.service-tile.reveal.visible:hover{transform:translateY(-7px)}
.access-item.reveal.visible:hover{transform:translateY(-5px)}
.light-photo img,.field-photo img{min-height:420px;max-height:560px;object-fit:cover}
.service-tile .tile-photo img{object-position:center center}
.case-section{background:#f5f5f7;padding:95px 24px}
.case-container{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.85fr);align-items:center;gap:65px;max-width:1170px;margin:0 auto}
.case-image{border-radius:28px;aspect-ratio:1.65;box-shadow:0 15px 48px rgba(26,36,55,.12)}
.case-image img{width:100%;height:100%;object-fit:cover}
.case-copy h2{font-size:clamp(32px,3.3vw,51px);letter-spacing:-2.2px;line-height:1.17;margin:0}
.case-copy>p:not(.eyebrow){color:#72747c;line-height:1.8;font-size:17px;margin:25px 0 21px}
.case-copy small{display:block;margin-top:25px;color:#969aa0;font-size:10px;line-height:1.8}
.board-section{background:#fff;padding:95px 24px 100px;scroll-margin-top:65px}
.board-container{max-width:1120px;margin:auto}
.board-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:34px}
.board-heading h2{margin:0;font-size:clamp(32px,3.6vw,50px);letter-spacing:-2.2px;line-height:1.2}
.board-heading>div>p:last-child{margin:14px 0 0;color:#767983;font-size:16px}
.board-all{border:1px solid #dadee6;border-radius:24px;padding:11px 17px;font-size:12px;color:#343b46;white-space:nowrap;transition:border-color .2s,background .2s}
.board-all span{color:#0071e3;margin-left:8px}.board-all:hover{background:#f5f8fc;border-color:#9bb5d6}
.board-table{border-top:2px solid #1d2430}
.board-row{display:grid;grid-template-columns:58px minmax(0,1fr) 100px 22px;align-items:center;gap:22px;min-height:78px;border-bottom:1px solid #eceef2;padding:12px 9px;transition:background .2s}
.board-row:hover{background:#f7f9fc}
.board-category{font-size:12px;color:#0071e3;font-weight:730}
.board-subject{font-size:16px;font-weight:550;color:#24262d;line-height:1.5}
.board-row time{color:#868c95;font-size:12px;white-space:nowrap}
.board-arrow{font-size:19px;color:#949ba7}
.board-note{margin:18px 0 0;color:#999ea8;font-size:11px;line-height:1.8}
@media(max-width:1050px){.nav-shell{padding:0 17px;gap:14px}.desktop-nav{gap:10px}.desktop-nav a{font-size:11.1px}.brand img{width:162px}.case-container{gap:35px}}
@media(max-width:900px){.desktop-nav{display:none}.mobile-menu-toggle{display:flex}.brand img{width:178px}.nav-shell{padding:0 18px}.board-ribbon-inner{padding:0 16px}.case-container{grid-template-columns:1fr;gap:30px;max-width:750px}.case-copy{text-align:center}.case-copy small{margin-top:18px}.board-heading h2{font-size:38px}}
@media(max-width:600px){.board-ribbon-inner{gap:12px;min-height:48px}.board-ribbon-tag{font-size:11px}.board-ribbon-feature{font-size:11px;display:block;overflow:hidden;text-overflow:ellipsis}.board-ribbon-feature strong{margin-right:4px}.board-ribbon-date{display:none}.board-ribbon-more{font-size:11px}.brand img{width:165px}.light-photo img,.field-photo img{min-height:260px;max-height:380px}.case-section{padding:65px 14px}.case-image{aspect-ratio:1.45;border-radius:22px}.case-copy h2{font-size:36px}.case-copy>p:not(.eyebrow){font-size:15px}.board-section{padding:68px 15px 75px}.board-heading{display:block}.board-heading h2{font-size:34px;letter-spacing:-1.5px}.board-heading>div>p:last-child{font-size:14px}.board-all{display:inline-block;margin-top:23px}.board-row{grid-template-columns:38px minmax(0,1fr) 14px;min-height:76px;gap:10px;padding:12px 5px}.board-row time{display:none}.board-subject{font-size:14px}.board-category{font-size:10px}.board-arrow{font-size:15px}}
@media(prefers-reduced-motion:reduce){.photo-frame.banner-hover,.photo-frame.banner-hover:is(:hover,.is-active),.service-tile.reveal.visible:hover,.access-item.reveal.visible:hover{transform:none!important}}


/* v5: header alignment refinement + top board ribbon removed + product middle banner */
:root{--navheight:58px}
.site-header{background:rgba(250,250,252,.98);color:#232326;border-bottom:1px solid rgba(11,18,27,.07)}
.nav-shell{height:58px;max-width:1240px;gap:18px;padding:0 16px 0 18px;align-items:center}
.brand{display:flex;align-items:center;align-self:center;line-height:0;margin-top:0}
.brand img{width:170px;max-height:31px;height:auto;display:block;object-fit:contain}
.desktop-nav{flex:1;justify-content:center;gap:clamp(16px,1.8vw,34px);max-width:none}
.desktop-nav a{font-size:13px;font-weight:500;color:#40444b;opacity:1;line-height:1}
.nav-tools{display:flex;align-items:center;gap:2px;align-self:center}
.icon-button{width:32px;height:32px;padding:6px;color:#363b43;display:grid;place-items:center}
.icon-button svg{width:18px;height:18px}
.phone-icon{margin-left:2px}
.board-ribbon{display:none!important}
.intro-strip{min-height:54px;border-bottom:1px solid #ececef;background:#fff;color:#5c6068;font-size:13px}
.light-photo img{min-height:420px;max-height:560px;object-fit:cover;object-position:center center}
@media(max-width:1050px){.nav-shell{height:56px;padding:0 14px 0 16px}.brand img{width:160px;max-height:29px}.desktop-nav{gap:14px}.desktop-nav a{font-size:12px}}
@media(max-width:900px){:root{--navheight:56px}.desktop-nav{display:none}.mobile-menu-toggle{display:flex}.nav-shell{height:56px;padding:0 14px 0 16px}.brand img{width:158px;max-height:29px}.intro-strip{min-height:48px;font-size:12px;padding:8px 12px}}
@media(max-width:600px){:root{--navheight:54px}.nav-shell{height:54px;padding:0 10px 0 12px}.brand img{width:150px;max-height:27px}.icon-button{width:30px;height:30px}.icon-button svg{width:17px;height:17px}.intro-strip{min-height:44px;font-size:11px;padding:7px 10px}.light-photo img{min-height:250px;max-height:360px}}


/* v6: lower service images replaced to non-human visuals + smaller logo */
.brand img{width:148px!important;max-height:27px!important}
.desktop-nav a{font-size:12.5px!important;font-weight:500!important}
.nav-shell{height:56px!important}
.tile-photo{height:60%!important}
.tile-photo img{object-fit:cover;object-position:center center}
.service-tile{min-height:575px}
.tile-content{padding:42px 22px 0!important}
.tile-content h3{font-size:clamp(26px,2.6vw,40px)!important}
.tile-content>p:not(.tile-eyebrow){font-size:15px!important}
@media(max-width:900px){.brand img{width:146px!important;max-height:26px!important}.nav-shell{height:54px!important}}
@media(max-width:600px){.brand img{width:138px!important;max-height:24px!important}.tile-photo{height:56%!important}.service-tile{min-height:495px}.tile-content{padding:34px 16px 0!important}}


/* v7: cleaner service copy + tighter header spacing + unified image tone */
.nav-shell{max-width:1260px!important;height:56px!important;padding:0 18px 0 20px!important;gap:14px!important}
.brand img{width:144px!important;max-height:26px!important}
.desktop-nav{justify-content:flex-start!important;gap:clamp(18px,2vw,38px)!important;padding-left:26px!important;flex:1!important}
.desktop-nav a{font-size:12px!important;font-weight:500!important;letter-spacing:-0.1px!important;color:#44484f!important}
.nav-tools{gap:4px!important}
.intro-strip{min-height:48px!important;font-size:12px!important;padding:8px 12px!important}
.section-heading>p:last-child{max-width:760px;margin-left:auto;margin-right:auto}
.tile-grid{gap:14px!important}
.service-tile{min-height:560px!important;border-radius:24px!important}
.tile-content{padding:38px 20px 0!important}
.tile-eyebrow{font-size:10px!important;letter-spacing:1.7px!important;margin-bottom:8px!important}
.tile-content h3{font-size:clamp(24px,2.4vw,38px)!important;line-height:1.18!important;margin-bottom:10px!important}
.tile-content>p:not(.tile-eyebrow){font-size:14px!important;line-height:1.55!important;max-width:320px!important}
.round-arrow{margin-top:16px!important;width:32px!important;height:32px!important;font-size:15px!important}
.tile-photo{height:61%!important}
.photo-frame img,.tile-photo img,.case-image img{filter:saturate(0.94) contrast(1.03) brightness(0.98)}
.tile-light .tile-photo::after,.tile-dark .tile-photo::after,.case-image::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(19,37,64,0.04),rgba(19,37,64,0.10));pointer-events:none}
.tile-photo{position:absolute;left:0;right:0;bottom:0;height:61%!important;overflow:hidden}
.case-image{position:relative;overflow:hidden}
@media(max-width:1050px){.nav-shell{padding:0 14px 0 16px!important}.brand img{width:140px!important;max-height:25px!important}.desktop-nav{gap:18px!important;padding-left:18px!important}.desktop-nav a{font-size:11.5px!important}.service-tile{min-height:540px!important}}
@media(max-width:900px){.nav-shell{height:54px!important;padding:0 12px 0 14px!important}.brand img{width:138px!important;max-height:24px!important}.intro-strip{min-height:44px!important;font-size:11px!important}.service-tile{min-height:515px!important}}
@media(max-width:600px){.nav-shell{height:52px!important;padding:0 10px 0 12px!important}.brand img{width:132px!important;max-height:23px!important}.intro-strip{min-height:42px!important;font-size:10.5px!important;padding:6px 10px!important}.tile-grid{gap:10px!important}.service-tile{min-height:470px!important;border-radius:18px!important}.tile-content{padding:30px 14px 0!important}.tile-content h3{font-size:31px!important}.tile-content>p:not(.tile-eyebrow){font-size:13px!important;max-width:260px!important}.tile-photo{height:57%!important}}


/* v8: screenshot-sized header + icons removed + admin mode */
:root{--navheight:57px}
.nav-shell{max-width:1240px!important;height:57px!important;padding:0 18px 0 18px!important;gap:18px!important;justify-content:flex-start!important}
.brand{margin:0!important;padding:0!important;flex:0 0 auto!important}
.brand img{width:128px!important;max-height:24px!important;height:auto!important;object-fit:contain!important}
.desktop-nav{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:clamp(18px,2vw,30px)!important;flex:1!important;max-width:none!important;padding-left:26px!important}
.desktop-nav a{font-size:12px!important;font-weight:500!important;line-height:1!important;color:#4a4e55!important;white-space:nowrap!important}
.desktop-nav a:hover{color:#1f5fbf!important}
.nav-tools{display:none!important}
.mobile-menu,.search-panel,.mobile-menu-toggle,#menuToggle,#searchOpen,.phone-icon{display:none!important}
.intro-strip{min-height:52px!important;padding:8px 12px!important;font-size:12px!important;border-top:1px solid #ececef!important;border-bottom:1px solid #ececef!important}
.admin-section{background:#f7f8fb;padding:92px 24px 28px}
.admin-container{max-width:1160px;margin:0 auto}
.admin-heading{text-align:center;max-width:800px;margin:0 auto 38px}.admin-heading h2{margin:0;font-size:clamp(32px,3.6vw,48px);letter-spacing:-2px;line-height:1.2}.admin-heading>p:last-child{margin:16px auto 0;color:#70757d;font-size:16px;line-height:1.7;max-width:760px}
.admin-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.admin-card{background:#fff;border:1px solid #e7ebf1;border-radius:18px;padding:24px 20px;min-height:172px;box-shadow:0 4px 14px rgba(16,25,38,.04)}
.admin-card h3{margin:0 0 12px;font-size:19px;letter-spacing:-.5px;color:#222a36}.admin-card p{margin:0;color:#70757d;line-height:1.7;font-size:14px}
@media(max-width:1050px){.nav-shell{padding:0 14px!important;gap:14px!important}.brand img{width:122px!important;max-height:23px!important}.desktop-nav{gap:16px!important;padding-left:18px!important}.desktop-nav a{font-size:11.5px!important}.admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.nav-shell{height:54px!important;padding:0 10px!important}.brand img{width:116px!important;max-height:22px!important}.desktop-nav{overflow:auto;gap:14px!important;padding-left:12px!important}.desktop-nav::-webkit-scrollbar{display:none}.desktop-nav a{font-size:11px!important}.intro-strip{min-height:46px!important;font-size:11px!important}.admin-section{padding:70px 16px 20px}.admin-grid{grid-template-columns:1fr}}
@media(max-width:600px){:root{--navheight:54px}.brand img{width:110px!important;max-height:21px!important}.desktop-nav a{font-size:10.5px!important}.admin-heading h2{font-size:34px;letter-spacing:-1.5px}.admin-heading>p:last-child{font-size:14px}.admin-card{min-height:150px;padding:20px 16px}}


/* v9: unify layout to captured tablet width (~828px) */
@media (min-width: 768px) and (max-width: 900px){
  body{background:#fff}
  .nav-shell{max-width:828px!important;height:58px!important;padding:0 18px!important;gap:18px!important}
  .brand img{width:114px!important;max-height:21px!important}
  .desktop-nav{gap:14px!important;padding-left:18px!important;justify-content:flex-start!important;overflow:visible!important}
  .desktop-nav a{font-size:10.8px!important;line-height:1!important}
  .intro-strip{min-height:50px!important;padding:8px 10px!important;font-size:11.2px!important}
  .feature-hero{padding:34px 0 18px!important}
  .feature-copy{max-width:760px!important;padding:0 18px!important}
  .feature-hero h1,.feature-hero h2{font-size:56px!important;letter-spacing:-2.2px!important;line-height:1.1!important}
  .hero-description{font-size:16px!important;line-height:1.55!important;max-width:620px!important;margin:16px auto 20px!important}
  .cta-group{gap:18px!important}
  .pill{min-height:40px!important;padding:10px 16px!important;font-size:13px!important}
  .text-link{font-size:14px!important}
  .feature-visual{max-width:828px!important;margin:24px auto 0!important;padding:0 18px!important}
  .photo-frame{border-radius:22px!important}
  .hero-photo img,.light-photo img,.field-photo img{width:100%!important;max-height:390px!important;min-height:0!important;object-fit:cover!important;object-position:center center!important}
  .solutions,.case-section,.board-section,.service-access,.approach,.admin-section,.support-section{padding-left:0!important;padding-right:0!important}
  .section-heading,.wide-container,.case-container,.board-container,.admin-container,.support-box,.support-quicklinks{max-width:828px!important;margin-left:auto!important;margin-right:auto!important}
  .solutions{padding-top:64px!important;padding-bottom:10px!important}
  .section-heading{padding:0 18px!important;margin-bottom:26px!important}
  .section-heading h2{font-size:42px!important;letter-spacing:-1.7px!important;line-height:1.18!important}
  .section-heading>p:last-child{font-size:14px!important;line-height:1.6!important;margin-top:14px!important}
  .tile-grid{max-width:828px!important;margin:0 auto!important;gap:10px!important;padding:0 18px!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .service-tile{min-height:318px!important;border-radius:18px!important}
  .tile-content{padding:20px 14px 0!important;text-align:center!important}
  .tile-eyebrow{font-size:8.5px!important;letter-spacing:1.4px!important;margin-bottom:6px!important}
  .tile-content h3{font-size:20px!important;letter-spacing:-.8px!important;line-height:1.15!important;margin-bottom:8px!important}
  .tile-content>p:not(.tile-eyebrow){font-size:11px!important;line-height:1.45!important;max-width:230px!important}
  .round-arrow{width:24px!important;height:24px!important;font-size:12px!important;margin-top:12px!important}
  .tile-photo{height:57%!important}
  .tile-photo img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important}
  .case-section{padding-top:60px!important;padding-bottom:60px!important}
  .case-container{display:grid!important;grid-template-columns:1fr 1fr!important;gap:24px!important;padding:0 18px!important;align-items:center!important}
  .case-image{border-radius:22px!important;aspect-ratio:1.35!important}
  .case-copy h2{font-size:34px!important;letter-spacing:-1.5px!important}.case-copy>p:not(.eyebrow){font-size:14px!important;margin:16px 0!important}
  .board-section{padding-top:64px!important;padding-bottom:64px!important}.board-heading{padding:0 18px!important;margin-bottom:22px!important}.board-heading h2{font-size:38px!important;letter-spacing:-1.6px!important}.board-table{margin:0 18px!important}
  .board-row{min-height:64px!important;gap:14px!important;padding:10px 8px!important}.board-subject{font-size:14px!important}.board-category,.board-row time{font-size:11px!important}.board-note{padding:0 18px!important}
  .service-access{padding-top:60px!important;padding-bottom:60px!important}.access-intro{padding:0 18px!important;margin-bottom:22px!important}.access-intro h2{font-size:40px!important;letter-spacing:-1.6px!important}.access-grid{padding:0 18px!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important}.access-item{min-height:138px!important;padding:16px 14px!important}.access-item strong{font-size:14px!important}.access-item small{font-size:10px!important}.access-icon{font-size:20px!important;margin-bottom:14px!important}
  .approach{padding-top:66px!important;padding-bottom:66px!important}.approach-heading{padding:0 18px!important}.approach-heading h2{font-size:38px!important;letter-spacing:-1.6px!important}.approach-heading>p:last-child{font-size:14px!important}.steps{padding:0 18px!important;margin-top:34px!important;gap:16px!important}.steps h3{font-size:16px!important}.steps p{font-size:12px!important}
  .admin-section{padding-top:64px!important;padding-bottom:18px!important}.admin-heading{padding:0 18px!important;margin-bottom:24px!important}.admin-heading h2{font-size:38px!important;letter-spacing:-1.5px!important}.admin-heading>p:last-child{font-size:14px!important}.admin-grid{padding:0 18px!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.admin-card{min-height:140px!important;padding:18px 16px!important}.admin-card h3{font-size:17px!important}.admin-card p{font-size:12px!important}
  .support-section{padding-top:12px!important;padding-bottom:52px!important}.support-box{max-width:828px!important;border-radius:24px!important;padding:42px 28px!important;gap:22px!important;grid-template-columns:1fr 1fr!important}.support-copy h2{font-size:38px!important;letter-spacing:-1.6px!important}.support-copy>p:not(.eyebrow){font-size:14px!important}.support-facts strong{font-size:18px!important}.support-facts small{font-size:11px!important}.support-quicklinks{max-width:828px!important;padding:14px 18px 0!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important}
  .footer{padding:30px 18px 45px!important}.footer .wide-container{max-width:828px!important;margin:0 auto!important}.footer-columns{gap:18px!important}.footer-columns a,.footer-columns p,.footer-bottom p{font-size:11px!important}
}


/* v10: remove top intro strip and move content up */
.intro-strip{display:none!important}
.feature-hero{padding-top:36px!important}
.dark-section,.light-section,.alt-section{margin-top:0!important}
@media(max-width:900px){.feature-hero{padding-top:28px!important}}
@media(max-width:600px){.feature-hero{padding-top:24px!important}}
@media (min-width: 768px) and (max-width: 900px){.feature-hero{padding-top:24px!important}}


/* v11: constrain expertise/cards area to template width + remove stray quick-links remnants */
.solutions{padding-left:24px!important;padding-right:24px!important}
.solutions .section-heading{max-width:1100px!important;margin-left:auto!important;margin-right:auto!important;padding-left:0!important;padding-right:0!important}
.tile-grid{max-width:1280px!important;margin-left:auto!important;margin-right:auto!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;padding:0!important}
.service-tile{min-height:520px!important}
.tile-content{padding-top:34px!important}
.tile-content>p:not(.tile-eyebrow){max-width:300px!important;margin-left:auto!important;margin-right:auto!important}
.search-results,#searchResults,#searchDesc{display:none!important}
@media(min-width:1440px){.tile-grid{max-width:1280px!important}.service-tile{min-height:500px!important}}
@media(min-width:1900px){.tile-grid{max-width:1320px!important}.service-tile{min-height:510px!important}}
@media(max-width:1100px){.solutions{padding-left:18px!important;padding-right:18px!important}.tile-grid{gap:12px!important}.service-tile{min-height:460px!important}}
@media(max-width:767px){.solutions{padding-left:12px!important;padding-right:12px!important}.tile-grid{grid-template-columns:1fr!important;gap:10px!important}.service-tile{min-height:430px!important}}
