/* Light card treatment inspired by the supplied layout. Content and structure stay intact. */
:root {
  --showcase-surface: #fbfcfd;
  --showcase-edge: rgba(31, 54, 66, .07);
  --showcase-shadow: 0 14px 38px rgba(24, 47, 58, .075);
  --showcase-shadow-hover: 0 19px 44px rgba(24, 47, 58, .105);
  --showcase-glow: radial-gradient(ellipse 34% 40% at 7% 8%, rgba(0, 202, 255, .085), transparent 75%), radial-gradient(ellipse 32% 38% at 94% 14%, rgba(255, 188, 145, .12), transparent 78%);
}

/* Soft light stays behind the existing content; the homepage hero is unchanged. */
.advisor-section,
.extra-services,
.business-testimonials,
.article-library,
.pricing-page main > .section:first-of-type {
  background: var(--showcase-glow), var(--showcase-surface);
}
.page-hero,
.article-hero,
.section-soft { background: var(--showcase-glow), #f8fafc; }
.business-testimonials { border-block-color: #edf1f3; }

/* White, rounded boxes with a quiet shadow, as in the reference. */
.advisor-band,
.advisor-card,
.advisor-audiences,
.extra-service-card,
.business-testimonial,
.price-card,
.pricing-custom,
.pricing-next-steps li,
.card,
.contact-details-card,
.contact-form,
.editorial-grid .article-card,
.featured-article,
.profile .ap-tile,
.academic-demo .service-card,
.academic-demo .quote-panel,
.client-card {
  background: #fff;
  border: 1px solid var(--showcase-edge);
  border-radius: 28px;
  box-shadow: var(--showcase-shadow);
}
.advisor-band { border-radius: 32px; }
.advisor-context-card { background: #fff; }
.video-card { box-shadow: var(--showcase-shadow); }
.article-tile a {
  height: 100%;
  padding: 14px;
  border: 1px solid var(--showcase-edge);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(24, 47, 58, .05);
  transition: transform .25s ease, box-shadow .25s ease, opacity .25s ease;
}
.article-tile a:hover { opacity: 1; transform: translateY(-3px); box-shadow: var(--showcase-shadow-hover); }
.article-tile .article-thumb { border-radius: 15px; }
.article-list-simple { align-items: stretch; }

/* Dark Apple-inspired treatment, limited to the achievements section. */
.experience-achievements { background: #0b0b0d; border-bottom-color: #0b0b0d; color: #f5f5f7; }
.experience-achievements-eyebrow,
.experience-achievements-intro > p:last-child { color: #a1a1a6; }
.experience-achievements-intro h2,
.experience-achievement-card h3,
.experience-achievement-small h3 { color: #f5f5f7; }
.experience-achievement-card,
.experience-achievement-small {
  padding: 26px;
  border: 1px solid #303034;
  border-radius: 28px;
  background: #1c1c1e;
  box-shadow: none;
}
.experience-achievement-card .experience-achievement-number,
.experience-achievement-card .experience-achievement-top .experience-achievement-number,
.experience-achievement-small .experience-achievement-number { color: #00caff; }
.experience-achievement-card p,
.experience-achievement-small p { color: #b9b9c0; }
.experience-achievement-icon,
.experience-achievement-small-mark { display: grid; }
.experience-achievement-icon { background: #18303a; color: #00caff; }
.experience-achievement-card:hover,
.experience-achievement-small:hover { transform: translateY(-3px); border-color: #4a4a50; box-shadow: 0 16px 36px rgba(0,0,0,.18); }

/* A little more presence for the client cards, while preserving the carousel. */
.business-testimonial { box-shadow: var(--showcase-shadow); }
.business-testimonial:hover { border-color: #d5e9ef; box-shadow: var(--showcase-shadow-hover); }

/* Concise case studies, based on the client feedback already on the site. */
.case-studies {
  padding: clamp(68px, 8vw, 108px) 0;
  background: var(--showcase-glow), var(--showcase-surface);
  border-bottom: 1px solid #edf1f3;
}
.case-studies-heading { max-width: 720px; margin-bottom: 30px; }
.case-studies-heading .eyebrow { margin: 0 0 10px; color: var(--blue-dark); font-size: 14px; font-weight: 700; }
.case-studies-heading h2 { margin: 0 0 12px; font-size: clamp(34px, 4vw, 52px); letter-spacing: -.035em; }
.case-studies-heading > p:last-child { margin: 0; color: var(--muted); font-size: clamp(16px, 1.8vw, 19px); line-height: 1.5; }
.case-studies-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.case-study-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 26px;
  border: 1px solid var(--showcase-edge);
  border-radius: 28px;
  background: #fff;
  box-shadow: var(--showcase-shadow);
  transition: transform .22s ease, box-shadow .22s ease;
}
.case-study-card:hover { transform: translateY(-3px); box-shadow: var(--showcase-shadow-hover); }
.case-study-card-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.case-study-number { color: #007995; font-size: 13px; font-weight: 700; letter-spacing: .08em; }
.case-study-type { padding: 6px 11px; border-radius: 999px; background: #e8faff; color: #006d88; font-size: 11px; font-weight: 700; text-align: right; }
.case-study-card h3 { margin: 25px 0 17px; font-size: clamp(21px, 2vw, 25px); line-height: 1.2; }
.case-study-card dl { display: grid; gap: 16px; margin: 0; }
.case-study-card dl > div { padding-top: 15px; border-top: 1px solid #edf1f3; }
.case-study-card dt { margin-bottom: 5px; color: #007995; font-size: 12px; font-weight: 700; letter-spacing: .02em; }
.case-study-card dd { margin: 0; color: #46545a; font-size: 14px; line-height: 1.55; }
.case-studies-link { display: inline-flex; align-items: center; gap: 12px; margin-top: 25px; color: #007995; font-size: 15px; font-weight: 700; text-decoration: none; }
.case-studies-link:hover { text-decoration: underline; text-underline-offset: 4px; }
.case-studies-link:focus-visible { outline: 3px solid #007995; outline-offset: 4px; border-radius: 4px; }

@media (max-width: 900px) {
  .case-studies-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .case-study-card:last-child { grid-column: 1 / -1; }
}

@media (max-width: 640px) {
  .experience-achievement-card,
  .experience-achievement-small { padding: 22px; }
  .article-tile a { padding: 12px; }
  .case-studies-grid { grid-template-columns: 1fr; }
  .case-study-card:last-child { grid-column: auto; }
  .case-study-card { padding: 22px; }
}
@media (prefers-reduced-motion: reduce) {
  .article-tile a { transition: none; }
  .article-tile a:hover,
  .experience-achievement-card:hover,
  .experience-achievement-small:hover,
  .case-study-card:hover { transform: none; }
  .case-study-card { transition: none; }
}
@media (prefers-contrast: more) {
  .advisor-band,.advisor-card,.advisor-audiences,.extra-service-card,.business-testimonial,.price-card,.pricing-custom,.pricing-next-steps li,.card,.contact-details-card,.contact-form,.article-tile a,.experience-achievement-card,.experience-achievement-small,.profile .ap-tile,.academic-demo .service-card,.client-card,.case-study-card { border-color: currentColor; box-shadow: none; }
}

/* Store shortcut: icon-only link outside the navigation menu. */
.nav-store { display:inline-flex; align-items:center; justify-content:center; flex:0 0 44px; width:44px; height:44px; border-radius:999px; color:var(--ink); }
.nav-store svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.nav-store:hover { background:var(--soft); }
.nav-store:focus-visible { outline:3px solid var(--blue); outline-offset:2px; }

/* Apple-style carousel pager; the active capsule advances automatically. */
.brand-carousel .client-logo { flex-basis:calc((100% - 28px)/3); }
.brand-carousel-controls,.extra-services-controls { justify-content:center; align-items:center; gap:8px; margin-top:18px; }
.brand-carousel-controls[hidden],.extra-services-controls[hidden] { display:none!important; }
.brand-carousel-controls > button,.extra-services-controls > button { flex:none; width:36px; height:36px; min-width:36px; min-height:36px; padding:0; border:0; border-radius:50%; background:#f1f2f4; color:#1d1d1f; font-size:20px; line-height:1; transition:background-color .22s ease,transform .22s ease; }
.brand-carousel-controls > button:hover,.extra-services-controls > button:hover { background:#e4e5e9; transform:scale(1.04); }
.brand-carousel-controls > [data-brand-pause],.extra-services-controls > [data-extra-pause] { min-width:36px; font-size:13px; }
.carousel-pagination { display:flex; align-items:center; justify-content:center; gap:2px; min-height:36px; padding:3px 9px; border-radius:999px; background:#f1f2f4; }
.brand-carousel-controls .carousel-dot,.extra-services-controls .carousel-dot { position:relative; flex:0 0 22px; width:22px; min-width:22px; height:28px; min-height:28px; padding:0; border:0; border-radius:0; background:transparent; cursor:pointer; transition:flex-basis .3s ease,width .3s ease; }
.brand-carousel-controls .carousel-dot[aria-current="true"],.extra-services-controls .carousel-dot[aria-current="true"] { flex-basis:42px; width:42px; }
.carousel-dot::before { content:""; position:absolute; top:50%; left:50%; width:8px; height:8px; border-radius:999px; background:#8e8e93; transform:translate(-50%,-50%); transition:width .3s ease,background-color .3s ease; }
.carousel-dot[aria-current="true"]::before { width:32px; background:#1d1d1f; }
.carousel-dot[aria-current="true"]::after { content:""; position:absolute; top:13px; left:5px; width:32px; height:2px; border-radius:2px; background:#bfc0c5; opacity:0; transform:scaleX(0); transform-origin:left center; }
.brand-carousel-controls[data-running="true"] .carousel-dot[aria-current="true"]::after,.extra-services-controls[data-running="true"] .carousel-dot[aria-current="true"]::after { opacity:1; animation:carousel-progress 4200ms linear forwards; }
@keyframes carousel-progress { to { transform:scaleX(1); } }
.brand-carousel-controls button:focus-visible,.extra-services-controls button:focus-visible { outline:3px solid var(--blue); outline-offset:2px; }
@media(max-width:900px){.brand-carousel .client-logo{flex-basis:calc((100% - 14px)/2)}}
@media(max-width:560px){.brand-carousel .client-logo{flex-basis:70%}}
@media(prefers-reduced-motion:reduce){.brand-carousel-controls button,.extra-services-controls button,.carousel-dot,.carousel-dot::before{transition:none!important}.carousel-dot::after{animation:none!important}}

/* Two continuous rows of client logos, matching the testimonial movement. */
.brand-carousel:not(.is-marquee) .client-logo-row { display:grid!important; grid-template-columns:repeat(5,minmax(0,1fr)); overflow:visible; }
.brand-carousel:not(.is-marquee) .client-logo { flex-basis:auto; }
.brand-carousel:not(.is-marquee) .brand-carousel-controls { display:none; }
.brand-carousel.is-marquee #brand-track { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.brand-marquee { display:grid; gap:8px; margin-top:16px; }
.brand-marquee-row { overflow:hidden; mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent); }
.brand-marquee-track { display:flex; width:max-content; animation:brand-marquee-left 42s linear infinite; }
.brand-marquee-row:nth-child(2) .brand-marquee-track { animation-name:brand-marquee-right; animation-duration:48s; }
.brand-marquee-group { display:flex; flex:0 0 auto; gap:18px; padding-right:18px; }
.brand-marquee-group .client-logo { flex:0 0 180px; width:180px; min-height:82px; }
.brand-carousel.is-paused .brand-marquee-track,
.brand-carousel.is-page-hidden .brand-marquee-track,
.brand-carousel.is-offscreen .brand-marquee-track,
.brand-marquee-row:hover .brand-marquee-track { animation-play-state:paused; }
.brand-carousel.is-marquee .brand-carousel-controls [hidden] { display:none!important; }
@keyframes brand-marquee-left { to { transform:translateX(-50%); } }
@keyframes brand-marquee-right { from { transform:translateX(-50%); } }
@media(max-width:900px){.brand-carousel:not(.is-marquee) .client-logo-row{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){.brand-carousel:not(.is-marquee) .client-logo-row{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-marquee-group .client-logo{flex-basis:145px;width:145px;min-height:74px}}
