/* Refined brand typography, service architecture and recruitment inquiries. */
.hero{min-height:max(690px,calc(100svh - 104px));padding-bottom:92px}
.hero-side-note{bottom:67px}
.hero-eyebrow{align-items:flex-start;max-width:700px;line-height:1.8}
.hero-eyebrow .tiny-line{flex-shrink:0;margin-top:9px}
.hero-disciplines{display:flex;flex-wrap:wrap;gap:0 8px}
.hero-disciplines>span{white-space:nowrap}
.hero-art-inner{animation:sculpture-settle 3.5s var(--ease) both}
@keyframes sculpture-settle{from{transform:translateY(18px) rotate(-1deg)}to{transform:translateY(0) rotate(0)}}

.name-equation{grid-template-columns:minmax(0,1fr) 60px minmax(0,1fr);gap:17px 30px;padding:49px 0 26px}
.name-part{display:grid;grid-column:1;grid-row:1 / span 3;grid-template-rows:subgrid;justify-self:center;width:max-content;max-width:100%;min-width:0;margin:0;padding:0;text-align:left}
.name-part>*{grid-column:1;text-align:left;min-width:0}
.name-part>.eyebrow{grid-row:1}
.name-part>h3{grid-row:2;font-size:clamp(2.4rem,4.7vw,5.5rem);margin:0;align-self:center}
.name-part>p{grid-row:3}
.extra-part{grid-column:3}
.equation-plus{grid-column:2;grid-row:2;position:static;inset:auto;margin:0;align-self:center;justify-self:center;transform:none;line-height:1;font-size:3.5rem}
.equation-caption{position:static;grid-column:1 / -1;grid-row:4;justify-self:end;margin-top:14px}
.vision-copy,html[lang=en] .vision-copy{display:block;margin-left:0;max-width:1040px}
.vision-copy h3{margin:0;text-wrap:pretty}
.vision-copy>p{max-width:900px;margin-top:24px;font-size:1rem;line-height:2.1}
.footer-bottom{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);column-gap:24px;align-items:center}
.footer-bottom .brand{grid-column:1;width:fit-content}
.footer-bottom>.copyright{grid-column:2;justify-self:center;margin:0;text-align:center;white-space:nowrap}
.home-page .site-footer{padding-top:0;padding-bottom:36px}
.business-row{padding:38px 0;align-items:center}
.business-number{align-self:start}
.business-detail{align-self:center;padding-top:0}

