@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap');
:root{--navy:#12253a;--navy-deep:#0d1c2a;--text:#1d2c39;--secondary:#5e6b77;--cream:#f7f7f3;--gold:#c5a66b;--line:#e2e4df}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--cream);color:var(--text);font:16px/1.65 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid #dbac59;outline-offset:4px}.container{width:min(88%,1200px);margin-inline:auto}.skip-link{position:absolute;top:-60px;left:20px;background:#fff;color:#000;padding:8px;z-index:30}.skip-link:focus{top:8px}.site-header{height:84px;position:sticky;top:0;z-index:10;background:#fff;border-bottom:1px solid var(--line)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:20px}.wordmark{font-size:27px;line-height:1;letter-spacing:.16em;font-weight:700}.wordmark span{display:block;letter-spacing:.08em;font-size:9px;font-weight:600;margin-top:8px}.navigation{display:flex;align-items:center;gap:30px;font-size:13px;font-weight:600}.navigation a:hover,.text-link:hover{color:#a3834b}.navigation .nav-contact{padding:12px 17px;background:var(--navy);color:#fff}.menu-toggle{display:none}.hero{background:var(--navy);color:#fff}.hero-content{min-height:620px;padding-top:115px;padding-bottom:27px;display:flex;flex-direction:column;align-items:flex-start}.eyebrow{color:var(--gold);letter-spacing:.2em;font-size:11px;font-weight:700;margin:0}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:500;line-height:1.16}h1{font-size:clamp(53px,6.8vw,98px);letter-spacing:-.04em;margin:21px 0 22px}h1 em,.approach-section em,.contact-section em{color:#d8bd87;font-weight:500}.hero-summary{max-width:590px;font-size:18px;color:#d4dce3;line-height:1.7}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin:23px 0 100px}.button{display:inline-flex;align-items:center;gap:16px;justify-content:center;font-weight:700;font-size:13px;padding:14px 22px;transition:transform .18s,background .18s}.button:hover{transform:translateY(-2px)}.button-gold{background:var(--gold);color:var(--navy)}.button-outline{border:1px solid #8192a1;color:#fff}.hero-foot{width:100%;display:flex;justify-content:space-between;gap:20px;align-items:center;border-top:1px solid #46586a;padding-top:18px;color:#bfccd6;font-size:11px;letter-spacing:.055em}.section{padding:108px 0}.section-intro{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-bottom:42px}.section-intro>p{max-width:400px;color:var(--secondary)}h2{font-size:clamp(38px,4.2vw,58px);letter-spacing:-.025em;margin:17px 0 24px}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.service-card{background:#fff;padding:38px 42px 34px;display:flex;flex-direction:column;min-height:500px}.service-card-muted{background:#ece9e1}.service-number{font-size:11px;font-weight:700;letter-spacing:.13em;color:#927646}.service-symbol{font-size:35px;color:#ad915f;margin:12px 0 0}.service-card h3{font-size:clamp(29px,3.3vw,40px);margin:8px 0 20px}.service-card p{color:var(--secondary);max-width:440px}.service-card ul{margin:5px 0 28px;padding-left:19px}.service-card li{padding:4px 0}.text-link{font-size:14px;font-weight:700;display:inline-block;border-bottom:1px solid #d8d3c9;padding-bottom:11px}.service-card .text-link{margin-top:auto}.approach-section{background:#e9eee9;padding:105px 0}.approach-content{text-align:center}.approach-content h2{font-size:clamp(39px,4.5vw,64px)}.approach-content h2 em{color:#7a826e}.approach-content>p:not(.eyebrow){color:var(--secondary);max-width:690px;margin:auto}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:65px;text-align:left;border-top:1px solid #cdd8ce;padding-top:28px}.principles div span{display:block;font-size:11px;color:#7c886f;letter-spacing:.15em;font-weight:700}.principles strong{display:block;margin:8px 0;font-size:18px}.principles p{font-size:14px;color:var(--secondary)}.case-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px}.case-grid p{max-width:540px;color:var(--secondary)}.case-grid .lead{color:var(--text);font-size:21px}.case-visual{background:linear-gradient(145deg,#1b354d,#091725);min-height:390px;padding:36px;color:#fff;display:flex;flex-direction:column;justify-content:space-between}.case-visual>span{font:55px/1.25 Georgia,serif;display:flex;flex-direction:column}.case-arrow{color:var(--gold);padding-left:75px}.case-visual small{font-size:10px;letter-spacing:.12em;color:#d8bd87}.about-section{background:#fff}.about-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.about-grid>div:nth-child(2)>p{color:var(--secondary)}.about-grid .about-lead{font-size:21px;color:var(--text)!important}.founder{border-top:1px solid var(--line);margin-top:40px;padding-top:25px}.founder-label{font-size:10px;letter-spacing:.18em;color:#957d56;font-weight:700}.founder h3{font-size:30px;margin:10px 0 10px}.founder p{max-width:670px;color:var(--secondary)}.founder .small-note{font-size:12px;color:#7b8791}.contact-section{background:var(--navy);color:#fff;padding:115px 0;text-align:center}.contact-section h2{font-size:clamp(42px,5vw,70px)}.contact-section p:not(.eyebrow){color:#bdcbd6}.contact-section .button{margin-top:14px}.contact-section .contact-helper{font-size:12px;color:#9babb9;margin-top:15px}.site-footer{background:#fff;color:var(--secondary);font-size:11px;padding:30px 0}.footer-inner{display:flex;justify-content:space-between;gap:20px}.legal-note{margin-top:12px;color:#818c96;font-size:10px}@media(max-width:800px){.site-header{height:76px}.menu-toggle{display:block;border:1px solid #d3d7db;background:#fff;color:var(--navy);padding:8px 12px;font-size:13px}.navigation{display:none;position:absolute;top:76px;left:0;right:0;background:#fff;flex-direction:column;align-items:stretch;gap:0;padding:12px 6% 20px;box-shadow:0 12px 20px #0002}.navigation.is-open{display:flex}.navigation a{padding:12px 8px}.navigation .nav-contact{text-align:center}.hero-content{min-height:auto;padding-top:85px}.hero-actions{margin-bottom:75px}.section{padding:78px 0}.section-intro,.case-grid,.about-grid{display:block}.section-intro>p{max-width:650px}.service-grid{grid-template-columns:1fr}.service-card{min-height:0}.case-visual{margin-top:40px}.principles{grid-template-columns:1fr;gap:15px}.approach-section{padding:75px 0}.about-grid>div:nth-child(2){margin-top:30px}.footer-inner{flex-direction:column;gap:8px}}@media(max-width:480px){.container{width:90%}.wordmark{font-size:24px}.wordmark span{font-size:8px}.hero-summary{font-size:16px}.hero-foot{flex-direction:column;align-items:start}.service-card{padding:28px}.case-visual{min-height:310px;padding:25px}.case-visual>span{font-size:43px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}


/* VATSorted case-study logo size and grid containment (2026-10-31) */
.case-list .case-feature {
  grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr) !important;
}
.case-list .case-feature > div,
.product-proof {
  min-width: 0;
}
.product-proof .product-logo-card {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: min(100%, 370px) !important;
  max-width: 370px !important;
  margin: 18px auto 14px !important;
  padding: 14px !important;
  background: #fff;
  border: 1px solid #e1e6e4;
  box-sizing: border-box;
  overflow: hidden;
}
.product-proof .product-logo-card img {
  display: block;
  width: 100% !important;
  max-width: 290px !important;
  height: auto !important;
  object-fit: contain;
}
.case-list .case-feature .product-logo-card {
  max-width: 335px !important;
}
.case-list .case-feature .product-logo-card img {
  max-width: 260px !important;
}
@media (max-width: 800px) {
  .case-list .case-feature {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}
@media (max-width: 480px) {
  .product-proof .product-logo-card {
    padding: 10px !important;
  }
  .product-proof .product-logo-card img {
    max-width: 230px !important;
  }
}
