.projects-intro { padding: 64px 0 48px; background: #edf2f3; border-bottom: 1px solid var(--line); }
.projects-intro h1 { max-width: 900px; }
.project-categories { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; margin-top: 38px; }
.project-categories a { display: flex; gap: 16px; align-items: center; min-height: 88px; padding: 20px; background: #fff; border: 1px solid var(--line); border-top: 3px solid #a9b9c2; font-weight: 600; }
.project-categories a:last-child { border-top-color: #ad482d; }
.project-categories a:hover { background: #faf3ee; }
.project-categories span { color: #ad482d; font-size: 13px; }
.project-category { scroll-margin-top: 110px; }
.project-empty { border-left: 3px solid #a9b9c2; padding: 20px 26px; background: #f0f4f5; color: var(--muted); }
.project-case { padding: 36px; border: 1px solid var(--line); background: #fff; margin-top: 28px; }
.project-case h3 { font-size: clamp(1.6rem,3vw,2.4rem); margin: 12px 0 24px; }
.project-case p { margin-bottom: 18px; }
.project-case ul { padding-left: 22px; }
.project-gallery { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; margin-top: 28px; }
.project-gallery figure { margin: 0; min-width: 0; background: #edf2f3; }
.project-gallery img { display: block; width: 100%; height: auto; max-height: 520px; object-fit: contain; }
.project-gallery figcaption { padding: 12px 16px; font-size: 14px; color: var(--muted); }
.project-gallery a { display: block; background: #edf2f3; }
.project-gallery a:only-child { grid-column: 1 / -1; }
.project-gallery a:focus-visible { outline: 3px solid #ad482d; outline-offset: 4px; }
.project-categories a[aria-selected="true"] { background: #f6eae1; border-color: #ad482d; }
.project-case { scroll-margin-top: 110px; }
.project-preview-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
.project-preview { min-width: 0; border: 1px solid var(--line); background: #fff; }
.project-preview img { display: block; width: 100%; height: 230px; object-fit: cover; }
.project-preview > div { padding: 26px; }
.project-preview h3 { font-size: 25px; margin-bottom: 24px; }
.project-preview .eyebrow { margin-bottom: 14px; }
@media(max-width:820px) { .project-preview-grid { grid-template-columns: 1fr; } .project-preview img { height: auto; max-height: 420px; object-fit: contain; background: #edf2f3; } }
@media(max-width:820px) { .project-categories { grid-template-columns: 1fr; } .project-categories a { min-height: 64px; } }
@media(max-width:560px) { .projects-intro { padding: 36px 0; } .project-case { padding: 22px; } .project-gallery { grid-template-columns: 1fr; } }
.header .nav-links > .nav-small[aria-current="page"] { color: #f4b59c; }

.project-category-intro { max-width: 920px; }
.project-category-intro .lead { max-width: none; margin-top: 0; color: var(--ink); font-size: clamp(1.1rem, 1.7vw, 1.35rem); line-height: 1.7; }
.project-category-intro > p + p { max-width: none; margin-top: 22px; color: var(--muted); }
.project-selection-intro { margin-top: 48px; padding-top: 32px; border-top: 1px solid var(--line); }
.project-selection-intro .eyebrow { margin-bottom: 14px; }
.project-selection-intro h3 { font-size: clamp(1.5rem, 2.7vw, 2.1rem); margin-bottom: 18px; }
.project-selection-intro p { max-width: 850px; color: var(--muted); }
@media(max-width:560px) { .project-selection-intro { margin-top: 32px; padding-top: 26px; } }

/* Additional client projects */
.client-work { margin-top: 56px; padding-top: 40px; border-top: 1px solid var(--line); }
.client-work > h3 { font-size: clamp(1.6rem,3vw,2.4rem); margin-bottom: 28px; }
.client-work-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; align-items: start; }
.client-work-card { min-width: 0; padding: 32px; background: #fff; border: 1px solid var(--line); border-top: 3px solid #ad482d; }
.client-work-heading { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding-bottom: 24px; border-bottom: 1px solid var(--line); }
.client-work-heading img { width: min(55%,200px); height: 70px; object-fit: contain; object-position: left center; }
.client-work-heading h4 { margin: 0; font-size: 22px; }
.client-work-card ul { list-style: none; padding: 0; margin: 0; }
.client-work-card li { padding: 22px 0; border-bottom: 1px solid var(--line); }
.client-work-card li:last-child { padding-bottom: 0; border-bottom: 0; }
.client-work-card strong, .client-work-card li span { display: block; }
.client-work-card strong { color: var(--ink); font-size: 17px; line-height: 1.5; }
.client-work-card li span { margin-top: 7px; color: var(--muted); line-height: 1.65; }
@media(max-width:760px) { .client-work-grid { grid-template-columns: 1fr; } .client-work-card { padding: 24px; } .client-work { margin-top: 36px; padding-top: 28px; } }

.ai-example-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin-top:28px; }
.ai-example-card { min-width:0; overflow:hidden; border:1px solid var(--line); border-top:3px solid #ad482d; background:#fff; display:flex; flex-direction:column; }
.ai-example-card figure { margin:0; position:relative; }
.ai-example-card figure img { width:100%; height:240px; object-fit:cover; display:block; }
.ai-example-card figcaption { position:absolute; bottom:10px; left:12px; padding:4px 8px; font-size:11px; color:#fff; background:rgba(32,41,46,.85); }
.ai-example-copy { padding:28px; display:flex; flex-direction:column; flex:1; }
.ai-example-copy .eyebrow { font-size:11px; }
.ai-example-copy h3 { font-size:28px; line-height:1.3; margin:12px 0 16px; }
.ai-example-copy > p { color:var(--muted); line-height:1.7; margin-bottom:24px; }
.ai-example-benefits { margin-top:auto; border-top:1px solid var(--line); padding-top:20px; }
.ai-example-benefits > span { font-size:12px; color:var(--muted); }
.ai-example-benefits ul { padding:0; margin:12px 0 24px; list-style:none; display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.ai-example-benefits li { color:#994329; font-weight:700; font-size:16px; line-height:1.5; }
.ai-example-copy > a { align-self:flex-start; }
@media(max-width:700px) { .ai-example-grid { grid-template-columns:1fr; } .ai-example-copy { padding:24px; } .ai-example-card figure img { height:210px; } }

.ai-use-case-library { margin-top:56px; padding-top:40px; border-top:1px solid var(--line); }
.ai-use-case-library > h3 { font-size:34px; margin-bottom:16px; }
.ai-library-intro { color:var(--muted); max-width:800px; }
.ai-group-nav { display:flex; flex-wrap:wrap; gap:10px; margin:24px 0 36px; }
.ai-group-nav a { padding:12px 16px; background:#fff; border:1px solid var(--line); font-size:14px; font-weight:600; }
.ai-group-nav a:hover,.ai-group-nav a:focus-visible { border-color:#ad482d; background:#faf3ee; }
.ai-use-case-group { margin-top:44px; scroll-margin-top:110px; }
.ai-group-heading { display:grid; grid-template-columns:1fr 1fr; background:#293237; }
.ai-group-heading > div { padding:32px; align-self:center; }
.ai-group-heading .eyebrow { color:#efb394; }
.ai-group-heading h4 { color:#fff; font-size:32px; line-height:1.25; margin:12px 0 0; }
.ai-group-heading figure { margin:0; position:relative; min-width:0; }
.ai-group-heading img { display:block; width:100%; height:180px; object-fit:cover; }
.ai-group-heading figcaption { position:absolute; bottom:8px; right:10px; font-size:10px; padding:3px 7px; color:white; background:rgba(32,41,46,.85); }
.ai-use-case-group .ai-example-copy h5 { font-family:inherit; font-size:22px; line-height:1.35; margin:0 0 14px; }
.ai-use-case-group .ai-example-copy .eyebrow { margin-bottom:14px; }
@media(max-width:700px) { .ai-group-heading { grid-template-columns:1fr; } .ai-group-heading > div { padding:24px; } .ai-group-heading h4 { font-size:28px; } .ai-group-heading img { height:160px; } .ai-group-nav a { flex:1 1 180px; } }

#project-14 > .platform-summary { max-width:none; }
.platform-estimate { margin:24px 0; padding:24px; background:#f6f8f8; border:1px solid var(--line); }
.platform-estimate h4 { font-size:18px; margin:0 0 20px; }
.platform-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.platform-metrics strong { display:block; color:#a8492f; font-size:30px; line-height:1.2; }
.platform-metrics span { display:block; margin-top:8px; font-size:14px; }
#project-14 .platform-estimate > p { max-width:none; font-size:13px; line-height:1.6; color:var(--muted); margin:20px 0 0; }
.ai-use-case-library > .ai-use-case-group:first-child { margin-top:0; }
@media(max-width:600px) { .platform-metrics { grid-template-columns:1fr; gap:20px; } .platform-estimate { padding:20px; } }

.savings-calculator { margin:20px 0; padding:20px; border:1px solid var(--line); background:#f6f8f8; }
.savings-calculator h6 { font-family:inherit; font-size:16px; margin:0 0 16px; }
.savings-inputs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.savings-inputs label { min-width:0; font-size:12px; color:var(--muted); }
.savings-inputs input { display:block; width:100%; box-sizing:border-box; min-height:44px; margin-top:6px; padding:8px; border:1px solid #a9b9c2; border-radius:0; background:#fff; color:#293237; font-size:16px; }
.savings-output { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:20px; }
.savings-output strong { display:block; color:#a8492f; font-size:28px; }
.savings-output span { display:block; font-size:13px; }
.savings-calculator .savings-note { max-width:none; margin:14px 0 0; font-size:12px; color:var(--muted); line-height:1.5; }
@media(max-width:480px) { .savings-inputs { grid-template-columns:1fr; } }

/* Consistent spacing between case groups after removing banners. */
.ai-use-case-library .ai-use-case-group { margin-top:24px; }
.ai-use-case-library .ai-use-case-group > .ai-example-grid { margin-top:0; }

/* Compact spacing across AI cases and their calculators. */
#ai-projects .ai-example-grid { gap:18px; margin-top:20px; align-items:start; }
#ai-projects .ai-example-copy { padding:22px; }
#ai-projects .ai-example-copy > .eyebrow { margin-bottom:8px; }
#ai-projects .ai-example-copy h3,
#ai-projects .ai-example-copy h5 { margin:6px 0 10px; }
#ai-projects .ai-example-copy > p { margin:0 0 14px; line-height:1.6; }
#ai-projects .ai-example-benefits { margin-top:0; padding-top:12px; }
#ai-projects .ai-example-benefits ul { margin:8px 0 0; gap:12px; }
#ai-projects .savings-calculator { margin:14px 0; padding:16px; }
#ai-projects .savings-calculator h6 { margin:0 0 12px; }
#ai-projects .savings-output { margin-top:14px; gap:14px; }
#ai-projects .savings-calculator .savings-note { margin-top:10px; }
#ai-projects .ai-example-copy > .text-link { margin-top:0; }
#ai-projects .ai-use-case-library { margin-top:24px; padding-top:20px; }
#ai-projects .ai-use-case-group { margin-top:18px; }
#ai-projects .ai-use-case-group > .ai-example-grid { margin-top:0; }
#ai-projects .ai-use-case-group:first-child { margin-top:0; }
@media(max-width:700px) { #ai-projects .ai-example-copy { padding:20px; } }

/* Keep inputs aligned when their labels wrap onto multiple lines. */
.savings-inputs { align-items:stretch; }
.savings-inputs label { display:flex; flex-direction:column; justify-content:flex-end; gap:6px; }
.savings-inputs label input { margin-top:0; height:44px; flex:0 0 44px; }