.solution-label .solution-pillar{font-size:clamp(1.4rem,2.5vw,2.3rem);line-height:1.3;letter-spacing:-.035em;color:#6b52d8;margin:-10px 0 22px}
.solution-offerings{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:29px}
.solution-offerings>a{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:10px;border:1px solid var(--light-line);padding:23px 23px 50px;background:#ededf0;transition:background .25s,border-color .25s}
.solution-offerings>a:hover{background:#e8e4f6;border-color:#8674c8}
.solution-offerings .eyebrow{font-size:.6875rem;color:#68519a;letter-spacing:.1em}
.solution-offerings strong{font-weight:500;font-size:1.125rem;line-height:1.65}
.solution-offerings a>span:not(.eyebrow):not(.sr-only){font-size:.875rem;line-height:1.8;color:#616572}
.solution-offerings svg{width:20px;height:20px;position:absolute;right:21px;bottom:19px}

.development-hero{padding-top:35px;padding-bottom:80px;background:radial-gradient(ellipse at 75% 56%,#241c3e 0%,transparent 54%),var(--black)}
.development-hero .page-breadcrumb{margin-bottom:62px}
.development-heading{display:grid;grid-template-columns:1.5fr 1fr;gap:7vw;align-items:end;margin-bottom:67px}
.development-heading .eyebrow{color:#b7a9dd;letter-spacing:.075em;margin-bottom:29px}
.development-heading h1{font-size:clamp(2.5rem,4.45vw,4.9rem);line-height:1.5;letter-spacing:-.025em;font-weight:500}
.development-summary{padding-bottom:9px;max-width:420px}
.development-marker{display:block;width:36px;height:3px;background:var(--electric);margin-bottom:24px}
.development-summary>p{font-size:1rem;line-height:2.1;color:#b6b9c5}
.development-summary .inline-cta{color:var(--paper);border-color:#6b657b;margin-top:24px}
.development-summary .inline-cta:hover{color:var(--electric)}
.architecture{margin:0;padding:34px 30px 25px;border:1px solid #514464;background:rgba(12,14,20,.86)}
.architecture figcaption{display:flex;gap:24px;justify-content:space-between;align-items:start;margin-bottom:33px}
.architecture figcaption .eyebrow{color:#b49fdf;letter-spacing:.08em}
.architecture h2{font-size:1.125rem;font-weight:500;line-height:1.8;margin-top:13px}
.architecture-reference{color:#acabb8;font-size:.75rem;line-height:1.8;flex-shrink:0}
.architecture-grid{display:grid;grid-template-columns:minmax(0,1fr) 35px minmax(0,1.5fr) 35px minmax(0,1fr);align-items:center;gap:13px}
.architecture-node{border-top:1px solid #5d576a;border-bottom:1px solid #33313d;padding:24px 0;min-width:0}
.architecture-node>.eyebrow,.architecture-core>.eyebrow{color:#b09adf;font-size:.6875rem;letter-spacing:.07em}
.architecture-node h3{font-size:1.0625rem;line-height:1.6;margin:17px 0}
.architecture-node ul{list-style:none;padding:0;margin:0;color:#b1b4c0}
.architecture-node li{font-size:.875rem;line-height:1.8;padding:10px 0;border-top:1px solid #292832}
.architecture-core{background:linear-gradient(135deg,#2c2348,#171520);border:1px solid #8d75c9;padding:24px 21px}
.architecture-core h3{font-size:1.55rem;line-height:1.3;letter-spacing:-.025em;margin:15px 0 26px}
.architecture-layer{display:flex;gap:13px;padding:17px 0;border-top:1px solid #534568;align-items:start}
.architecture-layer:last-child{padding-bottom:0}
.architecture-layer>span{color:#b5a6d5;font-size:.6875rem;line-height:1.8;padding-top:4px}
.architecture-layer h4{font-size:.9375rem;line-height:1.7;font-weight:500;margin:0}
.architecture-layer p{font-size:.8125rem;line-height:1.85;color:#b6afc7;margin-top:5px}
.architecture-connector svg{width:100%;height:24px;stroke:#b294ea;fill:none;stroke-width:1.2}
.architecture-foundation{display:flex;justify-content:space-between;align-items:center;gap:23px;margin-top:29px;padding:19px 21px;background:#1b1a23;border-left:2px solid #8c70c0}
.architecture-foundation>.eyebrow{font-size:.6875rem;line-height:1.8;color:#b4a4d5;max-width:130px;flex-shrink:0}
.architecture-foundation ul{display:flex;flex-wrap:wrap;gap:9px 25px;list-style:none;padding:0;margin:0}
.architecture-foundation li{font-size:.8125rem;line-height:1.8;color:#c5c2cd}
.architecture-caption{color:#a6a7b4;font-size:.875rem;line-height:1.95;margin-top:21px;max-width:990px}
.development-section-heading{display:grid;grid-template-columns:1fr 2fr;gap:5vw;align-items:start;margin-bottom:51px}
.development-section-heading>.section-index{padding-top:8px;color:#6a6979}
.development-section-heading>h2{font-size:clamp(1.9rem,3.4vw,3.4rem);line-height:1.6;letter-spacing:-.025em}
.capability-list{border-top:1px solid var(--light-line)}
.capability-row{display:grid;grid-template-columns:40px 1fr 1.1fr;gap:3vw;align-items:start;padding:40px 0;border-bottom:1px solid var(--light-line)}
.capability-index{font-size:.75rem;color:#78678d;padding-top:3px}
.capability-row .eyebrow{color:#685784;font-size:.6875rem;letter-spacing:.08em}
.capability-row h3{font-size:1.4rem;line-height:1.8;margin-top:16px;font-weight:500}
.capability-row>div>p:not(.eyebrow){font-size:1rem;line-height:2;color:#616572}
.capability-examples{display:block;font-size:.8125rem;line-height:1.85;color:#716881;margin-top:22px}
.development-process .development-section-heading>.section-index{color:#b2a4c9}
.development-stages{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.development-stages li{padding:28px 27px 0 0;min-width:0}
.development-stages li+li{padding-left:27px;border-left:1px solid var(--line)}
.development-stages .section-index{color:#b79be2}
.development-stages h3{font-size:clamp(1.5rem,2.45vw,2.8rem);letter-spacing:-.04em;line-height:1.3;margin:15px 0 24px}
.development-stages h4{font-size:1rem;line-height:1.8;margin:0 0 13px;font-weight:500}
.development-stages p{font-size:1rem;line-height:2;color:#a8adbb}
.development-principle{display:grid;grid-template-columns:1fr 2fr;gap:5vw;border-top:1px solid var(--line);padding-top:33px;margin-top:57px}
.development-principle>.eyebrow{color:#baa7d8;line-height:1.8;font-size:.6875rem;padding-top:5px}
.development-principle>p{font-size:1rem;line-height:2;color:#b0b4c1;max-width:810px}
.development-contact{display:grid;grid-template-columns:1.4fr 1fr;gap:7vw;align-items:center}
.development-contact .eyebrow{color:#6a558c}
.development-contact h2{font-size:clamp(1.9rem,3.4vw,3.5rem);line-height:1.65;margin:27px 0 21px}
.development-contact p{font-size:1rem;line-height:2;color:#646977;max-width:610px}
.development-email{position:relative;padding:25px 0 30px;border-top:1px solid #857b9b;border-bottom:1px solid #857b9b;min-width:0}
.development-email>span{font-size:.8125rem;color:#676071;line-height:1.8}
.development-email>strong{display:block;font-weight:400;font-size:clamp(1.2rem,2vw,2rem);line-height:1.6;letter-spacing:-.035em;margin-top:14px;overflow-wrap:anywhere;padding-right:31px}
.development-email>svg{position:absolute;right:0;bottom:37px;width:22px;height:22px;transition:transform .25s}
.development-email:hover{color:#6549e1}
.development-email:hover svg{transform:translate(3px,-3px)}
.inquiry{margin-top:75px;display:grid;grid-template-columns:1fr 1.65fr;gap:6vw;padding-top:40px;border-top:2px solid #7057ff;scroll-margin-top:35px}
.inquiry-intro .eyebrow{color:#6a558c;letter-spacing:.07em}
.inquiry-intro h2{font-size:clamp(1.5rem,2.3vw,2.4rem);line-height:1.8;font-weight:500;margin:22px 0 20px}
.inquiry-intro>p{font-size:1rem;line-height:2;color:#656973;max-width:370px}
.inquiry-fields{display:grid;grid-template-columns:1fr 1fr;gap:26px 22px}
.form-field{min-width:0}
.form-field-wide{grid-column:1 / -1}
.form-field label{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:.9375rem;font-weight:500;line-height:1.7;margin-bottom:11px}
.form-field label>span{font-size:.6875rem;font-weight:400;color:#6a6280;flex-shrink:0}
.form-field input,.form-field select,.form-field textarea{font:inherit;font-size:1rem;line-height:1.7;color:#24232d;background:#fff;border:1px solid #aaa6b3;border-radius:0;width:100%;padding:13px 14px;min-height:52px}
.form-field textarea{display:block;resize:vertical;min-height:160px}
.form-field select{padding-right:32px}
.form-field input:focus-visible,.form-field select:focus-visible,.form-field textarea:focus-visible{outline:2px solid #7057ff;outline-offset:3px}
.form-field small{display:block;color:#6a6978;font-size:.8125rem;line-height:1.85;margin-top:10px}
.inquiry-help{color:#646573;font-size:.875rem;line-height:1.95;margin-top:25px}
.inquiry-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:22px}
.inquiry-actions .solid-cta{border:0;min-height:54px;margin:0;gap:36px;font-size:1rem}
.inquiry-actions button:disabled{opacity:.5;cursor:default}
.inquiry-status{font-size:.9375rem;line-height:1.9;color:#35604b;margin-top:20px;min-height:1.9em}
.inquiry-status.is-error{color:#9c3f51}
.form-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.report-extension{padding:33px 0;border-top:1px solid var(--light-line)}
.report-extension>.eyebrow{color:#68568b;letter-spacing:.07em}
.report-extension>h2{font-size:1.5rem;line-height:1.75;font-weight:500;margin:18px 0}
.report-extension>p,.report-examples p{font-size:1rem;line-height:2;color:#656973}
.report-examples{padding:0;margin:25px 0 0;list-style:none}
.report-examples li{padding-left:22px;border-left:2px solid #c6bddc}
.report-examples li+li{margin-top:23px}
.report-examples h3{font-size:1.0625rem;line-height:1.8;margin-bottom:9px;font-weight:500}
html[lang=en] .development-heading h1{font-size:clamp(2.5rem,4.6vw,5rem);line-height:1.15;letter-spacing:-.045em}
html[lang=en] .development-section-heading>h2{line-height:1.25}

@media(max-width:1100px){
  .hero{padding-bottom:90px;min-height:690px}
  .name-equation{gap:17px 22px}
  .architecture{padding:28px 23px 22px}
  .architecture-grid{gap:9px;grid-template-columns:minmax(0,1fr) 24px minmax(0,1.4fr) 24px minmax(0,1fr)}
  .architecture-core{padding:22px 16px}
  .architecture-core h3{font-size:1.3rem}
  .architecture-foundation{align-items:start}
  .architecture-foundation ul{gap:8px 18px}
  .development-stages li{padding-right:18px}
  .development-stages li+li{padding-left:18px}
  .solution-offerings{grid-template-columns:1fr}
  .solution-offerings>a{padding-bottom:25px;padding-right:45px}
  .inquiry{grid-template-columns:.8fr 1.65fr;gap:5vw}
}
@media(max-width:760px){
  .hero{min-height:0;padding-top:39px;padding-bottom:65px}
  .hero-eyebrow{margin-bottom:31px;line-height:1.8;letter-spacing:.05em;gap:9px}
  .hero-disciplines{gap:0 7px;max-width:330px}
  .hero-art{top:121px}
  .name-equation{grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr);gap:15px 12px;padding:31px 0 23px}
  .name-part>.eyebrow{font-size:.625rem;letter-spacing:.045em;line-height:1.7}
  .name-part>h3{font-size:clamp(1.15rem,6vw,2rem);margin:0;line-height:1.2;letter-spacing:-.055em}
  .name-part>p{font-size:1rem;line-height:1.9;letter-spacing:0}
  .name-part>p br{display:none}
  .equation-plus{position:static;inset:auto;font-size:1.9rem;margin:0}
  .equation-caption{font-size:.625rem;margin-top:8px;line-height:1.8;letter-spacing:.04em}
  .business-row{padding:28px 0;row-gap:18px;align-items:start}
  .business-detail{align-self:start}
  .vision-main>h2{font-size:clamp(2.25rem,9.7vw,4.5rem);line-height:1.12}
  .vision-copy,html[lang=en] .vision-copy{margin-left:0;margin-top:31px}
  .vision-copy h3{font-size:1.25rem;line-height:1.9}
  .footer-bottom{grid-template-columns:1fr;gap:25px}
  .footer-bottom .brand{grid-column:1;justify-self:center;width:fit-content}
  .footer-bottom>.copyright{grid-column:1;grid-row:2;margin:0}
  .home-page .site-footer{padding-bottom:28px}
  .solution-label .solution-pillar{flex-basis:100%;font-size:1.55rem;margin:0;line-height:1.3}
  .solution-offerings{gap:13px;margin-top:26px}
  .solution-offerings>a{padding:21px 45px 23px 20px}
  .solution-offerings strong{font-size:1.0625rem}
  .development-hero{padding-top:25px;padding-bottom:43px}
  .development-hero .page-breadcrumb{margin-bottom:38px;gap:9px;flex-wrap:wrap}
  .development-heading{display:block;margin-bottom:37px}
  .development-heading .eyebrow{font-size:.6875rem;margin-bottom:22px;letter-spacing:.06em}
  .development-heading h1{font-size:clamp(1.85rem,7.1vw,3.5rem);line-height:1.65;letter-spacing:-.02em}
  .development-summary{margin-top:28px;max-width:none;padding:0}
  .development-marker{width:28px;margin-bottom:20px}
  .development-summary>p{font-size:1rem;line-height:2}
  .development-summary .inline-cta{margin-top:18px}
  .architecture{padding:24px 18px 23px}
  .architecture figcaption{display:block;margin-bottom:25px}
  .architecture figcaption .eyebrow{font-size:.625rem;letter-spacing:.08em}
  .architecture h2{font-size:1.0625rem;line-height:1.85;margin-top:12px}
  .architecture-reference{display:block;font-size:.6875rem;margin-top:10px}
  .architecture-grid{display:flex;flex-direction:column;gap:15px;align-items:stretch}
  .architecture-node{padding:19px 0 8px}
  .architecture-node h3{margin:12px 0;font-size:1.125rem}
  .architecture-node li{font-size:.9375rem;line-height:1.85;padding:8px 0}
  .architecture-connector{display:block;align-self:center;width:32px;height:32px;transform:rotate(90deg)}
  .architecture-connector svg{width:32px;height:32px}
  .architecture-core{padding:23px 17px}
  .architecture-core h3{font-size:1.65rem;margin:15px 0 24px}
  .architecture-layer{gap:11px}
  .architecture-layer h4{font-size:.9375rem}
  .architecture-layer p{font-size:.875rem;line-height:1.9}
  .architecture-foundation{display:block;padding:18px 15px;margin-top:22px}
  .architecture-foundation>.eyebrow{max-width:none;font-size:.625rem}
  .architecture-foundation ul{display:grid;grid-template-columns:1fr 1fr;gap:10px 17px;margin-top:14px}
  .architecture-foundation li{font-size:.8125rem}
  .architecture-caption{font-size:.875rem;line-height:2;margin-top:20px}
  .development-section-heading{display:block;margin-bottom:31px}
  .development-section-heading>.section-index{display:block;padding:0;margin-bottom:24px}
  .development-section-heading>h2{font-size:1.8rem;line-height:1.7}
  .capability-row{grid-template-columns:23px 1fr;gap:17px 14px;padding:28px 0}
  .capability-row>div:last-child{grid-column:2}
  .capability-row h3{font-size:1.25rem;line-height:1.85;margin-top:13px}
  .capability-row .eyebrow{font-size:.625rem;letter-spacing:.055em}
  .capability-examples{margin-top:16px;line-height:1.95}
  .development-stages{grid-template-columns:1fr 1fr;gap:0}
  .development-stages li{padding:25px 18px 29px 0}
  .development-stages li+li{padding-left:18px}
  .development-stages li:nth-child(3){padding-left:0;border-left:0}
  .development-stages li:nth-child(n+3){border-top:1px solid var(--line)}
  .development-stages li:nth-child(even){padding-right:0}
  .development-stages h3{font-size:clamp(1.45rem,5.6vw,2rem);margin:14px 0 20px}
  .development-stages h4{font-size:.9375rem;line-height:1.85}
  .development-stages p{font-size:1rem;line-height:1.95}
  .development-principle{display:block;margin-top:15px;padding-top:25px}
  .development-principle>p{margin-top:18px;line-height:2}
  .development-contact{display:block}
  .development-contact h2{font-size:1.85rem;line-height:1.7;margin-top:22px}
  .development-email{display:block;margin-top:31px;padding:21px 0 24px}
  .development-email>strong{font-size:1.5rem;padding-right:33px;margin-top:12px}
  .development-email>svg{bottom:30px}
  .inquiry{display:block;margin-top:45px;padding-top:29px}
  .inquiry-intro h2{font-size:1.55rem;line-height:1.8;margin:19px 0 16px}
  .inquiry-intro>p{max-width:none}
  .inquiry-form{margin-top:30px}
  .inquiry-fields{grid-template-columns:1fr;gap:23px}
  .inquiry-actions{gap:14px 23px}
  .inquiry-actions .solid-cta{min-height:53px;gap:30px}
  .inquiry-status{margin-top:18px}
  .report-extension{padding:28px 0}
  .report-extension>h2{font-size:1.3rem;line-height:1.85}
  .report-examples li{padding-left:17px}
  html[lang=en] .development-heading h1{font-size:clamp(2rem,8vw,3.2rem);line-height:1.2}
  html[lang=en] .development-section-heading>h2{line-height:1.35}
}
@media(prefers-reduced-motion:reduce){.hero-art-inner{animation:none!important}.development-email>svg,.solution-offerings>a{transition:none!important}}
