:root{--navy:#031a31;--navy-deep:#021629;--cyan:#00a9ec;--cyan-bright:#08b9ff;--lime:#9ccb09;--orange:#ff9000;--text:#f7f9fc;--muted:#d4d9df;--line:rgba(154,181,203,.30)}
*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--navy-deep)}body{font-family:Arial,sans-serif;color:var(--text);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}
.page-shell{width:100%;min-width:1040px;min-height:100vh;background:radial-gradient(circle at 72% 30%,rgba(10,55,91,.20),transparent 38%),linear-gradient(180deg,#031a31 0%,#031b33 60%,#03172c 100%);overflow:hidden}
.site-header{height:118px;background:#03172b;border-bottom:1px solid rgba(148,177,198,.22)}
.header-inner{height:100%;width:min(100% - 56px,1122px);margin:0 auto;display:grid;grid-template-columns:286px 1fr 146px;align-items:center;column-gap:10px}
.brand img{width:260px;height:auto;display:block}.main-nav{display:flex;align-items:center;justify-content:flex-end;gap:28px;padding-top:2px;white-space:nowrap}.main-nav a{position:relative;font-size:15.5px;color:rgba(255,255,255,.96);padding:49px 0 42px}.main-nav a.active::after{content:"";position:absolute;left:0;right:0;bottom:31px;height:2px;background:var(--cyan-bright);border-radius:2px}.top-cta{min-width:146px;height:44px;display:inline-flex;align-items:center;justify-content:center;padding:0 18px;font-size:14.5px;white-space:nowrap;background:linear-gradient(180deg,#0fb8f7 0%,#079ddf 100%);border:1px solid rgba(89,201,250,.55);border-radius:4px;box-shadow:inset 0 1px 0 rgba(255,255,255,.12)}
.menu-toggle,.mobile-nav{display:none}
.experience-page{padding:0 0 54px}.content-wrap{width:min(100% - 80px,1042px);margin:0 auto}
.experience-intro{padding:62px 0 44px;display:block}
.experience-intro-copy{max-width:1040px}.experience-intro-copy h1{margin:0 0 18px;font-size:54px;line-height:1.05;letter-spacing:.1px}.experience-intro-copy>p{margin:0;max-width:1040px;color:#dce2e8;font-size:21px;line-height:1.52}.experience-intro-copy>p+p{margin-top:12px}
.selection-rationale{border:1px solid rgba(145,174,197,.30);border-left:4px solid var(--cyan-bright);border-radius:11px;background:linear-gradient(145deg,rgba(9,39,67,.86),rgba(6,29,50,.90));padding:22px 24px 20px}
.selection-rationale h2{margin:0 0 11px;color:var(--cyan-bright);font-size:20px;line-height:1.2}.selection-rationale p{margin:0 0 10px;color:#d7dfe6;font-size:15.5px;line-height:1.48}.selection-rationale p:last-child{margin-bottom:0}
.project-examples h2{margin:0;font-size:28px;line-height:1.15}.section-rule{width:34px;height:3px;margin:14px 0 20px;background:var(--cyan-bright);border-radius:3px}
.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}.project-card{min-height:720px;border:1px solid rgba(145,174,197,.36);border-radius:12px;background:linear-gradient(155deg,rgba(8,35,60,.96),rgba(5,27,47,.97));padding:24px 22px 22px;box-shadow:inset 0 1px 0 rgba(255,255,255,.025);display:flex;flex-direction:column}
.project-heading{display:grid;grid-template-columns:70px minmax(0,1fr);gap:14px;align-items:start;margin-bottom:19px}.project-icon{height:68px;display:flex;align-items:flex-start}.project-icon svg{width:64px;height:64px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}.project-icon .hex{stroke-width:2.8}.project-orange .project-icon{color:var(--orange)}.project-lime .project-icon{color:var(--lime)}.project-cyan .project-icon{color:var(--cyan-bright)}
.project-category{margin:2px 0 7px;color:var(--cyan-bright);font-size:13px;line-height:1.25;font-weight:700;text-transform:uppercase;letter-spacing:.035em}.project-card h3{margin:0;font-size:23px;line-height:1.16}
.case-block{padding:0 0 16px;margin:0 0 16px;border-bottom:1px solid rgba(153,180,201,.26)}.case-block h4{margin:0 0 7px;color:var(--cyan-bright);font-size:17px;font-weight:600}.case-block p{margin:0;color:#d5dce3;font-size:15.5px;line-height:1.46}.case-targetic{margin-left:-10px;margin-right:-10px;padding:14px 10px 15px;border:1px solid rgba(8,185,255,.22);border-left:3px solid rgba(8,185,255,.78);border-radius:7px;background:rgba(4,43,72,.46)}.case-targetic h4{color:#fff}.case-last{margin-top:auto;margin-bottom:0;padding-bottom:0;border-bottom:0}
.site-footer{height:118px;border-top:1px solid rgba(139,168,190,.24);background:#03172b}.footer-inner{width:min(100% - 74px,1122px);height:100%;margin:0 auto;display:grid;grid-template-columns:minmax(300px,1fr) auto auto;align-items:center;gap:24px}.footer-company{min-width:0;display:flex;flex-direction:row;align-items:center;gap:12px;white-space:nowrap;font-size:13px;color:#d9e0e6}.footer-company strong{display:inline-flex;align-items:center;gap:12px;font-weight:500;color:#fff}.footer-company strong::after{content:"|";color:rgba(255,255,255,.48);font-weight:400}.footer-contact{display:flex;align-items:center;gap:18px;white-space:nowrap}.contact-item{min-height:24px;display:inline-flex;align-items:center}.contact-reveal{appearance:none;border:0;padding:2px 0 3px;background:transparent;color:#dce2e7;font:inherit;font-size:13px;line-height:1.2;border-bottom:1px solid rgba(220,226,231,.58);cursor:pointer}.contact-reveal:hover,.contact-reveal:focus-visible{color:var(--cyan-bright);border-bottom-color:var(--cyan-bright);outline:none}.contact-value{display:block;width:auto;height:17px;opacity:.94}.contact-value[hidden]{display:none}.email-value{height:17px}.footer-links{display:flex;gap:26px;font-size:13px;color:#dce2e7;white-space:nowrap}
.mobile-space{display:none}

@media (max-width:900px) and (min-width:601px){
  .page-shell{min-width:0}.site-header{height:92px;position:relative;z-index:20}.header-inner{position:relative;width:calc(100% - 48px);grid-template-columns:1fr auto;column-gap:24px}.brand img{width:215px}.main-nav,.top-cta{display:none}.menu-toggle{display:inline-flex;width:46px;height:46px;padding:0;border:1px solid rgba(154,181,203,.35);border-radius:6px;background:rgba(8,36,62,.62);align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer;position:relative;z-index:22}.menu-toggle span{width:21px;height:2px;display:block;background:rgba(255,255,255,.92);transition:transform .18s ease,opacity .18s ease}.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-nav{position:absolute;z-index:21;top:calc(100% + 1px);left:-10px;right:-10px;padding:14px 20px 20px;border-top:1px solid rgba(154,181,203,.20);border-bottom:1px solid rgba(154,181,203,.22);background:rgba(3,23,43,.99);box-shadow:0 18px 36px rgba(0,0,0,.28)}.mobile-nav[aria-hidden="false"]{display:grid;gap:0}.mobile-nav>a:not(.mobile-nav-cta){padding:14px 2px;border-bottom:1px solid rgba(154,181,203,.16);font-size:17px;line-height:1.2}.mobile-nav>a.active{color:var(--cyan-bright)}.mobile-nav-cta{margin-top:18px;min-height:48px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(89,201,250,.55);border-radius:6px;background:linear-gradient(180deg,#0fb8f7 0%,#079ddf 100%);font-size:16px;font-weight:500}
  .experience-page{padding-bottom:46px}.content-wrap{width:calc(100% - 64px)}.experience-intro{padding:44px 0 36px}.experience-intro-copy{max-width:none}.experience-intro-copy h1{font-size:45px;line-height:1.04;margin-bottom:14px}.experience-intro-copy>p{font-size:19px;line-height:1.48;max-width:none}.experience-intro-copy>p+p{margin-top:10px}
  .project-examples h2{font-size:25px}.section-rule{margin:12px 0 18px}.project-grid{grid-template-columns:1fr;gap:18px}.project-card{min-height:0;padding:22px 24px 23px;display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.project-heading{grid-column:1/-1;grid-template-columns:76px 1fr;margin-bottom:18px}.project-icon svg{width:66px;height:66px}.project-card h3{font-size:24px}.project-category{font-size:12.8px}.case-block{padding:0 12px 15px 0;margin:0 0 17px}.case-targetic{margin:0 0 17px;padding:13px 12px 14px}.case-last{margin:0;padding:0;border-bottom:0}.case-block h4{font-size:16.5px}.case-block p{font-size:14.8px;line-height:1.42}
  .site-footer{height:auto;min-height:170px}.footer-inner{width:calc(100% - 64px);min-height:170px;padding:24px 0;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"company links" "contact links";gap:7px 26px;align-items:center}.footer-company{grid-area:company;white-space:normal;flex-wrap:wrap;gap:6px 10px;line-height:1.42}.footer-contact{grid-area:contact;gap:20px;flex-wrap:wrap}.footer-links{grid-area:links;justify-content:flex-start;gap:28px}
}

@media (min-width:901px) and (max-width:1050px){
  .page-shell{min-width:0}.site-header{height:98px;position:relative;z-index:20}.header-inner{position:relative;width:calc(100% - 48px);grid-template-columns:1fr auto auto;column-gap:14px}.brand img{width:214px}.main-nav{display:none}.top-cta{display:inline-flex;min-width:140px;height:42px;padding:0 16px;font-size:13.5px}.menu-toggle{display:inline-flex;width:44px;height:44px;padding:0;border:1px solid rgba(154,181,203,.35);border-radius:6px;background:rgba(8,36,62,.62);align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer;position:relative;z-index:22}.menu-toggle span{width:20px;height:2px;display:block;background:rgba(255,255,255,.94)}.mobile-nav{position:absolute;z-index:21;top:calc(100% + 1px);left:-8px;right:-8px;padding:14px 20px 20px;border-top:1px solid rgba(154,181,203,.20);border-bottom:1px solid rgba(154,181,203,.22);background:rgba(3,23,43,.99);box-shadow:0 18px 36px rgba(0,0,0,.28)}.mobile-nav[aria-hidden="false"]{display:grid}.mobile-nav>a:not(.mobile-nav-cta){padding:13px 2px;border-bottom:1px solid rgba(154,181,203,.16);font-size:16px}.mobile-nav-cta{margin-top:16px;min-height:46px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(89,201,250,.55);border-radius:6px;background:linear-gradient(180deg,#0fb8f7 0%,#079ddf 100%);font-size:15px}
  .content-wrap{width:calc(100% - 64px)}.experience-intro{padding:46px 0 36px}.experience-intro-copy{max-width:none}.experience-intro-copy h1{font-size:46px}.experience-intro-copy>p{font-size:18.5px}.experience-intro-copy>p+p{margin-top:10px}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.project-card{min-height:720px;padding:20px 17px 18px}.project-heading{grid-template-columns:58px 1fr;gap:10px;margin-bottom:16px}.project-icon svg{width:54px;height:54px}.project-category{font-size:11.2px}.project-card h3{font-size:19px}.case-block h4{font-size:15.2px}.case-block p{font-size:13.5px;line-height:1.4}.case-targetic{margin-left:-7px;margin-right:-7px;padding-left:8px;padding-right:8px}
  .site-footer{height:auto;min-height:136px}.footer-inner{width:calc(100% - 56px);min-height:136px;padding:18px 0;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"company links" "contact links";gap:6px 22px}.footer-company{grid-area:company;white-space:normal;font-size:12.4px}.footer-contact{grid-area:contact;gap:16px}.contact-reveal{font-size:12.4px}.footer-links{grid-area:links;display:flex;flex-direction:column;gap:9px;align-items:flex-start;font-size:12.4px}
}

@media (max-width:600px){
  .page-shell{min-width:0;overflow:hidden}.site-header{height:74px;position:relative;z-index:30}.header-inner{position:relative;width:calc(100% - 30px);height:100%;display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:14px}.brand img{width:176px;max-width:100%;height:auto}.main-nav,.top-cta{display:none}.menu-toggle{display:inline-flex;width:42px;height:42px;padding:0;border:1px solid rgba(154,181,203,.35);border-radius:6px;background:rgba(8,36,62,.62);align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer;position:relative;z-index:32}.menu-toggle span{width:20px;height:2px;display:block;background:rgba(255,255,255,.94);transition:transform .18s ease,opacity .18s ease}.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-nav{position:absolute;z-index:31;top:calc(100% + 1px);left:-4px;right:-4px;padding:12px 18px 18px;border-top:1px solid rgba(154,181,203,.20);border-bottom:1px solid rgba(154,181,203,.22);background:rgba(3,23,43,.99);box-shadow:0 18px 36px rgba(0,0,0,.28)}.mobile-nav[aria-hidden="false"]{display:grid;gap:0}.mobile-nav>a:not(.mobile-nav-cta){padding:13px 2px;border-bottom:1px solid rgba(154,181,203,.16);font-size:16px;line-height:1.2}.mobile-nav>a.active{color:var(--cyan-bright)}.mobile-nav-cta{margin-top:16px;min-height:46px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(89,201,250,.55);border-radius:6px;background:linear-gradient(180deg,#0fb8f7 0%,#079ddf 100%);font-size:15.5px;font-weight:500}
  .experience-page{padding:0 0 30px}.content-wrap{width:calc(100% - 30px)}.experience-intro{padding:28px 0 26px;display:block}.experience-intro-copy{max-width:none}.experience-intro-copy h1{margin:0 0 11px;font-size:37px;line-height:1.04}.experience-intro-copy>p{font-size:16.5px;line-height:1.42}.experience-intro-copy>p+p{margin-top:9px}.project-examples h2{font-size:23px}.section-rule{width:30px;height:3px;margin:10px 0 15px}.project-grid{grid-template-columns:1fr;gap:14px}.project-card{min-height:0;padding:17px 15px 16px;border-radius:10px}.project-heading{grid-template-columns:54px 1fr;gap:10px;margin-bottom:14px}.project-icon{height:auto}.project-icon svg{width:50px;height:50px}.project-category{font-size:10.7px;line-height:1.22;margin:1px 0 5px}.project-card h3{font-size:20px;line-height:1.12}.case-block{padding:11px 0;margin:0;border-bottom:1px solid rgba(153,180,201,.24)}.project-card .case-block:first-of-type{border-top:1px solid rgba(153,180,201,.24)}.case-block h4{font-size:15.5px;margin:0 0 5px}.case-block p{font-size:14px;line-height:1.4}.case-targetic{margin:0 -4px;padding:12px 7px 13px;border-left-width:3px}.case-last{padding-bottom:1px;border-bottom:0}
  .site-footer{height:auto;min-height:0}.footer-inner{width:calc(100% - 34px);min-height:0;padding:22px 0 26px;display:grid;grid-template-columns:1fr;grid-template-areas:"company" "contact" "links";gap:15px;align-items:start}.footer-company{grid-area:company;display:flex;flex-direction:column;align-items:flex-start;gap:4px;white-space:normal;font-size:12.8px;line-height:1.38}.footer-company strong::after{display:none}.footer-contact{grid-area:contact;display:flex;align-items:center;gap:22px;flex-wrap:wrap;white-space:normal}.contact-reveal{font-size:12.8px}.contact-value{height:17px}.email-value{height:16px}.footer-links{grid-area:links;display:flex;justify-content:flex-start;gap:24px;font-size:12.8px}
}

/* v25: Align corresponding project sections across side-by-side project cards. */
@media (min-width:901px){
  .project-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    grid-template-rows:auto auto auto auto auto;
    column-gap:20px;
    row-gap:0;
    align-items:stretch;
  }
  .project-card{
    grid-row:1 / span 5;
    display:grid;
    grid-template-rows:subgrid;
    min-height:0;
  }
  .project-card .project-heading,
  .project-card .case-block{
    min-height:0;
  }
  .project-card .case-last{
    margin-top:0;
  }
}
@media (min-width:901px) and (max-width:1050px){
  .project-grid{column-gap:14px;row-gap:0}
}

/* v28: Responsive project-card width containment and title scaling.
 * Keeps the three aligned cards side-by-side from tablet landscape upward
 * without horizontal overflow; mobile/tablet portrait remain unchanged. */
.project-title-shy{display:none}
@media (min-width:901px){
  .project-title-shy{display:inline}
  .project-card{grid-template-columns:minmax(0,1fr)}
  .project-heading{grid-template-columns:clamp(54px,4vw,70px) minmax(0,1fr);gap:clamp(10px,.8vw,14px)}
  .project-heading>div:last-child{min-width:0}
  .project-icon svg{width:clamp(54px,4vw,64px);height:clamp(54px,4vw,64px)}
  .project-card h3{font-size:clamp(19px,1.7vw,23px)}
}
