/* Technology-led visual layer. Core layouts and form behavior remain in styles.css. */
:root{--night:#09141d;--panel:#10212d;--mint:#afead5;--blue:#9dc4f2;--ice:#d6e7ed}
body{overflow-x:clip}
.site-header{background:rgba(9,20,29,.96);color:#e6eeed;border-color:#bedbdc20;backdrop-filter:blur(16px)}
.site-header:before{content:"";position:absolute;left:0;top:0;height:2px;width:var(--scroll-progress,0%);background:var(--mint);z-index:2}
.site-header .button{background:#b1e7d5;color:#0e282b;border-color:#b1e7d5}
.site-header .button:hover{background:#d0f4e7}
.brand img{border:1px solid #b6d8d62b;border-radius:10px}
.hero-shell{position:relative;background:var(--night);color:#eff3ed;overflow:hidden;border-bottom:1px solid #a1d6dc22}
.hero-shell:before{content:"";position:absolute;left:-20%;bottom:-285px;width:140%;height:520px;background-image:linear-gradient(#8bbfc71a 1px,transparent 1px),linear-gradient(90deg,#8bbfc71a 1px,transparent 1px);background-size:70px 70px;transform:perspective(460px) rotateX(63deg);transform-origin:50% 0;mask-image:linear-gradient(transparent,#000 35%,#000);pointer-events:none;animation:grid-drift 22s linear infinite}
.hero{position:relative;grid-template-columns:1.02fr 1fr;gap:50px;padding-block:69px 76px;min-height:730px}
.hero .eyebrow{color:#b4d6d0;font-size:9px;letter-spacing:.17em;display:flex;align-items:center;gap:10px}
.hero-rule{width:25px;height:1px;background:var(--mint)}
.hero h1{font-size:clamp(44px,4.5vw,65px);font-weight:500;line-height:1.07;letter-spacing:-.06em;margin-bottom:30px}
.hero-emphasis{color:#b3dacc}
.hero-intro{color:#d8e3e4;font-size:19px;line-height:1.6;max-width:450px}
.hero-description{color:#9bafba;font-size:14px;max-width:447px}
.hero .project-commitment{border-left:2px solid #88cbb4;padding-left:16px;font-size:16px;font-weight:500;line-height:1.6;color:#d3e8df;margin:0 0 27px;letter-spacing:-.01em}
.hero .button{background:var(--mint);border-color:var(--mint);color:#14302f;box-shadow:0 0 0 0 #afead500;transition:box-shadow .25s,transform .25s,background .25s}
.hero .button:hover{background:#d6f7eb;transform:translateY(-2px);box-shadow:0 0 28px #afead518}
.hero .text-link{color:#d5e5e8}
.hero-footnote{font-size:8px;letter-spacing:.1em;color:#819aa5;gap:10px;margin-top:37px}
.hero-footnote .footnote-cross{font-size:20px;line-height:1;color:#8fbbbc}
.hero-copy>*{animation:hero-enter .9s cubic-bezier(.2,.65,.25,1) both}
.hero-copy>*:nth-child(2){animation-delay:.1s}.hero-copy>*:nth-child(3){animation-delay:.2s}.hero-copy>*:nth-child(4){animation-delay:.3s}.hero-copy>*:nth-child(5){animation-delay:.4s}.hero-copy>*:nth-child(6){animation-delay:.5s}
.architecture{position:relative;min-width:0;background:#0d1d28;border:1px solid #a4c1ce24;border-radius:6px;box-shadow:0 24px 60px #030a1240;transform:perspective(1100px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .25s ease;animation:hero-enter 1.1s .25s backwards}
.architecture-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 23px;border-bottom:1px solid #a4c1ce22;font-size:7px;letter-spacing:.14em;color:#a8c4ce}
.architecture-heading>span:last-child{color:#638595;font-size:6px}
.architecture-stage{padding:13px 12px 8px;overflow:hidden}
.architecture-svg{display:block;width:100%;height:auto;max-height:430px}
.architecture-floor{opacity:.4}
.arch-node rect{fill:#132c3b;stroke:#517083;stroke-width:1;transition:stroke .45s,fill .45s}
.arch-node path{fill:none;stroke:#bed3dd;stroke-width:1.5;stroke-linejoin:round;stroke-linecap:round}
.arch-node text{text-anchor:middle;font-size:9px;letter-spacing:1.1px;fill:#9bb5c2;font-family:"Segoe UI",Arial,sans-serif;stroke:none;transition:fill .45s}
.architecture[data-architecture="technology"] .arch-technology rect,.architecture[data-architecture="digital"] .arch-digital rect,.architecture[data-architecture="operations"] .arch-operations rect{fill:#1a3b48;stroke:#b0ebd3;stroke-width:1.5}
.architecture[data-architecture="technology"] .arch-technology text,.architecture[data-architecture="digital"] .arch-digital text,.architecture[data-architecture="operations"] .arch-operations text{fill:#cfebdf}
.packet{stroke:#64889c;stroke-dasharray:12 120;animation:packet-flow 5.6s linear infinite;opacity:.35}
.packet:nth-child(2n){animation-delay:-2.8s}.packet:nth-child(3n){animation-delay:-1.4s}
.architecture[data-architecture="technology"] .technology-packet,.architecture[data-architecture="digital"] .digital-packet,.architecture[data-architecture="operations"] .operations-packet{stroke:#b9f3d9;opacity:1}
.platform-float{animation:platform-hover 7s ease-in-out infinite;transform-box:fill-box;transform-origin:center}
.platform-outline{stroke-dasharray:26 10 2 10;animation:outline-flow 20s linear infinite;opacity:.45}
.architecture-controls{display:flex;gap:6px;padding:12px 19px 17px}
.architecture-controls button{flex:1;min-height:38px;padding:10px 6px;background:#102633;color:#9db6c1;border:1px solid #a8c8d225;border-radius:3px;font-size:10px;transition:color .2s,border-color .2s,background .2s}
.architecture-controls button[aria-pressed="true"]{background:#b5e8d4;color:#12372f;border-color:#b5e8d4}
.architecture-controls button:hover{border-color:#a9d7c8}
.architecture-caption{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:57px;border-top:1px solid #a4c1ce22;padding:13px 19px}
.architecture-caption p{font-size:9px;line-height:1.6;color:#90abb8;max-width:290px;margin-bottom:0}
#motion-toggle{display:flex;align-items:center;gap:6px;flex-shrink:0;border:0;background:none;color:#b4c9cf;font-size:8px;min-height:32px;padding:6px 0}
#motion-toggle:hover{color:var(--mint)}.motion-symbol{font-size:12px;line-height:1;letter-spacing:-.2em}
.expertise-strip{background:#101f28;color:#b2c6cd;border-color:#adc7d51a}
.strip-inner{min-height:77px}.strip-inner>span{color:#618594}.strip-inner p{font-size:11px}.strip-inner i{color:#53848f}
.impact-section{padding-block:79px 67px;background:#eef1ec;border-bottom:1px solid #d2dbd2}
.impact-section .section-heading{margin-bottom:35px}
.impact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;align-items:start}
.impact-card{position:relative;min-width:0;padding:27px 24px 23px;background:#0f2330;color:#e9f1ec;border:1px solid #58757c4a;border-radius:4px;overflow:hidden;box-shadow:0 5px 14px #142b3710}
.impact-card:before{position:absolute;content:"";top:0;left:24px;width:42px;height:2px;background:var(--mint)}
.impact-category{font-size:7px;font-weight:600;letter-spacing:.13em;color:#8bafbe}
.impact-value{font-size:56px;line-height:1.18;letter-spacing:-.065em;font-weight:400;color:#c4eddd;margin:25px 0 22px;font-variant-numeric:tabular-nums;white-space:nowrap}
.impact-value .percent{font-size:30px;letter-spacing:-.04em;margin-left:2px}
.impact-card h3{font-size:17px;letter-spacing:-.025em;font-weight:500;margin-bottom:12px;line-height:1.35}
.impact-card>p{font-size:12px;line-height:1.75;color:#a5bdc8;min-height:84px;margin-bottom:19px}
.research-source{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:10px;color:#cce1df;min-height:37px;border-top:1px solid #abc8d328;padding-top:7px}
.research-source:hover{color:var(--mint);text-decoration:underline;text-underline-offset:4px}
.research-source span{font-size:18px}
.impact-card details{border-top:1px solid #abc8d328;margin-top:10px;padding-top:9px}
.impact-card summary{font-size:9px;color:#94acb7;min-height:25px;cursor:pointer;padding:7px 0;list-style-position:inside}
.impact-card summary:hover{color:#e3eeeb}
.impact-card details p{font-size:11px;line-height:1.7;color:#bdd0d8;margin:11px 0 0}
.research-note{font-size:11px;line-height:1.8;color:#647369;margin:22px 0 4px;max-width:915px}
.services-grid{gap:14px;border:0}
.service-item{position:relative;border:1px solid #d4ded3;border-radius:4px;background:#f2f4ee;overflow:hidden;transition:transform .3s,border-color .3s,box-shadow .3s}
.service-item:before{content:"";position:absolute;left:0;top:0;width:100%;height:2px;background:#4d8c80;transform:scaleX(0);transform-origin:left;transition:transform .4s}
.service-item:hover{transform:translateY(-4px);border-color:#94b5a9;box-shadow:0 14px 28px #213b350b}
.service-item:hover:before{transform:scaleX(1)}
.service-category{display:flex;align-items:center;gap:8px}.service-category:before{content:"+";font-size:15px;line-height:1;font-weight:400;color:#568d7c}
.crm-offering{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:25px;padding:35px 32px;border:1px solid #b7cfc3;border-left:3px solid #5e9d89;background:#e7eee6;border-radius:3px}
.crm-offering .eyebrow{font-size:8px;margin-bottom:20px;color:#587766}
.crm-offering h3{font-size:30px;font-weight:400;line-height:1.25;letter-spacing:-.035em;margin-bottom:0}
.crm-offering>div>p:not(.eyebrow){font-size:13px;line-height:1.8;color:#5d7066;margin-bottom:15px}
.crm-offering .text-link{font-size:12px;padding-bottom:0}
.examples-section{padding-block:75px;background:#eaf0eb;border-top:1px solid #d4ded5}
.examples-section .section-heading>p strong{font-weight:600;color:#3f5b4f}
.audience-controls{display:flex;gap:10px;margin-bottom:17px;flex-wrap:wrap}
.audience-controls button{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:49px;padding:13px 19px;border:1px solid #afc5b7;border-radius:3px;background:transparent;color:#416153;font-size:12px;transition:background .2s,color .2s}
.audience-controls button span{font-size:9px;letter-spacing:.08em;opacity:.75}
.audience-controls button[aria-pressed="true"]{background:#143c3c;color:#e7f2e9;border-color:#143c3c}
.audience-controls button:hover{border-color:#143c3c}
.audience-description{font-size:12px;color:#65776b;line-height:1.7;margin-bottom:27px}
.example-list{border-top:1px solid #bccfc1}
.example-item{border-bottom:1px solid #bccfc1}
.example-item summary{position:relative;display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:69px;padding:18px 43px 18px 0;cursor:pointer;list-style:none}
.example-item summary::-webkit-details-marker{display:none}
.example-item summary:after{content:"+";position:absolute;right:3px;top:50%;transform:translateY(-50%);font-size:25px;line-height:1;color:#628776;font-weight:300}
.example-item[open] summary:after{content:"−"}
.example-item summary>span{font-size:18px;font-weight:500;letter-spacing:-.02em;color:#284c3d}
.example-item summary>small{font-size:12px;color:#6d8173;max-width:360px;text-align:right}
.example-copy{padding:0 43px 23px 0;max-width:900px}
.example-copy p{font-size:14px;line-height:1.85;color:#4c6656;margin-bottom:0}
.example-item[open] .example-copy{animation:hero-enter .3s ease both}
.examples-bottom{display:flex;align-items:center;justify-content:space-between;gap:45px;margin-top:24px}
.examples-bottom>p{font-size:11px;line-height:1.8;color:#65796a;max-width:630px;margin-bottom:0}
.examples-bottom .text-link{white-space:nowrap}
.solutions-section{position:relative;background:#0b1d28;color:#e5eeed;overflow:hidden;border-block:1px solid #b7d7d528}
.solutions-section:before{content:"";position:absolute;right:-120px;top:25px;width:460px;height:460px;border:1px solid #6b9cac1a;border-radius:50%;pointer-events:none}
.solutions-section:after{content:"";position:absolute;right:-170px;top:-25px;width:560px;height:560px;border:1px solid #6b9cac10;border-radius:50%;pointer-events:none}
.solutions-layout{position:relative;z-index:1}
.solutions-intro .eyebrow{color:#8eafba}.solutions-intro>p:not(.eyebrow){color:#95acb7}
.service-panel{background:#142b38;border-color:#a6c9d226;box-shadow:0 20px 40px #030c151f}
.service-tabs button{border-color:#779fb052;color:#b5cad3}.service-tabs button[aria-selected="true"]{background:var(--mint);color:#173b35;border-color:var(--mint)}
.service-panel h3{color:#e4eeed}.panel-kicker{color:#95bcbe}.service-panel>p,.solution-rows p{color:#a2bdc8}.light-link{color:#c1eddb}
.holdings-details article{transition:padding-left .3s,border-color .3s}
.holdings-details article:hover{padding-left:10px;border-bottom-color:#8fae9b}
.expansion-section{background:#e7ede6;position:relative}
.expansion-areas li{transition:background .3s,color .3s;padding-left:22px!important}
.expansion-areas li:hover{background:#15372f;color:#d8efdf}
.contact-section{background:#0e2430;color:#e4eeea;border-color:#a0c7d023}
.contact-copy .eyebrow{color:#8fb0ba}.contact-copy>p:not(.eyebrow){color:#a4b9c4}.contact-copy #contact-email{color:#c3e9db;border-bottom-color:#6a99865c}
.contact-detail{border-top-color:#a9ccd52d}.contact-detail>span{color:#88a9b7}.contact-detail p{color:#acc1ca}
.inquiry-card{color:var(--ink);box-shadow:0 18px 42px #04121d3b;border-color:#b0cccf4d}
.site-footer{background:#08141d;color:#dce8e8}
.footer-top>p{color:#92aab7}.footer-top nav{color:#abc0ca}.footer-bottom{color:#7c9cab}
.motion-enabled [data-reveal]{opacity:0;transform:translateY(23px);transition:opacity .8s cubic-bezier(.2,.6,.25,1),transform .8s cubic-bezier(.2,.6,.25,1);transition-delay:var(--reveal-delay,0ms)}
.motion-enabled [data-reveal].is-visible{opacity:1;transform:translateY(0)}
.motion-paused .packet,.motion-paused .platform-float,.motion-paused .platform-outline,.motion-paused .hero-shell:before{animation-play-state:paused}
.motion-paused .architecture{transform:none!important}
.motion-paused [data-reveal]{transition:none}
.motion-paused .service-item:hover{transform:none}
@keyframes hero-enter{from{opacity:0;transform:translateY(19px)}to{opacity:1;transform:translateY(0)}}
@keyframes platform-hover{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@keyframes packet-flow{to{stroke-dashoffset:-264}}
@keyframes outline-flow{to{stroke-dashoffset:-288}}
@keyframes grid-drift{to{background-position:0 70px,0 70px}}
@media(max-width:1180px){
  .hero{gap:35px;min-height:680px}.hero h1{font-size:54px}.hero-intro{font-size:18px}
  .architecture-heading{padding-inline:19px}.architecture-heading>span:last-child{font-size:5px}
  .impact-grid{gap:11px}.impact-card{padding:25px 19px 20px}.impact-value{font-size:49px}.impact-card h3{font-size:16px}.impact-card>p{min-height:105px}
}
@media(max-width:900px){
  .examples-section{padding-block:62px}.example-item summary>span{font-size:16px}.example-item summary>small{font-size:11px;max-width:250px}.examples-bottom{gap:30px}.examples-bottom .text-link{font-size:11px}
  .crm-offering{gap:30px;padding:29px 26px}.crm-offering h3{font-size:26px}
  .hero{gap:27px;padding-block:50px 55px;min-height:610px}.hero h1{font-size:43px}.hero .eyebrow{font-size:7px;letter-spacing:.12em}.hero-intro{font-size:16px}.hero-description{font-size:12px}
  .hero .text-link{font-size:11px}.hero-footnote{font-size:6px;letter-spacing:.07em}.architecture-heading{padding:16px 15px;font-size:6px}.architecture-heading>span:last-child{display:none}
  .architecture-stage{padding:12px 6px}.architecture-controls{padding:9px 12px 13px;gap:5px}.architecture-controls button{font-size:8px;padding:9px 4px;min-height:35px}
  .architecture-caption{gap:12px;padding:11px 12px}.architecture-caption p{font-size:8px}.architecture-caption #motion-toggle{font-size:7px}
  .impact-section{padding-block:62px 48px}.impact-grid{grid-template-columns:repeat(2,1fr);gap:14px}.impact-card{padding:27px}.impact-value{font-size:57px}.impact-card>p{font-size:13px;min-height:68px}.impact-card h3{font-size:18px}.impact-category{font-size:8px}.research-source{font-size:11px}.impact-card summary{font-size:10px}
}
@media(max-width:700px){
  .examples-section{padding-block:52px}.audience-controls{gap:8px}.audience-controls button{width:100%;font-size:12px;padding:14px 17px}.audience-description{font-size:12px;margin-bottom:21px}
  .example-item summary{display:block;min-height:74px;padding:19px 35px 19px 0}.example-item summary>span{display:block;font-size:17px;line-height:1.45}.example-item summary>small{display:block;text-align:left;max-width:100%;font-size:11px;line-height:1.7;margin-top:4px}
  .example-copy{padding-right:18px}.example-copy p{font-size:14px}.examples-bottom{display:block}.examples-bottom>p{font-size:11px}.examples-bottom .text-link{white-space:normal;margin-top:7px;font-size:12px}
  .crm-offering{grid-template-columns:1fr;gap:24px;padding:27px}.crm-offering h3{font-size:28px}.crm-offering>div>p:not(.eyebrow){font-size:14px}.hero .project-commitment{font-size:15px}
  .site-header nav{background:#0c1c27;color:#dce7e9;border-bottom-color:#aecbd627}.site-header nav>a:not(.button){border-bottom-color:#abcbd41f}
  .menu-toggle{color:#d4e6e8}.menu-lines,.menu-lines:after,.menu-toggle[aria-expanded="true"] .menu-lines:before,.menu-toggle[aria-expanded="true"] .menu-lines:after{border-color:#b7d9d1}
  .hero{grid-template-columns:1fr;gap:34px;min-height:0;padding-block:43px 45px}.hero h1{font-size:clamp(37px,8.4vw,55px);margin-bottom:24px}.hero .eyebrow{font-size:8px;letter-spacing:.1em}
  .hero-intro{font-size:18px;max-width:100%}.hero-description{font-size:14px;max-width:100%}.hero-actions{gap:11px 19px}.hero-footnote{font-size:7px;margin-top:24px}.hero-footnote .footnote-cross{font-size:18px}
  .hero-shell:before{height:650px;bottom:-380px;background-size:48px 48px}.architecture{max-width:540px;width:100%;margin-inline:auto}.architecture-heading{font-size:8px;padding:18px}.architecture-heading>span:last-child{display:block;font-size:5px}
  .architecture-stage{padding:12px 7px 6px}.architecture-controls{padding:10px 14px 15px}.architecture-controls button{font-size:10px;min-height:41px}.architecture-caption{padding:12px 14px;min-height:61px}
  .architecture-caption p{font-size:9px}.architecture-caption #motion-toggle{font-size:8px}.architecture-svg{max-height:none}
  .strip-inner p{font-size:11px}.impact-section{padding-block:52px 43px}.impact-grid{gap:12px}.impact-card{padding:22px 17px 17px}.impact-card:before{left:17px;width:30px}
  .impact-category{font-size:6px;letter-spacing:.08em}.impact-value{font-size:43px;margin-block:22px 18px}.impact-value .percent{font-size:23px}.impact-card h3{font-size:15px;min-height:40px}
  .impact-card>p{font-size:11px;min-height:112px;line-height:1.75;margin-bottom:12px}.research-source{font-size:9px}.research-source span{font-size:16px}.impact-card summary{font-size:9px}.impact-card details p{font-size:10px}
  .research-note{font-size:11px;margin-top:20px}.impact-section .text-link{font-size:11px;gap:15px}.services-grid{gap:13px}.service-item{padding:27px}.service-item>p:not(.service-category){font-size:14px}
  .expansion-areas li{padding-left:17px!important}.solutions-section:before,.solutions-section:after{display:none}.inquiry-card{box-shadow:none}
}
@media(max-width:360px){
  .hero h1{font-size:34px}.hero .eyebrow{font-size:7px}.hero-rule{width:17px}.hero-footnote{font-size:6px}.architecture-heading>span:last-child{font-size:4px}
  .architecture-caption p{font-size:8px}.architecture-caption #motion-toggle{font-size:7px}.architecture-controls button{font-size:9px}
  .impact-grid{grid-template-columns:1fr}.impact-card{padding:26px}.impact-category{font-size:8px}.impact-value{font-size:56px}.impact-card h3{font-size:19px;min-height:0}.impact-card>p{font-size:13px;min-height:0}.research-source{font-size:11px}.impact-card summary{font-size:10px}.impact-card details p{font-size:12px}
}
@media(prefers-reduced-motion:reduce){
  .hero-copy>*,.architecture,.platform-float,.packet,.platform-outline,.hero-shell:before{animation:none!important}.architecture{transform:none!important}
  .motion-enabled [data-reveal]{opacity:1;transform:none;transition:none}.service-item:hover{transform:none}.holdings-details article:hover{padding-left:0}
}
@media print{.hero-shell,.impact-card,.contact-section{background:white!important;color:#203c38!important}.hero-copy>*,[data-reveal]{opacity:1!important;transform:none!important}.architecture,.architecture-controls,#motion-toggle{display:none!important}.hero{display:block;min-height:0}.hero h1,.hero-emphasis,.hero-intro,.hero-description,.hero .eyebrow,.impact-card>p,.impact-value,.research-source{color:#203c38!important}.impact-grid{grid-template-columns:repeat(2,1fr)}.impact-card{break-inside:avoid;box-shadow:none}.impact-card details{display:block}.hero-shell:before{display:none}}
