/* NAM Accountants custom About page */
body.nam-custom-about { background: #fff; }
body.nam-custom-about .nam-nav a[aria-current="page"]::after { right: 0; }

.nam-about-hero { position: relative; padding: 84px 0 90px; color: #fff; background: radial-gradient(circle at 8% 0%, rgba(135,48,151,.62), transparent 36%), linear-gradient(135deg,#2d0d35,#541762 58%,#361040); overflow: hidden; }
.nam-about-hero::before { content:""; position:absolute; inset:0; opacity:.12; background-image:linear-gradient(rgba(255,255,255,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.14) 1px,transparent 1px); background-size:52px 52px; mask-image:linear-gradient(to right,#000,transparent 78%); }
.nam-about-hero__art { position:absolute; width:560px; height:560px; right:-190px; top:-230px; border:105px solid rgba(255,75,37,.25); border-radius:50%; }
.nam-about-hero__grid { position:relative; z-index:1; display:grid; grid-template-columns:1fr .92fr; align-items:center; gap:78px; }
.nam-about-hero h1 { max-width:720px; margin:0 0 25px; color:#fff; font-size:clamp(54px,5.4vw,82px); font-weight:780; line-height:.99; letter-spacing:-.055em; }
.nam-about-hero h1 em { color:#ff8065; font-family:Georgia,serif; font-weight:500; }
.nam-about-hero__copy > p { max-width:650px; margin-bottom:33px; color:rgba(255,255,255,.76); font-size:19px; line-height:1.7; }
.nam-about-hero__image { position:relative; min-height:510px; border:1px solid rgba(255,255,255,.2); border-radius:28px; background:#6b2878; box-shadow:0 35px 85px rgba(9,2,11,.32); overflow:hidden; }
.nam-about-hero__image img { width:100%; height:100%; min-height:510px; object-fit:cover; object-position:center; }
.nam-about-hero__image::after { content:""; position:absolute; inset:0; background:linear-gradient(to top,rgba(44,13,53,.35),transparent 50%); }
.nam-about-hero__stamp { position:absolute; z-index:2; left:22px; bottom:22px; width:160px; padding:20px; border-radius:20px; color:#fff; background:rgba(45,13,53,.94); box-shadow:0 18px 45px rgba(12,3,15,.26); }
.nam-about-hero__stamp strong { display:block; color:#ff8b72; font-size:35px; line-height:1; }
.nam-about-hero__stamp span { display:block; margin-top:6px; font-size:11px; }

.nam-about-stats { position:relative; z-index:3; margin-top:-34px; }
.nam-about-stats__grid { display:grid; grid-template-columns:repeat(4,1fr); padding:28px 36px; border:1px solid var(--nam-line); border-radius:22px; background:#fff; box-shadow:var(--nam-shadow); }
.nam-about-stats__grid > div { display:grid; gap:3px; padding:4px 28px; border-right:1px solid var(--nam-line); }
.nam-about-stats__grid > div:last-child { border-right:0; }
.nam-about-stats strong { color:var(--nam-purple); font-size:31px; line-height:1.1; }
.nam-about-stats span { color:var(--nam-muted); font-size:11px; font-weight:750; letter-spacing:.04em; text-transform:uppercase; }

.nam-about-story { padding-top:130px; }
.nam-about-story__grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:110px; }
.nam-about-story h2 { margin:0; color:var(--nam-purple-dark); font-size:clamp(42px,4.4vw,65px); line-height:1.05; letter-spacing:-.045em; }
.nam-about-story__copy { padding-top:39px; }
.nam-about-story__copy p { color:var(--nam-muted); font-size:16px; line-height:1.85; }
.nam-about-story__copy .nam-about-story__lead { color:var(--nam-purple-dark); font-size:22px; font-weight:650; line-height:1.55; }
.nam-about-story__copy .nam-text-link { margin-top:12px; }

.nam-about-values { background:var(--nam-cream); }
.nam-about-values__grid { display:grid; grid-template-columns:repeat(4,1fr); gap:17px; }
.nam-about-values article { min-height:340px; display:flex; flex-direction:column; padding:28px; border:1px solid var(--nam-line); border-radius:24px; background:#fff; transition:transform .25s,box-shadow .25s; }
.nam-about-values article:hover { transform:translateY(-6px); box-shadow:var(--nam-shadow); }
.nam-about-values article > span { color:#aaa2ac; font-size:10px; font-weight:850; letter-spacing:.12em; }
.nam-about-values__icon { width:51px; height:51px; margin:40px 0 auto; display:grid; place-items:center; border-radius:16px; color:#fff; background:var(--nam-purple); font-size:21px; font-weight:850; }
.nam-about-values h3 { margin:27px 0 9px; color:var(--nam-purple-dark); font-size:24px; }
.nam-about-values p { margin:0; color:var(--nam-muted); font-size:13px; line-height:1.7; }

.nam-about-founder { background:#fff; }
.nam-about-founder__grid { display:grid; grid-template-columns:.78fr 1.22fr; align-items:center; gap:100px; }
.nam-about-founder__portrait { position:relative; max-width:480px; justify-self:center; padding:18px 18px 0; border-radius:240px 240px 28px 28px; background:linear-gradient(160deg,#f3eaf5,#fff5f0); }
.nam-about-founder__portrait img { position:relative; z-index:2; width:100%; border-radius:225px 225px 21px 21px; }
.nam-about-founder__accent { position:absolute; z-index:1; width:190px; height:190px; left:-55px; bottom:-35px; border:42px solid rgba(255,75,37,.16); border-radius:50%; }
.nam-about-founder blockquote { max-width:740px; margin:0 0 30px; color:var(--nam-purple-dark); font-family:Georgia,serif; font-size:clamp(29px,3vw,43px); line-height:1.3; letter-spacing:-.025em; }
.nam-about-founder h2 { margin:0 0 2px; color:var(--nam-purple); font-size:28px; }
.nam-about-founder__role { margin-bottom:23px; color:var(--nam-orange); font-size:11px; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }
.nam-about-founder__copy > p:not(.nam-about-founder__role) { max-width:740px; color:var(--nam-muted); font-size:15px; line-height:1.8; }
.nam-about-founder .nam-text-link { margin-top:10px; }

.nam-about-difference { color:#fff; background:linear-gradient(130deg,#2c0d34,#571864 64%,#3c1046); }
.nam-about-difference__grid { display:grid; grid-template-columns:.9fr 1.1fr; align-items:center; gap:110px; }
.nam-about-difference h2 { max-width:590px; margin:0 0 22px; color:#fff; font-size:clamp(42px,4.5vw,66px); line-height:1.05; letter-spacing:-.045em; }
.nam-about-difference__grid > div > p { max-width:600px; color:rgba(255,255,255,.66); }
.nam-about-difference ol { margin:0; padding:0; list-style:none; }
.nam-about-difference li { display:grid; grid-template-columns:58px 1fr; gap:22px; padding:27px 0; border-top:1px solid rgba(255,255,255,.15); }
.nam-about-difference li:last-child { border-bottom:1px solid rgba(255,255,255,.15); }
.nam-about-difference li > span { width:50px; height:50px; display:grid; place-items:center; border-radius:50%; color:#ff9a82; background:rgba(255,255,255,.08); font-size:11px; font-weight:900; }
.nam-about-difference strong { color:#fff; font-size:19px; }
.nam-about-difference li p { margin:5px 0 0; color:rgba(255,255,255,.61); font-size:13px; }
.nam-about-cta { padding-top:100px; }

@media (max-width:1000px) {
  .nam-about-hero__grid { grid-template-columns:1fr .78fr; gap:42px; }
  .nam-about-hero__image,.nam-about-hero__image img { min-height:440px; }
  .nam-about-story__grid,.nam-about-founder__grid,.nam-about-difference__grid { gap:55px; }
  .nam-about-values__grid { grid-template-columns:1fr 1fr; }
}
@media (max-width:760px) {
  .nam-about-hero { padding:64px 0 74px; }
  .nam-about-hero__grid,.nam-about-story__grid,.nam-about-founder__grid,.nam-about-difference__grid { grid-template-columns:1fr; }
  .nam-about-hero__image { width:min(100%,560px); min-height:390px; }
  .nam-about-hero__image img { min-height:390px; }
  .nam-about-stats { margin-top:-22px; }
  .nam-about-stats__grid { grid-template-columns:1fr 1fr; padding:23px; }
  .nam-about-stats__grid > div { padding:16px; border-right:0; border-bottom:1px solid var(--nam-line); }
  .nam-about-stats__grid > div:nth-child(odd) { border-right:1px solid var(--nam-line); }
  .nam-about-stats__grid > div:nth-last-child(-n+2) { border-bottom:0; }
  .nam-about-story { padding-top:95px; }
  .nam-about-story__copy { padding-top:0; }
  .nam-about-founder__portrait { max-width:410px; }
}
@media (max-width:520px) {
  .nam-about-hero h1 { font-size:47px; }
  .nam-about-hero__copy > p { font-size:17px; }
  .nam-about-hero__image,.nam-about-hero__image img { min-height:310px; }
  .nam-about-hero__stamp { width:140px; padding:16px; }
  .nam-about-stats__grid { padding:14px; }
  .nam-about-stats__grid > div { padding:14px 10px; }
  .nam-about-stats strong { font-size:25px; }
  .nam-about-stats span { font-size:9px; }
  .nam-about-story h2,.nam-about-difference h2 { font-size:39px; }
  .nam-about-values__grid { grid-template-columns:1fr; }
  .nam-about-values article { min-height:300px; }
  .nam-about-founder blockquote { font-size:29px; }
  .nam-about-difference__grid { gap:45px; }
  .nam-about-cta { padding-top:65px; }
}
