/* Institutional presentation; the commercial D-Atlas preview keeps its own layout. */
.institutional-page {
  --shell:1184px;
  --ink:#182623;
  --muted:#586761;
  --paper:#f5f7f6;
  font-family:"Segoe UI",Arial,Helvetica,sans-serif;
  color:var(--ink);
  background:var(--paper);
}
.institutional-page .container { width:min(var(--shell),calc(100% - 96px)); }
.institutional-page .section { padding:72px 0; }
.institutional-page h1,.institutional-page h2,.institutional-page h3 { font-family:inherit; font-style:normal; font-weight:600; letter-spacing:-.045em; text-wrap:balance; }
.institutional-page h2 { font-size:clamp(30px,3vw,40px); line-height:1.15; }
.institutional-page .eyebrow { font-size:10px; letter-spacing:.12em; }
.institutional-page .section-heading .eyebrow { color:#426858; margin-bottom:12px; }
.institutional-page .section-intro { margin-top:16px; font-size:15px; line-height:1.7; }
.institutional-page .section-top { margin-bottom:30px; gap:24px; }
.institutional-page .text-link { font-size:13px; min-height:44px; }
.institutional-page .button { border-radius:8px; font-size:13px; padding:15px 20px; gap:18px; min-height:50px; }
.institutional-page .site-header { background:#0d1519f5; border-color:#ffffff0b; backdrop-filter:blur(16px); }
.institutional-page .header-inner { min-height:76px; gap:24px; }
.institutional-page .brand span { font-size:22px; }
.institutional-page .brand img { width:38px; height:30px; }
.institutional-page .site-header #main-nav { gap:26px; }
.institutional-page .site-header #main-nav a { font-size:12px; }
.institutional-page .site-header #main-nav a[href="#contato"] { padding:10px 15px; border:1px solid #739a87; border-radius:7px; color:#deeee6; }
.institutional-page .language-switcher a { min-width:32px; font-size:10px; }

.institutional-page .hero { padding:66px 0 76px; background:radial-gradient(ellipse at 83% 44%,#203d354d,transparent 48%),#0d1519; }
.institutional-page .hero-grid { grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr); gap:28px; }
.institutional-page .hero-copy .eyebrow { color:#bbd7ca; margin-bottom:24px; font-size:10px; letter-spacing:.08em; }
.institutional-page h1 { font-size:clamp(44px,4.9vw,68px); line-height:1.07; letter-spacing:-.055em; max-width:720px; }
.institutional-page h1 span { color:#b1dccd; margin-top:8px; }
.institutional-page .hero-description { max-width:470px; margin-top:24px; color:#bac8c5; font-size:17px; line-height:1.65; }
.institutional-page .hero-actions { margin-top:30px; gap:12px; }
.institutional-page .hero-actions .button-secondary { border-color:transparent; }
.institutional-page .hero-actions .button-secondary:hover { background:#ffffff08; }
.institutional-page .hero-visual { position:relative; padding:0; justify-self:end; max-width:420px; }
.institutional-page .hero-visual::before { content:""; position:absolute; inset:18%; border-radius:50%; background:#70aa8d; filter:blur(70px); opacity:.11; pointer-events:none; }
.institutional-page .relationship-art { position:relative; margin:0; }
.institutional-page .hero-visual figcaption { color:#92aaa0; text-align:center; font-size:10px; letter-spacing:.02em; margin:0; }

.institutional-page .services { background:var(--paper); }
.institutional-page .service-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.institutional-page .service:first-child { grid-column:span 2; background:linear-gradient(120deg,#e7f0eb,#f9fbf9); border-color:#cddfd3; }
.institutional-page .service:first-child h3 { max-width:none; font-size:26px; }
.institutional-page .service:first-child p { max-width:480px; font-size:14px; }
.institutional-page .service { display:flex; flex-direction:column; gap:0; padding:26px 23px; background:#fff; border:1px solid #e3eae6; border-radius:14px; }
.institutional-page .service-symbol { display:grid; place-items:center; width:44px; height:44px; background:#edf4ef; color:#346b53; border-radius:12px; margin-bottom:27px; }
.institutional-page .service-symbol svg { width:28px; height:28px; }
.institutional-page .service h3 { font-size:20px; line-height:1.3; letter-spacing:-.025em; }
.institutional-page .service p { font-size:13px; line-height:1.7; margin-top:12px; color:#5b6a63; }

.institutional-page .product { padding:0 0 72px; background:var(--paper); overflow:visible; }
.institutional-page .product-shell { padding:48px 52px; border-radius:24px; background:radial-gradient(ellipse at 90% 20%,#31574955,transparent 65%),#10201f; }
.institutional-page .product-grid { grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); gap:36px; }
.institutional-page .product-copy>.eyebrow { color:#aac9ba; margin-bottom:22px; }
.institutional-page .product-name { font-size:48px; font-weight:600; color:#c0e7d6; margin-bottom:12px; letter-spacing:-.05em; }
.institutional-page .product h2 { font-size:30px; letter-spacing:-.035em; }
.institutional-page .product .section-intro { color:#bacdc4; font-size:15px; max-width:420px; }
.institutional-page .product-actions { margin-top:26px; gap:10px; }
.institutional-page .product-actions .button { font-size:12px; padding:13px 16px; }
.institutional-page .product-actions .atlas-link { border-color:#648e7b; color:#edf7f1; }
.institutional-page .product-network { align-self:center; }
.institutional-page .product-network svg { width:100%; }
.institutional-page .product-network figcaption { font-size:10px; text-align:center; color:#9cb7aa; margin-top:5px; }

.institutional-page .experience { background:#fff; border:0; }
.institutional-page .experience-grid { grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); gap:40px 96px; }
.institutional-page .profile-column { display:block; }
.institutional-page .profile-role { font-size:14px; color:#3d6956; margin-top:10px; }
.institutional-page .profile-column .section-intro { max-width:560px; }
.institutional-page .profile-column>.text-link { margin-top:12px; color:#356b52; }
.institutional-page .portrait { width:120px; height:140px; margin:20px 0; border-radius:10px; }
.institutional-page .experience-content { align-self:center; }
.institutional-page .experience-list-label { margin:0 0 18px; font-size:10px; color:#5b6b63; }
.institutional-page .career-list { display:grid; gap:17px; }
.institutional-page .career-list>div { display:flex; align-items:baseline; justify-content:space-between; gap:18px; }
.institutional-page .career-list h3 { font-size:18px; letter-spacing:-.025em; white-space:nowrap; }
.institutional-page .career-list p { font-size:12px; color:#66766d; text-align:right; }
.institutional-page .experience-note { font-size:10px; color:#66766d; margin-top:18px; }
.institutional-page .expertise-strip { display:flex; align-items:center; gap:24px; grid-column:1 / -1; padding:20px 24px; background:#f4f7f5; border:1px solid #e5ece7; border-radius:14px; scroll-margin-top:110px; }
.institutional-page .profile-credentials { grid-column:1 / -1; min-width:0; }
.institutional-page .credentials-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:22px; }
.institutional-page .credentials-heading h3 { font-size:17px; letter-spacing:-.02em; }
.institutional-page .credentials-heading .text-link { color:#4c6d5b; font-size:12px; }
.institutional-page .credential-list { list-style:none; display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:24px; padding:0; margin:0; }
.institutional-page .credential-list li { min-width:0; }
.institutional-page .credential-item { display:flex; flex-direction:column; align-items:center; gap:10px; text-align:center; height:100%; padding:4px; border-radius:6px; }
.institutional-page .credential-item img { width:80px; height:80px; object-fit:contain; }
.institutional-page .credential-item strong { font-size:12px; line-height:1.5; font-weight:500; }
.institutional-page .credential-item>span { font-size:10px; color:#607066; margin-top:auto; }
.institutional-page .credential-item:hover strong { color:#286047; text-decoration:underline; text-underline-offset:3px; }
.institutional-page .credential-history { margin-top:20px; }
.institutional-page .credential-history summary { display:list-item; width:fit-content; padding:10px 0; min-height:44px; font-size:12px; color:#5b6b61; cursor:pointer; }
.institutional-page .credential-history ul { list-style:none; display:grid; gap:6px; padding:0; margin:4px 0 0; }
.institutional-page .credential-history li { display:flex; align-items:center; gap:8px 24px; flex-wrap:wrap; }
.institutional-page .credential-history .text-link { white-space:normal; font-size:12px; }
.institutional-page .credential-history .text-link svg { flex-shrink:0; }
.institutional-page .credential-history li>span { font-size:11px; color:#67746b; }
.institutional-page .training-summary { min-width:0; }
.institutional-page .training-summary h3 { font-size:16px; letter-spacing:-.02em; }
.institutional-page .training-summary p { font-size:12px; color:#5f7166; margin-top:5px; }
.institutional-page .expertise-strip>.text-link { margin-left:auto; color:#2c6449; font-size:12px; white-space:normal; }
.institutional-page .expertise-strip>.text-link svg { flex-shrink:0; }

.institutional-page .publications { background:var(--paper); }
.institutional-page .publication-grid { gap:20px; }
.institutional-page .publication { border:1px solid #e1e8e3; border-radius:16px; box-shadow:none; background:#fff; }
.institutional-page .publication-carousel.is-enhanced .publication { display:block; min-height:0; }
.institutional-page .publication-copy { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); column-gap:48px; row-gap:20px; padding:30px 36px; }
.institutional-page .publication-meta { grid-column:1 / -1; justify-content:flex-start; gap:16px; font-size:11px; }
.institutional-page .publication-meta>span { font-size:10px; padding:5px 9px; border-radius:5px; background:#edf4ef; color:#3c6b51; letter-spacing:.06em; }
.institutional-page .publication h3 { font-size:clamp(23px,2.5vw,30px); line-height:1.2; letter-spacing:-.035em; margin:0; max-width:520px; }
.institutional-page .publication-copy>p { font-size:14px; line-height:1.75; margin:0; max-width:500px; }
.institutional-page .publication-bottom { grid-column:1 / -1; border:0; padding:4px 0 0; margin:0; flex-direction:row; align-items:center; }
.institutional-page .publication-byline { color:#66756c; font-size:11px; }
.institutional-page .publication-read { color:#2f654c; background:transparent; padding:8px 0; min-height:44px; font-size:12px; }
.institutional-page .publication-read:hover { color:#1b4331; background:transparent; text-decoration:underline; text-underline-offset:4px; }
.institutional-page .carousel-controls { grid-template-columns:1fr auto 1fr; gap:18px; margin-top:16px; }
.institutional-page .carousel-counter { font-size:10px; color:#5a6b60; }
.institutional-page .carousel-pages { display:flex; gap:0; grid-row:auto; grid-column:auto; }
.institutional-page .carousel-page { border:0; background:transparent; width:28px; height:44px; padding:0; }
.institutional-page .carousel-page span { display:none; }
.institutional-page .carousel-page::after { content:""; width:16px; height:4px; border-radius:3px; background:#cbd7ce; }
.institutional-page .carousel-page[aria-current="true"]::after { background:#31694c; }
.institutional-page .carousel-page:hover::after { background:#668d74; }
.institutional-page .carousel-arrows { grid-column:auto; grid-row:auto; gap:8px; }
.institutional-page .carousel-arrows button { width:44px; height:44px; border-radius:8px; background:#fff; }
.institutional-page .publication-language-note { margin:-10px 0 22px; font-size:12px; }

.institutional-page .contact { background:radial-gradient(ellipse at 10% 30%,#244a3e55,transparent 65%),#0e1c1b; color:#eff7f1; }
.institutional-page .contact-grid { grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); gap:80px; }
.institutional-page .contact .section-heading .eyebrow { color:#b0d1bd; }
.institutional-page .contact .section-intro { color:#b6cac0; max-width:470px; }
.institutional-page .contact .button { background:var(--mint); border-color:var(--mint); color:#12241c; margin-top:24px; }
.institutional-page .contact .button:hover { background:#d0ecdf; }
.institutional-page .contact :focus-visible { outline-color:var(--mint); }
.institutional-page .contact-details { border:0; padding:0; }
.institutional-page .contact-details>.eyebrow,.institutional-page .sales-contact .eyebrow { color:#9bb9a7; font-size:10px; margin-bottom:8px; }
.institutional-page .email-link { font-size:clamp(18px,2vw,24px); text-decoration:none; letter-spacing:-.035em; color:#f2f7f3; }
.institutional-page .email-link:hover { text-decoration:underline; text-underline-offset:4px; }
.institutional-page .copy-email { color:#c5d8cb; border-color:#577062; border-radius:6px; padding:8px 12px; font-size:10px; margin-top:12px; min-height:36px; }
.institutional-page .copy-email:hover { background:#ffffff0a; }
.institutional-page .copy-status { color:#b1dccd; min-height:0; margin-top:4px; }
.institutional-page .sales-contact { margin:20px 0 0; }
.institutional-page .site-footer { background:#0d1519; padding-top:26px; }
.institutional-page .footer-top { padding-bottom:20px; gap:24px; flex-direction:row; }
.institutional-page .footer-top>.text-link { display:inline-flex; font-size:11px; }
.institutional-page .footer-top>.text-link:first-of-type { margin-left:auto; }
.institutional-page .footer-bottom { font-size:10px; padding:18px 0; border-color:#ffffff12; }

@media(min-width:1600px) {
  .institutional-page .hero { padding:84px 0 92px; }
  .institutional-page .hero-grid { gap:48px; }
}
@media(max-width:1100px) {
  .institutional-page .container { width:calc(100% - 64px); }
  .institutional-page .service-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .institutional-page .service { padding:24px; }
  .institutional-page .service-symbol { margin-bottom:20px; }
  .institutional-page .experience-grid { column-gap:48px; }
  .institutional-page .expertise-strip { gap:20px; }
  .institutional-page .expertise-strip>.text-link { max-width:150px; }
}
@media(max-width:1000px) {
  .institutional-page .header-inner { gap:0; min-height:72px; }
  .institutional-page .site-header #main-nav { gap:0; }
  .institutional-page .site-header #main-nav a { font-size:14px; padding:13px 3px; }
  .institutional-page .site-header #main-nav a[href="#contato"] { border:0; padding:13px 3px; }
}
@media(max-width:800px) {
  .institutional-page .container { width:calc(100% - 48px); }
  .institutional-page .section { padding:56px 0; }
  .institutional-page .hero { padding:48px 0 50px; }
  .institutional-page .hero-grid { grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr); gap:12px; }
  .institutional-page h1 { font-size:clamp(40px,5.5vw,52px); }
  .institutional-page .hero-description { font-size:15px; }
  .institutional-page .hero-visual { align-self:center; }
  .institutional-page .hero-copy .eyebrow { font-size:9px; }
  .institutional-page .product { padding:0 0 56px; }
  .institutional-page .product-shell { padding:36px; }
  .institutional-page .product-grid { grid-template-columns:minmax(0,1fr) minmax(0,.65fr); gap:16px; }
  .institutional-page .product-name { font-size:42px; }
  .institutional-page .product h2 { font-size:27px; }
  .institutional-page .product-network { min-width:0; }
  .institutional-page .experience-grid { grid-template-columns:1fr; row-gap:28px; }
  .institutional-page .profile-column { display:block; }
  .institutional-page .career-list { grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
  .institutional-page .career-list>div { display:block; }
  .institutional-page .career-list p { text-align:left; margin-top:6px; }
  .institutional-page .expertise-strip { flex-wrap:wrap; padding:18px 20px; gap:18px 24px; }
  .institutional-page .credential-list { grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px 20px; }
  .institutional-page .training-summary { flex:1; min-width:180px; }
  .institutional-page .expertise-strip>.text-link { margin-left:0; max-width:none; }
  .institutional-page .publication-copy { padding:26px; gap:18px 28px; }
  .institutional-page .publication h3 { font-size:26px; }
  .institutional-page .publication-copy>p { font-size:13px; }
  .institutional-page .contact-grid { grid-template-columns:1fr 1fr; gap:40px; }
}
@media(max-width:620px) {
  .institutional-page .hero-grid { grid-template-columns:1fr; gap:20px; }
  .institutional-page .hero-copy { max-width:540px; }
  .institutional-page h1 { font-size:clamp(42px,8.6vw,54px); }
  .institutional-page .hero-visual { max-width:250px; justify-self:center; }
  .institutional-page .hero-visual .relationship-art { max-height:185px; }
  .institutional-page .hero-visual figcaption { margin-top:-4px; font-size:9px; }
  .institutional-page .product-grid { grid-template-columns:1fr; gap:22px; }
  .institutional-page .product-shell { padding:32px 28px; }
  .institutional-page .product-network { width:240px; max-width:100%; justify-self:center; }
  .institutional-page .product-network svg { max-height:160px; }
  .institutional-page .publication-copy { grid-template-columns:1fr; gap:17px; }
  .institutional-page .publication-meta,.institutional-page .publication-bottom { grid-column:auto; }
  .institutional-page .carousel-controls { grid-template-columns:1fr auto; gap:4px 16px; }
  .institutional-page .carousel-pages { grid-column:1 / -1; grid-row:2; justify-content:center; }
  .institutional-page .carousel-arrows { grid-column:2; grid-row:1; }
  .institutional-page .contact-grid { grid-template-columns:1fr; gap:34px; }
}
@media(max-width:480px) {
  .institutional-page .container { width:calc(100% - 40px); }
  .institutional-page .section { padding:48px 0; }
  .institutional-page .hero { padding:38px 0 32px; }
  .institutional-page .hero-copy .eyebrow { line-height:1.7; font-size:8px; letter-spacing:.04em; gap:7px; margin-bottom:20px; }
  .institutional-page .hero-actions { flex-direction:row; align-items:center; flex-wrap:wrap; gap:6px; margin-top:24px; }
  .institutional-page .hero-actions .button { width:auto; font-size:12px; padding:13px 15px; }
  .institutional-page .brand { gap:8px; }
  .institutional-page .brand span { font-size:19px; }
  .institutional-page .brand img { width:30px; height:25px; }
  .institutional-page .header-tools { gap:5px; }
  .institutional-page .language-switcher a { min-width:29px; padding:0 4px; }
  .institutional-page .service-grid { grid-template-columns:1fr; gap:12px; }
  .institutional-page .service:first-child { grid-column:auto; }
  .institutional-page .service:first-child h3 { font-size:20px; }
  .institutional-page .service:first-child p { font-size:12px; }
  .institutional-page .service { display:grid; grid-template-columns:42px minmax(0,1fr); column-gap:17px; padding:20px; }
  .institutional-page .service-symbol { grid-row:1 / 3; width:42px; height:42px; margin:0; }
  .institutional-page .service h3 { font-size:18px; align-self:center; }
  .institutional-page .service p { grid-column:2; margin-top:7px; font-size:12px; }
  .institutional-page .product { padding:0 0 48px; }
  .institutional-page .product-shell { padding:30px 24px; border-radius:18px; }
  .institutional-page .product-actions { align-items:stretch; }
  .institutional-page .product-actions .button { font-size:11px; gap:10px; }
  .institutional-page .career-list { gap:12px; }
  .institutional-page .career-list h3 { font-size:15px; white-space:normal; }
  .institutional-page .career-list p { font-size:10px; }
  .institutional-page .expertise-strip { display:grid; grid-template-columns:1fr; gap:18px; padding:18px; }
  .institutional-page .credentials-heading { align-items:flex-start; flex-direction:column; gap:2px; margin-bottom:16px; }
  .institutional-page .credential-list { gap:24px 10px; }
  .institutional-page .credential-item { padding:0; gap:8px; }
  .institutional-page .credential-item img { width:64px; height:64px; }
  .institutional-page .credential-item strong { font-size:11px; line-height:1.5; }
  .institutional-page .credential-history li { display:block; margin-bottom:8px; }
  .institutional-page .credential-history li>span { display:block; }
  .institutional-page .training-summary { min-width:0; }
  .institutional-page .expertise-strip>.text-link { padding:0; min-height:44px; }
  .institutional-page .publication-copy { padding:24px; }
  .institutional-page .publication h3 { font-size:25px; }
  .institutional-page .publication-bottom { gap:12px; flex-wrap:wrap; }
  .institutional-page .publication-read { font-size:11px; }
  .institutional-page .carousel-page { width:26px; }
  .institutional-page .contact .button { width:auto; }
  .institutional-page .footer-top { flex-wrap:wrap; gap:12px 22px; }
  .institutional-page .footer-top>.text-link:first-of-type { margin-left:0; }
  .institutional-page .footer-bottom { font-size:9px; gap:8px; }
}

/* Product photography and the portfolio share the same visual rhythm. */
.institutional-page .portfolio { padding-top:0; background:var(--paper); }
.institutional-page .portfolio .product { padding:0; background:transparent; }
.institutional-page .portfolio .product-grid { grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); }
.institutional-page .portfolio #product-title { font-size:clamp(27px,3vw,30px); letter-spacing:-.035em; }
.institutional-page .product-media { min-width:0; position:relative; align-self:center; margin:0; }
.institutional-page .product-media>a { display:block; overflow:hidden; border-radius:14px; }
.institutional-page .product-media img { display:block; width:100%; height:auto; aspect-ratio:8 / 5; object-fit:contain; background:#f4f6f8; }
.institutional-page .product-media figcaption { position:absolute; left:12px; bottom:12px; padding:5px 9px; border-radius:5px; background:#0d1519d9; color:#d2e0d7; font-size:10px; }
.institutional-page .product-media .product-network { position:absolute; width:136px; max-width:35%; right:12px; bottom:12px; padding:8px; margin:0; border:1px solid #79a88b66; background:#122c24d9; border-radius:10px; backdrop-filter:blur(10px); pointer-events:none; }
.institutional-page .product-media .product-network svg { width:100%; max-height:none; display:block; }
.institutional-page .portfolio-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:24px; }
.institutional-page .portfolio-card { min-width:0; border-radius:18px; border:1px solid #dde7e0; background:#fff; overflow:hidden; display:flex; flex-direction:column; }
.institutional-page .portfolio-card figure { position:relative; overflow:hidden; }
.institutional-page .portfolio-card figure>a { display:block; overflow:hidden; }
.institutional-page .portfolio-card img { display:block; width:100%; height:auto; aspect-ratio:8 / 5; object-fit:contain; background:#f4f6f8; }
.institutional-page .portfolio-card figcaption { position:absolute; left:12px; bottom:12px; background:#0d1519d9; color:#e1ebe4; border-radius:5px; font-size:9px; padding:5px 8px; pointer-events:none; }
.institutional-page .portfolio-copy { display:flex; flex-direction:column; flex:1; padding:25px; }
.institutional-page .portfolio-copy .eyebrow { color:#5b7665; font-size:9px; margin-bottom:10px; }
.institutional-page .portfolio-copy .product-brand { font-size:12px; letter-spacing:.02em; text-transform:none; }
.institutional-page .portfolio-copy h3 { font-size:27px; margin-bottom:12px; }
.institutional-page .portfolio-copy>p:not(.eyebrow) { color:var(--muted); font-size:13px; line-height:1.75; margin-bottom:20px; }
.institutional-page .portfolio-copy .text-link { margin-top:auto; color:#2c664b; font-size:12px; white-space:normal; justify-content:space-between; }
.institutional-page .portfolio-copy .text-link svg { flex-shrink:0; }

.institutional-page .profile-credentials { padding:28px; background:#f4f7f5; border:1px solid #e0e8e2; border-radius:20px; }
.institutional-page .credentials-heading { margin-bottom:20px; }
.institutional-page .credentials-heading h3 { font-size:22px; }
.institutional-page .expertise-strip { background:#fff; }

/* Motion uses transform, opacity and SVG dash offsets; graphs stop out of view. */
.institutional-page .graph-signals { opacity:0; pointer-events:none; }
.institutional-page .graph-signal { stroke-dasharray:22 978; }
.institutional-page.motion-enabled .graph-signals { opacity:1; }
.institutional-page.motion-enabled .graph-signal { animation:graph-packet 5s linear infinite; }
.institutional-page.motion-enabled .graph-signal-delayed { animation-delay:-2.5s; animation-duration:6.5s; }
.institutional-page.motion-enabled .graph-orbit { transform-box:fill-box; transform-origin:center; animation:graph-orbit 45s linear infinite; }
.institutional-page.motion-enabled .graph-pulse { transform-box:fill-box; transform-origin:center; animation:graph-pulse 6s ease-in-out infinite alternate; }
.institutional-page.motion-enabled .graph-points circle { animation:graph-point 7s ease-in-out infinite alternate; }
.institutional-page.motion-enabled .graph-points circle:nth-child(2n) { animation-delay:-3s; }
.institutional-page.motion-enabled .graph-points circle:nth-child(3n) { animation-delay:-5s; }
.institutional-page.motion-enabled .hero-visual::before { animation:hero-aura 14s ease-in-out infinite alternate; }
.institutional-page.motion-paused [data-animated-graph] *,
.institutional-page.page-hidden [data-animated-graph] *,
.institutional-page [data-animated-graph]:not(.is-in-view) * { animation-play-state:paused!important; }
.institutional-page.motion-paused .hero-visual::before,.institutional-page.page-hidden .hero-visual::before { animation-play-state:paused; }
.institutional-page .hero-visual:not(.is-in-view)::before { animation-play-state:paused; }
.institutional-page.motion-paused .credential-track,.institutional-page.motion-paused .button,.institutional-page.motion-paused .button svg,.institutional-page.motion-paused .text-link svg,.institutional-page.motion-paused .portfolio-card img,.institutional-page.motion-paused .product-media img,.institutional-page.motion-paused .credential-item img { transition:none!important; }
.institutional-page.motion-paused .button:hover,.institutional-page.motion-paused .button:hover svg,.institutional-page.motion-paused .text-link:hover svg,.institutional-page.motion-paused .portfolio-card img,.institutional-page.motion-paused .product-media img,.institutional-page.motion-paused .credential-item img { transform:none!important; }
.institutional-page [data-reveal].reveal-ready { opacity:0; transform:translateY(22px); transition:opacity .7s ease,transform .7s cubic-bezier(.22,.68,.2,1); transition-delay:var(--reveal-delay,0ms); }
.institutional-page [data-reveal].is-revealed { opacity:1; transform:none; }
.institutional-page.motion-paused [data-reveal] { opacity:1; transform:none; transition:none; }
.institutional-page .reading-progress { position:fixed; top:0; left:0; width:100%; height:2px; pointer-events:none; z-index:50; }
.institutional-page .reading-progress span { display:block; width:100%; height:100%; background:#b1dccd; transform-origin:left; transform:scaleX(0); }
@keyframes graph-packet { from { stroke-dashoffset:1000; } to { stroke-dashoffset:0; } }
@keyframes graph-orbit { to { transform:rotate(360deg); } }
@keyframes graph-pulse { from { transform:scale(.94); opacity:.14; } to { transform:scale(1.1); opacity:.45; } }
@keyframes graph-point { from { opacity:.45; } to { opacity:1; } }
@keyframes hero-aura { from { transform:translate(-8px,4px) scale(.92); opacity:.09; } to { transform:translate(10px,-6px) scale(1.12); opacity:.18; } }
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  .institutional-page .button { transition:transform .22s,background .22s,box-shadow .22s; }
  .institutional-page .button:hover { transform:translateY(-2px); box-shadow:0 8px 24px #0d251d16; }
  .institutional-page .button svg,.institutional-page .text-link svg { transition:transform .22s; }
  .institutional-page .button:hover svg,.institutional-page .text-link:hover svg { transform:translateX(3px); }
  .institutional-page .service { transition:box-shadow .25s,border-color .25s; }
  .institutional-page .service:hover { border-color:#9dbfa9; box-shadow:0 10px 30px -15px #22483233; }
  .institutional-page .portfolio-card img,.institutional-page .product-media img { transition:transform .65s cubic-bezier(.22,.68,.2,1); }
  .institutional-page .portfolio-card figure:hover img,.institutional-page .product-media>a:hover img { transform:none; }
  .institutional-page .credential-item img { transition:transform .3s; }
  .institutional-page .credential-item:hover img { transform:translateY(-5px); }
}
@media(max-width:1000px) {
  .institutional-page .portfolio .product-grid { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:28px; }
  .institutional-page .portfolio .product-shell { padding:36px; }
  .institutional-page .portfolio-copy { padding:22px; }
  .institutional-page .portfolio-copy h3 { font-size:24px; }
}
@media(max-width:800px) {
  .institutional-page .portfolio .product-grid { grid-template-columns:1fr; }
  .institutional-page .product-media { width:100%; max-width:600px; justify-self:center; }
  .institutional-page .portfolio-grid { grid-template-columns:1fr 1fr; gap:18px; }
  .institutional-page .portfolio-card:last-child { grid-column:1 / -1; display:grid; grid-template-columns:1fr 1fr; }
  .institutional-page .portfolio-card:last-child figure { align-self:center; }
  .institutional-page .profile-credentials { padding:24px; }
  .institutional-page .footer-top { flex-wrap:wrap; }
}
@media(max-width:620px) {
  .institutional-page .portfolio .product-shell { padding:28px; }
  .institutional-page .portfolio-grid { grid-template-columns:1fr; }
  .institutional-page .portfolio-card:last-child { display:flex; grid-column:auto; }
  .institutional-page .portfolio-card:last-child figure { align-self:stretch; }
}
@media(max-width:480px) {
  .institutional-page .profile-credentials { padding:20px 14px; border-radius:16px; }
  .institutional-page .credentials-heading { padding:0 6px; }
  .institutional-page .credentials-heading h3 { font-size:21px; }
  .institutional-page .portfolio .product-shell { padding:24px; }
  .institutional-page .product-media .product-network { width:110px; padding:5px; }
  .institutional-page .portfolio-copy { padding:24px; }
  .institutional-page .footer-top { align-items:center; }
}
@media(prefers-reduced-motion:reduce) {
  .institutional-page [data-reveal].reveal-ready { opacity:1; transform:none; }
  .institutional-page .graph-signals { opacity:0; }
  .institutional-page .credential-track { transition:none; }
}

/* Silver color treatment on the existing application images. */
.institutional-page .product-art img { filter:grayscale(1) contrast(1.06) brightness(.98); }

/* A continuously moving ribbon, with no playback interface or category tabs. */
.institutional-page .profile-credentials { padding:4px 0 0; background:transparent; border:0; border-radius:0; }
.institutional-page .credentials-heading { margin-bottom:24px; }
.institutional-page .credentials-heading h3 { font-size:22px; }
.institutional-page .credential-viewport { overflow-x:auto; scrollbar-width:none; mask-image:linear-gradient(90deg,transparent,#000 18px,#000 calc(100% - 18px),transparent); }
.institutional-page .credential-viewport::-webkit-scrollbar { display:none; }
.institutional-page .credential-track { display:flex; gap:32px; width:max-content; }
.institutional-page .credential-carousel .credential-list { display:flex; flex:0 0 auto; width:max-content; gap:32px; padding:8px 16px; margin:0; list-style:none; }
.institutional-page .credential-carousel .credential-list li { position:relative; flex:0 0 184px; width:184px; }
.institutional-page .credential-carousel .credential-item { padding:10px 3px; gap:12px; min-height:208px; color:inherit; cursor:pointer; }
.institutional-page .credential-carousel .credential-item img { width:92px; height:92px; }
.institutional-page .credential-carousel .credential-item strong { font-size:12px; line-height:1.55; font-weight:500; }
.institutional-page .credential-carousel .credential-item>span { font-size:10px; }
.institutional-page .credential-group-start::before { content:""; position:absolute; left:-16px; top:23px; bottom:22px; width:1px; background:#dde5e0; }
.institutional-page .credential-carousel.is-enhanced:not(.is-manual) .credential-viewport { overflow:hidden; }
.institutional-page .credential-carousel.is-enhanced:not(.is-manual) .credential-track { animation:credential-ribbon var(--marquee-duration,50s) linear infinite; }
.institutional-page .credential-carousel:hover .credential-track,.institutional-page .credential-carousel:focus-within .credential-track,.institutional-page .credential-carousel.is-touching .credential-track,.institutional-page .credential-carousel:not(.is-in-view) .credential-track,.institutional-page.page-hidden .credential-track { animation-play-state:paused!important; }
.institutional-page .credential-carousel.is-manual .credential-viewport { mask-image:none; }
.institutional-page .credential-carousel.is-enhanced.is-manual .credential-viewport { overflow-x:auto; touch-action:pan-x pan-y; }
.institutional-page .credential-carousel.is-manual .credential-track { animation:none; transform:none; }
@keyframes credential-ribbon { to { transform:translateX(var(--marquee-distance,-1300px)); } }
@media(max-width:480px) {
  .institutional-page .credential-carousel .credential-list { gap:25px; }
  .institutional-page .credential-carousel .credential-list li { flex-basis:156px; width:156px; }
  .institutional-page .credential-carousel .credential-item { min-height:213px; }
  .institutional-page .credential-carousel .credential-item img { width:84px; height:84px; }
}
@media(prefers-reduced-motion:reduce) {
  .institutional-page .credential-track { animation:none!important; transform:none!important; }
}
