@font-face{font-family:'DM Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url('/assets/fonts/dm-sans-latin.woff2') format('woff2')}
.portfolio-site{--pf-bg:#f5f7fb;--pf-ink:#14213a;--pf-blue:#3157db;--pf-muted:#69768c;--pf-line:#d9e1ec;--pf-green:#16a778;--pf-coral:#ff725e;background:var(--pf-bg);color:var(--pf-ink);font-family:'DM Sans',system-ui,sans-serif}.portfolio-site h1,.portfolio-site h2,.portfolio-site h3{font-family:Manrope,system-ui,sans-serif;letter-spacing:-.055em}.portfolio-header{background:rgba(255,255,255,.94);border-color:var(--pf-line)}.portfolio-header .nav{height:104px}.portfolio-header .brand-mark{width:auto;height:78px;max-width:none;object-fit:contain;aspect-ratio:712/559;border-radius:8px}.portfolio-header .nav-links a{color:#3d4a61}.portfolio-nav-cta{display:inline-flex;align-items:center;gap:15px;padding:13px 18px;border-radius:8px;background:var(--pf-ink);color:#fff!important;text-decoration:none}.portfolio-hero{padding:92px 0 105px;background:radial-gradient(circle at 80% 10%,#dfe8ff,transparent 34%),linear-gradient(180deg,#fff,#f5f7fb)}.portfolio-hero-grid{display:grid;grid-template-columns:.83fr 1.17fr;gap:72px;align-items:center}.portfolio-kicker,.portfolio-heading>div>span,.principles-title>span,.portfolio-method-grid>div>span,.portfolio-cta-grid>div>span{display:block;color:var(--pf-blue);font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.portfolio-copy h1{margin:17px 0 26px;font-size:clamp(60px,6.7vw,96px);line-height:.98}.portfolio-copy h1 em{color:var(--pf-blue);font-style:normal}.portfolio-copy>p{max-width:620px;margin:0;color:var(--pf-muted);font-size:18px;line-height:1.75}.portfolio-actions{display:flex;gap:10px;margin-top:33px}.portfolio-button{min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:0 21px;border:1px solid #cdd7e5;border-radius:8px;background:#fff;color:var(--pf-ink);text-decoration:none;font-weight:800}.portfolio-button.primary{border-color:var(--pf-blue);background:var(--pf-blue);color:#fff}.portfolio-signals{display:flex;flex-wrap:wrap;gap:21px;margin-top:29px;color:#718096;font-size:11px}.portfolio-signals span:before{content:'✓';margin-right:7px;color:var(--pf-green);font-weight:800}.product-stack{padding:17px;border:1px solid var(--pf-line);border-radius:18px;background:rgba(255,255,255,.87);box-shadow:0 28px 70px rgba(31,49,86,.15);transform:rotate(1deg)}.stack-heading{display:flex;justify-content:space-between;padding:8px 8px 17px;color:#8090a7;font-size:10px;text-transform:uppercase;letter-spacing:.1em}.stack-heading strong{color:#53627a}.stack-item{display:grid;grid-template-columns:170px 1fr auto;gap:18px;align-items:center;padding:12px;border:1px solid var(--pf-line);border-radius:12px;background:#fff;color:var(--pf-ink);text-decoration:none}.stack-item+.stack-item{margin-top:9px}.stack-item img{width:170px;height:94px;display:block;object-fit:cover;border-radius:9px;background:#fff}.stack-item div>*{display:block}.stack-item small{margin-bottom:4px;color:#c15b36;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.stack-item.recording small{color:#13815d}.stack-item strong{font:700 15px Manrope}.stack-item div>span{margin-top:5px;color:#7a8799;font-size:11px}.stack-item>b{padding-right:7px;color:var(--pf-blue)}.portfolio-products{padding:115px 0;background:#fff}.portfolio-heading{display:grid;grid-template-columns:1.1fr .9fr;gap:90px;align-items:end;margin-bottom:57px}.portfolio-heading h2,.principles-title h2,.portfolio-method-grid>div h2{margin:16px 0 0;font-size:clamp(48px,5.5vw,74px);line-height:1}.portfolio-heading>p{margin:0;color:var(--pf-muted);font-size:17px;line-height:1.75}.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.portfolio-card{overflow:hidden;border:1px solid var(--pf-line);border-radius:15px;background:#fff;box-shadow:0 14px 38px rgba(35,51,78,.07)}.portfolio-card-media{position:relative;padding:18px;background:#e9f4ff}.portfolio-card.card-testing .portfolio-card-media{background:#e5f7f0}.portfolio-card.card-migration .portfolio-card-media{background:#f2e7ff}.portfolio-card-media img{display:block;width:100%;height:205px;object-fit:cover;border-radius:10px;background:#fff}.product-state{position:absolute;z-index:2;top:28px;left:28px;display:flex;align-items:center;gap:7px;padding:6px 9px;border-radius:999px;background:rgba(255,255,255,.94);color:#bd5836;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 5px 16px rgba(28,43,70,.12)}.product-state i{width:7px;height:7px;border-radius:50%;background:var(--pf-coral)}.product-state.live{color:#147e5d}.product-state.live i{background:var(--pf-green)}.portfolio-card-body{padding:25px}.portfolio-card-body>span{color:var(--pf-blue);font-size:9px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.portfolio-card-body h3{min-height:58px;margin:12px 0 13px;font-size:25px;line-height:1.08}.portfolio-card-body p{min-height:88px;margin:0;color:var(--pf-muted);font-size:14px}.portfolio-card-body>div{display:flex;gap:17px;margin-top:25px;padding-top:19px;border-top:1px solid var(--pf-line)}.portfolio-card-body a{color:#526078;font-size:12px;font-weight:800;text-decoration:none}.portfolio-card-body a:first-child{color:var(--pf-blue)}.all-products-link{display:flex;justify-content:space-between;margin-top:32px;padding:20px 0;border-top:1px solid var(--pf-line);border-bottom:1px solid var(--pf-line);color:var(--pf-blue);font-weight:800;text-decoration:none}.portfolio-principles{padding:110px 0;background:var(--pf-ink);color:#fff}.principles-title{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start;margin-bottom:55px}.principles-title>span{color:#8fa8ff}.principles-title h2{margin-top:0}.principles-list{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid #34415a}.principles-list article{min-height:275px;padding:30px;border-right:1px solid #34415a;border-bottom:1px solid #34415a}.principles-list article:nth-child(2n){border-right:0}.principles-list article>span{color:#8fa8ff;font-size:10px;font-weight:800}.principles-list h3{margin:65px 0 12px;font-size:27px}.principles-list p{max-width:470px;margin:0;color:#acb8cc}.portfolio-method{padding:115px 0;background:#f4f7fb}.portfolio-method-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:105px}.portfolio-method-grid>div{align-self:start;position:sticky;top:130px}.portfolio-method-grid>div p{color:var(--pf-muted);font-size:16px}.portfolio-method-grid>div a{display:inline-flex;gap:15px;margin-top:15px;color:var(--pf-blue);font-weight:800;text-decoration:none}.portfolio-method ol{margin:0;padding:0;list-style:none;border-top:1px solid #cbd5e2}.portfolio-method li{display:grid;grid-template-columns:65px 1fr;gap:20px;padding:29px 0;border-bottom:1px solid #cbd5e2}.portfolio-method li>span{color:var(--pf-blue);font-size:10px;font-weight:800}.portfolio-method h3{margin:0 0 8px;font-size:23px}.portfolio-method li p{margin:0;color:var(--pf-muted)}.portfolio-cta{padding:105px 0;background:var(--pf-blue);color:#fff}.portfolio-cta-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:100px;align-items:end}.portfolio-cta-grid>div>span{color:#bdc9ff}.portfolio-cta h2{margin:16px 0 0;font-size:clamp(48px,5.5vw,76px);line-height:1}.portfolio-cta p{margin:0 0 26px;color:#dbe3ff;font-size:17px}.portfolio-button.light{border:0;background:#fff;color:#21345b}.portfolio-footer{background:#091326;color:#fff}.portfolio-footer .brand{color:#fff}.portfolio-footer .brand-mark{border-radius:8px}.portfolio-footer .footer-about p{color:#aebbd0}.portfolio-footer .footer-col strong{color:#8fa3c3}.portfolio-footer .footer-col a{color:#e2e9f4}.portfolio-footer .footer-bottom{border-color:#26334a;color:#9baac1}.portfolio-footer .footer-signoff strong{color:#8edff2}
@media(max-width:1000px){.portfolio-header .nav-links{top:104px;background:#fff}.portfolio-hero-grid{grid-template-columns:1fr}.portfolio-copy{max-width:780px}.product-stack{transform:none}.portfolio-grid{grid-template-columns:1fr 1fr}.portfolio-card:last-child{grid-column:1/-1}.portfolio-card:last-child{display:grid;grid-template-columns:1fr 1fr}.portfolio-card:last-child .portfolio-card-media img{height:100%;min-height:300px}.portfolio-heading,.principles-title,.portfolio-method-grid,.portfolio-cta-grid{grid-template-columns:1fr;gap:40px}.portfolio-method-grid>div{position:static}}
@media(max-width:650px){.portfolio-header .nav{height:90px}.portfolio-header .brand{font-size:14px}.portfolio-header .brand-mark{height:62px;width:auto}.portfolio-header .menu-button{flex:none;padding:8px 9px;font:700 13px 'DM Sans',system-ui,sans-serif}.portfolio-header .nav-links{top:90px}.portfolio-hero{padding:62px 0 75px}.portfolio-copy h1{font-size:53px}.portfolio-copy>p{font-size:16px}.portfolio-actions{align-items:stretch;flex-direction:column}.portfolio-signals{gap:10px}.product-stack{padding:10px}.stack-item{grid-template-columns:92px 1fr auto;gap:11px;padding:8px}.stack-item img{width:92px;height:68px}.stack-item div>span{display:none}.stack-item strong{font-size:12px}.stack-heading{padding:6px 5px 12px}.portfolio-products,.portfolio-principles,.portfolio-method,.portfolio-cta{padding:78px 0}.portfolio-grid{grid-template-columns:1fr}.portfolio-card:last-child{grid-column:auto;display:block}.portfolio-card:last-child .portfolio-card-media img{height:205px;min-height:0}.portfolio-card-body h3,.portfolio-card-body p{min-height:0}.portfolio-card-body p{margin-bottom:20px}.principles-list{grid-template-columns:1fr}.principles-list article{min-height:auto;border-right:0}.principles-list h3{margin-top:40px}.portfolio-method li{grid-template-columns:45px 1fr}.portfolio-footer .footer-grid{grid-template-columns:1fr 1fr}.portfolio-footer .footer-about{grid-column:1/-1}}
.portfolio-grid{grid-template-columns:repeat(2,1fr)}.portfolio-card.card-local .portfolio-card-media{background:#e0f4ed}
@media(max-width:1000px){.portfolio-card:last-child{grid-column:auto;display:block}.portfolio-card:last-child .portfolio-card-media img{height:205px;min-height:0}}
@media(max-width:650px){.portfolio-grid{grid-template-columns:1fr}}

.portfolio-pricing {
  padding: 115px 0;
  scroll-margin-top: 100px;
  background: #edf2fb;
}
.pricing-heading {
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  gap: 90px;
  align-items: end;
  margin-bottom: 52px;
}
.pricing-heading > div > span {
  display: block;
  color: var(--pf-blue);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}
.pricing-heading h2 {
  margin: 16px 0 0;
  font-size: clamp(48px, 5.5vw, 74px);
  line-height: 1;
}
.pricing-heading > p {
  margin: 0;
  color: var(--pf-muted);
  font-size: 17px;
  line-height: 1.75;
}
.public-pricing-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  align-items: stretch;
}
.public-price-card {
  position: relative;
  min-width: 0;
  display: flex;
  flex-direction: column;
  padding: 25px;
  border: 1px solid #cad5e4;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 13px 34px rgba(35, 51, 78, 0.07);
}
.public-price-card.pro {
  border-color: #9eb2ed;
}
.public-price-card.yearly {
  border-color: var(--pf-blue);
  box-shadow: 0 18px 46px rgba(49, 87, 219, 0.16);
}
.public-plan-flag {
  align-self: flex-start;
  margin: -11px 0 17px;
  padding: 6px 9px;
  border-radius: 999px;
  background: #e8edff;
  color: #3f56a8;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.public-plan-flag.recommended {
  background: #dff7ef;
  color: #0c7655;
}
.public-plan-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.public-plan-title h3 {
  margin: 0;
  font-size: 24px;
}
.public-plan-title span {
  padding: 5px 8px;
  border-radius: 999px;
  background: #f0f4f9;
  color: #65748a;
  font-size: 10px;
  font-weight: 800;
}
.public-price {
  min-height: 58px;
  display: flex;
  align-items: baseline;
  gap: 6px;
  margin: 24px 0 9px;
}
.public-price strong {
  font: 800 37px/1 Manrope, system-ui, sans-serif;
  letter-spacing: -0.06em;
}
.public-price small,
.public-equivalent,
.public-price-card > p:not(.public-price):not(.public-was) {
  color: var(--pf-muted);
}
.public-price-card.enterprise .public-price strong {
  font-size: 29px;
}
.public-was {
  min-height: 21px;
  margin: 19px 0 -14px;
  color: #758298;
  font-size: 12px;
}
.public-was del {
  text-decoration-color: var(--pf-coral);
  text-decoration-thickness: 2px;
}
.public-equivalent {
  margin: -3px 0 12px;
  font-size: 12px;
  font-weight: 700;
}
.public-price-card > p:not(.public-price):not(.public-was):not(.public-equivalent) {
  min-height: 48px;
  margin: 0;
  font-size: 13px;
}
.public-price-card ul {
  flex: 1;
  margin: 21px 0 24px;
  padding: 18px 0 0;
  border-top: 1px solid var(--pf-line);
  list-style: none;
}
.public-price-card li {
  position: relative;
  margin: 9px 0;
  padding-left: 18px;
  color: #4e5d73;
  font-size: 12px;
  line-height: 1.45;
}
.public-price-card li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: var(--pf-green);
  font-weight: 900;
}
.public-plan-button {
  min-height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 14px;
  border: 1px solid var(--pf-blue);
  border-radius: 9px;
  background: var(--pf-blue);
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  text-align: center;
  text-decoration: none;
}
.public-plan-button.secondary {
  border-color: #c6d2e2;
  background: #f6f8fb;
  color: var(--pf-ink);
}
.pricing-notes {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 45px;
  margin-top: 24px;
  padding-top: 22px;
  border-top: 1px solid #c8d3e2;
}
.pricing-notes p {
  margin: 0;
  color: #647288;
  font-size: 12px;
  line-height: 1.65;
}
.pricing-notes strong {
  color: var(--pf-ink);
}
@media (max-width: 1100px) {
  .public-pricing-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 1000px) {
  .pricing-heading {
    grid-template-columns: 1fr;
    gap: 35px;
  }
}
@media (max-width: 650px) {
  .portfolio-pricing {
    padding: 78px 0;
  }
  .public-pricing-grid,
  .pricing-notes {
    grid-template-columns: 1fr;
  }
  .pricing-notes {
    gap: 12px;
  }
}

/* Shared Nimbus Whale quality floor. */
.portfolio-site {
  --pf-muted: #52637a;
  --pf-line: #d3deeb;
  --pf-green: #08724a;
  --pf-coral: #b9472f;
}
.portfolio-site h1,
.portfolio-site h2,
.portfolio-site h3 {
  letter-spacing: -0.04em;
}
.portfolio-hero {
  background: linear-gradient(180deg, #fff 0%, #f3f6fc 100%);
}
.portfolio-copy h1 {
  margin-top: 0;
  font-size: clamp(56px, 6.4vw, 92px);
}
.portfolio-kicker,
.portfolio-heading > div > span,
.principles-title > span,
.portfolio-method-grid > div > span,
.portfolio-cta-grid > div > span,
.pricing-heading > div > span,
.stack-heading,
.stack-item small,
.product-state,
.portfolio-card-body > span,
.principles-list article > span,
.portfolio-method li > span,
.public-plan-flag,
.public-plan-title span {
  font-size: 12px;
  letter-spacing: 0.07em;
}
.stack-heading { color: #52637a; }
.stack-item small { color: #9d3f28; }
.stack-item.recording small { color: #08724a; }
.stack-item div > span,
.portfolio-signals,
.public-was,
.pricing-notes p { color: #52637a; }
.product-stack {
  border: 0;
  box-shadow: 0 22px 55px rgba(0, 0, 0, 0.12);
}
.portfolio-card,
.public-price-card {
  box-shadow: none;
}
.principles-list p { color: #c8d2e1; }
.portfolio-footer .footer-about p,
.portfolio-footer .footer-bottom { color: #bac6d8; }
.portfolio-footer .footer-col strong { color: #b8c5d8; font-size: 12px; }
.portfolio-trial-offer > span:first-child { font-size: 11px; }
.portfolio-trial-offer > span:nth-child(2) > small { color: #3f6255; font-size: 12px; }
.public-price strong { letter-spacing: -0.04em; }
.public-plan-title span { color: #43536b; }
.public-price-card li,
.public-plan-button,
.pricing-notes p { font-size: 13px; }
.portfolio-site :where(.portfolio-button,.portfolio-nav-cta,.public-plan-button,.stack-item,.portfolio-card-body a,.all-products-link,.portfolio-method a,.portfolio-trial-offer,.public-trial-callout a):focus-visible {
  outline-color: #3157db;
}
@media (hover: hover) {
  .portfolio-button:hover,
  .public-plan-button:hover,
  .stack-item:hover { transform: translateY(-2px); }
}
@media (pointer: coarse) {
  .portfolio-button,
  .public-plan-button,
  .portfolio-card-body a,
  .all-products-link { min-height: 44px; }
}
@media (max-width: 650px) {
  .portfolio-copy h1 { font-size: clamp(48px, 14vw, 58px); }
  .portfolio-hero { padding-top: 56px; }
  .portfolio-trial-offer > span:first-child { font-size: 11px; }
}

.portfolio-trial-offer {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 13px;
  max-width: 620px;
  margin-top: 20px;
  padding: 12px 14px;
  border: 1px solid #8fd7b7;
  border-radius: 11px;
  background: linear-gradient(135deg, #e6fff3, #f9fffc);
  color: #153a2e;
  text-decoration: none;
  box-shadow: 0 10px 25px rgba(8, 114, 74, .1);
}
.portfolio-trial-offer > span:first-child {
  display: grid;
  min-width: 68px;
  place-items: center;
  padding: 6px;
  border-radius: 8px;
  background: #08724a;
  color: white;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.portfolio-trial-offer > span:first-child strong { font-size: 29px; line-height: 1; }
.portfolio-trial-offer > span:nth-child(2) > * { display: block; }
.portfolio-trial-offer > span:nth-child(2) > strong { font-size: 13px; }
.portfolio-trial-offer > span:nth-child(2) > small { margin-top: 3px; color: #557367; font-size: 10px; }
.portfolio-trial-offer > b { color: #08724a; font-size: 11px; white-space: nowrap; }
.public-trial-callout {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 22px;
  margin: -24px 0 38px;
  padding: 18px 22px;
  border: 2px solid #08724a;
  border-radius: 16px;
  background: linear-gradient(135deg, #dff8ec, #f8fffb);
  box-shadow: 0 14px 35px rgba(8, 114, 74, .12);
}
.public-trial-callout > span {
  display: grid;
  min-width: 86px;
  place-items: center;
  padding: 9px;
  border-radius: 10px;
  background: #08724a;
  color: #fff;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.public-trial-callout > span strong { font-size: 40px; line-height: .95; }
.public-trial-callout > div > strong { display: block; font-size: 20px; }
.public-trial-callout p { margin: 5px 0 0; color: #466c5d; font-size: 13px; }
.public-trial-callout a {
  padding: 13px 16px;
  border-radius: 8px;
  background: #08724a;
  color: white;
  font-size: 12px;
  font-weight: 900;
  text-decoration: none;
  white-space: nowrap;
}
@media (max-width: 650px) {
  .portfolio-trial-offer,
  .public-trial-callout { grid-template-columns: auto 1fr; }
  .portfolio-trial-offer > b,
  .public-trial-callout > a { grid-column: 2; justify-self: start; }
}

.portfolio-trial-offer > span:first-child { font-size: 11px; }
.portfolio-trial-offer > span:nth-child(2) > small { color: #3f6255; font-size: 12px; }
.portfolio-trial-offer > b { font-size: 12px; }
